/* =====================================================================
   CONFINEA — GX PAGE RESTYLE
   Converts the light "ledger" pages (announcements, contact) to the
   deep-navy / gold "Globe of Capital" aesthetic used on the front page.
   Pure presentation: it overrides styles.css and touches no markup or JS.
   Load AFTER styles.css (and after announcements-cinematic.css where used).
   ===================================================================== */

:root {
  --gx-night: #050d1b;
  --gx-night-2: #081527;
  --gx-panel: #0a1a30;
  --gx-panel-2: #0c1f38;
  --gx-hair: rgba(201, 160, 82, 0.16);
  --gx-hair-soft: rgba(232, 228, 216, 0.09);
  --gx-gold: #c9a052;
  --gx-gold-deep: #a8813c;
  --gx-gold-pale: #f1e4bf;
  --gx-paper: #e9e4d6;
  --gx-paper-dim: #9aa3b0;
  --gx-serif: "Playfair Display", Georgia, serif;
  --gx-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* page canvas ------------------------------------------------------- */
body.gx-page {
  background: var(--gx-night);
  color: var(--gx-paper);
}
body.gx-page .main-content {
  background: var(--gx-night);
}
::selection { background: var(--gx-gold); color: var(--gx-night); }

/* =====================================================================
   ANNOUNCEMENTS
   ===================================================================== */

/* hero — deepen to match the front-page night, keep the guilloché ring */
body.gx-page .offers-hero {
  background-color: var(--gx-night);
  background-image:
    radial-gradient(900px 460px at 50% -160px, rgba(201,160,82,0.12), transparent 70%),
    linear-gradient(180deg, var(--gx-night-2) 0%, var(--gx-night) 100%);
  border-bottom: 1px solid var(--gx-hair);
}
body.gx-page .offers-hero .hero-kicker {
  color: var(--gx-gold);
  letter-spacing: .34em;
}
body.gx-page .offers-hero h1 { color: var(--gx-paper); font-family: var(--gx-serif); }
body.gx-page .offers-hero h1 em { color: var(--gx-gold); font-style: italic; }
body.gx-page .offers-hero .hero-sub { color: var(--gx-paper-dim); }

/* stage — kill the cream ledger + marble pillars, go night */
body.gx-page .offers-stage,
body.gx-page .main-content.offers-stage {
  background: var(--gx-night);
}
body.gx-page .stage-decor,
body.gx-page .decor-pillar,
body.gx-page .seal-watermark { display: none !important; }

/* section header row */
body.gx-page .eyebrow { color: var(--gx-gold); letter-spacing: .3em; }
body.gx-page .eyebrow-sub { color: var(--gx-paper-dim); }

/* filters + search — dark inputs with hairline borders */
body.gx-page .filter-select,
body.gx-page .search-bar {
  background: var(--gx-panel);
  border: 1px solid var(--gx-hair);
  color: var(--gx-paper);
}
body.gx-page .filter-select i,
body.gx-page .search-bar i { color: var(--gx-gold); }
body.gx-page .filter-select select,
body.gx-page .search-bar input { color: var(--gx-paper); }
body.gx-page .search-bar input::placeholder { color: var(--gx-paper-dim); }
body.gx-page .filter-select select option { background: var(--gx-panel); color: var(--gx-paper); }
body.gx-page .filter-select:focus-within,
body.gx-page .search-bar:focus-within { border-color: var(--gx-gold); }

/* offer cards — mirror .gx-offer */
body.gx-page .offer-card {
  background: var(--gx-panel);
  border: 1px solid var(--gx-hair-soft);
  box-shadow: none;
  position: relative;
  overflow: hidden;
}
body.gx-page .offer-card::before {
  content: ""; position: absolute; inset: 0 0 auto 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--gx-gold), transparent);
  transform: scaleX(0); transition: transform .5s cubic-bezier(.19,1,.22,1);
  z-index: 3;
}
body.gx-page .offer-card:hover {
  transform: translateY(-8px);
  border-color: var(--gx-hair);
  box-shadow: 0 34px 60px -30px rgba(0,0,0,.8);
}
body.gx-page .offer-card:hover::before { transform: scaleX(1); }

body.gx-page .offer-image-wrap { background: var(--gx-night); }
body.gx-page .offer-image-wrap img { filter: saturate(.9) brightness(.92); }
body.gx-page .offer-card:hover .offer-image-wrap img { filter: saturate(1.05) brightness(1); }
body.gx-page .offer-image-fallback {
  background:
    radial-gradient(circle at 50% 40%, rgba(201,160,82,.14), transparent 60%),
    var(--gx-night);
}
body.gx-page .offer-image-fallback .fallback-seal {
  color: var(--gx-gold);
  font-family: var(--gx-serif);
  background: none;
  -webkit-text-fill-color: var(--gx-gold);
}

body.gx-page .offer-location { color: var(--gx-gold); letter-spacing: .3em; }
body.gx-page .offer-title { color: var(--gx-paper); font-family: var(--gx-serif); }
body.gx-page .offer-desc { color: var(--gx-paper-dim); }

body.gx-page .offer-terms { border-top: 1px solid var(--gx-hair-soft); }
body.gx-page .terms-label { color: var(--gx-paper-dim); letter-spacing: .24em; }
body.gx-page .terms-value { color: var(--gx-gold-pale); font-family: var(--gx-serif); }
body.gx-page .terms-risk-text .risk-text { color: var(--gx-gold-pale); font-family: var(--gx-serif); }
body.gx-page .risk-dot { background: var(--gx-gold); }

body.gx-page .offer-stats { border-top: 1px solid var(--gx-hair-soft); }
body.gx-page .stat-value { color: var(--gx-gold-pale); font-family: var(--gx-serif); }
body.gx-page .stat-value.accent { color: var(--gx-gold); }
body.gx-page .stat-label { color: var(--gx-paper-dim); letter-spacing: .24em; }

/* card CTA — solid gold like .gx-btn.solid */
body.gx-page .offer-btn {
  background: var(--gx-gold);
  color: #1a1204;
  border: 1px solid transparent;
  letter-spacing: .18em;
  text-transform: uppercase;
  font-weight: 600;
}
body.gx-page .offer-btn:hover { background: var(--gx-gold-pale); color: #1a1204; }

/* notices */
body.gx-page .notice-box {
  background: var(--gx-panel);
  border: 1px solid var(--gx-hair-soft);
  color: var(--gx-paper-dim);
}
body.gx-page .notice-box i { color: var(--gx-gold); }
body.gx-page .notice-box p { color: var(--gx-paper-dim); }

/* pagination */
body.gx-page .pager-num { color: var(--gx-paper-dim); font-family: var(--gx-serif); }
body.gx-page .pager-num:hover { color: var(--gx-gold); }
body.gx-page .pager-num.active { color: var(--gx-gold-pale); }
body.gx-page .pager-arrow { color: var(--gx-paper); }

/* =====================================================================
   CONTACT
   ===================================================================== */

body.gx-page .contact-shell {
  background: var(--gx-panel);
  border: 1px solid var(--gx-hair-soft);
  box-shadow: none;
}

/* left aside — already dark; align to night palette */
body.gx-page .contact-aside {
  background:
    var(--texture-engrave, none),
    linear-gradient(160deg, var(--gx-panel-2), var(--gx-night));
  border-right: 1px solid var(--gx-hair-soft);
}
body.gx-page .aside-eyebrow { color: var(--gx-gold); letter-spacing: .3em; }
body.gx-page .aside-title { color: var(--gx-paper); font-family: var(--gx-serif); }
body.gx-page .aside-text { color: var(--gx-paper-dim); }
body.gx-page .contact-info-icon {
  background: rgba(201,160,82,0.10);
  border: 1px solid var(--gx-hair);
  color: var(--gx-gold);
}
body.gx-page .contact-info-label { color: var(--gx-gold); letter-spacing: .22em; }
body.gx-page .contact-info-value { color: var(--gx-paper); }
body.gx-page .aside-social i { color: var(--gx-paper-dim); }
body.gx-page .aside-social i:hover { color: var(--gx-gold); }

/* right panel — flip from white to night */
body.gx-page .contact-form-panel {
  background: var(--gx-panel);
  color: var(--gx-paper);
}
body.gx-page .form-eyebrow { color: var(--gx-gold); letter-spacing: .3em; }
body.gx-page .form-title { color: var(--gx-paper); font-family: var(--gx-serif); }
body.gx-page .form-sub { color: var(--gx-paper-dim); }
body.gx-page .field-label { color: var(--gx-paper); }

body.gx-page .field-input-wrap,
body.gx-page .field-textarea-wrap {
  background: var(--gx-night-2);
  border: 1px solid var(--gx-hair);
}
body.gx-page .field-input-wrap:focus-within,
body.gx-page .field-textarea-wrap:focus-within { border-color: var(--gx-gold); }
body.gx-page .field-input-wrap i { color: var(--gx-gold); }
body.gx-page .field-input-wrap input,
body.gx-page .field-input-wrap select,
body.gx-page .field-textarea-wrap textarea { color: var(--gx-paper); }
body.gx-page .field-input-wrap input::placeholder,
body.gx-page .field-textarea-wrap textarea::placeholder { color: var(--gx-paper-dim); }
body.gx-page .field-input-wrap select option { background: var(--gx-panel); color: var(--gx-paper); }

body.gx-page .contact-btn {
  background: var(--gx-gold);
  color: #1a1204;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
}
body.gx-page .contact-btn:hover { background: var(--gx-gold-pale); color: #1a1204; }
body.gx-page .contact-btn:disabled { opacity: .6; }

body.gx-page .secure-note { color: var(--gx-paper-dim); }
body.gx-page .secure-note i { color: var(--gx-gold); }

body.gx-page .contact-form-status.info { color: var(--gx-paper-dim); }
body.gx-page .contact-form-status.success { color: #67c98d; }
body.gx-page .contact-form-status.error { color: #e08a7a; }

