/* YEN PETROV — School Mobile V1
   Mobile-only override for the approved desktop School V5.13 + Home Teaser V4.
   Desktop (901px+) is intentionally untouched. */

@media (max-width:900px){
  /* ---------- HOME: SCHOOL TEASER ---------- */
  body.page-home .school-entry{
    display:flex!important;
    position:relative!important;
    height:auto!important;
    min-height:84svh!important;
    overflow:hidden!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
    align-items:center!important;
    padding:82px 20px 72px!important;
    color:#f3efe7!important;
    background:
      radial-gradient(circle at 85% 24%,rgba(143,99,216,.18),transparent 31%),
      radial-gradient(circle at 10% 82%,rgba(214,163,84,.04),transparent 28%),
      linear-gradient(148deg,#07070a 0%,#0d0912 55%,#09070d 100%)!important;
  }
  body.page-home .school-entry-stage{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:0!important;
    display:block!important;
  }
  body.page-home .school-entry-copy{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    transform:none!important;
  }
  body.page-home .school-entry-kicker{
    margin:0 0 22px!important;
    max-width:320px!important;
    font-size:9px!important;
    line-height:1.55!important;
    letter-spacing:.16em!important;
  }
  body.page-home .school-entry-kicker span{margin:0 4px!important;}
  body.page-home .school-entry h2{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    font:400 clamp(47px,13.2vw,62px)/.91 Georgia,serif!important;
    letter-spacing:-.05em!important;
  }
  body.page-home .school-entry h2 em{display:inline!important;}
  body.page-home .school-entry-copy>p{
    width:100%!important;
    max-width:520px!important;
    margin:25px 0 0!important;
    font:16px/1.58 Georgia,serif!important;
    color:#cbc4ce!important;
  }
  body.page-home .school-entry-actions{
    width:auto!important;
    margin:31px 0 0!important;
    display:inline-flex!important;
  }
  body.page-home .school-entry-button{
    min-width:0!important;
    width:auto!important;
    height:58px!important;
    padding:0 25px!important;
    gap:14px!important;
    border-radius:999px!important;
  }
  body.page-home .school-entry-button span{font-size:10px!important;letter-spacing:.13em!important;}
  body.page-home .school-entry-button b{font-size:18px!important;}
  body.page-home .school-entry-arrowhint-left{
    right:auto!important;
    left:calc(100% + 12px)!important;
  }
  body.page-home .school-entry-arrowhint-left span{font-size:18px!important;}
  body.page-home .school-entry-arrowhint-left span:first-child{opacity:.42!important;}
  body.page-home .school-entry-arrowhint-left span:nth-child(2){opacity:.14!important;}
  body.page-home .school-entry-arrowhint-right{display:none!important;}
  body.page-home .school-entry-meta{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin:31px 0 0!important;
    font-size:8px!important;
    line-height:1.4!important;
    letter-spacing:.12em!important;
  }
  body.page-home .school-entry-meta i{display:none!important;}
  body.page-home .school-entry-meta span{display:block!important;}
  body.page-home .school-entry-meta b{font-size:9px!important;}
  body.page-home .school-entry-mark{display:none!important;}
  body.page-home .school-entry-orbit{
    right:-58vw!important;
    top:-7svh!important;
    width:125vw!important;
    opacity:.55!important;
  }
  body.page-home .school-entry-grid i:nth-child(1){left:22%!important;}
  body.page-home .school-entry-grid i:nth-child(2){left:78%!important;}
  body.page-home .school-entry-grid i:nth-child(3){top:27%!important;}
  body.page-home .school-entry-grid i:nth-child(4){bottom:16%!important;}
  body.page-home .school-entry-lines i:nth-child(1){width:62vw!important;top:14%!important;}
  body.page-home .school-entry-lines i:nth-child(2){width:58vw!important;bottom:17%!important;}
  body.page-home .school-entry-lines i:nth-child(3){display:none!important;}

  /* ---------- SCHOOL PAGE: MOBILE FOUNDATION ---------- */
  body.page-school{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    background:#0a0710!important;
  }
  body.page-school main{overflow:hidden!important;}
  body.page-school .topbar{
    background:rgba(10,7,16,.965)!important;
    border-bottom:1px solid rgba(143,99,216,.22)!important;
  }
  body.page-school .mobile-menu-toggle{
    border-color:rgba(143,99,216,.52)!important;
    background:rgba(143,99,216,.055)!important;
  }
  body.page-school .topbar nav{
    background:rgba(10,7,16,.99)!important;
    border-bottom-color:rgba(143,99,216,.22)!important;
  }
  body.page-school .topbar nav a{
    background:rgba(143,99,216,.055)!important;
  }
  body.page-school .screen{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
    scroll-snap-align:none!important;
    scroll-snap-stop:normal!important;
  }
  body.page-school .gold-lines{display:block!important;opacity:.42!important;pointer-events:none!important;}

  /* HERO: text first, portrait as a deliberate second beat */
  body.page-school .hero{
    min-height:0!important;
    padding:36px 20px 0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    background:
      radial-gradient(circle at 86% 66%,rgba(143,99,216,.17),transparent 34%),
      linear-gradient(148deg,#08050d 0%,#140d1d 62%,#0a0710 100%)!important;
  }
  body.page-school .hero-copy{
    order:1!important;
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;
    max-width:none!important;
    padding:0!important;
    margin:0!important;
    transform:none!important;
    z-index:4!important;
  }
  body.page-school .hero h1{
    margin:0 0 24px!important;
    max-width:100%!important;
    font:400 clamp(58px,16vw,78px)/.82 Georgia,serif!important;
    letter-spacing:-.055em!important;
  }
  body.page-school .hero-intro{
    max-width:100%!important;
    margin:0!important;
  }
  body.page-school .hero-intro p{
    margin:0 0 13px!important;
    max-width:100%!important;
    font:16px/1.55 Georgia,serif!important;
    color:#d6ceda!important;
  }
  body.page-school .hero-intro p:last-child{margin-bottom:0!important;}
  body.page-school .hero-meta{
    width:100%!important;
    margin:24px 0 0!important;
    padding:16px 0 0!important;
    display:flex!important;
    flex-direction:row!important;
    justify-content:space-between!important;
    align-items:center!important;
    gap:16px!important;
    border-top:1px solid rgba(143,99,216,.30)!important;
    font-size:8px!important;
    line-height:1.35!important;
    letter-spacing:.12em!important;
  }
  body.page-school .hero-meta span:last-child{text-align:right!important;}
  body.page-school .hero-mark{display:none!important;}
  body.page-school .hero-portrait{
    order:2!important;
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:calc(100% + 40px)!important;
    height:44svh!important;
    min-height:330px!important;
    max-height:470px!important;
    margin:18px -20px 0!important;
    display:flex!important;
    align-items:flex-end!important;
    justify-content:center!important;
    overflow:hidden!important;
    animation:none!important;
    transform:none!important;
    -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.9) 91%,transparent 100%)!important;
    mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.9) 91%,transparent 100%)!important;
  }
  body.page-school .hero-portrait::before,
  body.page-school .hero-portrait::after{display:none!important;content:none!important;}
  body.page-school .hero-portrait img{
    width:auto!important;
    height:100%!important;
    max-width:none!important;
    object-fit:contain!important;
    object-position:center bottom!important;
    transform:none!important;
    filter:saturate(.80) contrast(1.06) brightness(.91)!important;
  }
  body.page-school .hero-orbit{
    right:-62vw!important;
    top:38%!important;
    width:132vw!important;
    height:132vw!important;
    opacity:.62!important;
  }
  body.page-school .hero-grid i:nth-child(1){left:24%!important;}
  body.page-school .hero-grid i:nth-child(2){left:76%!important;}
  body.page-school .hero-grid i:nth-child(3){top:28%!important;}
  body.page-school .hero-grid i:nth-child(4){top:72%!important;}

  /* METHOD */
  body.page-school .method{
    padding:70px 20px 56px!important;
    background:linear-gradient(148deg,#0a0710 0%,#130c1b 58%,#0b0811 100%)!important;
  }
  body.page-school .section-kicker{
    position:static!important;
    margin:0 0 21px!important;
    font-size:10px!important;
    line-height:1.3!important;
    letter-spacing:.15em!important;
  }
  body.page-school .method-copy{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    width:100%!important;
    max-width:none!important;
    transform:none!important;
  }
  body.page-school .method h2{
    margin:0 0 21px!important;
    font:400 clamp(47px,12.8vw,61px)/.9 Georgia,serif!important;
    letter-spacing:-.045em!important;
  }
  body.page-school .school-rule{margin:20px 0!important;width:58px!important;}
  body.page-school .method-copy>p{
    max-width:100%!important;
    margin:0!important;
    font:16px/1.58 Georgia,serif!important;
  }
  body.page-school .method-line{
    margin:25px 0 0!important;
    font-size:8px!important;
    line-height:1.65!important;
    letter-spacing:.11em!important;
    white-space:normal!important;
  }
  body.page-school .method-line span{margin:0 4px!important;}
  body.page-school .method-facts{
    max-width:100%!important;
    margin:25px 0 0!important;
    padding:16px 0 0!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
  }
  body.page-school .method-facts span{
    min-height:92px!important;
    padding:14px!important;
    border:1px solid rgba(143,99,216,.16)!important;
    border-radius:14px!important;
    background:rgba(143,99,216,.035)!important;
    font-size:8px!important;
    line-height:1.45!important;
    letter-spacing:.08em!important;
  }
  body.page-school .method-facts b{
    margin:0 0 8px!important;
    font-size:28px!important;
  }
  body.page-school .video-stage{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:min(84vw,330px)!important;
    height:auto!important;
    aspect-ratio:9/16!important;
    margin:34px auto 0!important;
    transform:none!important;
    border-radius:18px!important;
    overflow:hidden!important;
    box-shadow:0 25px 70px rgba(0,0,0,.42)!important;
  }
  body.page-school .video-stage::before{display:none!important;}
  body.page-school .video-play{width:62px!important;height:62px!important;font-size:19px!important;}

  /* GALLERY */
  body.page-school .gallery-screen{
    padding:70px 20px 56px!important;
    display:block!important;
  }
  body.page-school .gallery-heading{
    max-width:none!important;
    margin:0 0 30px!important;
  }
  body.page-school .gallery-heading small{
    margin:0 0 19px!important;
    font-size:10px!important;
    letter-spacing:.15em!important;
  }
  body.page-school .gallery-heading h2{
    margin:0 0 20px!important;
    font:400 clamp(47px,12.8vw,61px)/.9 Georgia,serif!important;
    letter-spacing:-.045em!important;
  }
  body.page-school .gallery-heading p{
    margin:0!important;
    max-width:100%!important;
    font:16px/1.58 Georgia,serif!important;
  }
  body.page-school .school-gallery{
    width:100%!important;
    height:auto!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:auto!important;
    gap:12px!important;
  }
  body.page-school .school-gallery .g1,
  body.page-school .school-gallery .g2{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:9/14!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  body.page-school .school-gallery img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 43%!important;
  }

  /* RESULTS */
  body.page-school .results{
    padding:70px 20px 58px!important;
    display:flex!important;
    flex-direction:column!important;
    background:#0a0710!important;
  }
  body.page-school .results-photo{
    order:1!important;
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;
    width:100%!important;
    height:auto!important;
    aspect-ratio:9/13!important;
    border-radius:16px!important;
    overflow:hidden!important;
  }
  body.page-school .results-photo img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 46%!important;
    transform:none!important;
  }
  body.page-school .results-photo::after{
    background:linear-gradient(0deg,rgba(10,7,16,.52),transparent 36%)!important;
  }
  body.page-school .results-copy{
    order:2!important;
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    width:100%!important;
    max-width:none!important;
    margin:29px 0 0!important;
    transform:none!important;
  }
  body.page-school .results-copy small{
    display:block!important;
    position:static!important;
    margin:0 0 17px!important;
    font-size:10px!important;
    letter-spacing:.15em!important;
  }
  body.page-school .results h2{
    margin:0 0 20px!important;
    font:400 clamp(58px,16vw,76px)/.84 Georgia,serif!important;
    letter-spacing:-.05em!important;
  }
  body.page-school .results-copy>p{
    margin:0!important;
    max-width:100%!important;
    font:16px/1.58 Georgia,serif!important;
  }
  body.page-school .result-note{
    margin:25px 0 0!important;
    padding:16px 0 0!important;
    max-width:100%!important;
    font-size:8px!important;
    line-height:1.65!important;
    letter-spacing:.12em!important;
  }

  /* CONTACTS */
  body.page-school .contacts{
    min-height:0!important;
    padding:70px 20px 58px!important;
    background:radial-gradient(circle at 90% 20%,rgba(143,99,216,.16),transparent 30%),linear-gradient(148deg,#0b0711,#1a1025 63%,#0d0914)!important;
  }
  body.page-school .contact-copy{
    position:relative!important;
    left:auto!important;right:auto!important;top:auto!important;
    width:100%!important;
    max-width:none!important;
    transform:none!important;
  }
  body.page-school .contact-copy small{
    display:block!important;
    position:static!important;
    margin:0 0 17px!important;
    font-size:10px!important;
    letter-spacing:.15em!important;
  }
  body.page-school .contact-copy h2{
    margin:0 0 20px!important;
    font:400 clamp(50px,13.6vw,66px)/.9 Georgia,serif!important;
    letter-spacing:-.045em!important;
  }
  body.page-school .contact-copy blockquote{
    margin:0 0 25px!important;
    max-width:100%!important;
    padding-left:15px!important;
    font:italic 15px/1.58 Georgia,serif!important;
  }
  body.page-school .contact-links{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:10px!important;
    margin:0!important;
  }
  body.page-school .contact-links>a{
    width:auto!important;
    min-height:108px!important;
    padding:12px 8px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid rgba(143,99,216,.22)!important;
    border-radius:16px!important;
    background:rgba(143,99,216,.035)!important;
    font-size:10px!important;
  }
  body.page-school .contact-links>a span{
    width:50px!important;
    height:50px!important;
    margin:0 0 9px!important;
    border-color:rgba(201,179,239,.50)!important;
  }
  body.page-school .contact-links>a img{width:23px!important;height:23px!important;}
  body.page-school .all-projects{
    display:inline-block!important;
    margin:29px 0 0!important;
    font-size:9px!important;
    letter-spacing:.12em!important;
  }

  /* Lightbox and motion hygiene */
  body.page-school .lb img{max-width:92vw!important;max-height:82svh!important;object-fit:contain!important;}
  body.page-school .hero-portrait,
  body.page-school .hero-portrait img,
  body.page-school .gold-lines i{animation:none!important;}
}

@media (max-width:380px){
  body.page-home .school-entry{padding-left:16px!important;padding-right:16px!important;}
  body.page-home .school-entry h2{font-size:45px!important;}
  body.page-school .hero,
  body.page-school .method,
  body.page-school .gallery-screen,
  body.page-school .results,
  body.page-school .contacts{padding-left:16px!important;padding-right:16px!important;}
  body.page-school .hero-portrait{width:calc(100% + 32px)!important;margin-left:-16px!important;margin-right:-16px!important;}
  body.page-school .hero h1{font-size:54px!important;}
  body.page-school .method h2,
  body.page-school .gallery-heading h2{font-size:45px!important;}
  body.page-school .contact-copy h2{font-size:47px!important;}
}

@media (prefers-reduced-motion:reduce){
  body.page-home .school-entry *,body.page-school *{animation:none!important;transition:none!important;}
}
