/*
Theme Name: Elite Master Codes
Description: A professional, mobile-first Astra child theme for the Elite Master Codes editorial website.
Author: Site Editor
Template: astra
Version: 1.0.0
Text Domain: educ-journal
*/

:root{--ej-ink:#132238;--ej-muted:#64748b;--ej-paper:#f6f3ed;--ej-red:#e34838;--ej-gold:#f3b43f;--ej-border:#dce2e8;--ej-radius:18px}
body{color:var(--ej-ink);background:#fff}.site-content .ast-container{max-width:none;padding:0}.elementor-page .site-content{overflow:hidden}
.ej-shell{width:min(1240px,calc(100% - 40px));margin-inline:auto}.ej-kicker{font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--ej-red)}
.ej-section{padding:42px 0}.ej-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:0 0 22px;border-bottom:2px solid var(--ej-ink);padding-bottom:10px}.ej-heading h2{margin:0;font-size:clamp(1.55rem,3vw,2.25rem);font-family:Georgia,serif}.ej-heading a{font-weight:700;color:var(--ej-red)}
.ej-hero{min-height:clamp(480px,70vh,720px);display:grid;align-items:end;position:relative;color:#fff;background:#172033 center/cover no-repeat}.ej-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,18,32,.86) 0%,rgba(7,18,32,.45) 55%,rgba(7,18,32,.12)),linear-gradient(0deg,rgba(7,18,32,.7),transparent 60%)}.ej-hero__content{position:relative;z-index:1;width:min(1240px,calc(100% - 40px));margin:0 auto;padding:70px 0}.ej-hero h1{max-width:850px;color:#fff;font-family:Georgia,serif;font-size:clamp(2.35rem,6vw,5rem);line-height:1.02;margin:.2em 0}.ej-hero p{max-width:680px;font-size:clamp(1rem,2vw,1.25rem);color:#edf2f7}.ej-meta{display:flex;flex-wrap:wrap;gap:9px 16px;color:var(--ej-muted);font-size:.82rem;font-weight:600}.ej-hero .ej-meta{color:#e5e7eb}.ej-pill{display:inline-block;background:var(--ej-red);color:#fff;padding:6px 10px;border-radius:999px;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.ej-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ej-card{min-width:0}.ej-card__image{display:block;aspect-ratio:16/10;border-radius:var(--ej-radius);overflow:hidden;background:linear-gradient(135deg,#16324f,#e34838)}.ej-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.ej-card:hover img{transform:scale(1.035)}.ej-card h3{font-family:Georgia,serif;font-size:1.35rem;line-height:1.2;margin:12px 0 8px}.ej-card h3 a{color:var(--ej-ink)}.ej-card p{color:var(--ej-muted);margin:.5em 0}
.ej-news{background:var(--ej-paper)}.ej-newsgrid{display:grid;grid-template-columns:1.45fr 1fr;gap:34px}.ej-lead .ej-card__image{aspect-ratio:16/9}.ej-lead h3{font-size:clamp(1.7rem,3vw,2.6rem)}.ej-feed{border-top:1px solid #cbd1d6}.ej-feed__item{display:grid;grid-template-columns:110px 1fr;gap:16px;padding:16px 0;border-bottom:1px solid #cbd1d6}.ej-feed__item img{width:110px;height:82px;object-fit:cover;border-radius:10px}.ej-feed__item h3{font:700 1.05rem/1.25 Georgia,serif;margin:3px 0}.ej-feed__item h3 a{color:var(--ej-ink)}
.ej-rank{counter-reset:rank;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}.ej-rank__item{counter-increment:rank;display:grid;grid-template-columns:48px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--ej-border)}.ej-rank__item:before{content:counter(rank,decimal-leading-zero);font:700 1.6rem Georgia,serif;color:var(--ej-red)}.ej-rank h3{font-size:1rem;line-height:1.3;margin:0}.ej-rank a{color:var(--ej-ink)}
.ej-categories{display:flex;gap:10px;flex-wrap:wrap}.ej-categories a{padding:10px 16px;border:1px solid var(--ej-border);border-radius:999px;color:var(--ej-ink);font-weight:700}.ej-categories a:hover{color:#fff;background:var(--ej-ink)}
@media(max-width:800px){.ej-shell,.ej-hero__content{width:min(100% - 28px,1240px)}.ej-grid{grid-template-columns:1fr 1fr}.ej-newsgrid{grid-template-columns:1fr}.ej-rank{grid-template-columns:1fr}.ej-section{padding:32px 0}.site-logo-img img{max-width:150px}}
@media(max-width:560px){.ej-grid{grid-template-columns:1fr}.ej-grid .ej-card:not(:first-child){display:grid;grid-template-columns:110px 1fr;gap:14px}.ej-grid .ej-card:not(:first-child) .ej-card__image{aspect-ratio:1/1}.ej-grid .ej-card:not(:first-child) h3{font-size:1.05rem;margin:4px 0}.ej-grid .ej-card:not(:first-child) p{display:none}.ej-feed__item{grid-template-columns:88px 1fr}.ej-feed__item img{width:88px;height:70px}.ej-hero{min-height:520px}.ej-hero__content{padding:50px 0}.ej-heading{align-items:center}}

.ej-footer{background:#0c1828;color:#cbd5e1;padding:62px 0 0;margin-top:0}.ej-footer h2{color:#fff;font:700 1.08rem/1.3 Georgia,serif;margin:12px 0}.ej-footer a{color:#f8fafc}.ej-footer a:hover{color:var(--ej-gold)}.ej-footer__grid{display:grid;grid-template-columns:1.25fr 1.35fr .9fr .75fr;gap:44px}.ej-footer__brand{display:inline-block;margin-bottom:10px}.ej-footer__logo{display:block;width:min(210px,100%);height:auto;background:#fff;border-radius:10px;padding:5px}.ej-footer__about p,.ej-footer__feature p{font-size:.9rem;line-height:1.7;color:#aebaca}.ej-footer__action{font-weight:800;font-size:.85rem}.ej-footer__label{color:var(--ej-gold);font-size:.7rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.ej-footer__feature{display:grid;grid-template-columns:110px 1fr;gap:16px}.ej-footer__thumb{width:110px;height:92px;overflow:hidden;border-radius:12px;background:#23364d}.ej-footer__thumb img,.ej-footer__thumb span{width:100%;height:100%;object-fit:cover}.ej-footer__feature h2{margin:0 0 6px}.ej-footer__meta,.ej-footer time{display:block;color:#8493a7;font-size:.72rem;font-weight:700}.ej-footer__posts,.ej-footer__links{list-style:none;margin:0;padding:0}.ej-footer__posts li{padding:10px 0;border-bottom:1px solid #26364b}.ej-footer__posts a{display:block;font:700 .9rem/1.35 Georgia,serif}.ej-footer__links li{padding:6px 0}.ej-footer__links a{font-weight:700;font-size:.9rem}.ej-footer__bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #26364b;margin-top:48px;padding-top:20px;padding-bottom:22px;font-size:.78rem;color:#8493a7}
@media(max-width:980px){.ej-footer__grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.ej-footer{padding-top:42px}.ej-footer__grid{grid-template-columns:1fr;gap:30px}.ej-footer__bottom{flex-direction:column;margin-top:34px}.ej-footer__feature{grid-template-columns:90px 1fr}.ej-footer__thumb{width:90px;height:82px}}
