@font-face{font-family:Display;src:url('assets/bebas.ttf')}@font-face{font-family:Hand;src:url('assets/caveat.ttf')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:#171713;background:#fffef8;font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.6}button,input,select,textarea{font:inherit}button{color:inherit}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,a{touch-action:manipulation}button{cursor:pointer}summary:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #1751b5;outline-offset:5px}img,svg{max-width:100%;display:block}p{margin:0 0 22px}h1,h2,h3{margin:0;font-weight:400}h1,h2{font-family:Display,Arial,sans-serif;line-height:.97;letter-spacing:-.015em}h1{font-size:clamp(82px,10.7vw,158px)}h2{font-size:clamp(58px,6.4vw,96px)}h3{font-size:25px;font-weight:700;line-height:1.15}section{scroll-margin-top:30px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:25px}.handwritten{font:42px/1.05 Hand,cursive}.small{font-size:13px;line-height:1.6}.skip{position:absolute;left:20px;top:-80px;z-index:20;background:white;padding:12px}.skip:focus{top:20px}.scroll-progress{position:fixed;left:0;top:0;width:100%;height:3px;background:#171713;z-index:100;transform:scaleX(0);transform-origin:left}.site-header{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 5vw;background:#ffe000;border-bottom:1px solid #17171322;z-index:10}.brand{font:32px/.88 Display,sans-serif;letter-spacing:-.025em;text-decoration:none;display:block}.brand span{display:block;font:11px/1.5 Arial,sans-serif;letter-spacing:0;margin-top:10px}.desktop-nav{display:flex;gap:40px;align-items:center;font-size:14px;font-weight:700}.desktop-nav a{text-decoration:none}.nav-enquire{border-bottom:1px solid;padding-bottom:5px}.menu-toggle{border:0;background:none;font-size:15px}.menu-toggle:not([hidden]){display:none}#mobile-menu[hidden],[hidden]{display:none!important}#mobile-menu{position:absolute;top:100%;left:0;right:0;background:#ffe000;border-bottom:2px solid;padding:22px 6vw}#mobile-menu a{display:block;padding:10px 0}.hero{background:#ffe000;position:relative;padding:40px 5vw 68px}.hero-inner{max-width:1300px;margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:25px;align-items:center}.hero-copy{position:relative;z-index:2;padding:16px 0 45px}.hero-copy .handwritten{margin:16px 0 28px}.hero-description{font-size:17px;line-height:1.5;max-width:430px}.hero-art{position:relative;align-self:end;min-width:0;padding:0 0 20px}.hero-person{width:100%;max-height:595px;overflow:visible}.art-caption{display:block;text-align:right;font:28px/1 Hand,cursive;margin-top:3px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;border:1.5px solid #171713;background:transparent;padding:17px 23px;text-decoration:none;font-size:14px;font-weight:700;border-radius:0;line-height:1.4;max-width:100%;white-space:normal}.button:hover{background:#171713;color:#fffef8}.button-black{background:#171713;color:#fffef8}.button-black:hover{background:#fffef8;color:#171713}.quiet-link{display:block;font-size:13px;margin-top:16px}.wave{position:absolute;bottom:-1px;left:0;width:100%;height:64px;fill:#fffef8;pointer-events:none}.panorama{position:relative;background:#fffef8;padding-top:10px}.panorama>img{width:100%;height:auto;aspect-ratio:3.18;object-fit:cover}.panorama-caption{display:flex;justify-content:space-between;gap:20px;padding:14px 5vw;font-size:12px;letter-spacing:.08em}.panorama-caption span:first-child{font-weight:700}.intro{max-width:1440px;margin:auto;padding:95px 5vw 80px}.intro h2{font-size:clamp(50px,5.3vw,78px);max-width:1000px}.service-links{margin-top:45px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-links a{font-size:14px;text-decoration:none;border-top:1px solid;padding-top:14px;line-height:1.4}.chapter{position:relative;padding:70px 5vw 115px;background:#fffef8}.chapter-inner{max-width:1300px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:7vw;align-items:center}.chapter-copy{min-width:0;padding:30px 0}.chapter-copy h2{margin-bottom:30px}.chapter-copy>p:not(.eyebrow){max-width:440px;font-size:17px;line-height:1.7}.chapter-scene{position:relative;height:560px;overflow:hidden;min-width:0;padding-bottom:0;isolation:isolate}.chapter-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:47% 47% 0 0}.character-stage{position:absolute;bottom:0;left:0;width:82%;z-index:2}.character{width:100%;height:auto;overflow:hidden}.photo-note{position:absolute;right:14px;top:48%;writing-mode:vertical-rl;color:white;font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-shadow:none;background:#171713;padding:7px 5px}.chapter-drive{--ground:#fffef8}.chapter-drive .wave{fill:#ffe000}.chapter-airport{background:#ffe000;--ground:#ffe000}.chapter-airport .chapter-inner{grid-template-columns:1.15fr .85fr}.chapter-airport .chapter-copy{order:2}.chapter-airport .chapter-scene{order:1}.chapter-airport .character-stage{left:15%;width:82%}.chapter-airport .chapter-photo{border-radius:0 45% 0 0;object-position:60%}.chapter-airport .wave{fill:#fffef8}.chapter-wine{--ground:#fffef8}.chapter-wine .chapter-photo{border-radius:0 0 45% 0}.chapter-wine .wave{fill:#171713}.chapter-delivery{background:#171713;color:#fffef8;--ground:#171713}.chapter-delivery .chapter-inner{grid-template-columns:1.15fr .85fr}.chapter-delivery .chapter-copy{order:2}.chapter-delivery .chapter-scene{order:1}.chapter-delivery .character-stage{left:15%;width:78%}.chapter-delivery .button{border-color:#fffef8;color:#fffef8;background:transparent}.chapter-delivery .button:hover{background:#ffe000;color:#171713;border-color:#ffe000}.chapter-delivery .wave{fill:#fffef8}.explore{padding:95px 5vw;max-width:1440px;margin:auto}.explore-copy{display:grid;grid-template-columns:1.1fr .9fr;gap:35px 7vw;align-items:end}.explore-copy .eyebrow{grid-column:1/-1;margin-bottom:0}.explore-copy h2{font-size:clamp(54px,6vw,88px)}.explore-copy>p:not(.eyebrow){max-width:430px;font-size:17px;margin-bottom:0}.ideas{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:65px}.ideas article{border-top:1px solid;padding-top:24px;min-width:0}.idea-number{font:50px Display;display:block;margin-bottom:25px}.ideas h3{margin-bottom:20px}.ideas p{font-size:15px;line-height:1.7}.text-button{background:none;border:0;border-bottom:1px solid;padding:8px 0;font-size:14px;text-align:left;font-weight:700}.enquire{background:#ffe000;padding:90px 5vw;display:grid;grid-template-columns:1fr 1fr;gap:8vw}.enquiry-copy{max-width:500px}.enquiry-copy h2{font-size:clamp(68px,8vw,118px)}.enquiry-copy .handwritten{margin-top:22px;margin-bottom:32px}.enquiry-copy>p:not(.eyebrow):not(.handwritten):not(.small){font-size:17px}.phone{font:44px Display;display:inline-block;text-decoration:none;margin:0 0 22px}.enquiry-form{background:#fffef8;padding:38px;min-width:0}.form-title{font:42px Display;line-height:1.1;margin:0 0 25px}.form-group{margin-bottom:20px;min-width:0}label{display:block;font-size:13px;font-weight:700;margin-bottom:7px}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid #17171388;border-radius:0;background:#fffef8;color:#171713;padding:12px;font-size:15px;line-height:1.5}textarea{min-height:110px;resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.service-hint,.form-followup,.form-error{font-size:12px;line-height:1.6;margin:8px 0}.optional{font-weight:400}.form-error{color:#a12616}.form-submit{width:100%;background:#171713;color:#fffef8;border:0;padding:17px;font-size:14px;font-weight:700}.form-note{font-size:12px;margin:14px 0 0}.form-followup{margin-top:16px}.plan-notice{font-size:13px;padding:12px;border:1px solid}.footer-top{display:flex;justify-content:space-between;gap:25px;padding-bottom:40px}.footer-top>a:last-child{font-size:15px}footer{padding:60px 5vw 28px;background:#171713;color:#fffef8}footer details{font-size:12px;max-width:850px;border-top:1px solid #ffffff55;padding-top:20px;margin-bottom:30px}summary{cursor:pointer}footer li{margin:12px 0}footer p.small{color:#deded1}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:840px){.site-header{padding:23px 6vw}.brand{font-size:27px}.desktop-nav{display:none}.menu-toggle:not([hidden]){display:block}.hero{padding:30px 6vw 70px}.hero-inner{grid-template-columns:1fr;gap:0}.hero-copy{padding:0}.hero h1{font-size:clamp(72px,15vw,112px)}.hero .eyebrow{font-size:10px}.hero-copy .handwritten{font-size:36px;margin:12px 0 20px}.hero-description{max-width:430px}.hero-art{width:74%;max-width:380px;justify-self:end;margin-top:-12px}.hero-person{max-height:390px}.art-caption{font-size:25px}.wave{height:40px}.panorama>img{aspect-ratio:1.8;object-position:center}.panorama-caption{padding:13px 6vw;font-size:9px}.intro{padding:65px 6vw 45px}.intro h2{font-size:48px}.service-links{grid-template-columns:1fr 1fr;gap:24px 20px;margin-top:30px}.service-links a{font-size:12px}.chapter{padding:35px 6vw 80px}.chapter-inner,.chapter-airport .chapter-inner,.chapter-delivery .chapter-inner{grid-template-columns:1fr;gap:22px}.chapter-copy,.chapter-airport .chapter-copy,.chapter-delivery .chapter-copy{order:0;padding:15px 0}.chapter-copy h2{font-size:64px;margin-bottom:22px}.chapter-copy .eyebrow{margin-bottom:18px}.chapter-copy>p:not(.eyebrow){font-size:16px;max-width:none}.chapter-scene,.chapter-airport .chapter-scene,.chapter-delivery .chapter-scene{height:460px;order:1;margin-left:5%;width:95%}.character-stage{width:94%;left:-7%}.chapter-airport .character-stage,.chapter-delivery .character-stage{width:93%;left:0}.explore{padding:60px 6vw}.explore-copy{grid-template-columns:1fr;gap:22px}.explore-copy h2{font-size:60px}.ideas{grid-template-columns:1fr;gap:35px;margin-top:40px}.idea-number{margin-bottom:10px}.enquire{grid-template-columns:1fr;gap:32px;padding:65px 6vw}.enquiry-copy h2{font-size:84px}.enquiry-copy .handwritten{font-size:36px}.enquiry-form{padding:25px 20px}.form-grid{grid-template-columns:1fr 1fr;gap:12px}.form-title{font-size:37px}.footer-top{flex-direction:column;gap:30px}footer{padding:45px 6vw 25px}}
@media(max-width:420px){.hero h1{font-size:72px}.hero-art{width:82%;margin-top:8px}.chapter-scene{height:380px}.chapter-copy h2{font-size:58px}.intro h2{font-size:43px}.explore-copy h2{font-size:55px}.form-grid{grid-template-columns:1fr}.button{font-size:13px;padding:15px 18px;gap:18px}.enquiry-copy h2{font-size:76px}}

.form-fineprint{font-size:12px;line-height:1.6;margin:14px 0 0}.primary-cta{font-size:14px}

.hero-copy .button{width:270px}.desktop-nav{white-space:nowrap}.photo-note{display:none}

select{min-height:50px;line-height:1.4}.text-button{line-height:1.6;display:inline-block;padding:6px 0 10px;text-decoration:underline;text-underline-offset:7px;border:0}.hero-art{padding-bottom:24px}@media(max-width:420px){.intro h2{font-size:38px}.intro-line{display:block;max-width:290px}.character-stage{left:0;width:100%}}

.intro-title{display:grid;grid-template-columns:1fr 250px;gap:25px;align-items:center}.car-object{animation:car-roll 6s ease-in-out infinite;transform-origin:50% 90%}.car-object svg,.whale-object svg{width:100%;height:auto;overflow:hidden}.coastal-interlude{position:relative;height:540px;background:#fffef8;overflow:hidden}.coastal-interlude>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 50%}.coastal-interlude>p{position:absolute;left:5vw;bottom:25px;background:#ffe000;padding:12px 18px;font:36px Display;margin:0}.whale-object{position:absolute;width:350px;right:8%;bottom:10%;animation:whale-breach 6s ease-in-out infinite;transform-origin:50% 70%}@keyframes car-roll{50%{transform:translateX(10px) rotate(1.5deg)}}@keyframes whale-breach{50%{transform:translateY(-18px) rotate(-3deg)}}@media(max-width:840px){.intro-title{grid-template-columns:1fr}.car-object{width:180px;justify-self:end;margin-top:8px}.coastal-interlude{height:350px}.whale-object{width:220px;right:5%;bottom:19%}.coastal-interlude>p{font-size:27px;left:6vw;bottom:18px}}

.keep{white-space:nowrap}.form-submit{min-height:56px;display:flex;align-items:center;justify-content:center;line-height:1.4}

/* Hero: intact character and independently animated line-drawn car components. */
.hero-person{overflow:visible}.hero-driver{transform-origin:500px 400px;animation:hero-drive 4s ease-in-out infinite}.hero-car-shell{animation:hero-suspension 4s ease-in-out infinite}.hero-wheel-left{transform-origin:238px 537px;animation:hero-roll 7s linear infinite}.hero-wheel-right{transform-origin:843px 537px;animation:hero-roll 7s linear infinite}.hero-road{animation:hero-road 2.5s linear infinite}.chapter-copy h2{font-size:clamp(56px,5.7vw,86px);line-height:.98;margin-bottom:18px}.chapter-copy .service-tagline{font-family:Hand,cursive;font-size:32px!important;line-height:1.2;margin:0 0 24px;max-width:none!important}@keyframes hero-drive{0%,100%{transform:translate(0,0) rotate(-.5deg)}50%{transform:translate(5px,-8px) rotate(.5deg)}}@keyframes hero-suspension{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes hero-roll{to{transform:rotate(360deg)}}@keyframes hero-road{to{transform:translateX(-45px)}}@media(max-width:840px){.hero-art{width:90%;max-width:440px;margin-top:22px}.hero-person{max-height:430px}.chapter-copy h2{font-size:64px}.chapter-copy .service-tagline{font-size:30px!important}}@media(max-width:420px){.hero-art{width:100%}.hero-person{max-height:390px}.chapter-copy h2{font-size:58px}}@media(prefers-reduced-motion:reduce){.hero-driver,.hero-car-shell,.hero-wheel,.hero-road{animation:none!important}}

.chapter-delivery :focus-visible,footer :focus-visible{outline-color:#ffe000}.form-submit:focus-visible,.button-black:focus-visible{outline-color:#1751b5}@media(max-width:360px){.hero h1{font-size:62px}.chapter-copy h2{font-size:50px}.enquiry-copy h2{font-size:65px}.intro h2{font-size:34px}.hero-description{font-size:16px}.site-header{gap:15px}}

.hero .eyebrow{font-size:clamp(22px,2.2vw,30px);line-height:1.22;letter-spacing:0;text-transform:none;max-width:500px;margin-bottom:22px}.hero-description{max-width:460px}

.coastal-interlude>img{object-position:center 67%}

input::placeholder,textarea::placeholder{color:#66665f;opacity:1}.menu-toggle,.text-button{color:inherit}

.garden-friend{position:absolute;z-index:3;width:100px;height:auto;top:14%;right:9%;overflow:visible;pointer-events:none}.butterfly{top:19%;right:9%;width:112px}.bee-wing-left{transform-origin:94px 83px;animation:bee-wing-left .24s ease-in-out infinite alternate}.bee-wing-right{transform-origin:96px 82px;animation:bee-wing-right .24s ease-in-out infinite alternate}.bee-float{animation:garden-hover 5s ease-in-out infinite}.butter-left{transform-origin:100px 105px;animation:butter-flap .8s ease-in-out infinite alternate}.butter-right{transform-origin:101px 105px;animation:butter-flap .8s ease-in-out infinite alternate-reverse}.butter-float{animation:garden-hover 7s ease-in-out infinite reverse}@keyframes bee-wing-left{to{transform:rotate(-28deg) scaleX(.7)}}@keyframes bee-wing-right{to{transform:rotate(26deg) scaleX(.7)}}@keyframes butter-flap{to{transform:scaleX(.4) rotate(8deg)}}@keyframes garden-hover{50%{transform:translate(-9px,-12px) rotate(5deg)}}@media(prefers-reduced-motion:reduce){.garden-friend *{animation:none!important}}


.chapter-airport{padding-top:130px;isolation:isolate}.chapter-airport .chapter-inner{position:relative;z-index:2}.chapter-airport .chapter-copy{background:#ffe000}.flight-track{position:absolute;left:5%;right:5%;height:220px;top:0;z-index:0;pointer-events:none;overflow:hidden}.flight-trail{width:100%;height:220px;overflow:visible}.scroll-plane{position:absolute;left:0;top:0;width:82px;height:64px;max-width:none;z-index:1;pointer-events:none;will-change:transform}@media(max-width:840px){.chapter-airport{padding-top:112px}.scroll-plane{width:64px;height:50px}}@media(prefers-reduced-motion:reduce){.scroll-plane{will-change:auto}}

.spout-water{transform-origin:0 0;transform:scaleY(.5);opacity:1}.whale-object svg{overflow:hidden}@media(prefers-reduced-motion:reduce){.spout-water{transform:scaleY(.8)!important;opacity:1!important}}
.desktop-nav{gap:0;flex-shrink:0;margin-left:auto}.desktop-nav>a+a{margin-left:40px}.site-header{width:100%;box-sizing:border-box}

.hero-art:has(.side-profile){align-self:center}.side-profile{width:100%;max-height:none}.hero-art:has(.side-profile) .art-caption{text-align:center}@media(max-width:840px){.hero-art:has(.side-profile){width:100%;max-width:560px;justify-self:center;margin-top:35px}.side-profile{max-height:none}}

/* Revision 19: a fuller animated hero sky and one continuous whale spray. */
.hero-inner{max-width:1440px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:18px}
.hero-art:has(.side-profile){width:100%;padding-top:135px;align-self:center}
.hero-sky{position:absolute;top:0;left:0;width:100%;height:auto;overflow:visible;pointer-events:none}
.hero-person.side-profile{width:100%;max-width:none}
.hero-car-shell{animation:hero-suspension 1.6s ease-in-out infinite}
.hero-driver{animation:hero-drive 1.6s ease-in-out infinite}
.hero-wheel-left,.hero-wheel-right{animation-duration:2.8s}
.hero-road{animation-duration:1s}
@keyframes hero-suspension{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@keyframes hero-drive{0%,100%{transform:translateY(0) rotate(-.4deg)}50%{transform:translate(3px,-5px) rotate(.4deg)}}
.sun-rays{transform-origin:558px 113px;animation:sunshine 7s ease-in-out infinite}
@keyframes sunshine{0%,100%{transform:rotate(-12deg) scale(.93)}50%{transform:rotate(12deg) scale(1.13)}}
.sky-cloud{animation:cloud-drift 8s ease-in-out infinite alternate}.cloud-right{animation-direction:alternate-reverse;animation-duration:10s}
@keyframes cloud-drift{to{transform:translateX(25px)}}
.bird-flight{animation:bird-soar 4s ease-in-out infinite}.bird-two .bird-flight{animation-delay:-1.2s}.bird-three .bird-flight{animation-delay:-2.5s}
.bird-wing-left,.bird-wing-right{transform-origin:0 0;animation:bird-flap .8s ease-in-out infinite alternate}.bird-wing-right{animation-direction:alternate-reverse}.bird-two path{animation-delay:-.3s}.bird-three path{animation-delay:-.5s}
@keyframes bird-flap{from{transform:rotate(-17deg) scaleY(.6)}to{transform:rotate(18deg) scaleY(1.15)}}
@keyframes bird-soar{0%,100%{transform:translate(0,0)}50%{transform:translate(24px,-18px)}}
.spout-water{transform-origin:0 0;animation:whale-spray 3.4s ease-in-out infinite;will-change:transform,opacity}
@keyframes whale-spray{0%,12%{transform:scale(.5,.08);opacity:0}24%{opacity:1}45%{transform:scale(1,1);opacity:1}67%{transform:translateY(-20px) scale(1.1,.9);opacity:.8}85%,100%{transform:translateY(-35px) scale(1.15,.75);opacity:0}}
@media(max-width:1100px) and (min-width:841px){.hero h1{font-size:clamp(74px,9.6vw,106px)}.hero-art:has(.side-profile){padding-top:105px}}
@media(max-width:840px){.hero-inner{grid-template-columns:1fr;gap:0}.hero-art:has(.side-profile){max-width:650px;width:100%;margin-top:32px;padding-top:135px;justify-self:center}.hero-sky{max-height:150px}.hero-copy{max-width:620px}.hero-person.side-profile{max-height:none}}
@media(max-width:420px){.hero-art:has(.side-profile){padding-top:78px;margin-top:28px}.art-caption{font-size:24px}}
@media(prefers-reduced-motion:reduce){.hero-sky *,.spout-water,.hero-car-shell,.hero-driver,.hero-wheel,.hero-road{animation:none!important}.spout-water{transform:scale(.8)!important;opacity:1!important;will-change:auto}}

.contact-email{display:block;overflow-wrap:anywhere;font-size:17px;margin:0 0 24px}.email-link{display:block}.email-submit{width:100%;margin-top:12px;padding:16px;background:transparent;border:1px solid #171713;font-size:14px;font-weight:bold;min-height:54px}.footer-top{flex-wrap:wrap}.footer-top>a:not(.brand){font-size:15px}
