:root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#17213b;background:#f5f7fb;font-size:16px}*{box-sizing:border-box}body{margin:0}a{color:#19438b}header{background:#101a35;color:white;padding:1rem max(1rem,calc((100vw - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:1rem}header a{color:white;text-decoration:none}nav{display:flex;gap:1rem;flex-wrap:wrap}.brand{font-weight:800;font-size:1.2rem}main,footer{max-width:1100px;margin:auto;padding:2rem 1rem}.hero{background:#12214a;color:white;border-radius:1.4rem;padding:clamp(2rem,6vw,5rem);margin:1rem 0 2rem;position:relative;overflow:hidden}.hero:after{content:'';position:absolute;width:19rem;height:19rem;border:3rem solid #f6ad39;border-radius:50%;right:-7rem;top:-8rem;opacity:.6}.hero>*{position:relative;z-index:1;max-width:690px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:#fac76d;font-weight:700}h1{font-size:clamp(2.2rem,5vw,4.4rem);line-height:1.1;margin:.4rem 0 1rem}h2{font-size:clamp(1.5rem,3vw,2rem);margin:0 0 1rem}p,li{line-height:1.6}.lead{font-size:1.2rem}.button{display:inline-block;background:#f4ab32;color:#17213b;text-decoration:none;padding:.9rem 1.3rem;border-radius:.6rem;font-weight:800;margin-top:.6rem}.button.secondary{background:white}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.card{background:white;padding:1.4rem;border:1px solid #dce1ed;border-radius:1rem}.card h3{margin:.2rem 0}.card p{margin:.4rem 0}.section{margin:3rem 0}.schedule{width:100%;border-collapse:collapse;background:white}.schedule td,.schedule th{border-bottom:1px solid #dce1ed;padding:.8rem;text-align:left;vertical-align:top}.schedule th{white-space:nowrap}.notice{background:#fff3d8;border-left:5px solid #e39318;padding:1rem;border-radius:.3rem}footer{border-top:1px solid #dce1ed;color:#35425c}@media(max-width:650px){header{display:block}nav{margin-top:.8rem}.grid{grid-template-columns:1fr}.schedule,.schedule tbody,.schedule tr,.schedule td,.schedule th{display:block}.schedule tr{padding:.5rem;border-bottom:1px solid #dce1ed}.schedule td,.schedule th{border:0;padding:.2rem .7rem}.hero:after{opacity:.2}}

.feature-photo{margin:1.5rem 0 2.5rem;display:grid;grid-template-columns:minmax(0,1fr);overflow:hidden;border-radius:1.2rem;background:#14203b}.feature-photo img{display:block;width:100%;height:clamp(260px,42vw,500px);object-fit:cover;object-position:center 42%}.feature-photo figcaption{background:#fff;color:#46526b;padding:.6rem 1rem;font-size:.875rem}

.teacher{display:grid;grid-template-columns: minmax(220px,320px) 1fr;align-items:center;gap:clamp(1.5rem,5vw,4rem);background:#1b2946;color:white;border-radius:1.2rem;overflow:hidden;margin:1.5rem 0 2.5rem}.teacher img{width:100%;height:100%;max-height:420px;object-fit:cover;object-position:center 30%}.teacher div{padding:1.5rem 2rem 1.5rem 0}.teacher a{color:#fac76d}@media(max-width:650px){.teacher{grid-template-columns:1fr}.teacher img{height:320px}.teacher div{padding:0 1.5rem 1.8rem}}

#fooldal .teacher img{object-position:center}.teacher:has(img[src*="csapat"]) {grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr)}.teacher:has(img[src*="csapat"]) img{max-height:420px;object-fit:cover}@media(max-width:650px){.teacher:has(img[src*="csapat"]){grid-template-columns:1fr}.teacher:has(img[src*="csapat"]) img{height:auto;max-height:none}}

header .brand{display:inline-flex;align-items:center;gap:.7rem}header .brand img{width:56px;height:56px;object-fit:contain;flex:none}.teacher-portrait img{height:auto;max-height:none;object-fit:contain;align-self:stretch;background:#26324a}.teacher-portrait{grid-template-columns:minmax(220px,340px) 1fr}@media(max-width:650px){header .brand img{width:44px;height:44px}.teacher-portrait{grid-template-columns:1fr}.teacher-portrait img{height:auto;max-height:420px;object-fit:contain;object-position:center top}}

.teacher-portrait .portrait-crop{padding:0;height:390px;overflow:hidden;position:relative;background:#26324a}.teacher-portrait .portrait-crop img{display:block;width:170%;height:auto;max-height:none;margin-left:-35%;margin-top:-5%;object-fit:initial}@media(max-width:650px){.teacher-portrait .portrait-crop{height:360px}.teacher-portrait .portrait-crop img{width:155%;margin-left:-27.5%;margin-top:-3%;max-height:none;height:auto}}
