@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');
:root{--green:#153f36;--dark:#102d28;--cream:#f7f4eb;--gold:#c5ad76;--ink:#203d35}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--cream);color:var(--ink);font:15px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #c5ad76;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400}h2{font-size:clamp(36px,4.2vw,64px);line-height:1.12;letter-spacing:-2px;margin:24px 0 30px}em{font-weight:400;color:#788e76}p{line-height:1.8}.eyebrow{font-size:10px;letter-spacing:2.4px;font-weight:600}.light{color:#eeeddf}.section{padding:105px 7.5%}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:18px 24px;border:1px solid transparent;min-height:58px;font-size:12px;font-weight:600;transition:transform .25s,background .25s}.button:hover{transform:translateY(-3px)}.cream{background:var(--cream);color:var(--green)}.green{background:var(--green);color:var(--cream)}header{height:94px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:13px;font-size:21px;letter-spacing:4px;font-weight:600}.brand small{display:block;font-size:9px;letter-spacing:4px;margin-top:4px}.brand-icon{border:1px solid var(--gold);border-radius:50%;width:45px;height:45px;display:flex;align-items:center;justify-content:center;font-family:Georgia;letter-spacing:-6px;padding-right:7px;font-size:29px}.brand-icon span{font-size:22px;margin-top:10px}nav{display:flex;gap:32px;font-size:12px}nav a:hover{color:#92763d}.nav-cta{border-bottom:1px solid #b5bdb1;padding:12px 0;font-size:12px}.nav-cta span{margin-left:30px}.hero{min-height:740px;height:calc(100svh - 94px);max-height:1040px;position:relative;color:white;overflow:hidden;background:#387e78}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo{background:url('assets/island-rover.webp') center 60%/cover;animation:herozoom 22s ease-out both}.hero-shade{background:linear-gradient(90deg,rgba(5,36,32,.76),rgba(5,36,32,.13) 75%),linear-gradient(0deg,rgba(4,27,25,.7),transparent 38%)}.hero-content{position:relative;padding:10vh 7.5% 130px}.hero h1{font-size:clamp(64px,7.4vw,112px);line-height:1.02;letter-spacing:-4px;margin:28px 0}.hero h1 em{color:#e0d6b8}.hero p{font-size:15px;color:#f1f1e9;margin-bottom:32px}.hero .eyebrow i{display:inline-block;width:6px;height:6px;background:#dfd7a4;border-radius:50%;margin-right:10px}.hero-footer{position:absolute;bottom:42px;left:7.5%;right:7.5%;display:flex;justify-content:space-between;align-items:end;font-size:10px;letter-spacing:1.7px}.hero-footer small{display:block;font-size:8px;letter-spacing:1.8px;opacity:.65;margin-top:9px}.hero-footer a span{display:inline-block;margin-left:20px;font-size:24px}.image-note{position:absolute;right:15px;bottom:12px;font-size:7px;letter-spacing:1px;opacity:.6}.marquee{overflow:hidden;background:#e8e9dd;border-bottom:1px solid #d4d8cb;padding:24px 0;white-space:nowrap;font-size:13px;letter-spacing:4px}.marquee>div{display:inline-block;animation:marquee 38s linear infinite}.marquee i{font-style:normal;color:#a68e56;margin:0 50px}.intro{display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.intro-copy{padding-top:20px}.large{font-size:21px;line-height:1.6}.intro-copy>p:not(.large){color:#6a776c;font-size:14px}.text-link{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #b5beb0;font-size:12px;margin-top:24px}.expertise{padding-top:80px;background:#eceee5}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.section-head>p{font-size:13px;color:#748173;margin-bottom:30px}.marque-tabs{display:flex;border-bottom:1px solid #c9d0c2;gap:30px;margin-bottom:35px}.marque-tabs button{border:0;background:transparent;padding:20px 0;color:#7c887c;font-size:12px;position:relative}.marque-tabs button[aria-selected=true]{color:var(--green)}.marque-tabs button[aria-selected=true]:after{content:'';height:2px;background:var(--green);position:absolute;bottom:-1px;left:0;right:0}.marque-panel{display:grid;grid-template-columns:1fr 1fr;min-height:400px;background:var(--cream)}.marque-art{position:relative;overflow:hidden;background:var(--green);color:#e5debd;display:flex;align-items:center;justify-content:center;min-height:400px}.art-name{font:58px/1.1 'Playfair Display',Georgia;letter-spacing:8px;text-align:center;z-index:1;white-space:pre-line}.orbit{position:absolute;border:1px solid #879f7d44;border-radius:50%;width:350px;height:350px}.o2{width:480px;height:480px;border-style:dashed;animation:rotate 110s linear infinite}.compass{position:absolute;right:26px;top:20px;text-align:center;font-size:8px;line-height:1.7;color:#c5ad76}.compass b{font-size:33px;font-weight:400}.art-caption{position:absolute;bottom:30px;font-size:8px;letter-spacing:2px}.marque-copy{padding:55px 50px}.marque-copy h3{font-size:36px;line-height:1.2;margin:18px 0}.marque-copy p{font-size:13px;color:#73806f}.marque-copy ul{padding:0;list-style:none;font-size:12px;line-height:2.5}.marque-copy li:before{content:'✦';color:#b79d63;font-size:10px;margin-right:15px}.care{padding-bottom:115px}.service-list details{border-top:1px solid #cdd3c5}.service-list details:last-child{border-bottom:1px solid #cdd3c5}summary{display:flex;align-items:center;gap:35px;padding:28px 0;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary>span{font-size:10px;color:#9c9e83}summary h3{font-size:29px;margin:0}summary>b{font-size:28px;margin-left:auto;font-weight:400;transition:transform .3s}details[open] summary>b{transform:rotate(45deg)}details>div{margin:0 50px 28px 53px;display:flex;align-items:start;gap:10%;justify-content:space-between}details p{max-width:550px;color:#74806f;font-size:14px}details a{font-size:12px;white-space:nowrap;border-bottom:1px solid #b5beb0;padding:8px 0}.island-banner{min-height:510px;background:linear-gradient(90deg,#0e342cbb,#0e342c22),url('assets/island-rover.webp') center 72%/cover;background-attachment:fixed;display:flex;align-items:center;padding:70px 7.5%;color:white}.island-banner h2{font-size:76px}.island-banner em{color:#ece0bb}.visit{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.visit p{font-size:13px;color:#71806f}.fine{font-size:10px!important;line-height:1.6!important;opacity:.7;margin-top:18px}.location-art{height:400px;position:relative;overflow:hidden;background:#d9e7df;background-image:repeating-linear-gradient(0deg,transparent,transparent 39px,#b2c9bd55 40px),repeating-linear-gradient(90deg,transparent,transparent 39px,#b2c9bd55 40px)}.location-art svg{width:100%;height:100%;padding:10px}.location-art path{fill:#f5f0dd;stroke:#b8c6aa;stroke-width:2}.location-art circle{fill:var(--green)}.location-art .map-ring{fill:none;stroke:#153f3666;stroke-width:1;transform-origin:183px 149px;animation:pulse 3s infinite}.latitude{position:absolute;left:25px;top:25px;font-size:9px;letter-spacing:2px}.map-label{position:absolute;left:15%;top:53%;font-size:8px;letter-spacing:1px;background:var(--green);color:white;padding:10px}.map-label b{margin-left:15px}.location-bottom{position:absolute;bottom:25px;right:25px;letter-spacing:2px;font-size:10px;text-align:right}.location-bottom small{display:block;font-size:7px;margin-top:8px}.inquiry{background:var(--green);color:#f7f4eb;display:grid;grid-template-columns:1fr 1fr;gap:9%}.inquiry em{color:#c5c6a2}.inquiry p{font-size:13px;color:#c0cbbb}.inquiry form{padding-top:10px}.inquiry label{display:block;font-size:10px;letter-spacing:.8px;margin-bottom:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}input,select,textarea{display:block;border:0;border-bottom:1px solid #8fa58b;background:transparent;color:inherit;width:100%;padding:12px 0;border-radius:0;font-size:13px;outline-offset:5px}select option{color:var(--green);background:var(--cream)}input::placeholder,textarea::placeholder{color:#a8bba6}textarea{resize:vertical}footer{padding:65px 7.5% 25px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap}footer>p,footer>div{font-size:11px;line-height:1.8;color:#7d8676}footer>a:last-of-type{font-size:9px;letter-spacing:1px}.legal{width:100%;border-top:1px solid #d5d8cb;padding-top:24px;margin:20px 0 0;font-size:9px!important}dialog{max-width:540px;width:90%;padding:40px;border:0;background:var(--cream);color:var(--green)}dialog::backdrop{background:#061e1bd9;backdrop-filter:blur(6px)}dialog h3{font-size:30px;margin:20px 0}dialog textarea{background:#e8ecdf;padding:15px;font-size:12px;line-height:1.7;margin-bottom:20px}dialog p{font-size:11px}.close{position:absolute;right:15px;top:10px;font-size:28px;border:0;background:none;color:var(--green)}.welcome{position:fixed;inset:0;background:var(--green);color:var(--cream);z-index:50;display:flex;align-items:center;justify-content:center;text-align:center;transition:opacity .8s,visibility .8s;background-image:radial-gradient(ellipse at 50% 60%,#40675370,transparent 65%)}.welcome.out{opacity:0;visibility:hidden;pointer-events:none}.welcome-inner{animation:rise 1s both}.welcome-mark{font:140px Georgia;letter-spacing:-15px;margin:35px 0;color:#e4d4aa}.welcome-mark span{font-style:italic;font-size:27px;letter-spacing:0;margin:0 9px}.welcome p{font:italic 25px Georgia;color:#e3dcc6}.welcome button{margin-top:24px;background:transparent;color:var(--cream);border:1px solid #8d9a76;padding:18px 30px;font-size:12px}.welcome button span{margin-left:40px}.welcome-bottom{position:absolute;bottom:40px;font-size:8px;letter-spacing:3px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}@keyframes herozoom{from{transform:scale(1.07)}to{transform:scale(1)}}@keyframes marquee{to{transform:translateX(-35%)}}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.35);opacity:.3}}@keyframes rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}@media(min-width:1600px){.section{padding-left:max(7.5%,calc((100vw - 1400px)/2));padding-right:max(7.5%,calc((100vw - 1400px)/2))}}@media(max-width:800px){header{height:80px;padding:0 6%}.brand{font-size:17px;letter-spacing:3px}.brand-icon{width:38px;height:38px}nav{display:none}.nav-cta{font-size:10px}.nav-cta span{margin-left:10px}.hero{height:820px;min-height:0;max-height:calc(100svh - 80px)}.hero-photo{background-position:63% center}.hero-shade{background:linear-gradient(90deg,#082f29b0,#082f2933),linear-gradient(0deg,#082f29aa,transparent)}.hero-content{padding:80px 7% 100px}.hero h1{font-size:68px;letter-spacing:-3px}.hero-content .eyebrow{font-size:8px;letter-spacing:1.6px}.hero p{font-size:13px}.hero-footer{bottom:35px;left:7%;right:7%}.hero-footer>span:last-child{display:none}.section{padding:70px 7%}.intro,.visit,.inquiry{grid-template-columns:1fr;gap:35px}.intro-copy{padding-top:0}.section-head{display:block}.section-head>p{margin-top:24px}.marque-tabs{gap:20px;overflow:auto;white-space:nowrap}.marque-tabs button{font-size:11px}.marque-panel{grid-template-columns:1fr}.marque-art{min-height:310px}.art-name{font-size:45px}.marque-copy{padding:35px}.section-head h2{margin-bottom:0}summary{gap:20px}summary h3{font-size:23px}details>div{margin-left:33px;margin-right:10px;display:block}details p{font-size:13px}.island-banner{min-height:450px;background-attachment:scroll;padding:65px 7%}.island-banner h2{font-size:61px}.location-art{height:330px}.inquiry{gap:30px}.form-row{gap:20px}footer{padding:45px 7% 25px;gap:20px}footer>p{display:none}.legal{display:block!important}.welcome-mark{font-size:115px}.welcome .eyebrow{font-size:8px}}@media(max-width:390px){.hero h1{font-size:57px}.hero-content{padding-top:55px}.hero p{font-size:12px}.nav-cta span{display:none}.brand{font-size:15px}.brand small{font-size:8px}.button{gap:25px}h2{font-size:37px}.form-row{grid-template-columns:1fr;gap:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Island crest and Nassau editorial scenes */
header{height:112px}.brand-crest{width:69px;height:83px;object-fit:contain}.welcome-crest{display:block;width:265px;height:315px;object-fit:contain;margin:20px auto 24px;filter:drop-shadow(0 5px 18px #0002)}.welcome-inner>p{font-size:22px;max-width:440px;padding:0 20px}.welcome-inner>.eyebrow{color:#d5bf89}.welcome{background:radial-gradient(ellipse at 50% 45%,#f7f4eb 0%,#ede8d8 80%);color:var(--green)}.welcome p{color:var(--green)}.welcome button{color:var(--green);border-color:#b19559}.welcome-bottom{color:#8a764e}.welcome-inner>.eyebrow{color:#8a764e}.hero{height:calc(100svh - 112px)}.island-banner{position:relative;background-image:linear-gradient(90deg,#0e342cc9,#0e342c11),url('assets/cable-beach.webp')}.scene-caption{position:absolute;bottom:22px;right:30px;font-size:8px;letter-spacing:2px;color:#fff}.scenes-head{padding-top:85px;padding-bottom:45px;text-align:center}.scenes-head h2{margin-bottom:22px}.scenes-head p{font-size:13px;color:#748173}.scene-grid{display:grid;grid-template-columns:1fr 1fr}.scene{position:relative;min-height:470px;display:flex;align-items:end;padding:40px;overflow:hidden;color:white;background-position:center;background-size:cover}.scene:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#0a2c27e6,transparent 75%)}.scene>div{position:relative}.scene h3{font-size:34px;margin:15px 0 5px}.scene p{font-size:11px;color:#e1e5d7;margin:0}.scene-fort{background-image:url('assets/fort-charlotte.webp')}.scene-disclosure{font-size:9px;text-align:center;color:#7c8776;letter-spacing:.4px;margin:15px 10px 0}.marque-art{background-image:linear-gradient(0deg,#0c322dd9,#0c322d22),url('assets/cable-beach.webp');background-position:center;background-size:cover}.marque-art .orbit{display:none}.marque-art .art-name{text-shadow:0 2px 12px #102d28aa;font-size:44px;align-self:end;margin-bottom:70px}.art-caption{color:#e8dfbf}.art-name{transition:opacity .3s}footer .brand-crest{width:65px;height:80px}@media(max-width:800px){header{height:96px}.brand-crest{width:48px;height:66px}.brand{gap:9px}.hero{max-height:calc(100svh - 96px)}.welcome-crest{width:220px;height:265px}.welcome-inner>p{font-size:19px}.scene-grid{grid-template-columns:1fr}.scene{min-height:420px;padding:30px}.scene h3{font-size:30px}.scenes-head{padding-top:65px}.island-banner{background-position:65% center}.marque-art .art-name{font-size:39px}}

/* Draw the heritage crest, then reveal the site automatically. */
header{height:146px}.brand-crest{width:112px;height:130px}.brand{gap:18px}.hero{height:calc(100svh - 146px)}.welcome-crest{width:320px;height:340px}.draw-ink{fill:none;stroke:#b19559;stroke-width:.7;stroke-linecap:round;stroke-linejoin:round}.draw-ink path{stroke-dasharray:1;stroke-dashoffset:1;animation:crestDraw 3s ease-in-out .2s forwards}.draw-color{opacity:0;animation:crestFill 1.2s ease 2.5s forwards}.draw-ink{animation:inkFade .8s ease 3.3s forwards}.welcome-inner{animation:none}.welcome-inner>p{opacity:0;animation:rise .8s ease 3s forwards}.welcome button{opacity:0;animation:rise .6s ease 3.6s forwards}footer .brand-crest{width:95px;height:112px}@keyframes crestDraw{to{stroke-dashoffset:0}}@keyframes crestFill{to{opacity:1}}@keyframes inkFade{to{opacity:0}}@media(max-width:800px){header{height:120px;padding:0 5%}.brand-crest{width:80px;height:100px}.brand{gap:9px;font-size:16px}.brand small{font-size:8px;letter-spacing:3px}.hero{max-height:calc(100svh - 120px)}.welcome-crest{width:270px;height:300px}.nav-cta{font-size:10px}.nav-cta span{margin-left:8px}}@media(prefers-reduced-motion:reduce){.draw-color{opacity:1}.draw-ink{display:none}.welcome-inner>p,.welcome button{opacity:1}}
/* Larger primary brand crest. */
header{height:190px}.brand-crest{width:164px;height:174px}.brand{gap:22px}.hero{height:calc(100svh - 190px)}footer .brand-crest{width:135px;height:148px}@media(max-width:800px){header{height:158px;padding:0 4%}.brand-crest{width:120px;height:142px}.brand{gap:8px;font-size:15px;letter-spacing:2px}.brand small{font-size:8px;letter-spacing:2px}.hero{max-height:calc(100svh - 158px)}.nav-cta{font-size:9px}.nav-cta span{display:none}footer .brand-crest{width:110px;height:125px}}@media(max-width:390px){.brand-crest{width:105px;height:134px}.brand{font-size:14px}.nav-cta{max-width:55px;line-height:1.6}header{height:150px}.hero{max-height:calc(100svh - 150px)}}

.scene-grid{grid-template-columns:1fr}.scene-fort{min-height:540px;background-position:center 58%}@media(max-width:800px){.scene-fort{min-height:420px}}

/* Motoring Club medallion opening and the island drive. */
.welcome{clip-path:circle(150% at 50% 50%);overflow:hidden;transition:clip-path 1s cubic-bezier(.7,0,.2,1),visibility 1s;background:radial-gradient(ellipse at 50% 40%,#fffdf5 0%,#f0e9d8 65%,#e5dcc4 100%)}.welcome.out{opacity:1;clip-path:circle(0% at 12% 10%);visibility:hidden}.welcome-inner{position:relative;z-index:2}.medallion-stage{position:relative;width:330px;height:330px;margin:25px auto 30px;perspective:900px;display:grid;place-items:center}.welcome-medallion{width:88%;height:88%;object-fit:contain;border-radius:50%;mix-blend-mode:multiply;animation:medallionArrival 2s cubic-bezier(.2,.7,.2,1) both;filter:drop-shadow(0 12px 18px #7e682d22)}.orbit-ring{position:absolute;border:1px solid #b1955980;border-radius:50%;inset:0;animation:ringArrival 2.2s ease both}.ring-two{inset:-13px;border-style:dashed;border-color:#b1955944;animation:ringArrival 2.5s ease both,ringOrbit 35s linear 2.5s infinite}.medallion-glint{position:absolute;inset:4%;border-radius:50%;z-index:3;overflow:hidden;pointer-events:none}.medallion-glint:after{content:'';position:absolute;width:30%;height:140%;left:-60%;top:-20%;background:linear-gradient(90deg,transparent,#fff9,transparent);transform:rotate(25deg);animation:badgeGlisten 1.5s ease 1.6s both}.welcome-inner>p{animation:rise .8s ease 1.8s forwards}.welcome button{animation:rise .6s ease 2.4s forwards}.splash-palm{position:absolute;bottom:-7%;width:26%;height:80%;background:url('assets/header-palm.png') bottom center/contain no-repeat;opacity:.11;transform-origin:bottom center}.splash-palm-left{left:-5%;animation:palmWelcome 3s ease both;transform:rotate(12deg)}.splash-palm-right{right:-5%;transform:scaleX(-1) rotate(12deg);animation:palmWelcomeRight 3s ease both}header{height:225px;align-items:flex-start;padding-top:17px;position:relative;isolation:isolate;overflow:hidden}header .brand{position:relative;z-index:4;align-items:center}header nav{margin-top:65px;position:relative;z-index:4}header>.nav-cta{margin-top:52px;position:relative;z-index:4}.brand-crest{position:relative;transition:filter .5s}header .brand.departure .brand-crest{filter:drop-shadow(0 0 12px #b1955977)}.hero{height:calc(100svh - 225px)}.island-drive{position:absolute;left:0;right:0;bottom:0;height:92px;pointer-events:none;z-index:3;overflow:visible}.coastal-trail{position:absolute;left:7%;right:4%;height:1px;bottom:18px;background:linear-gradient(90deg,transparent,#b1955955 10%,#b1955955 90%,transparent)}.coastal-trail:after{content:'';position:absolute;inset:-3px 0;border-bottom:1px dashed #b1955922}.lane-palm{position:absolute;height:80px;width:66px;object-fit:contain;bottom:18px;filter:drop-shadow(0 3px 2px #173d3620)}.palm-a{left:34%;transform:scaleX(-1)}.palm-b{left:65%;height:72px}.palm-c{right:5%;height:88px;transform:scaleX(-1)}.driving-rover{position:absolute;width:104px;height:66px;left:0;top:0;opacity:0;will-change:transform;z-index:5;transform-origin:center center}.driving-rover img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 3px 2px #183f3633)}.driving-rover.moving img{animation:engineBob .28s ease-in-out infinite alternate}.drive-dust{position:absolute;bottom:16px;width:45px;height:4px;border-radius:50%;background:#b1955920;opacity:0}header .brand.parked .brand-crest{animation:parkGlow 1.3s ease}.island-drive:before{content:'THE ISLAND DRIVE';position:absolute;font-size:7px;letter-spacing:2.5px;color:#8e7b4c80;left:47%;bottom:5px}@keyframes medallionArrival{0%{opacity:0;transform:rotateY(-100deg) rotateZ(-18deg) scale(.55)}35%{opacity:1}75%{transform:rotateY(8deg) rotateZ(2deg) scale(1.03)}100%{opacity:1;transform:rotateY(0) rotateZ(0) scale(1)}}@keyframes ringArrival{from{opacity:0;transform:scale(1.35) rotate(-65deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes ringOrbit{to{transform:rotate(360deg)}}@keyframes badgeGlisten{to{left:145%}}@keyframes palmWelcome{from{opacity:0;transform:translateY(30%) rotate(18deg)}to{opacity:.11;transform:translateY(0) rotate(12deg)}}@keyframes palmWelcomeRight{from{opacity:0;transform:translateY(30%) scaleX(-1) rotate(18deg)}to{opacity:.11;transform:translateY(0) scaleX(-1) rotate(12deg)}}@keyframes engineBob{from{transform:translateY(0) rotate(-.35deg)}to{transform:translateY(-1px) rotate(.35deg)}}@keyframes parkGlow{35%{filter:drop-shadow(0 0 17px #b19559aa)}100%{filter:none}}@media(max-width:800px){header{height:212px;padding:14px 4% 0}header nav{display:none}header>.nav-cta{margin-top:49px}.brand-crest{width:120px;height:142px}.hero{max-height:calc(100svh - 212px)}.island-drive{height:71px}.lane-palm{height:56px;width:44px;bottom:15px}.palm-a{left:43%}.palm-b{left:68%;height:50px}.palm-c{right:2%;height:62px}.coastal-trail{bottom:15px;left:12%;right:2%}.driving-rover{width:77px;height:49px}.island-drive:before{left:46%;font-size:5px;letter-spacing:1.5px;bottom:3px}.medallion-stage{width:265px;height:265px}.splash-palm{width:45%;height:65%;opacity:.08}.splash-palm-left{left:-17%}.splash-palm-right{right:-17%}}@media(max-width:390px){header{height:202px}.brand-crest{width:105px;height:134px}.hero{max-height:calc(100svh - 202px)}.medallion-stage{width:235px;height:235px}.welcome-inner>p{font-size:17px}.palm-a{left:41%}.palm-b{left:67%}}@media(prefers-reduced-motion:reduce){.welcome-medallion,.orbit-ring{opacity:1;transform:none}.welcome.out{clip-path:none;opacity:0}.driving-rover{display:none}.splash-palm{opacity:.08}}
header .brand-crest{border-radius:50%;object-fit:cover;aspect-ratio:1;height:auto;margin-top:5px}.medallion-stage{isolation:isolate}
/* Prominent navigation in the ROVERS wordmark style. */
header nav{gap:28px}header nav a,header>.nav-cta{font-family:'DM Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:2px;color:var(--green);font-size:14px;line-height:1.4}header nav a{padding:8px 0;border-bottom:2px solid transparent;transition:color .2s,border-color .2s}header nav a:hover{color:#9a7c40;border-bottom-color:#b19559}header>.nav-cta{border-bottom:2px solid #b19559;padding:12px 0}header>.nav-cta span{margin-left:16px;font-size:19px}header>.nav-cta:hover{color:#9a7c40}@media(min-width:801px) and (max-width:1150px){header{padding-left:4%;padding-right:4%}header nav{gap:16px}header nav a,header>.nav-cta{font-size:11px;letter-spacing:1.2px}header .brand{font-size:18px;gap:12px}header .brand-crest{width:140px}header>.nav-cta span{margin-left:8px}}@media(max-width:800px){header{height:270px}header nav{display:flex;position:absolute;left:5%;right:5%;top:155px;margin:0;justify-content:space-between;gap:12px}header nav a{font-size:10px;letter-spacing:1.4px;padding:7px 0}header>.nav-cta{font-size:11px;letter-spacing:1.3px;max-width:155px;margin-top:48px;padding:10px 0;text-align:right}header>.nav-cta span{display:none}.hero{max-height:calc(100svh - 270px)}}@media(max-width:390px){header{height:258px}header nav{top:145px}header nav a{font-size:9px;letter-spacing:1.1px}header>.nav-cta{font-size:10px;max-width:116px;line-height:1.6}.hero{max-height:calc(100svh - 258px)}}
@media(max-width:800px){header>.nav-cta{max-width:125px;font-size:10px;letter-spacing:1.1px}}

/* The departing Rover must render in front of the badge, never behind it. */
.island-drive{z-index:10}.driving-rover{z-index:12}.driving-rover.moving{opacity:1}header .brand.departure .brand-crest{filter:drop-shadow(0 0 7px #b1955955)}

/* Transparent heritage workshop vignettes. */
.repair-theatre{max-width:510px;margin:8px 0 0;--repair-duration:6000ms}.repair-stage{position:relative;width:100%;aspect-ratio:1.56;isolation:isolate}.repair-frame{position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateY(7px);transition:opacity .7s ease,transform .7s ease,visibility .7s;pointer-events:none}.repair-frame.active{opacity:1;visibility:visible;transform:none}.repair-frame img{width:100%;height:100%;object-fit:contain;transform-origin:65% 76%}.repair-frame.active img{animation:workRhythm 2.8s ease-in-out infinite}.repair-wheel.active img,.repair-brakes.active img{animation-duration:2.1s}.repair-underbody.active img{animation-duration:3.5s}.repair-diagnostics.active img{animation-duration:4s}.repair-meta{display:flex;justify-content:space-between;align-items:center;margin:0 12px 8px}.repair-caption{font:500 10px 'DM Sans',sans-serif;color:#73816a;letter-spacing:1.7px;text-transform:uppercase}.repair-pause{width:30px;height:30px;border:1px solid #b1955944;border-radius:50%;background:transparent;color:var(--green);font-size:11px;display:grid;place-items:center}.repair-pause:hover{border-color:#b19559;background:#e9e6d9}.repair-timeline{display:flex;gap:8px;padding:0 12px}.repair-dot{position:relative;flex:1;height:14px;padding:0;border:0;background:transparent}.repair-dot:before{content:'';position:absolute;left:0;right:0;top:6px;height:2px;background:#b1955930}.repair-dot span{position:absolute;height:2px;top:6px;left:0;right:0;background:#b19559;transform:scaleX(0);transform-origin:left}.repair-dot.selected span{animation:repairProgress var(--repair-duration) linear forwards}.repair-theatre.paused *{animation-play-state:paused!important}.repair-workpoint{position:absolute;width:23px;height:23px;right:14%;top:46%;opacity:0;transition:opacity .5s}.repair-frame.active .repair-workpoint{opacity:.45}.repair-workpoint i{position:absolute;inset:0;border:1px solid #b19559;border-radius:50%;animation:repairPulse 2.6s ease-out infinite}.repair-workpoint i+i{animation-delay:1.3s}.repair-wheel .repair-workpoint,.repair-brakes .repair-workpoint{top:71%;right:22%}.repair-underbody .repair-workpoint{top:73%;right:40%}.repair-diagnostics .repair-workpoint{top:49%;right:37%}.repair-finish .repair-workpoint{top:45%;right:20%}@keyframes workRhythm{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-1.5px) rotate(.22deg)}}@keyframes repairPulse{from{transform:scale(.4);opacity:.6}to{transform:scale(1.25);opacity:0}}@keyframes repairProgress{to{transform:scaleX(1)}}@media(max-width:800px){.repair-theatre{max-width:500px;margin-top:-8px}.repair-stage{aspect-ratio:1.65}.repair-caption{font-size:9px}.intro-copy{padding-top:0}}@media(prefers-reduced-motion:reduce){.repair-frame{transition:none}.repair-frame img,.repair-workpoint,.repair-dot span{animation:none!important}.repair-workpoint{display:none}.repair-dot.selected span{transform:scaleX(1)}}

/* Let the mobile hero grow with its copy so the CTA never overlaps the footer. */
@media(max-width:800px){
 .hero{height:auto;min-height:0;max-height:none;padding-bottom:36px}
 .hero-content{padding:55px 7% 30px}
 .hero-content .button{min-height:48px;padding:13px 20px;gap:24px;font-size:12px}
 .hero-footer{position:relative;inset:auto;margin:0 7%;gap:20px;align-items:center}
 .hero-footer>span:last-child{display:none}
 .hero-footer a{flex-shrink:0}
 .image-note{bottom:10px}
}

/* Engraved sea and colonial shoreline, behind the Rover's existing route. */
.drive-sea{position:absolute;left:7%;right:4%;bottom:20px;height:45px;overflow:hidden;opacity:.65;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 94%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 94%,transparent)}
.drive-sea svg{width:100%;height:100%;overflow:visible}.sea-current-back{animation:seaDrift 14s linear infinite}.sea-current-front{opacity:.65;animation:seaReturn 19s linear infinite}.lane-fort{position:absolute;left:19%;bottom:20px;width:145px;height:69px;object-fit:contain;object-position:center bottom;z-index:1}.lane-palm{z-index:2}.coastal-trail{z-index:3}.island-drive:before{z-index:4}
@keyframes seaDrift{from{transform:translateX(0)}to{transform:translateX(144px)}}@keyframes seaReturn{from{transform:translateX(0)}to{transform:translateX(-192px)}}
@media(max-width:800px){.drive-sea{left:10%;right:2%;bottom:17px;height:32px}.lane-fort{left:18%;bottom:17px;width:82px;height:48px}}
@media(prefers-reduced-motion:reduce){.sea-current-back,.sea-current-front{animation:none}}

/* The fort artwork is framed to its stone base; the sea reuses the badge itself. */
.lane-fort{left:16.5%;bottom:18px;width:230px;height:auto;aspect-ratio:1737/553;overflow:hidden}
.drive-sea{left:7%;right:4%;bottom:20px;height:15px;opacity:.85}
.drive-sea svg{height:18px;width:100%}.sea-current-back{animation:badgeSeaEast 4.8s steps(24,end) infinite}.sea-current-front{opacity:.22;animation:badgeSeaWest 7.2s steps(24,end) infinite}
@keyframes badgeSeaEast{from{transform:translateX(0)}to{transform:translateX(96px)}}
@keyframes badgeSeaWest{from{transform:translateX(0)}to{transform:translateX(-96px)}}
@media(max-width:800px){.lane-fort{left:12%;bottom:15px;width:112px;height:auto}.drive-sea{left:10%;right:2%;bottom:17px;height:12px}}
@media(prefers-reduced-motion:reduce){.sea-current-back,.sea-current-front{animation:none}}

/* Larger ROVERS lettering with a tighter two-line wordmark. */
header .brand>span{font-size:32px;line-height:1;letter-spacing:4px}
header .brand>span small{font-size:9px;line-height:1.15;letter-spacing:4px;margin-top:5px}
@media(min-width:801px) and (max-width:1150px){header .brand>span{font-size:26px;letter-spacing:3px}header .brand>span small{letter-spacing:3px;margin-top:4px}}
@media(max-width:800px){header .brand>span{font-size:21px;letter-spacing:2px}header .brand>span small{font-size:8px;letter-spacing:2px;margin-top:3px}}
@media(max-width:390px){header .brand>span{font-size:20px}}
