/*
Theme Name: Expedition Georgia
Theme URI: https://expeditiongeorgia.com/
Author: Expedition Georgia
Description: Expedition Georgia outdoor adventure WordPress theme with homepage, content pages, navigation, and native blog support.
Version: 2.2.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: expedition-georgia
*/

:root{
  --eg-orange:#ffac00;
  --eg-ink:#171419;
  --eg-white:#fff;
  --eg-muted:rgba(255,255,255,.86);
}

*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--eg-ink)}
body{color:var(--eg-white);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}

.eg-hero{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  isolation:isolate;
  padding:36px 22px 44px;
  background:#0b0e12 url('assets/images/expedition-georgia-hero-clean.png') center center / cover no-repeat;
}

/* IMPORTANT: the photo is only a background asset. This overlay intentionally
   suppresses every baked-in graphic from the concept art so only live HTML remains. */
.eg-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  //background:
  //  radial-gradient(ellipse 58% 82% at 50% 51%, rgba(7,10,14,.985) 0%, rgba(7,10,14,.975) 35%, rgba(7,10,14,.88) 57%, rgba(7,10,14,.45) 78%, rgba(7,10,14,.26) 100%),
  //  linear-gradient(180deg, rgba(0,0,0,.22), rgba(0,0,0,.18) 45%, rgba(0,0,0,.50) 100%);
}

.eg-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  box-shadow:inset 0 0 180px 55px rgba(0,0,0,.72);
}

.eg-wrap{
  width:min(980px,100%);
  margin:auto;
  text-align:center;
}

.eg-logo-wrap{margin:0 auto 26px}
.eg-logo,
.eg-logo-wrap img,
.custom-logo{
  display:block;
  width:min(390px,58vw) !important;
  max-width:100%;
  height:auto !important;
  margin:0 auto;
  filter:drop-shadow(0 10px 22px rgba(0,0,0,.42));
}

.eg-kicker{
  margin:0;
  font-size:clamp(.72rem,1.15vw,1rem);
  font-weight:700;
  letter-spacing:.55em;
  text-transform:uppercase;
  text-shadow:0 2px 12px rgba(0,0,0,.8);
}

.eg-rule{
  width:114px;
  height:4px;
  border:0;
  border-radius:999px;
  background:var(--eg-orange);
  margin:26px auto 28px;
}

.eg-title{
  max-width:920px;
  margin:0 auto;
  font-family:"Arial Narrow","Roboto Condensed",Arial,sans-serif;
  font-size:clamp(2rem,4.5vw,4.15rem);
  line-height:1.06;
  font-weight:800;
  letter-spacing:.15em;
  text-transform:uppercase;
  text-shadow:0 3px 18px rgba(0,0,0,.75);
}

.eg-categories{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:10px 20px;
  margin:28px auto 0;
  font-size:clamp(.72rem,1.08vw,.96rem);
  font-weight:500;
  letter-spacing:.28em;
  text-transform:uppercase;
  color:rgba(255,255,255,.96);
}
.eg-categories .slash{color:var(--eg-orange);font-size:1.55em;font-weight:800;letter-spacing:0}

.eg-copy{
  width:min(760px,100%);
  margin:34px auto 0;
  padding:22px 30px 24px;
  border-top:1px solid rgba(255,255,255,.20);
}
.eg-copy p{margin:0;color:var(--eg-muted);font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.7}
.eg-copy strong{display:block;margin-top:14px;color:var(--eg-white);font-size:1.12em;letter-spacing:.08em}

@media(max-width:700px){
  .eg-hero{padding:28px 16px 32px;background-position:38% center}
  .eg-logo,.eg-logo-wrap img,.custom-logo{width:min(325px,78vw)!important}
  .eg-logo-wrap{margin-bottom:20px}
  .eg-kicker{letter-spacing:.28em;line-height:1.65}
  .eg-rule{width:78px;height:3px;margin:19px auto 21px}
  .eg-title{font-size:clamp(1.9rem,9vw,3rem);letter-spacing:.085em;line-height:1.08}
  .eg-categories{gap:6px 10px;margin-top:23px;letter-spacing:.14em;line-height:1.65}
  .eg-copy{margin-top:26px;padding:20px 8px 0}
  .eg-copy p{font-size:.98rem;line-height:1.65}
}


/* =========================================================
   FULL SITE LAYOUT — extends the original 1.1 landing design
   ========================================================= */
:root{
  --eg-bg:#111014;
  --eg-surface:#1a171d;
  --eg-surface-2:#211d23;
  --eg-text:#f7f4ef;
  --eg-line:rgba(255,255,255,.14);
  --eg-max:1180px;
  --eg-radius:16px;
  --eg-shadow:0 20px 55px rgba(0,0,0,.28);
}
html{scroll-behavior:smooth}
a{color:inherit;text-decoration:none}
a:hover{color:var(--eg-orange)}
img{max-width:100%;height:auto}
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Shared header */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(23,20,25,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--eg-line)}
.admin-bar .site-header{top:32px}
.site-header.home-header{position:absolute;left:0;right:0;background:linear-gradient(180deg,rgba(0,0,0,.68),rgba(0,0,0,0));border-bottom:0;backdrop-filter:none}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.site-branding{display:flex;align-items:center;min-width:0}
.header-logo{display:block;width:190px;height:auto;filter:drop-shadow(0 5px 12px rgba(0,0,0,.35))}
.primary-nav ul{list-style:none;display:flex;gap:28px;align-items:center;margin:0;padding:0}
.primary-nav a{display:block;padding:29px 0 25px;font-size:.78rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase;border-bottom:3px solid transparent;text-shadow:0 2px 10px rgba(0,0,0,.4)}
.primary-nav .current-menu-item>a,.primary-nav .current_page_item>a,.primary-nav a:hover{color:var(--eg-orange);border-bottom-color:var(--eg-orange)}
.menu-toggle{display:none;border:1px solid var(--eg-line);background:rgba(0,0,0,.25);color:#fff;border-radius:8px;padding:9px 12px;font-weight:800}

/* Keep the supplied hero image and landing-page composition */
.eg-home-hero{padding-top:118px}
.eg-hero-center{text-align:center;width:min(980px,100%);margin:auto}
.eg-home-logo .custom-logo-link{display:block}
.eg-home-logo .custom-logo{width:min(390px,58vw)!important}

/* Content sections */
.eg-section{padding:76px 0;background:var(--eg-bg)}
.eg-section.alt{background:var(--eg-surface);border-block:1px solid var(--eg-line)}
.narrow-wrap{max-width:820px}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:32px}
.section-head h2{margin:6px 0 0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(2rem,4vw,3.3rem);line-height:1;text-transform:uppercase;letter-spacing:.06em}
.eyebrow,.post-meta{color:var(--eg-orange);font-size:.76rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.eg-text-link{font-size:.82rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--eg-orange)}

/* Post cards / blog */
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.post-card{background:var(--eg-surface-2);border:1px solid var(--eg-line);border-radius:var(--eg-radius);overflow:hidden;box-shadow:var(--eg-shadow)}
.post-card .thumb{display:block;aspect-ratio:16/10;background:#28232a;overflow:hidden}
.post-card .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
.post-card:hover .thumb img{transform:scale(1.035)}
.post-card-content{padding:22px}
.post-card h3{margin:8px 0 10px;font-size:1.4rem;line-height:1.17}
.post-card p{margin:0;color:#c8c3c9;line-height:1.6}

/* Pages / posts */
.page-hero{padding:128px 0 58px;background:radial-gradient(circle at 78% 18%,rgba(255,172,0,.12),transparent 32%),linear-gradient(180deg,#201b22,#111014);border-bottom:1px solid var(--eg-line)}
.page-hero h1{font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(2.8rem,6vw,5.2rem);line-height:.98;text-transform:uppercase;letter-spacing:.06em;margin:8px 0 0}
.page-content-wrap{display:grid;grid-template-columns:minmax(0,800px) minmax(220px,1fr);gap:60px;align-items:start;padding:64px 0 90px}
.entry-content{font-size:1.08rem;line-height:1.75;color:#eee9ef}
.entry-content>*:first-child{margin-top:0}
.entry-content h2,.entry-content h3,.entry-content h4{line-height:1.2;margin-top:2em;color:#fff}
.entry-content h2{font-size:2rem}.entry-content h3{font-size:1.45rem}
.entry-content a{color:var(--eg-orange);text-decoration:underline;text-underline-offset:3px}
.entry-content blockquote{margin:2rem 0;padding:1.2rem 1.4rem;border-left:4px solid var(--eg-orange);background:var(--eg-surface)}
.entry-content figure{margin:2rem 0}.entry-content .wp-block-image img{border-radius:12px}
.entry-content table{width:100%;border-collapse:collapse}.entry-content th,.entry-content td{border:1px solid var(--eg-line);padding:10px 12px;text-align:left}
.content-sidebar{position:sticky;top:108px;padding:22px;border:1px solid var(--eg-line);background:var(--eg-surface);border-radius:var(--eg-radius)}
.content-sidebar h3{margin-top:0;text-transform:uppercase;font-size:1rem;letter-spacing:.08em}.content-sidebar ul{padding-left:18px}
.single-featured img{width:100%;max-height:650px;object-fit:cover}.single-meta{color:#c5c0c7;margin-top:12px}

/* About */
.about-intro{font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.45;color:#f4eff5}
.about-callout{margin-top:42px;padding:28px;background:var(--eg-surface);border-left:5px solid var(--eg-orange);border-radius:0 14px 14px 0}

/* Archives / search */
.archive-shell{padding:130px 0 90px;min-height:70vh;background:var(--eg-bg)}
.archive-title{margin-bottom:34px}.archive-title h1{margin:6px 0 0;font-family:"Arial Narrow",Arial,sans-serif;font-size:clamp(2.6rem,5vw,4.5rem);text-transform:uppercase;letter-spacing:.06em}
.pagination{margin-top:44px}.nav-links{display:flex;flex-wrap:wrap;gap:8px}.page-numbers{display:inline-flex;min-width:42px;height:42px;align-items:center;justify-content:center;border:1px solid var(--eg-line);border-radius:8px}.page-numbers.current{background:var(--eg-orange);color:#171419;border-color:var(--eg-orange);font-weight:800}

/* Footer */
.site-footer{padding:38px 0;border-top:1px solid var(--eg-line);color:#bdb7bf;background:#0c0b0d}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.footer-menu ul{display:flex;gap:18px;list-style:none;margin:0;padding:0;flex-wrap:wrap}

@media(max-width:900px){
  .menu-toggle{display:block}
  .primary-nav{display:none;position:absolute;left:0;right:0;top:82px;background:rgba(17,16,20,.98);border-bottom:1px solid var(--eg-line);padding:8px 20px 18px}
  .primary-nav.is-open{display:block}.primary-nav ul{flex-direction:column;gap:0;align-items:stretch}.primary-nav a{padding:13px 0;border-bottom:1px solid var(--eg-line)}
  .post-grid{grid-template-columns:1fr 1fr}.page-content-wrap{grid-template-columns:1fr;gap:34px}.content-sidebar{position:static}
}
@media(max-width:700px){
  .site-header.home-header{position:absolute}.header-logo{width:145px}.header-inner{min-height:72px}.primary-nav{top:72px}
  .eg-home-hero{padding-top:95px}
  .section-head{align-items:start;flex-direction:column}.post-grid{grid-template-columns:1fr}.eg-section{padding:56px 0}.archive-shell{padding-top:112px}
  .admin-bar .site-header{top:46px}
}

/* =========================================================
   v2.2 navigation + interior alignment fixes
   ========================================================= */

/* Interior pages should read like content, not inherit the centered hero layout. */
.site-header .eg-wrap,
.page-hero .eg-wrap,
.page-content-wrap,
.archive-shell > .eg-wrap,
.site-footer .eg-wrap {
  text-align:left;
}

.site-header .header-inner,
.page-hero .eg-wrap,
.page-content-wrap,
.archive-shell > .eg-wrap,
.site-footer .footer-inner {
  width:min(var(--eg-max),calc(100% - 44px));
}

.entry-content,
.content-sidebar,
.archive-title,
.post-card-content {
  text-align:left;
}

/* Desktop dropdown navigation. Only the root menu is a horizontal flex row. */
.primary-nav > ul,
.primary-nav .menu {
  list-style:none;
  display:flex;
  gap:28px;
  align-items:center;
  margin:0;
  padding:0;
}

.primary-nav li {
  position:relative;
}

.primary-nav .sub-menu {
  position:absolute;
  top:100%;
  left:-18px;
  z-index:1100;
  display:block;
  min-width:230px;
  margin:0;
  padding:8px 0;
  list-style:none;
  background:rgba(17,16,20,.985);
  border:1px solid var(--eg-line);
  border-radius:0 0 10px 10px;
  box-shadow:0 18px 35px rgba(0,0,0,.35);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  pointer-events:none;
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}

.primary-nav li:hover > .sub-menu,
.primary-nav li:focus-within > .sub-menu {
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

.primary-nav .sub-menu li {
  width:100%;
}

.primary-nav .sub-menu a {
  padding:12px 18px;
  border:0;
  white-space:nowrap;
  text-shadow:none;
  letter-spacing:.10em;
}

.primary-nav .sub-menu a:hover,
.primary-nav .sub-menu .current-menu-item > a,
.primary-nav .sub-menu .current_page_item > a {
  color:var(--eg-orange);
  background:rgba(255,255,255,.055);
  border-bottom:0;
}

/* Support third-level menus without stacking them into the first dropdown. */
.primary-nav .sub-menu .sub-menu {
  top:-9px;
  left:100%;
  border-radius:10px;
}

@media(max-width:900px){
  .site-header .header-inner,
  .page-hero .eg-wrap,
  .page-content-wrap,
  .archive-shell > .eg-wrap,
  .site-footer .footer-inner {
    width:min(100% - 32px,var(--eg-max));
  }

  .primary-nav > ul,
  .primary-nav .menu {
    flex-direction:column;
    gap:0;
    align-items:stretch;
  }

  /* On mobile, child items live inside the opened menu and are clearly nested. */
  .primary-nav .sub-menu,
  .primary-nav .sub-menu .sub-menu {
    position:static;
    min-width:0;
    margin:0;
    padding:0 0 4px 18px;
    border:0;
    border-radius:0;
    box-shadow:none;
    background:transparent;
    opacity:1;
    visibility:visible;
    transform:none;
    pointer-events:auto;
  }

  .primary-nav .sub-menu a {
    padding:10px 0 10px 14px;
    border-bottom:1px solid rgba(255,255,255,.08);
    white-space:normal;
    font-size:.72rem;
  }
}
