.button{display:inline-block;border:0;border-radius:var(--radius);background:var(--color-gold);color:white;text-transform:uppercase;text-align:center;font:400 1rem/1 var(--font-heading);padding:15px 25px;text-decoration:none;transition:background-color .2s}.button:hover{background:var(--color-gold-dark);text-decoration:none;color:white}.hero{position:relative;isolation:isolate;min-height:800px;display:flex;align-items:flex-start;padding-top:160px}.hero__background,.promise__background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero__inner{display:flex}.hero__copy{background:#0006;color:white;padding:40px;max-width:620px}.hero__copy h1{color:inherit}.hero__description{font-family:var(--font-heading);font-size:1.5rem;line-height:1.4;margin-bottom:18px}.hero__kicker{text-transform:uppercase;color:var(--color-gold);font-family:var(--font-heading);font-size:1rem;margin-bottom:40px}.hero--home{padding:0;align-items:flex-start}.hero--home .hero__copy{max-width:100%;background:none;color:var(--color-text);padding:0}.hero--home h1{font-weight:400;max-width:650px;margin:0 0 24px}.hero--home .hero__description{font-family:var(--font-body);font-size:1rem;line-height:1.6;max-width:850px;margin-bottom:32px}.hero__logo{width:616px;margin-left:-92px;max-width:calc(100% + 20px)}.hero--contact{min-height:600px;padding:0;align-items:center}.hero--contact .hero__copy{padding:0;background:none;max-width:650px}.hero--booking{min-height:600px;padding:0;align-items:center}.hero--booking .hero__inner{justify-content:center}.hero--booking .hero__copy{background:none;padding:0}.hero--booking .hero__background{object-position:center bottom}.title-band{background:var(--color-gold);text-align:center;padding-block:110px}.title-band :is(h1,h2){font-size:1.75rem;font-weight:300;text-transform:uppercase;letter-spacing:.25em;color:var(--color-dark);margin:0}.title-band.soft{background:var(--color-soft)}.promise{position:relative;isolation:isolate;padding-block:110px}.promise::before{content:"";position:absolute;inset:0;background:#0009;z-index:-1}.promise h2{max-width:720px;margin-inline:auto;margin-bottom:0;color:#fff;font:400 2rem/2.1 var(--font-body);letter-spacing:.03125em}.signature-name{text-align:center;color:var(--color-heading);font:900 1.5rem/1.3 var(--font-heading);margin-top:24px}.signature{width:200px;max-height:150px;object-fit:contain;margin:0 auto}.feature-card img{aspect-ratio:1.3;object-fit:cover;width:100%;margin-bottom:40px}.feature-card h2{font-size:1.5rem;margin-bottom:20px}.feature-card h3{font-size:1rem;text-transform:uppercase;margin-bottom:15px;color:var(--color-text)}.testimonials{padding:60px 24px;background:var(--color-soft);text-align:center}.testimonials__heart{display:block;color:var(--color-gold);font:400 4rem/1 var(--font-heading);margin-bottom:30px}.testimonial{max-width:720px;margin:0 auto 50px}.testimonial blockquote{font:italic 400 1.25rem/1.75 var(--font-body);margin-bottom:30px}.testimonial figcaption{font:400 1rem/1.6 var(--font-heading)}.testimonial figcaption strong{display:block;text-transform:uppercase;margin-bottom:10px}.testimonial-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:30px}.testimonial-controls button{background:none;color:var(--color-gold-dark);border:0;font-size:1.5rem;min-width:44px;min-height:44px}.review-position{font:400 .8rem/1 var(--font-heading);letter-spacing:.2em}.video{position:relative;aspect-ratio:16/9;width:100%;background:var(--color-soft);overflow:hidden;display:grid;align-items:center;text-align:center}.video__poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.2}.video__notice{position:relative;padding:24px}.video__notice p:first-child{font-family:var(--font-heading);font-weight:700}.video__notice .button{font-size:.875rem;padding:14px}.video__external{display:block;margin-top:12px;font-size:.875rem;text-decoration:underline}.video iframe{height:100%;position:absolute;inset:0}.map-placeholder{padding-block:60px;text-align:center;background:var(--color-soft);margin-bottom:40px}.jamvision-form{position:relative;font-family:var(--font-heading);min-width:0}.jamvision-form label{display:block;margin-bottom:5px}.jamvision-form input:not([type=checkbox]):not([type=hidden]),.jamvision-form textarea{display:block;width:100%;padding:12px;border:1px solid transparent;border-radius:var(--radius);background:var(--color-soft);color:var(--color-text);margin-bottom:25px;line-height:1.4}.jamvision-form textarea{resize:vertical;min-height:130px}.jamvision-form input:focus,.jamvision-form textarea:focus{border-color:var(--color-gold)}.jamvision-form .consent{display:flex;align-items:flex-start;gap:8px;font-size:.875rem;line-height:1.75;margin-block:12px 30px}.consent input{margin:5px 0 0;flex-shrink:0}.consent a{text-decoration:underline}.contact-form>.button{display:block;margin-inline:auto}.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.newsletter-form>.button{display:block;width:100%;background:#8e7941}.newsletter-form input:not([type=checkbox]):not([type=hidden]){margin-bottom:16px;padding:8px}.newsletter-form .button{padding:12px}.form-status{padding:15px;background:var(--color-soft);color:var(--color-dark);border:1px solid var(--color-gold)}
@media(max-width:767px){.hero{min-height:620px;padding-top:80px}.hero__copy{padding:24px;max-width:100%;background:#0008}.hero__description{font-size:1.125rem}.hero__kicker{margin-bottom:24px}.hero--home{min-height:700px;padding-top:0}.hero--home h1{font-size:2rem;max-width:100%}.hero--home .hero__logo{width:320px;margin-left:-35px}.hero--home .hero__description{font-size:.9375rem}.hero--home .hero__copy{padding:0}.hero--contact{min-height:540px;padding:0;align-items:center}.hero--contact .hero__copy{padding:24px;background:#0006}.hero--booking{min-height:420px;padding:0}.title-band{padding-block:65px}.title-band :is(h1,h2){font-size:1.25rem;letter-spacing:.18em}.promise{padding-block:60px}.promise h2{font-size:1.375rem;line-height:1.8}.testimonial blockquote{font-size:1.0625rem}.testimonial{margin-bottom:24px}.button{font-size:.875rem}.feature-card img{margin-bottom:24px}.video__notice{padding:16px}}

.split.portrait .richtext{font-size:1.5rem;line-height:1.75}.client-logos{grid-template-columns:repeat(3,minmax(0,300px));justify-content:center;gap:0}
@media(max-width:767px){.split.portrait .richtext{font-size:1rem}.signature-name{font-size:1rem}.hero--home{align-items:center}}

.testimonial-controls{gap:0}.testimonial-controls .review-dot{width:24px;height:44px;min-width:24px;padding:0;display:grid;place-items:center}.review-dot::after{content:"";width:6px;height:6px;border-radius:50%;background:#c9c9c9}.review-dot[aria-pressed=true]::after{background:#666}

.gallery-dialog{border:0;padding:1rem;background:var(--color-surface);width:min(92vw,1100px);max-height:94vh}.gallery-dialog::backdrop{background:#000b}.gallery-dialog img{max-height:80vh;width:auto;object-fit:contain;margin:auto}.gallery-dialog__close{display:block;margin:0 0 1rem auto}

.map-placeholder{position:relative;min-height:400px;display:grid;place-items:center}.map-placeholder__notice{padding:24px}.map-placeholder__notice>a{display:block;text-decoration:underline;margin-top:20px}.map-placeholder>iframe{position:absolute;inset:0;width:100%;height:100%}
