/* City Tail Adventures — editorial site system */
:root{--paper:#EFE9E4;--forest:#1E332C;--clay:#9C5A3C;--sand:#C1A789;--mist:#B7C1BC;--eucalyptus:#556F5A;--ink:#1A1A1A;--muted:#58615b;--line:#cfc7bd;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--forest);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}p,h1,h2,h3,blockquote{margin:0}p+p{margin-top:18px}p{color:var(--muted)}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12;letter-spacing:-.035em;text-wrap:balance}h1{font-size:clamp(60px,6.2vw,100px)}h2{font-size:clamp(38px,4vw,62px)}h3{font-size:32px}em{font-weight:400;color:var(--clay)}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--clay);outline-offset:5px}main:focus{outline:none}[hidden]{display:none!important}::selection{background:var(--sand);color:var(--forest)}.wrap{width:min(1360px,85%);margin-inline:auto}.eyebrow{display:block;font-size:10px;font-weight:600;letter-spacing:.17em;line-height:1.7;text-transform:uppercase}.lead{font-size:21px;line-height:1.55;color:var(--forest)}.small{font-size:13px}.skip{position:fixed;z-index:20;top:10px;left:15px;transform:translateY(-160%);padding:10px 20px;background:var(--forest);color:var(--paper)}.skip:focus{transform:none}.site-header{height:98px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding-inline:5%;border-bottom:1px solid var(--line)}.nav-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;line-height:0}.nav-brand .nav-dog{width:44px;height:58px;object-fit:contain}.nav-brand .nav-wordmark{width:182px;height:78px;object-fit:contain}.desktop-nav{display:flex;gap:clamp(18px,2vw,32px);align-items:center}.desktop-nav a{font-size:12px;white-space:nowrap;position:relative;padding:10px 0}.desktop-nav a:after{content:'';position:absolute;bottom:5px;left:0;right:0;height:1px;background:var(--clay);transform:scaleX(0);transform-origin:left;transition:transform .2s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}.header-cta{font-size:12px;display:flex;align-items:center;justify-content:space-between;gap:28px;border-bottom:1px solid var(--forest);padding:12px 0}.header-cta span{font-size:20px}.menu-toggle{display:none;border:0;background:transparent;color:var(--forest);padding:12px 0;align-items:center;gap:14px}.menu-label{font-size:12px}.menu-icon{display:block;width:22px;height:12px;border-block:1px solid currentColor;position:relative}.menu-toggle[aria-expanded=true] .menu-icon{border:0}.menu-toggle[aria-expanded=true] .menu-icon:before,.menu-toggle[aria-expanded=true] .menu-icon:after{content:'';position:absolute;top:5px;left:0;width:22px;height:1px;background:currentColor;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-icon:after{transform:rotate(-45deg)}.mobile-nav{padding:15px 7% 25px;border-bottom:1px solid var(--line)}.mobile-nav a{display:flex;justify-content:space-between;padding:13px 0;border-bottom:1px solid var(--line)}.mobile-nav a[aria-current]{color:var(--clay)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:17px 23px;background:var(--forest);color:var(--paper);border:1px solid var(--forest);font-size:13px;line-height:1.5;min-height:56px;transition:background .2s}.button>span{font-size:21px;line-height:1}.button:hover{background:var(--eucalyptus)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:10px 0 8px;border-bottom:1px solid var(--forest);font-size:13px;line-height:1.5}.text-link>span{font-size:20px;line-height:1}.text-link:hover{color:var(--clay);border-color:var(--clay)}
/* Home */
.home-hero{display:grid;grid-template-columns:43% 57%;max-width:1760px;margin:auto}.hero-copy{padding:62px 9% 55px 17.45%;align-self:center}.hero-copy h1{margin:29px 0 28px;font-size:clamp(76px,7.4vw,120px);line-height:1.03;letter-spacing:-.045em}.hero-copy>p{font-size:18px;line-height:1.7}.hero-copy .button{margin-top:30px}.hero-footnote{display:block;font-size:10px;color:var(--muted);margin-top:33px;letter-spacing:.02em}.hero-photo{min-height:600px}.hero-photo img{object-position:50% 55%}.home-intro{padding-block:100px;display:grid;grid-template-columns:1fr 1fr;gap:12%}.home-intro h2{margin-top:24px}.home-intro .text-link{margin-top:18px}.services{padding-block:72px 100px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-heading h2{margin-top:20px}.section-heading>p{max-width:360px;font-size:14px}.featured-service{display:grid;grid-template-columns:1.25fr 1fr;background:#e5ddd4}.feature-image{aspect-ratio:3/2;overflow:hidden}.feature-copy{padding:40px 13%;align-self:center}.feature-copy h3{font-size:clamp(32px,3vw,46px);margin:20px 0}.feature-copy p{font-size:15px}.feature-copy .text-link{margin-top:20px}.service-meta{display:block;margin-top:30px;font-size:10px;color:var(--muted)}.supporting-services{display:grid;grid-template-columns:1fr 1fr;gap:5%;margin-top:48px}.supporting-services article{display:grid;grid-template-columns:40% 1fr;gap:27px}.support-image{aspect-ratio:4/5;overflow:hidden}.support-image img{object-position:45% center}.supporting-services h3{font-size:29px;margin:14px 0}.supporting-services p{font-size:14px}.supporting-services .text-link{margin-top:12px}.supporting-services .eyebrow{font-size:9px}.home-method{background:var(--forest);color:var(--paper);padding-block:85px}.home-method>.wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:12%;align-items:center}.home-method h2{margin-top:25px;font-size:clamp(44px,4.6vw,70px)}.home-method em{color:var(--sand)}.home-method p{color:#d0d7cf}.home-method .text-link{margin-top:20px;border-color:var(--mist)}.home-method .text-link:hover{color:var(--sand)}.home-people{padding-block:100px;text-align:center}.home-people h2{margin:24px auto}.home-people p{max-width:590px;margin:auto}.home-people .text-link{margin-top:24px}
/* Pages */
.page-masthead{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;padding-block:70px 55px;align-items:end}.page-masthead h1{margin-top:25px}.page-masthead .button{margin-top:27px}.wide-photo img{height:auto;aspect-ratio:2.4;object-position:50% 57%}.wide-photo figcaption{font-size:11px;padding-block:13px;color:var(--muted)}.editorial-split{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-block:90px}.editorial-split h2{margin-top:23px}.editorial-split .text-link{margin-top:20px}.steps{padding-block:65px 80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.steps .section-heading{display:block}.steps ol{list-style:none;counter-reset:steps;padding:0;margin:45px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:6%}.steps li{counter-increment:steps}.steps li:before{content:'0'counter(steps);display:block;font:12px var(--sans);color:var(--clay);border-top:1px solid var(--line);padding-top:16px;margin-bottom:20px}.steps h3{font-size:27px;margin-bottom:15px}.steps p{font-size:14px}.faq{display:grid;grid-template-columns:1fr 1.35fr;gap:12%;padding-block:85px}.faq h2{font-size:43px;margin-top:22px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.faq summary{display:flex;justify-content:space-between;gap:30px;padding:23px 0;font-size:16px;line-height:1.5}.faq summary span{font-size:24px;line-height:1}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:14px;padding-bottom:25px;max-width:620px}.split-hero{display:grid;grid-template-columns:1fr 1.1fr;gap:9%;align-items:center;padding-block:65px}.split-hero h1{margin:25px 0;font-size:clamp(58px,5.9vw,92px)}.split-hero .lead{max-width:450px;font-size:19px}.split-hero .button{margin-top:28px}.split-hero figure{height:620px;max-height:65vw}.split-hero img{object-position:48% center}.boarding-hero{grid-template-columns:1.1fr 1fr}.boarding-hero h1{font-size:clamp(58px,5.7vw,88px)}.boarding-hero img{object-position:40% center}.coaching-topics{padding-block:65px 80px;border-block:1px solid var(--line)}.coaching-topics .section-heading{display:block}.topic-list article{display:grid;grid-template-columns:50px .9fr 1.2fr;gap:5%;padding:28px 0;border-top:1px solid var(--line);align-items:start}.topic-list article>span{font-size:12px;color:var(--clay);padding-top:8px}.topic-list h3{font-size:29px;padding-top:2px}.topic-list p{font-size:15px}.boarding-note{background:#e5ddd4;padding:50px;display:grid;grid-template-columns:1fr 1fr;gap:10%}.boarding-note h2{font-size:43px;margin-top:20px}.boarding-note .text-link{margin-top:20px}.boarding-note .small{margin-top:18px}.method-masthead{text-align:center;padding-block:75px 65px}.method-masthead h1{margin:28px 0;font-size:clamp(60px,7vw,108px)}.method-masthead p{font-size:16px}.method-statement{display:grid;grid-template-columns:1fr 1fr;align-items:stretch;background:var(--forest);color:var(--paper)}.method-statement figure{min-height:440px}.method-statement blockquote{align-self:center;padding:50px 12%}.method-statement blockquote p{font:italic 35px/1.4 var(--serif);letter-spacing:-.025em;color:var(--paper)}.method-statement cite{display:block;font:10px/1.5 var(--sans);text-transform:uppercase;letter-spacing:.14em;margin-top:27px;color:var(--mist)}.method-chapters{padding-block:25px 40px}.method-chapters article{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-block:65px;border-bottom:1px solid var(--line)}.method-chapters h2{margin-top:20px;font-size:48px}.method-chapters article>div:last-child{padding-top:8px}.about-masthead{padding-block:70px 45px}.about-masthead h1{margin:25px 0;font-size:clamp(56px,6.3vw,98px)}.about-masthead p{font-size:18px}.about-landscape img{height:auto;aspect-ratio:2.8;object-position:center 53%}.about-story{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-block:90px}.about-story h2{margin-top:24px;font-size:62px}.signature{display:block;font:italic 23px var(--serif);color:var(--clay);margin-top:28px}.about-horizon{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-block:50px 75px;border-top:1px solid var(--line);align-items:center}.about-horizon h2{font-size:43px;margin-top:20px}.closing{border-top:1px solid var(--line);padding-block:65px 75px;display:flex;align-items:center;justify-content:space-between;gap:60px}.closing h2{font-size:43px;margin-top:20px;max-width:740px}.closing p{margin-top:18px;max-width:620px;font-size:15px}.closing .button{flex-shrink:0}
/* Inquiry */
.contact{display:grid;grid-template-columns:.9fr 1.1fr;gap:12%;padding-block:70px 90px}.contact h1{font-size:clamp(60px,5.8vw,88px);margin:25px 0 28px}.contact-intro>.lead{font-size:21px;margin-bottom:20px}.contact-intro figure{margin-top:35px;aspect-ratio:3/2;max-width:420px}.contact-location{font-size:13px;margin-top:22px}.contact-location span{color:var(--muted)}.form-heading{border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:28px}.form-heading p{font-size:12px;margin-top:7px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:25px}label{display:block;font-size:13px;font-weight:500;margin-bottom:24px}label>span{font-weight:400;color:var(--muted)}input,select,textarea{display:block;width:100%;padding:12px 0 13px;margin-top:6px;border:0;border-bottom:1px solid #9d9f94;border-radius:0;background:transparent;color:var(--forest);font-size:16px;line-height:1.5}input::placeholder,textarea::placeholder{color:#71776e;font-size:14px}textarea{resize:vertical;min-height:130px}#message-label{margin-bottom:0}.field-help{font-size:12px;margin-top:9px;margin-bottom:23px}.checkbox-label{display:flex;align-items:flex-start;gap:12px;font-weight:400}.checkbox-label input{width:18px;height:18px;flex-shrink:0;margin:2px 0 0;accent-color:var(--forest)}#boarding-fields{padding:22px;background:#e5ddd4;margin:0 0 25px}#boarding-fields .field-help{margin-bottom:0}.form-delivery{border-left:2px solid var(--sand);padding-left:17px;margin:27px 0}.form-delivery strong{font-size:12px;font-weight:500}.form-delivery p{font-size:12px;margin-top:6px}.inquiry-review{border-top:1px solid var(--line);padding-top:25px;scroll-margin-top:25px}.inquiry-review:focus{outline:0}.inquiry-review h2{font-size:36px;margin-bottom:20px}.inquiry-review>p{font-size:14px}.inquiry-review pre{font:14px/1.7 var(--sans);white-space:pre-wrap;overflow-wrap:anywhere;background:#e5ddd4;padding:25px;margin:25px 0}.review-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.text-button{background:transparent;border:0;border-bottom:1px solid var(--forest);padding:8px 0;color:var(--forest);font-size:13px}.form-status{font-size:13px;margin-top:20px}
/* Footer */
.site-footer{background:#e5ddd4;padding:55px 7.5% 22px}.footer-main{max-width:1360px;margin:auto;display:grid;grid-template-columns:1fr 1.2fr 1fr .75fr;gap:6%;align-items:center;padding-bottom:45px}.footer-brand{max-width:180px}.footer-brand img{height:auto;object-fit:contain}.footer-place p{font:23px/1.4 var(--serif);color:var(--forest);margin:13px 0}.footer-place>span:last-child{font-size:10px}.footer-main nav{display:flex;flex-direction:column;gap:13px;align-self:center;font-size:13px}.footer-main nav a:hover{color:var(--clay)}.footer-bottom{border-top:1px solid #c6bcae;padding-top:20px;display:flex;justify-content:space-between;gap:25px;font-size:10px;color:var(--muted);max-width:1360px;margin:auto;align-items:start}.image-note{max-width:350px}.image-note summary{font-size:10px;display:flex;gap:15px;align-items:center;justify-content:center}.image-note p{font-size:11px;margin-top:12px}.image-note[open] summary>span{transform:rotate(45deg)}
@media(min-width:1800px){.hero-copy{padding-left:130px}.hero-photo{min-height:680px}}
@media(max-width:1150px){.site-header{gap:20px;padding-inline:4%}.nav-brand{gap:6px}.nav-brand .nav-dog{width:38px;height:52px}.nav-brand .nav-wordmark{width:158px;height:68px}.desktop-nav{gap:17px}.desktop-nav a{font-size:11px}.header-cta{gap:18px;font-size:11px}.wrap{width:88%}.hero-copy{padding-left:14%;padding-right:7%}.hero-copy h1{font-size:82px}.hero-copy>p{font-size:16px}.hero-photo{min-height:560px}.hero-copy .button{padding:16px 18px;gap:22px;font-size:12px}.supporting-services article{gap:18px;grid-template-columns:35% 1fr}.supporting-services h3{font-size:25px}.feature-copy{padding-inline:10%}.feature-copy h3{font-size:35px}.home-method>.wrap{gap:8%}.home-method h2{font-size:51px}.split-hero{gap:7%}.split-hero figure{height:550px}.split-hero h1{font-size:66px}.method-statement blockquote p{font-size:29px}.footer-main{gap:5%;grid-template-columns:1fr 1.2fr 1fr .8fr}.footer-main nav{font-size:12px}}
@media(max-width:980px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.home-hero{grid-template-columns:46% 54%}.hero-copy h1{font-size:75px}.hero-copy{padding-left:13%;padding-block:40px}.hero-photo{min-height:520px}.hero-footnote{font-size:9px}.hero-copy .eyebrow{font-size:9px}.home-intro,.editorial-split,.about-story{gap:8%}.supporting-services{gap:5%}.supporting-services article{display:block}.support-image{display:block;aspect-ratio:3/2;margin-bottom:20px}.supporting-services .eyebrow{font-size:10px}.feature-copy{padding:30px 10%}.feature-copy .eyebrow{font-size:9px}.feature-copy h3{font-size:32px}.feature-copy p{font-size:14px}.service-meta{margin-top:22px}.home-method>.wrap{grid-template-columns:1fr;gap:35px}.home-method h2{font-size:62px}.home-method p{max-width:650px}.page-masthead{gap:8%}.page-masthead h1{font-size:64px}.page-masthead .lead{font-size:18px}.split-hero h1,.boarding-hero h1{font-size:58px}.split-hero figure{height:520px}.split-hero .button{font-size:12px;padding:15px 18px;gap:22px}.faq{gap:8%;grid-template-columns:.8fr 1.2fr}.faq h2{font-size:36px}.method-statement blockquote{padding:35px 10%}.method-statement blockquote p{font-size:27px}.method-chapters article{gap:8%}.method-chapters h2{font-size:42px}.closing{gap:35px}.closing h2{font-size:36px}.footer-main{grid-template-columns:1fr 1.2fr;gap:35px 10%}.footer-main nav{font-size:14px}.contact{gap:8%}.contact h1{font-size:60px}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:760px){body{font-size:15px}.wrap{width:86%}.site-header{height:86px;padding-inline:7%}.nav-brand{gap:7px}.nav-brand .nav-dog{width:35px;height:48px}.nav-brand .nav-wordmark{width:154px;height:66px}.eyebrow{font-size:9px}.home-hero{grid-template-columns:1fr}.hero-copy{padding:42px 7% 36px}.hero-copy h1{font-size:77px;margin:25px 0}.hero-copy>p{font-size:17px}.hero-copy .button{font-size:13px;padding:16px 23px;margin-top:25px}.hero-footnote{font-size:10px;margin-top:24px}.hero-photo{min-height:0;aspect-ratio:3/2}.hero-photo img{object-position:50% center}.home-intro{grid-template-columns:1fr;gap:30px;padding-block:60px}.home-intro h2{margin-top:20px;font-size:43px}.lead{font-size:20px}.services{padding-block:50px 60px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{font-size:43px;margin-top:20px}.section-heading>p{margin-top:22px}.featured-service{grid-template-columns:1fr}.feature-image{aspect-ratio:3/2}.feature-copy{padding:30px 8%}.feature-copy .eyebrow{font-size:9px}.feature-copy h3{font-size:36px;margin:17px 0}.feature-copy p{font-size:15px}.feature-copy .text-link{margin-top:15px}.service-meta{font-size:10px;margin-top:22px}.supporting-services{grid-template-columns:1fr;margin-top:35px;gap:35px}.supporting-services article{display:grid;grid-template-columns:35% 1fr;gap:20px}.support-image{aspect-ratio:3/4;margin:0}.supporting-services h3{font-size:26px;margin:12px 0}.supporting-services .eyebrow{font-size:8px;letter-spacing:.1em}.supporting-services p{font-size:13px}.supporting-services .text-link{font-size:12px;gap:20px}.home-method{padding-block:55px}.home-method>.wrap{gap:28px}.home-method h2{font-size:45px;letter-spacing:-.04em;margin-top:20px}.home-method p{font-size:15px}.home-people{padding-block:60px}.home-people h2{font-size:39px;margin-block:20px}.home-people p{font-size:15px}.page-masthead{grid-template-columns:1fr;gap:28px;padding-block:45px 35px}.page-masthead h1{font-size:60px;margin-top:20px}.page-masthead .lead{font-size:19px}.page-masthead .button{margin-top:22px}.wide-photo img{aspect-ratio:3/2}.wide-photo figcaption{font-size:10px;line-height:1.6}.editorial-split{grid-template-columns:1fr;gap:28px;padding-block:55px}.editorial-split h2{font-size:43px;margin-top:18px}.editorial-split .lead{font-size:20px}.steps{padding-block:45px 50px}.steps .section-heading h2{font-size:39px}.steps ol{grid-template-columns:1fr;gap:30px;margin-top:32px}.steps li:before{margin-bottom:15px}.steps h3{font-size:28px;margin-bottom:12px}.steps p{font-size:15px}.faq{grid-template-columns:1fr;gap:30px;padding-block:55px}.faq h2{font-size:39px;margin-top:18px}.faq summary{font-size:15px;padding-block:21px;gap:22px}.faq details p{font-size:14px}.split-hero,.boarding-hero{grid-template-columns:1fr;padding-block:45px 0;gap:35px}.split-hero h1,.boarding-hero h1{font-size:60px;margin-block:22px}.split-hero .lead{font-size:19px}.split-hero figure{height:auto;max-height:none;aspect-ratio:3/2}.split-hero .button{padding:17px 23px;font-size:13px}.boarding-hero>figure{order:2}.coaching-topics{padding-block:45px}.coaching-topics .section-heading h2{font-size:39px}.topic-list article{grid-template-columns:30px 1fr;gap:12px 15px;padding-block:25px}.topic-list h3{font-size:28px}.topic-list p{grid-column:2;font-size:14px}.topic-list article>span{padding-top:7px}.boarding-note{grid-template-columns:1fr;padding:30px;gap:25px}.boarding-note h2{font-size:38px}.boarding-note p{font-size:14px}.method-masthead{text-align:left;padding-block:45px 35px}.method-masthead h1{font-size:57px;margin-block:23px}.method-masthead p{font-size:15px}.method-statement{grid-template-columns:1fr}.method-statement figure{min-height:0;aspect-ratio:3/2}.method-statement blockquote{padding:35px 9% 40px}.method-statement blockquote p{font-size:29px}.method-statement cite{font-size:9px;margin-top:22px}.method-chapters{padding-block:5px 15px}.method-chapters article{grid-template-columns:1fr;gap:25px;padding-block:45px}.method-chapters h2{font-size:40px}.method-chapters article>div:last-child{padding:0}.about-masthead{padding-block:45px 30px}.about-masthead h1{font-size:52px;margin-block:22px}.about-masthead p{font-size:16px}.about-landscape img{aspect-ratio:3/2}.about-story{grid-template-columns:1fr;padding-block:55px;gap:30px}.about-story h2{font-size:49px;margin-top:20px}.signature{font-size:22px;margin-top:22px}.about-horizon{grid-template-columns:1fr;gap:25px;padding-block:40px 50px}.about-horizon h2{font-size:39px}.closing{display:block;padding-block:45px 55px}.closing h2{font-size:36px;margin-top:18px}.closing p{font-size:14px}.closing .button{margin-top:27px}.contact{grid-template-columns:1fr;gap:45px;padding-block:45px 60px}.contact h1{font-size:63px;margin:22px 0}.contact-intro>.lead{font-size:20px}.contact-intro figure{display:none}.contact-location{font-size:12px;margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.contact-form{min-width:0}.form-row{grid-template-columns:1fr 1fr;gap:20px}.form-heading{margin-bottom:25px}.form-heading p{font-size:11px}.form-delivery p{overflow-wrap:anywhere}.inquiry-review pre{padding:20px;font-size:13px}.site-footer{padding:40px 7% 25px}.footer-main{gap:35px 25px;grid-template-columns:1fr 1fr;padding-bottom:35px}.footer-brand{max-width:155px}.footer-place p{font-size:20px}.footer-place>.eyebrow{font-size:8px}.footer-place>span:last-child{font-size:8px}.footer-main nav{font-size:12px;gap:14px}.footer-bottom{flex-wrap:wrap;gap:16px 25px;font-size:9px}.footer-bottom>span:last-child{display:none}.image-note{max-width:100%;margin-left:auto}.image-note summary{font-size:9px}.image-note p{max-width:330px}}
@media(max-width:390px){.nav-brand .nav-wordmark{width:134px}.nav-brand .nav-dog{width:30px}.menu-toggle{gap:10px}.hero-copy h1{font-size:69px}.supporting-services article{grid-template-columns:1fr}.support-image{aspect-ratio:3/2}.supporting-services .eyebrow{font-size:9px}.supporting-services p{font-size:14px}.form-row{grid-template-columns:1fr;gap:0}.method-masthead h1{font-size:49px}.about-masthead h1{font-size:47px}.home-method h2{font-size:40px}.button{gap:24px}.footer-main{gap:30px 20px}.footer-place p{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Keep the coastal scene open on tablets; scale long headings on narrow phones. */
@media(min-width:761px) and (max-width:980px){.home-hero{grid-template-columns:1fr}.hero-copy{padding:48px 6% 40px}.hero-copy h1{font-size:84px}.hero-photo{min-height:0;aspect-ratio:2/1}.hero-photo img{object-position:center 58%}.hero-footnote{font-size:10px}.hero-copy>p{font-size:18px}}
@media(max-width:760px){.split-hero h1,.boarding-hero h1,.page-masthead h1{font-size:clamp(46px,15.3vw,60px)}}
/* Clear service signup paths. */
.header-cta{background:var(--forest);color:var(--paper);padding:12px 20px;border:1px solid var(--forest);gap:25px}.header-cta:hover{background:var(--eucalyptus)}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:30px}.hero-actions .button{margin-top:0}.hero-actions .text-link{font-size:12px}.hero-footnote{max-width:300px;font-size:11px;line-height:1.7;margin-top:23px}.hero-copy>p{max-width:350px}.service-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:22px}.service-actions .text-link{margin:0;font-size:12px}.service-actions .button{font-size:12px;padding:13px 18px;min-height:48px;gap:25px}#services{scroll-margin-top:25px}.signup-band{display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--forest);color:var(--paper);padding:40px 45px;margin-top:35px}.signup-band h2{font-size:37px}.signup-band p{color:var(--mist);font-size:14px;margin-top:12px}.signup-band .button{background:var(--paper);color:var(--forest);flex-shrink:0}.signup-expectations{padding-left:20px;font-size:13px;color:var(--muted);margin-block:25px}.signup-expectations li{padding-left:7px;margin-bottom:7px}.page-contact h1{font-size:clamp(54px,5vw,76px)}
@media(max-width:760px){.hero-actions{margin-top:25px;gap:20px}.hero-actions .button{margin-top:0}.hero-actions .text-link{font-size:12px}.hero-footnote{font-size:10px;margin-top:20px}.signup-band{display:block;padding:30px 8%}.signup-band h2{font-size:33px}.signup-band .button{margin-top:25px}.page-contact h1{font-size:clamp(44px,13vw,60px)}.service-actions{gap:20px}}
/* In-site booking and owner calendar */
.booking-masthead{display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:end;padding-block:60px 40px}.booking-masthead h1{font-size:clamp(58px,6vw,88px);margin-top:23px}.booking-masthead>p{font-size:17px;padding-bottom:10px}.booking-shell{padding-bottom:75px}.booking-progress{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding-block:19px;gap:15px;margin-bottom:35px}.booking-progress span{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.booking-progress [aria-current]{color:var(--forest);font-weight:700}.booking-progress .complete{color:var(--eucalyptus)}.booking-status{font-size:14px;line-height:1.6;margin-bottom:20px;min-height:0}.booking-status:empty{display:none}.is-error{color:#8d3725!important;background:#ead8ce;padding:15px 20px;border-left:3px solid var(--clay)}.booking-step-heading{margin-bottom:35px}.booking-step-heading h2,.application-grid h2,.booking-details-grid h2,.booking-review h2{font-size:43px;margin:18px 0 20px}.booking-step-heading h2:focus,.booking-success h2:focus,.application-grid h2:focus,.booking-details-grid h2:focus,.booking-review h2:focus{outline:none}.booking-step-heading p{max-width:650px;font-size:15px}.booking-services{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.booking-service{display:flex;flex-direction:column;text-align:left;background:#e5ddd4;border:1px solid var(--line);color:var(--forest);padding:30px;min-height:300px;transition:border-color .2s,background .2s}.booking-service:hover{border-color:var(--forest);background:#ded4c9}.booking-service h3{font-size:31px;margin:25px 0 18px}.booking-service p{font-size:14px;margin-bottom:30px}.service-choice{margin-top:auto;font-size:12px;border-top:1px solid #c6bcae;padding-top:18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.booking-member-note,.client-session{font-size:13px;margin-top:27px;max-width:700px}.client-session .text-button{margin-left:15px}.booking-help{display:flex;justify-content:space-between;gap:25px;margin-top:45px;padding-top:20px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.booking-help a{border-bottom:1px solid var(--line)}.booking-back{margin-bottom:30px}.application-grid,.booking-details-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.application-grid>div>p{margin-top:20px;max-width:450px}.application-grid form,.booking-details-grid form{padding-top:8px}.booking-empty{padding:40px;background:#e5ddd4}.booking-empty h3{font-size:29px;margin-bottom:17px}.booking-empty p{max-width:600px;font-size:15px}.booking-empty .text-link{margin-top:20px}.date-selection{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start;max-width:1050px}.booking-calendar{background:#e5ddd4;padding:25px 30px 20px}.month-nav{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}.month-nav h3{font-size:26px;letter-spacing:-.02em}.month-nav button{background:transparent;border:0;width:38px;height:38px;color:var(--forest);font-size:22px}.month-nav button:disabled{opacity:.3;cursor:default}.calendar-days,.calendar-dates{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:5px}.calendar-days{font-size:10px;color:var(--muted);padding-bottom:12px}.calendar-dates button{border:1px solid transparent;background:var(--paper);color:var(--forest);aspect-ratio:1;position:relative;font-size:14px}.calendar-dates button:disabled{background:transparent;opacity:.35;cursor:default}.calendar-dates button[aria-pressed=true]{background:var(--forest);color:var(--paper)}.calendar-dates button:not(:disabled):hover{border-color:var(--forest)}.date-dot{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--eucalyptus)}.calendar-dates .date-dot{position:absolute;bottom:6px;left:calc(50% - 2px)}.calendar-dates button[aria-pressed=true] .date-dot{background:var(--sand)}.calendar-key{font-size:10px;padding-top:17px;display:flex;align-items:center;gap:8px}.slot-picker{padding-top:12px}.slot-picker h3{font-size:30px;margin:17px 0}.slot-picker>p{font-size:14px}.time-slots{display:grid;gap:12px;margin-top:25px}.time-slot{display:flex;align-items:center;justify-content:space-between;gap:25px;border:1px solid var(--forest);padding:18px 22px;background:transparent;text-align:left;color:var(--forest)}.time-slot strong{font-size:15px;font-weight:500}.time-slot>span{font-size:11px;white-space:nowrap}.time-slot:hover{background:var(--forest);color:var(--paper)}.stay-form{max-width:600px}.stay-form .button{margin-top:10px}.published-nights{padding-top:35px;border-top:1px solid var(--line);margin-top:40px}.published-nights h3{font-size:27px;margin-bottom:15px}.published-nights p{font-size:13px;line-height:2}.reservation-summary{border-block:1px solid var(--line);padding:25px 0;margin:30px 0}.reservation-summary h3{font-size:28px;margin-bottom:17px}.reservation-summary p{font-size:15px}.booking-review{max-width:750px}.booking-review dl{margin:30px 0;border-top:1px solid var(--line)}.booking-review dl>div{display:grid;grid-template-columns:120px 1fr;gap:30px;padding:20px 0;border-bottom:1px solid var(--line)}.booking-review dt{font-size:12px;color:var(--muted)}.booking-review dd{margin:0;font-size:16px;overflow-wrap:anywhere;white-space:pre-wrap}.booking-review>.button{margin-top:25px}.booking-review>p{font-size:14px}.booking-success{max-width:750px;padding:30px 0}.booking-success h2{font-size:54px;margin:25px 0}.booking-success h3{font-size:29px;margin-bottom:20px}.booking-success .review-actions{margin-top:30px}.booking-success>.button{margin-top:25px}.booking-success p{font-size:16px}.booking-success .small{font-size:13px}.access-page{max-width:850px;padding-block:75px 100px}.access-page h1{font-size:70px;margin:25px 0}.access-page>p{margin-top:25px}.access-page #access-status{margin-block:30px}.access-page>.button{margin-block:0 20px}.manage{padding-block:55px 90px}.manage-heading{display:flex;justify-content:space-between;gap:35px;align-items:center;margin-bottom:30px}.manage-heading h1{font-size:65px;margin-top:20px}#manage-status{font-size:14px;margin-bottom:25px}#manage-status:empty{display:none}#owner-login{max-width:450px;padding-top:20px}#owner-login h2{font-size:37px;margin-bottom:22px}#owner-login>p{font-size:15px;margin-bottom:25px}.manage-summary{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin-bottom:30px}.manage-summary>div{padding:22px 10px 22px 0}.manage-summary strong{display:block;font:40px var(--serif)}.manage-summary span{font-size:12px;color:var(--muted)}.manage-tabs{display:flex;gap:30px;border-bottom:1px solid var(--line);margin-bottom:35px}.manage-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:12px 0;color:var(--muted);font-size:14px}.manage-tabs [aria-pressed=true]{color:var(--forest);border-bottom-color:var(--clay)}.manage-grid{display:grid;grid-template-columns:.75fr 1.3fr;gap:7%;align-items:start}.slot-form{background:#e5ddd4;padding:28px}.slot-form h2{font-size:32px;margin:18px 0 28px}.slot-form .button{font-size:12px;gap:22px}.calendar-heading{display:flex;justify-content:space-between;gap:30px;align-items:start;border-bottom:1px solid var(--line);padding-bottom:10px}.calendar-heading h2,#panel-bookings>h2,#panel-clients>h2{font-size:35px}.calendar-heading label{font-size:11px;min-width:170px;margin:0}.calendar-heading select{font-size:13px;padding:7px 0}.manage-day{padding-top:25px}.manage-day>h3{font:12px var(--sans);font-weight:600;letter-spacing:.07em;text-transform:uppercase;margin-bottom:15px}.manage-slot{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid var(--line);padding:20px 0}.manage-slot .eyebrow{font-size:9px}.manage-slot p{font-size:14px;margin:9px 0}.manage-slot .small{font-size:11px}.manage-slot form{display:grid;grid-template-columns:65px 95px;gap:8px 15px;min-width:170px;align-items:center}.manage-slot label{font-size:10px;margin:0}.manage-slot input[type=number]{font-size:14px;padding:5px 0;margin:3px 0 0}.manage-slot .checkbox-label{gap:6px;font-size:11px}.manage-slot input[type=checkbox]{width:14px;height:14px}.manage-slot .text-button{font-size:11px;justify-self:start}.manage-slot.unpublished{opacity:.65}#panel-bookings>p,#panel-clients>p{font-size:14px;margin:20px 0;max-width:750px}.manage-record{display:flex;justify-content:space-between;gap:35px;padding-block:30px;border-bottom:1px solid var(--line);align-items:start}.manage-record h3{font-size:29px;margin:13px 0}.manage-record p{font-size:14px;overflow-wrap:anywhere}.manage-record .eyebrow{font-size:9px}.manage-record>.text-button{white-space:nowrap}.client-message{white-space:pre-wrap;max-width:650px}.client-actions{display:flex;flex-direction:column;gap:15px;align-items:flex-start;flex-shrink:0;max-width:300px}.client-actions .button{font-size:12px;padding:13px 18px;gap:20px}#access-link-result{background:var(--forest);color:var(--paper);padding:30px;margin:25px 0}#access-link-result h3{font-size:29px;margin-bottom:20px}#access-link-result p{color:var(--mist);font-size:14px;max-width:750px}#access-link-result label{margin:20px 0}#access-link-result input{color:var(--paper);font-size:13px}#access-link-result .small{font-size:12px}
@media(max-width:980px){.booking-services{gap:17px}.booking-service{padding:25px 20px}.booking-service h3{font-size:26px}.date-selection{gap:6%}.booking-calendar{padding:22px}.application-grid,.booking-details-grid{gap:7%}.manage-grid{grid-template-columns:.85fr 1.15fr;gap:5%}.manage-slot{display:block}.manage-slot form{margin-top:15px;grid-template-columns:80px 100px 1fr}.calendar-heading{display:block}.calendar-heading label{margin-top:20px}.client-actions{max-width:230px}}
@media(max-width:760px){.booking-masthead{grid-template-columns:1fr;gap:22px;padding-block:40px 30px}.booking-masthead h1{font-size:59px;margin-top:20px}.booking-masthead>p{font-size:15px}.booking-shell{padding-bottom:50px}.booking-progress{padding-block:16px;gap:10px;margin-bottom:25px}.booking-progress span{font-size:9px;letter-spacing:0}.booking-step-heading{margin-bottom:25px}.booking-step-heading h2,.application-grid h2,.booking-details-grid h2,.booking-review h2{font-size:35px;margin:15px 0 20px}.booking-services{grid-template-columns:1fr;gap:18px}.booking-service{min-height:0;padding:25px}.booking-service h3{font-size:30px;margin:15px 0}.booking-service p{margin-bottom:22px}.booking-help{display:block;margin-top:30px;font-size:10px}.booking-help a{display:inline-block;margin-top:12px}.application-grid,.booking-details-grid{grid-template-columns:1fr;gap:30px}.date-selection{grid-template-columns:1fr;gap:25px}.booking-calendar{padding:22px}.month-nav h3{font-size:25px}.calendar-dates{gap:6px}.calendar-dates button{font-size:14px}.calendar-dates .date-dot{bottom:5px}.booking-empty{padding:28px}.booking-empty h3{font-size:26px}.booking-empty p{font-size:14px}.slot-picker h3{font-size:28px}.time-slot{padding:16px;gap:15px}.time-slot strong{font-size:14px}.time-slot>span{font-size:10px}.booking-review dl>div{grid-template-columns:80px 1fr;gap:20px}.booking-review dd{font-size:14px}.booking-success h2{font-size:40px}.booking-success h3{font-size:26px}.booking-success p{font-size:15px}.access-page{padding-block:45px 65px}.access-page h1{font-size:51px}.manage{padding-block:40px 60px}.manage-heading h1{font-size:49px}.manage-heading{gap:20px}.manage-summary{gap:15px}.manage-summary strong{font-size:33px}.manage-summary span{font-size:10px;line-height:1.5;display:block;margin-top:8px}.manage-tabs{gap:24px}.manage-tabs button{font-size:12px}.manage-grid{grid-template-columns:1fr;gap:35px}.slot-form{padding:25px}.slot-form h2{font-size:31px}.calendar-heading{display:block}.manage-slot{display:flex}.manage-slot form{display:grid;grid-template-columns:65px 95px;margin:0;min-width:160px}.manage-record{display:block}.manage-record>.text-button{margin-top:20px}.client-actions{max-width:none;margin-top:23px}.calendar-heading h2,#panel-bookings>h2,#panel-clients>h2{font-size:32px}.client-record h3{font-size:29px}#access-link-result{padding:25px}.booking-masthead h1{font-size:clamp(47px,15vw,59px)}}
@media(max-width:390px){.booking-progress span{font-size:8px}.booking-service{padding:24px}.month-nav h3{font-size:22px}.booking-calendar{padding:19px}.calendar-dates,.calendar-days{gap:4px}.calendar-dates button{font-size:12px}.manage-slot{display:block}.manage-slot form{margin-top:17px;grid-template-columns:65px 95px 1fr}.manage-summary{gap:10px}.manage-tabs{gap:18px}.time-slot{display:block}.time-slot>span{display:block;margin-top:8px}.booking-review dl>div{grid-template-columns:1fr;gap:8px}}
.demo-notice{padding:12px 7%;background:#d9ad77;color:#1A1A1A;font:11px/1.5 var(--sans);letter-spacing:.04em;text-align:center}
.booking-active .booking-masthead{display:none}.booking-active .booking-shell{padding-top:35px}
@media(max-width:760px){.booking-active .booking-shell{padding-top:20px}}
/* Compact, equal-weight service overview. */
.service-overview{padding-block:60px 70px}.service-overview .section-heading{margin-bottom:30px;align-items:end}.service-overview .section-heading h2{font-size:clamp(38px,3.7vw,54px);margin-top:15px}.service-overview .section-heading>p{font-size:14px}.service-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.service-options article{display:flex;flex-direction:column;min-width:0}.service-option-photo{display:block;aspect-ratio:3/2;overflow:hidden}.service-option-photo img{object-fit:cover;object-position:50% 55%}.service-option-copy{display:flex;flex-direction:column;flex:1;padding-top:22px}.service-option-copy .eyebrow{font-size:9px;letter-spacing:.13em}.service-option-copy h3{font-size:clamp(22px,2.1vw,32px);letter-spacing:-.03em;margin:13px 0 14px;text-wrap:initial}.service-option-copy p{font-size:14px;line-height:1.65;margin-bottom:22px;max-width:340px}.service-option-copy .text-link{display:flex;width:100%;margin-top:auto;padding-block:10px;border-color:var(--line)}
@media(max-width:980px){.service-options{gap:22px}.service-option-copy h3{font-size:clamp(20px,2.7vw,24px);min-height:0}.service-option-copy p{font-size:13px}.service-option-copy .text-link{font-size:12px;gap:15px}}
@media(max-width:760px){.service-overview{padding-block:40px 50px}.service-overview .section-heading{margin-bottom:27px}.service-overview .section-heading h2{font-size:40px}.service-overview .section-heading>p{margin-top:15px;font-size:13px}.service-options{grid-template-columns:1fr;gap:35px}.service-option-photo{aspect-ratio:2/1}.service-option-copy{padding-top:18px}.service-option-copy h3{font-size:29px;min-height:0;margin:12px 0}.service-option-copy p{font-size:14px;max-width:none;margin-bottom:13px}.service-option-copy .text-link{font-size:13px}}

/* Vector arrows stay consistent across mobile fonts and platforms. */
.link-arrow{display:inline-block;width:24px;height:24px;flex:0 0 24px;vertical-align:middle;overflow:visible}.header-cta .link-arrow{width:20px;height:20px;flex-basis:20px}.mobile-nav .link-arrow{width:22px;height:22px;flex-basis:22px}.time-slot .link-arrow,.booking-help .link-arrow{width:18px;height:18px;flex-basis:18px}

.application-page{padding-block:65px 90px}.application-page-heading{margin-bottom:55px}.application-page-heading h1{margin:20px 0 25px;font-size:clamp(58px,6vw,86px)}.application-page-heading>p{max-width:500px}.application-page .application-grid{padding-top:35px;border-top:1px solid var(--line)}.application-page .application-grid h2{font-size:42px;margin:18px 0 25px}.application-page .field-help{margin-top:18px}.booking-empty .button{margin-top:25px}.booking-member-note a,.hero-footnote a,.contact-intro>p a{text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){.application-page{padding-block:40px 60px}.application-page-heading{margin-bottom:35px}.application-page-heading h1{font-size:58px}.application-page .application-grid h2{font-size:34px}}
