/* Services Redesign — additive styles, scoped to svcr-* classes. Does not modify existing site.css rules. */
.svcr-hero-cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
.cat-nav{position:-webkit-sticky;position:sticky;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);border-bottom:1px solid var(--line);top:0}
.cat-nav-inner{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter);display:flex;gap:4px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.cat-nav-inner::-webkit-scrollbar{display:none}
.cat-btn{flex:0 0 auto;background:none;border:none;cursor:pointer;font-family:var(--sans);font-weight:600;font-size:13.5px;color:var(--gray-soft);padding:16px 16px;position:relative;white-space:nowrap;transition:color .25s}
.cat-btn::after{content:"";position:absolute;left:16px;right:16px;bottom:0;height:2px;background:var(--yellow-deep);transform:scaleX(0);transform-origin:center;transition:transform .3s var(--ease)}
.cat-btn:hover{color:var(--ink)}
.cat-btn.active{color:var(--ink)}
.cat-btn.active::after{transform:scaleX(1)}
.cat-btn:focus-visible{outline:2px solid var(--yellow-deep);outline-offset:2px}

.svcr-section{padding-block:clamp(72px,9vw,132px)}
.svcr-section.bg-ink{border-color:var(--line-dark)}
.svcr-grid{display:grid;grid-template-columns:0.85fr 1.15fr;gap:clamp(40px,6vw,88px);align-items:start}
.svcr-left{position:sticky;top:calc(var(--svcr-offset, 128px) + 24px)}
.svcr-num{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--yellow-deep);display:block;margin-bottom:16px}
.svcr-section.bg-ink .svcr-num{color:var(--yellow)}
.svcr-left h2{font-size:clamp(28px,3.4vw,42px);margin:14px 0 22px;font-weight:500;letter-spacing:-0.015em}
.svcr-left p{font-size:16px;color:var(--gray);margin-bottom:22px;max-width:46ch}
.svcr-section.bg-ink .svcr-left p{color:rgba(255,255,255,.66)}
.svcr-benefit{font-family:var(--serif);font-style:italic;font-size:17px;color:var(--ink)!important;margin-bottom:34px!important}
.svcr-section.bg-ink .svcr-benefit{color:#fff!important}

.svcr-groups{display:flex;flex-direction:column;gap:44px}
.svcr-group h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--gray-soft);margin-bottom:14px}
.svcr-section.bg-ink .svcr-group h4{color:rgba(255,255,255,.5)}
.svcr-tags{list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.svcr-tags li{font-size:13.5px;font-weight:500;color:var(--ink);background:var(--white);border:1px solid var(--line);padding:8px 13px;border-radius:40px}
.bg-cream .svcr-tags li{background:var(--cream)}
.svcr-section.bg-ink .svcr-tags li{background:rgba(255,255,255,.06);color:#fff;border-color:var(--line-dark)}

.svcr-drawer-btn{margin-top:26px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;font-family:var(--sans);font-weight:600;font-size:14.5px;color:var(--ink);cursor:pointer;transition:border-color .25s}
.bg-cream .svcr-drawer-btn{background:var(--cream)}
.svcr-section.bg-ink .svcr-drawer-btn{background:rgba(255,255,255,.05);color:#fff;border-color:var(--line-dark)}
.svcr-drawer-btn:hover{border-color:var(--ink)}
.svcr-section.bg-ink .svcr-drawer-btn:hover{border-color:#fff}
.svcr-drawer-btn:focus-visible{outline:2px solid var(--yellow-deep);outline-offset:2px}
.svcr-drawer-ic{width:18px;height:18px;flex-shrink:0;transition:transform .35s var(--ease)}
.svcr-drawer-btn[aria-expanded="true"] .svcr-drawer-ic{transform:rotate(45deg)}
.svcr-drawer{overflow:hidden;max-height:0;opacity:0;transition:max-height .4s var(--ease),opacity .3s var(--ease)}
.svcr-drawer-inner{padding:20px 4px 4px}
.svcr-drawer-inner p{font-size:14.5px;color:var(--gray);margin-bottom:10px;line-height:1.6}
.svcr-section.bg-ink .svcr-drawer-inner p{color:rgba(255,255,255,.66)}
.svcr-drawer-inner strong{color:var(--ink);font-weight:600}
.svcr-section.bg-ink .svcr-drawer-inner strong{color:#fff}
@media(prefers-reduced-motion:reduce){.svcr-drawer{transition:none}.svcr-drawer-ic{transition:none}}

.svcr-carousel-wrap{margin-top:28px}
.svcr-carousel-label{font-family:var(--sans);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gray-soft);margin-bottom:14px;display:block}
.svcr-section.bg-ink .svcr-carousel-label{color:rgba(255,255,255,.5)}
.svcr-carousel{display:flex;grid-template-columns:none;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:4px}
.svcr-carousel::-webkit-scrollbar{display:none}
.svcr-carousel .gal-item{flex:0 0 220px;aspect-ratio:4/3;scroll-snap-align:start}

.svcr-fgallery{margin-top:36px}
.svcr-subgroup{margin-top:22px}
.svcr-subgroup:first-child{margin-top:0}
.svcr-subgroup-label{display:block;font-family:var(--sans);font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gray-soft);margin-bottom:8px}
.svcr-section.bg-ink .svcr-subgroup-label{color:rgba(255,255,255,.45)}
.svcr-subgroup .gallery{grid-template-columns:repeat(4,1fr)}
.fgal-main{display:block;width:100%;aspect-ratio:16/9;border-radius:var(--radius);overflow:hidden}
.fgal-thumbs-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:10px}
.fgal-thumbs-row .gal-item{aspect-ratio:4/3}
.fgal-extra{display:none}
.fgal-viewall{margin-top:16px;background:none;border:none;padding:0;cursor:pointer;font-family:var(--sans);font-weight:600;font-size:13.5px;color:var(--ink);display:inline-flex;align-items:center;gap:6px}
.svcr-section.bg-ink .fgal-viewall{color:#fff}
.fgal-viewall:hover{color:var(--yellow-deep)}
.fgal-viewall:focus-visible{outline:2px solid var(--yellow-deep);outline-offset:3px}

.svcr-steps{list-style:none;counter-reset:sstep;display:flex;flex-direction:column;gap:20px}
.svcr-steps li{position:relative;padding-left:52px}
.svcr-steps li::before{counter-increment:sstep;content:counter(sstep,decimal-leading-zero);position:absolute;left:0;top:0;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;font-family:var(--serif);font-style:italic;font-size:14px;color:var(--yellow-deep)}
.svcr-section.bg-ink .svcr-steps li::before{border-color:var(--line-dark)}
.svcr-steps li h4{font-size:16.5px;font-weight:600;color:var(--ink);margin-bottom:5px;font-family:var(--sans)}
.svcr-section.bg-ink .svcr-steps li h4{color:#fff}
.svcr-steps li p{font-size:14.5px;color:var(--gray);margin:0}
.svcr-section.bg-ink .svcr-steps li p{color:rgba(255,255,255,.66)}

.svcr-quote-btn{margin-top:30px}
.svcr-placeholder{border:1.5px dashed var(--line);border-radius:var(--radius);aspect-ratio:16/10;display:flex;align-items:center;justify-content:center;color:var(--gray-soft);font-size:13.5px;font-weight:600;letter-spacing:.04em;background:var(--white)}
.bg-cream .svcr-placeholder{background:var(--cream)}
.svcr-note{margin-top:18px;font-size:13px;color:var(--gray-soft);font-style:italic}
.svcr-section.bg-ink .svcr-note{color:rgba(255,255,255,.5)}

@media(max-width:920px){
  .svcr-grid{grid-template-columns:1fr;gap:36px}
  .svcr-left{position:static}
}
@media(max-width:600px){
  .cat-btn{padding:14px 13px;font-size:12.5px}
  .svcr-carousel .gal-item{flex-basis:76%}
  .fgal-thumbs-row{grid-template-columns:repeat(3,1fr)}
}
