/* Image and glass masks always share the same 1672 × 941 coordinate system. */
.simulator-section{padding:120px var(--margin,5.5vw) 110px;background:#f3f5f7;color:#18212a}
.simulator-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;align-items:end;margin-bottom:48px}
.simulator-heading h2{font-size:clamp(38px,4.6vw,68px);font-weight:570;line-height:1.04;letter-spacing:-.04em;margin:0}
.simulator-heading p{max-width:415px;color:#52616f;font-size:17px;line-height:1.7;margin:0}
.film-simulator{--exterior-opacity:.30;--interior-opacity:.27;--sim-stage-height:clamp(350px,36vw,480px);background:#e8edf1}
.simulator-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:72px;padding:12px 24px;background:#e8edf1}
.simulator-product{font-size:14px;font-weight:550;letter-spacing:-.01em}
.simulator-views{display:flex;gap:4px;padding:4px;background:#dbe2e8;border-radius:30px}
.simulator-views button{border:0;color:#465462;background:transparent;font:inherit;font-size:13px;line-height:1.3;padding:12px 24px;min-height:44px;border-radius:24px;cursor:pointer;transition:background .2s,color .2s}
.simulator-views button[aria-pressed=true]{color:white;background:#182c41}
.simulator-stage{position:relative;height:var(--sim-stage-height);overflow:hidden;background:#101923;isolation:isolate}
.simulator-plate{position:absolute;inset:0}
.simulator-plate[hidden]{display:none!important}
.simulator-image-space{position:absolute;top:50%;left:50%;width:max(100%,calc(var(--sim-stage-height) * 1.77683316));height:auto;aspect-ratio:1672/941;transform:translate(-50%,-50%)}
.simulator-plate--outside .simulator-image-space{transform:translate(-50%,-50%) scale(1.12);transform-origin:74% 60%}
.simulator-image-space>img{display:block;width:100%;height:100%;max-width:none;object-fit:fill}
.simulator-image-space>.simulator-glass{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:none;max-width:none;pointer-events:none}
.simulator-film{transition:opacity .45s ease}
.simulator-plate--outside .simulator-film{opacity:var(--exterior-opacity)}
.simulator-plate--inside .simulator-film{opacity:var(--interior-opacity)}
.simulator-image-caption{position:absolute;z-index:2;top:28px;left:30px;display:flex;flex-direction:column;color:white;line-height:1.1;text-shadow:0 1px 8px #07121c80}
.simulator-image-caption strong{font-size:clamp(28px,4.3vw,62px);font-weight:450;letter-spacing:-.04em}
.simulator-image-caption span{font-size:12px;margin-top:8px;font-weight:400}
.film-simulator[data-view=inside] .simulator-image-caption{color:#182c41;text-shadow:0 1px 10px #ffffff50}
.film-simulator[data-view=inside][data-tone="5"] .simulator-image-caption{color:white;text-shadow:0 1px 8px #07121c80}
.simulator-illustrative{position:absolute;bottom:16px;right:20px;color:#fff;font-size:10px;z-index:2;text-shadow:0 1px 6px #000;background:#0b101759;padding:4px 7px}
.simulator-tones{display:grid;grid-template-columns:repeat(4,1fr);padding:0 24px;background:#e8edf1}
.simulator-tones button{position:relative;display:flex;align-items:center;justify-content:center;gap:18px;min-height:110px;padding:22px 10px;background:transparent;color:#637180;border:0;border-top:3px solid transparent;font:inherit;text-align:left;cursor:pointer;transition:color .25s,border-color .25s,background .25s}
.simulator-tones button[aria-pressed=true]{color:#245ba8;border-top-color:#245ba8;background:#f7f9fb}
.simulator-tones button:hover{color:#182c41;background:#f3f6f8}
.simulator-tones button>span{display:flex;flex-direction:column}
.simulator-tones strong{font-size:25px;font-weight:520;line-height:1.2;letter-spacing:-.03em}
.simulator-tones small{font-size:11px;font-weight:400;margin-top:6px;white-space:nowrap}
.simulator-swatch{width:32px;height:42px;transform:skew(-10deg);border:1px solid #85929e80;background:linear-gradient(135deg,#ffffff34,transparent 70%),#172430;flex:none}
.simulator-swatch--20{background:linear-gradient(135deg,#ffffff44,transparent 70%),#475461}
.simulator-swatch--35{background:linear-gradient(135deg,#ffffff60,transparent 70%),#7d8b97}
.simulator-swatch--70{background:linear-gradient(135deg,#ffffff90,transparent 70%),#c2ccd4}
.simulator-disclaimer{font-size:11px;line-height:1.7;color:#657483;margin:16px 0 0;max-width:920px}
.simulator-live{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.film-simulator button:focus-visible{outline:3px solid #4089eb;outline-offset:-4px;z-index:3}
@media(max-width:759px){
  .simulator-section{padding:75px 24px 70px}
  .film-simulator{--sim-stage-height:290px}
  .simulator-plate--outside .simulator-image-space{transform:translate(-69%,-50%);transform-origin:center}
  .simulator-plate--inside .simulator-image-space{transform:translate(-54%,-50%)}
  .simulator-heading{display:block;margin-bottom:30px}
  .simulator-heading h2{font-size:40px}
  .simulator-heading p{font-size:15px;line-height:1.65;margin-top:24px;max-width:340px}
  .simulator-toolbar{padding:12px;gap:10px;min-height:68px}
  .simulator-product{font-size:11px;max-width:80px;line-height:1.4}
  .simulator-views button{padding:10px 16px;font-size:12px}
  .simulator-image-caption{top:14px;left:14px}
  .simulator-image-caption strong{font-size:28px}
  .simulator-image-caption span{font-size:9px;margin-top:4px}
  .simulator-illustrative{font-size:8px;bottom:10px;right:10px;padding:3px 5px}
  .simulator-tones{padding:0}
  .simulator-tones button{min-height:105px;padding:14px 4px;gap:10px;flex-direction:column;align-items:center;text-align:center}
  .simulator-tones strong{font-size:21px}
  .simulator-tones small{font-size:8px;margin-top:4px}
  .simulator-swatch{width:20px;height:24px}
  .simulator-disclaimer{font-size:10px;margin-top:14px}
}
@media(prefers-reduced-motion:reduce){.film-simulator *{transition:none!important}}
