/* V2.6: service grid, transparent client logos, editable hero and compact guide. */
.visual-services:has(.service-tile-grid){display:block;height:auto}
.service-tile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 28px}
.service-tile{display:block;text-align:center;min-width:0}
.service-tile-photo{aspect-ratio:1.12;overflow:hidden;background:#242424}
.service-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s}
.service-tile h3{font:500 clamp(20px,1.7vw,28px)/1.35 Georgia,serif;text-decoration:underline;text-underline-offset:5px;margin:16px 0 0}
.service-tile:hover img,.service-tile:focus-visible img{transform:scale(1.04)}
.client-logos{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:25px 30px}
.client-logos .client-logo,html[data-site-theme="dark"] .client-logos .client-logo{background:transparent;border:0;box-shadow:none;border-radius:0;height:90px;width:110px;padding:5px}
.client-logos .client-logo img{display:block;max-width:100%;width:auto;max-height:80px;height:auto;object-fit:contain}
.client-logos .client-logo,.client-logos .client-logo a{display:flex;align-items:center;justify-content:center}
.managed-hero{height:680px;min-height:570px;position:relative;overflow:hidden;background:#20262a;color:#fff;isolation:isolate}
.managed-slide{position:absolute;inset:0}.managed-slide[hidden]{display:none}
.managed-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.managed-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b1b24df,#0b1b246b 58%,#0b1b2410);pointer-events:none}
.managed-copy{position:relative;z-index:1;padding:90px 8%;max-width:1100px}
.managed-copy :is(h1,h2){font:500 clamp(45px,5.5vw,78px)/1.12 Manrope,Arial,sans-serif;letter-spacing:-2.5px;max-width:850px;margin:0 0 25px;color:white}
.managed-copy p{max-width:600px;font-size:18px;line-height:1.8;color:#e5e9ec;margin:0 0 30px}
.managed-copy .eyebrow{font-size:11px;line-height:1.7;margin-bottom:25px}
.managed-controls{position:absolute;z-index:2;bottom:25px;right:8%;left:8%;margin-left:auto;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;pointer-events:none}
.managed-controls>*{pointer-events:auto}
.managed-controls>span{font-size:11px;letter-spacing:1.4px;padding:8px;background:#172c3899;border-radius:4px}
.managed-dot{width:28px;min-height:26px;padding:10px 0;background:transparent;position:relative}
.managed-dot:after{content:'';display:block;height:4px;background:#ffffff80;border-radius:3px}
.managed-dot[aria-pressed="true"]:after{background:#ef5b28}
.managed-pause{background:#172c38a8;border:1px solid #ffffff55;border-radius:3px;width:32px;height:30px;color:white}
.managed-pause[hidden],.managed-dot[hidden]{display:none}
.anchor-guide{padding:60px 8%;max-width:1600px;margin:auto}
.anchor-intro{font-size:20px;line-height:1.6;margin:0 0 30px}
.anchor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}
.anchor-block{background:#edf0e9;border:1px solid #d1d7cd;padding:24px;border-radius:6px;min-width:0}
.anchor-block h2{font-size:25px;letter-spacing:-.5px;line-height:1.35;margin:0 0 15px}
.anchor-block p,.anchor-block li{font-size:15px;line-height:1.8;margin:0 0 12px}
.anchor-block p:last-child{margin-bottom:0}
.anchor-block summary{cursor:pointer;font-size:18px;font-weight:600;line-height:1.5}
.anchor-block[open] summary{margin-bottom:18px}
.anchor-wide{grid-column:1/-1}
.anchor-table{overflow:auto;margin:0 0 20px}
.anchor-table table{font-size:14px;min-width:550px}
.anchor-table th,.anchor-table td{padding:12px;border-bottom:1px solid #c5cdc0;color:inherit;line-height:1.6}
.anchor-table th{background:#dde3d8;font-weight:700}
.anchor-contact{margin-top:30px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.anchor-contact h2{font-size:28px;max-width:650px;letter-spacing:-.5px}
.anchor-contact .primary{white-space:nowrap}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
html[data-site-theme="dark"] .anchor-block{background:#3d3d3d;border-color:#626262;color:#f5f5f5}
html[data-site-theme="dark"] .anchor-table th{background:#484848}
html[data-site-theme="dark"] .anchor-table td,html[data-site-theme="dark"] .anchor-table th{border-color:#666}
@media(max-width:900px){.managed-hero{height:640px}.managed-copy{padding:85px 7%}.service-tile-grid{gap:28px 20px;grid-template-columns:repeat(2,minmax(0,1fr))}.anchor-guide{padding:50px 7%}}
@media(max-width:560px){.service-tile-grid{grid-template-columns:1fr;gap:30px}.service-tile-photo{aspect-ratio:1.25}.service-tile h3{font-size:24px}.managed-hero{height:650px;min-height:600px}.managed-copy{padding:65px 7%}.managed-copy :is(h1,h2){font-size:43px;letter-spacing:-1.5px}.managed-copy p{font-size:16px}.managed-copy .eyebrow{font-size:10px}.managed-controls{left:7%;right:7%;gap:8px}.managed-dot{width:23px}.anchor-grid{grid-template-columns:1fr}.anchor-wide{grid-column:auto}.anchor-block{padding:20px}.anchor-contact{display:block}.anchor-contact .primary{margin-top:20px}.client-logos{gap:16px}.client-logos .client-logo{width:90px;height:75px}.client-logos .client-logo img{max-height:65px}}
@media(prefers-reduced-motion:reduce){.service-tile img{transition:none}.service-tile:hover img{transform:none}}

/* Preserve the usual banner height while allowing longer edited text to fit. */
.managed-hero{height:auto;min-height:680px}.managed-slide{position:relative;inset:auto;min-height:680px}.managed-copy{padding-bottom:110px}
@media(max-width:900px){.managed-hero,.managed-slide{min-height:640px}}
@media(max-width:560px){.managed-hero{height:auto;min-height:650px}.managed-slide{min-height:650px}.managed-copy{padding-bottom:110px}}
