.sf-banner{background:linear-gradient(120deg,#0E2A47,#173e64);color:var(--sf-color-light);padding-block:5rem;}.sf-banner>div{max-inline-size:48rem;}.sf-banner h1{font-size:clamp(1.75rem,4vw,2.75rem);margin:.5rem 0 1rem;}.sf-banner p{max-inline-size:40rem;}.sf-hero{background:linear-gradient(90deg,rgba(14,42,71,.92),rgba(14,42,71,.52)),var(--sf-hero) center/cover;color:var(--sf-color-light);min-block-size:min(44rem,78vh);display:grid;align-items:end;padding-block:5rem;}.sf-hero__content{max-inline-size:43rem;}.sf-hero h1{font-size:clamp(2.3rem,5vw,4.5rem);line-height:1.06;margin:.5rem 0 1rem;}.sf-hero p:not(.sf-eyebrow){font-size:1.125rem;max-inline-size:38rem;}@media(max-width:47.9375rem){.sf-banner{padding-block:3.25rem;}.sf-hero{min-block-size:36rem;padding-block:3rem;}}

/* Homepage refinement pass 1 */.sf-home-hero{min-block-size:clamp(38rem,72vh,48rem);align-items:center;background:linear-gradient(90deg,rgba(14,42,71,.78),rgba(14,42,71,.58) 40%,rgba(14,42,71,.12) 73%),var(--sf-hero) center/cover}.sf-home-hero .sf-hero__content{padding-block:5.5rem;max-inline-size:41rem}.sf-home-hero h1{max-inline-size:14ch}.sf-home-hero p:not(.sf-eyebrow){max-inline-size:34rem;font-size:clamp(1.05rem,1.5vw,1.2rem)}.sf-home-hero .sf-cta-pair{margin-block-start:1.75rem}.sf-home-trust{padding-block:clamp(3.5rem,7vw,6rem)}.sf-home-trust__grid,.sf-home-services__grid,.sf-home-pawdashians__grid{display:grid;gap:1.25rem}.sf-home-trust__grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-block-start:2.5rem}.sf-home-value{padding:1.5rem 1.25rem;border-block-start:2px solid var(--sf-color-gold);background:var(--sf-color-light)}.sf-home-value img,.sf-home-service>img{inline-size:3rem;block-size:3rem;object-fit:contain;margin-block-end:1rem}.sf-home-value h3,.sf-home-service h3,.sf-home-pawdashian h3{margin:0 0 .45rem}.sf-home-value p,.sf-home-service p,.sf-home-pawdashian p{margin:0}.sf-home-services__grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-block-start:2.5rem}.sf-home-service{display:flex;flex-direction:column;align-items:flex-start;padding:1.75rem;border-radius:1rem;background:var(--sf-color-light);box-shadow:0 .5rem 1.5rem rgba(14,42,71,.08)}.sf-home-service__price{margin-block:1.25rem .9rem!important;color:var(--sf-color-navy);font-weight:700}.sf-home-service .sf-text-link{margin-block-start:auto}.sf-home-pawdashians{padding-block:clamp(3.5rem,7vw,6rem);background:#f7f1e7}.sf-home-pawdashians__grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-block-start:2.5rem}.sf-home-pawdashian{overflow:hidden;background:var(--sf-color-light);border-radius:1rem}.sf-home-pawdashian>img{display:block;inline-size:100%;aspect-ratio:4/5;object-fit:cover}.sf-home-pawdashian>div{padding:1.25rem}.sf-home-pawdashian .sf-eyebrow{font-size:.68rem;margin:0 0 .35rem}.sf-home-routine__flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:1rem;padding:0;margin:2.5rem 0 0;list-style:none;counter-reset:sf-routine}.sf-home-routine__flow li{display:grid;gap:.8rem;justify-items:center;min-block-size:10rem;padding:1.25rem .65rem;background:var(--sf-color-light);text-align:center;border-radius:.9rem;counter-increment:sf-routine}.sf-home-routine__flow li::before{content:counter(sf-routine,decimal-leading-zero);font-size:.7rem;letter-spacing:.08em;color:var(--sf-color-muted)}.sf-home-routine__flow img{inline-size:3rem;block-size:3rem;object-fit:contain}.sf-home-routine__flow span{font-weight:700}.sf-home-faq .sf-faq{max-inline-size:52rem;margin:2.5rem auto 0}.sf-home-final-cta{padding-block:clamp(3.75rem,8vw,6.5rem);color:var(--sf-color-light);background:#0e2a47;text-align:center}.sf-home-final-cta>div{max-inline-size:46rem}.sf-home-final-cta h2{margin:.45rem auto 1rem;max-inline-size:19ch}.sf-home-final-cta p:not(.sf-eyebrow){margin-inline:auto;max-inline-size:34rem}.sf-home-final-cta .sf-cta-pair{justify-content:center;margin-block-start:1.75rem}@media(max-width:63.9375rem){.sf-home-trust__grid,.sf-home-services__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-home-pawdashians__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-home-routine__flow{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:47.9375rem){.sf-home-hero{align-items:end;min-block-size:39rem;background:linear-gradient(0deg,rgba(14,42,71,.9),rgba(14,42,71,.62) 43%,rgba(14,42,71,.08) 76%),var(--sf-hero-mobile) center/cover}.sf-home-hero .sf-hero__content{padding-block:3.75rem 3rem}.sf-home-hero h1{max-inline-size:11ch}.sf-home-trust__grid,.sf-home-services__grid,.sf-home-pawdashians__grid{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(16rem,82vw);grid-template-columns:none;overflow-x:auto;padding-block-end:.5rem;scroll-snap-type:x mandatory}.sf-home-trust__grid>*,.sf-home-services__grid>*,.sf-home-pawdashians__grid>*{scroll-snap-align:start}.sf-home-routine__flow{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.sf-home-routine__flow li{min-block-size:9rem;padding:1rem .5rem}.sf-home-final-cta{text-align:left}.sf-home-final-cta .sf-cta-pair{justify-content:flex-start}}

/* Temporary Gallery placecards retain final responsive geometry until approved photography is assigned. */
.sf-home-gallery{padding-block:clamp(3.5rem,7vw,6rem)}.sf-home-gallery__grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:10rem;gap:1rem;margin-block-start:2.5rem}.sf-home-gallery__placecard{display:flex;align-items:end;padding:1.25rem;border-radius:1rem;overflow:hidden;background:linear-gradient(145deg,#e4d5bb,#c7a86d);color:var(--sf-color-navy);font-weight:700;letter-spacing:.02em}.sf-home-gallery__placecard::before{content:"PLACEHOLDER";display:block;align-self:start;margin-inline-end:auto;font-size:.65rem;letter-spacing:.12em}.sf-home-gallery__placecard:nth-child(1){grid-column:span 5;grid-row:span 2}.sf-home-gallery__placecard:nth-child(2){grid-column:span 3;grid-row:span 2}.sf-home-gallery__placecard:nth-child(3){grid-column:span 4}.sf-home-gallery__placecard:nth-child(4){grid-column:span 4}.sf-home-gallery__placecard:nth-child(5){grid-column:span 3}.sf-home-gallery__placecard:nth-child(6){grid-column:span 5}@media(max-width:47.9375rem){.sf-home-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:9rem;gap:.75rem}.sf-home-gallery__placecard:nth-child(n){grid-column:span 1;grid-row:span 1}.sf-home-gallery__placecard:nth-child(1),.sf-home-gallery__placecard:nth-child(4){grid-column:span 2}}

/* Homepage testimonials: exact approved avatar/text mapping. */
.sf-home-testimonials{position:relative;padding-block:clamp(3.5rem,7vw,6rem)}.sf-home-testimonials__rail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-block-start:2.5rem}.sf-home-testimonial{display:flex;flex-direction:column;align-items:flex-start;padding:1.75rem;border-radius:1rem;background:var(--sf-color-light);box-shadow:0 .5rem 1.5rem rgba(14,42,71,.08)}.sf-home-testimonial>img{inline-size:4.5rem;block-size:4.5rem;object-fit:cover;border-radius:50%;margin-block-end:1.25rem}.sf-home-testimonial h3{margin:0 0 1rem;color:var(--sf-color-navy);font-size:1.05rem}.sf-home-testimonial blockquote{margin:0;color:var(--sf-color-ink)}.sf-home-testimonial blockquote p{margin:0}.sf-home-testimonials__controls{display:none;gap:.5rem}.sf-home-testimonials__control{inline-size:2.75rem;block-size:2.75rem;border:1px solid var(--sf-color-navy);border-radius:50%;background:var(--sf-color-light);color:var(--sf-color-navy);font-size:1.25rem;cursor:pointer}.sf-home-testimonials__control:focus-visible{outline:3px solid var(--sf-color-gold);outline-offset:3px}@media(max-width:47.9375rem){.sf-home-testimonials__controls{display:flex;justify-content:flex-end;margin-block-start:1.5rem}.sf-home-testimonials__rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(17rem,84vw);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-block-end:.5rem;margin-block-start:1rem}.sf-home-testimonial{scroll-snap-align:start;min-block-size:20rem}.sf-home-testimonial blockquote{font-size:.98rem}}
@media(prefers-reduced-motion:reduce){.sf-home-testimonials__rail{scroll-behavior:auto}}

/* Homepage visual refinement pass 2 — scoped to non-testimonial Homepage sections. */
.sf-home-hero{min-block-size:clamp(35rem,64vh,44rem);background-position:center}.sf-home-hero .sf-hero__content{padding-block:4.5rem}.sf-home-trust .sf-section__heading,.sf-home-services .sf-section__heading,.sf-home-pawdashians .sf-section__heading,.sf-home-routine .sf-section__heading,.sf-home-gallery .sf-section__heading,.sf-home-faq .sf-section__heading{max-inline-size:42rem}.sf-home-trust__grid,.sf-home-services__grid,.sf-home-pawdashians__grid{gap:1.5rem}.sf-home-value{min-block-size:14.25rem;padding:1.65rem 1.4rem}.sf-home-value img,.sf-home-service>img{inline-size:3.25rem;block-size:3.25rem}.sf-home-services{padding-block:clamp(3.75rem,7vw,6rem)}.sf-home-service{min-block-size:20rem;padding:1.85rem}.sf-home-service__price{padding-block-start:.85rem;border-block-start:1px solid rgba(14,42,71,.14)}.sf-home-pawdashians__grid{align-items:start}.sf-home-pawdashian{box-shadow:0 .5rem 1.5rem rgba(14,42,71,.06)}.sf-home-pawdashian>img{aspect-ratio:5/6;object-position:center}.sf-home-routine__flow{gap:1.15rem}.sf-home-routine__flow li{min-block-size:10.75rem;padding:1.35rem .8rem;border:1px solid rgba(14,42,71,.07)}.sf-home-gallery__grid{gap:1.15rem;grid-auto-rows:11rem}.sf-home-gallery__placecard{position:relative;isolation:isolate;padding:1.45rem;background:linear-gradient(145deg,#f0e5d1,#d4af63);box-shadow:0 .6rem 1.5rem rgba(14,42,71,.08)}.sf-home-gallery__placecard::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 80% 18%,rgba(255,255,255,.62),transparent 30%),linear-gradient(135deg,transparent 46%,rgba(14,42,71,.12) 46% 47%,transparent 47%);opacity:.8}.sf-home-gallery__placecard:nth-child(2),.sf-home-gallery__placecard:nth-child(5){background:linear-gradient(145deg,#163653,#2a5a79);color:var(--sf-color-light)}.sf-home-gallery__placecard:nth-child(3){background:linear-gradient(145deg,#e7d8bd,#bd9054)}.sf-home-faq{padding-block:clamp(3.75rem,7vw,5.5rem)}.sf-home-faq .sf-disclosure{background:var(--sf-color-light);border-radius:.75rem;margin-block-end:.75rem;overflow:hidden}.sf-home-final-cta{padding-block:clamp(4.25rem,7vw,6rem)}
@media(max-width:63.9375rem){.sf-home-value{min-block-size:12.75rem}.sf-home-service{min-block-size:17rem}.sf-home-routine__flow{gap:.9rem}}
@media(max-width:47.9375rem){.sf-home-hero{min-block-size:36rem}.sf-home-hero .sf-hero__content{padding-block:3.5rem 2.75rem}.sf-home-trust__grid,.sf-home-services__grid,.sf-home-pawdashians__grid{gap:1rem}.sf-home-value,.sf-home-service{min-block-size:0}.sf-home-service{padding:1.5rem}.sf-home-routine__flow li{min-block-size:8.75rem}.sf-home-gallery__grid{gap:.8rem;grid-auto-rows:8.5rem}.sf-home-gallery__placecard{padding:1rem}.sf-home-faq .sf-faq{margin-block-start:1.75rem}}

/* Prevent inherited Hero shell padding from creating duplicate desktop dead space. */
.sf-home-hero{padding-block:0}

/* Homepage Hero final composition and its single trust rail. */
.sf-home-hero{min-block-size:clamp(34rem,59vw,43rem);align-items:stretch;background-position:center}.sf-home-hero__stage{display:grid;align-items:center;inline-size:100%;padding-block:clamp(4rem,7vw,6.25rem)}.sf-home-hero .sf-hero__content{margin:0;max-inline-size:36rem;text-align:start}.sf-home-hero h1{max-inline-size:12.5ch}.sf-home-hero p:not(.sf-eyebrow){max-inline-size:31rem}.sf-home-hero .sf-cta-pair{margin-block-start:1.5rem}.sf-home-hero__passport{display:inline-flex;flex-direction:column;align-items:flex-start;gap:.45rem;margin-block-start:1.1rem;color:var(--sf-color-light);text-decoration:none}.sf-home-hero__passport .sf-button{min-block-size:2.75rem;padding-inline:1.1rem}.sf-home-hero__passport>span:last-child{font-size:.875rem;opacity:.92}.sf-home-hero-trust{position:relative;z-index:2;background:var(--sf-color-light);box-shadow:0 .7rem 1.5rem rgba(14,42,71,.08)}.sf-home-hero-trust__rail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.sf-home-hero-trust__item{display:flex;align-items:center;gap:.85rem;min-block-size:7.1rem;padding:1.15rem 1.25rem;border-inline-start:1px solid rgba(14,42,71,.12)}.sf-home-hero-trust__item:first-child{border-inline-start:0}.sf-home-hero-trust__item img{flex:0 0 auto;inline-size:2.5rem;block-size:2.5rem;object-fit:contain}.sf-home-hero-trust__item h2{margin:0 0 .25rem;color:var(--sf-color-navy);font-size:.95rem}.sf-home-hero-trust__item p{margin:0;font-size:.79rem;line-height:1.4}
@media(min-width:64rem){.sf-home-hero{background-position:center}.sf-home-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,42,71,.83) 0%,rgba(14,42,71,.67) 39%,rgba(14,42,71,.16) 68%,rgba(14,42,71,.03));pointer-events:none}.sf-home-hero__stage{position:relative;z-index:1}}
@media(max-width:63.9375rem){.sf-home-hero-trust__item{padding:1rem}.sf-home-hero-trust__item img{inline-size:2.25rem;block-size:2.25rem}}
@media(max-width:47.9375rem){.sf-home-hero{min-block-size:42rem;background-position:58% center}.sf-home-hero__stage{align-items:end;padding-block:10rem 2.75rem}.sf-home-hero .sf-hero__content{max-inline-size:100%}.sf-home-hero h1{max-inline-size:11ch}.sf-home-hero__passport{margin-block-start:1rem}.sf-home-hero-trust{box-shadow:none}.sf-home-hero-trust__rail{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(16.5rem,82vw);grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;padding-block-end:.4rem}.sf-home-hero-trust__item{min-block-size:6.75rem;border-inline-start:1px solid rgba(14,42,71,.12);scroll-snap-align:start}.sf-home-hero-trust__item:first-child{border-inline-start:0}}

/* Hero final height calibration: content owns its breathing room, not the stage wrapper. */
.sf-home-hero__stage{padding-block:0}.sf-home-hero .sf-hero__content{padding-block:3.75rem}.sf-home-hero h1{font-size:clamp(2.65rem,4vw,3.85rem);max-inline-size:15ch}
@media(max-width:47.9375rem){.sf-home-hero__stage{padding-block:0}.sf-home-hero .sf-hero__content{padding-block:3.25rem 2.5rem}.sf-home-hero h1{font-size:clamp(2.3rem,10vw,3.1rem);max-inline-size:11.5ch}}


/* Services family refinement — page-family scope only. */
.sf-service-banner{position:relative;overflow:hidden;padding-block:clamp(4rem,8vw,6.5rem);background:linear-gradient(115deg,#0e2a47 0%,#173e64 62%,#235376 100%)}.sf-service-banner::after{content:"";position:absolute;inset:auto -8% -11rem auto;inline-size:28rem;block-size:28rem;border:1px solid rgb(212 175 99 / .35);border-radius:50%;box-shadow:0 0 0 3rem rgb(212 175 99 / .08),0 0 0 7rem rgb(212 175 99 / .05);pointer-events:none}.sf-service-banner>div{position:relative;z-index:1;max-inline-size:42rem}.sf-service-banner h1{max-inline-size:14ch}.sf-service-index{padding-block:clamp(3.75rem,7vw,6rem)}.sf-service-index__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}.sf-service-tile{display:flex;flex-direction:column;align-items:flex-start;min-block-size:24rem;padding:1.75rem;border:1px solid rgb(14 42 71 / .1);border-radius:1rem;background:var(--sf-color-light);box-shadow:0 .6rem 1.6rem rgb(14 42 71 / .07)}.sf-service-tile>img{inline-size:3.25rem;block-size:3.25rem;object-fit:contain;margin-block-end:1.5rem}.sf-service-tile .sf-eyebrow{margin:0 0 .5rem}.sf-service-tile h2{margin:0 0 .75rem;font-size:1.35rem}.sf-service-tile p:not(.sf-eyebrow):not(.sf-service-tile__price){margin:0;color:var(--sf-color-ink)}.sf-service-tile__price{margin-block:1.4rem 1rem!important;padding-block-start:1rem;border-block-start:1px solid rgb(14 42 71 / .13);color:var(--sf-color-navy);font-size:1rem;font-weight:700}.sf-service-tile .sf-text-link{margin-block-start:auto}.sf-service-detail{padding-block:clamp(3.75rem,7vw,6rem)}.sf-service-detail__intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.9fr);gap:clamp(2rem,6vw,6rem);align-items:center}.sf-service-detail__intro h2,.sf-service-pricing h2,.sf-service-cta h2{max-inline-size:17ch;margin:.45rem 0 1rem}.sf-service-detail__intro p{max-inline-size:39rem;margin:0}.sf-service-story__media{display:flex;align-items:flex-end;min-block-size:19rem;padding:1.25rem;border-radius:1rem;background:linear-gradient(145deg,#163653,#2a5a79);box-shadow:inset 0 0 0 1px rgb(212 175 99 / .45);color:var(--sf-color-light);overflow:hidden;position:relative}.sf-service-story__media::before{content:"";position:absolute;inset:1.25rem;border:1px solid rgb(212 175 99 / .48);border-radius:.7rem;transform:rotate(-5deg)}.sf-service-story__media span{position:relative;z-index:1;font-size:.7rem;font-weight:700;letter-spacing:.12em}.sf-service-point-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin-block-start:3rem}.sf-service-point-grid--three{grid-template-columns:repeat(3,minmax(0,1fr));margin-block-start:2rem}.sf-service-point{padding:1.35rem;border-block-start:2px solid var(--sf-color-gold);background:var(--sf-color-light)}.sf-service-point h3{margin:0 0 .55rem;font-size:1.05rem}.sf-service-point p{margin:0}.sf-service-pricing{padding-block:clamp(3.75rem,7vw,5.5rem)}.sf-service-pricing__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(18rem,.85fr);gap:clamp(2rem,6vw,6rem);align-items:center}.sf-service-pricing__grid p{margin:0;max-inline-size:34rem}.sf-service-price-list{border-radius:1rem;background:var(--sf-color-light);box-shadow:0 .5rem 1.5rem rgb(14 42 71 / .08);overflow:hidden}.sf-service-price-list p{margin:0;padding:1rem 1.25rem;color:var(--sf-color-navy);font-weight:700}.sf-service-price-list p+p{border-block-start:1px solid rgb(14 42 71 / .12)}.sf-service-readiness{padding-block:clamp(3.75rem,7vw,5.5rem)}.sf-service-cta{background:#0e2a47;color:var(--sf-color-light);padding-block:clamp(3.75rem,7vw,5.5rem)}.sf-service-cta>div{max-inline-size:45rem}.sf-service-cta p:not(.sf-eyebrow){max-inline-size:34rem}.sf-service-cta .sf-cta-pair{margin-block-start:1.5rem}@media(max-width:63.9375rem){.sf-service-index__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-service-tile{min-block-size:20rem}.sf-service-point-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-service-point-grid--three{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:47.9375rem){.sf-service-banner{padding-block:3.5rem}.sf-service-banner::after{inline-size:20rem;block-size:20rem;inset:auto -7rem -8rem auto}.sf-service-index__grid,.sf-service-point-grid,.sf-service-point-grid--three{grid-template-columns:1fr}.sf-service-tile{min-block-size:0;padding:1.5rem}.sf-service-detail__intro,.sf-service-pricing__grid{grid-template-columns:1fr;gap:1.75rem}.sf-service-story__media{min-block-size:14rem}.sf-service-point-grid{margin-block-start:2rem}.sf-service-cta .sf-cta-pair{gap:.6rem}}
