/* IDA Studio — Cinema Showroom v1. Scope: catalogue only. */
:root{--night:#070b12;--gold:#d3bb97;--muted:#a6b3c4;--edge:rgba(213,227,243,.17);--stage-accent:#efbc80}
*,*:before,*:after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:#f5f1e9;background:radial-gradient(ellipse 70% 28% at 68% -5%,#26394e 0%,transparent 85%),#070b12;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
button,input,a{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}
:focus-visible{outline:2px solid #f8dcb0;outline-offset:5px}
.top{position:relative;z-index:5;padding:20px max(23px,calc((100vw - 1520px)/2));display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--edge);background:#090e16cc;backdrop-filter:blur(14px)}
.brand{display:flex;gap:13px;align-items:center;white-space:nowrap;font-size:19px;font-weight:300;letter-spacing:.3em}
.brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d3bb97a8;border-radius:12px;transform:rotate(-6deg);font:18px Georgia,serif;color:#e9d6b6;letter-spacing:0}
.brand small{display:block;font-size:9px;letter-spacing:.26em;color:#a7b4c3}
.nav{display:flex;gap:24px;align-items:center;color:#b0becb;font-size:12px}
.nav a{transition:color .2s}.nav a:hover{color:#fff}
main{max-width:1600px;margin:auto;padding:0 clamp(18px,4vw,68px) 100px}
.heading{position:relative;padding:clamp(54px,9vw,120px) 0 35px}
.eyebrow,.caps{display:block;color:#c7b18e;letter-spacing:.22em;text-transform:uppercase;font-size:10px;font-weight:600}
.heading h1{font:400 clamp(51px,8.5vw,132px)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.072em;margin:20px 0}
.heading h1 em{font-style:italic;color:#d8c3a2}
.heading p{max-width:700px;color:#b7c2cf;line-height:1.75;font-size:clamp(13px,1.7vw,17px);margin:20px 0 0}
.heading .edition{position:absolute;right:0;bottom:30px;color:#8a9aab;text-transform:uppercase;letter-spacing:.19em;font-size:10px}
.hairline{height:1px;background:linear-gradient(90deg,transparent,#cdb99790 30%,#ffffff25 65%,transparent);margin:18px 0 30px}
.room{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:22px;align-items:start}
.screen-column{min-width:0}
.stage-shell{position:relative;isolation:isolate;overflow:hidden;padding:clamp(8px,1.25vw,18px);border:1px solid #ced6e42b;border-radius:19px;background:linear-gradient(143deg,#1a202c,#0b0d13 65%);box-shadow:0 35px 100px #0008,inset 0 1px 1px #ffffff1a}
.stage-shell:before{content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #ffffff13;border-radius:19px}
.stage{position:relative;overflow:hidden;min-height:365px;aspect-ratio:16/9;border-radius:12px;border:1px solid #ffffff19;background:#1a1718;display:flex;align-items:stretch;justify-content:stretch}
.stage-world{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 76% 44%,color-mix(in srgb,var(--stage-accent),transparent 62%),transparent 52%),linear-gradient(115deg,#12151c 8%,#283140 57%,#12151b);transition:background 600ms}
.stage-world:before{content:"";position:absolute;inset:7% 5%;border:1px solid #ffffff24;border-radius:50%;transform:scale(1.5) rotate(-16deg);box-shadow:0 0 0 70px #ffffff04,0 0 0 150px #ffffff02;animation:orbit 24s linear infinite}
.stage-world:after{content:"";position:absolute;inset:-25%;background:repeating-linear-gradient(125deg,transparent 0 40px,#fff1 41px,transparent 42px 91px);opacity:.28;animation:drift 22s ease-in-out infinite alternate}
.stage[data-world="maestro"] .stage-world{background:radial-gradient(circle at 73% 54%,#f4a34c88,transparent 29%),radial-gradient(circle at 74% 60%,#7e3219aa,transparent 55%),linear-gradient(130deg,#302421,#1b1110 55%,#090b10)}
.stage[data-world="anima"] .stage-world{background:radial-gradient(ellipse at 72% 45%,#cfaa8970,transparent 37%),linear-gradient(123deg,#343336,#121414 72%,#151110)}
.stage[data-world="anima3d"] .stage-world{background:radial-gradient(ellipse at 65% 45%,#efe0ba55,transparent 42%),linear-gradient(125deg,#181d1c,#473a31,#0d1014)}
.stage[data-world="marla"] .stage-world{background:radial-gradient(ellipse at 67% 38%,#d1f58b66,transparent 45%),linear-gradient(125deg,#242927,#111617 70%,#080b0e)}
.stage[data-world="bonnet"] .stage-world{background:radial-gradient(ellipse at 72% 43%,#ddcdbf8c,transparent 42%),linear-gradient(130deg,#4e5151,#252529 50%,#0e1117)}
.stage[data-world="buena"] .stage-world{background:radial-gradient(ellipse at 72% 40%,#f2ae4e88,transparent 40%),linear-gradient(120deg,#253d4e,#0f202b 60%,#101019)}
.stage-visual{position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(26px,5.2vw,85px);z-index:1;pointer-events:none}
.stage-index{font-size:11px;letter-spacing:.26em;color:#efddc4;margin-bottom:clamp(13px,3vw,36px);text-shadow:0 2px 15px #000}
.stage-title{max-width:90%;font:400 clamp(46px,7.2vw,112px)/.94 Georgia,serif;letter-spacing:-.072em;color:#fff8ef;text-shadow:0 7px 45px #0009;overflow-wrap:anywhere}
.stage-sub{display:block;margin-top:clamp(12px,2vw,26px);font-size:clamp(10px,1.3vw,14px);letter-spacing:.19em;color:#fff4e5;text-transform:uppercase;text-shadow:0 2px 15px #000}
.stage-tag{position:absolute;top:22px;right:24px;z-index:2;padding:8px 11px;border:1px solid #ffffff55;border-radius:20px;color:#fff9ec;background:#10151985;font-size:9px;letter-spacing:.16em;text-transform:uppercase;backdrop-filter:blur(8px)}
.stage-foot{position:absolute;bottom:20px;left:24px;right:24px;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;color:#fffc;letter-spacing:.11em}
.frame-host{position:absolute;inset:0;z-index:4;background:#10151c;display:none}
.frame-host.is-open{display:block}.frame-host iframe{border:0;width:100%;height:100%;background:#f9f8f3}
.frame-guide{position:absolute;inset:auto 11px 11px;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:9px 13px;border-radius:8px;background:#0a111ae0;color:white;font-size:11px;backdrop-filter:blur(9px);pointer-events:none}
.frame-guide a{pointer-events:auto;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.room-controls{display:flex;gap:12px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:20px 2px 7px}
.counter{font-size:11px;letter-spacing:.2em;color:#aaafba}.counter strong{color:#f5ead8;font-size:14px;font-weight:500}
.arrows{display:flex;gap:7px}
.circle{height:43px;width:43px;display:grid;place-items:center;border:1px solid #ffffff37;border-radius:50%;background:#ffffff08;color:white;transition:transform .25s,background .25s}
.circle:hover{background:#ffffff23;transform:translateY(-2px)}
.icon{width:17px;height:17px;stroke:currentColor;stroke-width:1.65;fill:none;stroke-linecap:round;stroke-linejoin:round}
.room-description{color:#aeb9c7;font-size:13px;line-height:1.7;margin:0;padding:3px 2px 15px;min-height:62px}
.filmstrip-heading{display:flex;align-items:center;justify-content:space-between;color:#b5c0cd;font-size:11px;letter-spacing:.15em;text-transform:uppercase;margin:15px 0 12px}
.filmstrip{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#c2af8877 transparent;padding:4px 3px 12px;overscroll-behavior-x:contain}
.film{position:relative;flex:0 0 min(164px,39vw);scroll-snap-align:start;min-width:0;min-height:105px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:5px;text-align:left;padding:14px 12px;border:1px solid #ffffff33;border-radius:11px;background:radial-gradient(ellipse at 75% 28%,var(--film-color),transparent 55%),linear-gradient(130deg,#27303a,#11141b);color:#fff;transition:transform .25s,border-color .25s,box-shadow .25s}
.film:before{content:"";position:absolute;inset:5px 5px auto;height:1px;background:linear-gradient(90deg,transparent,#ffffff80,transparent);opacity:.45}
.film:hover{transform:translateY(-3px)}.film[aria-pressed="true"]{border-color:#dcc7a6;box-shadow:0 0 0 1px #d5bd9578,0 16px 40px #0005}
.film b{font:400 19px/1.04 Georgia,serif;letter-spacing:-.04em}.film small{color:#e4edf1b8;font-size:10px}.film .number{position:absolute;top:12px;left:12px;color:#f6eee0ba;font-size:10px;letter-spacing:.15em}
.panel{position:sticky;top:18px;min-width:0;border:1px solid #ffffff27;border-radius:17px;padding:24px 22px 20px;background:linear-gradient(145deg,#242e3794,#0f151ccf);backdrop-filter:blur(14px);box-shadow:0 22px 80px #0004}
.panel h2{font:400 32px/1.1 Georgia,serif;letter-spacing:-.05em;margin:10px 0 12px}.panel>p{color:#b3bfc9;font-size:12px;line-height:1.7;margin:0 0 20px}
.panel label{display:block;color:#e3e6e9;font-size:11px;letter-spacing:.06em;margin-bottom:8px}
.panel input{width:100%;min-height:44px;border:1px solid #ffffff4b;border-radius:9px;background:#090e16b7;color:#f5f3ed;padding:11px 13px;font-size:13px}
.panel-section{margin:17px 0}
.swatches{display:flex;gap:10px;flex-wrap:wrap}.swatch{height:35px;width:35px;border-radius:50%;border:2px solid #ffffff45;background:var(--swatch);transition:transform .2s}
.swatch:hover{transform:scale(1.1)}.swatch[aria-pressed="true"]{outline:2px solid #efdfc3;outline-offset:3px}
.btn{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;text-align:center;padding:11px 14px;border:1px solid #d4bd9b;border-radius:10px;background:#d7c2a1;color:#161719;font-size:12px;font-weight:650;transition:background .2s,transform .2s}
.btn:hover{background:#f0ddbd;transform:translateY(-2px)}
.btn.secondary{background:transparent;color:#e5dbc8;border-color:#ffffff55;font-weight:500}
.btn:disabled{cursor:not-allowed;opacity:.42;transform:none}
.panel-buttons{display:grid;gap:9px;margin-top:18px}
.status{min-height:18px;margin:9px 0;color:#cfc4b4;font-size:11px;line-height:1.5}
.note{color:#9eabb7;font-size:10px;line-height:1.6;border-top:1px solid #ffffff22;padding-top:15px;margin:13px 0 0}
.section-bottom{display:flex;justify-content:space-between;gap:28px;align-items:start;padding:65px 0 20px;border-top:1px solid var(--edge);margin-top:70px}
.section-bottom h2{font:400 clamp(28px,4vw,48px)/1.1 Georgia,serif;letter-spacing:-.05em;max-width:520px;margin:10px 0}
.section-bottom p{max-width:470px;color:#aebac6;font-size:13px;line-height:1.8;margin:0}
.footer{padding:26px 5vw;border-top:1px solid var(--edge);color:#9eabb8;font-size:12px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@keyframes orbit{to{transform:scale(1.5) rotate(344deg)}}@keyframes drift{to{transform:translate3d(6%,3%,0)}}
@media(max-width:1080px){.room{grid-template-columns:minmax(0,1fr) 270px}.stage{min-height:300px}.panel{padding:19px 16px}}
@media(max-width:760px){.nav{gap:12px;font-size:11px}.top{padding:17px 20px}.brand{font-size:16px}.brand-mark{width:34px;height:34px}.heading{padding:67px 0 35px}.heading .edition{position:static;display:block;margin-top:22px}.room{grid-template-columns:1fr;gap:23px}.stage{aspect-ratio:4/5;min-height:0}.stage-visual{padding:32px 28px}.stage-title{font-size:clamp(40px,13vw,75px)}.stage-foot{bottom:13px;left:14px;right:14px;font-size:9px}.stage-tag{right:14px;top:14px}.room-description{min-height:0}.panel{position:static}.section-bottom{display:block;padding-top:40px}.section-bottom p{margin-top:18px}.frame-guide{flex-direction:column;align-items:start}.film{flex-basis:145px}.stage-world:before,.stage-world:after{animation-duration:38s}}
@media(max-width:410px){.nav a:nth-child(2){display:none}.stage{aspect-ratio:3/4}.stage-title{font-size:clamp(40px,13vw,63px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* V2 — cinema = the ORIGINAL WEBSITE, not a giant typographic slide.
   Desktop and mobile remain fully navigable inside the stage when the site allows frames. */
.stage.cinema-live-stage{
  display:block!important;position:relative;
  width:100%;min-height:clamp(570px,66vw,810px);height:min(76vh,860px);
  aspect-ratio:auto;background:#101010;overflow:hidden;
  border-radius:12px;
}
.stage.cinema-live-stage > :not(.cinema-display):not(.cinema-display-chrome){display:none!important}
.cinema-display{position:absolute;inset:0;z-index:1;overflow:hidden;background:#161b1e}
.cinema-site-frame{display:block;width:100%;height:100%;border:0;background:#fff;overscroll-behavior:contain}
.cinema-display-chrome{
 position:absolute;z-index:5;top:0;right:0;left:0;
 min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:12px;
 padding:10px clamp(10px,2vw,20px);
 background:linear-gradient(to bottom,#070b0de8,#090b0b72 75%,transparent);
 pointer-events:none
}
.cinema-label{display:flex;align-items:center;gap:10px;min-width:0;pointer-events:none;color:white;
 text-shadow:0 1px 7px #000;font-size:10px;letter-spacing:.04em}
.cinema-label strong{font-size:11px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(25vw,180px)}
.cinema-live-light{color:#dcf9d6;font-size:9px;letter-spacing:.08em;white-space:nowrap}
.cinema-display-actions{display:flex;align-items:center;gap:7px;pointer-events:auto}
.cinema-action{border:1px solid #ffffff75;border-radius:100px;color:#fff;background:#111b21cc;
 font-size:10px;letter-spacing:.035em;padding:8px 12px;min-height:34px;white-space:nowrap;
 box-shadow:0 4px 18px #0004;backdrop-filter:blur(7px);transition:background .2s,transform .2s}
.cinema-action:hover{background:#324553;transform:translateY(-1px)}
.cinema-poster{position:absolute;inset:0;background:#202426;overflow:hidden}
.cinema-photo{display:block;width:100%;height:100%;object-fit:cover}
.cinema-poster .cinema-photo{opacity:.94;filter:brightness(.67)}
.cinema-poster-overlay{position:absolute;inset:0;display:flex;flex-direction:column;
 align-items:flex-start;justify-content:flex-end;gap:13px;
 padding:clamp(22px,5vw,68px);
 background:linear-gradient(0deg,#070a0ef0 3%,#070a0e60 59%,transparent 100%);
 color:white
}
.cinema-screen-note{font-size:10px;letter-spacing:.18em;color:#f1dcb6}
.cinema-poster-title{font:400 clamp(38px,6vw,78px)/1 Georgia,serif;letter-spacing:-.062em;max-width:90%;margin:0;color:#fffaf0}
.cinema-poster-message{font-size:clamp(12px,1.35vw,16px);line-height:1.6;
 color:#e5e6e4;max-width:500px;margin:0}
.cinema-poster-button{border:1px solid #ffffffbb;border-radius:100px;
 padding:14px 22px;background:#e8d7c0;color:#181718;font-size:13px;
 transition:transform .25s,background .25s}
.cinema-poster-button:hover{background:#fff0d4;transform:translateY(-2px)}
.cinema-maestro-poster{background:radial-gradient(ellipse at 75% 36%,#eab77e 0,#f0d9a8 33%,#7e4c36 85%)}
.cinema-maestro-logo{position:absolute;top:15%;left:10%;font-size:clamp(42px,7vw,120px);font-weight:900;letter-spacing:-.08em;font-style:italic;color:#382419}
.cinema-film{min-height:125px!important;flex:0 0 clamp(160px,17vw,240px)!important;
 padding:0!important;justify-content:end!important;gap:0!important;overflow:hidden;
 border-radius:12px!important;background:#0d151a!important;
 isolation:isolate;scroll-snap-align:center
}
.cinema-film:before{display:none!important}
.cinema-film-picture{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 50% 20%,var(--film-color),#131719 85%)}
.cinema-film-picture .cinema-photo{filter:brightness(.8);opacity:.9;
 transition:transform .45s,filter .45s}
.cinema-film:hover .cinema-photo,.cinema-film[aria-pressed="true"] .cinema-photo{transform:scale(1.05);filter:brightness(1)}
.cinema-film-label{position:relative;z-index:1;display:flex;flex-direction:column;gap:4px;
 width:100%;padding:31px 13px 12px;
 background:linear-gradient(0deg,#030709e8,#030709a3 63%,transparent);
 text-shadow:0 2px 5px #000}
.cinema-film-label strong{font:500 18px/1.05 Georgia,serif!important;color:#fff}
.cinema-film-label small{font-size:10px!important;color:#ecede9dd!important}
.cinema-film[aria-pressed="true"]{border-color:#ffdeb0!important;box-shadow:0 0 0 2px #d5bd95a8,0 8px 34px #0008!important}
.cinema-film .cinema-maestro-logo{font-size:clamp(23px,3vw,42px);top:20%;left:12%}
.cinema-immersed{
 position:fixed!important;inset:12px!important;z-index:99999!important;
 width:auto!important;height:auto!important;min-height:0!important;
 max-height:none!important;aspect-ratio:auto!important;
 background:#050607;border-radius:12px!important;box-shadow:0 0 0 30px #020306f4
}
.cinema-immersed-body{overflow:hidden}
.cinema-immersed .cinema-display-chrome{min-height:62px}
.room{grid-template-columns:minmax(0,1fr) minmax(250px,300px)}
.panel{top:12px}
@media(max-width:1020px){.room{grid-template-columns:1fr}.panel{position:static;max-width:none}
.stage.cinema-live-stage{height:68vh;min-height:440px}}
@media(max-width:760px){
 .stage.cinema-live-stage{height:69svh;min-height:490px;max-height:780px;aspect-ratio:auto}
 .stage-shell{padding:6px;border-radius:15px}
 .stage.cinema-live-stage{border-radius:9px}
 .cinema-display-chrome{padding:10px 9px}
 .cinema-label{gap:5px;font-size:9px}
 .cinema-live-light{font-size:8px}
 .cinema-label strong{font-size:10px;max-width:75px}
 .cinema-action{padding:8px 9px;font-size:10px}
 .cinema-poster-title{font-size:clamp(35px,9vw,56px)}
 .cinema-film{flex-basis:168px!important;min-height:118px!important}
 .cinema-film-label{padding:28px 11px 11px}
 .filmstrip{gap:11px}
 .cinema-poster-overlay{padding:26px 22px}
 .cinema-immersed{inset:0!important;border-radius:0!important}
}
@media(max-width:360px){.cinema-label strong{display:none}}
@media(prefers-reduced-motion:reduce){.cinema-film-picture .cinema-photo{transition:none!important}}
