/*
Theme Name: GICNTORG
Author: Alfataks
Author URI: https://t.me/alfataks
Version: 3
Description: Required plugins: Yoast SEO, ACF
*/

*{box-sizing:border-box;margin:0;padding:0}
:root{
 --navy:#0d1f3c;
 --navy2:#162d52;
 --gold:#c9a84c;
 --gold2:#e8c96a;
 --cream:#f5f0e8;
 --cream2:#ede8de;
 --text:#1a1a1a;
 --muted:#5a5a5a;
 --border:#ddd5c4;
 --white:#ffffff;
 --red:#8b1a1a;
}
body{font-family:'Inter',sans-serif;background:var(--white);color:var(--text);font-size:15px;line-height:1.6}

/* TOP BAR */
.topbar{background:var(--navy);color:#aab8cc;font-size:11px;padding:7px 0;border-bottom:2px solid var(--gold)}
.topbar-inner{max-width:1200px;margin:0 auto;padding:0 40px;display:flex;justify-content:space-between;align-items:center}
.topbar a{color:#aab8cc;text-decoration:none}
.topbar a:hover{color:var(--gold)}
.topbar-links{display:flex;gap:24px}

/* HEADER */
header{background:var(--navy);padding:28px 0 0}
.header-inner{max-width:1200px;margin:0 auto;padding:0 40px;display:flex;align-items:center;gap:28px;padding-bottom:24px}

/* EMBLEM */
.emblem{width:90px;height:90px;flex-shrink:0;position:relative}
.emblem svg{width:100%;height:100%}

.org-title{flex:1}
.org-name{font-family:'Libre Baskerville',serif;font-size:13px;color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:4px;font-weight:400}
.org-full{font-family:'Libre Baskerville',serif;font-size:26px;color:var(--white);font-weight:700;line-height:1.2;margin-bottom:6px}
.org-sub{font-size:12px;color:#8899bb;letter-spacing:1px;text-transform:uppercase}
.org-accreditation{display:flex;gap:12px;margin-top:10px}
.accred-badge{font-size:10px;color:#8899bb;border:1px solid #2a3f5f;padding:3px 10px;border-radius:2px;letter-spacing:.5px}

/* NAV */
nav{background:var(--navy2);border-top:1px solid #1e3060;border-bottom:3px solid var(--gold)}
.nav-inner{max-width:1200px;margin:0 auto;padding:0 40px;display:flex;align-items:center}
.nav-item{color:#ccd6e8;font-size:13px;font-weight:500;padding:14px 18px;text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-3px;transition:.2s;cursor:pointer;white-space:nowrap}
.nav-item:hover,.nav-item.active{color:var(--gold);border-bottom-color:var(--gold)}
.nav-spacer{flex:1}
.nav-search{background:transparent;border:1px solid #2a3f5f;color:#ccd6e8;padding:7px 14px;font-size:12px;border-radius:2px;font-family:'Inter',sans-serif}

/* HERO */
.hero{background:linear-gradient(135deg, var(--navy) 0%, #1a3060 60%, #0d2545 100%);padding:70px 0;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}
.hero-inner{max-width:1200px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:1fr 400px;gap:60px;align-items:center;position:relative;z-index:1}
.hero-eyebrow{font-size:11px;color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:16px;display:flex;align-items:center;gap:8px}
.hero-eyebrow::before{content:'';width:24px;height:1px;background:var(--gold)}
.hero h1{font-family:'Libre Baskerville',serif;font-size:42px;color:var(--white);font-weight:700;line-height:1.2;margin-bottom:20px}
.hero h1 em{color:var(--gold);font-style:normal}
.hero-lead{font-size:16px;color:#aab8cc;line-height:1.7;margin-bottom:32px;max-width:560px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn-primary{background:var(--gold);color:var(--navy);font-size:13px;font-weight:700;padding:13px 28px;text-decoration:none;letter-spacing:.5px;text-transform:uppercase;transition:.2s;border:none;cursor:pointer}
.btn-primary:hover{background:var(--gold2)}
.btn-outline{background:transparent;color:var(--white);font-size:13px;font-weight:600;padding:12px 28px;text-decoration:none;letter-spacing:.5px;text-transform:uppercase;border:1px solid #3a5070;transition:.2s}
.btn-outline:hover{border-color:var(--gold);color:var(--gold)}

/* HERO PANEL */
.hero-panel{background:rgba(255,255,255,.05);border:1px solid rgba(201,168,76,.2);padding:28px}
.panel-title{font-size:10px;color:var(--gold);letter-spacing:2px;text-transform:uppercase;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid rgba(201,168,76,.2)}
.panel-stat{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.panel-stat:last-child{border-bottom:none}
.panel-stat-label{font-size:12px;color:#8899bb}
.panel-stat-value{font-size:18px;font-weight:700;color:var(--white);font-family:'Libre Baskerville',serif}
.panel-stat-value.gold{color:var(--gold)}
.panel-stat-value.green{color:#5db87a}
.panel-stat-value.red{color:#e05050}

/* MISSION BAR */
.mission-bar{background:var(--cream);border-top:4px solid var(--gold);border-bottom:1px solid var(--border);padding:20px 0}
.mission-inner{max-width:1200px;margin:0 auto;padding:0 40px;display:flex;align-items:center;gap:16px}
.mission-icon{font-size:20px;color:var(--navy);flex-shrink:0}
.mission-text{font-family:'Libre Baskerville',serif;font-size:15px;color:var(--navy);font-style:italic;line-height:1.5}
.mission-text strong{font-style:normal;color:var(--red)}

/* TABS */
.tabs-wrap{max-width:1200px;margin:0 auto;padding:0 40px}
.tabs{display:flex;gap:0;border-bottom:2px solid var(--border);margin-top:40px;overflow-x:auto}
.tab{font-size:13px;font-weight:600;color:var(--muted);padding:11px 20px;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap;transition:.2s;text-transform:uppercase;letter-spacing:.5px}
.tab:hover{color:var(--navy)}
.tab.active{color:var(--navy);border-bottom-color:var(--gold)}
.tab-content{display:none;padding:40px 0}
.tab-content.active{display:block}

/* MAIN LAYOUT */
.main{max-width:1200px;margin:0 auto;padding:0 40px}
.two-col{display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:start}

/* SECTION HEADERS */
.section-label{font-size:10px;color:var(--gold);letter-spacing:3px;text-transform:uppercase;margin-bottom:8px;display:flex;align-items:center;gap:8px}
.section-label::before{content:'';width:16px;height:1px;background:var(--gold)}
.section-title{font-family:'Libre Baskerville',serif;font-size:26px;color:var(--navy);font-weight:700;margin-bottom:16px;line-height:1.3}
.section-lead{font-size:15px;color:var(--muted);line-height:1.7;margin-bottom:28px}

/* PILLARS */
.pillars{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;background:var(--border);border:1px solid var(--border);margin-bottom:40px}
.pillar{background:var(--white);padding:28px 22px}
.pillar-num{font-family:'Libre Baskerville',serif;font-size:36px;color:var(--cream2);font-weight:700;line-height:1;margin-bottom:12px}
.pillar-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}
.pillar-text{font-size:13px;color:var(--muted);line-height:1.6}
.pillar:hover{background:var(--cream)}

/* CASINO LISTINGS */
.casino-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border)}
.casino-item{display:grid;grid-template-columns:48px 1fr auto auto;gap:16px;align-items:center;padding:18px 20px;border-bottom:1px solid var(--border);background:var(--white);transition:.15s}
.casino-item:last-child{border-bottom:none}
.casino-item:hover{background:var(--cream)}
.casino-rank{font-family:'Libre Baskerville',serif;font-size:20px;color:var(--cream2);font-weight:700;text-align:center}
.casino-info{}
.casino-name{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:2px}
.casino-detail{font-size:12px;color:var(--muted)}
.compliance-score{text-align:center}
.score-val{font-size:18px;font-weight:700;font-family:'Libre Baskerville',serif}
.score-val.a{color:#2a7a2a}
.score-val.b{color:#e07a00}
.score-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}
.casino-action{text-align:right}
.btn-review{font-size:11px;font-weight:700;color:var(--navy);border:1px solid var(--navy);padding:7px 14px;text-decoration:none;text-transform:uppercase;letter-spacing:.5px;transition:.2s;display:inline-block}
.btn-review:hover{background:var(--navy);color:var(--white)}
.compliance-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:3px 8px;letter-spacing:.5px;text-transform:uppercase;margin-top:4px}
.badge-cert{background:#e8f5e9;color:#2a7a2a;border:1px solid #a5d6a7}
.badge-watch{background:#fff8e1;color:#e07a00;border:1px solid #ffe082}
.badge-fail{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}

/* ALERTS */
.alert-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border)}
.alert{display:grid;grid-template-columns:90px 1fr;gap:0;border-bottom:1px solid var(--border);background:var(--white)}
.alert:last-child{border-bottom:none}
.alert:hover{background:var(--cream)}
.alert.critical .alert-label{background:var(--red);color:var(--white)}
.alert.warning .alert-label{background:#7a5a00;color:var(--white)}
.alert.info .alert-label{background:var(--navy);color:var(--white)}
.alert-label{font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;writing-mode:vertical-rl;text-orientation:mixed;padding:16px 10px;display:flex;align-items:center;justify-content:center;text-align:center;min-height:80px}
.alert-body{padding:16px 20px;border-left:1px solid var(--border)}
.alert-icon{display:none}
.alert-title{font-size:13px;font-weight:700;margin-bottom:5px;color:var(--navy)}
.alert-text{font-size:12px;color:var(--muted);line-height:1.6}
.alert-date{font-size:10px;color:#aaa;margin-top:6px;text-transform:uppercase;letter-spacing:.5px}

/* SIDEBAR */
.sidebar {
  position: sticky;
  top: 72px; /* header height + gap */
}
.sidebar-box {
  border: 1px solid var(--border);
  margin-bottom: 16px;
}
.sidebar-head{background:var(--navy);color:var(--white);font-size:11px;font-weight:700;padding:11px 16px;letter-spacing:1.5px;text-transform:uppercase}
.sidebar-body{padding:16px}
.sidebar-box h4 {
  font-family: var(--font-head);
  font-size: 13px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--muted);
  border-bottom: 1px solid var(--border);
  padding-bottom: 8px;
  margin-bottom: 12px;
}
.sidebar-box ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sidebar-box ul li {
  border-bottom: 1px solid var(--border);
  padding: 7px 0;
  font-size: 12px;
  line-height: 1.45;
}
.sidebar-box ul li:last-child {
  border-bottom: none;
}
.sidebar-box ul li a {
  color: var(--text);
  text-decoration: none;
  transition: color .15s;
}
.sidebar-box ul li a:hover {
  color: var(--blue);
}
.sidebar-box ul li i {
  color: var(--blue);
  margin-right: 6px;
  font-size: 11px;
}

/* STANDARDS TABLE */
.standards-table{width:100%;border-collapse:collapse;font-size:13px}
.standards-table th{background:var(--navy);color:var(--white);padding:11px 14px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.standards-table td{padding:12px 14px;border-bottom:1px solid var(--border);vertical-align:top}
.standards-table tr:hover td{background:var(--cream)}
.std-code{font-family:monospace;font-size:11px;background:var(--cream2);padding:2px 6px;border-radius:2px;color:var(--navy);font-weight:700}
.check{color:#2a7a2a;font-weight:700}
.cross{color:var(--red);font-weight:700}

/* ABOUT */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.team-card{border:1px solid var(--border);padding:24px}
.team-avatar{width:72px;height:72px;background:var(--cream2);border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:24px;margin-bottom:14px;font-family:'Libre Baskerville',serif;color:var(--navy);font-weight:700}
.team-name{font-family:'Libre Baskerville',serif;font-size:17px;font-weight:700;color:var(--navy);margin-bottom:3px}
.team-role{font-size:11px;color:var(--gold);text-transform:uppercase;letter-spacing:1px;margin-bottom:10px}
.team-bio{font-size:12px;color:var(--muted);line-height:1.6}
.team-links{display:flex;gap:8px;margin-top:12px}
.team-link{font-size:10px;color:var(--navy);border:1px solid var(--border);padding:4px 10px;text-decoration:none;text-transform:uppercase;letter-spacing:.5px}
.team-link:hover{background:var(--navy);color:var(--white)}

/* TIMELINE */
.timeline{position:relative;padding-left:28px}
.timeline::before{content:'';position:absolute;left:6px;top:0;bottom:0;width:1px;background:var(--border)}
.tl-item{position:relative;margin-bottom:24px}
.tl-item::before{content:'';position:absolute;left:-25px;top:5px;width:11px;height:11px;border-radius:50%;background:var(--white);border:2px solid var(--gold)}
.tl-year{font-size:10px;color:var(--gold);font-weight:700;letter-spacing:1px;text-transform:uppercase;margin-bottom:4px}
.tl-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px}
.tl-text{font-size:12px;color:var(--muted);line-height:1.5}

/* FRAMEWORK */
.framework-steps{display:flex;flex-direction:column;gap:0;border:1px solid var(--border)}
.fw-step{display:flex;gap:20px;padding:20px 22px;border-bottom:1px solid var(--border);align-items:flex-start}
.fw-step:last-child{border-bottom:none}
.fw-step:hover{background:var(--cream)}
.fw-num{width:36px;height:36px;background:var(--navy);color:var(--gold);font-family:'Libre Baskerville',serif;font-size:15px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.fw-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:4px}
.fw-text{font-size:12px;color:var(--muted);line-height:1.5}
.fw-code{font-size:10px;color:var(--gold);font-family:monospace;margin-top:4px}

/* JURISDICTION */
.jur-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border)}
.jur-item{background:var(--white);padding:18px 16px}
.jur-item:hover{background:var(--cream)}
.jur-flag{font-size:24px;margin-bottom:8px}
.jur-country{font-size:13px;font-weight:700;color:var(--navy);margin-bottom:4px}
.jur-status{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}
.jur-status.active{color:#2a7a2a}
.jur-status.review{color:#e07a00}
.jur-detail{font-size:11px;color:var(--muted);margin-top:4px}

/* REPORT */
.report-list{display:flex;flex-direction:column;gap:12px}
.report-item{display:flex;gap:16px;align-items:center;padding:16px 18px;border:1px solid var(--border);background:var(--white);transition:.15s}
.report-item:hover{background:var(--cream);border-color:var(--gold)}
.report-icon{font-size:28px;flex-shrink:0}
.report-title{font-size:14px;font-weight:700;color:var(--navy);margin-bottom:3px}
.report-meta{font-size:12px;color:var(--muted)}
.report-dl{font-size:11px;color:var(--navy);font-weight:700;text-transform:uppercase;letter-spacing:.5px;border:1px solid var(--navy);padding:5px 12px;text-decoration:none;white-space:nowrap}
.report-dl:hover{background:var(--navy);color:var(--white)}

/* FOOTER */
footer{background:var(--navy);color:#8899bb;margin-top:60px;padding:48px 0 24px;border-top:3px solid var(--gold)}
.footer-inner{max-width:1200px;margin:0 auto;padding:0 40px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:40px}
.footer-brand .emblem-sm{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.footer-brand-name{font-family:'Libre Baskerville',serif;font-size:15px;color:var(--white);font-weight:700}
.footer-brand-sub{font-size:10px;color:#4a5f78;text-transform:uppercase;letter-spacing:1px}
.footer-desc{font-size:12px;line-height:1.7;color:#6a7f98;max-width:280px}
.footer-col-title{font-size:10px;color:var(--gold);font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:14px}
.footer-link{display:block;font-size:12px;color:#6a7f98;text-decoration:none;margin-bottom:8px;transition:.2s}
.footer-link:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid #1e3060;padding-top:20px;display:flex;justify-content:space-between;align-items:center;font-size:11px;color:#4a5f78}
.footer-disclaimer{max-width:600px;font-size:10px;color:#3a4f68;line-height:1.6;margin-top:12px}
/* ═══════════════════════════════════════════════
   MOBILE STYLES
   ═══════════════════════════════════════════════ */

/* ── Search form reset ── */
.nav-search,
.search-form input[type="search"] {
    border: 1px solid rgba(255,255,255,.2);
    background: rgba(255,255,255,.08);
    color: #fff;
    padding: 7px 12px;
    font-size: 12px;
    font-family: 'Inter', sans-serif;
    width: 200px;
    outline: none;
}
.search-form button[type="submit"] { display: none; }

/* ── Burger button ── */
.nav-burger {
    display: none;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    padding: 4px;
    margin-left: auto;
}
.nav-burger span {
    display: block;
    width: 22px;
    height: 2px;
    background: #fff;
    border-radius: 2px;
    transition: .2s;
}

/* ── Content layout (single / page / archive) ── */
.content-layout {
    margin-top: 40px;
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 32px;
    align-items: start;
}

/* ── Breadcrumb ── */
.page-breadcrumb {
    font-size: 12px;
    color: var(--muted, #7a8394);
    margin-bottom: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    align-items: center;
}
.page-breadcrumb a { color: var(--navy, #0d1f3c); text-decoration: none; }
.page-breadcrumb a:hover { text-decoration: underline; }
.breadcrumb-sep { opacity: .4; }

/* ── Entry header ── */
.entry-header { margin-bottom: 28px; }
.entry-category-label {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: var(--gold, #c9a84c);
    border: 1px solid var(--gold, #c9a84c);
    padding: 3px 10px;
    margin-bottom: 14px;
}
.entry-title {
    font-family: 'Libre Baskerville', serif;
    font-size: 32px;
    color: var(--navy, #0d1f3c);
    line-height: 1.25;
    margin: 0 0 16px;
}
.entry-meta {
    font-size: 12px;
    color: var(--muted, #7a8394);
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}
.entry-thumbnail { margin-bottom: 32px; }
.entry-thumbnail img { width: 100%; height: auto; display: block; }

/* ── Entry content ── */
.entry-content {
    font-size: 15px;
    line-height: 1.8;
    color: #2c3a4a;
}
.entry-content h2 {
    font-family: 'Libre Baskerville', serif;
    font-size: 22px;
    color: var(--navy, #0d1f3c);
    margin: 36px 0 14px;
}
.entry-content h3 {
    font-size: 17px;
    font-weight: 700;
    color: var(--navy, #0d1f3c);
    margin: 28px 0 10px;
}
.entry-content p { margin: 0 0 20px; }
.entry-content a { color: var(--navy, #0d1f3c); text-decoration: underline; }
.entry-content blockquote {
    border-left: 3px solid var(--gold, #c9a84c);
    margin: 28px 0;
    padding: 12px 20px;
    background: #f8f6f0;
    font-style: italic;
    color: #4a5568;
}
.entry-content table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
    margin: 24px 0;
}
.entry-content th {
    background: var(--navy, #0d1f3c);
    color: #fff;
    padding: 10px 14px;
    text-align: left;
    font-size: 11px;
    letter-spacing: .8px;
    text-transform: uppercase;
}
.entry-content td {
    padding: 10px 14px;
    border-bottom: 1px solid var(--border, #e5e8ec);
}
.entry-content tr:nth-child(even) td { background: #f7f9fb; }

/* ── Entry footer ── */
.entry-footer { margin-top: 40px; padding-top: 20px; border-top: 1px solid var(--border, #e5e8ec); font-size: 13px; color: var(--muted, #7a8394); }
.footer-tags-label { font-weight: 600; color: var(--navy, #0d1f3c); margin-right: 6px; }

/* ── Post navigation ── */
.post-navigation { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--border, #e5e8ec); }
.post-nav-inner { display: flex; gap: 16px; }
.post-nav-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px 20px;
    border: 1px solid var(--border, #e5e8ec);
    text-decoration: none;
    transition: border-color .2s;
}
.post-nav-item:hover { border-color: var(--gold, #c9a84c); }
.post-nav-next { align-items: flex-end; text-align: right; }
.post-nav-dir { font-size: 11px; text-transform: uppercase; letter-spacing: 1px; color: var(--muted, #7a8394); }
.post-nav-title { font-size: 14px; font-weight: 600; color: var(--navy, #0d1f3c); }

/* ── Archive ── */
.archive-header { margin-bottom: 40px; }
.archive-description { font-size: 15px; color: #4a5568; margin-top: 8px; max-width: 600px; }
.archive-count { margin-top: 12px; font-size: 13px; color: var(--muted, #7a8394); }

.archive-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 28px;
}
.archive-card {
    border: 1px solid var(--border, #e5e8ec);
    background: #fff;
    display: flex;
    flex-direction: column;
    transition: border-color .2s, box-shadow .2s;
}
.archive-card:hover { border-color: var(--gold, #c9a84c); box-shadow: 0 4px 20px rgba(0,0,0,.06); }
.archive-card-thumb img { width: 100%; height: 180px; object-fit: cover; display: block; }
.archive-card-body { padding: 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.archive-card-cat {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: var(--gold, #c9a84c);
    text-decoration: none;
}
.archive-card-title { font-family: 'Libre Baskerville', serif; font-size: 17px; line-height: 1.35; margin: 0; }
.archive-card-title a { text-decoration: none; color: var(--navy, #0d1f3c); }
.archive-card-title a:hover { color: var(--gold, #c9a84c); }
.archive-card-meta { font-size: 12px; color: var(--muted, #7a8394); }
.meta-sep { margin: 0 4px; opacity: .4; }
.archive-card-excerpt { font-size: 13px; color: #4a5568; line-height: 1.6; flex: 1; }
.archive-card-read { font-size: 12px; font-weight: 600; color: var(--navy, #0d1f3c); text-decoration: none; letter-spacing: .5px; margin-top: 4px; }
.archive-card-read:hover { color: var(--gold, #c9a84c); }

/* ── Archive pagination ── */
.archive-pagination { margin-top: 48px; display: flex; flex-wrap: wrap; gap: 6px; }
.archive-pagination .page-numbers {
    display: inline-block;
    padding: 8px 14px;
    font-size: 13px;
    font-weight: 600;
    border: 1px solid var(--border, #e5e8ec);
    color: var(--navy, #0d1f3c);
    text-decoration: none;
    transition: .2s;
}
.archive-pagination .page-numbers:hover,
.archive-pagination .page-numbers.current {
    background: var(--navy, #0d1f3c);
    color: #fff;
    border-color: var(--navy, #0d1f3c);
}

/* ── No results ── */
.no-results {
    text-align: center;
    padding: 80px 40px;
    border: 1px solid var(--border, #e5e8ec);
}
.no-results-icon { font-size: 48px; margin-bottom: 16px; }
.no-results-title { font-size: 22px; font-weight: 700; color: var(--navy, #0d1f3c); margin-bottom: 8px; }
.no-results-text { font-size: 14px; color: var(--muted, #7a8394); margin-bottom: 24px; }

/* ═══════════════════════════════════════════════
   BREAKPOINTS
   ═══════════════════════════════════════════════ */

@media (max-width: 1024px) {
    .main { padding: 32px 24px; }
    .archive-grid { grid-template-columns: 1fr 1fr; gap: 20px; }
    .content-layout { gap: 28px; }
}

@media (max-width: 768px) {

    /* Topbar */
    .topbar-inner { flex-direction: column; gap: 6px; text-align: center; padding: 8px 16px; }

    /* Header */
    .header-inner { flex-direction: column; align-items: center; text-align: center; padding: 20px 16px 0; gap: 12px; }
    .emblem { width: 64px; height: 64px; }
    .org-accreditation { justify-content: center; }
    .org-name { font-size: 28px; }

    /* Nav */
    .nav-inner { flex-wrap: wrap; padding: 0 16px; position: relative; }
    .nav-burger { display: flex; }
    .nav-links {
        display: none;
        flex-direction: column;
        width: 100%;
        border-top: 1px solid rgba(255,255,255,.1);
        padding: 8px 0 12px;
    }
    nav.nav-open .nav-links { display: flex; }
    .nav-item {
        padding: 10px 4px;
        font-size: 13px;
        border-bottom: 1px solid rgba(255,255,255,.06);
    }
    .nav-spacer { display: none; }
    .search-form,
    .nav-search { width: 100%; margin: 8px 0; }
    .search-form input[type="search"] { width: 100%; box-sizing: border-box; }

    /* Mission bar */
    .mission-inner { padding: 14px 16px; }
    .mission-text { font-size: 12px; line-height: 1.6; }

    /* Main */
    .main { padding: 24px 16px; }

    /* Hero */
    .hero-inner { flex-direction: column !important; gap: 32px; }
    .hero h1 { font-size: 28px; }
    .hero-panel { width: 100%; }

    /* Pillars */
    .pillars { grid-template-columns: 1fr 1fr; }

    /* Two-col */
    .two-col { grid-template-columns: 1fr; }
    .sidebar { display: none; }          /* скрываем хардкод-сайдбар на главной */

    /* Content layout */
    .content-layout { grid-template-columns: 1fr; gap: 32px; }
    .content-layout .sidebar { display: flex; flex-direction: column; gap: 20px; width: 100%; }

    /* Archive */
    .archive-grid { grid-template-columns: 1fr; }

    /* Post nav */
    .post-nav-inner { flex-direction: column; }

    /* Entry */
    .entry-title { font-size: 24px; }
    .entry-content h2 { font-size: 18px; }
    .entry-content table { font-size: 12px; display: block; overflow-x: auto; }

    /* Footer */
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
    .footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 480px) {
    .pillars { grid-template-columns: 1fr; }
    .footer-grid { grid-template-columns: 1fr; }
    .header-inner { padding: 16px; }
    .org-name { font-size: 24px; }
    .hero h1 { font-size: 22px; }
    .archive-card-thumb img { height: 140px; }
}

/* ═══════════════════════════════════════════════
   404
   ═══════════════════════════════════════════════ */

.error-404 {
    max-width: 900px;
    margin: 0 auto;
    padding: 60px 0;
    text-align: center;
}
.error-404-code {
    font-family: 'Libre Baskerville', serif;
    font-size: 120px;
    font-weight: 700;
    color: var(--navy, #0d1f3c);
    line-height: 1;
    opacity: .06;
    margin-bottom: -40px;
    user-select: none;
}
.error-404-inner {
    position: relative;
    z-index: 1;
    margin-bottom: 56px;
}
.error-404-inner .entry-title {
    font-size: 36px;
    margin-bottom: 16px;
}
.error-404-text {
    font-size: 15px;
    color: #4a5568;
    max-width: 520px;
    margin: 0 auto 28px;
    line-height: 1.7;
}
.error-404-actions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 32px;
}
.error-404-search {
    max-width: 400px;
    margin: 0 auto;
}
.error-404-search-label {
    font-size: 12px;
    color: var(--muted, #7a8394);
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.error-404-search .search-form {
    display: flex;
    gap: 8px;
}
.error-404-search .search-form input[type="search"] {
    flex: 1;
    border: 1px solid var(--border, #e5e8ec);
    padding: 10px 14px;
    font-size: 13px;
    font-family: 'Inter', sans-serif;
    background: #fff;
    color: var(--navy, #0d1f3c);
    outline: none;
}
.error-404-search .search-form input[type="search"]:focus {
    border-color: var(--gold, #c9a84c);
}
.error-404-search .search-form button[type="submit"] {
    display: block;
    background: var(--navy, #0d1f3c);
    color: #fff;
    border: none;
    padding: 10px 18px;
    font-size: 12px;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    cursor: pointer;
    letter-spacing: .5px;
    white-space: nowrap;
}
.error-404-search .search-form button[type="submit"]:hover {
    background: var(--gold, #c9a84c);
}
.error-404-links {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    text-align: left;
}
.error-404-col {
    border: 1px solid var(--border, #e5e8ec);
}
.error-404-col .sidebar-head {
    background: var(--navy, #0d1f3c);
    color: #fff;
    padding: 12px 16px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}
.error-404-col .sidebar-body {
    padding: 12px 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

/* ═══════════════════════════════════════════════
   SEARCH
   ═══════════════════════════════════════════════ */

.search-bar-wrap {
    margin-bottom: 40px;
}
.search-bar-wrap .search-form {
    display: flex;
    gap: 0;
    max-width: 560px;
}
.search-bar-wrap .search-form input[type="search"] {
    flex: 1;
    border: 2px solid var(--navy, #0d1f3c);
    border-right: none;
    padding: 12px 16px;
    font-size: 14px;
    font-family: 'Inter', sans-serif;
    background: #fff;
    color: var(--navy, #0d1f3c);
    outline: none;
}
.search-bar-wrap .search-form input[type="search"]:focus {
    border-color: var(--gold, #c9a84c);
}
.search-bar-wrap .search-form button[type="submit"] {
    display: block;
    background: var(--navy, #0d1f3c);
    color: #fff;
    border: 2px solid var(--navy, #0d1f3c);
    padding: 12px 24px;
    font-size: 13px;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    cursor: pointer;
    letter-spacing: .5px;
    white-space: nowrap;
    transition: background .2s;
}
.search-bar-wrap .search-form button[type="submit"]:hover {
    background: var(--gold, #c9a84c);
    border-color: var(--gold, #c9a84c);
}

.search-result-type {
    display: inline-block;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.2px;
    text-transform: uppercase;
    color: var(--muted, #7a8394);
    border: 1px solid var(--border, #e5e8ec);
    padding: 2px 8px;
    margin-bottom: 6px;
}
.search-result-url {
    font-size: 11px;
    color: var(--muted, #7a8394);
    text-decoration: none;
    word-break: break-all;
}
mark.search-highlight {
    background: #fff3cd;
    color: inherit;
    padding: 0 2px;
    border-radius: 2px;
}

.no-results-suggestions {
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 24px;
}

.search-suggestions {
    margin-top: 56px;
}
.search-suggestions-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-top: 20px;
}
.search-suggestion-item {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 20px;
    border: 1px solid var(--border, #e5e8ec);
    text-decoration: none;
    transition: border-color .2s, box-shadow .2s;
}
.search-suggestion-item:hover {
    border-color: var(--gold, #c9a84c);
    box-shadow: 0 4px 16px rgba(0,0,0,.06);
}
.suggestion-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold, #c9a84c);
}
.suggestion-text {
    font-size: 13px;
    color: var(--navy, #0d1f3c);
    line-height: 1.4;
}

/* ═══════════════════════════════════════════════
   404 + SEARCH MOBILE
   ═══════════════════════════════════════════════ */

@media (max-width: 768px) {
    .error-404 { padding: 40px 0; }
    .error-404-code { font-size: 80px; }
    .error-404-inner .entry-title { font-size: 26px; }
    .error-404-links { grid-template-columns: 1fr; }
    .search-suggestions-grid { grid-template-columns: 1fr 1fr; }
    .search-bar-wrap .search-form { max-width: 100%; }
}

@media (max-width: 480px) {
    .error-404-code { font-size: 60px; }
    .search-suggestions-grid { grid-template-columns: 1fr; }
    .error-404-search .search-form { flex-direction: column; }
    .search-bar-wrap .search-form { flex-direction: column; }
    .search-bar-wrap .search-form input[type="search"] { border-right: 2px solid var(--navy, #0d1f3c); }
    .search-bar-wrap .search-form button[type="submit"] { width: 100%; }
}

/* ═══════════════════════════════════════════════
   CONTACT PAGE
   ═══════════════════════════════════════════════ */

.contact-hero {
    max-width: 720px;
    margin-bottom: 32px;
}
.contact-lead {
    font-size: 15px;
    color: #4a5568;
    line-height: 1.7;
    margin-top: 12px;
}

/* Quick reasons */
.contact-reasons {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
    margin-bottom: 48px;
}
.contact-reason-chip {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 16px 18px;
    border: 1px solid var(--border, #e5e8ec);
    text-decoration: none;
    transition: border-color .2s, box-shadow .2s;
}
.contact-reason-chip:hover {
    border-color: var(--gold, #c9a84c);
    box-shadow: 0 4px 16px rgba(0,0,0,.06);
}
.contact-reason-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--gold, #c9a84c);
}
.contact-reason-text {
    font-size: 13px;
    color: var(--navy, #0d1f3c);
    line-height: 1.4;
}

/* Layout */
.contact-layout {
    display: flex;
    gap: 40px;
    align-items: flex-start;
    margin-bottom: 48px;
}
.contact-form-card {
    flex: 1;
    min-width: 0;
    border: 1px solid var(--border, #e5e8ec);
    background: #fff;
}
.contact-form-head {
    padding: 20px 24px;
    border-bottom: 1px solid var(--border, #e5e8ec);
}
.contact-form-head .sidebar-head {
    background: none;
    color: var(--navy, #0d1f3c);
    padding: 0;
    font-size: 16px;
    font-family: 'Libre Baskerville', serif;
    text-transform: none;
    letter-spacing: 0;
    margin-bottom: 4px;
}
.contact-form-sub {
    font-size: 12px;
    color: var(--muted, #7a8394);
}
.contact-form {
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
.form-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.form-label {
    font-size: 12px;
    font-weight: 600;
    color: var(--navy, #0d1f3c);
    letter-spacing: .3px;
}
.form-input,
.form-select,
.form-textarea {
    border: 1px solid var(--border, #e5e8ec);
    padding: 10px 12px;
    font-size: 13px;
    font-family: 'Inter', sans-serif;
    color: var(--navy, #0d1f3c);
    background: #fff;
    outline: none;
    transition: border-color .2s;
    width: 100%;
    box-sizing: border-box;
}
.form-input:focus,
.form-select:focus,
.form-textarea:focus {
    border-color: var(--gold, #c9a84c);
}
.form-textarea {
    resize: vertical;
    min-height: 120px;
    font-family: 'Inter', sans-serif;
}
.form-group--checkbox {
    flex-direction: row;
}
.form-checkbox-label {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 12px;
    color: #4a5568;
    line-height: 1.5;
    cursor: pointer;
}
.form-checkbox-label input[type="checkbox"] {
    margin-top: 2px;
    accent-color: var(--navy, #0d1f3c);
}
.form-submit {
    align-self: flex-start;
    border: none;
    cursor: pointer;
    font-family: 'Inter', sans-serif;
}
.form-disclaimer {
    font-size: 11px;
    color: var(--muted, #7a8394);
    font-style: italic;
    border-top: 1px solid var(--border, #e5e8ec);
    padding-top: 14px;
    margin-top: 4px;
}

/* Info sidebar */
.contact-info-sidebar {
    width: 340px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.contact-info-item {
    display: flex;
    gap: 12px;
    padding-bottom: 16px;
    margin-bottom: 16px;
    border-bottom: 1px solid var(--border, #e5e8ec);
}
.contact-info-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}
.contact-info-icon {
    font-size: 16px;
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f7f9fb;
    border: 1px solid var(--border, #e5e8ec);
    flex-shrink: 0;
}
.contact-info-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
    color: var(--muted, #7a8394);
    margin-bottom: 4px;
}
.contact-info-value {
    font-size: 13px;
    color: var(--navy, #0d1f3c);
    line-height: 1.6;
    text-decoration: none;
}
a.contact-info-value:hover {
    color: var(--gold, #c9a84c);
}
.contact-accred {
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: flex-start;
}

/* Map */
.contact-map-wrap {
    margin-bottom: 40px;
}
.contact-map {
    border: 1px solid var(--border, #e5e8ec);
    overflow: hidden;
    line-height: 0;
}
.contact-map iframe {
    display: block;
}
.contact-map-note {
    font-size: 11px;
    color: var(--muted, #7a8394);
    margin-top: 8px;
    font-style: italic;
}

/* ═══════════════════════════════════════════════
   CONTACT MOBILE
   ═══════════════════════════════════════════════ */

@media (max-width: 1024px) {
    .contact-layout { flex-direction: column; }
    .contact-info-sidebar { width: 100%; flex-direction: row; flex-wrap: wrap; }
    .contact-info-sidebar .sidebar-box { flex: 1; min-width: 260px; }
}

@media (max-width: 768px) {
    .contact-reasons { grid-template-columns: 1fr 1fr; }
    .form-row { grid-template-columns: 1fr; }
    .contact-info-sidebar { flex-direction: column; }
    .contact-map iframe { height: 260px; }
}

@media (max-width: 480px) {
    .contact-reasons { grid-template-columns: 1fr; }
    .contact-form { padding: 18px; }
    .form-submit { width: 100%; text-align: center; }
}

