@font-face{font-family:Oswald;src:url('/assets/oswald-bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:Archivo;src:url('/assets/archivo.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--pine:#183b31;--ink:#192b25;--paper:#f5f5ed;--white:#fff;--lime:#d9f294;--muted:#5d6860;--line:#d4d9cd;--dark-line:#62766b;--header:88px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header) + 20px)}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 Archivo,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p{margin:0}h1,h2{font-family:Oswald,'Arial Narrow',sans-serif;font-weight:700;line-height:1.12;letter-spacing:-.035em}h2{font-size:clamp(42px,5vw,68px)}h3{font-size:21px;line-height:1.3;letter-spacing:-.04em}p{max-width:65ch}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid #b24317;outline-offset:5px}.button:focus-visible{outline-color:#fff;box-shadow:0 0 0 7px var(--pine)}.wrap{width:min(1296px,calc(100% - 112px));margin-inline:auto}.section{padding-block:108px}.eyebrow,.mono{font-size:11px;letter-spacing:.095em;line-height:1.6;font-weight:400}.eyebrow{margin-bottom:24px}.eyebrow.dark{color:#496250}.icon{width:25px;height:25px;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:15px 22px;border:1px solid var(--lime);border-radius:2px;background:var(--lime);color:var(--ink);font-size:13px;line-height:1.2;text-transform:uppercase;letter-spacing:.07em;font-weight:bold;transition:background .18s,color .18s,transform .18s}.button>span{font-size:23px;line-height:.8;font-weight:400}.button:hover{background:#e9ffc2;transform:translateY(-2px)}.button-small{min-height:44px;padding:12px 17px;gap:23px;font-size:11px}.button-large{padding:24px 28px;min-width:226px;min-height:78px}.text-link{display:inline-flex;align-items:center;gap:35px;font-size:13px;border-bottom:1px solid #c7d5c4;padding-block:11px}.text-link span{font-size:24px;line-height:1}.text-link:hover{color:var(--lime)}.dark-link{border-color:var(--ink)}.dark-link:hover{color:#466034}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:var(--lime);padding:12px 20px;color:var(--ink)}.skip-link:focus{top:8px}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:28px;height:var(--header);padding:0 42px;background:var(--paper);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;white-space:nowrap;min-height:44px}.wordmark{font-size:27px;letter-spacing:-1.8px;line-height:1;font-weight:400}.wordmark strong{font-weight:700}.brand-slash{color:#517b3b;margin-left:5px;font-size:35px;font-weight:700;vertical-align:-2px}.desktop-nav{display:flex;align-items:center;gap:26px;margin-left:auto}.desktop-nav a{display:flex;align-items:center;min-height:44px;font-size:12px}.desktop-nav a:hover{color:#4b7135}.header-actions{display:flex;gap:20px;align-items:center}.menu-toggle{display:none;border:0;background:none;width:40px;height:44px;padding:8px}.menu-toggle span{display:block;height:1px;background:var(--ink);margin:7px 0;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.mobile-menu{position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 28px 36px;border-bottom:1px solid var(--line);max-height:calc(100dvh - var(--header));overflow:auto}.mobile-menu:not([hidden]){display:grid}.mobile-menu a{padding:16px 0;border-bottom:1px solid var(--line);font-size:20px}.mobile-menu a:last-child{color:#35552a}
.hero{position:relative;isolation:isolate;min-height:715px;color:var(--white);background:#0d241e;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero-photo{object-fit:cover;object-position:center 43%}.hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(9,27,25,.91) 0%,rgba(9,27,25,.72) 32%,rgba(9,27,25,.08) 78%),linear-gradient(0deg,rgba(9,27,25,.72),transparent 35%)}.hero-content{padding-top:62px;padding-bottom:83px}.hero .eyebrow{font-size:10px;display:flex;align-items:center;gap:10px;color:#edf2e6}.status-dot{width:5px;height:5px;background:var(--lime);border-radius:50%;display:inline-block}.hero h1{font-size:clamp(72px,7.1vw,106px);line-height:1.08;letter-spacing:-.035em}.hero .hl{color:var(--lime)}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:26px;gap:30px}.hero-bottom p{font-size:15px;line-height:1.7}.hero-buttons{display:flex;align-items:center;gap:30px;margin-top:25px}.hero-note{padding-left:20px;border-left:1px solid #bac8bb;max-width:230px}.hero-note .mono{display:block;font-size:11px;letter-spacing:.1em;color:var(--lime);margin-bottom:9px}.hero-note>span:last-child{font-size:15px}.hero-caption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:14px 42px;border-top:1px solid #a3b3ad66;font-size:10px;letter-spacing:.12em}.benefit-strip{background:#e8eddf;border-bottom:1px solid var(--line)}.benefit-strip>.wrap{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:24px}.benefit-strip span{display:flex;align-items:center;gap:13px;font-size:12px}.benefit-strip .icon{width:21px;height:21px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:46px}.section-heading>p{font-size:15px;max-width:380px;line-height:1.8;padding-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border:1px solid var(--line)}.service-card{padding:27px 25px 24px;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#fbfcf6}.service-card:last-child{border:0}.card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:46px}.card-top .icon{width:31px;height:31px}.card-top .mono{font-size:10px;letter-spacing:.08em}.service-card h3{font-size:25px;margin-bottom:11px;letter-spacing:-.065em}.service-card .service-lead{font-size:13px;font-weight:bold;margin-bottom:15px;line-height:1.5}.service-card>p:not(.service-lead){font-size:12px;line-height:1.8;color:#536157}.service-card .includes{font-size:10px!important;line-height:1.7!important;padding-top:21px;margin-top:auto;min-height:68px;color:#526052}.service-bottom{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:24px;padding-top:18px}.price{font-family:Oswald,sans-serif;font-size:46px;letter-spacing:-2px;line-height:1.2}.price>span{font:400 20px Archivo,sans-serif;letter-spacing:0;vertical-align:14px;margin-right:4px}.service-bottom a{font-size:11px;display:inline-flex;align-items:center;gap:16px;min-height:44px}.service-bottom a span{font-size:22px}.service-bottom a:hover{text-decoration:underline}.featured{background:var(--pine);color:var(--paper);border-color:var(--pine)}.featured .card-top{color:var(--lime)}.featured>p:not(.service-lead),.featured .includes{color:#d6dfd2!important}.featured .price{color:var(--lime)}.featured .service-bottom{border-color:#6d8677}.extras{display:grid;grid-template-columns:1fr 1.45fr;gap:70px;margin-top:48px;padding:8px 0}.extras h3{font-size:25px;margin-top:12px;font-weight:400;letter-spacing:-.045em;line-height:1.4}.extras .mono{font-size:9px;color:#59675c}.extras dl{margin:0}.extras dl>div{display:flex;justify-content:space-between;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line);gap:20px}.extras dl>div:first-child{padding-top:0}.extras dt{font-size:14px}.extras dd{font-size:14px;white-space:nowrap;margin:0}.extras small{display:block;color:#626c62;font-size:11px;margin-top:4px}.price-note{font-size:11px;line-height:1.75;color:#586357;max-width:none;border-top:1px solid var(--line);padding-top:21px;margin-top:26px}
.process{background:var(--pine);color:var(--paper)}.process .eyebrow{color:var(--lime)}.process .section-heading>p{color:#d5e0d2}.process .section-heading{margin-bottom:65px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:46px}.steps article{background:linear-gradient(#6a8273,#6a8273) no-repeat 0 0/100% 1px;padding-top:25px}.step-number{font-family:Oswald,sans-serif;color:var(--lime);font-size:52px;line-height:1.2}.steps h3{font-size:18px;letter-spacing:-.03em;margin:22px 0 13px}.steps p{color:#d2ddce;font-size:13px;line-height:1.8}.process-bottom{display:flex;align-items:center;gap:28px;margin-top:48px}.process-bottom>span{font-size:11px;color:#d2ddce}.ride-panel{position:relative;isolation:isolate;min-height:660px;color:var(--pine);display:flex;align-items:center;background:#dbeaf0;overflow:hidden}.ride-panel>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;z-index:-2}.ride-overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,transparent 40%,#e5f0efad 70%,#e5f0efcc)}.ride-copy{padding-left:55%;padding-block:88px}.ride-copy h2{font-size:clamp(50px,5.2vw,76px)}.ride-copy .hl{color:#48653b}.ride-copy>p:not(.eyebrow){font-size:15px;line-height:1.85;margin:26px 0 17px}.ride-copy .text-link{border-color:var(--pine)}.ride-copy .text-link:hover{color:#48653b}.image-index{position:absolute;bottom:23px;left:42px;font-size:10px}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-photo{position:relative;aspect-ratio:4/5;background:#ced7d3;isolation:isolate}.about-photo>img{width:100%;height:100%;object-fit:cover;object-position:51% center}.photo-label{position:absolute;left:24px;bottom:24px;background:var(--paper);color:var(--pine);padding:13px 17px;font-size:9px}.about-copy .large-copy{font-size:20px;line-height:1.55;color:var(--pine);margin:27px 0 18px}.about-copy>p:not(.eyebrow):not(.large-copy){font-size:13px;line-height:1.8;color:#59655b;margin-top:13px}.area-note{display:flex;gap:16px;border-top:1px solid var(--line);margin-top:30px;padding-top:23px}.area-note strong{font-size:13px}.area-note p{font-size:11px;color:#59655b;margin-top:5px;line-height:1.8}.faq-section{background:#e9ede4}.faq-layout{display:grid;grid-template-columns:1fr 1.45fr;gap:80px}.faq-layout>div>p:not(.eyebrow){font-size:14px;color:#536454;margin-top:25px;margin-bottom:14px}.faq-list{border-top:1px solid #b8c3b4}.faq-list details{border-bottom:1px solid #b8c3b4}.faq-list summary{padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:14px;line-height:1.5;cursor:pointer;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary>span{font-size:23px;font-weight:400;line-height:1;transition:transform .18s}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details[open] summary{padding-bottom:16px}.faq-list details>p{font-size:13px;color:#4f5f51;line-height:1.8;padding:0 30px 25px 0}.promise{text-align:center;padding-block:104px}.promise .eyebrow{margin-bottom:24px}.promise .statement{font-family:Oswald,'Arial Narrow',sans-serif;font-weight:700;font-size:clamp(44px,6vw,86px);line-height:1.06;letter-spacing:-.03em;text-transform:uppercase;max-width:none}.promise .statement .hl{color:#48653b}.promise>span{display:block;font-size:15px;color:#576455;margin-top:26px}.contact{background:#dcebc7;padding-bottom:64px}.contact-top{display:flex;justify-content:space-between;gap:24px;align-items:center}.contact-top .eyebrow{margin:0}.contact-top .mono{font-size:9px}.contact-main{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-top:40px;margin-bottom:54px}.contact h2{font-size:clamp(56px,7.8vw,108px)}.contact .hl{color:#42613f}.contact .button{background:var(--pine);border-color:var(--pine);color:var(--lime)}.contact .button:hover{background:#2c5143}.contact-details{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px;padding-top:28px;border-top:1px solid #aebfa0}.contact-details p{font-size:13px;line-height:1.8}.contact-details>div{display:flex;flex-direction:column;gap:8px;font-size:12px}.contact-details .mono{font-size:9px;color:#52654a}.footer{background:#152b24;color:#e6ebdf;padding-top:58px}.footer .brand-slash{color:var(--lime)}.footer .wordmark{font-size:27px}.footer-top{display:grid;grid-template-columns:1.3fr 1.1fr .8fr;gap:40px;padding-bottom:54px}.footer-top p:not(.footer-tagline){font-size:12px;line-height:1.9;color:#c4cebe;margin-top:19px}.footer-links{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:5px 30px}.footer-links a{font-size:12px;min-height:36px;display:flex;align-items:center}.footer a:hover{color:var(--lime)}.footer-tagline{font-family:Oswald,sans-serif;font-size:29px;line-height:1.2;color:#b6cbaa;letter-spacing:-.02em}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid #506458;padding-block:22px;font-size:9px;color:#c7d0c1}.footer-bottom>div{display:flex;gap:20px}.footer-bottom a{display:inline-flex;align-items:center;min-height:36px}
.booking-page{padding-block:60px 100px;display:grid;grid-template-columns:.9fr 1.3fr;gap:100px}.booking-heading{align-self:start;position:sticky;top:calc(var(--header) + 40px)}.back-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;margin-bottom:35px}.back-link:hover{text-decoration:underline}.booking-heading h1{font-size:clamp(70px,7.7vw,112px)}.booking-heading .hl{color:#587541}.booking-heading>p:not(.eyebrow){font-size:14px;line-height:1.85;margin-top:26px}.booking-aside{margin-top:36px}.booking-aside .mono{font-size:9px;color:#596a54}.booking-aside p{font-size:12px;line-height:2.5;margin-top:12px}.request-estimate{padding:22px 0;margin-top:27px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.request-estimate>span{display:block;font-size:11px}.request-estimate>strong{font-family:Oswald,sans-serif;display:block;font-size:35px;margin-top:5px}.request-estimate>p{font-size:11px;color:#5b6858;margin-top:8px;line-height:1.7}.form-column{padding-top:21px}.preview-notice{display:flex;flex-direction:column;gap:4px;padding:16px 19px;background:#e5ecd9;border-left:2px solid #7d945c;font-size:12px;line-height:1.7;margin-bottom:26px}.preview-notice strong{font-size:13px}.preview-notice span{color:#40513d}fieldset{border:0;padding:0;margin:0;min-width:0}form fieldset fieldset{margin-top:36px}form fieldset fieldset:first-child{margin-top:0}legend{font-size:20px;letter-spacing:-.04em;border-bottom:1px solid var(--line);width:100%;padding-bottom:16px;margin-bottom:21px}legend>span{font-family:Oswald,sans-serif;font-size:24px;color:#647e4f;margin-right:13px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:12px;margin-bottom:19px;line-height:1.6}input,select,textarea{width:100%;display:block;border:1px solid #a7b29f;border-radius:2px;padding:12px 13px;background:#fcfdf8;color:var(--ink);font-size:14px;line-height:1.4;min-height:47px;margin-top:7px}select{padding-right:27px}input::placeholder,textarea::placeholder{color:#6a7465;opacity:1}textarea{resize:vertical;min-height:106px}input:user-invalid,select:user-invalid{border-color:#a63a25}label small{font-size:10px;line-height:1.7;color:#5b6956;display:block;margin-top:6px}.checkbox-field{display:flex;align-items:center;gap:12px;margin-top:25px}.checkbox-field input{width:18px;height:18px;min-height:18px;margin:0;accent-color:var(--pine)}.checkbox-field small{margin-top:2px}.optional{color:#687660;font-size:10px;margin-left:8px}.form-footnote{font-size:11px;line-height:1.8;color:#5c6857;margin:7px 0 22px}.form-footnote a{text-decoration:underline;text-underline-offset:3px}.submit-button{width:100%;background:var(--pine);border-color:var(--pine);color:var(--lime)}.submit-button:hover{background:#2c5143}dialog{border:0;width:min(580px,calc(100% - 30px));max-height:90dvh;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #0005}dialog::backdrop{background:#071a15b3;backdrop-filter:blur(4px)}.dialog-inner{padding:40px}.dialog-inner h2{font-size:49px;margin-top:15px;margin-bottom:20px}.dialog-inner dl{font-size:12px;margin:20px 0 30px}.dialog-inner dl>div{display:grid;grid-template-columns:100px 1fr;gap:15px;padding:10px 0;border-bottom:1px solid var(--line)}.dialog-inner dt{color:#586951}.dialog-inner dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.text-page{min-height:65vh;max-width:880px}.text-page h1{font-size:clamp(62px,7vw,92px);margin-bottom:40px}.text-page .eyebrow{margin-top:10px}.prose{font-size:15px;line-height:1.9}.prose h2{font-family:Archivo,sans-serif;font-size:23px;line-height:1.4;letter-spacing:-.04em;margin:30px 0 12px}.prose p{margin-bottom:18px}.prose a:not(.button){text-decoration:underline;text-underline-offset:4px}
@media(min-width:1600px){.hero{min-height:790px}.hero-content{padding-top:78px}.hero h1{font-size:115px}.hero-bottom{margin-top:35px}}
@media(max-width:1200px){.site-header{padding-inline:28px;gap:20px}.desktop-nav{gap:17px}.desktop-nav a{font-size:11px}.wordmark{font-size:24px}.wrap{width:calc(100% - 72px)}.service-card{padding:23px 19px}.service-card h3{font-size:21px}.card-top .mono{font-size:9px}.service-bottom a{font-size:10px;gap:7px}.service-bottom .price{font-size:40px}.steps{gap:28px}.about{gap:60px}.booking-page{gap:70px}.footer-bottom{flex-wrap:wrap}.ride-copy{padding-left:54%}}
@media(max-width:1000px){:root{--header:78px}.desktop-nav{display:none}.menu-toggle{display:block}.header-actions{margin-left:auto}.hero{min-height:690px}.hero h1{font-size:80px}.hero-note{display:none}.hero-photo{object-position:58% center}.hero-shade{background:linear-gradient(90deg,#0d2623e8,#0d26237d 54%,#0d26230d),linear-gradient(0deg,#0d2623aa,transparent 55%)}.service-grid{grid-template-columns:1fr 1fr}.service-card:nth-child(2){border-right:0}.service-card:nth-child(-n+2){border-bottom:1px solid var(--line)}.card-top .mono{font-size:10px}.service-card{padding:28px}.card-top{margin-bottom:32px}.service-card h3{font-size:28px}.service-card>p:not(.service-lead){font-size:14px}.service-card .includes{font-size:11px!important;min-height:52px}.service-bottom .price{font-size:48px}.service-bottom a{font-size:12px;gap:20px}.section{padding-block:80px}.benefit-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:18px 30px}.benefit-strip span{font-size:12px}.steps{grid-template-columns:1fr 1fr;gap:40px}.steps h3{font-size:20px}.section-heading{gap:35px}.section-heading>p{font-size:13px}.about{gap:40px}.about h2{font-size:51px}.about-photo{aspect-ratio:3/5}.faq-layout{gap:40px;grid-template-columns:1fr 1.3fr}.faq-layout h2{font-size:46px}.ride-panel{min-height:580px}.ride-copy{padding-left:51%}.ride-copy h2{font-size:60px}.ride-overlay{background:linear-gradient(90deg,transparent 35%,#e5f0efad 55%,#e5f0efd9)}.contact-main{gap:25px}.contact h2{font-size:65px}.contact .button-large{min-width:180px;padding:20px;gap:20px}.contact-details{grid-template-columns:1.1fr 1fr 1fr;gap:25px}.footer-top{grid-template-columns:1.2fr 1fr;gap:40px}.footer-tagline{display:none}.booking-page{grid-template-columns:.7fr 1fr;gap:42px;padding-top:42px}.booking-heading h1{font-size:76px}.field-row{grid-template-columns:1fr;gap:0}.checkbox-field{margin-top:0}.booking-heading>p:not(.eyebrow){font-size:13px}}
@media(max-width:650px){:root{--header:72px}.wrap{width:calc(100% - 40px)}.section{padding-block:65px}.site-header{padding-inline:20px;gap:12px}.wordmark{font-size:23px;letter-spacing:-1.5px}.brand-slash{font-size:29px;margin-left:3px}.header-actions{gap:12px}.header-actions .button-small{min-height:39px;padding:11px 12px;font-size:9px;gap:11px}.header-actions .button-small>span{font-size:18px}.menu-toggle{width:27px;padding:1px}.hero{min-height:0}.hero-photo{height:430px;object-position:64% center}.hero-shade{background:linear-gradient(0deg,#0d241e 0%,#0d241e 36%,#0d241ee6 51%,#0d241e22 82%,#0d241e0d 100%)}.hero-content{padding-top:263px;padding-bottom:81px}.hero .eyebrow{font-size:8px;letter-spacing:.055em;gap:6px;margin-bottom:18px;flex-wrap:wrap}.hero h1{font-size:clamp(43px,12.4vw,78px);line-height:1.12;letter-spacing:-.025em}.hero-bottom{margin-top:24px}.hero-bottom p{font-size:13px;line-height:1.8}.hero-buttons{gap:22px;margin-top:25px;align-items:center}.hero-buttons .button{padding:14px 16px;font-size:10px;gap:22px;min-height:49px}.hero-buttons .text-link{font-size:11px;gap:14px}.hero-caption{padding-inline:20px;font-size:8px;letter-spacing:.08em}.benefit-strip>.wrap{padding-block:22px;gap:20px 14px}.benefit-strip span{font-size:9px;gap:8px}.benefit-strip .icon{width:20px;height:20px}.eyebrow{font-size:9px;margin-bottom:18px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:23px;font-size:13px;line-height:1.8}h2{font-size:46px}.service-grid{grid-template-columns:1fr}.service-card{padding:25px 27px;border-right:0;border-bottom:1px solid var(--line)}.card-top{margin-bottom:28px}.card-top .mono{font-size:10px}.service-card h3{font-size:29px}.service-card .service-lead{font-size:14px}.service-card>p:not(.service-lead){font-size:13px}.service-card .includes{min-height:0;padding-top:21px;margin-top:0;font-size:10px!important}.service-bottom{margin-top:20px;padding-top:16px}.service-bottom .price{font-size:46px}.extras{grid-template-columns:1fr;gap:25px;margin-top:36px}.extras h3{font-size:24px}.extras h3 br{display:none}.extras dl>div{padding:17px 0}.extras dt{font-size:12px}.extras dd{font-size:12px}.extras small{font-size:10px;max-width:195px}.price-note{font-size:10px;margin-top:25px;line-height:1.85}.process .section-heading{margin-bottom:39px}.steps{grid-template-columns:1fr;gap:28px}.steps article{display:grid;grid-template-columns:53px 1fr;gap:7px 24px;padding-top:24px}.step-number{grid-row:span 2;font-size:42px}.steps h3{font-size:18px;margin:3px 0 0}.steps p{font-size:12px;max-width:32ch}.process-bottom{align-items:flex-start;flex-direction:column;gap:19px;margin-top:37px}.process-bottom>span{font-size:10px}.ride-panel{display:block;min-height:0;padding-top:300px;background:#deebef}.ride-panel>img{height:390px;object-position:38% center}.ride-overlay{background:linear-gradient(0deg,#deebef 0%,#deebef 39%,#deebefe6 49%,#deebef00 67%)}.ride-copy{padding:27px 0 70px}.ride-copy h2{font-size:54px}.ride-copy>p:not(.eyebrow){font-size:14px;margin-top:22px}.ride-copy .eyebrow{font-size:8px}.image-index{font-size:8px;bottom:20px;left:20px}.about{display:flex;flex-direction:column;gap:40px}.about-photo{aspect-ratio:6/5;width:100%}.about-photo>img{object-position:center 60%}.photo-label{left:17px;bottom:17px;padding:11px 13px;font-size:8px}.about h2{font-size:50px}.about-copy .large-copy{font-size:20px;max-width:27ch}.about-copy>p:not(.eyebrow):not(.large-copy){font-size:13px}.area-note p{font-size:11px}.faq-layout{grid-template-columns:1fr;gap:32px}.faq-layout h2{font-size:46px}.faq-layout>div>p:not(.eyebrow){font-size:13px}.faq-list summary{font-size:13px;padding:22px 0;gap:20px}.faq-list details>p{font-size:12px;padding-right:15px}.promise{padding-block:72px}.promise .statement{font-size:clamp(38px,11.5vw,58px)}.promise>span{font-size:13px}.contact-top{display:block}.contact-top .mono{display:none}.contact-top .eyebrow{font-size:8px}.contact-main{flex-direction:column;align-items:flex-start;gap:28px;margin-top:26px;margin-bottom:39px}.contact h2{font-size:clamp(39px,10.2vw,64px);line-height:1.18}.contact .button-large{min-height:56px;min-width:185px;padding:15px 20px}.contact-details{grid-template-columns:1fr;gap:21px;padding-top:25px}.contact-details>div{gap:4px;font-size:12px}.contact-details p{font-size:12px}.footer{padding-top:42px}.footer-top{grid-template-columns:1fr;gap:28px;padding-bottom:32px}.footer-top p:not(.footer-tagline){margin-top:12px;font-size:11px}.footer-links{gap:0 20px}.footer-links a{min-height:40px;font-size:11px}.footer-bottom{flex-direction:column;align-items:flex-start;gap:4px;font-size:9px;padding-top:17px;padding-bottom:24px}.footer-bottom>div{gap:25px}.footer-bottom>span:last-child{margin-top:5px}.booking-page{grid-template-columns:1fr;gap:27px;padding-block:22px 60px}.booking-heading{position:static}.back-link{margin-bottom:23px;font-size:11px}.booking-heading h1{font-size:72px}.booking-heading>p:not(.eyebrow){margin-top:19px;font-size:13px}.booking-aside{display:none}.request-estimate{padding:15px 0;margin-top:24px}.request-estimate>strong{font-size:29px}.request-estimate>p{font-size:10px}.form-column{padding-top:0}.preview-notice{font-size:11px;padding:14px 16px}.preview-notice strong{font-size:12px}.field-row{grid-template-columns:1fr 1fr;gap:14px}input,select,textarea{font-size:16px;min-width:0;padding:12px 10px}input[type=date]{width:100%;min-height:49px;font-size:13px}label{font-size:11px}.checkbox-field{margin-top:22px;gap:8px}.checkbox-field small{font-size:9px}.checkbox-field span{font-size:10px}.form-footnote{font-size:10px}.submit-button{font-size:11px;padding:18px;min-height:55px}.dialog-inner{padding:28px 23px}.dialog-inner h2{font-size:43px}.dialog-inner dl{font-size:11px}.dialog-inner dl>div{grid-template-columns:78px 1fr;gap:10px}.text-page h1{font-size:60px}.text-page .back-link{margin-bottom:20px}.prose{font-size:13px}.prose h2{font-size:21px}.text-page{padding-top:26px}}
@media(max-width:370px){.site-header{padding-inline:14px;gap:8px}.wrap{width:calc(100% - 32px)}.wordmark{font-size:21px}.header-actions{gap:8px}.header-actions .button-small{font-size:8px;padding:10px;gap:7px}.hero-buttons{gap:16px}.hero-buttons .text-link{font-size:10px;gap:8px}.hero-content{padding-top:245px}.hero-caption{padding-inline:16px}.field-row{grid-template-columns:1fr;gap:0}.checkbox-field{margin-top:0}.contact h2{font-size:37px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}.button:hover{transform:none}}
.hero-note{background:#102e26e8;border-left:2px solid var(--lime);padding:16px 20px}
.hero a:focus-visible,.featured a:focus-visible,.process a:focus-visible,.footer a:focus-visible{outline-color:var(--lime)}
.service-card>p:not(.service-lead){font-size:14px}
.service-card .includes{font-size:12px!important}
.service-card .service-lead{font-size:14px}
form label{font-size:13px}form label small{font-size:11px}form .checkbox-field span{font-size:12px}form .checkbox-field small{font-size:11px}
.footer-bottom{font-size:11px}
input,select,textarea{border-color:#78856e}
.promise .eyebrow{max-width:none}
#dialog-title:focus-visible{outline:none}
@media(min-width:1001px){.hero-shade{background:linear-gradient(90deg,#091b19d9 0%,#091b1999 40%,#091b1940 70%,#091b1900 92%),linear-gradient(0deg,#091b19a6,transparent 38%)}}
@media(min-width:651px) and (max-width:1000px){.hero-shade{background:linear-gradient(90deg,#0d2623eb 0%,#0d2623b8 83%,#0d262340),linear-gradient(0deg,#0d2623aa,transparent 55%)}}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2;opacity:0;pointer-events:none}.hero-video.is-ready{opacity:1}
@media(max-width:650px){.hero-video{height:430px;object-position:center}}

.hero-photo{object-position:center}
.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.work-card{margin:0;min-width:0}.work-photo{aspect-ratio:4/3;overflow:hidden;background:#e7ecdf;border:1px solid #b4bead}.work-photo>img{width:100%;height:100%;object-fit:cover}.work-photo-empty{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;height:100%;color:#52654b;background:linear-gradient(145deg,#edf0e7,#dce4d3)}.work-photo-empty::after{content:"";position:absolute;inset:18px;border:1px solid #bdc7b5;pointer-events:none}.work-photo-empty>svg{width:46px;height:46px}.work-photo-empty>.mono{font-size:10px;letter-spacing:.1em}.work-photo-number{position:absolute;top:31px;left:31px;font-family:Oswald,sans-serif;font-size:18px;line-height:1;color:#64785a}.work-card figcaption{display:flex;align-items:baseline;gap:13px;padding-top:20px}.work-card figcaption>.mono{font-size:10px;color:#64785a;flex-shrink:0}.work-card h3{font-family:Oswald,sans-serif;font-size:24px;line-height:1.25;letter-spacing:-.015em;font-weight:700}
@media(max-width:1000px){.work-grid{gap:16px}.work-card h3{font-size:21px}.work-card figcaption{gap:9px}.work-photo-empty>.mono{font-size:8px;letter-spacing:.06em}.work-photo-number{top:27px;left:27px}}
@media(max-width:650px){.work-grid{grid-template-columns:1fr;gap:34px}.work-photo-empty>.mono{font-size:10px;letter-spacing:.1em}.work-card figcaption{padding-top:17px;gap:13px}.work-card h3{font-size:25px}}
.hero-shade::before{content:"";position:absolute;inset:0;background:#091b1959}

/* Motion. Start states apply only while effects.js can run: effects-gate.js adds .motion, effects.js animates. */
.ln{display:block}
.motion [data-r]{opacity:0}
.motion [data-r=words],.motion [data-r=clip]{opacity:1}
.motion [data-r=clip]{clip-path:inset(100% 0 0 0)}
.motion [data-r]:focus-within{opacity:1!important}
.motion .ln{overflow:hidden;padding:0 .12em .14em;margin:0 -.12em -.14em}
.motion .ln>span{display:block;translate:0 110%}
.motion .w{display:inline-block;opacity:0}
.motion .steps article{background-size:0 1px}
.motion .ride-panel>img{scale:1.14}
.motion .hero .hl{background:linear-gradient(105deg,var(--lime) 44%,#f6ffe0 50%,var(--lime) 56%) 100% 0/250% 100% no-repeat;-webkit-background-clip:text;background-clip:text;color:transparent}
@media print{.motion [data-r],.motion .w{opacity:1!important;clip-path:none!important}.motion .ln>span{translate:none!important}}
/* Hover details for pointers that can hover. */
.text-link,.desktop-nav a,.service-card{position:relative}
@media(hover:hover){
.button>span,.text-link>span,.service-bottom a>span{transition:transform .3s cubic-bezier(.22,1,.36,1)}
.button:hover>span,.service-bottom a:hover>span,.text-link:hover>span{transform:translate(3px,-3px)}
.hero .text-link:hover>span{transform:translate(3px,3px)}
.text-link::after,.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:currentColor;scale:0 1;transform-origin:left;transition:scale .35s cubic-bezier(.22,1,.36,1)}
.desktop-nav a::after{bottom:12px}
.text-link:hover::after,.desktop-nav a:hover::after{scale:1}
.service-card::before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:3px;background:var(--pine);scale:0 1;transform-origin:left;transition:scale .45s cubic-bezier(.22,1,.36,1)}
.featured::before{background:var(--lime)}
.service-card:hover::before{scale:1}
.card-top .icon{transition:translate .35s cubic-bezier(.22,1,.36,1)}
.service-card:hover .card-top .icon{translate:0 -3px}
}
/* Page transitions between pages, where the browser supports them. The header stays in place. */
@view-transition{navigation:auto}
.site-header{view-transition-name:site-header}
::view-transition-old(root){animation:.2s ease-in both vt-out}
::view-transition-new(root){animation:.5s cubic-bezier(.22,1,.36,1) both vt-in}
@keyframes vt-out{to{opacity:0}}
@keyframes vt-in{from{opacity:0;translate:0 16px}}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
/* The request preview dialog fades and rises. FAQ answers open smoothly where supported. */
dialog{opacity:0;translate:0 18px;transition:opacity .3s,translate .45s cubic-bezier(.22,1,.36,1),overlay .45s allow-discrete,display .45s allow-discrete}
dialog[open]{opacity:1;translate:none}
@starting-style{dialog[open]{opacity:0;translate:0 18px}}
dialog::backdrop{opacity:0;transition:opacity .3s,overlay .45s allow-discrete,display .45s allow-discrete}
dialog[open]::backdrop{opacity:1}
@starting-style{dialog[open]::backdrop{opacity:0}}
:root{interpolate-size:allow-keywords}
.faq-list details::details-content{block-size:0;overflow:hidden;transition:block-size .4s cubic-bezier(.22,1,.36,1),content-visibility .4s allow-discrete}
.faq-list details[open]::details-content{block-size:auto}
/* Avoid single-word last lines in body copy. */
p{text-wrap:pretty}
/* The hero headline is only as wide as its text, so a click beside it in the site editor reaches the video. */
.hero h1{width:fit-content}

/* Booking form, manage-booking page (Klaudius booking skill, restyled for okanaganEdge) */
.bk-choices{display:grid;gap:10px}
.bk-choice,.bk-time{display:block;width:100%;border:1px solid #a7b29f;border-radius:2px;background:#fcfdf8;color:var(--ink);cursor:pointer;transition:border-color .18s,background .18s,color .18s}
.bk-choice{padding:15px 17px;text-align:left}
.bk-choice:hover,.bk-time:hover{border-color:var(--pine)}
.bk-choice[aria-pressed=true],.bk-time[aria-pressed=true]{background:var(--pine);border-color:var(--pine);color:var(--paper)}
.bk-choice:focus-visible,.bk-time:focus-visible,.bk-link:focus-visible{outline:2px solid var(--pine);outline-offset:3px}
.bk-choice-top{display:flex;justify-content:space-between;align-items:baseline;gap:14px}
.bk-choice-name{font-size:15px;font-weight:bold}
.bk-choice-price{font-family:Oswald,sans-serif;font-size:18px;white-space:nowrap}
.bk-choice-note{display:block;margin-top:5px;font-size:12px;line-height:1.6;color:#5b6956}
.bk-choice[aria-pressed=true] .bk-choice-note{color:#d5dfcc}
.bk-times{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.bk-time{min-height:47px;padding:10px 6px;text-align:center;font-size:14px;font-weight:bold}
.bk-label{display:block;font-size:12px;margin:22px 0 8px}
.bk-summary{padding:14px 17px;background:#e5ecd9;border-left:2px solid #7d945c;font-size:13px;line-height:1.7;margin-bottom:24px}
.bk-error{padding:14px 17px;background:#f6e6e1;border-left:2px solid #a63a25;color:#6b2414;font-size:13px;line-height:1.7;margin-bottom:24px}
.bk-ok{padding:14px 17px;background:#e5ecd9;border-left:2px solid #7d945c;color:#2e4a2a;font-size:13px;line-height:1.7;margin-top:22px}
.bk-ok p{margin:0}
.bk-muted{font-size:13px;line-height:1.7;color:#5b6956;margin-top:18px}
.bk-link{display:inline-flex;align-items:center;min-height:44px;padding:0;margin-bottom:14px;border:0;background:none;color:var(--ink);font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.bk-inline-link{font-weight:bold;text-decoration:underline;text-underline-offset:3px}
.bk-wide{width:100%;margin-top:26px}
.button:disabled{opacity:.45;cursor:not-allowed;transform:none}
.button-outline{background:transparent;border-color:var(--pine);color:var(--pine)}
.button-outline:hover{background:#e5ecd9}
.button-danger{background:transparent;border-color:#a63a25;color:#8f2d1b}
.button-danger:hover{background:#f6e6e1}
.bk-hp{display:none}
.bk-success h2{margin:4px 0 22px}
.bk-ref{display:inline-block;margin:4px 0 6px;padding:16px 22px;border:1px solid var(--line);background:#fcfdf8}
.bk-ref span{display:block;font-size:10px;letter-spacing:.095em;color:#586951}
.bk-ref strong{display:block;margin-top:4px;font-family:Oswald,sans-serif;font-size:32px;letter-spacing:.08em}
.bk-manage{max-width:680px;padding-block:60px 100px}
.bk-manage h1{font-size:clamp(44px,6vw,72px);margin-bottom:18px}
.bk-manage>p:not(.eyebrow):not(.bk-summary):not(.bk-muted){font-size:14px;line-height:1.85;margin-bottom:16px}
.bk-reschedule{margin-top:26px;padding:22px;border:1px solid var(--line);background:#fcfdf8}
.bk-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}
.bk-row .bk-label{margin:0}
.bk-row .bk-link{margin:0}
.bk-panel{margin-top:34px;padding-top:24px;border-top:1px solid var(--line);font-size:14px}
.bk-cancel{margin-top:4px}
/* One field at a time: each new field fades in under the last; a pick folds into a summary line. */
.bk-form fieldset+fieldset{margin-top:36px}
.bk-reveal{animation:bk-in .28s ease-out both}
@keyframes bk-in{from{opacity:0;transform:translateY(8px)}}
.bk-picked{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 17px;border:1px solid var(--line);background:#fcfdf8;font-size:14px;line-height:1.5}
.bk-picked .bk-link{margin:0}
.bk-hint{color:#8f2d1b}
.bk-deposit{background:#fff4d6;border-left-color:#c98a1a;font-size:14px}
.bk-deposit p{margin:0}.bk-deposit p+p,.bk-deposit .bk-pay{margin-top:12px}.bk-pay .submit-button{margin-top:4px}.bk-pay-note{display:block;margin-top:8px;font-size:11px;color:#5b6956}.bk-deposit .bk-muted{margin-top:12px}
@media(prefers-reduced-motion:reduce){.bk-reveal{animation:none}}
@media(max-width:650px){.bk-times{grid-template-columns:repeat(3,1fr)}.bk-manage{padding-block:30px 60px}.bk-reschedule{padding:16px}}

/* booking-date-inputs (booking skill): native date/time fields stay inside their
   container on iOS Safari. Layered, so the site's own field rules still win. */
@layer base{input:where([type="date"],[type="time"],[type="datetime-local"],[type="month"],[type="week"]){display:block;min-width:0;max-width:100%;-webkit-appearance:none;appearance:none}input::-webkit-date-and-time-value{min-width:85px;min-height:1.5em;min-height:1lh;margin:0;text-align:inherit}input::-webkit-datetime-edit{display:inline-flex}input::-webkit-datetime-edit-fields-wrapper{padding:0}input::-webkit-datetime-edit,input::-webkit-datetime-edit-year-field,input::-webkit-datetime-edit-month-field,input::-webkit-datetime-edit-day-field,input::-webkit-datetime-edit-hour-field,input::-webkit-datetime-edit-minute-field,input::-webkit-datetime-edit-second-field,input::-webkit-datetime-edit-millisecond-field,input::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}}
