/*
Theme Name: School 99
Theme URI: https://example.com/school99
Author: OpenAI
Description: Responsive WordPress theme for a Ukrainian school/lyceum website, inspired by the supplied layout.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: school99
*/

:root{
  --s99-blue:#0a56d7;
  --s99-blue-dark:#0b2b59;
  --s99-navy:#0b2347;
  --s99-gold:#ffb000;
  --s99-soft:#f5f8fd;
  --s99-border:#e4ebf5;
  --s99-text:#10284e;
  --s99-muted:#65738d;
  --s99-white:#fff;
  --s99-shadow:0 18px 50px rgba(13,54,110,.08);
  --s99-radius:18px;
  --s99-container:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--s99-text);background:#fff;line-height:1.55}
a{color:inherit;text-decoration:none} img{max-width:100%;height:auto;display:block}
.container{width:min(var(--s99-container),calc(100% - 40px));margin:auto}
.topbar{background:#f5f8fd;border-bottom:1px solid #eef2f8;font-size:13px;color:#51637f}
.topbar__in{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.topbar__left,.topbar__right{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.topbar a:hover{color:var(--s99-blue)}
.site-header{background:#fff;position:sticky;top:0;z-index:100;box-shadow:0 5px 20px rgba(0,28,73,.04)}
.header__in{min-height:88px;display:flex;align-items:center;gap:30px}
.brand{display:flex;align-items:center;gap:14px;min-width:220px}
.brand__mark{width:48px;height:58px;border-radius:8px 8px 18px 18px;background:linear-gradient(145deg,#0a58d7,#07358c);color:#fff;display:grid;place-items:center;font-weight:800;box-shadow:0 8px 20px rgba(10,86,215,.18)}
.brand__text strong{display:block;font-size:22px;line-height:1.05}.brand__text span{font-size:12px;color:#53637c}
.main-nav{margin-left:auto}.main-nav ul{list-style:none;display:flex;align-items:center;gap:28px;margin:0;padding:0}.main-nav a{font-weight:700;font-size:14px}.main-nav .current-menu-item>a,.main-nav a:hover{color:var(--s99-blue)}
.header-actions{display:flex;align-items:center;gap:10px}.icon-btn,.btn{border:1px solid var(--s99-border);background:#fff;border-radius:9px;padding:11px 16px;font-weight:700;color:var(--s99-blue);display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:.2s}.btn:hover,.icon-btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(18,81,175,.12)}.btn--primary{background:var(--s99-blue);border-color:var(--s99-blue);color:#fff}.btn--ghost{background:#f4f8ff}.menu-toggle{display:none}
.hero{position:relative;overflow:hidden;background:radial-gradient(circle at 0 0,#fff5d7 0 7%,transparent 7.2%),linear-gradient(90deg,#fff 0%,#f7fbff 47%,#eaf5ff 100%)}
.hero__in{min-height:430px;display:grid;grid-template-columns:38% 62%;align-items:center}.hero__content{padding:55px 0;z-index:2}.hero h1{font-size:52px;line-height:1.07;margin:0 0 20px;letter-spacing:-1.5px}.hero p{font-size:21px;max-width:460px;margin:0 0 26px}.hero__buttons{display:flex;gap:15px;flex-wrap:wrap}.hero__media{height:430px;position:relative}.hero__media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero__media:before{content:"";position:absolute;z-index:1;left:-100px;top:0;width:180px;height:100%;background:linear-gradient(90deg,#fff,rgba(255,255,255,.82),transparent)}
.features{padding:20px 0 10px;position:relative;margin-top:-6px}.features__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.feature{background:#fff;border:1px solid var(--s99-border);border-radius:14px;padding:22px 20px;min-height:190px;box-shadow:0 10px 30px rgba(0,49,120,.03)}.feature__icon{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#eaf2ff;color:var(--s99-blue);font-size:24px;margin-bottom:15px}.feature:nth-child(even) .feature__icon{background:#fff2d7;color:#e89b00}.feature h3{font-size:17px;line-height:1.25;margin:0 0 10px}.feature p{color:var(--s99-muted);font-size:13px;margin:0}
.home-panels{padding:10px 0 20px}.panels{display:grid;grid-template-columns:1.15fr .95fr .95fr;gap:18px}.panel{border:1px solid var(--s99-border);border-radius:14px;background:#fff;padding:20px;min-height:330px}.panel__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.panel__head h2{font-size:18px;margin:0}.panel__head a{font-size:13px;color:var(--s99-blue);font-weight:700}.news-item{display:grid;grid-template-columns:105px 1fr;gap:14px;padding:10px 0;border-bottom:1px solid #edf1f7}.news-item:last-child{border-bottom:0}.news-item img{width:105px;height:76px;border-radius:8px;object-fit:cover}.meta{font-size:11px;color:#71809a}.chip{display:inline-block;padding:2px 7px;background:#e9f1ff;color:var(--s99-blue);border-radius:4px;font-weight:700;margin-right:6px}.news-item h3{font-size:14px;line-height:1.3;margin:3px 0}.news-item p{font-size:12px;color:var(--s99-muted);margin:0}.plain-list{list-style:none;padding:0;margin:0}.plain-list li{padding:14px 0;border-bottom:1px solid #edf1f7}.plain-list li:last-child{border-bottom:0}.plain-list small{display:block;color:#7d899e;margin-bottom:5px}.plain-list a{font-weight:700;font-size:13px}.calendar-item{display:grid;grid-template-columns:58px 1fr;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #edf1f7}.calendar-date{width:58px;border-radius:7px;background:#f0f5fc;text-align:center;padding:8px 4px;color:var(--s99-blue);font-weight:800;font-size:23px;line-height:1}.calendar-date span{display:block;font-size:11px;margin-top:6px}.calendar-item strong{font-size:13px;display:block}.calendar-item small{font-size:12px;color:#71809a}.panel .btn{width:100%;margin-top:14px;padding:9px}
.links-section{padding:0 0 18px}.links-box{border:1px solid var(--s99-border);border-radius:14px;padding:17px 20px}.links-box h2{font-size:16px;margin:0 0 12px}.partner-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.partner{display:flex;align-items:center;gap:10px;padding:8px 12px;border-right:1px solid #eef2f7;min-height:70px}.partner:last-child{border-right:0}.partner__logo{width:42px;height:42px;border-radius:10px;background:#eff4fb;display:grid;place-items:center;color:var(--s99-blue);font-weight:900}.partner span{font-size:11px;font-weight:700;line-height:1.25}
.quote-cta{padding:0 0 18px}.quote-box{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;background:linear-gradient(90deg,#edf5ff,#f7fbff);border-radius:14px;padding:20px 28px}.quote{display:flex;align-items:center;gap:18px;color:#1a61c4}.quote__mark{font-size:76px;line-height:.6;font-family:Georgia,serif}.quote p{margin:0;font-size:18px}.quote small{display:block;margin-top:6px}.quote-actions{display:flex;gap:10px}
.site-footer{background:linear-gradient(110deg,#08264d,#0c396f);color:#e8f1ff;padding-top:26px}.footer-grid{display:grid;grid-template-columns:1.2fr .65fr .8fr 1.2fr 1fr;gap:34px;padding-bottom:28px}.site-footer h3{font-size:14px;margin:0 0 12px;color:#fff}.site-footer p,.site-footer li,.site-footer a{font-size:12px;color:#d9e5f6}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:8px 0}.footer-bottom{border-top:1px solid rgba(255,255,255,.16);min-height:55px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;color:#bfd1ea}.footer-bottom__links{display:flex;gap:20px;flex-wrap:wrap}.socials{display:flex;gap:8px;margin-top:12px}.socials a{width:29px;height:29px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center}
.content-wrap{padding:48px 0}.entry-card{max-width:850px;margin:auto}.entry-card h1{font-size:42px}.entry-content{font-size:17px}.entry-content>*:first-child{margin-top:0}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-card{border:1px solid var(--s99-border);border-radius:14px;overflow:hidden;background:#fff}.post-card img{aspect-ratio:16/9;object-fit:cover}.post-card__body{padding:18px}.post-card h2{font-size:19px;margin:7px 0}.screen-reader-text{position:absolute;left:-9999px}
@media(max-width:1020px){.main-nav ul{gap:16px}.header-actions .btn{display:none}.features__grid{grid-template-columns:repeat(3,1fr)}.panels{grid-template-columns:1fr 1fr}.panels .panel:last-child{grid-column:1/-1}.partner-grid{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:repeat(3,1fr)}.hero h1{font-size:43px}}
@media(max-width:760px){.topbar__in{padding:8px 0}.topbar__left{gap:8px 15px}.topbar__right{display:none}.header__in{min-height:72px}.brand__mark{width:42px;height:50px}.brand__text strong{font-size:18px}.menu-toggle{display:inline-flex;margin-left:auto}.main-nav{position:absolute;left:20px;right:20px;top:72px;background:#fff;border:1px solid var(--s99-border);border-radius:12px;box-shadow:var(--s99-shadow);display:none;padding:12px}.main-nav.is-open{display:block}.main-nav ul{display:block}.main-nav li a{display:block;padding:10px}.header-actions{display:none}.hero__in{grid-template-columns:1fr}.hero__content{padding:42px 0 24px}.hero h1{font-size:40px}.hero p{font-size:18px}.hero__media{height:290px;margin:0 -20px}.hero__media:before{display:none}.features__grid,.panels,.partner-grid,.footer-grid,.post-grid{grid-template-columns:1fr}.panels .panel:last-child{grid-column:auto}.feature{min-height:auto}.partner{border-right:0;border-bottom:1px solid #eef2f7}.quote-box{grid-template-columns:1fr}.quote-actions{flex-wrap:wrap}.footer-bottom{align-items:flex-start;flex-direction:column;padding:16px 0}.entry-card h1{font-size:34px}}
