
/* V6 / Nocturne – photographic editorial direction, accessible motion */
:root{--v6-gold:#dfbd85;--v6-ink:#f7f2e8}
.v6-progress{position:fixed;top:0;left:0;width:0;height:2px;background:var(--v6-gold);z-index:170;pointer-events:none;transition:width .07s linear}
.v6-hero-highlight{position:absolute;right:var(--pad);bottom:108px;color:#fff9;font:600 9px/1.65 var(--sans);letter-spacing:.20em;text-transform:uppercase;text-align:right;z-index:3}
.v6-hero-highlight span{display:block;color:var(--v6-gold);font:400 27px/1.2 var(--serif);letter-spacing:0;margin-top:4px;text-transform:none}
.home-hero .home-hero-content{max-width:870px}.home-hero h1{font-size:clamp(52px,7.4vw,112px);line-height:.97;max-width:960px;letter-spacing:-.06em}.home-hero-content>p{max-width:540px}
.v6-hero-eyebrow{display:flex;align-items:center;gap:12px}.v6-hero-eyebrow:before{content:'';width:35px;height:1px;background:var(--gold)}
.v6-journey{padding:clamp(70px,8vw,124px) var(--pad) 30px;max-width:1560px;margin:auto;position:relative}
.v6-journey-kicker{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #d0bc925c;padding-top:18px;color:var(--gold);font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}
.v6-journey-lede{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.7fr);gap:clamp(25px,5vw,90px);align-items:end;margin:35px 0 60px}
.v6-journey-lede h2{font:400 clamp(44px,5.7vw,88px)/1.03 var(--serif);letter-spacing:-.055em}.v6-journey-lede h2 em{color:var(--gold)}
.v6-journey-lede p{color:var(--muted);font-size:15px;line-height:1.9;max-width:420px}
.v6-scene{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:clamp(30px,6vw,100px);margin:0 0 clamp(65px,9vw,130px);min-height:480px;position:relative}
.v6-scene:nth-of-type(even) .v6-scene-media{order:2}.v6-scene:nth-of-type(even) .v6-scene-content{order:1}
.v6-scene-media{min-width:0;position:relative;aspect-ratio:1.15;overflow:hidden;background:#1a211a}
.v6-scene-media img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.v6-scene-media:hover img{transform:scale(1.035)}
.v6-scene-media:after{content:'';inset:0;position:absolute;pointer-events:none;background:linear-gradient(180deg,transparent 55%,#05070675)}
.v6-scene-media .v6-photo-label{position:absolute;z-index:2;left:23px;bottom:18px;color:#fff;font:600 10px/1.5 var(--sans);letter-spacing:.15em}
.v6-scene-content{min-width:0;padding:25px 0;max-width:490px}
.v6-scene-step{color:var(--gold);font-size:11px;font-weight:650;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:20px}
.v6-scene-step:after{content:'';height:1px;background:#e4be8450;width:90px}
.v6-scene-content h3{font:400 clamp(40px,4.5vw,68px)/1.05 var(--serif);letter-spacing:-.05em;margin:26px 0}
.v6-scene-content h3 em{color:var(--gold)}
.v6-scene-content p{color:var(--muted);line-height:1.95;max-width:440px;margin-bottom:32px}
.v6-scene-content a{display:inline-flex;align-items:center;gap:32px;min-height:49px;border-bottom:1px solid var(--gold);font-size:11px;font-weight:650;letter-spacing:.13em;text-transform:uppercase;transition:gap .2s,color .2s}
.v6-scene-content a:hover{gap:42px;color:var(--gold)}
.v6-scene:after{content:'';position:absolute;bottom:calc(clamp(-65px,-4.5vw,-33px));left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,#e3c68a25,transparent)}
.v6-journey-end{margin-top:-20px;padding-bottom:65px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:center}
.v6-journey-end span{color:var(--gold);font:600 10px var(--sans);letter-spacing:.15em;text-transform:uppercase}
.v6-journey-end a{font-size:13px;border-bottom:1px solid var(--gold);padding-bottom:8px}
.v6-flow-divider{margin:0 auto;max-width:1500px;padding:25px var(--pad);display:flex;justify-content:center;gap:15px;align-items:center;color:#d2b88777;font-size:11px;letter-spacing:.15em}
.v6-flow-divider:before,.v6-flow-divider:after{content:'';height:1px;background:#d2b88723;width:min(130px,22vw)}
.v6-gallery-intro{max-width:var(--max);margin:55px auto 40px;display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(30px,5vw,75px);align-items:center}
.v6-gallery-intro-media{aspect-ratio:1.05;overflow:hidden;position:relative}.v6-gallery-intro-media img{object-fit:cover;object-position:center 38%}
.v6-gallery-intro-media:after{content:'';position:absolute;inset:0;border:1px solid #dbc49a40;pointer-events:none}
.v6-gallery-intro-copy small{color:var(--gold);font:600 10px var(--sans);letter-spacing:.2em}
.v6-gallery-intro-copy h2{font:400 clamp(36px,4.5vw,69px)/1.08 var(--serif);margin:24px 0;letter-spacing:-.05em}
.v6-gallery-intro-copy p{color:var(--muted);line-height:2;max-width:450px}
.v6-gallery-count{color:var(--gold);margin-top:30px;font:400 26px var(--serif)}
/* Asymmetric mosaic with deliberate crops. Filters continue to reflow the same DOM. */
.gallery-page .photo-grid{grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-flow:row dense;gap:12px}
.gallery-page .photo-card,.gallery-page .photo-card:nth-child(7n + 1),.gallery-page .photo-card:nth-child(9n + 5){grid-row:auto;grid-column:span 4;height:clamp(260px,27vw,420px);min-width:0}
.gallery-page .photo-card:nth-child(8n + 1){grid-column:span 7;height:clamp(345px,38vw,560px)}
.gallery-page .photo-card:nth-child(8n + 2){grid-column:span 5;height:clamp(345px,38vw,560px)}
.gallery-page .photo-card:nth-child(8n + 3),.gallery-page .photo-card:nth-child(8n + 6){grid-column:span 6;height:clamp(320px,33vw,490px)}
.gallery-page .photo-card:nth-child(8n + 5){grid-column:span 4}
.gallery-page .photo-card img{object-position:50% 37%}
.gallery-page .photo-card:nth-child(8n + 1) img{object-position:50% 33%}
.gallery-page .photo-card:nth-child(8n + 2) img{object-position:50% 25%}
.gallery-page .photo-card:nth-child(8n + 6) img{object-position:50% 48%}
.gallery-page .filters{position:sticky;top:0;z-index:16;background:#101614ed;padding:14px 0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);margin:25px auto 26px}
.gallery-page .photo-caption strong{font-size:clamp(18px,2.1vw,30px)}
.v6-gallery-foot{max-width:var(--max);margin:60px auto 0;padding:34px 0;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:25px;justify-content:space-between;align-items:center}
.v6-gallery-foot p{font:400 28px var(--serif)}.v6-gallery-foot a{border-bottom:1px solid var(--gold);font-size:12px;padding-bottom:8px}
.v6-story-tail{margin:0 auto;max-width:1450px;padding:25px var(--pad) 95px}
.v6-story-tail a{display:grid;grid-template-columns:1fr auto;gap:18px;border-top:1px solid #d8bd8a49;padding:25px 5px;align-items:center}
.v6-story-tail small{font-size:10px;color:var(--gold);letter-spacing:.15em}.v6-story-tail strong{display:block;font:400 clamp(27px,3vw,44px) var(--serif);margin-top:10px}.v6-story-tail b{color:var(--gold);font-size:28px}
.v6-reveal{opacity:1;transform:none}
@media(prefers-reduced-motion:no-preference){.v6-enhanced .v6-reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s cubic-bezier(.16,1,.3,1)}.v6-enhanced .v6-reveal.v6-visible{opacity:1;transform:none}}
@media(max-width:800px){.v6-hero-highlight{display:none}.v6-journey{padding:65px var(--pad) 5px}.v6-journey-lede{display:block;margin:30px 0 48px}.v6-journey-lede p{margin-top:25px}.v6-scene{min-height:0;grid-template-columns:1fr;gap:22px;margin-bottom:75px}.v6-scene:nth-of-type(even) .v6-scene-media{order:0}.v6-scene:nth-of-type(even) .v6-scene-content{order:0}.v6-scene-media{aspect-ratio:1.35}.v6-scene-content{padding:6px 0 0}.v6-scene-content h3{font-size:clamp(40px,9vw,58px);margin:16px 0}.v6-scene-content p{margin-bottom:20px}.v6-gallery-intro{grid-template-columns:1fr;margin-top:25px}.v6-gallery-intro-media{aspect-ratio:1.2}.gallery-page .photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.gallery-page .photo-card,.gallery-page .photo-card:nth-child(n){grid-column:span 1;height:250px}.gallery-page .photo-card:nth-child(5n + 1){grid-column:span 2;height:380px}.gallery-page .photo-card:nth-child(5n + 1) img{object-position:50% 28%}.gallery-page .photo-card img{object-position:50% 32%}.gallery-page .filters{top:0}.v6-journey-end{flex-wrap:wrap}}
@media(max-width:420px){.home-hero h1{font-size:clamp(44px,11vw,58px)}.v6-journey-lede h2{font-size:44px}.v6-scene-media{aspect-ratio:1.15}.gallery-page .photo-card,.gallery-page .photo-card:nth-child(n){height:210px}.gallery-page .photo-card:nth-child(5n + 1){height:300px}.v6-gallery-intro-copy h2{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.v6-scene-media img{transition:none!important}.gallery-page .photo-card img{transition:none!important}}
/* Mobile photo art direction: reserve the upper portion for Taro, lower portion for readable copy. */
@media(max-width:780px){
.home-hero-media{inset:0 0 auto;height:64%;overflow:hidden}
.home-hero-media picture,.home-hero-media picture img{height:100%}
.home-hero-media img{object-position:center 27%!important}
.home-hero-shade{background:linear-gradient(0deg,#0b110fff 0%,#0b110ffd 25%,#0b110fed 37%,#0b110f68 53%,#0b110f00 78%)}
.home-hero-content{padding-top:32px;padding-bottom:104px}
}
