:root{--ink: #0E0E0E;--ink-soft: #2A2A2A;--muted: #6B6B6B;--line: #E6E1D7;--cream: #F5F1EA;--cream-2: #EEE8DA;--paper: #FFFFFF;--yellow: #F5C84B;--yellow-dk: #E5B630;--asphalt: #4A4A4A;--radius-sm: 6px;--radius: 14px;--radius-lg: 22px;--f-display: "Bricolage Grotesque", "Inter", system-ui, sans-serif;--f-body: "Inter", system-ui, sans-serif;--f-mono: "JetBrains Mono", ui-monospace, "SF Mono", monospace;--shadow-sm: 0 1px 2px rgba(0,0,0,.04), 0 2px 6px rgba(0,0,0,.04);--shadow: 0 6px 24px rgba(14,14,14,.08);--container: 1240px}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:90px}body{font-family:var(--f-body);color:var(--ink);background:var(--cream);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}h1,h2,h3,h4{font-family:var(--f-display);font-weight:600;letter-spacing:-.02em;margin:0;line-height:1.05;text-wrap:balance}h1{font-size:clamp(42px,6vw,78px);letter-spacing:-.035em}h2{font-size:clamp(30px,3.6vw,52px);letter-spacing:-.03em}h3{font-size:clamp(22px,2vw,28px)}p{text-wrap:pretty}.container{max-width:var(--container);margin:0 auto;padding:0 28px}.nav{position:sticky;top:0;z-index:50;background:color-mix(in oklab,var(--cream) 92%,transparent);backdrop-filter:saturate(150%) blur(12px);-webkit-backdrop-filter:saturate(150%) blur(12px);border-bottom:1px solid var(--line)}.nav-inner{display:flex;align-items:center;gap:36px;padding:14px 28px;max-width:var(--container);margin:0 auto}.nav-logo{display:flex;align-items:center;gap:10px;font-family:var(--f-display);font-weight:700;font-size:18px}.nav-logo img{height:44px;width:auto}.nav-links{display:flex;gap:4px;margin-left:20px}.nav-links a{padding:8px 14px;border-radius:999px;font-weight:500;font-size:15px;color:var(--ink-soft);transition:background .15s,color .15s;white-space:nowrap}.nav-links a:hover{background:var(--cream-2)}.nav-links a.active{background:var(--ink);color:var(--paper)}.nav-right{margin-left:auto;display:flex;align-items:center;gap:12px}.nav-phone{font-size:14px;font-weight:600;color:var(--ink);padding:8px 14px;border-radius:999px;border:1px solid var(--line);display:inline-flex;align-items:center;gap:8px;white-space:nowrap}.nav-phone .dot{width:6px;height:6px;border-radius:50%;background:#2ba55f}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;font-weight:600;font-size:15px;border:1px solid transparent;transition:transform .12s,background .15s,color .15s;text-decoration:none;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--ink-soft)}.btn-primary .arrow{width:28px;height:28px;border-radius:50%;background:var(--yellow);color:var(--ink);display:grid;place-items:center;margin-right:-10px}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.btn-yellow{background:var(--yellow);color:var(--ink)}.btn-yellow:hover{background:var(--yellow-dk)}.road-stripe{height:14px;background:linear-gradient(var(--asphalt),var(--asphalt));position:relative;border-radius:2px}.road-stripe:after{content:"";position:absolute;inset:50% 0 0;background-image:repeating-linear-gradient(to right,var(--yellow) 0,var(--yellow) 22px,transparent 22px,transparent 44px);height:4px;transform:translateY(-50%)}.road-stripe.thin{height:10px}.dash-accent{display:inline-block;width:62px;height:4px;background-image:repeating-linear-gradient(to right,var(--yellow) 0,var(--yellow) 10px,transparent 10px,transparent 18px);margin-bottom:18px}section{padding:84px 0}.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:14px;display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:22px;height:2px;background:var(--yellow)}.card{background:var(--paper);border-radius:var(--radius-lg);padding:28px;border:1px solid var(--line)}.footer{background:var(--ink);color:#cfcfcf;padding:72px 0 32px;margin-top:40px}.footer h4{color:var(--paper);font-size:14px;font-family:var(--f-body);font-weight:600;text-transform:uppercase;letter-spacing:.1em;margin-bottom:18px}.footer a{color:#cfcfcf;display:block;padding:4px 0;font-size:15px}.footer a:hover{color:var(--yellow)}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;padding-bottom:48px;border-bottom:1px solid #2A2A2A}.footer-brand img{height:56px;background:var(--paper);padding:10px 18px;border-radius:12px;margin-bottom:16px;max-width:220px}.footer-bottom{display:flex;justify-content:space-between;padding-top:24px;font-size:13px;color:#888}.ph{position:relative;background:repeating-linear-gradient(135deg,var(--cream-2) 0 12px,var(--cream) 12px 24px);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:grid;place-items:center}.ph.dark{background:repeating-linear-gradient(135deg,#1b1b1b 0 12px,#222 12px 24px);color:#aaa;border-color:#2a2a2a}.ph-label{font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:6px 10px;background:#fff9;border-radius:6px}.ph.dark .ph-label{background:#00000080;color:#bbb}.row{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.grid{display:grid;gap:24px}.text-muted{color:var(--muted)}.text-center{text-align:center}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;background:var(--cream-2);font-size:13px;font-weight:500;border:1px solid var(--line)}.pill .yellow-dot{width:8px;height:8px;background:var(--yellow);border-radius:50%}hr.sep{border:0;border-top:1px solid var(--line);margin:32px 0}.field{display:grid;gap:6px;margin-bottom:14px}.field label{font-size:13px;font-weight:500;color:var(--ink-soft)}.field input,.field textarea,.field select{font:inherit;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--paper);color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--ink);box-shadow:0 0 0 4px #f5c84b4d}.field textarea{resize:vertical;min-height:120px}@media(max-width:1180px){.nav-phone{display:none}}@media(max-width:1040px){.nav-links{display:none}}@media(max-width:860px){.footer-grid{grid-template-columns:1fr 1fr;gap:32px}section{padding:56px 0}}.hero{padding:32px 0 48px}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:32px;align-items:stretch}.hero-left{background:var(--ink);color:var(--paper);border-radius:28px;padding:48px 44px;display:flex;flex-direction:column;justify-content:space-between;min-height:560px;position:relative;overflow:hidden}.hero-left:before{content:"";position:absolute;bottom:0;left:0;right:0;height:14px;background:var(--asphalt)}.hero-left:after{content:"";position:absolute;bottom:5px;left:0;right:0;height:4px;background-image:repeating-linear-gradient(to right,var(--yellow) 0 24px,transparent 24px 48px)}.hero h1{color:var(--paper)}.hero h1 em{font-style:normal;color:var(--yellow);position:relative;display:inline-block}.hero-meta{display:flex;gap:28px;flex-wrap:wrap;margin-top:24px;color:#bbb;font-size:14px}.hero-meta b{color:var(--paper);font-weight:600}.hero-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:40px}.hero-cta .btn-primary{background:var(--yellow);color:var(--ink)}.hero-cta .btn-primary .arrow{background:var(--ink);color:var(--yellow)}.hero-cta .btn-primary:hover{background:var(--yellow-dk)}.hero-cta .btn-ghost{color:var(--paper);border-color:#3a3a3a}.hero-cta .btn-ghost:hover{background:var(--paper);color:var(--ink)}.hero-right{position:relative;border-radius:28px;overflow:hidden;min-height:560px;background:#111}.hero-right .photo{position:absolute;inset:0;background-image:url(/assets/bestatt.jpg);background-size:cover;background-position:center 30%}.hero-right .photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000 40%,#0000008c)}.hero-right .tag-pass{position:absolute;top:22px;left:22px;background:var(--yellow);color:var(--ink);padding:10px 16px;border-radius:999px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;display:inline-flex;align-items:center;gap:8px;z-index:2}.hero-right .tag-pass:before{content:"✓";width:16px;height:16px;border-radius:50%;background:var(--ink);color:var(--yellow);display:grid;place-items:center;font-size:11px}.hero-right .quote-card{position:absolute;top:22px;right:22px;max-width:220px;background:#ffffffeb;backdrop-filter:blur(8px);border-radius:14px;padding:14px 16px;z-index:2;font-size:13px;line-height:1.4;color:var(--ink)}.hero-right .quote-card .stars{color:var(--yellow-dk);letter-spacing:2px;margin-bottom:4px}.hero-right .quote-card .who{font-family:var(--f-mono);font-size:11px;color:var(--muted);margin-top:6px;letter-spacing:.08em;text-transform:uppercase}.hero-right .caption{position:absolute;left:0;right:0;bottom:0;padding:24px 28px 28px;z-index:2;color:var(--paper)}.hero-right .caption h3{font-family:var(--f-display);font-size:28px;font-weight:700;letter-spacing:-.02em;color:var(--paper);margin:0 0 4px;line-height:1.15}.hero-right .caption p{font-size:14px;color:#ffffffd9;margin:0}.hero-right .caption h3 span{color:var(--yellow)}.hero-bar{margin-top:12px;background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:22px 28px;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.stat .num{font-family:var(--f-display);font-size:36px;font-weight:700;line-height:1;letter-spacing:-.02em}.stat .num span{color:var(--yellow-dk)}.stat .lbl{margin-top:6px;color:var(--muted);font-size:13px}.stat+.stat{border-left:1px solid var(--line);padding-left:24px}.journey{background:var(--paper)}.journey-head{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:end;margin-bottom:48px}.journey-head p{color:var(--muted);max-width:440px;font-size:17px}.journey-road{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.journey-road:before{content:"";position:absolute;left:0;right:0;top:54px;height:4px;background-image:repeating-linear-gradient(to right,var(--yellow) 0 14px,transparent 14px 26px);z-index:0}.step{background:var(--cream);border-radius:20px;padding:24px;position:relative;z-index:1;border:1px solid var(--line)}.step .num-badge{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:var(--f-display);font-weight:700;margin-bottom:16px;font-size:17px}.step h3{font-size:20px;margin-bottom:6px}.step p{color:var(--muted);font-size:14px;margin:0}.step .dur{margin-top:14px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);padding:4px 10px;background:var(--paper);border-radius:999px;display:inline-block;border:1px solid var(--line)}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.price-card{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:32px 30px;display:flex;flex-direction:column;position:relative}.price-card.featured{background:var(--ink);color:var(--paper);border-color:var(--ink)}.price-card.featured h3{color:var(--paper)}.price-card.featured .big{color:var(--yellow)}.price-card.featured .hr{border-top-color:#2a2a2a}.price-card.featured p,.price-card.featured li{color:#bbb}.price-card .tag-top{position:absolute;top:-12px;left:24px;background:var(--yellow);color:var(--ink);font-size:12px;font-weight:600;padding:6px 12px;border-radius:999px}.price-card h3{font-size:24px;margin-bottom:6px}.price-card .sub{color:var(--muted);font-size:14px;margin-bottom:22px}.price-card.featured .sub{color:#aaa}.big{font-family:var(--f-display);font-size:56px;font-weight:700;line-height:1;letter-spacing:-.03em;white-space:nowrap}.big small{font-size:16px;color:var(--muted);font-weight:500}.hr{border:0;border-top:1px dashed var(--line);margin:22px 0}.feat-list{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:10px}.feat-list li{display:grid;grid-template-columns:18px 1fr;gap:10px;font-size:14px;color:var(--ink-soft)}.price-card.featured .feat-list li{color:#ddd}.feat-list li:before{content:"✓";color:var(--yellow-dk);font-weight:700}.price-card.featured .feat-list li:before{color:var(--yellow)}.price-card .btn{justify-content:center;width:100%;margin-top:auto}.pricelist{background:var(--paper);border-radius:22px;border:1px solid var(--line);overflow:hidden;margin-top:28px}.pl-row{display:grid;grid-template-columns:1.2fr 2fr auto;gap:24px;padding:22px 28px;align-items:center;border-bottom:1px solid var(--line)}.pl-row:last-child{border-bottom:0}.pl-row .what{font-family:var(--f-display);font-size:19px;font-weight:600}.pl-row .desc{color:var(--muted);font-size:14px}.pl-row .amt{font-family:var(--f-display);font-size:22px;font-weight:600;white-space:nowrap}.pl-row .amt small{color:var(--muted);font-size:13px;font-weight:400;display:block;text-align:right}.pl-head{background:var(--cream);font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;padding:14px 28px;display:grid;grid-template-columns:1.2fr 2fr auto;gap:24px;border-bottom:1px solid var(--line)}.pl-head span:last-child{text-align:right}.notice{background:var(--cream-2);border:1px dashed var(--ink);border-radius:20px;padding:28px 32px;display:grid;grid-template-columns:48px 1fr;gap:18px;align-items:start;margin-top:36px}.notice .mark{width:48px;height:48px;background:var(--yellow);border-radius:12px;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:22px}.notice h4{font-size:17px;margin:0 0 6px;font-family:var(--f-body);font-weight:600}.notice p{margin:0;color:var(--ink-soft);font-size:14px}.why{background:var(--cream)}.why-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:56px;align-items:start}.why-list{display:grid;gap:14px}.why-item{background:var(--paper);border-radius:16px;border:1px solid var(--line);padding:22px 24px;display:grid;grid-template-columns:52px 1fr auto;gap:18px;align-items:center;cursor:pointer;transition:background .15s}.why-item:hover{background:var(--cream-2)}.why-item .idx{width:52px;height:52px;border-radius:14px;background:var(--ink);color:var(--yellow);font-family:var(--f-display);font-weight:700;font-size:20px;display:grid;place-items:center}.why-item h4{font-size:17px;margin:0 0 4px;font-family:var(--f-body);font-weight:600}.why-item p{margin:0;font-size:14px;color:var(--muted)}.why-item .chev{color:var(--muted)}.testimonials{background:var(--ink);color:var(--paper);border-radius:28px;padding:72px 48px}.testimonials h2{color:var(--paper)}.t-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.t-card{background:#1a1a1a;border:1px solid #2a2a2a;border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:16px}.t-card .quote{font-family:var(--f-display);font-size:19px;line-height:1.45;color:#f0f0f0}.t-card .who{display:flex;align-items:center;gap:12px;margin-top:auto}.t-card .who .av{width:40px;height:40px;border-radius:50%;background:repeating-linear-gradient(135deg,#333 0 6px,#222 6px 12px)}.t-card .who b{font-size:14px}.t-card .who .small{font-size:12px;color:#888}.t-card .stars{color:var(--yellow);letter-spacing:3px}.cta-strip{background:var(--yellow);color:var(--ink);border-radius:28px;padding:56px 48px;display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:center}.cta-strip h2{font-size:clamp(32px,3.6vw,48px)}.cta-strip p{max-width:520px;color:var(--ink-soft)}.cta-strip .btn-primary{background:var(--ink);color:var(--paper)}.cta-strip .btn-primary .arrow{background:var(--yellow);color:var(--ink)}@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-right{min-height:380px}.hero-bar{grid-template-columns:repeat(2,1fr)}.stat+.stat{border:none;padding-left:0}.journey-head,.why-grid,.t-grid,.cta-strip,.price-grid{grid-template-columns:1fr}.pl-row,.pl-head{grid-template-columns:1fr;gap:6px}.pl-head span:last-child{text-align:left}.pl-row .amt,.pl-row .amt small{text-align:left}.journey-road{grid-template-columns:1fr 1fr}.journey-road:before{display:none}}.about-sep{padding:80px 0 40px;background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:56px;align-items:start}.intro-grid h2{margin-bottom:20px}.intro-copy{color:var(--muted);font-size:16px;line-height:1.7}.intro-copy p+p{margin-top:16px}.intro-copy .lede{font-size:20px;line-height:1.5;color:var(--ink-soft);max-width:520px}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:44px}.featured-teacher{margin-top:44px;background:var(--paper);border:1px solid var(--line);border-radius:28px;overflow:hidden;display:grid;grid-template-columns:minmax(280px,.9fr) 1.2fr;gap:0}.ft-portrait{position:relative;aspect-ratio:4/5;min-height:100%;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.45) 100%),repeating-linear-gradient(135deg,#2a2a2a 0 14px,#242424 14px 28px);display:flex;align-items:flex-end;padding:24px}.ft-portrait .ph-label{position:absolute;top:20px;left:20px;background:#0e0e0eb3;color:#ccc;padding:6px 10px;border-radius:6px;font-family:var(--f-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;border:none}.ft-badge{background:var(--yellow);color:var(--ink);padding:10px 18px;border-radius:999px;font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:600;position:relative;z-index:1}.ft-body{padding:44px 48px;display:flex;flex-direction:column;gap:28px;justify-content:center}.ft-body .role{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.ft-body h3{font-size:44px;margin:8px 0 16px;letter-spacing:-.02em;line-height:1.05}.ft-body .lede-bio{font-size:17px;line-height:1.6;color:var(--ink-soft);max-width:560px}.ft-body .lede-bio b{color:var(--ink);font-weight:600}.ft-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0}.ft-meta-item{display:flex;flex-direction:column;gap:4px;padding-right:16px;border-right:1px solid var(--line)}.ft-meta-item:last-child{border-right:none;padding-right:0}.ft-meta-label{font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.ft-meta-val{font-size:14px;font-weight:500;color:var(--ink)}.ft-contact{display:flex;flex-wrap:wrap;gap:20px 28px;padding-top:4px}.ft-link{font-size:15px;color:var(--ink);font-weight:500;border-bottom:2px solid var(--yellow);padding-bottom:2px}.ft-link:hover{color:var(--yellow-dk)}.teacher{background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;display:flex;flex-direction:column}.teacher .ph{border-radius:0;border:none;aspect-ratio:3/4}.teacher .body{padding:20px 22px 22px}.teacher .role{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.teacher h3{font-size:20px;margin:6px 0 4px}.teacher .bio{color:var(--muted);font-size:14px;margin:0 0 12px}.teacher .tags{display:flex;gap:6px;flex-wrap:wrap}.teacher .tag{font-size:11px;padding:4px 10px;border-radius:999px;background:var(--cream);border:1px solid var(--line);color:var(--ink-soft)}.contact-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}.cc{background:var(--paper);border:1px solid var(--line);border-radius:20px;padding:26px;display:flex;flex-direction:column;gap:6px;transition:background .15s}.cc:hover{background:var(--cream-2)}.cc .icon{width:44px;height:44px;border-radius:12px;background:var(--cream);border:1px solid var(--line);display:grid;place-items:center;margin-bottom:14px;font-size:18px}.cc .label{font-family:var(--f-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.cc h3{font-size:20px;font-family:var(--f-body);font-weight:600}.cc .sub{color:var(--muted);font-size:13px}.cc .val{font-weight:600;margin-top:auto;padding-top:12px;border-bottom:2px solid var(--yellow);display:inline-block;font-size:15px}.form-block{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;align-items:stretch;margin-top:36px}.form-wrap{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:40px}.form-wrap h2{font-size:34px;margin-bottom:10px}.form-wrap .lede{color:var(--muted);margin-bottom:28px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.choices{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 10px}.choice{padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:var(--cream);font-size:13px;cursor:pointer;user-select:none;font-weight:500;transition:background .15s,color .15s}.choice.on{background:var(--ink);color:var(--paper);border-color:var(--ink)}.visit{background:var(--ink);color:var(--paper);border-radius:24px;padding:40px;display:flex;flex-direction:column;justify-content:space-between}.visit h2{color:var(--paper);font-size:34px}.visit p{color:#bbb}.visit .addr{font-family:var(--f-display);font-size:22px;font-weight:600;color:var(--paper);margin-top:20px}.visit .addr span{color:var(--yellow)}.hours{margin-top:28px;border-top:1px dashed #2a2a2a;padding-top:22px;display:grid;gap:10px}.hour-row{display:flex;justify-content:space-between;font-size:14px;color:#ccc}.hour-row.today b{color:var(--yellow)}.map{margin-top:28px;border-radius:18px;overflow:hidden;aspect-ratio:16/10;background:radial-gradient(circle at 30% 40%,rgba(245,200,75,.08),transparent 60%),repeating-linear-gradient(45deg,#1a1a1a 0 2px,#0e0e0e 2px 22px),repeating-linear-gradient(-45deg,#1a1a1a 0 2px,#0e0e0e 2px 22px);position:relative;border:1px solid #2a2a2a}.map:before{content:"";position:absolute;left:0;right:0;top:48%;height:8px;background:#333;box-shadow:0 120px #333,0 -100px #333}.map:after{content:"";position:absolute;top:0;bottom:0;left:40%;width:6px;background:#333}.map .pin{position:absolute;top:42%;left:42%;transform:translate(-50%,-100%);display:flex;flex-direction:column;align-items:center;gap:4px}.map .pin .dot{width:22px;height:22px;border-radius:50%;background:var(--yellow);border:4px solid var(--paper);box-shadow:0 4px 12px #0006}.map .pin .tail{width:2px;height:18px;background:var(--paper)}.map .pin .lbl{background:var(--paper);color:var(--ink);padding:6px 10px;border-radius:8px;font-size:12px;font-weight:600;white-space:nowrap;position:absolute;top:-36px;font-family:var(--f-mono)}.rules-layout{display:grid;grid-template-columns:260px 1fr;gap:56px;align-items:start;margin-top:16px}.toc{position:sticky;top:100px;border-left:3px solid var(--yellow);padding-left:18px}.toc h4{font-family:var(--f-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:500;margin:0 0 14px}.toc a{display:block;padding:6px 0;font-size:14px;color:var(--ink-soft);font-weight:500}.toc a:hover{color:var(--ink)}.rules{background:var(--paper);border:1px solid var(--line);border-radius:24px;padding:48px}.rules h3{font-size:28px;margin-bottom:16px;display:flex;align-items:baseline;gap:14px}.rules h3 .num-label{font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--muted);background:var(--cream);padding:5px 10px;border-radius:999px;font-weight:500}.rules section+section{margin-top:40px;padding-top:40px;border-top:1px dashed var(--line)}.rules p,.rules li{font-size:16px;line-height:1.7;color:var(--ink-soft)}.rules ul{list-style:none;padding:0;margin:14px 0 0;display:grid;gap:14px;counter-reset:rule}.rules ul li{background:var(--cream);border:1px solid var(--line);border-radius:14px;padding:16px 20px 16px 52px;position:relative}.rules ul li:before{content:counter(rule,decimal-leading-zero);counter-increment:rule;position:absolute;left:16px;top:16px;font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;color:var(--yellow-dk);font-weight:600}.alert{background:#fff7dc;border:1px solid var(--yellow);border-radius:14px;padding:14px 20px;font-size:14px;margin-top:16px;color:var(--ink);display:flex;gap:12px;align-items:start}.alert:before{content:"!";flex:none;width:24px;height:24px;background:var(--ink);color:var(--yellow);border-radius:50%;display:grid;place-items:center;font-family:var(--f-display);font-weight:700;font-size:13px}.meta-bar{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;background:var(--ink);color:#ccc;border-radius:16px;margin-bottom:28px;font-size:13px;flex-wrap:wrap;gap:12px}.meta-bar b{color:var(--paper)}.meta-bar .dot-g{width:6px;height:6px;border-radius:50%;background:#2ba55f;display:inline-block;margin-right:6px}@media(max-width:980px){.intro-grid,.form-block,.rules-layout{grid-template-columns:1fr}.team-grid{grid-template-columns:1fr 1fr}.featured-teacher{grid-template-columns:1fr}.ft-portrait{aspect-ratio:4/3;min-height:0}.ft-body{padding:32px}.ft-body h3{font-size:32px}.ft-meta{grid-template-columns:1fr;gap:16px;padding:18px 0}.ft-meta-item{border-right:none;border-bottom:1px dashed var(--line);padding:0 0 14px}.ft-meta-item:last-child{border-bottom:none;padding-bottom:0}.contact-cards{grid-template-columns:1fr 1fr}.grid-2{grid-template-columns:1fr}.form-wrap,.visit,.rules{padding:28px}.toc{position:static}}.nav-lang{display:inline-flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--paper)}.nav-lang a{font-family:var(--f-mono);font-size:12px;font-weight:600;letter-spacing:.06em;padding:5px 10px;border-radius:999px;color:var(--muted);line-height:1}.nav-lang a.on{background:var(--ink);color:var(--paper)}#saga-map{background:#0e0e0e}#saga-map:before,#saga-map:after{display:none}#saga-map .maplibregl-canvas{border-radius:inherit}#saga-map .maplibregl-ctrl-attrib{font-size:10px}
