@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-ext-400-normal-DwaaZvol.woff2)format("woff2"),url(/assets/lora-cyrillic-ext-400-normal-PiPRSBNu.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-cyrillic-400-normal-CbVom6TB.woff2)format("woff2"),url(/assets/lora-cyrillic-400-normal-BedExNGj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-math-400-normal-D2gccGFf.woff2)format("woff2"),url(/assets/lora-math-400-normal-BToItYw_.woff)format("woff");unicode-range:U+302-303,U+305,U+307-308,U+310,U+312,U+315,U+31A,U+326-327,U+32C,U+32F-330,U+332-333,U+338,U+33A,U+346,U+34D,U+391-3A1,U+3A3-3A9,U+3B1-3C9,U+3D1,U+3D5-3D6,U+3F0-3F1,U+3F4-3F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE??}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-symbols-400-normal-DmcY0X7a.woff2)format("woff2"),url(/assets/lora-symbols-400-normal-BK2bqsD8.woff)format("woff");unicode-range:U+1-C,U+E-1F,U+7F-9F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+28??,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B??,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F0??,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F7??,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB??}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-vietnamese-400-normal-BxA6xcFr.woff2)format("woff2"),url(/assets/lora-vietnamese-400-normal-DlgyXXxo.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-latin-ext-400-normal-CyviI4c-.woff2)format("woff2"),url(/assets/lora-latin-ext-400-normal-B9GmMl5M.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lora;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/lora-latin-400-normal-DnxXpLNu.woff2)format("woff2"),url(/assets/lora-latin-400-normal-DBJS-Hc6.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-cyrillic-ext-300-normal-uypPFyUW.woff2)format("woff2"),url(/assets/oswald-cyrillic-ext-300-normal-Cu1hRHSJ.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-cyrillic-300-normal-5qvSHf5j.woff2)format("woff2"),url(/assets/oswald-cyrillic-300-normal-1KQhapC3.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-vietnamese-300-normal-CdoSkO8l.woff2)format("woff2"),url(/assets/oswald-vietnamese-300-normal-BOujjSKd.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-latin-ext-300-normal-BM4xff3m.woff2)format("woff2"),url(/assets/oswald-latin-ext-300-normal-CO_aVDBw.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:300;src:url(/assets/oswald-latin-300-normal-Cl0rPaJv.woff2)format("woff2"),url(/assets/oswald-latin-300-normal-DLdBc7-y.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-cyrillic-ext-400-normal-DaQSmjrl.woff2)format("woff2"),url(/assets/oswald-cyrillic-ext-400-normal-BkkDEomt.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-cyrillic-400-normal-Dakd8U79.woff2)format("woff2"),url(/assets/oswald-cyrillic-400-normal-BUD0W5Zj.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-latin-400-normal-BAFo8sP8.woff2)format("woff2"),url(/assets/oswald-latin-400-normal-D1wpMXgf.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-latin-500-normal-B-eyT0Dw.woff2)format("woff2"),url(/assets/oswald-latin-500-normal-DM85Di4w.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/roboto-latin-400-normal-CNwBRw8h.woff2)format("woff2"),url(/assets/roboto-latin-400-normal-BX2H0A0_.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-CkrA1NAy.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-CoDN7ZW2.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  --pink:#ba9896;
  --pink-soft:#d8c1bf;
  --green:#384241;
  --green-deep:#273534;
  --cream:#f0e6e4;
  --paper:#faf7f2;
  --ink:#303c3b;
  --line:#3842417a;
  --header-height:82px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-height);overflow-x:hidden}
body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-family:Oswald,Arial Narrow,Arial,sans-serif;font-weight:300;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.skip-link{z-index:100;background:var(--paper);color:var(--green);padding:10px 14px;position:fixed;top:12px;left:12px;transform:translateY(-160%)}
.skip-link:focus{transform:translateY(0)}

.site-header{z-index:50;min-height:var(--header-height);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#faf7f2f0;border-bottom:1px solid #3842412e;justify-content:space-between;align-items:center;gap:28px;padding:9px clamp(20px,4vw,64px);display:flex;position:sticky;top:0}
.header-brand{flex:none;width:125px}
.brand{width:100%;height:auto}
.desktop-nav{letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:clamp(16px,2vw,34px);font-size:.78rem;font-weight:400;display:flex}
.desktop-nav a{padding:10px 0;position:relative}
.desktop-nav a:not(.nav-cta):after{content:"";background:currentColor;height:1px;transition:transform .18s;position:absolute;bottom:4px;left:0;right:0;transform:scaleX(0)}
.desktop-nav a:hover:after,.desktop-nav a:focus-visible:after{transform:scaleX(1)}
.nav-cta,.outline-button{border:1px solid;transition:background .18s,color .18s;padding:12px 18px!important}
.nav-cta:hover,.nav-cta:focus-visible{background:var(--green);color:var(--paper)}
.mobile-menu{display:none}

.hero,.story,.care-prices,.visit,.trust-bar,.faq{width:100%;max-width:1680px;margin:0 auto}
section[id],.hero,.story,.care-prices,.visit,.faq{scroll-margin-top:var(--header-height)}

.hero{min-height:calc(100svh - var(--header-height));grid-template-columns:minmax(380px,43%) 1fr;display:grid}
.panel{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}
.panel-pink{background:var(--pink);color:var(--green-deep)}
.panel-green{background:var(--green);color:var(--cream)}
.hero-copy{padding:clamp(44px,5vw,86px)}
.hero-brand{width:clamp(126px,10vw,180px);margin-bottom:clamp(20px,3vh,38px)}
.eyebrow,.section-kicker{letter-spacing:.21em;text-transform:uppercase;margin:0 0 20px;font-size:.74rem;font-weight:500}
.hero h1,.story h2,.care-prices h2,.visit h2,.faq h2{letter-spacing:-.035em;text-transform:uppercase;margin:0;font-family:Lora,Georgia,serif;font-weight:400}
.hero h1{font-size:clamp(3rem,5vw,6.2rem);line-height:.98}
.hero-intro{max-width:420px;margin:30px auto 0;font-size:clamp(1.05rem,1.45vw,1.42rem);line-height:1.48}
.hero-note{max-width:440px;margin:20px auto 0;font-size:1rem;line-height:1.6}
.text-link{letter-spacing:.18em;text-transform:uppercase;border-bottom:1px solid;margin-top:28px;padding-bottom:4px;font-size:.75rem;font-weight:500}
.hero-collage{grid-template-rows:1fr 1fr;grid-template-columns:minmax(220px,.82fr) minmax(380px,1.58fr);min-width:0;display:grid}
.photo{background:var(--cream);border:.5px solid #faf7f2f0;min-width:0;min-height:0;margin:0;position:relative;overflow:hidden}
.photo img{filter:saturate(.8)contrast(.93)brightness(.99)sepia(.07);object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
@media (hover:hover){.photo:hover img{transform:scale(1.025)}}
.hero-walk{grid-area:1/2/span 2}
.hero-walk img{object-position:right bottom;transform-origin:100% 100%;transform:scale(1.38)}
@media (hover:hover){.hero-walk:hover img{transform:scale(1.405)}}
.hero-cuddle{grid-area:1/1}
.hero-cuddle img{object-position:28% center}
.hero-leash{grid-area:2/1}
.hero-leash img{object-position:center}

/* Trust & Peace of Mind Reassurance Bar */
.trust-bar{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  background:var(--paper);
  border-top:1px solid #3842412e;
  border-bottom:1px solid #3842412e;
}
.trust-item{
  padding:clamp(24px,3vw,38px) clamp(18px,2.2vw,32px);
  border-right:1px solid #38424124;
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:8px;
}
.trust-item:last-child{border-right:none}
.trust-icon{font-size:1.5rem;line-height:1}
.trust-title{
  font-family:Oswald,Arial Narrow,Arial,sans-serif;
  font-size:clamp(0.85rem,1.05vw,0.98rem);
  font-weight:500;
  letter-spacing:0.12em;
  text-transform:uppercase;
  color:var(--green-deep);
  margin:0;
}
.trust-desc{
  font-family:Roboto,Arial,sans-serif;
  font-size:clamp(0.78rem,0.92vw,0.85rem);
  color:#303c3bd4;
  line-height:1.45;
  margin:0;
  max-width:240px;
}

.story{min-height:clamp(620px,56vw,820px);display:grid}
.story-copy,.care-copy,.faq-copy{padding:clamp(48px,5vw,86px)}
.story-copy h2,.care-copy h2,.faq-copy h2{max-width:640px;font-size:clamp(2.9rem,4.6vw,5.9rem);line-height:1.02}
.story-copy p:not(.section-kicker),.care-copy p:not(.section-kicker),.faq-copy p:not(.section-kicker){max-width:520px;margin:26px 0 0;font-size:clamp(1rem,1.34vw,1.28rem);line-height:1.64}
.story-copy p+p,.care-copy p+p,.faq-copy p+p{margin-top:15px!important}
.story-welcome{grid-template-columns:36% 42% 22%}
.welcome-home img{object-position:center}
.welcome-sadie img{object-position:61% center}
.welcome-home img,.family-tall img{filter:none}
.welcome-stack,.family-stack,.settling-stack,.walks-small-stack{grid-template-rows:1fr 1fr;min-width:0;min-height:0;display:grid}
.welcome-stack>*,.family-stack>*,.settling-stack>*,.walks-small-stack>*{min-height:0}
.story-family{grid-template-columns:36% 32% 32%}
.family-tall img{object-position:center 60%}
.story-walks{grid-template-columns:36% 22% 21% 21%}
.walks-tall img{object-position:center}
.story-settling{grid-template-columns:40% 22% 38%}
.settling-tall img{object-position:48% center}
.care-prices{grid-template-columns:42% 58%;display:grid}
.care-copy{min-height:740px}

.price-panel{background:var(--cream);flex-direction:column;justify-content:center;min-height:740px;padding:clamp(52px,6vw,104px);display:flex}
.price-heading{max-width:760px}
.price-heading h2{font-size:clamp(2.9rem,4.5vw,5.3rem);line-height:1}
.price-heading>p:last-child{margin:16px 0 36px;font-family:Roboto,Arial,sans-serif;font-size:.88rem;line-height:1.6}
.price-group+.price-group{margin-top:34px}
.price-group-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:8px;display:flex}
.price-group h3{letter-spacing:.12em;text-transform:uppercase;margin:0;font-family:Roboto,Arial,sans-serif;font-size:.92rem;font-weight:500}
.price-group-heading p{text-align:right;max-width:480px;margin:0;font-family:Roboto,Arial,sans-serif;font-size:.68rem;line-height:1.4}
.price-group dl{border-top:1px solid var(--line);margin:0}
.price-group dl div{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:24px;padding:12px 0;font-family:Roboto,Arial,sans-serif;font-size:clamp(.85rem,1.15vw,1rem);display:grid}
.price-group dt span{color:#303c3bb3;font-size:.78em}
.price-group dd{white-space:nowrap;margin:0;font-weight:500}
.story-sadie{grid-template-columns:40% 60%;min-height:700px}
.sadie-photo img{object-position:center 32%}

/* FAQ Section */
.faq{
  display:grid;
  grid-template-columns:38% 62%;
  min-height:680px;
}
.faq-copy{
  background:var(--pink);
  color:var(--green-deep);
}
.faq-accordion{
  background:var(--cream);
  padding:clamp(44px,5.5vw,86px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:12px;
}
.faq-item{
  border-bottom:1px solid var(--line);
  padding-bottom:10px;
}
.faq-item summary{
  cursor:pointer;
  font-family:Oswald,Arial Narrow,Arial,sans-serif;
  font-size:clamp(1.04rem,1.28vw,1.22rem);
  font-weight:500;
  letter-spacing:0.03em;
  color:var(--green-deep);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:10px 0;
  list-style:none;
  user-select:none;
  transition:color .18s;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:"+";
  font-family:Lora,Georgia,serif;
  font-size:1.45rem;
  font-weight:400;
  color:var(--green);
  line-height:1;
  transition:transform .22s ease;
  flex:none;
}
.faq-item[open] summary::after{
  transform:rotate(45deg);
}
.faq-item p{
  font-family:Roboto,Arial,sans-serif;
  font-size:clamp(0.88rem,1.02vw,0.96rem);
  line-height:1.62;
  color:#303c3be0;
  margin:6px 0 12px;
  max-width:680px;
}

.visit{background:var(--green);color:var(--cream);grid-template-columns:170px 1fr auto;align-items:center;gap:clamp(32px,6vw,88px);padding:clamp(60px,7vw,112px) clamp(28px,7vw,112px);display:grid}
.visit-brand{width:170px}
.visit .section-kicker{margin-bottom:12px}
.visit h2{font-size:clamp(2.3rem,4vw,4.8rem);line-height:1.04}
.visit p:not(.section-kicker){max-width:680px;margin:20px 0 0;font-size:1.12rem;line-height:1.6}

.outline-button{letter-spacing:.18em;text-transform:uppercase;flex:none;font-size:.78rem;font-weight:500}
.outline-button:hover,.outline-button:focus-visible{background:var(--cream);color:var(--green)}

.site-footer{background:var(--green-deep);color:var(--cream);letter-spacing:.14em;text-transform:uppercase;grid-template-columns:1fr auto auto;align-items:center;gap:18px;padding:26px clamp(22px,4vw,64px);font-size:.72rem;display:grid}
.site-footer p{margin:0}
.site-footer a{border-bottom:1px solid #0000}
.site-footer a:hover,.site-footer a:focus-visible{border-color:currentColor}

@media (width<=1120px){
  .desktop-nav{gap:14px;font-size:.68rem}
  .hero{grid-template-columns:40% 60%}
  .hero-copy,.story-copy,.care-copy,.faq-copy{padding:42px 34px}
  .story-copy p:not(.section-kicker),.care-copy p:not(.section-kicker),.faq-copy p:not(.section-kicker){font-size:1rem}
  .story-welcome,.story-family,.story-settling{grid-template-columns:40% 30% 30%}
  .story-walks .walks-tall:last-child{display:none}
  .story-walks{grid-template-columns:40% 30% 30%}
  .story-settling{grid-template-columns:40% 28% 32%}
}

@media (width<=820px){
  :root{--header-height:70px}
  .site-header{padding:7px 20px}
  .header-brand{width:104px}
  .desktop-nav{display:none}
  .mobile-menu{display:block;position:relative}
  .mobile-menu summary{cursor:pointer;border:1px solid var(--green);letter-spacing:.16em;text-transform:uppercase;padding:9px 12px;font-size:.72rem;font-weight:500;list-style:none}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu nav{background:var(--paper);border:1px solid #3842413d;width:210px;display:grid;position:absolute;top:calc(100% + 9px);right:0;box-shadow:0 18px 45px #27353424}
  .mobile-menu nav a{letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid #38424121;padding:13px 16px;font-size:.78rem}
  .hero{grid-template-columns:1fr;min-height:auto}
  .hero-copy{min-height:calc(78svh - var(--header-height));padding:58px 24px}
  .hero h1{font-size:clamp(3.5rem,14vw,5.4rem)}
  .hero-collage{grid-template-rows:1fr 1fr;grid-template-columns:minmax(0,.82fr) minmax(0,1.58fr);min-height:72svh}
  
  .trust-bar{grid-template-columns:repeat(2,1fr)}
  .trust-item:nth-child(2n){border-right:none}
  .trust-item:nth-child(1),.trust-item:nth-child(2){border-bottom:1px solid #38424124}
  
  .story,.care-prices,.faq{grid-template-columns:1fr 1fr;min-height:auto}
  .story-copy,.care-copy,.faq-copy{grid-column:1/-1;min-height:auto;padding:64px 30px}
  .story-copy h2,.care-copy h2,.faq-copy h2{font-size:clamp(3rem,11vw,5rem)}
  .story-copy p:not(.section-kicker),.care-copy p:not(.section-kicker),.faq-copy p:not(.section-kicker){max-width:620px;font-size:1.06rem}
  .welcome-home,.family-tall,.walks-tall,.settling-tall,.sadie-photo,.welcome-stack,.family-stack,.walks-small-stack,.settling-stack{min-height:64vw}
  .story-welcome .welcome-stack,.story-walks .walks-tall:last-child{display:grid}
  .story-walks{grid-template-columns:1fr 1fr}
  .story-walks .walks-tall:last-child{display:block}
  .care-copy{min-height:auto}
  .price-panel{grid-column:1/-1;min-height:auto;padding:68px 30px}
  .faq-accordion{grid-column:1/-1;padding:58px 30px}
  .story-sadie .story-copy,.story-sadie .sadie-photo{grid-column:1/-1}
  .story-sadie .sadie-photo{min-height:78svh}
  .visit{grid-template-columns:110px 1fr;padding:64px 28px}
  .visit-brand{width:110px}
  .visit .outline-button{grid-column:2;justify-self:start}
  .site-footer{grid-template-columns:1fr auto}
  .site-footer p:nth-child(2){display:none}
}

@media (width<=540px){
  .hero-collage{min-height:640px}
  .trust-bar{grid-template-columns:1fr}
  .trust-item{border-right:none;border-bottom:1px solid #38424124;padding:22px 20px}
  .trust-item:last-child{border-bottom:none}
  .story,.care-prices,.faq{grid-template-columns:1fr}
  .story-copy,.faq-copy{min-height:auto;padding:72px 24px}
  .welcome-home,.family-tall,.walks-tall,.settling-tall,.sadie-photo,.welcome-stack,.family-stack,.walks-small-stack,.settling-stack{grid-column:1;min-height:92vw}
  .welcome-stack,.family-stack,.walks-small-stack,.settling-stack{min-height:150vw}
  .price-panel{padding:64px 24px}
  .price-group-heading{display:block}
  .price-group-heading p{text-align:left;margin-top:7px}
  .price-group dl div{gap:14px;font-size:.8rem}
  .faq-accordion{padding:54px 20px}
  .visit{grid-template-columns:1fr}
  .visit-brand{width:130px}
  .visit .outline-button{grid-column:1}
  .site-footer{text-align:center;grid-template-columns:1fr}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .photo img,.desktop-nav a:after{transition:none}
}

.outline-button-whatsapp{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  background:var(--cream);
  color:var(--green);
  border:1px solid var(--cream);
  font-weight:500;
  transition:all .2s ease;
  text-decoration:none;
}
.outline-button-whatsapp:hover,.outline-button-whatsapp:focus-visible{
  background:var(--paper);
  color:var(--green-deep);
  transform:translateY(-2px);
  box-shadow:0 6px 20px rgba(0,0,0,0.15);
}
.whatsapp-icon{flex:none;width:1.15em;height:1.15em;fill:currentColor}

.whatsapp-float{
  position:fixed;
  bottom:24px;
  right:24px;
  z-index:99;
  display:flex;
  align-items:center;
  gap:8px;
  background:var(--green);
  color:var(--paper);
  padding:12px 18px;
  border-radius:9999px;
  font-size:0.78rem;
  font-weight:500;
  letter-spacing:0.12em;
  text-transform:uppercase;
  box-shadow:0 6px 24px rgba(39,53,52,0.3);
  transition:all .25s ease;
  text-decoration:none;
  border:1px solid rgba(240,230,228,0.25);
}
.whatsapp-float:hover,.whatsapp-float:focus-visible{
  background:var(--green-deep);
  transform:translateY(-2px) scale(1.03);
  box-shadow:0 8px 30px rgba(39,53,52,0.45);
  color:var(--cream);
}
@media (width<=540px){
  .whatsapp-float{bottom:18px;right:18px;padding:10px 14px;font-size:0.72rem}
}

@media (min-width:821px){
  .story{min-height:min(calc(100svh - var(--header-height)),800px)}
  .story-sadie{min-height:min(calc(100svh - var(--header-height)),740px)}
  .faq{min-height:min(calc(100svh - var(--header-height)),740px)}
  .story-copy,.faq-copy{padding:clamp(32px,3.8vw,64px)}
  .story-copy h2,.faq-copy h2{font-size:clamp(2.4rem,4.1vw,5rem)}
  .story-copy p:not(.section-kicker),.faq-copy p:not(.section-kicker){margin:18px 0 0;font-size:clamp(0.95rem,1.22vw,1.16rem);line-height:1.54}
  .story-copy p+p,.faq-copy p+p{margin-top:12px!important}
  .sadie-photo img{object-position:center 24%}
}
