.coastal-backdrop{position:fixed;inset:0;z-index:1;overflow:hidden;pointer-events:none;transition:opacity .7s ease,visibility .7s}.coastal-backdrop img{width:100%;height:100%;object-fit:cover;object-position:50% 60%;transform:scale(1);transition:transform 1.8s ease-in-out}.leaving .coastal-backdrop img{transform:scale(1.055)}.driving .coastal-backdrop{opacity:0;visibility:hidden}.hero{z-index:2}.world{z-index:0}body[data-scene="0"] .world{visibility:hidden}body[data-scene="0"] .nav{background:#f4efe5ed;color:#30332f;border:1px solid #ded7cb;box-shadow:0 5px 25px #5640370d}body[data-scene="0"] .brand i{color:#a56f5e}body[data-scene="0"] .contact-link{background:#a57564;color:#fff9ee;border:none}body[data-scene="0"] .contact-link span{color:#fff9ee}.hero h1{font-family:Georgia,serif;font-size:clamp(42px,5.1vw,78px);line-height:1.02;letter-spacing:-3px;color:#27312e}.hero h1 em{color:#996854}.hero .hero-copy{max-width:900px;padding:0 10px 15px 0;pointer-events:auto}.hero .eyebrow{color:#575e50;font-size:9px}.hero .dot{background:#ac7b69}.hero .intro-panel{background:#f4efe5a6;border:1px solid #fff7;box-shadow:0 7px 25px #604b3910;backdrop-filter:blur(8px);padding:15px 21px}.hero .intro-panel .intro{color:#30372e;font-size:13px}.hero .intro-panel .choose{color:#505647;font-size:10px;margin-top:12px}.hero .choose span{color:#996854}.hero .platforms{top:37%;right:9%;width:270px;transform:rotate(-2deg)}.hero .signpost button{background:linear-gradient(115deg,#c5c7af,#a5ab91);color:#2f352b;border:1px solid #e8dec7;box-shadow:inset 0 0 0 4px #babfa5,inset 0 0 0 5px #f4ecda,4px 6px 12px #514b3833;font-family:Georgia,serif;font-size:20px;border-radius:13px;min-height:62px;padding:11px 20px}.hero .signpost button:hover{background:#d1d2bb;box-shadow:inset 0 0 0 4px #c8cbb3,inset 0 0 0 5px #fbf2df,4px 8px 18px #514b3844;transform:translateX(5px)}.hero .signpost button>span:last-child{color:#343a2c}.hero .sign-code{display:none}.hero .signpost:after{width:8px;height:200px;left:28%;background:linear-gradient(90deg,#9b917c,#ddd0b6,#9c927e);box-shadow:108px 0 0 #b3a78d}.hero .hero-bottom{color:#fff8ed;text-shadow:0 1px 5px #221a11;font-size:9px}body[data-scene="0"] .journey{background:#f4efe5ed;color:#4b5144;border-top:1px solid #b6b7a0}body[data-scene="0"] .live-dot,body[data-scene="0"] .progress-track i{background:#ac7a68}body[data-scene="0"] .progress-track{background:#b8bba5}body[data-scene="0"] #motion{color:#535c4b}body[data-scene="0"] .transition-label{background:#f4efe5ed;color:#464b3e;border:1px solid #ba9c86}.hero{min-height:780px;border:0;padding-top:148px}
@media(min-width:1500px){.hero{padding-left:14%;padding-top:145px}.hero .platforms{right:10%}}
@media(max-width:900px){.hero .platforms{right:5%;width:230px;top:43%}.hero .signpost button{font-size:17px;min-height:55px}.hero h1{font-size:55px}.hero .intro-panel{max-width:440px}}
@media(max-width:600px){.hero{min-height:880px;padding-top:112px}.coastal-backdrop img{object-fit:cover;object-position:50% 70%}.coastal-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(#f4efe5db 0%,#f4efe599 26%,transparent 47%)}.hero h1{font-size:41px;letter-spacing:-1.6px}.hero .eyebrow{font-size:7px;letter-spacing:1.2px}.hero .intro-panel{padding:12px 14px;background:#f4efe5cb}.hero .intro-panel .intro{font-size:11px}.hero .intro-panel .choose{font-size:8px;margin-top:10px}.hero .platforms{top:44%;right:5%;width:170px}.hero .signpost{gap:5px}.hero .signpost button{font-size:14px;min-height:43px;padding:8px 13px;border-radius:9px}.hero .signpost:after{height:82px;width:5px;box-shadow:68px 0 0 #b3a78d}.hero .hero-bottom{font-size:7px}}
@media(prefers-reduced-motion:reduce){.coastal-backdrop,.coastal-backdrop img{transition:none}.leaving .coastal-backdrop img{transform:none}}.reduced .leaving .coastal-backdrop img{transform:none}
/* Service signs: match the ivory glass introduction and its sans-serif type. */
.hero .signpost button{
 font-family:Manrope,Arial,sans-serif;
 font-weight:500;
 font-size:18px;
 letter-spacing:-.35px;
 color:#30372e;
 background:linear-gradient(115deg,rgba(244,239,229,.94),rgba(243,220,205,.89));
 border:1px solid rgba(255,249,237,.95);
 border-radius:18px;
 box-shadow:inset 0 0 0 3px rgba(244,239,229,.25),inset 0 0 0 4px rgba(165,117,100,.36),0 7px 18px rgba(63,46,34,.20);
 backdrop-filter:blur(12px);
 -webkit-backdrop-filter:blur(12px);
 transition:background .2s,box-shadow .2s,transform .2s;
}
.hero .signpost button>span:last-child{color:#996854;font-family:Manrope,Arial,sans-serif;font-weight:400}
.hero .signpost button:hover,.hero .signpost button:focus-visible{
 background:linear-gradient(115deg,#faf4e9,#f0d9ca);
 box-shadow:inset 0 0 0 3px #f8efe3,inset 0 0 0 4px #ac7b69,0 10px 23px #513c3038;
 transform:translateX(5px);
}
.hero .signpost button:focus-visible{outline:2px solid #996854;outline-offset:4px}
.hero .signpost:after{background:linear-gradient(90deg,#a7947d,#e3d8c1,#bba991);box-shadow:108px 0 0 #bcaa94}
@media(max-width:900px){.hero .signpost button{font-size:16px}}
@media(max-width:600px){.hero .signpost button{font-size:13px;letter-spacing:-.2px;border-radius:13px;min-height:44px}.hero .signpost:after{box-shadow:68px 0 0 #bcaa94}}
.hero-contact{margin-top:17px;padding:12px 19px;display:inline-flex;align-items:center;gap:32px;border:1px solid #b68a76;border-radius:24px;background:#a57564;color:#fff9ef;font:500 13px Manrope,Arial,sans-serif;box-shadow:0 5px 15px #77504018;transition:background .2s,transform .2s}.hero-contact:hover{background:#8f6253;transform:translateY(-1px)}.hero-contact:focus-visible{outline:2px solid #785849;outline-offset:4px}#contact-dialog{width:min(530px,calc(100% - 28px));max-height:calc(100dvh - 32px);overflow-y:auto;padding:34px;background:#f4efe5;color:#30372e;border:1px solid #fff9ed;border-radius:28px;box-shadow:0 25px 100px #33271f55}#contact-dialog::backdrop{background:#302e285c;backdrop-filter:blur(9px)}.contact-close{position:absolute;right:17px;top:13px;width:36px;height:36px;border:0;border-radius:50%;background:#e6dfd1;color:#525849;font-size:25px;line-height:1}.contact-kicker{font-size:9px;letter-spacing:1.7px;color:#8b6a57;margin:4px 30px 15px 0}#contact-dialog h2{font:500 28px/1.2 Manrope,Arial,sans-serif;letter-spacing:-1px;margin:0 20px 12px 0}.contact-lead{font-size:13px;color:#626754;margin-bottom:22px}#popup-brief{gap:14px}#popup-brief label{font-size:11px;color:#505744}#popup-brief input,#popup-brief textarea{font-size:16px;background:#fffcf350;border:1px solid #c9c9b8;border-radius:12px;padding:11px 13px;color:#30372e}#popup-brief input::placeholder,#popup-brief textarea::placeholder{color:#808371}#popup-brief input:focus,#popup-brief textarea:focus{outline:2px solid #b28a76;outline-offset:2px}.popup-submit{display:flex;justify-content:space-between;padding:13px 20px;border:0;border-radius:24px;background:#a57564;color:#fff9ef;font-size:13px}.popup-status{font-size:10px;color:#777962;margin:0;line-height:1.5;min-height:15px}.contact-divider{display:flex;align-items:center;gap:12px;font-size:10px;color:#797c69;margin:20px 0 14px}.contact-divider:before,.contact-divider:after{content:'';height:1px;background:#d2d1be;flex:1}.popup-messengers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.popup-messengers :is(button,a){display:flex;justify-content:space-between;padding:12px 16px;border-radius:20px;border:1px solid #b7baa4;background:#e8e8d9;color:#3e4836;font-size:13px}.popup-messengers :is(button,a):hover{background:#dddcca}.popup-messengers :is(button,a) span{color:#9b6b56}#contact-dialog button:focus-visible{outline:2px solid #8c6755;outline-offset:3px}@media(max-width:600px){.hero-contact{font-size:11px;padding:10px 15px;margin-top:13px}#contact-dialog{padding:26px 22px;border-radius:23px}#contact-dialog h2{font-size:24px}.contact-lead{font-size:12px}.popup-messengers :is(button,a){font-size:12px}}
