/*
Theme Name: Genuine Antiochian Orthodox Church
Theme URI: https://www.antiochianorthodoxchurch.org/
Author: Antiochian Human Services / Genuine Orthodox Church Metropolia
Author URI: https://www.antiochianorthodoxchurch.org/
Description: Official theme of the Holy Synod of the Genuine Orthodox Church Metropolia (Genuine Antiochian Orthodox Church). A reverent, readable design carrying the full teaching content of the Metropolia.
Version: 1.0.3
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: gaoc
Tags: orthodox, church, religious, responsive, custom-menu, featured-images
*/

/* ============ Tokens ============ */
:root{
  --gaoc-navy:#1a2340;
  --gaoc-navy-deep:#11172e;
  --gaoc-gold:#c9a227;
  --gaoc-gold-soft:#e8d48a;
  --gaoc-cream:#faf7ef;
  --gaoc-paper:#ffffff;
  --gaoc-ink:#2b2b2b;
  --gaoc-muted:#6b6f7d;
  --gaoc-line:#e5ddc8;
  --gaoc-crimson:#7a1f1f;
  --serif:"Palatino Linotype","Book Antiqua",Palatino,Georgia,"Times New Roman",serif;
  --sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}

/* ============ Base ============ */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--gaoc-cream);
  line-height:1.7;
  font-size:17px;
}
img{max-width:100%;height:auto}
a{color:var(--gaoc-navy);text-decoration:underline;text-underline-offset:3px}
a:hover{color:var(--gaoc-crimson)}
h1,h2,h3,h4{font-family:var(--serif);color:var(--gaoc-navy);line-height:1.3;font-weight:700}
h1{font-size:2.1rem}
h2{font-size:1.6rem;border-bottom:2px solid var(--gaoc-gold);padding-bottom:.35rem}
h3{font-size:1.3rem}
blockquote{
  border-left:4px solid var(--gaoc-gold);
  margin:1.5em 0;padding:.8em 1.2em;
  background:#fffdf6;font-style:italic;color:#444;
}
table{border-collapse:collapse;width:100%;margin:1em 0}
th,td{border:1px solid var(--gaoc-line);padding:.6em;text-align:left}
th{background:var(--gaoc-navy);color:#fff}

/* ============ Layout ============ */
.gaoc-wrap{max-width:1140px;margin:0 auto;padding:0 20px}
.gaoc-narrow{max-width:820px;margin:0 auto}

/* ============ Top bar ============ */
.gaoc-topbar{background:var(--gaoc-navy-deep);color:#cfd4e6;font-size:.85rem}
.gaoc-topbar .gaoc-wrap{display:flex;justify-content:space-between;align-items:center;padding-top:6px;padding-bottom:6px;flex-wrap:wrap;gap:6px}
.gaoc-topbar a{color:var(--gaoc-gold-soft);text-decoration:none}

/* ============ Header ============ */
.gaoc-header{background:linear-gradient(180deg,var(--gaoc-navy) 0%,var(--gaoc-navy-deep) 100%);color:#fff;padding:26px 0 0}
.gaoc-brand{display:flex;align-items:center;gap:16px}
.gaoc-brand img{width:64px;height:64px;object-fit:contain}
.gaoc-brand .t1{font-family:var(--serif);font-size:1.5rem;color:#fff;margin:0;line-height:1.2}
.gaoc-brand .t1 a{color:#fff;text-decoration:none}
.gaoc-brand .t2{font-size:.85rem;color:var(--gaoc-gold-soft);margin:2px 0 0;letter-spacing:.5px}

/* ============ Nav ============ */
.gaoc-nav{margin-top:18px;background:rgba(0,0,0,.25);border-top:1px solid rgba(201,162,39,.35)}
.gaoc-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.gaoc-nav li{position:relative}
.gaoc-nav a{display:block;color:#f2ead0;text-decoration:none;padding:12px 16px;font-size:.95rem}
.gaoc-nav a:hover,.gaoc-nav .current-menu-item>a{background:var(--gaoc-gold);color:var(--gaoc-navy-deep)}
.gaoc-nav ul ul{display:none;position:absolute;top:100%;left:0;min-width:230px;background:var(--gaoc-navy-deep);z-index:50;box-shadow:0 8px 20px rgba(0,0,0,.35)}
.gaoc-nav li:hover>ul{display:block}
.gaoc-nav ul ul a{padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.06)}
.gaoc-menu-toggle{display:none;background:var(--gaoc-gold);color:var(--gaoc-navy-deep);border:0;padding:10px 16px;font-size:1rem;cursor:pointer;width:100%}

/* ============ Hero ============ */
.gaoc-hero{
  background:var(--gaoc-navy-deep) url('assets/images/cheirosia.jpg') center/cover;
  color:#fff;padding:110px 0;position:relative;min-height:420px;
  display:flex;align-items:center;
}
.gaoc-hero::before{content:"";position:absolute;inset:0;background:rgba(17,23,46,.68)}
.gaoc-hero .gaoc-wrap{position:relative;z-index:1;width:100%}
.gaoc-hero h1{color:#fff;font-size:2.6rem;margin:0 0 .4em;text-shadow:0 2px 12px rgba(0,0,0,.5)}
.gaoc-hero p.lead{font-size:1.2rem;max-width:780px;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.5)}
.gaoc-rule{width:120px;height:3px;background:var(--gaoc-gold);margin:18px 0}

/* ============ Content ============ */
.gaoc-main{padding:40px 0 60px}
.gaoc-card{background:var(--gaoc-paper);border:1px solid var(--gaoc-line);border-radius:6px;padding:34px 36px;box-shadow:0 2px 10px rgba(26,35,64,.06)}
.gaoc-meta{color:var(--gaoc-muted);font-size:.9rem}
.gaoc-featured{margin:0 0 22px;text-align:center}
.gaoc-featured img{border:1px solid var(--gaoc-line);border-radius:4px}

/* Teaching callout */
.gaoc-creed{
  background:var(--gaoc-navy);color:#f0e9d2;border-radius:6px;
  padding:26px 30px;margin:28px 0;border-left:6px solid var(--gaoc-gold);
}
.gaoc-creed h2,.gaoc-creed h3{color:var(--gaoc-gold-soft);border:0}
.gaoc-creed a{color:var(--gaoc-gold-soft)}

/* Image + caption */
.wp-caption,.gaoc-figure{max-width:100%;margin:1.4em auto;text-align:center}
.wp-caption img,.gaoc-figure img{border:1px solid var(--gaoc-line);padding:6px;background:#fff}
.wp-caption-text,.gaoc-figure figcaption{font-size:.88rem;color:var(--gaoc-muted);padding-top:6px}

/* Gallery grid */
.gaoc-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin:20px 0}
.gaoc-gallery img{width:100%;height:180px;object-fit:cover;border-radius:4px;border:1px solid var(--gaoc-line)}

/* ============ Footer ============ */
.gaoc-footer{background:var(--gaoc-navy-deep);color:#c9cfe2;margin-top:40px}
.gaoc-footer .cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;padding:40px 0}
.gaoc-footer h3{color:var(--gaoc-gold-soft);font-size:1.05rem;border:0}
.gaoc-footer a{color:#dfe3f2;text-decoration:none}
.gaoc-footer a:hover{color:var(--gaoc-gold-soft)}
.gaoc-footer ul{list-style:none;margin:0;padding:0}
.gaoc-footer li{margin:.4em 0}
.gaoc-copy{border-top:1px solid rgba(255,255,255,.12);padding:16px 0;font-size:.85rem;color:#9aa1bd}
.gaoc-copy .gaoc-wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}

/* ============ Widgets / misc ============ */
.widget{margin-bottom:26px}
.widget-title{font-size:1.05rem;border-bottom:2px solid var(--gaoc-gold);padding-bottom:.3em}
.gaoc-pagination{margin:30px 0;text-align:center}
.gaoc-pagination .page-numbers{display:inline-block;padding:8px 14px;border:1px solid var(--gaoc-line);margin:0 3px;text-decoration:none;border-radius:4px;background:#fff}
.gaoc-pagination .current{background:var(--gaoc-navy);color:#fff;border-color:var(--gaoc-navy)}
.aligncenter{display:block;margin:1.2em auto}
.alignleft{float:left;margin:0 1.2em 1em 0}
.alignright{float:right;margin:0 0 1em 1.2em}

/* ============ Contact form ============ */
.gaoc-contact-form{max-width:640px;margin:10px 0 0}
.gaoc-contact-form p{margin:0 0 16px}
.gaoc-contact-form label{display:block;font-weight:600;margin-bottom:6px;color:var(--gaoc-navy)}
.gaoc-contact-form input[type=text],
.gaoc-contact-form input[type=email],
.gaoc-contact-form textarea{width:100%;padding:10px 12px;border:1px solid var(--gaoc-line);border-radius:4px;font:inherit;background:#fff;color:var(--gaoc-ink)}
.gaoc-contact-form textarea{min-height:160px;resize:vertical}
.gaoc-contact-form input[type=submit]{background:var(--gaoc-navy);color:#fff;border:0;padding:12px 30px;border-radius:4px;cursor:pointer;font-size:1rem}
.gaoc-contact-form input[type=submit]:hover{background:var(--gaoc-crimson)}
.gaoc-hp{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}
.gaoc-form-success{background:#eef7ee;border:1px solid #9cc79c;color:#2c5f2c;padding:14px 18px;border-radius:4px;margin-bottom:18px}
.gaoc-form-error{background:#fdeeee;border:1px solid #d89a9a;color:#7a1f1f;padding:14px 18px;border-radius:4px;margin-bottom:18px}

/* ============ Responsive ============ */@media (max-width:860px){
  .gaoc-menu-toggle{display:block}
  .gaoc-nav ul{display:none;flex-direction:column}
  .gaoc-nav.open ul{display:flex}
  .gaoc-nav ul ul{position:static;box-shadow:none}
  .gaoc-hero{padding:40px 0}
  .gaoc-hero h1{font-size:1.8rem}
  .gaoc-card{padding:22px 20px}
  h1{font-size:1.7rem}
}
