/* V2 reference adapters. Existing IDs and business controls remain authoritative. */
@font-face{font-family:Inter;src:url('/fonts/inter.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face {
  font-family: 'Newsreader';
  font-style: italic;
  font-weight: 400 600;
  font-display: swap;
  src: url(/fonts/newsreader-italic.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Newsreader';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(/fonts/newsreader-regular.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}:root,[data-theme="light"],[data-theme="dark"]{
 --bg-canvas:var(--color-bg-base);--bg-surface:var(--color-bg-surface);--bg-elevated:var(--color-bg-surface-elevated);--bg-dark-section:var(--color-bg-surface);
 --text-primary:var(--color-text-primary);--text-secondary:var(--color-text-secondary);--text-muted:var(--color-text-muted);--text-on-primary:var(--color-text-inverse);
 --brand-primary:var(--color-primary);--brand-primary-hover:var(--color-primary-hover);--brand-secondary:var(--color-accent-green);--brand-accent:var(--color-accent-gold);
 --border-subtle:var(--color-border-subtle);--border-strong:var(--color-border-default);--control-border:var(--color-border-default);--header-surface:var(--color-bg-surface-glass);
 --display:var(--font-display);--body:var(--font-body);--mono:var(--font-mono);--bg:var(--color-bg-base);--surface:var(--color-bg-surface);--ink:var(--color-text-primary);--muted:var(--color-text-secondary);
 --paper:var(--color-bg-surface);--cream:var(--color-bg-base);--line:var(--color-border-default);--accent:var(--color-primary);--accent-readable:var(--color-primary);--action-ink:#fff;
 --footer-text:var(--color-text-primary);--footer-muted:var(--color-text-secondary);--footer-border:var(--color-border-default);--backdrop:var(--color-bg-overlay);--radius:var(--radius-md);--primary-soft:color-mix(in srgb,var(--color-primary) 12%,transparent);
}
html[data-theme="dark"]{color-scheme:dark}html[data-theme="light"]{color-scheme:light}
body.v2-site{font-family:var(--font-body);font-size:16px;line-height:1.6;background:var(--color-bg-base);color:var(--color-text-primary);background-image:none;}
body.v2-site::before,body.v2-site::after{display:none}
body.v2-site [hidden]{display:none!important}
.v2-site :is(h1,h2,h3,h4){font-family:var(--font-display);color:var(--color-text-primary);font-weight:700;letter-spacing:-.025em;line-height:1.2}
.v2-site h1{font-size:clamp(2.5rem,5vw + 1rem,4.25rem);line-height:1.1}
.v2-site h2{font-size:clamp(2rem,3.5vw,2.75rem)}.v2-site h3{font-size:1.35rem;font-weight:600}
.v2-site p{color:var(--color-text-secondary)}.v2-site a{color:inherit}.v2-site .text-link,.v2-site .text-button{color:var(--color-primary)}
.v2-site .serif-italic{font-family:var(--font-serif);font-weight:400;font-style:italic;color:var(--color-primary)}
.v2-site .wrap{width:100%;max-width:1240px;padding-left:24px;padding-right:24px;margin-inline:auto}
.v2-site main{position:relative;z-index:1;padding-top:0}
.v2-site .eyebrow{font:600 .8125rem/1.6 var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);margin-bottom:12px}
.v2-site .button{font-family:var(--font-display);font-size:.9375rem;font-weight:600;line-height:1.5;min-height:44px;padding:12px 24px;border:0;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary),#ea580c);color:#fff;box-shadow:0 4px 18px rgba(245,158,11,.35);text-decoration:none;cursor:pointer;transition:all var(--transition-fast)}
.v2-site .button:hover{transform:translateY(-2px);background:linear-gradient(135deg,var(--color-primary-hover),#f97316)}
.v2-site .button-outline{background:transparent;border:1px solid var(--color-border-default);color:var(--color-text-primary);box-shadow:none}
.v2-site .button-outline:hover{background:var(--color-bg-surface-elevated);color:var(--color-primary)}
.v2-site :is(button,a,input,select,textarea):focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}
.v2-site button:disabled{cursor:not-allowed;opacity:.55;transform:none}
.v2-site .site-header{height:72px;background:var(--color-bg-surface-glass);border-bottom:1px solid var(--color-border-subtle);box-shadow:none;z-index:100;backdrop-filter:blur(16px)}
.v2-site .header-inner{height:72px;gap:24px}.v2-site .brand{gap:10px;flex-shrink:0}.v2-site .brand-mark{width:38px;height:38px;padding:5px;background:linear-gradient(135deg,#f59e0b,#ff5722);border-radius:12px;box-shadow:0 0 20px #f59e0b30}
.v2-site .brand-wordmark{font:800 19px/1.3 var(--font-display);letter-spacing:-.7px}.v2-site .brand-wordmark b{font-family:var(--font-serif);font-size:18px;font-weight:400;font-style:italic;color:var(--color-primary)}
.v2-site .brand small{font:9px/1.5 var(--font-mono);color:var(--color-primary);letter-spacing:.6px}
.v2-site .desktop-nav{gap:20px;font-size:.875rem;font-weight:500;white-space:nowrap}.v2-site .desktop-nav a{color:var(--color-text-secondary)}.v2-site .desktop-nav a:hover{color:var(--color-primary)}
.v2-site .header-actions{gap:10px;white-space:nowrap}.v2-site .header-login{background:linear-gradient(135deg,#f59e0b,#ea580c);color:white;border-radius:999px;padding:9px 17px;font:600 .8125rem var(--font-display)}
.v2-site .theme-toggle{background:var(--color-bg-surface-elevated);color:var(--color-text-secondary);border:1px solid var(--color-border-default);border-radius:999px;padding:10px 16px;box-shadow:none;font-size:.8rem}.v2-site .theme-toggle::before{content:'◐';color:var(--color-primary)}
.v2-site .mobile-nav{position:absolute;top:72px;left:0;right:0;background:var(--color-bg-surface);border-bottom:1px solid var(--color-border-default);padding:16px 24px;box-shadow:var(--shadow-lg)}
.v2-site .menu-toggle{border-radius:999px;border:1px solid var(--color-border-default);background:var(--color-bg-surface-elevated);color:var(--color-text-primary)}
.v2-site .hero-section{padding:60px 0 90px}.v2-site .hero-copy{gap:20px}.v2-site #hero-title{max-width:none;margin:0;font-size:clamp(2.5rem,5vw + 1rem,4.25rem);letter-spacing:-.04em;line-height:1.1;text-align:left}
.v2-site .hero-summary{font-size:1.15rem;line-height:1.65;max-width:640px;margin:0;text-align:left}.v2-hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}
.v2-site .hero-stats{margin:0}.v2-site .hero-showcase{min-width:0}.v2-site .concert-stage{width:330px;max-width:100%;padding:0;margin:0;border:0;background:none;box-shadow:none;position:relative;align-self:center;zoom:1}
.v2-site .concert-stage .studio-heading{display:none}.v2-site .concert-stage .stage-screen{width:100%;height:auto;min-height:0;aspect-ratio:9/16;border:8px solid #222634;border-radius:40px;overflow:hidden;background:#000;box-shadow:var(--specular-card),var(--shadow-lg),0 0 50px #f59e0b40}
.v2-site #stage-video,.v2-site .stage-photo-frame{width:100%;height:100%;max-height:none;position:absolute;inset:0;object-fit:cover;border:0;border-radius:0;box-shadow:none}
.v2-site #stage-photo{width:100%;height:100%;object-fit:contain}.v2-site #stage-backdrop{display:none}
.v2-site .stage-status{font:700 .7rem/1.4 var(--font-mono);background:#050609b8;color:white;top:50px;left:14px;border-radius:999px;border:1px solid #ffffff30;padding:5px 10px;max-width:90%;white-space:normal}
.v2-site .stage-controls{position:absolute;bottom:22px;right:14px;z-index:22;padding:0;gap:5px;border:0;background:none;display:flex}
.v2-site .stage-controls button{border-radius:999px;padding:7px 12px;min-height:34px;font:500 11px var(--font-body);background:#050609a6;backdrop-filter:blur(8px);border:1px solid #ffffff40;color:white;box-shadow:none}
.v2-site .stage-view-toggle{position:absolute;bottom:65px;right:14px;border-radius:999px;padding:7px 12px;background:#0a0b10d9;color:#fff;border:1px solid #fff5;font-size:11px}
.v2-site .stage-bottom{position:absolute;bottom:60px;left:22px;right:22px;padding:0;font-size:.75rem;color:#fff;z-index:20;text-shadow:0 2px 6px #000}.v2-site .stage-bottom a{color:inherit}
.v2-site .stage-thumbnails{margin-top:16px;position:absolute;top:100%;width:100%;justify-content:center}.v2-site .stage-thumbnails img{height:40px;object-fit:cover}
.v2-site .photo-source-pill{z-index:25}.v2-site .photo-source-pill img{object-fit:cover}
.v2-site .studio-section{padding:80px 0}.v2-site .studio-card{padding:0;margin:0;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:32px;box-shadow:var(--shadow-lg);zoom:1;width:100%;transform:none;overflow:hidden}
.v2-site .studio-header{padding:28px 32px;background:var(--color-bg-surface-elevated);margin:0;border-bottom:1px solid var(--color-border-subtle)}.v2-site .studio-header h2{font-size:clamp(1.6rem,2.5vw,2.75rem);margin:0}.v2-site .tool-format{font:400 .75rem var(--font-mono);padding:6px 10px;background:var(--color-bg-base);color:var(--color-primary);border:1px solid var(--color-border-default);border-radius:6px}
.v2-site #concert-form{counter-reset:none;gap:0}.v2-site #concert-form fieldset{border:0;padding:0;margin:0;min-width:0}.v2-site #concert-form legend::before{display:none}
.v2-site #concert-form legend{padding:0;margin:0 0 12px;font:600 .875rem/1.6 var(--font-display);color:var(--color-text-primary);text-transform:none;letter-spacing:0}
.v2-site #concert-form .scene-picker legend{font:600 .8125rem/1.6 var(--font-mono);color:var(--color-primary);text-transform:uppercase;letter-spacing:.08em}
.v2-site #concert-form .studio-stage-panel{gap:24px;padding:36px 32px;min-width:0}.v2-site .scene-tabs-scroll{flex-wrap:nowrap;overscroll-behavior-x:contain}
.v2-site .scene-tab-btn{min-height:42px;box-shadow:none}.v2-site .scene-tab-btn.active{box-shadow:0 0 16px #f59e0b33}
.v2-site .selected-scene{display:flex;flex-direction:column;gap:8px;align-items:flex-start;padding:12px 18px;background:color-mix(in srgb,var(--color-bg-base) 65%,transparent);border:1px solid var(--color-border-subtle);border-radius:16px;cursor:pointer;box-shadow:none}
.v2-site .selected-scene-image{display:none}.v2-site .scene-kicker{display:none}.v2-site #selected-template-name{font:600 .875rem var(--font-display);color:var(--color-primary)}.v2-site #selected-template-description{font-size:.8125rem;margin:5px 0}.v2-site #selected-template-range{font:500 .7rem var(--font-mono);color:var(--color-primary);margin:0}
.v2-site #change-template{padding:0;min-height:0;width:auto;font:.75rem var(--font-body);background:none;color:var(--color-text-secondary);box-shadow:none;border:0}.v2-site #change-template:hover{color:var(--color-primary)}
.v2-site .v2-photo-fields{display:flex;flex-direction:column;gap:14px}.v2-site .v2-photo-fields>legend{font-size:.875rem;margin:0}.v2-site .people-picker{order:4;padding-top:16px;border-top:1px solid var(--color-border-subtle);margin:0;display:flex;flex-wrap:wrap;gap:12px}
.v2-site #photo-placement-hint{font-size:.75rem;margin:0;width:100%}.v2-site .clone-choice{margin:0;font-size:.8rem}.v2-site .cast-photo-meta{font-size:.75rem;margin:0;gap:10px}.v2-site #cast-photo-count{color:var(--color-primary);font-size:.75rem}.v2-site .stage-container{padding:25px 16px 24px}
.v2-site .studio-settings-panel{padding:36px 32px;gap:24px;display:flex;flex-direction:column;background:var(--color-bg-surface);min-width:0}.v2-site .studio-settings-panel>.eyebrow{margin:0}
.v2-site .shape-picker{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0;border:0;background:none;border-radius:0;box-shadow:none}.v2-site .shape-picker label{min-height:86px;position:relative;padding:16px 12px;gap:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:var(--color-bg-surface-elevated);border:1px solid var(--color-border-default);border-radius:16px;box-shadow:none;color:var(--color-text-secondary)}
.v2-site .shape-picker label:has(input:checked){border-color:var(--color-primary);color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 8%,var(--color-bg-surface-elevated));box-shadow:0 0 20px #f59e0b1a}.v2-site .shape-picker label:has(input:checked) span{background:none;color:var(--color-primary);box-shadow:none}
.v2-site .shape-picker label>span{font:.8125rem/1.5 var(--font-body);padding:0;min-height:0;border-radius:0}.v2-site .shape-picker strong{font-size:.875rem;font-weight:600}.v2-site .quality-picker small{display:block;font:.7rem/1.5 var(--font-mono);margin-top:4px}
.v2-site .shape-picker .shape-icon{display:block;border:1.5px solid currentColor;width:16px;height:24px;border-radius:3px;background:none!important}.v2-site .shape-picker .shape-icon.landscape{width:24px;height:16px}
.v2-site .field-help{font-size:.75rem;line-height:1.6;color:var(--color-text-secondary)}.v2-site .quality-field .field-help{margin-top:10px}
.v2-site .v2-visible-options{border:0;padding:0;margin:0;display:flex;flex-direction:column;gap:20px}.v2-site .v2-visible-options>.setting-label{margin:0;color:var(--color-primary)}
.v2-site .field{margin:0;min-width:0}.v2-site .field label{font:.875rem/1.5 var(--font-display);font-weight:600;display:block;margin-bottom:10px;color:var(--color-text-primary)}
.v2-site :is(select,input:not([type=radio],[type=checkbox],[type=file],[type=range]),textarea){font-family:var(--font-body);background:var(--color-bg-surface-elevated);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:10px;padding:12px 14px;font-size:.875rem;max-width:100%;box-shadow:none}
.v2-site input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary)}
.v2-site .sound-option{padding:16px 18px;border:1px solid var(--color-border-default);border-radius:16px;background:var(--color-bg-surface-elevated);gap:16px;margin:0}.v2-site .sound-option input{order:2;appearance:auto;width:32px;height:20px;flex-shrink:0}.v2-site .sound-option input::after{display:none}.v2-site .sound-option span{flex:1}.v2-site .sound-option strong{font:.875rem var(--font-display);font-weight:600}.v2-site .sound-option small{font-size:.75rem;line-height:1.5;margin-top:5px;color:var(--color-text-secondary)}
.v2-site .consent{font-size:.75rem;align-items:flex-start;margin:0;gap:12px;color:var(--color-text-secondary)}.v2-site .consent input{margin-top:3px;flex-shrink:0}
.v2-site .main-cta{width:100%;font:600 1rem var(--font-display);min-height:54px;margin:0}.v2-site .ready-hint{font-size:.75rem;margin:-8px 0 0;text-align:center}.v2-site .editor-assurance{padding:14px;border:1px solid #10b98130;background:#10b9810d;color:var(--color-text-secondary);font-size:.75rem;border-radius:10px;margin:0}.v2-site .editor-assurance strong{display:block;color:var(--color-accent-green);margin-bottom:4px}
.v2-site .visual-reference-section{padding:80px 0;background:transparent;overflow:visible}.v2-site .reference-heading{display:flex;flex-direction:column;gap:10px;text-align:left;margin-bottom:40px}.v2-site .reference-heading h2{margin:0}.v2-site .reference-heading p{font-size:1.15rem;max-width:650px;margin:0}.v2-site .reference-heading .filter-pills{margin-top:10px}
.v2-site .reference-reel{max-width:1240px;margin:0 auto;padding:0 24px;overflow:visible;mask-image:none}.v2-site .reference-gallery{display:grid;grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;overflow:visible;padding:0;scroll-snap-type:none;width:auto;margin:0;mask-image:none}
.v2-site .reference-card{width:auto;min-width:0;border:1px solid var(--color-border-default);border-radius:16px;background:var(--color-bg-surface);overflow:hidden;box-shadow:none;transition:transform var(--transition-normal),border-color var(--transition-normal)}.v2-site .reference-card:hover{transform:translateY(-6px);border-color:var(--color-primary);box-shadow:var(--shadow-lg)}
.v2-site .reference-media{aspect-ratio:16/10;border:0;border-radius:0;min-height:0;overflow:hidden}.v2-site .reference-media>img,.v2-site .reference-media>video{width:100%;height:100%;object-fit:cover;object-position:50% 30%}.v2-site .reference-caption{top:auto;bottom:0;left:0;right:0;padding:35px 18px 12px;background:linear-gradient(transparent,#000b);pointer-events:none}.v2-site .reference-caption h3{font-size:1.1rem;color:white}.v2-site .reference-caption>span{font:.65rem var(--font-mono);color:#fef3c7}.v2-site .reference-input{width:48px;height:60px;top:12px;bottom:auto;left:12px;border-radius:8px}.v2-site .reference-input img{height:42px}.v2-site .reference-input span{font-size:7px}.v2-site .reference-open{border-radius:0}.v2-site .reference-play{width:48px;height:48px;font-size:18px;border:1px solid #fff5;background:#0007;color:white;opacity:1}.v2-site .reference-use{font:.8125rem var(--font-display);font-weight:600;display:flex;align-items:center;justify-content:space-between;margin:0;padding:20px 24px;color:var(--color-primary);text-decoration:none}
.v2-site .reference-navigation{display:none!important}.v2-site .reference-footer{margin-top:32px;text-align:center}.v2-site .reference-footer a{font-size:.875rem}
.v2-site :is(.material-entries,.home-shot-sequence,.home-workflow,.set-section,.alternative-paths,.decision-links){padding-top:80px;padding-bottom:80px;background:transparent}
.v2-site :is(.material-entries,.home-shot-sequence,.home-workflow,.alternative-paths,.decision-links)>h2{margin-bottom:32px}
.v2-site :is(.visual-workflow>div,.material-card,.alternative-card,.decision-links>div>a,.set-choice){background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:16px;color:var(--color-text-primary);box-shadow:none}
.v2-site .visual-workflow{gap:24px}.v2-site .visual-workflow h3{font-size:1rem;margin:14px 0 8px}.v2-site .visual-workflow p{font-size:.875rem}.v2-site .workflow-art{border-radius:12px}.v2-site .visual-step{background:var(--color-primary);color:#000}
.v2-site .set-title h2{margin-bottom:20px}.v2-site .set-layout{gap:40px}.v2-site .set-choice{padding:20px}.v2-site .set-choice strong{font:600 1.15rem var(--font-display)}
.v2-site .pricing-section{padding-top:80px;padding-bottom:80px}.v2-site .pricing-intro{text-align:center;max-width:800px;margin:0 auto}.v2-site .pricing-intro h2{margin:0 0 14px}.v2-site .pricing-intro p{margin-bottom:14px}.v2-site .pricing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:48px;align-items:stretch}
.v2-site .price-card{padding:32px 24px;gap:18px;border-radius:16px;background:var(--color-bg-surface);border:1px solid var(--color-border-default);box-shadow:none;transform:none}.v2-site .price-card::before,.v2-site .pack-film{display:none}.v2-site .price-card h3{font-size:1.2rem;min-height:48px;margin:0}.v2-site .price-card .eyebrow{font-size:.7rem;margin:0}.v2-site .price-card .price{font:800 2.75rem/1.1 var(--font-display);color:var(--color-text-primary);margin:0}.v2-site .price-card .price>span:last-child{font:400 .7rem var(--font-mono)}.v2-site .price-unit{font-size:.8125rem;margin-top:10px}.v2-site .pack-savings{font-size:.75rem;color:var(--color-accent-green);margin:8px 0}
.v2-site .price-featured{border-color:var(--color-primary);background:linear-gradient(180deg,#f59e0b14,var(--color-bg-surface));box-shadow:0 0 35px #f59e0b25}.v2-site .price-card ul{border-top:1px solid var(--color-border-subtle);padding-top:18px;font-size:.8125rem;line-height:1.7;display:flex;flex-direction:column;gap:10px;color:var(--color-text-secondary)}.v2-site .price-card li::before{color:var(--color-accent-green)}.v2-site .price-card .button{font-size:.8rem;width:100%;padding:12px 10px;margin-top:auto}.v2-site .price-card>p:last-child{margin:0;font-size:.68rem}.v2-site .premium-pack{margin-top:40px;display:block;padding:24px 28px;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:16px}.v2-site .premium-pack h3{margin-bottom:14px}.v2-site .premium-pack p+p{margin-top:12px}
.v2-site .quality-comparison{margin-top:50px}.v2-site .quality-comparison h2{margin-bottom:16px}.v2-site :is(.quality-comparison table,.decision-table table){background:var(--color-bg-surface)}.v2-site :is(th,td){border-color:var(--color-border-subtle)}.v2-site table thead{background:var(--color-bg-surface-elevated)}.v2-site th{color:var(--color-text-primary)}.v2-site td{color:var(--color-text-secondary)}
.v2-site .faq-section{display:block;padding-top:80px;padding-bottom:80px}.v2-site .faq-section>div:first-child{text-align:center;margin-bottom:40px}.v2-site .faq-section h2{margin-bottom:16px}.v2-site .faq-list{max-width:860px;margin:0 auto;gap:16px;display:flex;flex-direction:column}.v2-site .faq-list details{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:16px;padding:0;overflow:hidden}.v2-site .faq-list summary{padding:20px 24px;display:flex;justify-content:space-between;gap:20px;cursor:pointer;list-style:none}.v2-site .faq-list summary h3{font-size:1rem;line-height:1.5;font-weight:600}.v2-site .faq-list details[open]{border-color:var(--color-primary)}.v2-site .faq-list details>p{padding:0 24px 20px;max-width:none;font-size:.9375rem;line-height:1.7;margin:0}.v2-site .faq-list summary>span{color:var(--color-primary)}
.v2-site .final-cta{text-align:center;padding-top:90px;padding-bottom:90px;border:0}.v2-site .final-cta h2{margin-bottom:24px}.v2-site .final-cta p{margin-top:16px}
.v2-site .site-footer{background:var(--color-bg-surface);border-top:1px solid var(--color-border-subtle);padding:60px 0 32px;position:relative;z-index:1;color:var(--color-text-secondary)}.v2-site .footer-top{padding-top:0;padding-bottom:36px;gap:36px}.v2-site .footer-top p{font-size:.875rem;margin-top:16px}.v2-site .footer-top nav{gap:10px;font-size:.8125rem}.v2-site .footer-top a:hover{color:var(--color-primary)}.v2-site .footer-bottom{padding-top:24px;font-size:.75rem;border-top:1px solid var(--color-border-subtle);color:var(--color-text-muted)}.v2-site .directory-badges{background:none}
.v2-site dialog{border:1px solid var(--color-border-default);border-radius:24px;background:var(--color-bg-surface);color:var(--color-text-primary);box-shadow:var(--shadow-lg);padding:32px;max-width:min(960px,calc(100vw - 32px));max-height:90dvh;margin:auto}
.v2-site dialog::backdrop{background:var(--color-bg-overlay);backdrop-filter:blur(8px)}.v2-site dialog h2{font-size:1.75rem;margin:0 38px 18px 0}.v2-site dialog p{font-size:.875rem;line-height:1.7;margin-bottom:16px}.v2-site dialog .dialog-close{background:var(--color-bg-surface-elevated);color:var(--color-text-primary);border:1px solid var(--color-border-default);border-radius:50%;width:36px;height:36px}
.v2-site :is(.storyboard-shot,.brief-cast,.brief-packs,.scene-card,.payment-choice,.payment-provider-button){background:var(--color-bg-surface-elevated);color:var(--color-text-primary);border-color:var(--color-border-default);border-radius:12px}.v2-site .scene-card[data-selected=true]{border-color:var(--color-primary)}.v2-site .scene-card h3{font-size:1.1rem}.v2-site .scene-card-copy{padding:16px}.v2-site .scene-card-copy button{border-radius:999px;background:linear-gradient(135deg,var(--color-primary),#ea580c);color:white;border:0}.v2-site .scene-grid{gap:20px}.v2-site .scene-card-title{align-items:flex-start}
.v2-site .toast{background:var(--color-bg-surface-elevated);border:1px solid var(--color-border-default);color:var(--color-text-primary);border-radius:12px}
@media(max-width:1199px){.v2-site .desktop-nav{gap:12px;font-size:.8rem}.v2-site .header-inner{gap:14px}.v2-site .brand-wordmark{font-size:17px}.v2-site .brand-wordmark b{font-size:16px}.v2-site .theme-toggle{font-size:.75rem;padding:9px 10px}.v2-site .pricing-grid{gap:16px}.v2-site .price-card{padding:28px 18px}}
@media(max-width:1023px){.v2-site #concert-form .studio-stage-panel,.v2-site .studio-settings-panel{padding:28px 24px}.v2-site .studio-stage-panel{border-right:0;border-bottom:1px solid var(--color-border-subtle)}.v2-site .reference-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-site .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v2-site .desktop-nav{display:none}.v2-site .menu-toggle{display:block}}
@media(max-width:639px){.v2-site .wrap,.v2-site .container{padding-inline:20px}.v2-site .hero-section{padding:40px 0 48px}.v2-site #hero-title{font-size:2.5rem}.v2-site .hero-summary{font-size:1rem}.v2-site .hero-copy{gap:18px}.v2-site .hero-stats{gap:18px}.v2-site .stat-value{font-size:1.25rem}.v2-site .stat-label{font-size:.7rem}.v2-site .hero-stats .stat-item{flex:1 1 40%}.v2-site .hero-showcase{margin-bottom:25px}.v2-site .hero-grid{gap:40px}.v2-site .hero-copy .eyebrow{font-size:.625rem}.v2-site .v2-hero-actions .btn{padding:13px 20px;font-size:.875rem}.v2-site .studio-section{padding:40px 0}.v2-site .studio-section>.container{padding:0 12px}.v2-site .studio-header{padding:22px 20px;gap:10px}.v2-site .studio-header h2{font-size:1.5rem}.v2-site #concert-form .studio-stage-panel,.v2-site .studio-settings-panel{padding:24px 18px}.v2-site .studio-card{border-radius:24px}.v2-site .scene-tab-btn{font-size:.8rem;padding:8px 12px}.v2-site .scene-picker legend{font-size:.7rem!important}.v2-site .reference-gallery{grid-template-columns:1fr}.v2-site .reference-reel{padding:0 20px}.v2-site .reference-card{max-width:480px}.v2-site .pricing-grid{grid-template-columns:1fr}.v2-site .price-card h3{min-height:0}.v2-site .pricing-section{padding-block:50px}.v2-site .theme-toggle{font-size:0;padding:8px;width:34px;height:34px}.v2-site .theme-toggle::before{font-size:18px;margin:0}.v2-site .header-inner{gap:7px;padding-inline:14px}.v2-site .brand-mark{width:32px;height:32px}.v2-site .brand-wordmark{font-size:14px}.v2-site .brand-wordmark b{font-size:13px}.v2-site .brand small{font-size:7px}.v2-site .header-login{padding:8px 10px;font-size:.7rem}.v2-site .header-actions{gap:5px}.v2-site .menu-toggle{font-size:.7rem;padding:8px 9px}.v2-site .footer-top{grid-template-columns:1fr}.v2-site .footer-bottom{flex-direction:column;gap:16px}.v2-site dialog{padding:24px 18px}.v2-site .faq-list summary{padding:18px}.v2-site .faq-list details>p{padding:0 18px 18px}.v2-site .site-footer{padding-top:40px}}
@media(prefers-reduced-motion:reduce){.v2-site *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Fidelity pass: reference component geometry and compact studio settings. */
.v2-site .concert-stage,.v2-site .concert-stage:has(.stage-screen[data-preview-aspect="16:9"]){top:0;width:330px;max-width:100%}
.v2-site .quality-picker label{display:flex}
.v2-site .quick-prompts-chips{gap:6px}.v2-site .prompt-chip{font-size:.7rem;padding:4px 10px;min-height:26px}.v2-site .prompt-chip[aria-pressed=true]{color:var(--color-primary);border-color:var(--color-primary)}
.v2-site .sound-option>span:not(.vu-meter-wrap){flex:1;order:0}.v2-site .sound-option .vu-meter-wrap{flex:0 0 100px;order:1;width:100px;height:48px}.v2-site .sound-option .vu-meter-wrap span{flex:none}
/* Follow the real checkbox, including restored drafts: animate only when music
   is selected. This is a decorative setting indicator, not an audio preview. */
.v2-site .sound-option .vu-backlight{opacity:.15}
.v2-site .sound-option .vu-needle{transform:rotate(-38deg);animation:none}
.v2-site .sound-option:has(input[name=audio]:checked) .vu-backlight{opacity:1}
.v2-site .sound-option:has(input[name=audio]:checked) .vu-needle{transform:rotate(-15deg);animation:vuFlutter 1.6s ease-in-out infinite alternate}
.v2-site .sound-option input{appearance:none;width:42px;height:24px;position:relative;border:0;border-radius:999px;background:var(--color-border-hover);margin:0;cursor:pointer;transition:background var(--transition-fast)}.v2-site .sound-option input::after{content:'';display:block;position:absolute;width:18px;height:18px;border-radius:50%;left:3px;top:3px;background:white;transition:transform var(--transition-fast)}.v2-site .sound-option input:checked{background:var(--color-primary)}.v2-site .sound-option input:checked::after{transform:translateX(18px)}.v2-site .sound-option input:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px}
.v2-site .stage-controls{gap:6px}.v2-site .stage-controls button{font-size:0;padding:0;width:38px;height:38px;min-height:38px;border-radius:50%;border:1px solid #ffffff50;background:#0008;color:white}.v2-site #stage-play::before{content:'▶';font-size:14px}.v2-site #stage-play[data-playing=true]::before{content:'Ⅱ'}.v2-site #stage-sound::before{content:'♬';font-size:17px}.v2-site #stage-sound[aria-pressed=false]::after{content:'';position:absolute;width:20px;height:1px;background:#fff;transform:rotate(-45deg)}.v2-site #stage-sound{position:relative;display:grid;place-items:center}
.v2-site #hero-title em{font-family:var(--font-serif);font-weight:400;font-style:italic;color:var(--color-primary)}
.v2-site #create{scroll-margin-top:0}.v2-site .studio-header h2{font-size:clamp(2rem,3.5vw,2.75rem)}
.v2-site .selected-scene{position:relative;min-height:70px;padding:12px 18px}.v2-site .selected-scene-copy{grid-column:auto;padding:0;margin:0;width:100%}.v2-site #selected-template-name{padding-right:80px}.v2-site #selected-template-description{padding-right:50px}.v2-site #selected-template-range{position:absolute;right:16px;top:16px;padding:4px 10px;border:1px solid var(--color-border-default);border-radius:999px;background:var(--primary-soft)}
.v2-site #change-template{position:absolute;inset:0;opacity:0;width:100%;height:100%;min-height:44px}.v2-site .selected-scene:focus-within{outline:2px solid var(--color-primary);outline-offset:3px}
.v2-site .v2-photo-fields>legend{position:absolute;clip-path:inset(50%);width:1px;height:1px;overflow:hidden;white-space:nowrap}.v2-site .v2-photo-fields .stage-container{background:none;border:0;box-shadow:none;padding:0;overflow:visible}.v2-site .v2-photo-fields .stage-backdrop-lights{display:none}
.v2-site .v2-photo-fields .cast-photo-meta{font:400 .7rem/1.5 var(--font-mono)}.v2-site .quality-picker label{flex-direction:row;padding:16px 12px;text-align:left;gap:10px;min-height:78px}.v2-site .quality-picker label::before{content:'⚡';font-size:1.25rem;line-height:1}.v2-site .quality-picker label:has([value=pro])::before{content:'🌟'}.v2-site .quality-picker label>span{display:block}.v2-site .quality-picker small{font:.7rem/1.5 var(--font-body)}
.v2-site .v2-shape-picker label{flex-direction:row;min-height:78px;padding:16px 12px;text-align:left}.v2-site .v2-shape-picker strong{display:block}.v2-site .v2-shape-picker small{display:block;font-size:.7rem;margin-top:4px;color:var(--color-text-secondary)}
.v2-site .v2-visible-options>.setting-label{display:none}.v2-site .v2-visible-options{gap:24px}.v2-site .v2-reference-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.v2-site #stage-video{z-index:2;clip-path:inset(0 0 0 var(--split-percent,50%))}.v2-site .stage-photo-frame{z-index:3}.v2-site .v2-compare-control{position:absolute;inset:0;z-index:8;pointer-events:none}.v2-site .v2-compare-control .split-divider-line{left:var(--split-percent,50%)}
.v2-site .v2-compare-label{position:absolute;inset:85px 0 100px;pointer-events:auto;cursor:ew-resize}.v2-site #v2-compare{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize}.v2-site .split-handle{pointer-events:none}.v2-site .v2-compare-label:focus-within+.split-divider-line .split-handle{outline:3px solid white;outline-offset:4px}
.v2-site .stage-screen:has(#stage-video[hidden]) .v2-compare-control,.v2-site .stage-screen:has(#stage-video[hidden]) .v2-reference-photo{display:none}
.v2-site .mockup-header{z-index:20}.v2-site .stage-status{z-index:20;top:auto;bottom:95px}.v2-site .stage-controls{bottom:20px}.v2-site .stage-bottom{bottom:62px}.v2-site .photo-source-pill{bottom:-20px;left:0}.v2-site .studio-settings-panel .field-help#quality-detail{margin:8px 0 0;font-size:.7rem}
@media(max-width:639px){.v2-site .theme-toggle{display:inline-flex}.v2-site .theme-toggle::before{display:inline-block}.v2-site .studio-header h2{font-size:1.5rem}.v2-site .v2-shape-picker label,.v2-site .quality-picker label{gap:8px;padding:12px 8px}.v2-site .shape-picker strong{font-size:.75rem}.v2-site .shape-picker small{font-size:.625rem}.v2-site #selected-template-description{padding-right:0}.v2-site .photo-source-pill{left:0;right:0;bottom:-26px;max-width:285px;margin:auto}}
/* Handoff feedback must paint immediately, without two dialogs fading over each other. */
.v2-site #checkout-loading,.v2-site #checkout-loading::backdrop,.v2-site #payment-dialog,.v2-site #payment-dialog::backdrop{transition:none;animation:none}
.v2-site #checkout-loading{width:min(360px,calc(100vw - 40px));text-align:center;padding:32px 24px}
.v2-site #checkout-loading p{margin:18px 0 0}

/* Keep payment recovery visible above the review/pack dialogs. */
#checkout-error{width:min(440px,calc(100vw - 32px));padding:30px 24px;animation:none;transition:none}
#checkout-error h2{font-size:1.35rem;padding-right:28px;margin-bottom:16px}
#checkout-error [role="alert"]{line-height:1.6;margin-bottom:22px}
.checkout-recovery-actions{display:grid;gap:10px}
.checkout-recovery-actions .button{width:100%;text-align:center}
