html, body { margin: 0; padding: 0; background: #0d0d0d; }
body { font-family: 'Inter', -apple-system, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: #c5ff72; text-decoration: none; }
a:hover { color: #9ccd52; }
#form input:focus, #form textarea:focus { border-color: #c5ff72 !important; outline: 1px solid #c5ff72; outline-offset: -1px; }
#form input, #form textarea { transition: border-color .2s ease-in-out; }
* { box-sizing: border-box; }
:root {
  --lime-1: #c5ff72;
  --lime-2: #c5ff72;
  --lime-3: #c5ff72;
  --lime-4: #c5ff72;
  --lime-hover-solid: #a8e05a;
  --lime-hover-outline: #9ccd52;
  --accent-primary: #c5ff72;
  --accent-primary-hover: #a8e05a;
  --accent-outline-hover: #9ccd52;
  --link-color: #c5ff72;
  --link-color-hover: #9ccd52;
  --magenta-1: #ff5a3d;
  --magenta-2: #e64a2f;
  --accent-secondary: #ff5a3d;
  --violet-border: rgba(199, 205, 211, 0.18);
  --border-glass: rgba(199, 205, 211, 0.22);
  --hairline-1: rgba(199, 205, 211, 0.10);
  --hairline-2: rgba(199, 205, 211, 0.16);
  --hairline-3: rgba(199, 205, 211, 0.26);
  --navy-1: #0b0b12;
}
a { color: #c5ff72; }
a:hover { color: #9ccd52; }
@media (max-width: 1080px) { [data-nlp-scene] { opacity: 0.5; } }
#form input:focus, #form textarea:focus { border-color: #c5ff72 !important; outline: 1px solid #c5ff72; outline-offset: -1px; }
#form input, #form textarea { transition: border-color .2s ease-in-out; }
@keyframes tok0 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.34; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.34; transform: translate(10px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(69px, 43px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(226px, 170px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.32; transform: translate(246px, 181px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok1 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.41; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.41; transform: translate(10px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(71px, 35px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(232px, 137px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.39; transform: translate(252px, 146px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok2 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.48; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.48; transform: translate(10px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(69px, 49px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(226px, 194px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.46; transform: translate(246px, 206px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok3 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.55; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.55; transform: translate(5px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(36px, 58px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(119px, 227px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.52; transform: translate(129px, 241px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok4 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.62; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.62; transform: translate(8px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(53px, 41px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(175px, 162px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.59; transform: translate(190px, 172px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok5 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.34; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.34; transform: translate(3px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(24px, 64px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(77px, 251px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.32; transform: translate(84px, 267px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok6 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.41; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.41; transform: translate(5px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(34px, 56px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(113px, 218px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.39; transform: translate(123px, 232px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok7 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.48; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.48; transform: translate(1px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(10px, 31px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(31px, 121px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.46; transform: translate(34px, 129px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok8 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.55; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.55; transform: translate(9px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(60px, 43px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(196px, 170px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.52; transform: translate(213px, 181px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok9 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.62; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.62; transform: translate(9px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(61px, 60px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(201px, 234px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.59; transform: translate(218px, 249px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok10 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.34; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.34; transform: translate(9px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(60px, 66px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(196px, 259px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.32; transform: translate(213px, 275px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok11 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.41; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.41; transform: translate(12px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(81px, 58px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(268px, 227px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.39; transform: translate(291px, 241px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok12 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.48; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.48; transform: translate(11px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(74px, 35px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(242px, 137px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.46; transform: translate(263px, 146px) scaleX(0.18); border-radius: 999px; }
}
@keyframes tok13 {
  0% { opacity: 0; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  10% { opacity: 0.55; transform: translate(0px, 0px) scaleX(1); border-radius: 0; }
  26% { opacity: 0.55; transform: translate(-2px, 0px) scaleX(0.72); border-radius: 0; }
  46% { transform: translate(-13px, 54px) scaleX(0.42); border-radius: 2px; }
  80% { transform: translate(-41px, 211px) scaleX(0.2); border-radius: 999px; }
  100% { opacity: 0.52; transform: translate(-45px, 224px) scaleX(0.18); border-radius: 999px; }
}
@keyframes drawline { to { stroke-dashoffset: 0; } }
@keyframes clusterbreathe { 0%, 100% { transform: translate3d(0,0,0) scale(1); } 50% { transform: translate3d(-8px,-6px,0) scale(1.012); } }
@keyframes phrase0 {
  0% { opacity: 0; transform: translate(0px, 0px) scale(1); filter: blur(7px); letter-spacing: 0.22em; }
  14% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); letter-spacing: 0.02em; }
  30% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); }
  44% { opacity: 0.95; transform: translate(4px, -4px) scale(1); filter: blur(0px); }
  66% { opacity: 0.5; transform: translate(17px, -18px) scale(0.72); filter: blur(1.2px); }
  100% { opacity: 0; transform: translate(30px, -32px) scale(0.3); filter: blur(3.5px); }
}
@keyframes node0 {
  0%, 62% { opacity: 0; transform: scale(0.4); }
  84% { opacity: 0.95; transform: scale(1.5); }
  100% { opacity: 0.50; transform: scale(1); }
}
@keyframes phrase1 {
  0% { opacity: 0; transform: translate(0px, 0px) scale(1); filter: blur(7px); letter-spacing: 0.22em; }
  14% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); letter-spacing: 0.02em; }
  30% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); }
  44% { opacity: 0.95; transform: translate(10px, -12px) scale(1); filter: blur(0px); }
  66% { opacity: 0.5; transform: translate(37px, -47px) scale(0.72); filter: blur(1.2px); }
  100% { opacity: 0; transform: translate(68px, -86px) scale(0.3); filter: blur(3.5px); }
}
@keyframes node1 {
  0%, 62% { opacity: 0; transform: scale(0.4); }
  84% { opacity: 0.95; transform: scale(1.5); }
  100% { opacity: 0.62; transform: scale(1); }
}
@keyframes phrase2 {
  0% { opacity: 0; transform: translate(0px, 0px) scale(1); filter: blur(7px); letter-spacing: 0.22em; }
  14% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); letter-spacing: 0.02em; }
  30% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); }
  44% { opacity: 0.95; transform: translate(4px, 4px) scale(1); filter: blur(0px); }
  66% { opacity: 0.5; transform: translate(15px, 18px) scale(0.72); filter: blur(1.2px); }
  100% { opacity: 0; transform: translate(28px, 32px) scale(0.3); filter: blur(3.5px); }
}
@keyframes node2 {
  0%, 62% { opacity: 0; transform: scale(0.4); }
  84% { opacity: 0.95; transform: scale(1.5); }
  100% { opacity: 0.74; transform: scale(1); }
}
@keyframes phrase3 {
  0% { opacity: 0; transform: translate(0px, 0px) scale(1); filter: blur(7px); letter-spacing: 0.22em; }
  14% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); letter-spacing: 0.02em; }
  30% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); }
  44% { opacity: 0.95; transform: translate(13px, 10px) scale(1); filter: blur(0px); }
  66% { opacity: 0.5; transform: translate(53px, 37px) scale(0.72); filter: blur(1.2px); }
  100% { opacity: 0; transform: translate(96px, 68px) scale(0.3); filter: blur(3.5px); }
}
@keyframes node3 {
  0%, 62% { opacity: 0; transform: scale(0.4); }
  84% { opacity: 0.95; transform: scale(1.5); }
  100% { opacity: 0.50; transform: scale(1); }
}
@keyframes phrase4 {
  0% { opacity: 0; transform: translate(0px, 0px) scale(1); filter: blur(7px); letter-spacing: 0.22em; }
  14% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); letter-spacing: 0.02em; }
  30% { opacity: 1; transform: translate(0px, 0px) scale(1); filter: blur(0px); }
  44% { opacity: 0.95; transform: translate(20px, -7px) scale(1); filter: blur(0px); }
  66% { opacity: 0.5; transform: translate(79px, -29px) scale(0.72); filter: blur(1.2px); }
  100% { opacity: 0; transform: translate(144px, -52px) scale(0.3); filter: blur(3.5px); }
}
@keyframes node4 {
  0%, 62% { opacity: 0; transform: scale(0.4); }
  84% { opacity: 0.95; transform: scale(1.5); }
  100% { opacity: 0.62; transform: scale(1); }
}
@keyframes flare0 {
  0%, 100% { opacity: 0; }
  22% { opacity: 0.9; }
  55% { opacity: 0.50; }
  88% { opacity: 0.13; }
}
@keyframes signal0 { from { stroke-dashoffset: 90; } to { stroke-dashoffset: -90; } }
@keyframes flare1 {
  0%, 100% { opacity: 0; }
  22% { opacity: 0.75; }
  55% { opacity: 0.41; }
  88% { opacity: 0.11; }
}
@keyframes signal1 { from { stroke-dashoffset: 219; } to { stroke-dashoffset: -219; } }
@keyframes flare2 {
  0%, 100% { opacity: 0; }
  22% { opacity: 0.5; }
  55% { opacity: 0.28; }
  88% { opacity: 0.07; }
}
@keyframes signal2 { from { stroke-dashoffset: 74; } to { stroke-dashoffset: -74; } }
@keyframes flare3 {
  0%, 100% { opacity: 0; }
  22% { opacity: 0.45; }
  55% { opacity: 0.25; }
  88% { opacity: 0.06; }
}
@keyframes signal3 { from { stroke-dashoffset: 140; } to { stroke-dashoffset: -140; } }
@keyframes flare4 {
  0%, 100% { opacity: 0; }
  22% { opacity: 0.55; }
  55% { opacity: 0.30; }
  88% { opacity: 0.08; }
}
@keyframes signal4 { from { stroke-dashoffset: 238; } to { stroke-dashoffset: -238; } }
@keyframes flare5 {
  0%, 100% { opacity: 0; }
  22% { opacity: 0.4; }
  55% { opacity: 0.22; }
  88% { opacity: 0.06; }
}
@keyframes signal5 { from { stroke-dashoffset: 120; } to { stroke-dashoffset: -120; } }
@keyframes clusterpull { 0% { transform: scale(1); } 100% { transform: scale(1); } }
@keyframes dashflow { from { stroke-dashoffset: 0; } to { stroke-dashoffset: -260; } }
@keyframes floatslow { 0%, 100% { transform: translate3d(0,0,0); } 50% { transform: translate3d(-12px,-9px,0); } }
@media (max-width: 900px) {
  [data-teachers] { grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important; }
  [data-teachers] > [aria-hidden="true"] { display: none !important; }
  [data-teachers] > [data-reveal="260"] { padding-top: 0 !important; }
}
@keyframes attnlink { 0%, 100% { stroke-dashoffset: 120; opacity: 0; } 22% { stroke-dashoffset: 0; opacity: 0.34; } 68% { stroke-dashoffset: 0; opacity: 0.34; } 88% { stroke-dashoffset: 0; opacity: 0; } }
@keyframes linkflow { 0% { stroke-dashoffset: 900; opacity: 0; } 6% { opacity: 0.75; } 54% { stroke-dashoffset: -20; opacity: 0.75; } 62% { opacity: 0; } 100% { stroke-dashoffset: -20; opacity: 0; } }
@keyframes seglight { 0%, 100% { opacity: 0; } 5% { opacity: 0.5; } 13% { opacity: 0.14; } 22% { opacity: 0; } }
@keyframes microflow { 0% { stroke-dashoffset: 62; opacity: 0; } 10% { opacity: 0.8; } 58% { stroke-dashoffset: -10; opacity: 0.8; } 66% { opacity: 0; } 100% { stroke-dashoffset: -10; opacity: 0; } }
@keyframes routepulse { 0% { stroke-dashoffset: 1100; opacity: 0; } 6% { opacity: 0.85; } 66% { stroke-dashoffset: -20; opacity: 0.85; } 74% { opacity: 0; } 100% { stroke-dashoffset: -20; opacity: 0; } }
@keyframes nodeon { 0%, 100% { opacity: 0; } 4% { opacity: 0.5; } 12% { opacity: 0.1; } 20% { opacity: 0; } }
@keyframes linkbreathe { 0%, 100% { opacity: 0; } 10% { opacity: 0.34; } 26% { opacity: 0.28; } 42% { opacity: 0; } }
@keyframes pulsetravel { 0% { stroke-dashoffset: 118; opacity: 0; } 8% { opacity: 0.4; } 46% { opacity: 0.4; } 60% { stroke-dashoffset: -8; opacity: 0; } 100% { stroke-dashoffset: -8; opacity: 0; } }
@keyframes linepulse { 0% { stroke-dashoffset: 118; opacity: 0; } 8% { opacity: 0.44; } 48% { opacity: 0.44; } 58% { stroke-dashoffset: -8; opacity: 0; } 100% { stroke-dashoffset: -8; opacity: 0; } } 8% { opacity: 0.32; } 48% { opacity: 0.32; } 58% { stroke-dashoffset: -8; opacity: 0; } 100% { stroke-dashoffset: -8; opacity: 0; } } 8% { opacity: 0.55; } 48% { opacity: 0.55; } 58% { stroke-dashoffset: -8; opacity: 0; } 100% { stroke-dashoffset: -8; opacity: 0; } }
@keyframes segflash { 0%, 100% { opacity: 0; } 3% { opacity: 0.5; } 8% { opacity: 0.16; } 13% { opacity: 0; } } 3% { opacity: 0.4; } 8% { opacity: 0.12; } 13% { opacity: 0; } } 4% { opacity: 0.24; } 9% { opacity: 0.06; } 14% { opacity: 0; } }
@keyframes ambientfade { 0%, 100% { opacity: 0.04; } 40% { opacity: 0.15; } }
@keyframes tokfade { 0%, 100% { opacity: 0.35; } 40% { opacity: 1; } }
@keyframes dashflowrev { to { stroke-dashoffset: 300; } }
@keyframes attnwave { 0% { opacity: 0.10; } 9% { opacity: 1; } 34% { opacity: 0.82; } 90% { opacity: 0.82; } 100% { opacity: 0.10; } }
@keyframes tokenstream { from { transform: translate3d(0,0,0); } to { transform: translate3d(-50%,0,0); } }
@keyframes nodepulse { 0%, 100% { opacity: 0.25; transform: scale(1); } 50% { opacity: 0.5; transform: scale(1.18); } }

/* ---------- mobile adaptation ---------- */
@media (max-width: 1000px) {
  header nav { display: none !important; }
  header > div { gap: 14px !important; }
}
@media (max-width: 820px) {
  [data-nlp-scene] { display: none !important; }
  [data-hero] img { opacity: 0.42 !important; mask-image: linear-gradient(180deg, #000 0%, rgba(0,0,0,0.55) 62%, transparent 100%) !important; -webkit-mask-image: linear-gradient(180deg, #000 0%, rgba(0,0,0,0.55) 62%, transparent 100%) !important; object-position: 66% 40% !important; }
  [data-hero] h1 { font-size: 42px !important; }
  [data-hero] p { font-size: 17px !important; }

  [data-scheme] { overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; mask-image: linear-gradient(90deg, #000 88%, transparent 100%); -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent 100%); }
  [data-scheme]::-webkit-scrollbar { display: none; }
  [data-scheme] > svg { min-width: 660px; }
  #format [data-cols3] { grid-template-columns: 1fr !important; gap: 0 !important; }
  #format svg[viewBox="0 0 100 44"] { height: 22px !important; }
  #format svg[viewBox="0 0 100 92"] { height: 40px !important; }
  #format [data-cols3] > div { align-items: flex-start !important; text-align: left !important; }
  #format [data-fmt-desc] { margin: 0 !important; max-width: none !important; }

  [style*="grid-template-columns: minmax(300px, 1.1fr)"] { grid-template-columns: 1fr !important; }
  [style*="grid-template-columns: minmax(300px, 1.1fr)"] > div:last-child { display: none !important; }

  [style*="grid-template-columns: minmax(200px, 260px) 1fr"] { grid-template-columns: 1fr !important; gap: 18px !important; }
  [style*="grid-template-columns: minmax(200px, 260px) 1fr"] > div:first-child { position: static !important; }
  [style*="grid-template-columns: 200px 1fr"] { grid-template-columns: 1fr !important; gap: 10px !important; }

  [style*="grid-template-columns: minmax(200px, 300px) 1fr"] { grid-template-columns: 1fr !important; gap: 22px !important; }

  [style*="grid-template-columns: 44px 1fr auto 36px"] { grid-template-columns: 30px 1fr 26px !important; gap: 12px !important; padding: 22px 2px !important; }
  [style*="grid-template-columns: 44px 1fr auto 36px"] > :nth-child(1) { grid-area: 1 / 1 / 2 / 2; }
  [style*="grid-template-columns: 44px 1fr auto 36px"] > :nth-child(2) { grid-area: 1 / 2 / 2 / 3; font-size: 19px !important; }
  [style*="grid-template-columns: 44px 1fr auto 36px"] > :nth-child(3) { grid-area: 2 / 2 / 3 / 4; }
  [style*="grid-template-columns: 44px 1fr auto 36px"] > :nth-child(4) { grid-area: 1 / 3 / 2 / 4; }
  [data-prog-body] { padding: 0 0 26px 0 !important; }
  [style*="grid-template-columns: 104px 1fr"] { grid-template-columns: 1fr !important; gap: 10px !important; }
  [style*="grid-template-columns: 104px 1fr"] > span:first-child { justify-self: start; padding: 6px 10px !important; }

  [style*="minmax(320px, 1fr)); gap: 72px"], [style*="minmax(320px, 1fr)); gap: 80px"] { gap: 44px !important; }
}
@media (max-width: 560px) {
  [data-hero] h1 { font-size: 36px !important; }
  [data-hero] [style*="gap: 18px; margin-bottom: 80px"] { gap: 12px !important; margin-bottom: 56px !important; }
  [data-hero] [style*="gap: 18px; margin-bottom: 80px"] > a { width: 100%; box-sizing: border-box; text-align: center; }
  #form input, #form textarea { font-size: 16px !important; }
  #price a[href="#form"] { width: 100%; box-sizing: border-box; text-align: center; }
  footer > div { gap: 14px !important; }
  footer a { margin-left: 0 !important; }
  [data-teachers] img[alt="Андрей Жогов"], [data-teachers] img[alt="Виктор Кантор"] { max-width: 340px; }
}
@media (max-width: 380px) {
  [data-hero] h1 { font-size: 31px !important; }
}
@media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; } }
