/* Clearer branding, restrained motion and stable mobile interactions. */
:root{--muted:#c2c8bc}
html{overflow-x:hidden;scrollbar-gutter:stable}
body{width:100%;max-width:100%;overflow-x:clip}
body.lock{position:fixed;inset-inline:0;width:100%;overflow:hidden}
main,.site-footer{min-width:0;max-width:100%}
.wrap>*{min-width:0}
.hero-foot,.hero-topline{color:#c9d1c0}
.mini-note,.form-note{color:#aab69f!important}
.symbol-note{color:#a8b29f}
.footer-col a{color:#c2cbbb}
.footer-bottom{color:#a4b098}
.breadcrumb{color:#a1af94}
.portrait-note{background:#10170ff2;backdrop-filter:none;border:1px solid #ffffff1a}
.portrait-note small{color:#dae2d1;font-size:11px}
.footer-brand img,.logo img{filter:none;opacity:1;image-rendering:auto}
.footer-word{font-size:initial;line-height:normal;padding:55px 0 10px;overflow:visible;display:flex;justify-content:center}
.footer-word img{width:min(780px,88%);height:auto;opacity:1;filter:none}
.hero-promo{position:absolute;top:-29px;right:24px;z-index:3;display:flex;align-items:center;gap:17px;padding:15px 22px 15px 18px;border-radius:18px;background:#c4ee46;color:#18240e;box-shadow:0 9px 35px #0004,0 0 0 5px #11170f;line-height:1.25;text-align:left;transition:transform .3s ease,box-shadow .3s ease}
.hero-promo:hover{transform:translateY(-3px);box-shadow:0 14px 45px #0005,0 0 0 5px #11170f}
.promo-number{font-size:51px;font-weight:800;letter-spacing:-.06em;line-height:1}
.promo-copy{display:flex;flex-direction:column;gap:5px;border-left:1px solid #1f310e45;padding-left:17px}
.promo-copy>span{font-size:10px;font-weight:500;letter-spacing:.015em;color:#31471d}
.promo-copy strong{font-size:13px;letter-spacing:.045em;font-weight:800;white-space:nowrap}
.live:before{animation:status-glow 3.8s ease-in-out infinite}
.tape-track span:after{content:'';width:8px;height:8px;display:block;background:currentColor;transform:rotate(45deg);flex-shrink:0}
.section .photo{border-radius:var(--radius);overflow:hidden;isolation:isolate}
.section .photo>img{transform:translate3d(0,var(--image-shift,0px),0) scale(1.04);transition:transform .25s ease-out}
.scroll-heading{color:#849279;transform:translate3d(0,12px,0);transition:color 1.1s ease,transform 1.1s cubic-bezier(.22,.7,.2,1)}
.scroll-heading.is-visible{color:var(--white);transform:translate3d(0,0,0)}
.offer .scroll-heading{color:#697d3b}
.offer .scroll-heading.is-visible{color:#202815}
.scroll-reveal{opacity:.2;transform:translate3d(0,24px,0);transition:opacity .85s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.scroll-reveal.is-visible{opacity:1;transform:translate3d(0,0,0)}
.experience-card{transition:opacity .85s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),box-shadow .35s ease}
.experience-card:hover{box-shadow:0 18px 55px #0005}
.line-facts strong{transition:color .5s ease}
.line-facts>div:hover strong{color:var(--green)}
.content-box{transition:opacity .85s ease var(--reveal-delay,0ms),transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),border-color .35s ease,background .35s ease}
.content-box:hover{border-color:#bdec354f;background:#ffffff04}
.content-box.featured:hover{background:var(--green)}
.modal{overscroll-behavior:contain}
.modal-dialog{overscroll-behavior:contain;overflow-x:hidden;scrollbar-gutter:stable;outline:none!important}
.modal-body,.modal-aside,.field-grid,.field{min-width:0}
.field input,.field textarea,.field select{max-width:100%;scroll-margin-block:25px}
.field input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #10150e inset!important;-webkit-text-fill-color:var(--white)!important;caret-color:var(--white)}
.form-result{overflow-wrap:anywhere}
@keyframes status-glow{0%,100%{box-shadow:0 0 8px #bded3570}50%{box-shadow:0 0 17px #bded35d0}}
@media(min-width:900px) and (pointer:fine){.hero-promo{animation:promo-arrival .9s ease-out both}.hero-image>img{transition:filter .5s ease}.hero-image:hover>img{filter:brightness(1.04)}}
@keyframes promo-arrival{from{opacity:0;translate:0 9px}to{opacity:1;translate:0 0}}
@media(max-width:850px){.hero-promo{right:15px;gap:12px;padding:13px 17px 13px 14px}.promo-number{font-size:44px}.promo-copy{padding-left:12px}.promo-copy strong{font-size:11px}.promo-copy>span{font-size:9px}}
@media(max-width:720px){
 html{width:100%;max-width:100%;overflow-x:hidden;scrollbar-gutter:auto;overscroll-behavior-x:none}
 body{overflow-x:hidden;overscroll-behavior-x:none}
 body.lock{touch-action:pan-y pinch-zoom}
 .wrap{width:auto;max-width:calc(100% - 38px);margin-inline:19px}
 .hero-title{font-size:12.3vw;max-width:100%;white-space:nowrap}
 .hero-bottom,.intro-grid,.split,.offer,.contact-grid,.faq,.section-head,.feature-band,.footer-top,.time-grid,.content-grid,.experience-grid,.page-lead-grid{min-width:0}
 .hero-promo{top:-24px;right:14px;border-radius:14px;padding:11px 16px 11px 13px;gap:13px;box-shadow:0 7px 25px #0004,0 0 0 4px #101211}
 .promo-number{font-size:41px}
 .promo-copy{padding-left:13px;gap:4px}
 .promo-copy>span{font-size:9px}
 .promo-copy strong{font-size:11px;letter-spacing:.025em}
 .portrait-note small{font-size:10px}
 .hero-foot{font-size:10px;gap:12px 20px}
 .arrow,.circle-link{display:none!important}
 .course-line{grid-template-columns:45px minmax(0,1fr)}
 .schedule-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .btn{gap:0}
 .feature-band .text-link{margin-left:0}
 .text-link{gap:0}
 .section .photo{border-radius:23px}
 .section .photo>img{transform:none;transition:none}
 .scroll-reveal{transform:translate3d(0,16px,0);transition-duration:.7s}
 .scroll-reveal.is-visible{transform:translate3d(0,0,0)}
 .footer-word{padding-top:35px}
 .footer-word img{width:100%;max-width:490px}
 .footer-col a,.footer-brand p{font-size:12px}
 .footer-bottom{font-size:10px}
 .hero-topline>span{min-width:0;max-width:56%;line-height:1.7}
 .hero-topline .live{flex-shrink:0;max-width:42%}
 .hero-topline{gap:15px}
 .page-hero h1{overflow-wrap:anywhere;hyphens:auto}
 .offer h2{font-size:clamp(48px,15.7vw,64px)}
 .footer-brand,.footer-col,.footer-bottom>div{min-width:0;overflow-wrap:anywhere}
 .contact-item a{font-size:clamp(17px,5.4vw,22px)}
 .contact-strip .actions{align-items:stretch}
 .contact-strip .btn{min-width:0;max-width:100%;white-space:normal}
 .modal{padding:12px;max-width:100vw;inset:0;overscroll-behavior:none}
 .modal-dialog{max-width:100%;width:100%;max-height:calc(100dvh - 24px);scrollbar-gutter:auto;-webkit-overflow-scrolling:touch;touch-action:pan-y pinch-zoom}
 .modal .field input,.modal .field select,.modal .field textarea{font-size:16px;line-height:1.4}
 .mobile-cta{left:max(17px,env(safe-area-inset-left));right:max(17px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:auto}
 .hero-image{animation:none}
}
@media(prefers-reduced-motion:reduce){
 .scroll-heading,.scroll-heading.is-visible{color:var(--white);transform:none;transition:none}
 .offer .scroll-heading,.offer .scroll-heading.is-visible{color:#202815}
 .scroll-reveal,.scroll-reveal.is-visible{opacity:1;transform:none;transition:none}
 .section .photo>img{transform:none;transition:none}
 .live:before,.hero-promo{animation:none}
}

.footer-brand img{width:220px;max-width:100%;height:auto}.footer-top{padding-bottom:45px}@media(max-width:720px){.footer-brand img{width:200px}.site-footer{padding-bottom:100px}}
