/* Slide 04, Act I. The surrounding teaching shell keeps its cream theme. */
.teaching-slide.slide-act-intro{
 position:relative;isolation:isolate;overflow:hidden;border:1px solid #a88c51;border-radius:12px;
 background:#132a25;color:#f6c968;padding:clamp(14px,3cqh,30px) 4%;
 box-shadow:inset 0 0 0 3px #071a1c66;
}
.teaching-slide.slide-act-intro::before{
 content:'';position:absolute;inset:0;z-index:-2;pointer-events:none;
 background:linear-gradient(#0b191540,#0b191540),url('../../assets/experience/act01-patrol.png') center 48%/cover no-repeat;
}
.teaching-slide.slide-act-intro::after{
 content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;
 background:radial-gradient(ellipse at 50% 45%,#0a18183d 8%,#091814a6 70%,#040d0cf2 100%);
 box-shadow:inset 0 0 65px #07110e99;
}
.slide-act-intro .act-content{
 width:100%;max-width:1250px;min-height:0;margin:auto;display:flex;flex-direction:column;align-items:center;
 gap:clamp(15px,4cqh,32px);text-align:center;text-shadow:0 2px 8px #000,0 0 24px #000b;
}
.teaching-slide.slide-act-intro .slide-kicker{margin:0;color:#f2dda4;letter-spacing:2px;font:650 clamp(10px,2.3cqh,15px)/1.5 var(--sans);text-transform:uppercase}
.slide-act-intro .act-badge{
 max-width:100%;border:1px solid #d4af3799;border-radius:5px;padding:clamp(7px,1.7cqh,12px) clamp(10px,2vw,24px);
 background:linear-gradient(135deg,#9e7a343d,#0c211ce6);box-shadow:inset 0 1px 0 #ffe5a34d,0 3px 18px #0005;
 color:#f3d48c;font:700 clamp(10px,2.3cqh,16px)/1.5 var(--sans);letter-spacing:1.5px;
}
.teaching-slide.slide-act-intro h2{
 margin:0;max-width:1200px;color:#f6c968;text-transform:uppercase;text-wrap:balance;
 font:800 clamp(26px,min(3.6vw,8cqh),66px)/1.25 var(--serif);
 text-shadow:0 0 12px rgba(246,201,104,.4),0 3px 0 #5d411f,0 5px 10px #000;
}
.slide-act-intro .act-era{
 display:flex;align-items:center;justify-content:center;gap:clamp(12px,2.5vw,32px);max-width:100%;padding:7px 0;
 color:#f6c968;background:linear-gradient(90deg,transparent,#11221dcc 25%,#11221dcc 75%,transparent);
 font:650 clamp(24px,5cqh,38px)/1.3 var(--serif);text-shadow:0 0 8px #f6c96866;
}
.slide-act-intro .act-era::before,.slide-act-intro .act-era::after{content:'';width:clamp(24px,6vw,90px);height:1px;background:linear-gradient(90deg,transparent,#f6c968);box-shadow:0 0 8px #f6c96855}
.slide-act-intro .act-era::after{transform:rotate(180deg)}
.slide-act-intro .act-action{max-width:100%;filter:drop-shadow(0 0 8px #e5a93b80);animation:act-gold-pulse 3s ease-in-out infinite}
.slide-act-intro .act-start{
 position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:12px;
 max-width:100%;min-height:48px;padding:clamp(12px,2.4cqh,19px) clamp(16px,3vw,44px);border:0;border-radius:0;
 clip-path:polygon(8px 0,calc(100% - 8px) 0,100% 8px,100% calc(100% - 8px),calc(100% - 8px) 100%,8px 100%,0 calc(100% - 8px),0 8px);
 background:linear-gradient(135deg,#d4af37 0%,#f6d778 28%,#c79c30 52%,#8f681a 100%);color:#172016;
 box-shadow:inset 0 0 0 1px #ffe6a1,inset 0 0 15px #ffe6a14d;
 font:700 clamp(12px,2.6cqh,18px)/1.4 var(--sans);letter-spacing:2px;text-shadow:0 1px 0 #fff1b875;cursor:pointer;transition:transform .2s;
}
.slide-act-intro .act-start::before{content:'';position:absolute;inset:3px;pointer-events:none;border:1px solid #fff0b580;clip-path:polygon(6px 0,calc(100% - 6px) 0,100% 6px,100% calc(100% - 6px),calc(100% - 6px) 100%,6px 100%,0 calc(100% - 6px),0 6px)}
.slide-act-intro .act-start:hover{transform:translateY(-2px) scale(1.03)}
.slide-act-intro .act-start:active{transform:translateY(0)}
.slide-act-intro .act-start:focus-visible{outline:0;background:#ffe39c;box-shadow:inset 0 0 0 3px #fff8db,inset 0 0 0 5px #775313}
@keyframes act-gold-pulse{50%{filter:drop-shadow(0 0 15px #e5a93b99)}}
@media(max-width:600px){
 .teaching-slide.slide-act-intro{padding:16px 12px}
 .slide-act-intro .act-content{gap:clamp(12px,3cqh,22px)}
 .teaching-slide.slide-act-intro h2{font-size:clamp(22px,min(6.4vw,6.5cqh),34px);line-height:1.3}
 .slide-act-intro .act-badge{letter-spacing:.8px}
 .slide-act-intro .act-start{letter-spacing:1px;gap:8px}
}
@media(prefers-reduced-motion:reduce){.slide-act-intro .act-action{animation:none}.slide-act-intro .act-start{transition:none}.slide-act-intro .act-start:hover{transform:none}}
