
.page-hero{position:relative;overflow:hidden}.page-hero::after{content:"";position:absolute;right:-120px;bottom:-180px;width:620px;height:460px;background:url("assets/coast.webp") center/contain no-repeat;opacity:.055;filter:saturate(.55);pointer-events:none}.page-hero .container{position:relative;z-index:1}.faq-page,.notes{position:relative;overflow:hidden;background-image:linear-gradient(rgba(245,240,227,.90),rgba(245,240,227,.90)),url("assets/coast.webp");background-size:auto,720px auto;background-position:center, right bottom;background-repeat:no-repeat;}

:root{
  --ink:#213a42;
  --ink-soft:#53686e;
  --blue:#3e6977;
  --blue-deep:#294f5b;
  --cream:#f5f0e3;
  --paper:#ebe3d2;
  --line:rgba(33,58,66,.16);
  --gold:#d59a3d;
  --white:#fffdf8;
  --display:"Manrope",Arial,sans-serif;
  --serif:"Fraunces",Georgia,serif;
  --body:"Manrope",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.6 var(--body)}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit}
.container{width:min(1180px,90vw);margin:auto}
.eyebrow{font-size:10px;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:#6b7b80}
.eyebrow.light{color:#e8eee9}
.serif{font-family:var(--serif);font-weight:500}
.header{position:absolute;z-index:10;top:0;left:0;right:0;padding:24px 5%;display:flex;justify-content:space-between;align-items:center;color:#fff}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:150px;filter:brightness(0) invert(1)}
.brand-mark{width:25px;height:25px;border:1px solid rgba(255,255,255,.8);border-radius:50%;display:grid;place-items:center;font:600 8px var(--display);letter-spacing:.08em}
.nav{display:flex;align-items:center;gap:28px;font-size:10px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}
.nav a{opacity:.92}
.nav .cta{border:1px solid rgba(255,255,255,.75);padding:12px 17px}
.menu{display:none;border:0;background:none;color:#fff;width:38px}
.menu span{display:block;height:1px;background:#fff;margin:6px 0}
.hero{min-height:760px;height:92vh;position:relative;overflow:hidden;background:#476e79;color:#fff}
.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,44,50,.72) 0%,rgba(26,49,55,.43) 42%,rgba(26,49,55,.08) 76%),linear-gradient(0deg,rgba(23,44,50,.35),transparent 45%)}
.hero-inner{position:relative;z-index:2;min-height:760px;height:100%;width:min(1180px,90vw);margin:auto;display:flex;align-items:flex-end;padding:0 0 10vh}
.hero-copy{max-width:760px}
.hero h1{font:800 clamp(60px,8vw,108px)/.86 var(--display);letter-spacing:-.075em;margin:20px 0 26px}
.hero h1 em{font:500 .9em/1 var(--serif);letter-spacing:-.04em}
.hero-copy .lede{font-size:18px;line-height:1.5;max-width:630px}
.button{display:inline-flex;align-items:center;gap:24px;background:var(--gold);color:var(--ink);border:0;padding:15px 21px;font:600 10px var(--body);letter-spacing:.16em;text-transform:uppercase;margin-top:24px;cursor:pointer}
.button span{font-size:18px;line-height:0}
.hero-meta{position:absolute;z-index:2;bottom:18px;left:5%;right:5%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.84)}

.logo-strip{padding:44px 0;background:var(--paper);border-bottom:1px solid var(--line)}
.logo-strip .container{display:flex;align-items:center;justify-content:space-between;gap:30px}
.logo-strip img{width:225px}
.logo-strip p{margin:0;max-width:600px;color:var(--ink-soft);font-size:14px}

.section{padding:115px 0}
.split{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:center}
.section h2{font:800 clamp(44px,5.7vw,76px)/.94 var(--display);letter-spacing:-.07em;margin:16px 0 28px}
.section h2 em{font:500 1em/1 var(--serif);letter-spacing:-.035em}
.copy{color:var(--ink-soft);max-width:560px}
.copy p{margin:0 0 18px}
.text-link{display:inline-flex;gap:20px;margin-top:15px;font-size:10px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}

.pup-frame{position:relative;background:#e8dfca;padding:7%;overflow:hidden;max-width:500px;margin-left:auto}.small-pups{transform:scale(.70);transform-origin:center right}
.pup-frame img{width:100%;filter:saturate(.94)}
.pup-note{position:absolute;left:9%;bottom:9%;background:rgba(245,240,227,.94);padding:12px 15px;font-size:9px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}

.services{background:#dfe5df;padding:110px 0}
.services-header{display:flex;justify-content:space-between;gap:50px;align-items:flex-end;margin-bottom:55px}
.services-header p{max-width:330px;color:var(--ink-soft);font-size:14px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.service-card{padding:27px;min-height:300px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:transform .2s,background .2s}
.service-card:hover{background:rgba(255,255,255,.28);transform:translateY(-3px)}
.service-num{font-size:9px;letter-spacing:.2em;color:#6d7c7e}
.service-card h3{font:700 27px/1.05 var(--display);letter-spacing:-.05em;margin:72px 0 16px}
.service-card p{margin:0;color:#607176;font-size:13px}

.area-section{background:var(--cream);padding:120px 0}
.area-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:center}
.area-copy h2{font:800 clamp(44px,5.5vw,74px)/.95 var(--display);letter-spacing:-.07em;margin:15px 0 25px}
.area-copy h2 em{font:500 1em var(--serif)}
.area-copy>p:not(.eyebrow){color:var(--ink-soft);max-width:480px}.paw{font-size:13px;line-height:1;color:var(--gold);margin-right:2px}
.legend{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:30px;font-size:11px;color:var(--ink-soft)}
.legend span{display:flex;align-items:center;gap:8px}
.swatch{width:20px;height:8px;border-radius:10px;border:1px solid rgba(33,58,66,.28)}
.map-card{background:#d8dfd8;border:1px solid var(--line);padding:18px;box-shadow:0 12px 40px rgba(33,58,66,.08)}
.map-note{font-size:9px;color:#778589;margin:10px 3px 0;letter-spacing:.05em}

.pricing{background:var(--blue);color:#f7f0e1;padding:105px 0}.pricing-header{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end;margin-bottom:55px}.pricing h2{font:800 clamp(44px,5.4vw,72px)/.95 var(--display);letter-spacing:-.07em;margin:15px 0 0}.pricing h2 em{font:500 1em var(--serif)}.pricing-header>p{max-width:460px;color:#d4dfdd;font-size:13px;margin:0}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.2);border-left:1px solid rgba(255,255,255,.2)}.price-card{padding:30px;min-height:360px;border-right:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.2)}.price-card.featured{background:rgba(255,255,255,.06)}.price-kicker{font-size:9px;font-weight:700;letter-spacing:.18em;color:#d7b277}.price-card h3{font:800 42px/1 var(--display);letter-spacing:-.05em;margin:58px 0 5px}.price-sub{font-size:12px;color:#d4dfdd;margin:0 0 24px}.price-card ul{list-style:none;padding:0;margin:0 0 22px}.price-card li{font-size:12px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.13);color:#edf0e9}.price-card small{display:block;color:#aebfbc;font-size:10px;line-height:1.55}.pricing-foot{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-top:24px;font-size:10px;color:#b9c9c6}.pricing-foot strong{color:#f0e8d8;letter-spacing:.08em;text-transform:uppercase;font-size:9px}
.intake{padding:120px 0;background:var(--paper)}
.intake-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:9vw}
.intake h2{font:800 clamp(44px,5.6vw,76px)/.94 var(--display);letter-spacing:-.07em;margin:15px 0 24px}
.intake h2 em{font:500 1em var(--serif)}
.intake-copy p{max-width:400px;color:var(--ink-soft)}
form{display:grid;gap:22px}
.row{display:grid;grid-template-columns:1fr 1fr;gap:24px}
label{font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}
input,textarea,select{display:block;width:100%;border:0;border-bottom:1px solid rgba(33,58,66,.25);background:transparent;color:var(--ink);padding:11px 0;font:15px var(--body);outline:0}
textarea{resize:vertical;min-height:100px}
input:focus,textarea:focus,select:focus{border-bottom-color:var(--ink)}
.form-small{font-size:10px;color:#78868a;margin:0}
.success{font-size:12px;color:var(--blue);font-weight:600}

.page-hero{background:var(--blue);color:#f8f0e4;padding:165px 0 95px}
.page-hero h1{font:800 clamp(58px,8vw,106px)/.88 var(--display);letter-spacing:-.075em;margin:18px 0 0}
.page-hero h1 em{font:500 .9em var(--serif)}
.page-hero p:last-child{max-width:650px;color:#d5dfdc;margin-top:25px}

.faq-page{padding:95px 0 120px}
.faq-grid{display:grid;grid-template-columns:.55fr 1fr;gap:10vw}
.faq-list{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line);padding:22px 0}
summary{cursor:pointer;list-style:none;font:600 17px var(--display)}
summary::-webkit-details-marker{display:none}
summary:after{content:"+";float:right;font-size:21px;font-weight:400}
details[open] summary:after{content:"−"}
details p{max-width:700px;color:var(--ink-soft);font-size:14px;margin:15px 0 2px}

.notes{padding:95px 0 120px}
.note-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}
.note{background:var(--paper);border:1px solid var(--line);padding:28px;min-height:390px;display:flex;flex-direction:column}
.note .tag{font-size:9px;letter-spacing:.17em;color:#738084;text-transform:uppercase}
.note h2{font:700 29px/1.04 var(--display);letter-spacing:-.05em;margin:60px 0 15px}
.note p{color:var(--ink-soft);font-size:13px}
.note a{margin-top:auto;font-size:9px;font-weight:600;letter-spacing:.17em;text-transform:uppercase}

.footer{background:rgba(33,58,66,.96);color:#eef0e7;padding:42px 0 32px}
.footer-compact{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:30px}
.footer-logo img{width:125px;filter:brightness(0) invert(1)}
.footer-contact,.footer-social,.footer-links{display:flex;flex-wrap:wrap;gap:16px;font-size:10px;letter-spacing:.08em}
.footer-contact{color:#d5dfdc}
.footer-social a,.footer-links a{color:#eef0e7}
.footer-bottom{grid-column:1 / -1;margin-top:10px;padding-top:0;font-size:8px;color:#aebbb9;display:flex;justify-content:space-between;gap:20px;line-height:1.5}

@media(max-width:900px){
  .nav{display:none}
  .menu{display:block}
  .nav.open{display:flex;position:absolute;right:5%;top:66px;flex-direction:column;align-items:stretch;gap:16px;background:rgba(33,58,66,.98);padding:22px;width:230px}
  .hero,.hero-inner{min-height:700px}
  .hero-inner{align-items:flex-end;padding-bottom:80px}
  .split,.area-layout,.pricing-header,.intake-grid,.faq-grid{grid-template-columns:1fr;gap:55px}.pricing-grid{grid-template-columns:1fr 1fr}
  .intro .pup-frame{max-width:650px}
  .service-grid{grid-template-columns:1fr 1fr}
  .note-grid{grid-template-columns:1fr}
  .footer-compact{grid-template-columns:1fr 1fr;gap:20px}.footer-logo{grid-row:span 2}.footer-bottom{grid-column:1 / -1}
}
@media(max-width:580px){
  .container{width:90vw}
  .header{padding:18px 5%}
  .brand img{width:160px}
  .hero{height:760px;min-height:0}
  .hero-inner{min-height:760px;padding-bottom:62px}
  .hero-image{object-position:55% center}
  .hero h1{font-size:clamp(53px,15vw,77px)}
  .hero-copy .lede{font-size:16px}
  .hero-meta{left:5%;right:5%}
  .hero-meta span:last-child{display:none}
  .logo-strip .container{align-items:flex-start;flex-direction:column}
  .section,.area-section,.intake,.faq-page,.notes{padding:78px 0}
  .services{padding:78px 0}
  .services-header{display:block}
  .service-grid{grid-template-columns:1fr}
  .service-card{min-height:250px}.pricing-grid{grid-template-columns:1fr}.pricing-foot{grid-template-columns:1fr}.price-card{min-height:auto}
  .service-card h3{margin-top:52px}
  .row{grid-template-columns:1fr}
  .page-hero{padding:135px 0 70px}
  .page-hero h1{font-size:clamp(54px,15vw,78px)}
  .footer-compact{grid-template-columns:1fr;gap:14px}.footer-logo{grid-row:auto}.footer-links{padding-right:0}.footer-bottom{grid-column:auto;margin-top:6px}
  .footer-bottom{display:block}
}


.brand img{width:172px}
.hero-logo-wrap{display:inline-flex;background:rgba(245,240,227,.94);padding:12px 16px 10px;margin-bottom:22px;box-shadow:0 8px 28px rgba(23,44,50,.12)}
.hero-logo{display:block;width:270px;height:auto}
.pup-frame.small-pups{transform:none;max-width:500px}
.pup-frame.small-pups img{display:block;width:100%}
.logo-strip{display:none}
.map-card{padding:0;overflow:hidden;background:#d8dfd8}
.map-card .map-note{padding:0 16px 16px;margin:8px 0 0;background:#d8dfd8}
@media(max-width:900px){.brand img{width:160px}.hero-logo{width:235px}}
@media(max-width:580px){.brand img{width:145px}.hero-logo{width:210px}.hero-logo-wrap{padding:9px 12px;margin-bottom:18px}}


.faq-page,.notes{position:relative;overflow:hidden}
.faq-page:before,.notes:before{content:"";position:absolute;right:-8vw;bottom:-10vw;width:min(760px,58vw);height:620px;background:url("assets/coast.webp") center/contain no-repeat;opacity:.10;filter:saturate(.55) sepia(.08);pointer-events:none}
.notes:after{content:"";position:absolute;left:-8vw;top:18%;width:360px;height:280px;background:url("assets/ANlogo.webp") center/contain no-repeat;opacity:.035;filter:grayscale(1);pointer-events:none}
.faq-page .container,.notes .container{position:relative;z-index:1}
@media(max-width:700px){.faq-page:before,.notes:before{width:90vw;height:420px;right:-25vw;bottom:-5vw;opacity:.075}.notes:after{display:none}}


.header{padding:24px 5%;min-height:88px}
.brand img{width:300px;max-width:30vw}
.hero-logo{width:300px}
.hero-logo-wrap{padding:14px 18px 12px}
.hero-meta span:last-child{display:none}
.pup-frame.small-pups{transform:none;max-width:500px}
.footer-compact{grid-template-columns:auto 1fr auto auto}
.footer-contact,.footer-social,.footer-links{position:relative}
.footer-contact:before,.footer-social:before,.footer-links:before{content:'·';position:absolute;left:-19px;top:-1px;color:#d7b277;font-size:16px;line-height:1}
.footer-compact>.footer-contact:before{display:none}
.faq-page,.notes{background-image:linear-gradient(rgba(245,240,227,.84),rgba(245,240,227,.84)),url("assets/coast.webp");background-size:auto,820px auto;background-position:center,right 10%}
.faq-page:before,.notes:before{opacity:.14;width:min(860px,68vw);height:680px}
.notes:after{opacity:.05}
@media(max-width:1100px){.brand img{width:250px;max-width:27vw}.nav{gap:14px}.nav a{font-size:9px}.nav .cta{padding:12px 14px}}
@media(max-width:900px){.header{padding:18px 5%}.brand img{width:200px;max-width:40vw}.hero-logo{width:250px}.footer-compact{grid-template-columns:1fr 1fr}.footer-contact:before,.footer-social:before,.footer-links:before{display:none}}
@media(max-width:580px){.brand img{width:170px;max-width:48vw}.hero-logo{width:215px}.hero-logo-wrap{padding:10px 13px}.hero-meta{bottom:18px}.footer-compact{grid-template-columns:1fr}.footer-contact,.footer-social,.footer-links{display:flex}.footer-contact:before,.footer-social:before,.footer-links:before{display:none}.faq-page,.notes{background-size:auto,560px auto;background-position:center,right bottom}}


.hero-copy{max-width:760px}
.hero-copy .eyebrow{margin-top:0}
.brand img{width:300px;max-width:30vw}
.hero-logo-wrap,.hero-logo{display:none}
.footer-social:before{display:none}
.footer-links:before{display:none}
.footer-links{align-items:center;gap:11px;padding-right:24px}
.footer-links .footer-dot{color:#d7b277;font-size:14px;line-height:1}
@media(max-width:1100px){.brand img{width:250px;max-width:27vw}}
@media(max-width:900px){.brand img{width:200px;max-width:40vw}}
@media(max-width:580px){.brand img{width:170px;max-width:48vw}}



.area-layout{display:block}
.area-copy{max-width:760px}
.map-card{margin-top:56px;width:100%}
.intake-grid{display:block}
.intake-copy{max-width:760px}
.intake-grid form{max-width:820px;margin-top:56px}
@media(max-width:900px){.map-card{margin-top:42px}.intake-grid form{margin-top:42px}}


.intake-copy{max-width:650px}
.intake-copy p{max-width:610px}
.intake-grid form{max-width:860px;margin-top:84px}
.intake form{gap:32px}
.intake .row{gap:40px}
.area-copy{max-width:680px}
.area-copy>p:not(.eyebrow){max-width:610px}
.map-card{margin-top:84px}
.footer{padding:52px 0 42px}
.footer .container{width:min(1180px,86vw)}
.footer-compact{column-gap:38px;row-gap:20px}
.footer-links{padding-right:36px}
.footer-bottom{justify-content:flex-start;align-items:center;gap:8px;text-align:left;margin-top:18px}
.footer-bottom span{display:inline}
.footer-bottom span+span:before{content:'·';display:inline-block;margin:0 8px;color:#d7b277}
@media(max-width:900px){.intake-grid form,.map-card{margin-top:58px}.footer .container{width:88vw}}
@media(max-width:580px){.intake-grid form,.map-card{margin-top:44px}.intake form{gap:26px}.footer .container{width:88vw}.footer-bottom span{display:block}.footer-bottom span+span:before{display:none}}


.footer-bottom{padding-left:18px}
@media(max-width:580px){.footer-bottom{padding-left:0}}



.footer-bottom{padding-left:18px;display:block;word-spacing:normal;letter-spacing:normal}
.footer-bottom span+span:before{content:none}
.user-map-card{padding:0;background:transparent;border:1px solid var(--line);overflow:hidden}
.user-map-card .map-note{padding:16px 18px 18px;margin:0;background:#d8dfd8}
@media(max-width:580px){.footer-bottom{padding-left:0}}


.hp-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.trust-note{padding:28px 0 34px;background:var(--cream);border-top:1px solid var(--line)}
.trust-note p{max-width:900px;margin:0;font-size:13px;line-height:1.7;color:#5f716f}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #d79a34;outline-offset:4px}
.menu:focus-visible{outline-color:#fff}
.thanks-page{min-height:100vh;display:flex;align-items:center;padding:100px 0;background:linear-gradient(rgba(245,240,227,.9),rgba(245,240,227,.9)),url("assets/coast.webp") center/cover}
.thanks-page h1,.article-page h1{font:800 clamp(50px,7vw,94px)/.92 var(--display);letter-spacing:-.065em;margin:18px 0 28px;color:var(--ink)}
.thanks-page h1 em,.article-page h1 em{font-family:var(--serif);font-weight:500}
.thanks-page p{max-width:640px;font-size:19px;line-height:1.65;margin-bottom:32px}.thanks-brand{display:block;margin-bottom:72px}.thanks-brand img{width:300px}
.article-page{padding:180px 0 100px;background:linear-gradient(rgba(245,240,227,.9),rgba(245,240,227,.9)),url("assets/coast.webp") right 20%/760px auto no-repeat fixed}
.article-wrap{max-width:900px}.article-deck{font-size:21px;line-height:1.6;max-width:720px;color:#5f716f;margin-bottom:54px}.article-body{max-width:720px}.article-body p{font-size:17px;line-height:1.85;margin:0 0 25px}.article-body aside{margin:44px 0;padding:24px 26px;border-left:3px solid #d79a34;background:rgba(255,255,255,.4);font-size:14px;line-height:1.7}
@media(max-width:700px){.article-page{padding-top:130px;background-attachment:scroll}.user-map-card .map-note{font-size:12px;line-height:1.55}.thanks-brand img{width:220px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}


.user-map-card{
  width:min(100%, 1100px);
  margin-left:auto;
  margin-right:auto;
}
@media(max-width:900px){
  .user-map-card{width:100%;}
}


:root{--coast-wash-opacity:.042}
.section,.services,.area-section,.intake,.faq-page,.notes,.article-page,.thanks-page{position:relative;isolation:isolate;overflow:hidden}
.section>*,.services>*,.area-section>*,.intake>*,.faq-page>*,.notes>*,.article-page>*,.thanks-page>*{position:relative;z-index:1}


.section::before,.services::before,.area-section::before,.intake::before,.faq-page::before,.notes::before,.article-page::before,.thanks-page::before{
  content:"";position:absolute;z-index:0;pointer-events:none;
  width:min(760px,58vw);height:520px;right:-9vw;bottom:-120px;
  background:url("assets/coast.webp") center/contain no-repeat;
  opacity:var(--coast-wash-opacity);filter:saturate(.45) sepia(.08);
}
.services::before,.intake::before{right:auto;left:-10vw;transform:scaleX(-1)}
.pricing::before,.footer::before,.hero::before,.map-card::before,form::before{content:none!important}


.faq-page,.notes,.article-page,.thanks-page{background-image:none!important;background-color:var(--cream)}
.notes::after{content:none!important}

@media(max-width:700px){
  .section::before,.services::before,.area-section::before,.intake::before,.faq-page::before,.notes::before,.article-page::before,.thanks-page::before{width:520px;height:360px;right:-230px;bottom:-80px}
  .services::before,.intake::before{right:auto;left:-240px}
}



:root{
  --display:"Archivo",Arial,sans-serif;
  --body:"Archivo",Arial,sans-serif;
  --serif:"Newsreader",Georgia,serif;
}
html{background:var(--cream)}
body{
  position:relative;
  background-color:var(--cream);
  background-image:linear-gradient(rgba(245,240,227,.925),rgba(245,240,227,.925)),url("assets/coast.webp");
  background-size:auto,cover;
  background-position:center,center top;
  background-repeat:no-repeat;
  background-attachment:fixed;
  font-size:16px;
  line-height:1.65;
  letter-spacing:-.006em;
}

.page-hero::after,
.section::before,.services::before,.area-section::before,.intake::before,
.faq-page::before,.notes::before,.article-page::before,.thanks-page::before,
.notes::after{content:none!important;display:none!important;background:none!important}


.section,.area-section,.faq-page,.notes,.article-page,.thanks-page,.trust-note{background:rgba(245,240,227,.74)!important}
.intake{background:rgba(235,227,210,.78)!important}
.services{background:rgba(223,229,223,.82)!important}
.pricing{background:rgba(62,105,119,.97)!important}
.footer{background:rgba(33,58,66,.98)!important}


.hero h1,.section h2,.area-copy h2,.pricing h2,.intake h2,.page-hero h1,.thanks-page h1,.article-page h1{
  font-family:var(--display);
  font-weight:700;
  letter-spacing:-.055em;
}
.hero h1{line-height:.9}
.section h2,.area-copy h2,.pricing h2,.intake h2{line-height:.98}
.hero h1 em,.section h2 em,.area-copy h2 em,.pricing h2 em,.intake h2 em,.page-hero h1 em,.thanks-page h1 em,.article-page h1 em{
  font-family:var(--serif);
  font-weight:500;
  letter-spacing:-.025em;
}
.service-card h3,.note h2,.price-card h3{font-family:var(--display);font-weight:600;letter-spacing:-.035em}
summary{font-family:var(--display);font-weight:600;letter-spacing:-.015em}
.eyebrow,.nav,.button,label,.price-kicker,.service-num{letter-spacing:.14em}
.lede,.copy p,.area-copy p,.intake-copy p,.article-body p,.article-deck{letter-spacing:-.012em}

@media(max-width:700px){
  body{background-attachment:scroll;background-size:auto,auto 100vh;background-position:center,center top}
}



:root{--display:"Archivo",Arial,sans-serif;--body:"Archivo",Arial,sans-serif;--serif:"Newsreader",Georgia,serif}
body{font-weight:400;letter-spacing:-.006em}
.hero h1,.section h2,.area-copy h2,.pricing h2,.intake h2,.page-hero h1,.thanks-page h1,.article-page h1{
  font-family:var(--display);font-weight:800;letter-spacing:-.045em
}
.hero h1{line-height:.88}.section h2,.area-copy h2,.pricing h2,.intake h2{line-height:.96}
.service-card h3,.note h2,.price-card h3{font-family:var(--display);font-weight:700;letter-spacing:-.025em}
summary{font-family:var(--display);font-weight:650;letter-spacing:-.01em}
.nav,.eyebrow,.button,label,.price-kicker,.service-num,.pup-note{letter-spacing:.11em}
.pup-frame.small-pups{overflow:visible;padding-bottom:7%;margin-bottom:44px}
.pup-frame.small-pups .pup-note{position:absolute;left:7%;bottom:-34px;background:transparent;padding:0;font-size:10px;font-weight:700;white-space:nowrap}
@media(max-width:700px){.pup-frame.small-pups{margin-bottom:38px}.pup-frame.small-pups .pup-note{left:0;bottom:-30px;font-size:9px;white-space:normal}}


body{font-size:18px;line-height:1.68;background-image:linear-gradient(rgba(245,240,227,.94),rgba(245,240,227,.94)),url("assets/coast.webp")!important;background-size:auto,cover!important;background-position:center,center top!important;background-repeat:no-repeat!important;background-attachment:fixed!important}

.section,.area-section,.faq-page,.notes,.article-page,.thanks-page,.trust-note{background:transparent!important}
.intake{background:rgba(235,227,210,.84)!important}
.services{background:rgba(223,229,223,.88)!important}

.pup-frame.small-pups{overflow:hidden;padding:7%;padding-bottom:0;margin-bottom:0}
.pup-frame.small-pups img{display:block;width:100%;height:auto}
.pup-frame.small-pups .pup-note{position:static;display:block;margin:0;padding:17px 0 18px;background:transparent;font-size:11px;line-height:1.3;font-weight:700;letter-spacing:.12em;white-space:normal}

.about-copy p,.area-copy p,.pricing-header>p,.intake-intro p,.faq-answer,.note p{font-size:17px;line-height:1.72}
.service-card p,.price-card li,.price-sub{font-size:15px;line-height:1.6}
.price-card small,.pricing-foot{font-size:13px;line-height:1.65}
input,textarea,select{font-size:17px;line-height:1.5}

.pricing-foot{display:block;margin-top:32px;max-width:780px}
.pricing-foot strong{display:block;margin:0 0 8px;font-size:11px;line-height:1.4;letter-spacing:.12em}
.pricing-foot span{display:block}
@media(max-width:700px){body{font-size:17px;background-attachment:scroll!important;background-size:auto,auto 100vh!important}.about-copy p,.area-copy p,.pricing-header>p,.intake-intro p,.faq-answer,.note p{font-size:16px}.pup-frame.small-pups .pup-note{font-size:10px}}


body{font-size:19px;line-height:1.7}
.copy{max-width:610px}
.copy p,.area-copy>p:not(.eyebrow),.pricing-header>p,.intake-copy>p,.article-body p,.article-deck,details p,.note p{font-size:18px;line-height:1.75}
.services-header p{font-size:17px;line-height:1.7;max-width:400px}
.service-card p{font-size:16px;line-height:1.68}
.price-card li,.price-sub{font-size:16px;line-height:1.6}
.price-card small,.pricing-foot{font-size:14px;line-height:1.7}
.form-small{font-size:13px;line-height:1.6}
input,textarea,select{font-size:18px;padding:14px 0;min-height:50px}
textarea{min-height:130px}
label{font-size:11px;line-height:1.5}
.field-note{font-size:.82em;font-weight:500;letter-spacing:.04em;text-transform:lowercase;color:#819094;margin-left:5px}
.button{font-size:11px;padding:17px 23px;min-height:52px}

.meet-notaries{margin:32px 0 6px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:10px 22px;align-items:baseline}
.meet-notaries span{font-size:11px;font-weight:700;letter-spacing:.12em}
.meet-notaries strong{font:500 24px/1.2 var(--serif);letter-spacing:-.02em;color:var(--ink)}

.appointment-prep{margin:34px 0 30px;padding:24px 26px;background:rgba(245,240,227,.7);border:1px solid rgba(33,58,66,.14)}
.appointment-prep .prep-title{margin:0 0 12px;font:700 15px/1.3 var(--display);letter-spacing:.02em;color:var(--ink)}
.appointment-prep ul{margin:0 0 14px;padding-left:21px;color:var(--ink-soft)}
.appointment-prep li{margin:6px 0;font-size:16px;line-height:1.55}
.appointment-prep>p:last-child{margin:0;font-size:14px;line-height:1.6;color:#687b80}


.pup-frame.small-pups{overflow:visible;padding:7%;padding-bottom:7%;margin-bottom:58px}
.pup-frame.small-pups .pup-note{position:absolute;left:7%;right:auto;bottom:-44px;margin:0;padding:0;background:transparent;font-size:11px;line-height:1.35}

.mobile-book-cta{display:none}
@media(max-width:700px){
  body{font-size:18px;padding-bottom:72px}
  .copy p,.area-copy>p:not(.eyebrow),.pricing-header>p,.intake-copy>p,.article-body p,.article-deck,details p,.note p{font-size:17px}
  .service-card p,.price-card li,.price-sub{font-size:16px}
  .meet-notaries{display:block}.meet-notaries span,.meet-notaries strong{display:block}.meet-notaries strong{margin-top:7px;font-size:22px}
  .appointment-prep{padding:21px 20px}.appointment-prep li{font-size:15px}
  .pup-frame.small-pups{margin-bottom:50px}.pup-frame.small-pups .pup-note{left:0;bottom:-38px;font-size:10px}
  .mobile-book-cta{display:flex;position:fixed;z-index:30;left:14px;right:14px;bottom:12px;min-height:52px;align-items:center;justify-content:space-between;padding:0 20px;background:var(--gold);color:var(--ink);box-shadow:0 8px 28px rgba(33,58,66,.24);font:700 11px var(--body);letter-spacing:.12em;text-transform:uppercase}
  .mobile-book-cta span{font-size:20px}
  .footer{padding-bottom:92px}
}
.owner-photo{display:block;width:100%;height:auto;object-fit:cover;border-radius:2px}
@media(max-width:900px){
 .nav.open{top:100%;right:5%;width:min(360px,90vw);gap:4px;padding:16px;max-height:calc(100dvh - 110px);overflow-y:auto}
 .nav a,.nav .cta{font-size:18px;line-height:1.45;letter-spacing:.035em;min-height:48px;display:flex;align-items:center;padding:12px 14px}
 .menu{min-width:48px;min-height:48px}
 .footer-links a{font-size:17px;display:inline-flex;align-items:center;min-height:44px}
 details summary{font-size:18px;min-height:48px;line-height:1.5}
}

/* v25: service area text and accessible, separate mascot caption. */
.area-copy{max-width:850px}.area-copy>p:not(.eyebrow){max-width:780px}
.pup-frame.small-pups{display:block;margin-bottom:0;padding:7%;overflow:visible}
.pup-frame.small-pups .pup-note{position:static;display:block;margin:20px 0 0;padding:0;font-size:14px;line-height:1.5;white-space:normal}
:focus-visible{outline:3px solid #935a18;outline-offset:5px}
label{font-size:14px}.field-note{color:#526368}
@media(max-width:700px){.pup-frame.small-pups .pup-note{font-size:14px}.button,.mobile-book-cta{font-size:13px}}

/* v27: content-sized mobile hero, with room for the logo and navigation. */
@media(max-width:700px){
 .hero{height:auto;min-height:0}
 .hero-inner{height:auto;min-height:0;align-items:flex-start;padding:132px 0 64px}
 .hero-copy{width:100%}
 .hero h1{margin-top:16px}
}

/* v28: scannable services and a quieter mobile mascot treatment. */
.service-card ul{margin:18px 0 0;padding-left:21px;color:var(--ink-soft)}
.service-card li{font-size:16px;line-height:1.65;margin:8px 0}
#identification{scroll-margin-top:24px}
.appointment-prep a{text-decoration:underline;text-underline-offset:3px;color:var(--ink)}
@media(max-width:700px){
 #about .split{gap:28px}
 #about .pup-frame.small-pups{width:min(260px,100%);margin:0 auto;padding:16px}
 #about .pup-note{text-align:center}
}

.appointment-prep a{display:inline-block;min-height:44px;padding:8px 0}

/* v29: service coverage integrated with pricing. */
.pricing-area{margin-top:36px;padding-top:28px;border-top:1px solid rgba(255,255,255,.25);max-width:850px;scroll-margin-top:24px}
.pricing-area h3{font:700 26px/1.25 var(--display);letter-spacing:-.025em;margin:0 0 12px;color:#f7f0e1}
.pricing-area p{font-size:18px;line-height:1.7;color:#edf0e9;margin:0}
@media(max-width:700px){.pricing-area p{font-size:17px}.pricing-area h3{font-size:24px}}

/* v30: opening-soon status and unavailable appointment form. */
.launch-notice{background:#f5f0e3;color:#213a42;border-left:4px solid #d59a3d;padding:14px 18px;margin:0 0 24px;font-size:17px;line-height:1.5;max-width:620px;scroll-margin-top:24px}
.launch-notice strong{display:block}
.page-launch-notice{position:relative;z-index:11;margin:120px 5% 0;padding:14px 18px;background:#f5f0e3;border-left:4px solid #d59a3d;color:#213a42;font-size:17px;line-height:1.5}
.form-unavailable{font-size:18px;font-weight:600;line-height:1.5;margin:0}
.booking-disabled{border:0;padding:0;margin:0;min-width:0;display:grid;gap:24px}
.booking-disabled legend{font-size:15px;line-height:1.5;padding:0 0 20px}
.booking-disabled input,.booking-disabled select,.booking-disabled textarea{opacity:.65;cursor:not-allowed}
.booking-disabled button{cursor:not-allowed;opacity:.75}

/* v31: matched editorial heading and stronger phone contrast. */
.services-title{font:800 clamp(44px,5.5vw,72px)/.96 var(--display);letter-spacing:-.045em;margin:15px 0 0}
.services-title em{font-family:var(--serif);font-weight:500;letter-spacing:-.025em}
@media(max-width:700px){.hero-shade{background:linear-gradient(90deg,rgba(23,44,50,.76),rgba(23,44,50,.48)),linear-gradient(0deg,rgba(23,44,50,.3),transparent)}}

.form-requirements{font-size:16px;line-height:1.6;margin:0 0 8px;color:var(--ink)}

/* v34: balanced pricing note and clear email action. */
.pricing-foot span{max-width:68ch;text-wrap:pretty}
.mobile-book-cta{justify-content:center}
