/* Scoped presentation upgrades. Native HTML remains the no-JS fallback. */
.bui-stroke{position:relative;isolation:isolate;display:inline-block}
.bui-stroke-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;color:var(--orange);opacity:0}
.bui-stroke-svg text{fill:transparent;stroke:currentColor;stroke-width:1;stroke-dasharray:900;stroke-dashoffset:900;paint-order:stroke}
.bui-stroke-running .bui-heading-text{animation:bui-fill 1.15s ease both}
.bui-stroke-running .bui-stroke-svg{animation:bui-outline 1.15s ease both}
.bui-stroke-running .bui-stroke-svg text{animation:bui-draw 1.05s ease-out both}
.bui-wrapped.bui-stroke-running .bui-heading-text{animation:bui-wrapped-fill 1.15s ease both}
@keyframes bui-wrapped-fill{0%,35%{color:transparent;-webkit-text-stroke:.7px var(--orange)}100%{color:inherit;-webkit-text-stroke:0 transparent}}
@keyframes bui-draw{to{stroke-dashoffset:0}}
@keyframes bui-outline{0%,70%{opacity:1}100%{opacity:0}}
@keyframes bui-fill{0%,35%{color:transparent}100%{color:inherit}}
.students-section .horizontal-carousel.student-carousel{grid-auto-columns:calc((100% - 28px)/2.3);gap:28px;padding-bottom:24px;scroll-padding-inline:5px;scrollbar-width:thin;scrollbar-color:var(--orange) transparent}
.students-section .student-card{position:relative;scroll-snap-align:start}
.students-section .student-photo{aspect-ratio:1/1;border-radius:8px;isolation:isolate;border:1px solid var(--line)}
.students-section .student-photo img{transition:transform .45s cubic-bezier(.2,.7,.2,1);user-select:none;-webkit-user-drag:none}
.students-section .student-card .card-meta{padding-top:18px}
.students-section .student-card .card-meta h3{margin-bottom:5px}
.bui-gallery-footer{display:flex;align-items:center;gap:20px;margin-top:4px}
.bui-gallery-progress{height:2px;flex:1;background:var(--line);overflow:hidden}
.bui-gallery-progress>span{display:block;height:100%;width:100%;background:var(--orange);transform:scaleX(var(--bui-progress,0));transform-origin:left;transition:transform .15s linear}
.bui-gallery-status{margin:0;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;min-width:55px;text-align:right}
.student-carousel.bui-draggable{cursor:grab}
.student-carousel.bui-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto;user-select:none}
.belinh-effect-off-student_cards .students-section .student-card:hover .student-photo img{transform:none}
.bui-cursor{position:fixed;z-index:80;left:0;top:0;width:30px;height:30px;margin:-15px 0 0 -15px;border:1px solid var(--orange);border-radius:50%;pointer-events:none;opacity:0;transition:opacity .18s,background .18s;contain:layout style}
.bui-cursor.is-visible{opacity:.65;background:#f4a3400a}
.bui-sparks{position:fixed;inset:0;pointer-events:none;z-index:90;overflow:hidden}
.bui-spark{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--orange);animation:bui-spark .45s ease-out both}
@keyframes bui-spark{from{transform:translate(-50%,-50%) scale(1);opacity:.9}to{transform:translate(calc(-50% + var(--sx)),calc(-50% + var(--sy))) scale(.3);opacity:0}}
@media(min-width:851px) and (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .hero.bui-hero .hero-photo{animation:none;scale:1.07;transform:translate3d(var(--bui-hx,0px),calc(clamp(0px,var(--hero-drift,0px),12px) + var(--bui-hy,0px)),0)}
 .hero.bui-hero .hero-copy{transform:perspective(1200px) translate3d(var(--bui-cx,0px),var(--bui-cy,0px),0) rotateX(var(--bui-rx,0deg)) rotateY(var(--bui-ry,0deg));transform-origin:center}
 .hero.bui-moving .hero-photo,.hero.bui-moving .hero-copy{will-change:transform}
 .students-section .student-card:hover .student-photo img{transform:scale(1.025)}
 .hero .button,.contact-strip .button{transition:translate .2s ease-out,scale .16s,background .15s,color .15s,box-shadow .2s}
 .hero .button:hover,.contact-strip .button:hover{box-shadow:0 5px 22px #0003}
 .hero .button:active,.contact-strip .button:active{scale:.97}
}
@media(max-width:850px){.students-section .horizontal-carousel.student-carousel{grid-auto-columns:68%;gap:22px}}
@media(max-width:600px){.students-section .horizontal-carousel.student-carousel{grid-auto-columns:86%;gap:18px}.students-section .student-photo{border-radius:6px}.bui-gallery-footer{gap:14px}}
@media(max-width:850px),(hover:none),(pointer:coarse){.hero .hero-photo{animation:none;transform:none;scale:1}.bui-cursor,.bui-sparks{display:none}}
@media(prefers-reduced-motion:reduce){
 .bui-stroke-running .bui-heading-text{animation:none;color:inherit}
 .bui-stroke-svg,.bui-cursor,.bui-sparks{display:none}
 .hero.bui-hero .hero-photo,.hero.bui-hero .hero-copy{animation:none;transform:none;scale:1}
 .students-section .student-photo img,.bui-gallery-progress>span{transition:none}
 .student-carousel{scroll-behavior:auto!important}
}
