
/* AREVIN V6. Shared navigation, redaction and project ticker. */
:root { --crimson:#912538; --roll-crimson:#d66b7e; --nav-ease:cubic-bezier(.22,.8,.2,1); }
html { scroll-padding-top:30px; }
.sr-only {position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;}
.site-nav {display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:31px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.15);z-index:50;}
.site-nav.is-detail {position:relative;top:auto;left:auto;right:auto;}
.site-nav .brand {display:flex;align-items:center;gap:12px;flex-shrink:0;}
.site-nav .symbol {width:29px;height:30px;color:#eae7e2;}
.site-nav .brand-words {display:flex;flex-direction:column;}
.site-nav .brand-title {font-family:"Inter Display",Arial,sans-serif;line-height:.89;font-weight:950;letter-spacing:-.075em;font-size:29px;}
.site-nav .brand-sub {margin-top:5px;text-align:center;font-size:7px;font-weight:750;letter-spacing:.54em;padding-left:.43em;}
.site-nav .nav-links {display:flex;gap:clamp(16px,2.8vw,46px);align-items:center;}
.site-nav .nav-links a {font-size:10px;font-weight:700;letter-spacing:.18em;position:relative;}
.site-nav .nav-links a:after {display:none!important;}
.site-nav .nav-link {display:inline-flex;align-items:center;padding:12px 0;min-height:40px;}
.nav-word {display:inline-flex;white-space:nowrap;line-height:1.3;}
.nav-glyph {display:inline-block;position:relative;overflow:hidden;vertical-align:top;height:1.3em;}
.glyph-face,.glyph-echo {display:block;transition:transform .38s var(--nav-ease);transition-delay:calc(var(--i) * 12ms);will-change:transform;}
.glyph-echo {position:absolute;inset:0;transform:translateY(120%);color:var(--roll-crimson);}
.nav-roll:is(:hover,:focus-visible) .glyph-face,.nav-projects.is-open .projects-link .glyph-face {transform:translateY(-120%);}
.nav-roll:is(:hover,:focus-visible) .glyph-echo,.nav-projects.is-open .projects-link .glyph-echo {transform:translateY(0);}
.site-nav .hub-nav {border-left:1px solid rgba(255,255,255,.25);padding-left:21px;color:#dfcdd0;gap:9px;white-space:nowrap;}
.site-nav .hub-nav .nav-word {margin-left:0;}
.site-nav .hub-arrow {font-size:13px;margin:0;}
.site-nav .menu-toggle {display:none;background:none;border:0;color:#f0ece8;font:700 10px Arial,sans-serif;letter-spacing:.14em;min-height:44px;cursor:pointer;}
.nav-projects {position:relative;}
.projects-trigger-row {display:flex;align-items:center;gap:4px;}
.projects-toggle {height:40px;width:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:0;background:none;color:#b8acb0;padding:0;}
.projects-toggle svg {width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .25s ease,color .25s ease;}
.nav-projects.is-open .projects-toggle svg {transform:rotate(180deg);color:var(--roll-crimson);}
.projects-submenu {position:absolute;top:100%;left:-24px;min-width:255px;padding:10px 24px;background:rgba(18,16,19,.98);border:1px solid rgba(240,231,230,.15);border-top:2px solid #912538;box-shadow:0 20px 55px rgba(0,0,0,.36);visibility:hidden;opacity:0;transform:translateY(7px);transition:opacity .2s ease,transform .25s var(--nav-ease);z-index:60;}
.nav-projects.is-open .projects-submenu {visibility:visible;opacity:1;transform:none;}
.site-nav .submenu-link {display:flex;justify-content:space-between;align-items:center;gap:28px;padding:21px 0;white-space:nowrap;font-size:10px;letter-spacing:.15em;min-height:55px;}
.submenu-link + .submenu-link {border-top:1px solid rgba(255,255,255,.12);}
.submenu-arrow {color:#b6a7ab;font-size:16px;transition:transform .3s,color .3s;}
.submenu-link:hover .submenu-arrow {color:var(--roll-crimson);transform:translate(2px,-2px);}
#projects,#feature-films,#short-films {scroll-margin-top:28px;}
.site-nav a:focus-visible,.site-nav button:focus-visible,.project-ticker a:focus-visible,.project-ticker button:focus-visible,.motion-toggle:focus-visible {outline:2px solid #d66b7e;outline-offset:5px;}
/* No full-page slide or scroll-jacking: native document scroll is retained. */
.project-caption .project-type time {color:#d0c2c5;}
.feature-art .feature-shape,.feature-art .feature-arc {display:none;}
.feature-art {display:flex;align-items:center;justify-content:center;}
.feature-art:after {opacity:.25;}
.redaction-stage {position:relative;width:80%;max-width:840px;padding:36px 0;isolation:isolate;pointer-events:none;user-select:none;}
.redaction-stage::before {content:"";position:absolute;inset:-45% -10%;background:radial-gradient(ellipse,rgba(157,38,62,.18),transparent 67%);filter:blur(24px);animation:redaction-haze 9s ease-in-out infinite alternate;}
.redaction-field {display:flex;flex-direction:column;gap:24px;position:relative;}
.cipher-line {position:relative;width:93%;height:clamp(24px,3.5vw,62px);isolation:isolate;}
.cipher-line:nth-child(2) {width:76%;margin-left:7%;}
.cipher-line:nth-child(3) {width:56%;margin-left:2%;}
.cipher-glyphs {display:block;position:absolute;inset:0;background:repeating-linear-gradient(90deg,#e7d9d7 0 9px,transparent 9px 17px,#c7b3b7 17px 30px,transparent 30px 39px);filter:blur(13px);opacity:.63;transform:translateX(0);animation:cipher-drift 6s ease-in-out infinite alternate;}
.cipher-line:nth-child(2) .cipher-glyphs {animation-delay:-2.7s;animation-duration:7.4s;}
.cipher-line:nth-child(3) .cipher-glyphs {animation-delay:-4.5s;animation-duration:5.7s;}
.censor-bar {position:absolute;left:-2%;right:0;top:24%;height:56%;background:#08070a;box-shadow:0 0 16px 2px rgba(7,6,8,.55);border-top:1px solid rgba(251,235,239,.055);z-index:2;}
.censor-bar::after {content:"";position:absolute;top:-1px;bottom:-1px;width:14%;background:linear-gradient(90deg,transparent,rgba(182,61,84,.22),transparent);animation:censor-scan 5.6s ease-in-out infinite alternate;}
.cipher-line:nth-child(2) .censor-bar::after {animation-delay:-2s;animation-duration:7.3s;}
.cipher-line:nth-child(3) .censor-bar::after {animation-delay:-3.4s;}
.redaction-inline {width:86%;padding:0;margin:25px 0 21px;}
.redaction-inline .redaction-field {gap:9px;}
.redaction-inline .cipher-line {height:12px;}
.redaction-inline .cipher-line:nth-child(3) {display:none;}
.redaction-inline .cipher-glyphs {filter:blur(5px);opacity:.55;}
.redaction-inline .censor-bar {height:60%;top:20%;}
.detail-hero.feature {min-height:440px;}
.detail-hero.feature .redaction-stage {width:64%;}
.detail-hero.feature .cipher-line {height:clamp(33px,4.8vw,74px);}
.feature-art .feature-overline,.feature-art .feature-art-caption {position:absolute;z-index:4;}
.feature-card:hover .cipher-glyphs {opacity:.72;}
@keyframes cipher-drift {0%{transform:translateX(-8px) skewX(-2deg);filter:blur(12px);}45%{filter:blur(17px);}100%{transform:translateX(13px) skewX(2deg);filter:blur(14px);}}
@keyframes censor-scan {0%{left:0;opacity:.3;}50%{opacity:.9;}100%{left:86%;opacity:.25;}}
@keyframes redaction-haze {to{transform:translate(8%,-6%);opacity:.45;}}
/* Every film is reachable here; the second group is a decorative seamless-loop copy. */
.project-ticker {padding:33px 0 38px;border-top:1px solid rgba(247,244,238,.16);background:linear-gradient(180deg,#0d0b0e,#100b0f);overflow:hidden;}
.ticker-heading {display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;}
.ticker-heading h2 {margin:0;color:#bfb1b6;font-size:10px;font-weight:700;letter-spacing:.2em;}
.ticker-tools {display:flex;align-items:center;gap:27px;}
.ticker-tools .ticker-all {font-size:10px;letter-spacing:.17em;color:#ddd3d7;white-space:nowrap;}
.ticker-tools .ticker-all:hover {color:#edbdc7;}
.ticker-control {border:0;background:transparent;color:#bfb1b6;display:flex;align-items:center;gap:8px;font:600 9px Arial,sans-serif;letter-spacing:.15em;padding:12px 0;cursor:pointer;min-height:38px;}
.ticker-control:hover {color:#fff;}
.ticker-control-symbol {font-size:13px;width:13px;}
.ticker-viewport {overflow-x:hidden;padding:12px 0 22px;scrollbar-width:none;}
.ticker-viewport::-webkit-scrollbar {display:none;}
.ticker-track {display:flex;align-items:center;width:max-content;animation:project-stream var(--ticker-duration) linear infinite;will-change:transform;}
.ticker-group {display:flex;align-items:center;flex-shrink:0;list-style:none;margin:0;padding:0;gap:0;width:max-content;}
.ticker-group li {display:block;flex-shrink:0;}
.ticker-link {display:flex;align-items:baseline;gap:22px;white-space:nowrap;padding:9px 40px 11px 0;font-family:"Inter Display","Arial Black",Arial,sans-serif;text-decoration:none!important;}
.ticker-title {font-size:clamp(40px,5.7vw,85px);font-weight:900;line-height:1.05;letter-spacing:-.065em;text-transform:uppercase;color:#e7dfdd;transition:color .24s;}
.ticker-year {font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:clamp(12px,1.25vw,18px);font-weight:400;letter-spacing:.02em;color:#b9a3ab;align-self:flex-start;margin-top:.65em;}
.ticker-divider {font-family:Arial,sans-serif;font-size:clamp(24px,3.8vw,55px);font-weight:400;line-height:1;color:#912538;margin:0 12px 0 15px;}
.ticker-link:hover .ticker-title,.ticker-link:focus-visible .ticker-title {color:#d66b7e;}
.ticker-link.is-current .ticker-year {color:#e09aaa;}
.project-ticker.is-paused .ticker-track,.project-ticker:has(.ticker-link:focus-visible) .ticker-track {animation-play-state:paused;}
.project-ticker.is-keyboard .ticker-track {animation:none;transform:none;}
.project-ticker.is-keyboard .ticker-viewport {overflow-x:auto;}
@media(hover:hover) and (pointer:fine){.project-ticker:hover .ticker-track {animation-play-state:paused;}}
@keyframes project-stream {to{transform:translateX(-50%);}}
.motion-toggle {border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;padding:0;cursor:pointer;white-space:nowrap;}
.motion-toggle:hover {color:#fff;}
.motion-off .cipher-glyphs,.motion-off .censor-bar:after,.motion-off .redaction-stage:before,.motion-off .ticker-track {animation-play-state:paused!important;}
.motion-off .ticker-track {animation:none;transform:none;}
.motion-off .ticker-duplicate {display:none;}
.motion-off .ticker-viewport {overflow-x:auto;}
.motion-off .ticker-control {display:none;}
.detail-footer .detail-footer-tools {display:flex;gap:28px;align-items:center;flex-wrap:wrap;}
.project-preview {position:fixed;inset:0;z-index:90;overflow-y:auto;overscroll-behavior:contain;background:#0b0b0d;color:#f0ece8;scroll-behavior:smooth;}
.project-preview[hidden] {display:none;}
body.detail-active {overflow:hidden;}
body.detail-active > header,body.detail-active > main {visibility:hidden;}
.project-preview .site-nav.is-detail {visibility:visible;}
@media(max-width:1000px){.site-nav .nav-links {gap:17px;}.site-nav .hub-nav {padding-left:14px;}.site-nav .nav-links a {font-size:9px;}.site-nav .brand-title{font-size:26px;}}
@media(max-width:760px){
 .site-nav {padding-top:19px;padding-bottom:18px;align-items:center;}
 .site-nav .brand-title {font-size:24px;}.site-nav .symbol {width:25px;}
 .site-nav .menu-toggle {display:block;}
 .site-nav .nav-links {display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 24px;background:#111013;border-bottom:1px solid rgba(255,255,255,.18);max-height:calc(100dvh - 90px);overflow-y:auto;}
 .site-nav .nav-links.open {display:flex;}
 .site-nav .nav-links a.nav-link {font-size:12px;min-height:50px;padding:17px 0;}
 .site-nav .hub-nav {border-left:0;border-top:1px solid rgba(255,255,255,.16);padding-left:0;margin-top:10px;}
 .site-nav .projects-trigger-row {justify-content:space-between;}
 .site-nav .projects-link {flex:1;}
 .site-nav .projects-toggle {height:50px;width:48px;}
 .projects-submenu {position:static;display:none;min-width:0;visibility:visible;opacity:1;transform:none;box-shadow:none;background:#1b1318;border:0;border-left:2px solid #912538;padding:0 18px;margin:0 0 9px;}
 .nav-projects.is-open .projects-submenu {display:block;}
 .site-nav .submenu-link {min-height:52px;padding:18px 0;font-size:10px;}
 .redaction-stage {width:80%;}.redaction-field{gap:20px;}
 .feature-art .cipher-line {height:32px;}
 .detail-hero.feature {min-height:310px;}
 .detail-hero.feature .redaction-stage {width:78%;}
 .ticker-heading {align-items:center;margin-bottom:13px;}
 .ticker-tools {gap:20px;}
 .ticker-tools .ticker-all,.ticker-heading h2{font-size:9px;letter-spacing:.12em;}
 .project-ticker {padding-top:23px;padding-bottom:16px;}
 .ticker-link {gap:14px;padding-right:22px;}.ticker-title{font-size:48px;}
 .ticker-divider {margin:0 8px;font-size:30px;}
 .ticker-track {animation-duration:var(--ticker-duration);}
 .ticker-year {font-size:13px;}
 .detail-footer .detail-footer-tools {gap:19px;}
}
@media(max-width:370px){.ticker-tools{gap:13px;}.ticker-tools .ticker-all{font-size:8px;}.ticker-heading h2{font-size:8px;}}
@media(prefers-reduced-motion:reduce){
 html,.project-preview {scroll-behavior:auto!important;}
 .cipher-glyphs,.censor-bar:after,.redaction-stage:before,.ticker-track {animation:none!important;transform:none;}
 .ticker-duplicate,.ticker-control {display:none;}.ticker-viewport {overflow-x:auto;}
 .glyph-face,.glyph-echo,.projects-submenu,.projects-toggle svg {transition:none!important;}
 .motion-toggle {display:none;}
}

/* V6: quiet category links, directional header, and approved hero monogram. */
:root {--nav-height:100px;--ticker-duration:45.2173913043s;}
html {scroll-padding-top:calc(var(--nav-height) + 18px);}
#projects,#feature-films,#short-films {scroll-margin-top:0;}
#top {scroll-margin-top:0;}
.project-preview {scroll-padding-top:calc(var(--nav-height) + 18px);}
.site-nav.nav-auto,.site-nav.is-detail.nav-auto {
 position:fixed;top:0;left:0;right:0;transform:translateY(0);
 background:transparent;transition:transform .16s var(--nav-ease),background-color .18s ease,border-color .18s ease;
 will-change:transform;
}
.site-nav.nav-auto.is-scrolled,.site-nav.is-detail.nav-auto {
 background:rgba(12,11,14,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
 border-bottom-color:rgba(247,244,238,.18);
}
.site-nav.nav-auto.is-nav-away {
 transform:translateY(calc(-100% - 3px));transition-duration:.22s,.18s,.18s;pointer-events:none;
}
.site-nav.nav-auto:focus-within {pointer-events:auto;}
.navigation-spacer {height:var(--nav-height);flex:none;pointer-events:none;}
.submenu-label {display:inline;}
.site-nav .submenu-link {transition:color .16s ease;}
.site-nav .submenu-link:is(:hover,:focus-visible) {color:var(--roll-crimson);}
.submenu-arrow {transition:color .16s ease;}
.submenu-link:hover .submenu-arrow {transform:none;}
/* The two unfolding pieces play at 92% of V5 speed. All delays and the
   wordmark, subtitle, parent entrance and intro-exit timing stay unchanged. */
.intro-mark .m-right {animation-duration:1.0869565217s;}
.intro-mark .m-left {animation-duration:.8695652174s;}
/* Use the same two vector paths as the approved intro, not a typeset A.
   It is a quiet, stationary watermark rather than another animation. */
.hero-monogram {
 position:absolute;right:3vw;top:51%;width:clamp(250px,34vw,580px);
 aspect-ratio:140 / 124;transform:translateY(-50%);color:#eae7e2;
 opacity:.10;z-index:4;pointer-events:none;
}
.hero-monogram svg {width:100%;height:100%;display:block;}
@media(max-width:760px){
 :root {--nav-height:83px;--ticker-duration:38.2608695652s;}
 .hero-monogram {right:-3vw;top:47%;width:clamp(215px,62vw,380px);opacity:.065;}
}
@media(prefers-reduced-motion:reduce){
 .site-nav.nav-auto,.site-nav.is-detail.nav-auto {transition:none!important;}
}

/* V7: feature-first project landing, with a full viewport of breathing room.
   This is normal document flow: no snapping, fixed-height cropping, or scroll locking. */
.feature-section {
 display:flex;flex-direction:column;
 min-height:calc(100vh - var(--nav-height) - 18px);
 min-height:calc(100svh - var(--nav-height) - 18px);
 padding-bottom:clamp(36px,5svh,76px);
}
.feature-section > .section-label {flex:none;margin-bottom:22px;}
.feature-section > .splitline {flex:0 0 1px;}
.work-section .feature-heading {flex:none;margin:26px 0 30px;gap:24px;}
.work-section .feature-heading p {margin:0 0 4px;}
.feature-section > .feature-card {
 flex:1 0 auto;
 min-height:clamp(390px,48svh,680px);
}
.feature-section .feature-art {min-height:0;}
.work-section > .shorts-heading {margin-top:clamp(44px,6svh,88px);}
@media(max-width:680px) {
 .feature-section {padding-bottom:36px;}
 .feature-section > .section-label {margin-bottom:19px;}
 .work-section .feature-heading {display:flex;align-items:end;margin:25px 0 27px;gap:15px;}
 .work-section .feature-heading p {font-size:8px;max-width:110px;text-align:right;margin-bottom:3px;}
 .feature-section > .feature-card {flex:none;min-height:0;}
 .feature-section .feature-art {min-height:240px;}
 .work-section > .shorts-heading {margin-top:42px;}
}
