/* V4: real instrument, framed as a music campaign rather than a demo widget. */
.guitar-showcase{display:grid;grid-template-columns:.88fr 1.4fr;gap:35px;align-items:center;position:relative;padding-block:90px 115px;isolation:isolate}
.guitar-showcase:before{content:'';position:absolute;inset:50px -45px;background:radial-gradient(ellipse at 70% 53%,#ff603b08,transparent 63%);pointer-events:none;z-index:-1}
.guitar-showcase-copy{position:relative;z-index:2;max-width:430px}
.guitar-showcase-copy h2{font-size:clamp(59px,6.3vw,91px);line-height:.94;letter-spacing:-.023em}
.guitar-showcase-copy .eyebrow{font-size:9px;letter-spacing:.16em;margin-bottom:23px}
.guitar-intro{font-size:13px;line-height:1.8;max-width:295px;margin-top:27px}
.guitar-interaction-hint{font-size:10px;color:#9c9690;margin-top:23px;letter-spacing:.02em}
.guitar-showcase-copy .button{margin-top:22px;font-size:11px;min-height:48px;padding-top:6px;padding-bottom:6px;gap:20px;border-color:#ffffff28}
.guitar-showcase-copy .button>span{width:33px;height:33px;font-size:23px}
.guitar-showcase-copy .button:disabled{opacity:.35;cursor:default}
.touch-hint{display:none}
.guitar-stage{position:relative;width:100%;height:640px;min-width:0;isolation:isolate;overflow:hidden;border-radius:30px;contain:layout style}
.guitar-halo{position:absolute;inset:16% 4% 10%;background:radial-gradient(ellipse,#ff603b12,transparent 67%);z-index:-1;pointer-events:none}
.guitar-stage:after{content:'';position:absolute;left:14%;right:14%;bottom:28px;height:1px;background:linear-gradient(90deg,transparent,#ff603b32,transparent);pointer-events:none;opacity:.6}
#guitar-canvas{display:block;width:100%;height:100%;position:absolute;inset:0;opacity:0;transition:opacity 1s var(--ease);outline:none;touch-action:pan-y;cursor:grab}
#guitar-canvas:active{cursor:grabbing}
#guitar-fallback{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.72;transition:opacity .8s var(--ease);pointer-events:none;border-radius:28px;mask-image:linear-gradient(0deg,transparent,#000 14%,#000 84%,transparent)}
.guitar-stage[data-ready=true] #guitar-canvas,.guitar-stage[data-ready=ready] #guitar-canvas{opacity:1}
.guitar-stage[data-ready=true] #guitar-fallback,.guitar-stage[data-ready=ready] #guitar-fallback{opacity:0}
#guitar-stage-status{position:absolute;bottom:5px;left:20px;right:20px;text-align:center;font-size:9px;letter-spacing:.06em;color:#ada59e;pointer-events:none}
.guitar-stage[data-ready=loading] #guitar-stage-status:empty{display:none}
.guitar-showcase .reveal{--reveal-delay:65ms}
.guitar-showcase .guitar-stage{--reveal-delay:150ms}
@media(max-width:1100px){.guitar-showcase{grid-template-columns:.9fr 1.25fr;gap:20px;padding-block:70px 90px}.guitar-stage{height:590px}.guitar-showcase-copy h2{font-size:70px}}
@media(max-width:800px){.guitar-showcase{grid-template-columns:1fr 1.2fr;gap:15px;padding-block:65px 80px}.guitar-stage{height:530px}.guitar-showcase-copy h2{font-size:61px}.guitar-intro{font-size:12px;margin-top:24px}.guitar-interaction-hint{font-size:9px;line-height:1.7;max-width:200px}.guitar-showcase-copy .button{font-size:10px;gap:12px;padding-left:18px}.guitar-showcase-copy .button>span{width:30px;height:30px}}
@media(max-width:650px){.guitar-showcase{grid-template-columns:1fr;gap:15px;padding-block:65px 65px}.guitar-showcase-copy{max-width:none}.guitar-showcase-copy h2{font-size:69px}.guitar-stage{height:500px;margin-top:5px}.guitar-intro{max-width:350px;font-size:12px}.guitar-interaction-hint{font-size:10px;max-width:none;margin-top:17px}.guitar-showcase-copy .button{margin-top:20px;font-size:11px}.guitar-showcase:before{inset:190px -20px 25px}.guitar-stage:after{bottom:25px}.guitar-showcase-copy .eyebrow{margin-bottom:20px}}
@media(max-width:520px){.guitar-showcase{padding-block:60px 60px}.guitar-showcase-copy h2{font-size:65px}.guitar-stage{height:470px;border-radius:23px}#guitar-stage-status{font-size:8px;left:10px;right:10px}.guitar-showcase-copy .button{min-height:47px}.guitar-stage:after{left:15%;right:15%;bottom:24px}}
@media(max-width:360px){.guitar-showcase-copy h2{font-size:57px}.guitar-stage{height:440px}.guitar-intro{font-size:11px}}
@media(pointer:coarse){.pointer-hint{display:none}.touch-hint{display:inline}}
@media(prefers-reduced-motion:reduce){#guitar-canvas,#guitar-fallback{transition:none}}
