/* page-home.css — below-the-fold styles for index.html
   Loaded async via media="print" / onload trick.
   Above-the-fold (hero) styles remain inline in index.html. */

/* CAROUSEL FOTO TS */
.carousel{padding:clamp(4rem,10vh,7rem) 0;background:var(--cream);position:relative;overflow:hidden;border-bottom:1px solid var(--line-soft)}
.carousel__head{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;align-items:end;margin-bottom:3rem}
.carousel__head h2{font-family:var(--f-display);font-weight:400;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1;color:var(--bark);letter-spacing:-.02em;margin-top:1rem;font-variation-settings:"opsz" 144,"SOFT" 30}
.carousel__head h2 em{font-style:italic;color:var(--gold-deep);font-variation-settings:"opsz" 144,"SOFT" 100}
.carousel__head p{color:var(--ink-soft);font-size:1.02rem;line-height:1.55;max-width:30rem;justify-self:end}
@media (max-width:780px){.carousel__head{grid-template-columns:1fr;gap:1rem}.carousel__head p{justify-self:start}}

.carousel__viewport{
  position:relative;border-radius:var(--r-lg);overflow:hidden;
  aspect-ratio:16/10;
  box-shadow:0 30px 80px -30px rgba(0,0,0,.4);
  background:var(--bark);
}
@media (max-width:780px){.carousel__viewport{aspect-ratio:4/5}}

.carousel__track{position:absolute;inset:0;display:flex;transition:transform .8s var(--ease-out)}
.carousel__slide{flex:0 0 100%;height:100%;position:relative}
.carousel__slide img{width:100%;height:100%;object-fit:cover}
.carousel__slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.55) 100%);pointer-events:none}
.carousel__caption{position:absolute;left:1.6rem;bottom:1.4rem;font-family:var(--f-display);font-style:italic;font-weight:300;font-size:1.1rem;color:var(--ivory);z-index:2;font-variation-settings:"opsz" 144}
.carousel__caption::before{content:"";display:inline-block;width:24px;height:1px;background:var(--gold-glow);margin-right:.6rem;vertical-align:.25em}

.carousel__nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:999px;display:grid;place-items:center;background:rgba(221,210,214,.92);backdrop-filter:blur(8px);color:var(--bark);z-index:3;transition:transform .25s var(--ease-out),background .25s var(--ease-out)}
.carousel__nav:hover{background:#fff;transform:translateY(-50%) scale(1.08)}
.carousel__nav--prev{left:1rem}
.carousel__nav--next{right:1rem}
.carousel__nav svg{width:18px;height:18px}

.carousel__dots{display:flex;justify-content:center;gap:.6rem;margin-top:1.6rem}
.carousel__dot{width:8px;height:8px;border-radius:999px;background:var(--line-strong);border:0;cursor:pointer;transition:width .35s var(--ease-out),background .35s var(--ease-out)}
.carousel__dot[aria-current="true"]{width:36px;background:var(--gold-deep)}

@media (max-width:540px){
  .carousel__nav{width:38px;height:38px}
}

/* TRIESTE CAROUSEL — clean editorial showcase */
.trieste-carousel{background:var(--cream);padding:clamp(4rem,10vh,7rem) 0;position:relative;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.tc{position:relative;width:100%;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden;background:var(--bark);isolation:isolate;box-shadow:0 30px 80px -30px rgba(0,0,0,.45)}
@media (max-width:780px){.tc{aspect-ratio:4/5;border-radius:18px}}
.tc__track{position:absolute;inset:0}
.tc__slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s var(--ease-out);overflow:hidden}
.tc__slide.is-active{opacity:1;z-index:1}
.tc__slide picture,.tc__slide img{display:block;width:100%;height:100%;object-fit:cover}
.tc__slide.is-active img{animation:tc-zoom 9s ease-out forwards}
@keyframes tc-zoom{
  from{transform:scale(1.03) translate3d(0,0,0)}
  to{transform:scale(1.12) translate3d(-1%,-2%,0)}
}
@media (prefers-reduced-motion:reduce){.tc__slide.is-active img{animation:none;transform:scale(1.04)}}
.tc__slide::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.0) 50%,rgba(0,0,0,.55) 100%);pointer-events:none;z-index:2}
.tc__caption{position:absolute;left:clamp(1.5rem,3vw,2rem);bottom:clamp(1.5rem,3vw,2rem);font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(1.05rem,1.8vw,1.4rem);letter-spacing:.02em;color:var(--ivory);z-index:3;font-variation-settings:"opsz" 144}
.tc__caption::before{content:"";display:inline-block;width:28px;height:1px;background:var(--gold-glow);margin-right:.6rem;vertical-align:.3em}

.tc__rings{position:absolute;right:-15%;bottom:-25%;width:55%;aspect-ratio:1;color:rgba(123,21,39,.45);pointer-events:none;z-index:3;animation:ring-spin 220s linear infinite;opacity:.55;mix-blend-mode:screen}
.tc__rings svg{width:100%;height:100%}
@media (prefers-reduced-motion:reduce){.tc__rings{animation:none}}
@media (max-width:780px){.tc__rings{width:75%;right:-25%}}

.tc__nav{position:absolute;top:50%;transform:translateY(-50%);width:48px;height:48px;border-radius:999px;display:grid;place-items:center;background:rgba(239,232,234,.92);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--bark);z-index:4;transition:transform .25s var(--ease-out),background .25s var(--ease-out),opacity .25s var(--ease-out);border:0;cursor:pointer}
.tc__nav:hover{background:#fff;transform:translateY(-50%) scale(1.08)}
.tc__nav--prev{left:clamp(.8rem,1.5vw,1.4rem)}
.tc__nav--next{right:clamp(.8rem,1.5vw,1.4rem)}
.tc__nav svg{width:20px;height:20px}
@media (max-width:540px){.tc__nav{width:40px;height:40px}.tc__nav svg{width:16px;height:16px}}

.tc__dots{position:absolute;left:50%;bottom:clamp(1rem,2vw,1.4rem);transform:translateX(-50%);display:flex;gap:.5rem;z-index:4}
.tc__dot{width:24px;height:24px;border-radius:999px;background:transparent;border:0;cursor:pointer;padding:0;position:relative;display:inline-flex;align-items:center;justify-content:center}
.tc__dot::before{content:'';width:8px;height:8px;border-radius:999px;background:rgba(239,232,234,.4);transition:width .35s var(--ease-out),background .35s var(--ease-out)}
.tc__dot[aria-current="true"]::before{width:32px;background:var(--ivory)}

.tc__progress{position:absolute;left:0;right:0;top:0;height:2px;background:rgba(239,232,234,.16);z-index:5;overflow:hidden}
.tc__progress-bar{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--gold-deep),var(--gold-glow));transform-origin:left center;transform:scaleX(0);animation:tc-progress 6s linear infinite}
@keyframes tc-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media (prefers-reduced-motion:reduce){.tc__progress-bar{animation:none;transform:scaleX(.4)}}

/* TRIESTE / ESPERIENZA / CHI SONO (legacy — retained for ESPERIENZA only) */
.trieste{background:var(--cream);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);padding:clamp(6rem,14vh,10rem) 0;position:relative;overflow:hidden}
.trieste__rings{position:absolute;left:-12vw;top:50%;width:46vw;max-width:560px;aspect-ratio:1;transform:translateY(-50%);color:var(--gold);opacity:.22;pointer-events:none;z-index:0}
.trieste__grid{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(2rem,6vw,6rem);align-items:center}
.trieste__copy{position:relative}
.trieste__copy h2{margin-top:1.5rem}
.trieste__copy p{margin-top:1.5rem;color:var(--ink-soft);max-width:32rem}
.trieste__photo{position:relative;aspect-ratio:3/4;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.45);isolation:isolate}
.trieste__photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-out)}
.trieste__photo:hover img{transform:scale(1.04)}
.trieste__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.35) 100%);pointer-events:none}
.trieste__photo figcaption{position:absolute;bottom:1.5rem;left:1.5rem;font-family:var(--f-display);font-style:italic;font-weight:300;font-size:1.1rem;color:var(--ivory);letter-spacing:.02em;z-index:2;font-variation-settings:"opsz" 144}
.trieste__photo figcaption::before{content:"";display:inline-block;width:24px;height:1px;background:var(--gold-glow);margin-right:.6rem;vertical-align:.3em}
@media (max-width:880px){.trieste__grid{grid-template-columns:1fr}.trieste__photo{aspect-ratio:4/5;order:-1}.trieste__rings{display:none}}
@media (max-width:600px){.trieste__photo{aspect-ratio:4/5}.trieste__photo figcaption{font-size:.95rem;left:1rem;bottom:1rem}}

.chi-sono{background:linear-gradient(180deg,var(--cream) 0%,var(--cream-deep) 100%);padding:clamp(5rem,12vh,9rem) 0;position:relative;overflow:hidden}
.chi-sono__rings-bg{position:absolute;right:-15vw;top:-10vw;width:55vw;max-width:740px;aspect-ratio:1;color:var(--gold);opacity:.12;pointer-events:none}
.chi-sono__grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:clamp(2.5rem,6vw,5.5rem);align-items:center;position:relative;z-index:1}
.chi-sono__photo-wrap{position:relative;padding:1.4rem;background:var(--ivory);border-radius:var(--r-md);box-shadow:0 30px 80px -30px rgba(0,0,0,.35)}
.chi-sono__photo-wrap::before{content:"";position:absolute;inset:.55rem;border:1px solid var(--line-soft);border-radius:8px;pointer-events:none}
.chi-sono__photo{aspect-ratio:4/5;border-radius:8px;overflow:hidden;position:relative}
.chi-sono__photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.95) contrast(1.02);transition:transform 1.4s var(--ease-out)}
.chi-sono__photo:hover img{transform:scale(1.03)}
.chi-sono__photo-tag{position:absolute;bottom:-1.4rem;left:50%;transform:translateX(-50%);background:var(--bark);color:var(--ivory);padding:.55rem 1.4rem;border-radius:999px;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:500;white-space:nowrap;box-shadow:0 12px 32px -12px rgba(0,0,0,.5)}
.chi-sono__copy h2{margin-top:1.5rem}
.chi-sono__quote{margin-top:2.5rem;font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(1.25rem,1.7vw,1.6rem);line-height:1.4;color:var(--bark);padding-left:1.6rem;border-left:2px solid var(--gold);font-variation-settings:"opsz" 144}
.chi-sono__bio{margin-top:1.8rem;color:var(--ink-soft);max-width:34rem}
.chi-sono__sign{margin-top:2rem;display:flex;align-items:flex-start;gap:1rem;color:var(--ink-soft);letter-spacing:.04em}
.chi-sono__sign-dash{font-family:var(--f-display);font-size:1.6rem;color:var(--gold-deep);line-height:1;margin-top:.15rem;font-weight:300;flex-shrink:0}
.chi-sono__sign-stack{display:flex;flex-direction:column;gap:.15rem}
.chi-sono__sign-name{font-family:var(--f-display);font-style:italic;font-weight:400;font-size:1.6rem;color:var(--bark);font-variation-settings:"opsz" 144;line-height:1.05}
.chi-sono__sign-piva{font-family:var(--f-body);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);font-weight:500}
.badges{margin-top:2.5rem;display:flex;flex-wrap:wrap;gap:.6rem}
.badge{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:999px;background:var(--ivory);color:var(--bark);border:1px solid var(--line-soft);font-size:.85rem;letter-spacing:.02em;font-weight:500}
.badge::before{content:"";width:6px;height:6px;border-radius:999px;background:var(--gold)}
@media (max-width:880px){.chi-sono__grid{grid-template-columns:1fr;gap:3rem}.chi-sono__photo-wrap{max-width:420px;margin:0 auto}}
@media (max-width:600px){.chi-sono__photo-wrap{padding:.8rem}.chi-sono__quote{font-size:1.15rem;padding-left:1rem}}

/* ESPERIENZA COMPLETA · editorial split */
.esperienza{background:var(--cream-deep);padding:clamp(5rem,12vh,9rem) 0;position:relative;overflow:hidden;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.esperienza__wave{position:absolute;left:0;right:0;top:0;height:60px;color:var(--gold);opacity:.5;pointer-events:none}
.esperienza__wave svg{width:100%;height:100%}
.esperienza__inner{display:grid;grid-template-columns:.85fr 1fr;gap:clamp(2.5rem,6vw,5rem);align-items:center;max-width:1100px;margin:0 auto;position:relative;z-index:1}
.esperienza__photo{position:relative;aspect-ratio:3/4;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.4);isolation:isolate}
.esperienza__photo picture,.esperienza__photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.6s var(--ease-out)}
.esperienza__photo:hover img{transform:scale(1.04)}
.esperienza__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.25) 100%);pointer-events:none}
.esperienza__title{margin-top:1rem;font-family:var(--f-display);font-weight:400;font-size:clamp(2rem,4.4vw,3.6rem);line-height:1;color:var(--bark);letter-spacing:-.02em;font-variation-settings:"opsz" 144,"SOFT" 30}
.esperienza__title em{font-style:italic;color:var(--gold-deep);font-variation-settings:"opsz" 144,"SOFT" 100}
.esperienza__body{margin-top:1.5rem;font-size:clamp(1.05rem,1.35vw,1.2rem);color:var(--ink-soft);line-height:1.6;max-width:36rem}
.esperienza__body em{font-family:var(--f-display);font-style:italic;color:var(--bark);font-weight:400;font-variation-settings:"opsz" 144}
@media (max-width:780px){.esperienza__inner{grid-template-columns:1fr;gap:2rem}.esperienza__photo{aspect-ratio:5/6;max-width:420px;margin:0 auto}}

/* VISION */
.vision{background:var(--cream);padding:clamp(5rem,12vh,9rem) 0;position:relative;overflow:hidden}
.vision__rings{position:absolute;right:-12vw;bottom:-12vw;width:50vw;max-width:600px;aspect-ratio:1;color:var(--gold);opacity:.16;pointer-events:none;z-index:0}
.vision__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2.5rem,6vw,5rem);align-items:center;position:relative;z-index:1}
.vision__grid--centered{grid-template-columns:1fr;max-width:780px;text-align:left}
.vision__grid--centered h2{font-size:clamp(1.9rem,3.4vw,3rem);line-height:1.12;letter-spacing:-.012em;text-wrap:balance;max-width:42rem}
.vision__grid--centered h2 em{display:inline-block;white-space:nowrap}
.vision__photo{position:relative;aspect-ratio:4/5;border-radius:var(--r-lg);overflow:hidden;box-shadow:0 30px 80px -30px rgba(0,0,0,.4);isolation:isolate}
.vision__photo img{width:100%;height:100%;object-fit:cover;transition:transform 1.4s var(--ease-out);filter:saturate(.92)}
.vision__photo:hover img{transform:scale(1.05)}
.vision__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(165deg,transparent 50%,rgba(0,0,0,.45) 100%);pointer-events:none}
.vision__photo-tag{position:absolute;left:1.4rem;bottom:1.4rem;font-family:var(--f-display);font-style:italic;font-weight:300;font-size:1rem;color:var(--ivory);z-index:2;font-variation-settings:"opsz" 144}
.vision__photo-tag::before{content:"";display:inline-block;width:24px;height:1px;background:var(--gold-glow);margin-right:.5rem;vertical-align:.3em}
.vision__copy h2{margin-top:1.5rem}
.vision__copy p{margin-top:1.8rem;color:var(--ink-soft);font-size:clamp(1.05rem,1.35vw,1.2rem);line-height:1.6;max-width:32rem}
.vision__copy p em{font-family:var(--f-display);font-style:italic;color:var(--bark);font-weight:400;font-variation-settings:"opsz" 144}
.vision__years{margin-top:2.5rem;display:flex;align-items:baseline;gap:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line-soft)}
.vision__years-num{font-family:var(--f-display);font-style:italic;font-weight:300;font-size:3.5rem;line-height:.9;color:var(--gold-deep);font-variation-settings:"opsz" 144,"SOFT" 100}
.vision__years-label{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute);font-weight:500}
@media (max-width:880px){.vision__grid{grid-template-columns:1fr}.vision__photo{aspect-ratio:5/6;max-width:520px;margin:0 auto;order:-1}}

/* SERVICES */
.services{background:var(--cream-deep);padding:clamp(5rem,12vh,9rem) 0;position:relative;overflow:hidden}
.services__head{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:end;margin-bottom:4rem}
.services__head--single{grid-template-columns:1fr;text-align:left}
.services__head h2{margin-top:1.5rem}
.services__head-meta{font-size:.95rem;color:var(--ink-soft);border-top:1px solid var(--line);padding-top:1.5rem;max-width:24rem;justify-self:end}

/* depth element — non-text non-rings visual anchor for empty right column */
.services__depth{position:relative;justify-self:end;width:100%;max-width:340px;aspect-ratio:1;display:grid;place-items:center;isolation:isolate;pointer-events:none}
.services__depth-num{font-family:var(--f-display);font-style:italic;font-weight:300;font-size:clamp(11rem,16vw,20rem);line-height:.85;color:var(--gold-deep);font-variation-settings:"opsz" 144,"SOFT" 100;letter-spacing:-.04em;mix-blend-mode:multiply;z-index:2;text-shadow:0 8px 32px rgba(123,21,39,.18)}
.services__depth-glow{position:absolute;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(123,21,39,.45) 0%,rgba(123,21,39,.18) 45%,transparent 70%);filter:blur(30px);z-index:1;animation:depth-breathe 7s ease-in-out infinite}
.services__depth-glow--b{width:55%;background:radial-gradient(circle at 60% 60%,rgba(104,147,168,.5) 0%,rgba(104,147,168,.2) 45%,transparent 70%);animation:depth-breathe 9s ease-in-out infinite reverse;animation-delay:-2s;z-index:0}
@keyframes depth-breathe{
  0%,100%{transform:scale(.92) translate(0,0);opacity:.85}
  50%{transform:scale(1.08) translate(2%,-3%);opacity:1}
}
@media (prefers-reduced-motion:reduce){.services__depth-glow,.services__depth-glow--b{animation:none}}
@media (max-width:780px){
  .services__head{grid-template-columns:1fr;gap:2rem}
  .services__depth{max-width:240px;justify-self:start;margin-top:.5rem}
  .services__depth-num{font-size:clamp(8rem,28vw,12rem)}
}
@media (max-width:600px){
  .services__head{margin-bottom:2.5rem}
  .services__depth{max-width:200px}
  .services__head h2.display{font-size:3.3rem;line-height:.98}
}
@media (max-width:780px){.services__head{grid-template-columns:1fr}.services__head-meta{justify-self:start}}
@media (max-width:600px){.services__head{margin-bottom:2.5rem}}

.services__grid{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:1.4rem}
@media (max-width:880px){.services__grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:540px){.services__grid{grid-template-columns:1fr;gap:1rem}}

.svc-card{position:relative;isolation:isolate;padding:1.8rem 1.6rem 1.8rem;background:var(--ivory);border-radius:var(--r-md);border:1px solid var(--line-soft);overflow:hidden;transition:transform .4s var(--ease-out),box-shadow .4s var(--ease-out),border-color .4s var(--ease-out);display:flex;flex-direction:column;gap:.7rem;min-height:220px}
.svc-card::before{content:"";position:absolute;left:-30%;bottom:-50%;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at center,rgba(104,147,168,.22) 0%,rgba(221,210,214,.18) 45%,transparent 70%);opacity:.55;transition:opacity .55s var(--ease-out),transform .7s var(--ease-out);pointer-events:none;z-index:-1;filter:blur(2px)}
.svc-card:hover{transform:translateY(-4px);border-color:var(--gold);box-shadow:0 16px 40px -20px rgba(0,0,0,.18)}
.svc-card:hover::before{opacity:1;transform:translate(8%,-6%) scale(1.18)}
.svc-card > *{position:relative;z-index:1}
.svc-card--xl,.svc-card--md,.svc-card--sm{grid-column:span 1}
.svc-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.svc-card__num{font-family:var(--f-display);font-style:italic;font-weight:300;font-size:2.4rem;color:var(--gold-deep);line-height:.9;font-variation-settings:"opsz" 144}
.svc-card__icon{width:36px;height:36px;display:grid;place-items:center;color:var(--gold-deep);flex-shrink:0}
.svc-card__icon svg{width:100%;height:100%;stroke-width:1.4}
.svc-card__title{font-family:var(--f-display);font-weight:400;font-size:1.4rem;color:var(--bark);line-height:1.15;letter-spacing:-.01em;font-variation-settings:"opsz" 144}
.svc-card__lead{color:var(--ink-soft);font-size:.95rem;line-height:1.5;flex:1}
.svc-card__keys{margin-top:.6rem;display:flex;flex-wrap:wrap;gap:.4rem}
.svc-card__key{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:999px;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;font-weight:500;color:var(--ink-soft);background:var(--cream);border:1px solid var(--line-soft)}
.svc-card__key::before{content:"";width:4px;height:4px;border-radius:999px;background:var(--gold-deep)}
.svc-card__more{margin-top:1.2rem;display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-weight:500}
.svc-card__more::after{content:"→";transition:transform .35s var(--ease-out)}
.svc-card:hover .svc-card__more::after{transform:translateX(4px)}
.svc-card__rings{position:absolute;left:-22%;bottom:-30%;width:62%;aspect-ratio:1;color:var(--sky,#6893a8);opacity:.20;pointer-events:none;z-index:0;transition:opacity .6s var(--ease-out),transform .9s var(--ease-out);animation:svc-rings-float 12s ease-in-out infinite}
.svc-card__rings svg{width:100%;height:100%;display:block}
.svc-card:hover .svc-card__rings{opacity:.42;transform:rotate(12deg) scale(1.12)}
@keyframes svc-rings-float{0%,100%{transform:translate(0,0) rotate(0deg)}50%{transform:translate(4px,-6px) rotate(6deg)}}
@media (prefers-reduced-motion:reduce){.svc-card__rings{animation:none}}
.services__cta{margin-top:3rem;text-align:center}

/* STATS */
.stats{background:linear-gradient(180deg,var(--cream) 0%,var(--cream-deep) 100%);color:var(--ink);padding:clamp(5rem,12vh,8rem) 0;position:relative;overflow:hidden;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.stats__rings{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(95vw,900px);aspect-ratio:1;color:var(--gold);opacity:.12;pointer-events:none;animation:ring-spin 360s linear infinite}
@media (prefers-reduced-motion:reduce){.stats__rings{animation:none}}
.stats__head{text-align:center;margin-bottom:4rem;position:relative;z-index:1}
.stats__head h2{color:var(--bark);margin-top:1.2rem;font-size:clamp(2rem,4vw,3.6rem)}
.stats__head h2 em{color:var(--gold)}
.stats__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;z-index:1}
.stat{text-align:center;padding:2rem 1rem;border-left:1px solid var(--line-soft);position:relative}
.stat:first-child{border-left:0}
.stat__num{font-family:var(--f-display);font-weight:400;font-size:clamp(3.2rem,7vw,6rem);line-height:.9;color:var(--gold);letter-spacing:-.03em;font-variation-settings:"opsz" 144}
.stat__num em{font-style:italic;color:var(--gold-deep);font-variation-settings:"opsz" 144,"SOFT" 100}
.stat__label{margin-top:.9rem;font-family:var(--f-eyebrow);font-size:.78rem;letter-spacing:.28em;text-transform:uppercase;color:var(--ink-soft);font-weight:500}
.stat__sub{margin-top:.4rem;font-size:.92rem;color:var(--ink-mute);font-style:italic;font-family:var(--f-display);font-weight:300;font-variation-settings:"opsz" 144}
@media (max-width:880px){.stats__grid{grid-template-columns:repeat(2,1fr)}.stat{border-left:0;border-top:1px solid var(--line-soft);padding:2rem 1rem}.stat:nth-child(-n+2){border-top:0}.stat:nth-child(2n){border-left:1px solid var(--line-soft)}}
@media (max-width:600px){.stat{padding:1.6rem .6rem}.stat__num{font-size:3rem}}

/* CTA BAND */
.cta-band{position:relative;overflow:hidden;background:var(--gold);color:var(--ivory);padding:clamp(5rem,12vh,9rem) 0;isolation:isolate}
.cta-band__bg{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 20% 30%,rgba(255,255,255,.08) 0%,transparent 55%),radial-gradient(ellipse at 80% 70%,rgba(0,0,0,.25) 0%,transparent 55%)}
.cta-band__rings{position:absolute;right:-15vw;top:-10vh;width:min(70vh,700px);aspect-ratio:1;color:rgba(255,255,255,.18);pointer-events:none;z-index:-1;animation:ring-spin 200s linear infinite reverse}
@media (prefers-reduced-motion:reduce){.cta-band__rings{animation:none}}
.cta-band__inner{text-align:center;max-width:800px;margin:0 auto;position:relative;z-index:1}
.cta-band .eyebrow{color:var(--ivory)}
.cta-band .eyebrow::before,.cta-band .eyebrow--center::after{background:var(--ivory);opacity:.7}
.cta-band h2{font-family:var(--f-display);font-weight:300;font-size:clamp(2.2rem,5vw,4rem);line-height:1;letter-spacing:-.02em;color:var(--ivory);font-variation-settings:"opsz" 144,"SOFT" 50}
.cta-band h2 em{font-style:italic;color:#FFE9D6;font-variation-settings:"opsz" 144,"SOFT" 100;font-weight:400}
.cta-band p{margin-top:1.5rem;font-size:1.05rem;color:rgba(255,255,255,.85);max-width:36rem;margin-left:auto;margin-right:auto}
.cta-band__ctas{margin-top:2.5rem;display:flex;gap:1.2rem;justify-content:center;flex-wrap:wrap}
.cta-band__phone{display:inline-flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.92);border-bottom:1px solid rgba(255,255,255,.45);padding:.5rem 0;letter-spacing:.04em;font-size:.95rem;transition:color .3s var(--ease-out),border-color .3s var(--ease-out)}
.cta-band__phone:hover{color:#FFE9D6;border-color:#FFE9D6}

.divider-rings{display:flex;justify-content:center;align-items:center;padding:0 0;height:0;position:relative}
.divider-rings svg{width:64px;height:64px;color:var(--gold-deep);background:var(--cream);padding:6px;border-radius:999px;position:relative;z-index:1}
.divider-rings::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}

