/* =====================================================================
   MIRYALAN DYNASTY — SITE-WIDE LIGHT THEME
   Aligned to the Synthera / Prakrithi visual language across every page,
   not just the homepage. Remaps the original dark tokens so every
   existing component (nav, cards, footers, admin-facing pages, per-page
   heroes) inherits the light palette automatically.
   ===================================================================== */
:root{
  --navy-deep:#FAF8F6; --navy:#F3EFEA; --panel:#FFFFFF;
  --gray:#6B6478; --gray-light:#211A33; --white:#211A33;
  --gold:#C9A227; --gold-dim:#B8941F; --crimson:#8B2F2F;
  --line:#E7E2DC; --radius:10px;
}
body{background:var(--navy-deep);color:var(--gray-light);}
.nav-shell{background:rgba(250,248,246,.94);box-shadow:0 1px 0 var(--line);}
.dropdown{box-shadow:0 12px 32px rgba(33,26,51,.10);}
.mobile-nav{background:#fff;color:var(--gray-light);}
.nav-toggle span{background:var(--gray-light);}
footer.site{background:#fff;border-top:1px solid var(--line);}
.btn-primary{color:#fff;}
img{filter:none;}

/* language switcher — site-wide, sits in nav4 alongside the Pranika link */
.lang-switch{position:relative;display:inline-block;margin-left:14px;}
.lang-switch-btn{display:flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--hl-line,#E7E2DC);
  border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700;color:var(--hl-primary,#3D2A72);cursor:pointer;}
.lang-switch-menu{display:none;position:absolute;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--hl-line,#E7E2DC);
  border-radius:10px;box-shadow:0 12px 32px rgba(33,26,51,.12);min-width:150px;overflow:hidden;z-index:60;}
.lang-switch.open .lang-switch-menu{display:block;}
.lang-switch-menu button{display:block;width:100%;text-align:left;padding:10px 14px;font-size:13px;border:none;background:#fff;cursor:pointer;color:var(--hl-ink,#211A33);}
.lang-switch-menu button:hover{background:var(--hl-bg-soft,#F3EFEA);}
.lang-switch-menu button.active{color:var(--hl-primary,#3D2A72);font-weight:700;}

/* visitor counter — make it a visible footer badge on every page */
.foot-visits{display:inline-flex;align-items:center;gap:8px;background:var(--hl-lavender,#EFEDF7);color:var(--hl-primary,#3D2A72);
  font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:600;padding:8px 16px;border-radius:999px;margin-top:10px;}
.foot-visits .dot{width:6px;height:6px;border-radius:50%;background:#1B7A6E;box-shadow:0 0 0 3px rgba(27,122,110,.18);}

body{
  --hl-bg:#FAF8F6; --hl-bg-soft:#F3EFEA; --hl-lavender:#EFEDF7;
  --hl-ink:#211A33; --hl-gray:#6B6478; --hl-line:#E7E2DC;
  --hl-primary:#3D2A72; --hl-primary-dim:#5A4392;
  --hl-gold:#C9A227; --hl-teal:#1B7A6E;
  --hl-radius:16px;
  background:var(--hl-bg); color:var(--hl-ink);
}

/* Nav — switch the shared dark nav shell to a light bar on the home page only */
body .nav-shell{background:rgba(250,248,246,.94);border-bottom:1px solid var(--hl-line);}
body .nav1 .brand,
body .nav1 .brand span{color:var(--hl-primary) !important;}
body .nav1 .tagline{color:var(--hl-gold);}
body .nav1{border-right:1px solid var(--hl-line);}
body .nav2{border-bottom:1px solid var(--hl-line);}
body .nav2-links a{color:var(--hl-gray);}
body .nav2-links a:hover{color:var(--hl-primary);}
body .nav3 a{color:var(--hl-gray);}
body .nav3 a:hover{color:var(--hl-primary);}
body .nav4{border-left:1px solid var(--hl-line);}
body .nav4 a{color:var(--hl-primary);}
body .dropdown{background:#fff;border:1px solid var(--hl-line);box-shadow:0 12px 32px rgba(33,26,51,.08);}
body .dropdown a{color:var(--hl-gray);}
body .dropdown a:hover{background:var(--hl-bg-soft);color:var(--hl-primary);}
body .nav-toggle span{background:var(--hl-ink);}
body .mobile-nav{background:#fff;color:var(--hl-ink);}
body .mobile-nav a{color:var(--hl-ink);border-bottom:1px solid var(--hl-line);}

/* Buttons — pill shaped, Pranika-style */
body .btn{border-radius:999px;padding:14px 30px;}
body .btn-primary{background:var(--hl-primary);color:#fff;}
body .btn-primary:hover{background:var(--hl-primary-dim);}
body .btn-ghost{border:1px solid var(--hl-line);color:var(--hl-primary);background:#fff;}
body .btn-ghost:hover{border-color:var(--hl-primary);}

body .eyebrow{color:var(--hl-primary);font-family:'Inter',sans-serif;font-weight:700;letter-spacing:.08em;}
body .eyebrow.pill{display:inline-block;background:var(--hl-lavender);color:var(--hl-primary);padding:6px 16px;border-radius:999px;font-size:11px;}

/* ---------- Hero ---------- */
body .home-hero{padding:120px 0 70px;background:linear-gradient(160deg,var(--hl-lavender) 0%,var(--hl-bg) 55%);}
body .home-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;}
body .home-hero h1{font-size:clamp(38px,5vw,60px);color:var(--hl-primary);margin:14px 0 18px;}
body .home-hero h1 .accent{color:var(--hl-gold);}
body .home-hero .lede{font-size:17px;color:var(--hl-gray);max-width:560px;margin-bottom:28px;}
body .home-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:26px;}
body .home-hero-meta{display:flex;gap:26px;flex-wrap:wrap;font-size:13px;color:var(--hl-gray);border-top:1px solid var(--hl-line);padding-top:18px;}
body .home-hero-meta strong{color:var(--hl-ink);}
body .home-hero-art{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 24px 60px rgba(61,42,114,.18);}
body .home-hero-art img{width:100%;height:100%;object-fit:cover;display:block;}

/* ---------- Section shells ---------- */
body section{padding:70px 0;}
body .section-head{text-align:center;max-width:680px;margin:0 auto 40px;}
body .section-head h2{font-size:clamp(26px,3vw,36px);color:var(--hl-primary);margin:10px 0 12px;}
body .section-head p{color:var(--hl-gray);}

/* ---------- Pillar / division cards (Pranika "Impact Pillars" style) ---------- */
body .pillar-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:22px;}
body .pillar-card{background:#fff;border:1px solid var(--hl-line);border-radius:var(--hl-radius);padding:26px 22px;text-align:center;transition:transform .2s,box-shadow .2s;}
body .pillar-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(61,42,114,.12);}
body .pillar-badge{width:56px;height:56px;border-radius:50%;background:var(--hl-primary);display:flex;align-items:center;justify-content:center;margin:0 auto 16px;overflow:hidden;}
body .pillar-badge img{width:30px;height:30px;object-fit:contain;filter:brightness(0) invert(1);}
body .pillar-card h3{font-size:17px;margin-bottom:8px;color:var(--hl-ink);}
body .pillar-card p{font-size:13.5px;color:var(--hl-gray);margin-bottom:12px;}
body .pillar-card a{font-size:13px;font-weight:600;color:var(--hl-primary);}

/* ---------- Stats strip ---------- */
body .stats-strip{background:#fff;border:1px solid var(--hl-line);border-radius:var(--hl-radius);padding:36px;display:flex;flex-wrap:wrap;gap:32px;justify-content:space-around;box-shadow:0 12px 34px rgba(61,42,114,.08);}
body .stat{text-align:center;}
body .stat .num{font-family:'Fraunces',serif;font-size:34px;color:var(--hl-primary);}
body .stat .label{font-size:12.5px;color:var(--hl-gray);margin-top:4px;}

/* ---------- What we build gallery ---------- */
body .build-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px;}
body .build-card{position:relative;border-radius:12px;overflow:hidden;aspect-ratio:1;background:var(--hl-bg-soft);}
body .build-card img{width:100%;height:100%;object-fit:cover;}
body .build-card span{position:absolute;left:0;right:0;bottom:0;padding:10px 10px 8px;font-size:11.5px;font-weight:600;color:#fff;background:linear-gradient(0deg,rgba(33,26,51,.85),transparent);}

/* ---------- News cards ---------- */
body .news-strip{background:var(--hl-lavender);}
body .news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;}
body .news-card{background:#fff;border-radius:var(--hl-radius);padding:22px;border:1px solid var(--hl-line);}
body .news-card .date{font-size:11.5px;color:var(--hl-gold);font-weight:700;letter-spacing:.05em;margin-bottom:8px;}
body .news-card h3{font-size:16px;margin-bottom:8px;color:var(--hl-ink);}
body .news-card p{font-size:13.5px;color:var(--hl-gray);}

/* ---------- Full division grid ---------- */
body .division-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:16px;}
body .division-tile{background:#fff;border:1px solid var(--hl-line);border-radius:14px;padding:22px 16px;text-align:center;transition:transform .2s,box-shadow .2s;}
body .division-tile:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(61,42,114,.12);border-color:var(--hl-primary);}
body .division-tile-logo{width:48px;height:48px;margin:0 auto 12px;display:flex;align-items:center;justify-content:center;}
body .division-tile-logo img{width:100%;height:100%;object-fit:contain;}
body .division-tile-logo-blank{background:var(--hl-bg-soft);border-radius:50%;}
body .division-tile .name{font-size:13.5px;font-weight:600;color:var(--hl-ink);}
body .division-tile .ext{font-size:11px;color:var(--hl-gray);margin-top:4px;}

/* ---------- Footer (light) ---------- */
body footer.site{background:#fff;border-top:1px solid var(--hl-line);color:var(--hl-ink);}
body footer.site h5{color:var(--hl-primary);}
body footer.site a{color:var(--hl-gray);}
body footer.site a:hover{color:var(--hl-primary);}

@media (max-width:900px){
  body .home-hero-grid{grid-template-columns:1fr;}
  body .home-hero-art{order:-1;max-height:280px;}
}

/* ---------- Inner-page hero band (.page-hero, used on ~70 inner pages) ----------
   These heroes always show a dark photo behind a dark gradient overlay —
   that part of the design never changed. But the overlay's tail end and the
   heading/paragraph text both used the theme variables above, which this
   file just remapped to *light* colors for the rest of the site. Result:
   dark (or invisible) text sitting on a dark photo. Force the overlay to
   stay dark and the text to stay light, regardless of the variable remap. */
body .page-hero:not(.with-image){
  background-image:linear-gradient(180deg,rgba(10,14,20,.62) 0%,rgba(10,14,20,.93) 78%,#0a0e14 100%),
    url('/assets/img/hero-md-office.jpg');
}
body .page-hero.with-image::after{background:linear-gradient(180deg,rgba(10,14,20,.35) 0%,#0a0e14 92%);}
body .page-hero .eyebrow{color:var(--hl-gold);}
body .page-hero h1{color:#fff;}
body .page-hero p{color:#DCE1EA;}
