:root{--paper:#f2eee6;--paper-2:#e9e3d7;--ink:#17150f;--ink-2:#3b372e;--muted:#6b655a;--line:#d3cab8;--accent:#c4481a;--accent-ink:#a33a10;--pine:#1d3529;--pine-2:#2a4a3a;--font:"Archivo", system-ui, sans-serif;--wrap:1240px;--gutter:clamp(16px, 4vw, 40px);--radius:4px;--header-h:72px;--ease:cubic-bezier(.2, .7, .2, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-variation-settings:"wdth" 100;-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;line-height:1.55;overflow-x:hidden}body.menu-open{overflow:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3,p,figure,dl,dd,ol,ul{margin:0}ol,ul{padding:0;list-style:none}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--accent);color:var(--paper)}.wrap{width:100%;max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.skip{z-index:100;background:var(--ink);color:var(--paper);padding:10px 14px;position:absolute;top:-60px;left:16px}.skip:focus{top:12px}.display{font-variation-settings:"wdth" 68;letter-spacing:-.015em;text-wrap:balance;font-size:clamp(3rem,8.4vw,7.5rem);font-weight:760;font-stretch:68%;line-height:.92}.display--md{font-size:clamp(2.25rem,5vw,4.25rem);line-height:.95}.display--sm{font-size:clamp(1.75rem,3vw,2.5rem)}.eyebrow,.label{font-variation-settings:"wdth" 120;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);align-items:center;gap:8px;margin-bottom:18px;font-size:.75rem;font-weight:600;font-stretch:120%;display:inline-flex}.muted{color:var(--muted)}.btn{border-radius:var(--radius);min-height:52px;transition:background .2s, color .2s, border-color .2s, transform .2s var(--ease);border:1.5px solid #0000;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:active{transform:translateY(1px)}.btn--solid{background:var(--ink);color:var(--paper)}.btn--solid:hover{background:var(--ink-2)}.btn--accent{background:var(--accent);color:#fff}.btn--accent:hover{background:var(--accent-ink)}.btn--ghost{border-color:var(--ink);color:var(--ink)}.btn--ghost:hover{background:var(--ink);color:var(--paper)}.btn--light{background:var(--paper);color:var(--ink)}.btn--light:hover{background:#fff}.arrow-link{border-bottom:1.5px solid;align-items:center;gap:8px;width:fit-content;padding-bottom:2px;font-weight:600;text-decoration:none;display:inline-flex}.arrow-link svg{transition:transform .25s var(--ease)}.arrow-link:hover{color:var(--accent-ink)}.arrow-link:hover svg{transform:translate(4px)}.services__aside .arrow-link,.coverage__intro .arrow-link{margin-top:28px}.services__aside .arrow-link:after,.coverage__intro .arrow-link:after{content:"→"}.js .reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:translateY(18px)}.js .reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js .reveal{opacity:1;transition:none;transform:none}html{scroll-behavior:auto}}.site-header{z-index:50;background:var(--paper);border-bottom:1px solid #0000;transition:border-color .2s;position:sticky;top:0}.site-header.is-scrolled{border-color:var(--line)}.site-header__bar{height:var(--header-h);align-items:center;gap:32px;display:flex}.site-header__logo{margin-right:auto;text-decoration:none}.logo{color:var(--ink);align-items:center;gap:12px;display:inline-flex}.logo__mark{display:flex}.logo__text{flex-direction:column;line-height:1;display:flex}.logo__name{font-variation-settings:"wdth" 72;letter-spacing:-.01em;font-size:1.45rem;font-weight:800;font-stretch:72%}.logo__place{font-variation-settings:"wdth" 120;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-top:4px;font-size:.66rem;font-weight:600;font-stretch:120%}.site-nav ul{gap:28px;display:flex}.site-nav a{padding:6px 0;font-weight:500;text-decoration:none;position:relative}.site-nav a:after{content:"";transform-origin:0;height:1.5px;transition:transform .3s var(--ease);background:currentColor;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.site-nav a:hover:after,.site-nav a[aria-current=page]:after{transform:scaleX(1)}.site-header__phone{font-variation-settings:"wdth" 72;flex-direction:column;align-items:flex-end;font-size:1.5rem;font-weight:760;font-stretch:72%;line-height:1;text-decoration:none;display:flex}.site-header__phone .eyebrow{color:var(--accent-ink);margin:0 0 4px;font-size:.62rem}.site-header__phone:hover{color:var(--accent-ink)}.site-header__toggle{background:0 0;border:0;margin-right:-8px;padding:8px;display:none}@media (width<=920px){.site-header__phone{display:none}.site-header__toggle{display:flex}.site-nav{inset:var(--header-h) 0 0;background:var(--paper);padding:24px var(--gutter);visibility:hidden;opacity:0;transition:opacity .25s, transform .25s var(--ease), visibility .25s;position:fixed;transform:translateY(-8px)}.is-open .site-nav{visibility:visible;opacity:1;transform:none}.site-nav ul{flex-direction:column;gap:0}.site-nav li{border-bottom:1px solid var(--line)}.site-nav a{font-variation-settings:"wdth" 70;padding:18px 0;font-size:2.25rem;font-weight:760;font-stretch:70%;line-height:1;display:block}.site-nav a:after{display:none}.site-nav a[aria-current=page]{color:var(--accent-ink)}}.hero{padding-top:clamp(24px,5vw,56px)}.hero__grid{grid-template-columns:1fr;gap:32px;display:grid}.hero__eyebrow{color:var(--ink)}.dot{background:#2f9e5b;border-radius:50%;width:8px;height:8px;animation:2.4s infinite pulse;box-shadow:0 0 #2f9e5b80}@keyframes pulse{70%{box-shadow:0 0 0 8px #2f9e5b00}to{box-shadow:0 0 #2f9e5b00}}.hero__title{font-size:clamp(3.4rem,12vw,8.25rem);line-height:.86}.hero__title-soft{color:var(--accent);display:block}.hero__lead{max-width:34ch;color:var(--ink-2);margin-top:28px;font-size:clamp(1.1rem,1.6vw,1.3rem)}.hero__actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero__media{aspect-ratio:4/5;border-radius:var(--radius);background:var(--paper-2);position:relative;overflow:hidden}.hero__media img{object-fit:cover;object-position:50% 60%;width:100%;height:100%}@media (width>=900px){.hero__grid{grid-template-columns:minmax(0,7fr) minmax(0,4.4fr);align-items:end;gap:56px}.hero__media{aspect-ratio:3/4}}.facts{border-top:1.5px solid var(--ink);grid-template-columns:repeat(2,1fr);margin-top:clamp(40px,6vw,72px);display:grid}.facts>div{border-bottom:1px solid var(--line);padding:20px 16px 22px 0}.facts>div:nth-child(odd){border-right:1px solid var(--line)}.facts>div:nth-child(2n){padding-left:16px}.facts dt{font-variation-settings:"wdth" 68;font-size:clamp(2.5rem,5vw,3.75rem);font-weight:760;font-stretch:68%;line-height:1}.facts dd{color:var(--muted);margin-top:6px;font-size:.92rem}@media (width>=760px){.facts{grid-template-columns:repeat(4,1fr)}.facts>div,.facts>div:nth-child(2n){border-right:1px solid var(--line);border-bottom:0;padding:24px 20px 26px}.facts>div:first-child{padding-left:0}.facts>div:last-child{border-right:0}}.facts--plain{margin-top:0}.section{padding-block:clamp(72px,10vw,136px)}.section--tight{padding-block:clamp(24px,4vw,48px)}.services__grid{gap:40px;display:grid}@media (width>=900px){.services__grid{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px}.services__aside{top:calc(var(--header-h) + 32px);align-self:start;position:sticky}.services__list--wide{grid-column:1/-1}}.services__aside .muted{max-width:38ch;margin-top:20px}.services__list{border-top:1.5px solid var(--ink)}.service{border-bottom:1px solid var(--line);grid-template-columns:44px 1fr;gap:4px 16px;padding:28px 0;transition:background .3s;display:grid}.service__num{font-variation-settings:"wdth" 120;color:var(--accent-ink);padding-top:8px;font-size:.8rem;font-weight:600;font-stretch:120%}.service__title{font-variation-settings:"wdth" 72;letter-spacing:-.01em;margin-bottom:10px;font-size:clamp(1.75rem,3vw,2.4rem);font-weight:740;font-stretch:72%;line-height:1}.service__body p{color:var(--ink-2);max-width:52ch}.service .arrow-link{grid-column:2;margin-top:16px;font-size:.95rem}.tags{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.tags li{border:1px solid var(--line);color:var(--ink-2);border-radius:99px;padding:5px 12px;font-size:.85rem}@media (width>=760px){.service{grid-template-columns:64px 1fr auto;align-items:start}.service .arrow-link{grid-area:1/3;margin-top:10px}.services__list--wide .service{grid-template-columns:80px minmax(0,1fr) auto;padding:40px 0}.services__list--wide .service__title{font-size:clamp(2rem,4vw,3.25rem)}}@media (hover:hover){.service:hover .service__title{color:var(--accent-ink)}}.gallery{background:var(--ink);color:var(--paper)}.gallery .eyebrow{color:#a59e90}.gallery__head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px;display:flex}.gallery__toggle{background:0 0;border:1.5px solid #5a554a;border-radius:99px;align-items:center;gap:10px;height:44px;padding:0 18px;font-size:.9rem;font-weight:600;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.gallery__toggle:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.marquee{overflow:hidden}.gallery__track{width:max-content;animation:marquee var(--marquee-duration,70s) linear infinite;display:flex}.marquee:hover .gallery__track,.marquee:focus-within .gallery__track,.marquee.is-paused .gallery__track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}.gallery__track li{flex:none;width:min(72vw,340px);margin-right:16px}.gallery__track li.is-wide{width:min(86vw,600px)}@media (prefers-reduced-motion:reduce){.marquee{overflow-x:auto}.gallery__track [aria-hidden=true],.gallery__toggle{display:none}}.gallery__track img{object-fit:cover;border-radius:var(--radius);width:100%;height:clamp(380px,56vw,520px)}.coverage__grid{gap:48px;display:grid}.coverage__intro .muted{max-width:40ch;margin-top:20px}@media (width>=900px){.coverage__grid{grid-template-columns:minmax(0,5fr) minmax(0,3fr) minmax(0,4fr);gap:56px}}.line{align-self:start;padding-left:4px;position:relative}.line:before{content:"";background:var(--accent);border-radius:2px;width:4px;position:absolute;top:14px;bottom:14px;left:11px}.line li{flex-wrap:wrap;align-items:center;gap:4px 18px;min-height:56px;display:flex;position:relative}.line__stop{z-index:1;background:var(--paper);border:4px solid var(--accent);border-radius:50%;flex:none;width:18px;height:18px;position:relative}.line__name{font-variation-settings:"wdth" 80;font-size:1.3rem;font-weight:700;font-stretch:80%}.line .is-hub .line__stop{background:var(--ink);border-color:var(--ink);width:26px;height:26px;box-shadow:0 0 0 4px var(--paper), 0 0 0 6px var(--ink);margin-left:-4px}.line .is-hub .line__name{font-variation-settings:"wdth" 70;font-size:1.9rem;font-weight:800;font-stretch:70%}.line .arrow-link{margin-left:auto;font-size:.85rem}.towns{border-top:1.5px solid var(--ink)}.towns li{border-bottom:1px solid var(--line);padding:12px 0;font-weight:500}.towns--detailed .arrow-link{border:0;justify-content:space-between;width:100%;padding:0;display:flex}.coverage__others .label{color:var(--ink)}.reasons{background:var(--paper-2)}.reasons__grid{gap:40px;display:grid}.reasons__media img{aspect-ratio:4/5;object-fit:cover;border-radius:var(--radius);width:100%}@media (width>=900px){.reasons__grid{grid-template-columns:minmax(0,4fr) minmax(0,6fr);align-items:center;gap:72px}}.reasons__list{gap:0 40px;margin-top:40px;display:grid}.reasons__list>div{border-top:1px solid var(--line);padding:20px 0}.reasons__list dt{margin-bottom:4px;font-size:1.1rem;font-weight:700}.reasons__list dd{color:var(--ink-2)}@media (width>=640px){.reasons__list{grid-template-columns:1fr 1fr}}.faq__grid{gap:40px;display:grid}@media (width>=900px){.faq__grid{grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px}}.faq__list{border-top:1.5px solid var(--ink)}.faq details{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary h3{font-size:1.15rem;font-weight:600}.faq summary svg{transition:transform .3s var(--ease);flex:none}.faq details[open] summary svg{transform:rotate(45deg)}.faq summary:hover h3{color:var(--accent-ink)}.faq details p{max-width:60ch;color:var(--ink-2);padding-bottom:24px}.cta{background:var(--pine);color:var(--paper);padding-block:clamp(72px,10vw,128px)}.cta__grid{align-items:end;gap:40px;display:grid}.cta__title{font-size:clamp(3rem,9vw,8rem)}.cta__side p{color:#c4cfc6;max-width:34ch}.cta__phone{font-variation-settings:"wdth" 68;color:#fff;margin:18px 0 24px;font-size:clamp(2.5rem,5vw,3.6rem);font-weight:760;font-stretch:68%;line-height:1;text-decoration:none;display:block}.cta__phone:hover{color:#f6b08f}@media (width>=900px){.cta__grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:64px}}.page-intro{border-bottom:1px solid var(--line);padding-top:clamp(48px,9vw,120px);padding-bottom:clamp(32px,5vw,64px)}.page-intro .display{max-width:14ch}.page-intro__lead{max-width:58ch;color:var(--ink-2);margin-top:28px;font-size:clamp(1.1rem,1.5vw,1.25rem)}.page-intro__lead p a{color:var(--accent-ink)}.page-intro__actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.about-photos{padding-top:clamp(32px,5vw,64px)}.about-photos__grid{gap:16px;display:grid}.about-photos img{object-fit:cover;border-radius:var(--radius);width:100%;height:100%;max-height:620px}@media (width>=760px){.about-photos__grid{grid-template-columns:1.7fr 1fr}}.personal__grid{gap:32px;display:grid}@media (width>=900px){.personal__grid{grid-template-columns:1fr 1fr;gap:64px}}.personal__lead{color:var(--ink-2);font-size:1.2rem}.checklist{border-top:1.5px solid var(--ink);margin-top:24px}.checklist li{border-bottom:1px solid var(--line);gap:14px;padding:14px 0;font-weight:500;display:flex}.checklist li:before{content:"";background:var(--accent);flex:none;width:10px;height:10px;margin-top:8px}.contact__grid{gap:16px;display:grid}@media (width>=760px){.contact__grid{grid-template-columns:1fr 1fr}}.channel{border:1.5px solid var(--ink);border-radius:var(--radius);gap:6px;padding:clamp(24px,4vw,40px);text-decoration:none;transition:background .25s,color .25s;display:grid}.channel svg{margin-bottom:20px}.channel:hover{background:var(--ink);color:var(--paper)}.channel--wa{background:var(--accent);border-color:var(--accent);color:#fff}.channel--wa:hover{background:var(--accent-ink);border-color:var(--accent-ink);color:#fff}.channel__label{font-variation-settings:"wdth" 120;text-transform:uppercase;letter-spacing:.1em;opacity:.8;font-size:.75rem;font-weight:600;font-stretch:120%}.channel__value{font-variation-settings:"wdth" 68;font-size:clamp(2.25rem,4.5vw,3.5rem);font-weight:760;font-stretch:68%;line-height:1}.channel__hint{opacity:.85}.contact__details{gap:48px;display:grid}@media (width>=900px){.contact__details{grid-template-columns:1fr 1fr;gap:64px}}.contact__details .label{color:var(--ink)}.quick{border-top:1.5px solid var(--ink)}.quick a{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:16px 0;font-weight:600;text-decoration:none;display:flex}.quick a svg{transition:transform .25s var(--ease)}.quick a:hover{color:var(--accent-ink)}.quick a:hover svg{transform:translate(4px)}.info{border-top:1.5px solid var(--ink);align-self:start}.info>div{border-bottom:1px solid var(--line);grid-template-columns:140px 1fr;gap:16px;padding:16px 0;display:grid}.info dt{color:var(--muted)}.info dd{overflow-wrap:anywhere;font-weight:500}.site-footer{background:var(--ink);color:#c9c2b4;padding-top:72px}.site-footer .logo{color:var(--paper)}.site-footer .logo__mark svg rect:first-child{fill:var(--paper)}.site-footer .logo__mark svg path{fill:var(--ink)}.site-footer__grid{gap:40px;display:grid}.site-footer__brand p{max-width:34ch;margin-top:20px}.site-footer__info{gap:16px;display:grid}.site-footer__info dt{font-variation-settings:"wdth" 120;text-transform:uppercase;letter-spacing:.1em;color:#8a8376;margin-bottom:2px;font-size:.72rem;font-weight:600;font-stretch:120%}.site-footer__info dd{color:var(--paper);overflow-wrap:anywhere}.site-footer a{text-decoration:none}.site-footer a:hover{color:var(--accent)}.site-footer__nav{gap:10px;display:grid}.site-footer__nav a{color:var(--paper)}.site-footer__legal{color:#8a8376;border-top:1px solid #34302a;margin-top:64px;padding-block:24px;font-size:.85rem}@media (width>=900px){.site-footer__grid{grid-template-columns:1.3fr 1.3fr .6fr;gap:64px}}.mobile-bar{display:none}@media (width<=759px){body{padding-bottom:72px}.mobile-bar{z-index:40;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);grid-template-columns:1fr 1.4fr;gap:8px;display:grid;position:fixed;inset:auto 0 0}.mobile-bar a{border-radius:var(--radius);justify-content:center;align-items:center;gap:8px;min-height:52px;font-weight:600;text-decoration:none;display:flex}.mobile-bar__call{border:1.5px solid var(--ink)}.mobile-bar__wa{background:var(--accent);color:#fff}}@media (width>=900px){.coverage__grid--detailed{grid-template-columns:minmax(0,3fr) minmax(0,5fr) minmax(0,4fr)}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes fade{0%{opacity:0}}@keyframes unveil{0%{opacity:0;transform:scale(1.06)}}.js main{animation:fade .45s var(--ease) both}.js .hero__copy>*,.js .page-intro .wrap>*{animation:rise .8s var(--ease) both}.js .hero__copy>:nth-child(2),.js .page-intro .wrap>:nth-child(2){animation-delay:80ms}.js .hero__copy>:nth-child(3),.js .page-intro .wrap>:nth-child(3){animation-delay:.18s}.js .hero__copy>:nth-child(4){animation-delay:.28s}.js .hero__media{animation:fade .6s .1s var(--ease) both}.js .hero__media img{animation:unveil 1.4s .1s var(--ease) both}.js .facts>div{animation:rise .7s var(--ease) both}.js .facts>div:first-child{animation-delay:.35s}.js .facts>div:nth-child(2){animation-delay:.42s}.js .facts>div:nth-child(3){animation-delay:.49s}.js .facts>div:nth-child(4){animation-delay:.56s}.gallery__frame,.reasons__media,.about-photos figure{border-radius:var(--radius);overflow:hidden}.gallery__track img,.reasons__media img,.about-photos img{transition:transform .9s var(--ease)}@media (hover:hover){.gallery__frame:hover img,.reasons__media:hover img,.about-photos figure:hover img{transform:scale(1.04)}.btn:hover{transform:translateY(-2px)}.channel:hover svg{transform:translate(4px)}}.channel svg{transition:transform .3s var(--ease)}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}}.gallery__frame{display:block}
