/* Photography & Video · page refine v1 (2026-10-24) · prefix vx- · replaces photography-video.css on this page */
.pv-page .pv-skip{position:absolute;left:16px;top:-100px;z-index:1000;background:#fff;padding:14px}.pv-page .pv-skip:focus{top:12px}
.pv-page{--vx-ink:#17171b;--vx-soft:#6e6c66;--vx-line:#e4e1da;--vx-paper:#f6f5f1;--vx-pink:#E84274;--vx-pink-ink:#c72d5c;--vx-green:#1d7a46;
  --vx-shadow:0 1px 1px rgba(23,23,27,.06),0 22px 44px -26px rgba(23,23,27,.5);background:#fff}
.pv-page main p{max-width:none}
/* Acceptance correction: readable overlays without changing fonts, geometry or crops. */
.pv-page .vx-fr b,.pv-page .vx-reel-t,.pv-page .vx-reel-b,.pv-page .vx-web-hero p{background:rgba(13,12,11,.8);box-shadow:0 0 0 4px rgba(13,12,11,.8)}
.pv-page .vx-reel-b span{color:#171719}
.pv-page .vx-files .vx-head>p{color:#484744}
.pv-page .vx-day .kicker{color:#fff;background:#171719}
.pv-page .vx-files .kicker{background:#fff}
:where(.pv-page) :where(.vx-sl,.vx-app,.vx-doc,.vx-call,.vx-roles,.vx-drive,.vx-stage,.vx-hero-chip,.vx-facts) p{margin:0;line-height:1.35;color:inherit;font-size:inherit;max-width:none}
.pv-page main section i{font-style:normal}
.pv-page main section{position:relative}
.vx-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;color:var(--vx-ink);text-decoration:none}
.vx-link:hover{color:var(--vx-pink-ink)}.vx-link svg{width:16px;height:16px}
.vx-tag{position:absolute;right:12px;top:12px;display:inline-block;font:600 10px/1 'Outfit',sans-serif;letter-spacing:.1em;text-transform:uppercase;padding:5px 8px;border-radius:99px;background:#2b2b2e;color:#fff;white-space:nowrap;z-index:3}
.vx-swipe{display:none}
.vx-head{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:56px;align-items:end;margin-bottom:40px}
.pv-page .vx-head h2,.pv-page .vx-head-s h2{margin:0;max-width:18ch}
.pv-page .vx-head>p,.pv-page .vx-head-s>p{margin:0;color:var(--vx-soft);font-size:1.05rem;line-height:1.6}
.pv-page .vx-head-s>p{margin-top:18px;max-width:46ch}
.vx-photo-bg,.vx-dark{isolation:isolate;overflow:hidden}
.vx-bg{position:absolute;inset:0;z-index:-2}.vx-bg img{width:100%;height:100%;object-fit:cover;display:block}
.vx-photo-bg::after,.vx-dark::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none}
.vx-doc-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:12px;margin-bottom:12px!important;border-bottom:1px solid #eeece7;font-size:.82rem}
.vx-doc-h b{font-size:1rem;color:var(--vx-ink)}.vx-doc-h span{color:var(--vx-soft);font-size:.76rem}

/* tabs (CSS-only radio + label) */
.vx-tab-in{position:absolute;opacity:0;pointer-events:none}
.vx-tab-l{display:inline-flex;gap:4px;padding:4px;border-radius:99px;background:var(--vx-paper);margin-bottom:24px;max-width:100%;overflow-x:auto;scrollbar-width:none}
.vx-tab-l::-webkit-scrollbar{display:none}
.vx-tab-l label{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:99px;font-weight:600;font-size:.92rem;color:var(--vx-soft);cursor:pointer;white-space:nowrap;transition:background .2s,color .2s}
.vx-tab-l label small{font-size:.7rem;opacity:.7}
.vx-panel{display:none;position:relative}
.vx-tabs .vx-tab-in:nth-of-type(1):checked~.vx-panel:nth-of-type(2),.vx-tabs .vx-tab-in:nth-of-type(2):checked~.vx-panel:nth-of-type(3),
.vx-tabs .vx-tab-in:nth-of-type(3):checked~.vx-panel:nth-of-type(4),.vx-tabs .vx-tab-in:nth-of-type(4):checked~.vx-panel:nth-of-type(5){display:block;animation:vxIn .35s cubic-bezier(.2,.7,.2,1)}
.vx-tabs .vx-tab-in:nth-of-type(1):checked~.vx-tab-l label:nth-child(1),.vx-tabs .vx-tab-in:nth-of-type(2):checked~.vx-tab-l label:nth-child(2),
.vx-tabs .vx-tab-in:nth-of-type(3):checked~.vx-tab-l label:nth-child(3),.vx-tabs .vx-tab-in:nth-of-type(4):checked~.vx-tab-l label:nth-child(4){background:var(--vx-ink);color:#fff}
.vx-tabs .vx-tab-in:nth-of-type(1):focus-visible~.vx-tab-l label:nth-child(1),.vx-tabs .vx-tab-in:nth-of-type(2):focus-visible~.vx-tab-l label:nth-child(2),
.vx-tabs .vx-tab-in:nth-of-type(3):focus-visible~.vx-tab-l label:nth-child(3),.vx-tabs .vx-tab-in:nth-of-type(4):focus-visible~.vx-tab-l label:nth-child(4){outline:2px solid var(--vx-pink);outline-offset:2px}
@keyframes vxIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* 01 hero */
.vx-hero-sec{background:#fff}
.vx-hero{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.1fr);gap:56px;align-items:center}
.pv-page .vx-hero-copy>p:not(.eyebrow){max-width:44ch;color:var(--vx-soft);font-size:1.1rem;line-height:1.6}
.pv-page .vx-hero-copy .btn-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 22px;margin-top:26px}
.vx-hero-art{position:relative;margin:0;padding:0 0 70px}
.vx-hero-photo{width:88%;margin-left:auto;border-radius:22px;overflow:hidden;box-shadow:0 40px 80px -50px rgba(0,0,0,.8)}
.vx-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:4/3.2;object-fit:cover}
.vx-sl{position:absolute;left:0;bottom:0;width:min(340px,72%);padding:16px;background:#fff;border-radius:16px;box-shadow:var(--vx-shadow);color:var(--vx-ink);font-size:.8rem}
.vx-sl-h{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding-bottom:10px;border-bottom:1px solid #eeece7}
.vx-sl-h span{display:grid}.vx-sl-h small{font-size:.7rem;color:var(--vx-soft)}.vx-sl-h b{font-size:.98rem}
.vx-sl .vx-tag{position:static}
.vx-sl ul{list-style:none;margin:8px 0 10px;padding:0;display:grid;gap:2px}
.vx-sl li{display:grid;grid-template-columns:16px 1fr auto;gap:10px;align-items:center;padding:6px 0}
.vx-sl li i{width:14px;height:14px;border-radius:50%;border:1.5px solid #c9c5bc}
.vx-sl li.is-done i{background:var(--vx-green);border-color:var(--vx-green);box-shadow:inset 0 0 0 3px #fff}
.vx-sl li.is-done span{color:var(--vx-soft);text-decoration:line-through;text-decoration-color:#c9c5bc}
.vx-sl li.is-now{background:#fdf0f4;margin:0 -8px;padding:6px 8px;border-radius:8px}
.vx-sl li.is-now i{border-color:var(--vx-pink);background:radial-gradient(circle,var(--vx-pink) 0 3px,transparent 4px)}
.vx-sl li em{font-style:normal;font-size:.72rem;font-weight:600;color:var(--vx-soft);background:var(--vx-paper);padding:2px 7px;border-radius:6px}
.vx-sl-f{display:grid;gap:6px;font-size:.72rem;color:var(--vx-soft)}
.vx-sl-f i{display:block;height:4px;border-radius:4px;background:#eeece7;position:relative;overflow:hidden}
.vx-sl-f i::after{content:"";position:absolute;inset:0 auto 0 0;width:var(--p);background:var(--vx-pink);border-radius:4px}
.vx-hero-chip{position:absolute;right:-6px;top:8%;display:flex;align-items:center;gap:10px;padding:8px 14px 8px 8px;background:#fff;border-radius:14px;box-shadow:var(--vx-shadow);font-size:.78rem;color:var(--vx-ink)}
.vx-hero-chip img{width:52px;height:52px;border-radius:10px;object-fit:cover;display:block}
.vx-hero-chip p{display:grid}.vx-hero-chip small{color:var(--vx-soft)}

/* 02 why */
.vx-why{background:var(--vx-paper)}
.vx-why-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:64px;align-items:center}
.vx-facts{list-style:none;margin:30px 0 0;padding:0;display:grid;gap:12px;max-width:520px}
.vx-facts li{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px 18px;background:#fff;border:1px solid var(--vx-line);border-radius:14px}
.vx-facts p{font-weight:600;color:var(--vx-ink);font-size:.98rem!important;line-height:1.45!important}
.vx-facts a{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:max(.72rem,11px);font-weight:600;color:var(--vx-soft);text-decoration:none}
.vx-facts a:hover{color:var(--vx-pink-ink)}.vx-facts a svg{width:12px;height:12px}
.vx-app{position:relative;justify-self:center;width:min(360px,100%)}
.vx-app-ph{background:#fff;border-radius:30px;padding:22px 16px 18px;box-shadow:0 30px 70px -40px rgba(0,0,0,.6),0 0 0 8px #1c1c1f;color:var(--vx-ink)}
.vx-app .vx-tag{top:20px;right:22px}
.vx-app-top{display:grid;margin-bottom:10px!important;font-size:.78rem}.vx-app-top b{font-size:1.05rem}.vx-app-top span{color:var(--vx-soft)}
.vx-app ul{list-style:none;margin:0;padding:0}
.vx-app li{display:grid;grid-template-columns:1fr 96px;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #f0eee9}
.vx-app li span{display:grid;gap:2px;font-size:.8rem}.vx-app li b{font-size:.92rem}.vx-app li small{color:var(--vx-soft)}.vx-app li em{font-style:normal;font-weight:600;margin-top:4px}
.vx-app li i{display:block;width:96px;height:80px;border-radius:12px;overflow:hidden}
.vx-app li i img{width:100%;height:100%;object-fit:cover;display:block}
.vx-app .vx-noimg{display:grid!important;place-items:center;background:#ecebe7;color:#9b988f;font-size:.7rem;font-weight:600}
.vx-app li.no-ph span{opacity:.75}
.vx-app-cap{text-align:center;margin-top:16px!important;font-size:.85rem;font-weight:600;color:var(--vx-soft)}

/* 03 plan */
.vx-plan{background:#fff}
.vx-doc{position:relative;background:#fff;border:1px solid var(--vx-line);border-radius:20px;padding:22px 24px;box-shadow:var(--vx-shadow);color:var(--vx-ink);font-size:.9rem}
.vx-panel>.vx-tag{right:18px;top:18px}
.vx-plan .vx-doc-h{padding-right:80px}
.vx-brief{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0 32px;align-items:start}
.vx-brief .vx-doc-h{grid-column:1/-1}
.vx-brief dl{margin:0;display:grid}
.vx-brief dl div{display:grid;grid-template-columns:110px 1fr;gap:12px;padding:11px 0;border-bottom:1px solid #f0eee9}
.vx-brief dt{color:var(--vx-soft);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.vx-brief dd{margin:0;font-weight:500}
.vx-mood{display:grid;grid-template-columns:1.3fr 1fr;grid-template-rows:repeat(2,minmax(0,1fr));gap:8px;height:240px;overflow:hidden}
.vx-mood img{width:100%;height:100%;min-height:0;object-fit:cover;border-radius:12px;display:block}
.vx-mood img:first-child{grid-row:1/3}
.vx-list table{width:100%;border-collapse:collapse;font-size:.88rem}
.vx-list th{text-align:left;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--vx-soft);font-weight:600;padding:8px 10px 8px 0;border-bottom:1px solid var(--vx-line)}
.vx-list td{padding:12px 10px 12px 0;border-bottom:1px solid #f0eee9}
.vx-list td:first-child{font-weight:600}
.vx-list td em{font-style:normal;font-size:.76rem;font-weight:600;background:var(--vx-paper);padding:3px 8px;border-radius:6px}
.vx-script ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.vx-fr{position:relative;aspect-ratio:9/12;border-radius:12px;overflow:hidden;background:#111}
.vx-fr img{width:100%;height:100%;object-fit:cover;display:block;opacity:.92}
.vx-fr span{position:absolute;left:8px;top:8px;font-size:.7rem;font-weight:700;color:#fff;background:rgba(0,0,0,.55);padding:3px 7px;border-radius:6px}
.vx-fr b{position:absolute;left:10px;right:10px;bottom:12px;color:#fff;font:800 1.05rem/1.1 'Outfit',sans-serif;text-shadow:0 2px 12px rgba(0,0,0,.6)}
.vx-script li p{margin-top:8px!important;font-size:.82rem;color:var(--vx-soft)}
.vx-script-f{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;margin-top:16px!important;padding-top:12px;border-top:1px solid #f0eee9;font-size:.8rem;color:var(--vx-soft)}

/* 04 shoot day (dark photo) */
.vx-day{background:#121110;color:#fff}
.vx-day::after{background:linear-gradient(180deg,rgba(13,12,11,.9) 0%,rgba(13,12,11,.74) 45%,rgba(13,12,11,.92) 100%)}
.pv-page .vx-day h2,.pv-page .vx-day h3{color:#fff}
.pv-page .vx-day .vx-head>p{color:rgba(255,255,255,.74)}
.vx-day-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:24px;align-items:start}
.vx-call{position:relative;background:#fff;border-radius:20px;padding:22px 24px;color:var(--vx-ink);box-shadow:0 40px 80px -40px rgba(0,0,0,.9)}
.vx-call .vx-doc-h{padding-right:80px}
.vx-call ol{list-style:none;margin:0;padding:0}
.vx-call li{display:grid;grid-template-columns:70px 1fr auto;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid #f0eee9;font-size:.88rem}
.vx-call li:last-child{border-bottom:0}
.vx-call time{font-weight:700;font-variant-numeric:tabular-nums}
.vx-call li span{font-size:.72rem;font-weight:600;color:var(--vx-soft);background:var(--vx-paper);padding:3px 8px;border-radius:99px;white-space:nowrap}
.vx-call li:nth-child(6) span{background:#fdf0f4;color:var(--vx-pink-ink)}
.vx-roles{display:grid;gap:14px}
.vx-roles article{padding:20px 22px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);backdrop-filter:blur(10px)}
.pv-page .vx-roles h3{margin:0 0 10px;font-size:1.05rem}
.vx-roles ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.vx-roles li{position:relative;padding-left:18px;color:rgba(255,255,255,.82);font-size:.92rem;line-height:1.45}
.vx-roles li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--vx-pink)}
.vx-roles article:first-child{background:rgba(232,66,116,.16);border-color:rgba(232,66,116,.45)}

/* 05 capture gallery */
.vx-capture{background:#fff}
.vx-gal-d{margin:0 0 18px!important;color:var(--vx-soft);font-size:.98rem}
.vx-gm{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-auto-rows:170px;gap:14px}
.vx-gm figure{position:relative;margin:0;border-radius:18px;overflow:hidden;background:#e9e6df}
.vx-gm img{width:100%;height:100%;object-fit:cover;display:block;transition:transform 1.1s cubic-bezier(.2,.7,.2,1)}
.vx-gm figure:hover img{transform:scale(1.03)}
.n5 .vx-g1{grid-column:1/4;grid-row:span 3}.n5 .vx-g2{grid-column:4/7;grid-row:span 2}.n5 .vx-g3{grid-column:4/6;grid-row:span 1}.n5 .vx-g4{grid-column:6/7;grid-row:span 1}.n5 .vx-g5{display:none}
.n4 .vx-g1{grid-column:1/4;grid-row:span 3}.n4 .vx-g2{grid-column:4/7;grid-row:span 2}.n4 .vx-g3{grid-column:4/5;grid-row:span 1}.n4 .vx-g4{grid-column:5/7;grid-row:span 1}
.n3 .vx-g1{grid-column:1/4;grid-row:span 3}.n3 .vx-g2{grid-column:4/7;grid-row:span 2}.n3 .vx-g3{grid-column:4/7;grid-row:span 1}
.vx-play{position:absolute;left:50%;top:50%;width:56px;height:56px;margin:-28px 0 0 -28px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 10px 30px rgba(0,0,0,.35)}
.vx-play::after{content:"";position:absolute;left:22px;top:17px;border-left:16px solid var(--vx-ink);border-top:11px solid transparent;border-bottom:11px solid transparent}

/* 06 files (light photo) */
.vx-files{background:var(--vx-paper)}
.vx-files::after{background:linear-gradient(180deg,rgba(246,245,241,.97) 0%,rgba(246,245,241,.86) 35%,rgba(246,245,241,.6) 70%,rgba(246,245,241,.95) 100%)}
.vx-drive{position:relative;background:#fff;border-radius:22px;box-shadow:0 40px 80px -46px rgba(0,0,0,.55);color:var(--vx-ink);overflow:hidden;border:1px solid var(--vx-line)}
.vx-drive-top{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid #f0eee9;font-size:.85rem}
.vx-drive-top span{color:var(--vx-soft)}.vx-drive .vx-tag{position:static;color:#fff}
.vx-drive-b{display:grid;grid-template-columns:230px 1fr}
.vx-fold{list-style:none;margin:0;padding:12px;border-right:1px solid #f0eee9;display:grid;align-content:start;gap:2px}
.vx-fold li{display:grid;grid-template-columns:18px 1fr auto;gap:10px;align-items:center;padding:9px 10px;border-radius:10px;font-size:.86rem;font-weight:500}
.vx-fold li i{width:18px;height:14px;border-radius:3px;background:#d8d4ca;position:relative}
.vx-fold li i::before{content:"";position:absolute;left:0;top:-3px;width:8px;height:4px;border-radius:2px 2px 0 0;background:#d8d4ca}
.vx-fold li em{font-style:normal;font-size:.7rem;color:var(--vx-soft)}
.vx-fold li.is-on{background:#fdf0f4;color:var(--vx-pink-ink);font-weight:600}
.vx-fold li.is-on i,.vx-fold li.is-on i::before{background:var(--vx-pink)}
.vx-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 14px;padding:18px;align-content:start}
.vx-thumbs figure{margin:0}
.vx-thumbs img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:10px}
.vx-thumbs figcaption{margin-top:6px;font-size:max(.7rem,11px);color:var(--vx-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vx-drive-f{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 18px;padding:12px 20px;border-top:1px solid #f0eee9;font-size:.82rem;color:var(--vx-soft)}
.vx-ok{color:var(--vx-green);font-weight:600}
.vx-ok::before{content:"✓ "}

/* 07 channels */
.vx-chan{background:var(--vx-paper)}
.vx-chan-grid .vx-head-s{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);column-gap:64px;align-items:start}
.vx-chan-grid .vx-head-s>.kicker{grid-column:1;grid-row:1}.vx-chan-grid .vx-head-s>h2{grid-column:1;grid-row:2}.vx-chan-grid .vx-head-s>p{grid-column:1;grid-row:3}
.vx-ch{display:contents}
.vx-chan-grid .vx-head-s>.kicker{justify-self:start}
.vx-chips{grid-column:1;grid-row:4;display:flex;flex-wrap:wrap;gap:8px;margin:28px 0 18px}
.vx-chips label{padding:10px 16px;border-radius:99px;border:1px solid var(--vx-line);background:#fff;font-weight:600;font-size:.9rem;color:var(--vx-ink);cursor:pointer;min-height:44px;display:inline-flex;align-items:center;transition:background .2s,color .2s,border-color .2s}
.vx-note{grid-column:1;grid-row:5;margin:0!important;color:var(--vx-soft);font-size:.86rem!important;line-height:1.55!important}
.vx-note a{color:var(--vx-ink);font-weight:600}
.vx-stage{grid-column:2;grid-row:1/7;position:relative;min-height:540px;display:grid;place-items:center;background:#ecebe6;border-radius:24px;padding:36px}
.vx-scr{display:none;width:100%;color:var(--vx-ink);font-size:.86rem}
.vx-ch .vx-tab-in:nth-of-type(1):checked~.vx-stage .vx-scr:nth-of-type(1),.vx-ch .vx-tab-in:nth-of-type(2):checked~.vx-stage .vx-scr:nth-of-type(2),.vx-ch .vx-tab-in:nth-of-type(3):checked~.vx-stage .vx-scr:nth-of-type(3),
.vx-ch .vx-tab-in:nth-of-type(4):checked~.vx-stage .vx-scr:nth-of-type(4),.vx-ch .vx-tab-in:nth-of-type(5):checked~.vx-stage .vx-scr:nth-of-type(5),.vx-ch .vx-tab-in:nth-of-type(6):checked~.vx-stage .vx-scr:nth-of-type(6){display:grid;place-items:center;animation:vxIn .35s cubic-bezier(.2,.7,.2,1)}
.vx-ch .vx-tab-in:nth-of-type(1):checked~.vx-chips label:nth-child(1),.vx-ch .vx-tab-in:nth-of-type(2):checked~.vx-chips label:nth-child(2),.vx-ch .vx-tab-in:nth-of-type(3):checked~.vx-chips label:nth-child(3),
.vx-ch .vx-tab-in:nth-of-type(4):checked~.vx-chips label:nth-child(4),.vx-ch .vx-tab-in:nth-of-type(5):checked~.vx-chips label:nth-child(5),.vx-ch .vx-tab-in:nth-of-type(6):checked~.vx-chips label:nth-child(6){background:var(--vx-ink);border-color:var(--vx-ink);color:#fff}
.vx-ch .vx-tab-in:nth-of-type(1):focus-visible~.vx-chips label:nth-child(1),.vx-ch .vx-tab-in:nth-of-type(2):focus-visible~.vx-chips label:nth-child(2),.vx-ch .vx-tab-in:nth-of-type(3):focus-visible~.vx-chips label:nth-child(3),
.vx-ch .vx-tab-in:nth-of-type(4):focus-visible~.vx-chips label:nth-child(4),.vx-ch .vx-tab-in:nth-of-type(5):focus-visible~.vx-chips label:nth-child(5),.vx-ch .vx-tab-in:nth-of-type(6):focus-visible~.vx-chips label:nth-child(6){outline:2px solid var(--vx-pink);outline-offset:2px}
.vx-scr img{display:block;width:100%;height:100%;object-fit:cover}
.vx-ig,.vx-ad{width:min(320px,100%);background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--vx-shadow)}
.vx-ig-h{display:flex;align-items:center;gap:8px;padding:10px 12px;font-size:.82rem}
.vx-ig-h i{width:28px;height:28px;border-radius:50%;background:var(--vx-ink);box-shadow:0 0 0 2px #fff,0 0 0 3.5px var(--vx-pink)}
.vx-ig-h span{margin-left:auto;color:var(--vx-soft);font-size:.74rem}
.vx-ig-img{aspect-ratio:4/5}
.vx-ig-a{padding:10px 12px 2px;font-size:1.1rem;letter-spacing:.2em}
.vx-ig-c{padding:4px 12px 14px;font-size:.82rem;line-height:1.45!important}
.vx-ad-cta{display:flex;justify-content:space-between;padding:11px 12px;background:#f0f2f5;font-weight:600;font-size:.84rem}
.vx-reel{position:relative;width:min(250px,100%);aspect-ratio:9/16;border-radius:22px;overflow:hidden;box-shadow:0 30px 60px -30px rgba(0,0,0,.6);background:#111}
.vx-reel-t{position:absolute;left:14px;right:14px;top:14%;color:#fff;font:800 1.6rem/1.05 'Outfit',sans-serif;text-shadow:0 2px 14px rgba(0,0,0,.6)}
.vx-reel-b{position:absolute;left:12px;right:12px;bottom:14px;display:flex;justify-content:space-between;align-items:center;color:#fff;font-size:.8rem}
.vx-reel-b span{background:var(--vx-pink);padding:6px 10px;border-radius:8px;font-weight:600}
.vx-maps{width:min(360px,100%);background:#fff;border-radius:16px;overflow:hidden;box-shadow:var(--vx-shadow)}
.vx-maps-img{position:relative;aspect-ratio:16/9}
.vx-maps-img span{position:absolute;left:10px;bottom:10px;background:rgba(0,0,0,.65);color:#fff;font-size:.72rem;padding:4px 8px;border-radius:6px}
.vx-maps-n{display:grid;padding:12px 14px 6px}.vx-maps-n b{font-size:1.02rem}.vx-maps-n small{color:var(--vx-soft)}
.vx-maps-b{display:flex;gap:8px;padding:6px 14px 14px}
.vx-maps-b span{flex:1;text-align:center;padding:8px;border-radius:99px;border:1px solid #dadce0;color:#1a73e8;font-weight:600;font-size:.78rem}
.vx-maps-b span:first-child{background:#1a73e8;color:#fff;border-color:#1a73e8}
.vx-web{width:100%;max-width:520px;background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--vx-shadow)}
.vx-web-nav{display:flex;gap:18px;align-items:center;padding:12px 18px;font-size:.78rem;color:var(--vx-soft)}
.vx-web-nav b{margin-right:auto;color:var(--vx-ink);letter-spacing:.14em}
.vx-web-nav .is-cta{background:var(--vx-ink);color:#fff;padding:6px 12px;border-radius:99px}
.vx-web-hero{position:relative;aspect-ratio:16/9}
.vx-web-hero p{position:absolute;left:22px;bottom:20px;color:#fff;font:800 1.7rem/1.05 'Outfit',sans-serif;text-shadow:0 2px 16px rgba(0,0,0,.55)}
.vx-dapp{width:min(320px,100%);background:#fff;border-radius:18px;overflow:hidden;box-shadow:var(--vx-shadow)}
.vx-dapp-img{aspect-ratio:1/1}
.vx-dapp-n{display:grid;gap:2px;padding:14px 16px 8px}.vx-dapp-n b{font-size:1.02rem}.vx-dapp-n small{color:var(--vx-soft)}.vx-dapp-n em{font-style:normal;font-weight:700;margin-top:4px}
.vx-dapp-btn{margin:6px 16px 16px!important;text-align:center;background:#eb1700;color:#fff;font-weight:700;padding:11px;border-radius:99px}
.vx-stage>.vx-tag{right:16px;top:16px}

/* 08 FAQ */
.vx-faq-sec{background:#fff;border-top:1px solid var(--vx-line)}
.vx-faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px}
.pv-page .vx-faq-grid h2{margin:0}
.vx-faq details{border-bottom:1px solid var(--vx-line)}
.vx-faq summary{display:flex;justify-content:space-between;gap:16px;padding:20px 0;cursor:pointer;list-style:none;font-weight:600;font-size:1.04rem}
.vx-faq summary::-webkit-details-marker{display:none}
.vx-faq summary::after{content:"+";color:var(--vx-pink);font-size:1.3rem;line-height:1;transition:transform .2s}
.vx-faq details[open] summary::after{transform:rotate(45deg)}
.vx-faq summary:focus-visible{outline:2px solid var(--vx-pink);outline-offset:4px}
.pv-page .vx-faq details p{margin:0 0 20px;color:var(--vx-soft);line-height:1.65;max-width:62ch}

/* reveal (fallback; Codex replaces with per-section motion) */
.vx-js [data-vx-reveal]{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
.vx-js [data-vx-reveal].is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.vx-js [data-vx-reveal]{opacity:1!important;transform:none!important;transition:none!important}.vx-panel,.vx-scr{animation:none!important}.vx-gm img{transition:none}}

/* responsive */
/* Finite site-pattern accents; leave final data and composition unchanged. */
.vx-shot-play .vx-sl-f i::after{transform-origin:left;animation:vxFill .6s .6s both}
.vx-delivery-play .vx-ok::before{display:inline-block;animation:vxCheck .4s .6s both}
@keyframes vxFill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes vxCheck{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
@media(prefers-reduced-motion:reduce){
  .pv-page main *,.pv-page main *::before,.pv-page main *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .pv-page .vx-gm img:hover{transform:none}
}
@media(max-width:1100px){.vx-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.vx-gm{grid-auto-rows:140px}.vx-day-grid{grid-template-columns:1fr}.vx-roles{grid-template-columns:repeat(3,minmax(0,1fr))}.vx-script ol{grid-template-columns:repeat(2,minmax(0,1fr))}.vx-fr{aspect-ratio:4/3}}
@media(max-width:900px){.vx-hero,.vx-head,.vx-why-grid,.vx-faq-grid,.vx-brief{grid-template-columns:1fr;gap:26px}.vx-head{margin-bottom:28px}.vx-hero-photo{width:100%}
  .vx-chan-grid .vx-head-s{grid-template-columns:1fr}.vx-chips{grid-row:4;margin:22px 0 14px}.vx-stage{grid-column:1;grid-row:5;min-height:460px}.vx-note{grid-row:6;margin-top:14px!important}
  .vx-drive-b{grid-template-columns:1fr}.vx-fold{grid-auto-flow:column;grid-auto-columns:max-content;overflow-x:auto;border-right:0;border-bottom:1px solid #f0eee9;scrollbar-width:none}.vx-fold::-webkit-scrollbar{display:none}}
@media(max-width:700px){
  .vx-swipe{display:block;margin:10px 0 0;font-size:.78rem;font-weight:600;color:#a9a7ad}
  .vx-hero-art{padding-bottom:0}.vx-sl{position:relative;width:auto;margin:-56px 12px 0}.vx-hero-chip{right:8px;top:10px}
  .vx-roles{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:20px;gap:12px;margin:0 -20px;padding:0 20px 8px;scrollbar-width:none}.vx-roles::-webkit-scrollbar{display:none}.vx-roles article{flex:0 0 78%;scroll-snap-align:start}
  .vx-call li{grid-template-columns:58px 1fr;gap:4px 12px}.vx-call li span{grid-column:2;justify-self:start}
  .vx-gm{grid-template-columns:1fr 1fr;grid-auto-rows:130px;gap:10px}
  .vx-gm figure{grid-column:auto!important;grid-row:auto!important}.vx-gm .vx-g1{grid-column:1/-1!important;grid-row:span 2!important}.n5 .vx-g5{display:block}.n4 .vx-g4{display:none}
  .vx-facts li{flex-direction:column;align-items:flex-start;gap:8px}
  .vx-list{overflow-x:auto}.vx-list table{min-width:480px}
  .vx-script ol{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;scrollbar-width:none}.vx-script ol::-webkit-scrollbar{display:none}.vx-script li{flex:0 0 46%;scroll-snap-align:start}.vx-fr{aspect-ratio:9/13}
  .vx-thumbs{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}.vx-thumbs figure:nth-child(n+5){display:none}
  .vx-stage{min-height:420px;padding:22px}.vx-doc{padding:18px}.vx-mood{height:220px}
  .vx-brief dl div{grid-template-columns:96px 1fr}
  .vx-tab-l label{padding:9px 14px;font-size:.86rem}
}
@media(max-width:420px){.vx-hero-chip{display:none}}
