/* WORKS-only video hero. Case Studio retains its own assets and behavior. */
html[data-theme="light"] .works-page .site-header {
    position: fixed;
    inset: 0 0 auto;
    transition: background 200ms ease, border-color 200ms ease;
}
html[data-theme="light"] .works-page.wh-at-hero .site-header {
    background: transparent;
    border-color: transparent;
    backdrop-filter: none;
    box-shadow: none;
}
html[data-theme="light"] .works-page.wh-at-hero .site-header .brand-wordmark,
html[data-theme="light"] .works-page.wh-at-hero .site-header .brand-wordmark__accent,
html[data-theme="light"] .works-page.wh-at-hero .site-header .nav-items > li > a,
html[data-theme="light"] .works-page.wh-at-hero .site-header .language-switcher summary { color: #fffaf0; }
html[data-theme="light"] .works-page.wh-at-hero .site-header .language-switcher summary,
html[data-theme="light"] .works-page.wh-at-hero .site-header .estimate-chip {
    background: transparent;
    color: #fffaf0;
    border-color: rgba(255, 250, 240, .5);
    box-shadow: none;
}
html[data-theme="light"] .works-page.wh-at-hero .site-header .contact-chip {
    color: #173d39;
    background: #fffaf0;
    border-color: #fffaf0;
    box-shadow: none;
}
html[data-theme="light"] .works-page.wh-at-hero .site-header .nav-toggle-bar { background: #fffaf0; }
.works-page.wh-at-hero .site-consult-bar { visibility: hidden; pointer-events: none; }
.works-page .works-main { margin-top: 0; }
.works-page .works-main > .wh-hero {
    position: relative;
    isolation: isolate;
    clip-path: inset(0);
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100vh;
    height: 100svh;
    min-height: 720px;
    padding: 120px 40px;
    overflow: hidden;
    color: #fffaf0;
    background: #104d4b;
}
.wh-media { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.works-page .wh-video {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: 70% center;
}
.wh-media::after {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(3, 32, 31, .38), transparent 68%), linear-gradient(0deg, rgba(3, 32, 31, .2), transparent 24%);
}
.wh-content { position: relative; z-index: 1; width: min(610px, 48%); }
.works-page .wh-eyebrow {
    margin: 0 0 22px;
    color: #b7ddd2;
    font: 600 14px/1.5 Manrope, sans-serif;
    letter-spacing: .08em;
}
.wh-eyebrow > span { margin: 0 9px; color: rgba(183, 221, 210, .5); }
.works-page .wh-hero h1 {
    margin: 0 0 24px;
    color: #fffaf0;
    font-size: clamp(30px, 3.2vw, 48px);
    font-weight: 500;
    line-height: 1.22;
    letter-spacing: -.04em;
    word-break: keep-all;
    overflow-wrap: anywhere;
    text-wrap: balance;
    filter: none;
}
.works-page .wh-typewriter {
    position: relative;
    margin: 0 0 28px;
    color: #e5eee6;
    font-size: clamp(18px, 1.7vw, 24px);
    font-weight: 400;
    line-height: 1.5;
    letter-spacing: -.025em;
    word-break: keep-all;
    overflow-wrap: anywhere;
    text-wrap: pretty;
}
.wh-text-space { display: block; visibility: hidden; }
.wh-text-layer { position: absolute; inset: 0; }
.wh-cursor { display: inline-block; width: 2px; height: 1.1em; margin-left: 2px; vertical-align: middle; background: #fffaf0; animation: wh-blink 1s step-end infinite; }
.wh-cursor[hidden] { display: none; }
@keyframes wh-blink { 0%,100% { opacity: 1; } 50% { opacity: 0; } }
.wh-actions { display: flex; flex-wrap: wrap; gap: 8px 6px; }
.wh-hero.is-enhanced .wh-actions { opacity: 0; transform: translateY(8px); transition: opacity 400ms ease, transform 400ms ease; }
.wh-hero.is-enhanced.is-ready .wh-actions { opacity: 1; transform: none; }
.works-page .wh-pill {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    min-height: 40px;
    padding: 7px 18px;
    border: 1px solid transparent;
    border-radius: 999px;
    color: #173d39;
    background: #fffaf0;
    font-family: inherit;
    font-weight: 400;
    font-size: 15px;
    line-height: 1.4;
    white-space: nowrap;
    text-decoration: none;
    cursor: pointer;
    transition: color 200ms ease, background 200ms ease;
}
.works-page .wh-pill:hover { color: #fffaf0; background: #122f2d; }
.works-page .wh-pill--email { color: #fffaf0; border-color: rgba(255, 250, 240, .8); background: transparent; }
.works-page .wh-pill--email:hover { color: #173d39; background: #fffaf0; }
.wh-email { white-space: nowrap; text-decoration: underline; text-underline-offset: 3px; user-select: text; }
.wh-hero a:focus-visible, .wh-hero button:focus-visible { outline: 2px solid #fffaf0; outline-offset: 4px; }
.works-page .wh-copy-status { position: absolute; margin: 12px 0 0; color: #fffaf0; font-size: 14px; line-height: 1.5; text-wrap: pretty; }
.wh-footer { position: absolute; z-index: 1; inset: auto 40px 30px; display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.works-page .wh-scroll { display: flex; gap: 24px; align-items: center; color: #fffaf0; font-size: 14px; text-decoration: none; }
.wh-count { margin-left: 6px; color: #b7ddd2; }
.works-page .wh-hint { display: flex; gap: 10px; margin: 0; color: #d3e4db; font-size: 14px; }
.works-page #all-works { scroll-margin-top: 104px; }
.works-page .works-reading { margin: 0 0 20px; font-size: 14px; text-align: right; }
.works-page .works-reading a { text-decoration: underline; text-underline-offset: 4px; color: var(--wd-muted); }
@media (pointer: coarse) { .wh-hero { touch-action: pan-y; } .works-page .wh-hint { display: none; } }
@media (max-width: 767px) {
    .works-page .works-main > .wh-hero { justify-content: flex-end; min-height: 720px; padding: 120px 20px 96px; }
    .wh-content { width: 100%; max-width: 580px; }
    .wh-media::after { background: linear-gradient(0deg, rgba(3, 32, 31, .94), rgba(3, 32, 31, .7) 38%, rgba(3, 32, 31, .05) 78%); }
    .works-page .wh-eyebrow { margin-bottom: 16px; font-size: 13px; }
    .works-page .wh-hero h1 { margin-bottom: 18px; font-size: clamp(28px, 7.6vw, 36px); line-height: 1.25; }
    .works-page .wh-typewriter { margin-bottom: 22px; font-size: 18px; line-height: 1.5; }
    .works-page .wh-pill { min-height: 40px; padding-inline: 15px; font-size: 14px; }
    .wh-footer { inset: auto 20px 24px; }
    .works-page .wh-scroll { width: 100%; justify-content: space-between; gap: 10px; font-size: 13px; }
    .works-page .wh-hint { display: none; }
}
@media (min-width: 640px) and (max-width: 767px) {
    .works-page .works-main > .wh-hero { padding-inline: 32px; }
    .wh-footer { left: 32px; right: 32px; }
}
@media (prefers-reduced-motion: reduce) {
    .wh-hero *, .works-page .site-header { animation: none !important; transition: none !important; }
    .wh-hero.is-enhanced .wh-actions { opacity: 1; transform: none; }
    .wh-cursor, .works-page .wh-hint { display: none; }
}
