/* Studio page (/studio/): hero, two formats, perks, programs, how to join, FAQ, closing red block. */
.stu{padding-top:calc(var(--hdr) + clamp(26px,4vw,64px));padding-bottom:0;overflow-x:clip}
.stu-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(26px,5vw,80px);align-items:center;padding-bottom:clamp(56px,8vw,120px)}
.stu-hero-txt{display:grid;gap:clamp(18px,2.2vw,28px);justify-items:start;min-width:0}
.stu-hero h1{font:700 var(--fs-h1)/.84 var(--disp);text-transform:uppercase;letter-spacing:-.01em;overflow-wrap:anywhere}
.stu-hero h1 em,.stu-fin h2 em{display:block;font-style:normal;color:transparent;-webkit-text-stroke:2px var(--ink)}
html[lang=hy] .stu-hero h1{line-height:1}
html[lang=hy] .stu-fin h2{line-height:1}
.stu-lead{max-width:52ch;font-size:clamp(17px,1.7vw,21px);line-height:1.55;opacity:.9}
.stu-cta{display:flex;flex-wrap:wrap;gap:14px 18px;margin-top:6px}
.stu-ph{margin:0;position:relative;aspect-ratio:4/5;max-height:80vh;justify-self:center;width:min(100%,500px)}
.stu-ph::before{content:"";position:absolute;inset:-14px 14px 14px -14px;background:var(--red);clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 100%,30px 100%,0 calc(100% - 30px))}
.stu-ph img{position:relative;width:100%;height:100%;object-fit:cover;background:#111;clip-path:polygon(0 0,calc(100% - 30px) 0,100% 30px,100% 100%,30px 100%,0 calc(100% - 30px));filter:grayscale(.2) contrast(1.05)}

.stu-sec{padding-block:clamp(40px,6vw,96px);border-top:1px solid var(--line)}
.stu-sec>.tag{margin-bottom:clamp(22px,3vw,38px)}
.stu-h2{font:700 var(--fs-h2)/.9 var(--disp);text-transform:uppercase;letter-spacing:-.01em;margin-bottom:clamp(26px,4vw,52px);overflow-wrap:anywhere}
html[lang=hy] .stu-h2{line-height:1}

/* two formats */
.stu-cmp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,34px)}
.stu-panel{display:grid;gap:22px;align-content:start;padding:clamp(22px,3vw,44px);border:1px solid var(--line);background:#101010}
.stu-panel h3{font:700 var(--fs-h3)/1 var(--disp);text-transform:uppercase}
.stu-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.stu-panel li{position:relative;padding-left:26px;font-size:clamp(16px,1.35vw,18px);line-height:1.5}
.stu-panel li::before{content:"";position:absolute;left:0;top:.6em;width:12px;height:3px;background:var(--red)}
.stu-panel .btn{justify-self:start;margin-top:6px}
.stu-panel.is-live{background:var(--red);border-color:var(--red);color:#0a0a0a}
.stu-panel.is-live li::before{background:#0a0a0a}
.btn-dark{background:#0a0a0a;color:#fff}
.btn-dark:hover{background:#fff;color:#0a0a0a}

/* perks */
.stu-perks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));border-left:1px solid var(--line)}
.stu-perks article{display:grid;gap:12px;align-content:start;padding:clamp(20px,2.6vw,34px);border:1px solid var(--line);border-left:0;margin:0 0 -1px}
.stu-perks b{font:700 15px/1 var(--sans);letter-spacing:.2em;color:var(--red)}
.stu-perks h3{font:700 var(--fs-h3)/1.05 var(--disp);text-transform:uppercase}
.stu-perks p{font-size:16px;line-height:1.55;opacity:.82}

/* programs */
.stu-grp{list-style:none;margin:0;padding:0;display:grid}
.stu-grp li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8px clamp(20px,4vw,70px);align-items:baseline;padding:clamp(18px,2.4vw,30px) 0;border-top:1px solid var(--line)}
.stu-grp li:last-child{border-bottom:1px solid var(--line)}
.stu-grp h3{font:700 var(--fs-h3)/.95 var(--disp);text-transform:uppercase;overflow-wrap:anywhere;transition:color .25s}
html[lang=hy] .stu-grp h3{line-height:1.05}
.stu-grp li:hover h3{color:var(--red)}
.stu-grp p{font-size:clamp(16px,1.4vw,19px);opacity:.82;max-width:48ch}
.stu-note{margin-top:22px;font:700 13px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--dim)}

/* how to join */
.stu-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:clamp(18px,2.6vw,40px)}
.stu-steps li{display:grid;gap:10px;align-content:start;padding-top:clamp(16px,2vw,24px);border-top:3px solid var(--red)}
.stu-steps b{font:700 clamp(44.8px,4.8vw,73.6px)/1 var(--disp);color:transparent;-webkit-text-stroke:1.5px var(--ink)}
.stu-steps h3{font:700 var(--fs-h3)/1.05 var(--disp);text-transform:uppercase}
.stu-steps p{font-size:16px;line-height:1.55;opacity:.82;max-width:34ch}

/* faq (same look as on the course page) */
.stu .cs-faq{display:grid;max-width:860px}
.stu .cs-faq details{border-top:1px solid var(--line)}
.stu .cs-faq details:last-child{border-bottom:1px solid var(--line)}
.stu .cs-faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:20px 4px;font:700 clamp(17px,1.6vw,21px)/1.3 var(--sans)}
.stu .cs-faq summary::-webkit-details-marker{display:none}
.stu .cs-faq summary::after{content:"+";font:400 28px/1 var(--sans);color:var(--red);transition:transform .25s}
.stu .cs-faq details[open] summary::after{transform:rotate(45deg)}
.stu .cs-faq details[data-closing] summary::after{transform:none}
.stu .cs-faq p{padding:0 4px 22px;max-width:62ch;opacity:.85}

/* closing block */
.stu-fin{margin-top:clamp(40px,6vw,90px);background:var(--red);color:#0a0a0a;overflow:hidden}
.stu-fin-in{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(20px,4vw,60px);align-items:end}
.stu-fin-in>div{display:grid;gap:clamp(18px,2.4vw,30px);justify-items:start;padding-block:clamp(54px,8vw,120px)}
.stu-fin h2{font:700 var(--fs-h2)/.84 var(--disp);text-transform:uppercase;letter-spacing:-.01em;overflow-wrap:anywhere}
.stu-fin h2 em{-webkit-text-stroke-color:#0a0a0a}
.stu-fin p{max-width:44ch;font-size:clamp(17px,1.6vw,21px);font-weight:700}
.stu-fin-in img{width:100%;max-width:420px;justify-self:center;align-self:end;margin-bottom:-2px;filter:contrast(1.05)}

@media(max-width:900px){
  .stu-hero{grid-template-columns:1fr}
  .stu-ph{order:-1;width:min(100%,380px);aspect-ratio:1/1;max-height:none;margin-bottom:10px}
  .stu-ph::before{inset:-10px 10px 10px -10px}
  .stu-cmp{grid-template-columns:1fr}
  .stu-grp li{grid-template-columns:1fr}
  .stu-fin-in{grid-template-columns:1fr}
  .stu-fin-in img{max-width:300px;order:-1;margin-top:30px}
  .stu-fin-in>div{padding-block:0 clamp(44px,8vw,80px)}
}
@media(max-width:520px){.stu-cta .btn{width:100%}.stu-panel .btn{width:100%}}
