:root{--sage:#6a7a6e;--cream:#f1e4cd;--bronze:#b8976b;--ink:#2a2a2a;--paper:#faf6ee}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,sans-serif}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Times New Roman',serif;font-weight:400;line-height:1.05}h1{font-size:clamp(64px,7.6vw,112px);letter-spacing:-4px}h2{font-size:clamp(40px,4.5vw,64px);letter-spacing:-1.8px}h3{font-size:34px}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,select,summary{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--bronze);outline-offset:6px}header{background:var(--sage);color:var(--cream);display:flex;align-items:center;justify-content:space-between;padding:22px 6%;border-bottom:1px solid #f1e4cd30}header img{width:210px;display:block}nav{display:flex;gap:32px;align-items:center;font-size:13px}nav .nav-cta{border-bottom:1px solid var(--bronze);padding-bottom:6px}.hero{background:var(--sage);color:var(--cream);display:grid;grid-template-columns:1.2fr 1fr;align-items:center;min-height:690px;padding:80px 8%;gap:6%}.eyebrow{font-size:11px;letter-spacing:2.4px;font-weight:600;margin-bottom:24px}.hero .intro{max-width:420px;margin:28px 0 32px;font-size:18px;color:#f1e4cde0}.button{display:inline-flex;justify-content:space-between;gap:35px;padding:15px 24px;align-items:center;border:1px solid transparent;font-size:13px;border-radius:0}.cream{background:var(--cream);color:var(--ink)}.dark{background:var(--ink);color:var(--cream)}.outline{border-color:var(--ink);background:transparent;color:var(--ink)}.hero-note{font-size:11px;margin-top:30px;opacity:.8}.hero-art{text-align:center;border:1px solid #f1e4cd45;padding:32px 16px 24px;position:relative}.hero-art img{width:100%;max-width:385px}.hero-art p{font-size:9px;letter-spacing:2px}.ribbon{display:flex;justify-content:space-around;gap:20px;background:var(--cream);padding:22px 5%;font-size:11px;letter-spacing:1px}.section{padding:100px 8%}.section-heading{max-width:680px;margin-bottom:48px}.section-heading>p:last-child{max-width:530px;margin-top:22px;color:#62635c}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px}.service-grid article{border-top:1px solid var(--bronze);padding-top:32px}.service-grid article>p:not(.eyebrow){margin-top:20px}.service-grid ul{padding-left:18px;margin:24px 0;font-size:14px;line-height:2}.fine{font-size:12px;line-height:1.6;color:#63635b}.service-grid a{display:flex;justify-content:space-between;margin-top:30px;padding:15px 0;border-bottom:1px solid #b8976b80;font-size:13px}.pricing{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;background:var(--cream)}.price-panel{background:var(--paper);padding:36px}.price-panel>label{display:block;font-size:10px;letter-spacing:2px;margin-bottom:12px}select,input,textarea{width:100%;padding:13px;background:transparent;border:1px solid #6a7a6e65;color:var(--ink);border-radius:0}select{background:var(--paper)}.prices{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}.prices>div+div{border-left:1px solid #b8976b60;padding-left:24px}.prices h3{font-size:28px}.from{font-size:9px;letter-spacing:1px;margin-top:22px}.price{font:56px/1.2 'Times New Roman',serif;margin:4px 0 25px}.prices .button{width:100%;padding:12px;font-size:11px;gap:5px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:55px}.steps span{color:#75603f;font:22px 'Times New Roman',serif}.steps h3{font-size:26px;margin:22px 0 15px}.steps p{font-size:14px;color:#62635c}.fleet{display:grid;grid-template-columns:1.2fr 1fr;gap:90px;background:var(--sage);color:var(--cream)}.fleet h2+p{max-width:420px;margin:25px 0 30px}.fleet-details{border-top:1px solid var(--bronze);padding-top:25px}.fleet-details>p:first-child{font-size:10px;letter-spacing:2px}.fleet dt{font:24px 'Times New Roman',serif;margin-top:28px}.fleet dd{margin:8px 0;font-size:13px;opacity:.85}.fleet .fine{color:var(--cream);opacity:.8;margin-top:30px}.questions{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}details{border-bottom:1px solid #b8976b70;padding:20px 0}summary{cursor:pointer;font-size:15px}details p{font-size:14px;margin-top:15px;color:#62635c}.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#ece8de}.inquiry h2+p{margin-top:20px}.draft-note{max-width:350px;font-size:12px;margin-top:30px;color:#62635c}form{display:grid;gap:18px}form label{font-size:12px}form input,form select,form textarea{margin-top:6px;background:#faf6ee80}form button{justify-self:start}footer{display:flex;align-items:center;justify-content:space-between;padding:40px 8%;background:var(--sage);color:var(--cream);font-size:12px}footer img{width:210px}footer p{font:20px 'Times New Roman',serif}@media(max-width:800px){header{padding:18px 5%;flex-wrap:wrap;gap:12px}header img{width:170px}nav{gap:18px;font-size:11px}nav .nav-cta{display:none}.hero{grid-template-columns:1fr;padding:65px 7%;gap:50px;min-height:auto}h1{letter-spacing:-2px}.hero-art{max-width:420px;width:100%;justify-self:center}.hero-art img{max-width:260px}.section{padding:65px 7%}.service-grid,.pricing,.fleet,.questions,.inquiry{grid-template-columns:1fr;gap:35px}.pricing .section-heading{margin-bottom:0}.price-panel{padding:24px}.steps{grid-template-columns:1fr;gap:30px}.steps h3{margin-top:10px}.ribbon{font-size:9px;letter-spacing:0;text-align:center}.service-grid{gap:40px}.prices{gap:15px}.prices>div+div{padding-left:15px}footer{flex-wrap:wrap;gap:25px}footer p{width:100%;order:3}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Brand-guide refinement: editorial serif accents, Arial for service information. */
h1{font-size:clamp(58px,6.4vw,92px);letter-spacing:-1.5px;line-height:1.08}
h2{letter-spacing:-.6px}
.hero{min-height:620px}
.hero-art{border:0;padding:32px 0}
.hero-art img{max-width:350px}
.hero-art p{margin-top:20px}
.button{font-weight:700}
.service-grid h3,.prices h3,.steps h3,.fleet dt{font-family:Arial,sans-serif;font-weight:400;line-height:1.25}
.service-grid h3{font-size:28px}
.prices h3{font-size:24px}
.steps h3,.fleet dt{font-size:21px}
.price{font-family:Arial,sans-serif;font-size:48px;font-weight:400;letter-spacing:-1px}
.pricing{background:var(--cream)}
.inquiry{background:var(--cream)}
.price-panel{border-top:1px solid var(--bronze)}
@media(max-width:800px){.hero{min-height:auto}.hero-art img{max-width:260px}.hero-art{padding:0}.hero-art p{margin-top:10px}}
/* Campaign layout, retaining Juniper's supplied typography and palette. */
header{position:sticky;top:0;z-index:20;background:var(--sage);padding:14px 5%;box-shadow:0 1px 0 #f1e4cd25}
header img{width:190px}nav .nav-cta{border:1px solid #f1e4cd60;border-radius:28px;padding:9px 18px}
.campaign{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;min-height:660px;overflow:hidden}
.campaign .hero-copy{padding:75px 8% 75px 12%;z-index:1}
.campaign h1{font-size:clamp(58px,5.8vw,90px);letter-spacing:-2px;line-height:1.04}
.campaign .eyebrow{font-size:10px;letter-spacing:1.6px}
.campaign .intro{font-size:19px;line-height:1.55;margin-top:26px}
.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.text-link{font-size:13px;border-bottom:1px solid #f1e4cd60;padding:6px 0}
.button{border-radius:30px;padding:15px 24px;transition:transform .18s,background .18s}
.button:hover{transform:translateY(-2px)}.campaign-photo{margin:0;position:relative;height:100%;min-height:660px}
.campaign-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:65% center}
.campaign-photo figcaption{position:absolute;bottom:18px;right:20px;background:#2a2a2ac9;color:var(--cream);padding:5px 10px;font-size:9px;border-radius:10px}
.ribbon{padding:18px 5%;background:var(--ink);color:var(--cream);font-size:9px;letter-spacing:1.5px}
.pricing{display:block;background:var(--paper);padding-top:85px}.pricing .section-heading{text-align:center;margin:0 auto 38px;max-width:650px}.pricing .section-heading>p:last-child{margin:22px auto 0}
.price-panel{background:none;border:0;padding:0;max-width:1040px;margin:auto}.price-panel>label{text-align:center}.price-panel>select{display:block;max-width:390px;margin:auto;background:var(--paper);border-radius:14px;padding:16px}
.prices{gap:24px;margin:30px 0 22px}.prices>div{padding:36px;border-radius:24px;background:#f1e4cd75}.prices>div+div{border:0;padding:36px;background:var(--sage);color:var(--cream)}
.package-label{font-size:10px;font-weight:700;letter-spacing:1.6px;margin-bottom:18px}.prices h3{font-size:38px;letter-spacing:-1px}.package-description{max-width:340px;font-size:14px;line-height:1.6;margin-top:14px;min-height:48px}.from{margin-top:28px}.price{font-size:58px;margin-bottom:25px}.prices .button{width:auto;min-width:180px;font-size:12px;padding:14px 20px}.full-package .dark{background:var(--cream);color:var(--ink)}
.price-panel>.fine,.price-reassurance{text-align:center;max-width:650px;margin:0 auto}.price-reassurance{font-size:13px;margin-top:18px}.price-reassurance a{text-decoration:underline;text-underline-offset:4px}
#services{padding-top:50px}.service-grid{gap:24px}.service-grid article{padding:30px;border-top:0;border-radius:22px;background:var(--cream)}.service-grid article.full{background:#e8ece7}.service-grid h3{font-size:27px}.inclusions{border-bottom:1px solid #6a7a6e45;margin-top:20px}.inclusions summary{font-size:13px;font-weight:700;list-style:none}.inclusions ul{margin-bottom:12px}
.process{background:var(--cream)}.steps{gap:24px}.steps>div{border-top:1px solid var(--bronze);padding-top:24px}
.fleet{margin:18px;border-radius:28px}.questions details{padding:22px 0}.inquiry{background:var(--paper)}
form{padding:32px;border-radius:24px;background:var(--cream)}.request-intro .eyebrow{margin-bottom:6px}.request-intro>p:last-child{font-size:12px}form input,form textarea,form select{border-radius:10px;background:var(--paper);padding:12px}
.floating-book{position:fixed;bottom:22px;right:24px;z-index:30;box-shadow:0 4px 24px #0002;border:1px solid #f1e4cd70;font-size:12px}footer{padding-bottom:90px}
@media(max-width:800px){header img{width:150px}header{gap:10px}nav{gap:16px}.campaign{grid-template-columns:1fr;min-height:0}.campaign .hero-copy{padding:55px 7% 45px}.campaign h1{font-size:60px}.campaign-photo{min-height:330px;height:330px}.campaign-photo img{object-position:50% 60%}.ribbon{font-size:8px;gap:15px;letter-spacing:.5px}.pricing{padding-top:60px}.prices{grid-template-columns:1fr}.prices>div,.prices>div+div{padding:28px}.package-description{min-height:0}.service-grid article{padding:26px}.fleet{margin:10px;border-radius:22px}.floating-book{right:16px;bottom:16px}.inquiry form{padding:24px}.hero-actions{gap:20px}}@media(prefers-reduced-motion:reduce){.button{transition:none}.button:hover{transform:none}}
html{scroll-padding-top:110px}
.wizard-step{border:0;padding:0;margin:8px 0;min-width:0}.wizard-step[hidden],[hidden]{display:none!important}.wizard-step legend{font:34px/1.15 'Times New Roman',serif;letter-spacing:-.5px;padding:0;margin-bottom:14px}.wizard-step>p{font-size:13px;margin-bottom:24px;color:#565950}.wizard-step label{display:block;margin-top:18px}.wizard-top{display:flex;justify-content:space-between;align-items:center;gap:12px}.wizard-top .eyebrow{margin:0;font-size:9px}.wizard-top #step-count{font-size:12px;color:#565950}.progress-track{height:3px;background:#6a7a6e30;margin:0 0 18px}#step-progress{height:100%;background:var(--sage);transition:width .2s}.wizard-actions{display:flex;justify-content:space-between;gap:14px;margin-top:24px}.wizard-actions .button{font-size:12px;gap:10px}#wizard-error{font-size:12px;color:#873c2f}.seat-options{display:grid;gap:10px}.seat-options label{margin:0;position:relative}.seat-options input{position:absolute;opacity:0;width:1px;height:1px}.seat-options span{display:block;border:1px solid #6a7a6e65;padding:16px;border-radius:12px;background:var(--paper);font-size:15px}.seat-options input:checked+span{background:var(--sage);color:var(--cream);border-color:var(--sage)}.seat-options input:focus-visible+span{outline:3px solid var(--bronze);outline-offset:3px}#request-review{margin:0}#request-review dt{font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-top:14px;color:#565950}#request-review dd{margin:3px 0 0;font-size:14px;overflow-wrap:anywhere}@media(max-width:500px){.wizard-step legend{font-size:30px}.wizard-actions .button{padding:13px 17px}}
.booking-open{overflow:hidden}.booking-launch{align-self:center;background:var(--cream);padding:36px;border-radius:24px}.booking-launch>p{font:30px 'Times New Roman',serif;margin-bottom:22px}#booking-dialog{border:0;border-radius:24px;padding:0;width:min(580px,calc(100% - 32px));max-height:calc(100dvh - 40px);overflow:auto;background:var(--cream);color:var(--ink);box-shadow:0 24px 80px #0003}#booking-dialog::backdrop{background:#20272099;backdrop-filter:blur(5px)}#booking-dialog form{padding:48px 36px 32px;border-radius:0;gap:15px}.dialog-close{position:absolute;top:12px;right:14px;width:32px;height:32px;border:0;border-radius:50%;background:#6a7a6e20;color:var(--ink);font-size:24px;cursor:pointer}.dialog-close:hover{background:#6a7a6e40}#booking-dialog .wizard-step{margin-top:20px}#booking-dialog legend:focus{outline:none}@media(max-width:500px){#booking-dialog form{padding:48px 24px 26px}#booking-dialog{max-height:calc(100dvh - 24px)}}
#vehicle-price-preview{padding:20px;margin:20px 0;border-radius:14px;background:var(--sage);color:var(--cream);font-size:19px;line-height:1.6}
.wizard-step>.intake-personality{font:23px/1.4 'Times New Roman',serif;color:var(--ink);margin-bottom:18px}

.spam-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#photo-preview{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}#photo-preview img{width:100px;height:100px;object-fit:cover;border-radius:10px}#booking-verification{margin:18px 0}button:disabled{opacity:.55;cursor:wait}
