/* Service-only media collections; no changes to homepage Work. */
.service-media{min-width:0;overflow:hidden}.service-media-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.service-media-heading h2{margin:0;min-width:0;overflow-wrap:anywhere}.service-media-controls{display:flex;gap:8px;flex-shrink:0}.service-media-controls[hidden]{display:none}.service-media-controls button,.service-viewer-close{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--line,#333);border-radius:50%;background:var(--bg,#0c0c10);color:var(--fg,#fff);font-size:22px;cursor:pointer}.service-media-controls button:hover,.service-viewer-close:hover{color:var(--orange,#ff570b);border-color:currentColor}
.service-media-track{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;min-width:0}.service-media-reels .service-media-track{grid-template-columns:repeat(3,minmax(0,1fr))}.service-media-card{margin:0;min-width:0}.service-media-open{position:relative;display:block;overflow:hidden;border:1px solid var(--line,#333);border-radius:var(--iht-card_radius,18px);background:var(--bg,#101014);aspect-ratio:16/10;color:var(--fg,#fff)}.service-media-open img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .4s}.service-media-open:hover img{transform:scale(1.025)}.service-media-reels .service-media-open{aspect-ratio:9/16}.service-media-videos .service-media-open{aspect-ratio:16/9}.service-media-posts .service-media-open{aspect-ratio:1}.service-media-symbol{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--orange,#ff570b);color:#fff;box-shadow:0 4px 24px #0006}.service-media-card figcaption{padding:16px 2px 4px;overflow-wrap:anywhere}.service-media-card h3{font-size:18px;line-height:1.4;margin:0 0 8px;color:var(--fg,#fff)}.service-project-link{font-size:14px;display:inline-block;color:var(--orange,#ff570b);text-decoration:none}.service-project-link:hover{text-decoration:underline}.service-project-link[hidden]{display:none}.service-video-placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:13px;letter-spacing:.25em;background:radial-gradient(ellipse at 20% 20%,color-mix(in srgb,var(--orange,#ff570b) 22%,transparent),transparent 75%)}
.service-media[data-layout=slider] .service-media-track{display:flex;gap:24px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}.service-media-track::-webkit-scrollbar{display:none}.service-media[data-layout=slider] .service-media-card{flex:0 0 44%;min-width:0}.service-media-reels[data-layout=slider] .service-media-card{flex-basis:27%}
.service-viewer{position:fixed;inset:0;width:min(1200px,96vw);max-width:96vw;max-height:94dvh;height:auto;margin:auto;padding:0;border:1px solid var(--line,#333);border-radius:18px;background:var(--bg,#101014);color:var(--fg,#fff);overflow:auto;overscroll-behavior:contain;z-index:1000}.service-viewer::backdrop{background:#000d;backdrop-filter:blur(8px)}.service-viewer-shell{padding:60px 20px 20px;position:relative}.service-viewer-close{position:absolute;right:12px;top:10px;z-index:1}.service-viewer-stage{display:grid;place-items:center;min-width:0}.service-viewer-stage img,.service-viewer-stage video{display:block;width:auto;max-width:100%;max-height:72dvh;height:auto;object-fit:contain}.service-viewer-stage img{cursor:zoom-in}.service-viewer-stage img.is-full{width:100%;max-height:none;cursor:zoom-out}.service-viewer-footer{display:flex;gap:16px;align-items:center;justify-content:space-between;padding-top:16px;overflow-wrap:anywhere}.service-viewer-footer p{margin:0;min-width:0}.service-viewer-footer a{flex-shrink:0}html.service-viewer-active{overflow:hidden}.service-hero .section-action{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:900px){.service-media-reels .service-media-track{grid-template-columns:repeat(2,minmax(0,1fr))}.service-media[data-layout=slider] .service-media-card{flex-basis:70%}.service-media-reels[data-layout=slider] .service-media-card{flex-basis:42%}}
@media(max-width:600px){.service-media-track,.service-media-reels .service-media-track{grid-template-columns:minmax(0,1fr);gap:18px}.service-media[data-layout=slider] .service-media-card{flex-basis:88%}.service-media-reels[data-layout=slider] .service-media-card{flex-basis:72%}.service-media-heading{gap:12px}.service-media-heading h2{font-size:26px}.service-media-controls button{width:38px;height:38px}.service-media-card h3{font-size:16px}.service-viewer-shell{padding:58px 12px 16px}.service-viewer-footer{align-items:flex-start;flex-direction:column}.service-viewer-stage img,.service-viewer-stage video{max-height:65dvh}}
@media(prefers-reduced-motion:reduce){.service-media-open img{transition:none}}
/* v1.4.8: artwork-first social cards and compact media previews. */
.service-media-card{position:relative}.service-media-thumb{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.service-media-open .service-video-placeholder{position:absolute;inset:0;pointer-events:none}.service-media-open .service-auto-poster{object-fit:cover}.service-media-posts .service-media-open img{object-fit:cover}.service-media-posts[data-image-fit=contain] .service-media-open img{object-fit:contain}.service-media-posts .service-media-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.service-media-posts[data-layout=slider] .service-media-card{flex-basis:calc((100% - 64px)/5)}
.service-media[data-caption-style=overlay] .service-media-card figcaption{position:absolute;inset:auto 0 0;padding:44px 18px 18px;border-radius:0 0 var(--iht-card_radius,18px) var(--iht-card_radius,18px);background:linear-gradient(transparent,#000e);opacity:0;transform:translateY(8px);transition:opacity .22s,transform .22s;pointer-events:none;z-index:2}.service-media[data-caption-style=overlay] .service-media-card:hover figcaption,.service-media[data-caption-style=overlay] .service-media-card:focus-within figcaption{opacity:1;transform:none}.service-media[data-caption-style=overlay] figcaption a{pointer-events:auto}.service-media[data-caption-style=overlay] h3{color:#fff;font-size:16px}.service-media[data-caption-style=overlay] .service-media-symbol{top:12px;bottom:auto;right:12px;width:34px;height:34px}.service-media-posts .service-media-symbol{opacity:0;transition:opacity .22s}.service-media-posts .service-media-card:hover .service-media-symbol,.service-media-posts .service-media-card:focus-within .service-media-symbol{opacity:1}
.service-viewer{width:min(1080px,94vw);max-height:94dvh;border-radius:20px;box-shadow:0 24px 100px #0009}.service-viewer.is-portrait{width:min(480px,94vw,calc(72dvh * .5625 + 32px))}.service-viewer-shell{padding:56px 16px 16px}.service-viewer-close{top:8px;right:10px;width:38px;height:38px}.service-viewer-stage{background:#000;border-radius:12px;overflow:hidden}.service-viewer-stage img,.service-viewer-stage video{width:100%;max-height:72dvh;object-fit:contain}.service-viewer-footer{gap:12px;padding:14px 2px 0}.service-viewer-footer[hidden],.service-viewer-footer p[hidden]{display:none}.service-viewer-footer p{font-size:15px}.service-viewer-footer a{font-size:13px;flex-shrink:1}.service-viewer.is-portrait .service-viewer-footer{flex-wrap:wrap}
@media(max-width:1200px){.service-media-posts .service-media-track{grid-template-columns:repeat(3,minmax(0,1fr))}.service-media-posts[data-layout=slider] .service-media-card{flex-basis:calc((100% - 32px)/3)}}
@media(max-width:900px){.service-media-posts .service-media-track{grid-template-columns:repeat(2,minmax(0,1fr))}.service-media-posts[data-layout=slider] .service-media-card{flex-basis:46%}}
@media(max-width:600px){.service-media-posts .service-media-track{grid-template-columns:minmax(0,1fr)}.service-media-posts[data-layout=slider] .service-media-card{flex-basis:82%}.service-viewer-shell{padding:52px 10px 12px}.service-viewer.is-portrait{width:min(94vw,calc(70dvh * .5625 + 20px))}.service-viewer-stage img,.service-viewer-stage video{max-height:70dvh}}
@media(hover:none){.service-media-posts .service-media-symbol{opacity:1}}
@media(prefers-reduced-motion:reduce){.service-media[data-caption-style=overlay] .service-media-card figcaption{transition:none}}
.service-viewer{height:fit-content}

/* Per-service social-post counts, shared by grid and slider. */
.service-media-posts{--post-cols:4}
.service-media-posts[data-layout] .service-media-track{gap:16px;grid-template-columns:repeat(var(--post-cols),minmax(0,1fr))}
.service-media-posts[data-layout=slider] .service-media-card{flex-basis:calc((100% + 16px)/var(--post-cols) - 16px)}
.service-media-posts[data-cols-desktop="1"]{--post-cols:1}
.service-media-posts[data-cols-desktop="2"]{--post-cols:2}
.service-media-posts[data-cols-desktop="3"]{--post-cols:3}
.service-media-posts[data-cols-desktop="4"]{--post-cols:4}
.service-media-posts[data-cols-desktop="5"]{--post-cols:5}
.service-media-posts[data-cols-desktop="6"]{--post-cols:6}
@media(max-width:1024px){
.service-media-posts{--post-cols:2}
.service-media-posts[data-cols-tablet="1"]{--post-cols:1}
.service-media-posts[data-cols-tablet="2"]{--post-cols:2}
.service-media-posts[data-cols-tablet="3"]{--post-cols:3}
.service-media-posts[data-cols-tablet="4"]{--post-cols:4}
}
@media(max-width:767px){
.service-media-posts{--post-cols:1}
.service-media-posts[data-cols-mobile="1"]{--post-cols:1}
.service-media-posts[data-cols-mobile="2"]{--post-cols:2}
.service-media-posts[data-cols-mobile="3"]{--post-cols:3}
}

/* v1.4.8: hover captions and Work-style fullscreen media viewer. */
.service-media[data-caption-style=overlay] figcaption a{pointer-events:none}
.service-media[data-caption-style=overlay] .service-media-card:hover figcaption a,
.service-media[data-caption-style=overlay] .service-media-card:focus-within figcaption a{pointer-events:auto}
.service-media[data-caption-style=overlay] .service-media-symbol{top:12px;right:12px;bottom:auto;z-index:3}
.service-viewer,.service-viewer.is-portrait{inset:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none;background:rgba(4,4,7,.93);padding:0}
.service-viewer::backdrop{background:#0008;backdrop-filter:blur(14px)}
.service-viewer-shell{min-height:100%;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:72px 76px;gap:14px;position:static}
.service-viewer-stage{width:100%;max-width:1100px;flex-shrink:0;background:none;border-radius:0;overflow:visible}
.service-viewer-stage img,.service-viewer-stage video{width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 240px);border-radius:12px;border:1px solid var(--line,#333);object-fit:contain}
.service-viewer-stage img.is-full{width:100%;max-height:none}
.service-viewer-footer,.service-viewer.is-portrait .service-viewer-footer{width:100%;max-width:1100px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:0;text-align:center;flex-wrap:nowrap}
.service-viewer-footer p{font-family:"DM Mono",monospace;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted,#98989f);max-width:100%;line-height:1.6}
.service-viewer-footer .service-project-link{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 22px;border-radius:999px;background:var(--fg,#f4f4f5);color:var(--bg,#09090c);font-size:13px;text-decoration:none}
.service-viewer-footer .service-project-link:hover{background:var(--orange,#ff570b);color:#fff}
.service-viewer-close,.service-viewer-prev,.service-viewer-next{position:fixed;display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line,#333);border-radius:50%;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);color:var(--fg,#fff);cursor:pointer;z-index:4;font-size:22px}
.service-viewer-close{top:20px;right:20px}.service-viewer-prev,.service-viewer-next{top:calc(50% - 23px)}.service-viewer-prev{left:18px}.service-viewer-next{right:18px}
.service-viewer-prev:hover,.service-viewer-next:hover,.service-viewer-close:hover{background:var(--orange,#ff570b);color:#fff;border-color:var(--orange,#ff570b)}
.service-viewer [hidden]{display:none!important}
@media(max-width:640px){.service-viewer-shell{padding:76px 16px 90px}.service-viewer-stage img,.service-viewer-stage video{max-height:calc(100dvh - 290px)}.service-viewer-prev,.service-viewer-next{top:auto;bottom:18px}.service-viewer-prev{left:calc(50% - 58px)}.service-viewer-next{left:calc(50% + 12px);right:auto}.service-viewer-footer p{font-size:10px}.service-viewer-close{top:16px;right:16px}}

/* v1.4.8: reveal card icons with hover or keyboard focus. */
.service-media[data-caption-style=overlay] .service-media-symbol{opacity:0;transition:opacity .22s}
.service-media[data-caption-style=overlay] .service-media-card:hover .service-media-symbol,
.service-media[data-caption-style=overlay] .service-media-card:focus-within .service-media-symbol{opacity:1}
@media(hover:none){.service-media[data-caption-style=overlay] .service-media-symbol{opacity:1}}
