/* God's Insurance — Outdoor Heritage Brand System
   Premium editorial foundation + restrained outdoor character */
:root{
  --gi-charcoal:#191a17;
  --gi-charcoal-2:#22251f;
  --gi-forest:#263329;
  --gi-forest-2:#34473a;
  --gi-canvas:#f3ede1;
  --gi-paper:#faf7f0;
  --gi-sand:#d7cbb8;
  --gi-brass:#a98449;
  --gi-brass-soft:#c8ad78;
  --gi-slate:#59666a;
  --gi-moss:#6e765d;
  --gi-muted:#6f6b61;
  --gi-line:rgba(38,51,41,.14);

  /* Legacy variables remapped so older content pages feel like the same brand */
  --ink:#191a17;
  --ink2:#22251f;
  --paper:#f3ede1;
  --paper2:#e7dfd1;
  --cream:#faf7f0;
  --gold:#a98449;
  --gold2:#c8ad78;
  --blue:#59666a;
  --blue2:#dbe1df;
  --burg:#75534c;
  --sage:#6e765d;
  --muted:#6f6b61;
  --line:rgba(38,51,41,.14);
  --white:#fffdf8;
}
html{background:var(--gi-canvas)}
body{
  background:
    radial-gradient(circle at 12% 3%,rgba(110,118,93,.055),transparent 25rem),
    var(--gi-canvas);
  color:var(--gi-charcoal)
}
::selection{background:var(--gi-forest);color:var(--gi-paper)}

/* Header / global chrome */
.announcement{
  background:var(--gi-forest)!important;
  color:#f7f2e8!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important
}
.announcement b{color:var(--gi-brass-soft)!important}
.site-header{
  background:rgba(243,237,225,.95)!important;
  border-bottom-color:rgba(38,51,41,.13)!important;
  box-shadow:0 8px 26px rgba(31,38,31,.035)!important
}
.seal{
  border-color:var(--gi-forest)!important;
  color:var(--gi-forest)!important;
  background:rgba(250,247,240,.48)!important;
  box-shadow:inset 0 0 0 3px rgba(169,132,73,.08)!important
}
.brand small{color:#6d7167!important}
.site-header nav a{color:#4d544b!important}
.site-header nav a:hover{color:var(--gi-forest)!important}
.site-header nav a.active:after{background:var(--gi-brass)!important}
.premium-header-cta{
  border-color:var(--gi-forest)!important;color:var(--gi-forest)!important
}
.premium-header-cta:hover{background:var(--gi-forest)!important;color:var(--gi-paper)!important}
.bag span{background:var(--gi-forest)!important}
.mobile-nav{
  background:
    radial-gradient(circle at 85% 10%,rgba(200,173,120,.11),transparent 35%),
    linear-gradient(145deg,#182019 0%,#243128 58%,#171a17 100%)!important
}
.mobile-nav a small{color:var(--gi-brass-soft)!important}

/* Premium hero: outdoors enters through color, contour texture and horizon rather than rustic fonts */
.premium-hero{
  background:
    radial-gradient(circle at 80% 18%,rgba(200,173,120,.14),transparent 25%),
    radial-gradient(circle at 12% 88%,rgba(89,102,106,.16),transparent 30%),
    linear-gradient(132deg,#172019 0%,#263329 53%,#191a17 100%)!important
}
.premium-hero:before{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.22;
  background:
    repeating-radial-gradient(ellipse at 86% 22%,transparent 0 24px,rgba(232,227,214,.13) 25px 26px,transparent 27px 45px),
    repeating-radial-gradient(ellipse at 76% 73%,transparent 0 31px,rgba(200,173,120,.09) 32px 33px,transparent 34px 55px);
  mask-image:linear-gradient(90deg,transparent 18%,#000 62%,#000 100%)
}
.premium-hero:after{
  opacity:.11!important;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px)!important;
  background-size:84px 84px!important
}
.premium-kicker,.partner-kicker{color:var(--gi-brass-soft)!important}
.premium-hero h1 em{color:var(--gi-brass-soft)!important}
.premium-hero p{color:#d1d1c6!important}
.premium-btn.primary,.partner-btn.primary{
  background:var(--gi-brass-soft)!important;border-color:var(--gi-brass-soft)!important;color:var(--gi-charcoal)!important
}
.premium-hero-card{
  background:linear-gradient(150deg,rgba(250,247,240,.075),rgba(38,51,41,.16))!important;
  border-color:rgba(246,240,225,.16)!important;
  box-shadow:0 34px 90px rgba(7,13,9,.22)!important
}
.premium-hero-card small,.premium-hero-card .hero-stat b{color:var(--gi-brass-soft)!important}
.premium-hero-card .hero-stat span{color:#aeb5aa!important}

/* Editorial outdoor storytelling */
.outdoor-field-band{
  max-width:1440px;margin:0 auto;padding:0 4vw 92px;
  display:grid;grid-template-columns:1.25fr .75fr;gap:12px
}
.outdoor-field-visual,.outdoor-field-copy{
  position:relative;min-height:470px;overflow:hidden
}
.outdoor-field-visual{
  background:
    linear-gradient(to top,rgba(24,31,25,.28),transparent 45%),
    radial-gradient(ellipse at 22% 95%,#53604f 0 13%,transparent 13.5%),
    radial-gradient(ellipse at 45% 103%,#35473a 0 22%,transparent 22.5%),
    radial-gradient(ellipse at 72% 104%,#263329 0 29%,transparent 29.5%),
    linear-gradient(180deg,#98a6a2 0%,#d8d8ca 48%,#b8b6a3 49%,#59665f 100%);
  border:1px solid rgba(38,51,41,.12)
}
.outdoor-field-visual:before{
  content:"";position:absolute;inset:0;opacity:.23;
  background:repeating-radial-gradient(ellipse at 68% 48%,transparent 0 19px,rgba(250,247,240,.7) 20px 21px,transparent 22px 35px);
  mask-image:linear-gradient(90deg,transparent,#000)
}
.outdoor-field-visual:after{
  content:"OPEN ROAD / FIELD NOTE 01";position:absolute;left:24px;bottom:22px;
  color:#f7f3e9;font-size:8px;font-weight:800;letter-spacing:.17em;text-transform:uppercase
}
.outdoor-field-copy{
  background:var(--gi-forest);color:#f8f4ea;padding:46px;
  display:flex;flex-direction:column;justify-content:space-between
}
.outdoor-field-copy small{font-size:8px;font-weight:800;letter-spacing:.17em;text-transform:uppercase;color:var(--gi-brass-soft)}
.outdoor-field-copy h2{font:400 clamp(42px,4.5vw,68px)/.96 Georgia,serif;letter-spacing:-.045em;margin:22px 0}
.outdoor-field-copy p{font:15px/1.7 Georgia,serif;color:#cdd2c8;max-width:520px}
.outdoor-field-copy .field-coordinates{padding-top:20px;border-top:1px solid rgba(255,255,255,.13);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#aeb7ac}

/* Core sections */
.premium-intro .eyebrow,.premium-section .eyebrow,.design-index .eyebrow,.partner-eyebrow{color:var(--gi-brass)!important}
.premium-intro p,.premium-section-head p{color:var(--gi-muted)!important}
.premium-section.rule{border-top-color:var(--gi-line)!important}
.category-tile{
  border-color:var(--gi-line)!important;
  background:var(--gi-paper)!important
}
.category-tile:nth-child(2){background:#e6e1d5!important}
.category-tile:nth-child(3){background:var(--gi-forest)!important;color:#f8f4ea!important}
.category-tile:nth-child(4){background:#c9b486!important;color:var(--gi-charcoal)!important}
.category-tile:hover{box-shadow:0 22px 50px rgba(38,51,41,.1)!important}
.design-index{background:#e4dfd3!important}
.design-row{border-color:rgba(38,51,41,.15)!important}
.design-row .num{color:var(--gi-brass)!important}
.design-row p{color:#676c63!important}
.hat-feature>div{background:var(--gi-forest)!important}
.hat-feature>div+div{background:#c8b47e!important;color:var(--gi-charcoal)!important}
.brand-proof{border-color:var(--gi-line)!important}
.brand-proof div{border-color:var(--gi-line)!important}
.brand-proof span{color:var(--gi-muted)!important}
.resource-card{border-color:var(--gi-line)!important;background:rgba(250,247,240,.55)!important}

/* Legacy informational pages inherit the outdoor heritage palette */
.page-hero.paper{
  background:
    radial-gradient(circle at 85% 25%,rgba(169,132,73,.13),transparent 27%),
    linear-gradient(135deg,#f7f2e8,#dfe0d2)!important
}
.page-hero.dark{
  background:
    radial-gradient(circle at 80% 20%,rgba(200,173,120,.12),transparent 29%),
    linear-gradient(135deg,#172019,#263329)!important
}
.page-hero.blue{background:linear-gradient(135deg,#dbe1df,#788989)!important}
.page-hero.sage{background:linear-gradient(135deg,#e7e6da,#77806a)!important}
.page-hero h1 em{color:var(--gi-brass)!important}
.hero-card .big{color:var(--gi-brass)!important}
.manifesto strong{color:var(--gi-brass)!important}
.category.dark,.panel.dark,.church-box,.related,.featured-story{background:var(--gi-forest)!important}
.category.gold,.panel.gold,.story.gold{background:#c8b47e!important}
.category.blue,.story.blue{background:#d8e0de!important}
.category.sage,.story.sage{background:#dce0d2!important}
.story.dark{background:var(--gi-forest)!important}
.featured-art{
  background:radial-gradient(circle at center,#c8ad78 0,#7c7759 44%,#263329 100%)!important
}
.article-body blockquote{border-left-color:var(--gi-brass)!important}
.article-note{background:#e5dfd2!important}

/* Storefront stays neutral so product colors remain the focus */
.fw-store{background:transparent}
.fw-shop-toolbar{
  background:rgba(243,237,225,.97)!important;
  border-color:var(--gi-line)!important
}
.fw-filter{border-color:rgba(38,51,41,.18)!important;color:var(--gi-forest)!important}
.fw-filter:hover,.fw-filter.active{
  background:var(--gi-forest)!important;color:var(--gi-paper)!important;border-color:var(--gi-forest)!important
}
.fw-shop-controls input,.fw-shop-controls select{
  background:var(--gi-paper)!important;color:var(--gi-charcoal)!important;border-color:rgba(38,51,41,.16)!important
}
.fw-shop-controls input:focus,.fw-shop-controls select:focus{
  border-color:var(--gi-brass)!important;box-shadow:0 0 0 2px rgba(169,132,73,.11)!important
}
.fw-clear:hover,.fw-card-action:hover{background:var(--gi-forest)!important;color:var(--gi-paper)!important}
.fw-card-media{background:#e5ded1!important;border-color:rgba(38,51,41,.09)!important}
.fw-card-type{color:var(--gi-brass)!important}
.fw-card-price{color:var(--gi-charcoal)!important}
.fw-card-action{border-color:var(--gi-forest)!important;color:var(--gi-forest)!important}
.fw-card-view{background:rgba(38,51,41,.92)!important}
.fw-card:focus-visible{outline-color:var(--gi-brass)!important}
.fw-modal{background:rgba(19,26,21,.74)!important}
.fw-modal-panel{background:var(--gi-paper)!important}
.fw-modal-media{background:#e2dbcd!important}
.fw-modal-main{background:#d7d0c3!important}
.fw-modal-kicker{color:var(--gi-brass)!important}
.fw-size.active,.fw-add{background:var(--gi-forest)!important;color:var(--gi-paper)!important}
.fw-stock{color:var(--gi-moss)!important}
.gi-partner-banner{border-color:rgba(169,132,73,.35)!important;background:#ebe2cf!important}

/* Partner program inherits same brand instead of separate corporate palette */
.partner-page{background:var(--gi-canvas)!important;color:var(--gi-charcoal)!important}
.partner-hero{
  background:
    radial-gradient(circle at 78% 18%,rgba(200,173,120,.13),transparent 26%),
    linear-gradient(135deg,#172019,#263329 62%,#191a17)!important
}
.partner-hero:after{
  opacity:.2!important;
  background:
    repeating-radial-gradient(ellipse at 80% 25%,transparent 0 26px,rgba(250,247,240,.11) 27px 28px,transparent 29px 46px)!important
}
.partner-hero-card{background:rgba(250,247,240,.045)!important}
.track-card{background:var(--gi-paper)!important;border-color:var(--gi-line)!important}
.track-card.dark{background:var(--gi-forest)!important}
.partner-metric b,.partner-step .n{color:var(--gi-brass)!important}
.partner-standard{background:#e9e3d6!important;border-top-color:var(--gi-brass)!important}
.partner-cta-band,.partner-resource-hero{background:var(--gi-forest)!important}
.partner-table{background:var(--gi-paper)!important}
.partner-table th{background:#e2ddd0!important}
.partner-note{border-left-color:var(--gi-brass)!important;background:#e9e1cf!important}

/* Footer: forest is more distinctive and less finance-like than pure black */
footer{background:var(--gi-forest)!important;color:#f4f0e7!important}
footer .seal{border-color:#e6decf!important;color:#e6decf!important;background:transparent!important}
footer a:hover{color:var(--gi-brass-soft)!important}
.footer-bottom{border-top-color:rgba(255,255,255,.12)!important}

/* Small field-note device used throughout */
.field-note{
  display:inline-flex;align-items:center;gap:9px;
  font-size:7px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gi-moss)
}
.field-note:before{content:"";width:22px;height:1px;background:var(--gi-brass)}

@media(max-width:900px){
  .outdoor-field-band{grid-template-columns:1fr}
  .outdoor-field-visual,.outdoor-field-copy{min-height:360px}
}
@media(max-width:690px){
  .outdoor-field-band{padding:0 20px 64px}
  .outdoor-field-copy{padding:30px}
  .premium-hero:before{opacity:.13}
}

/* Ensure hero contour layers sit above the color field but below content */
.premium-hero:before,.premium-hero:after{z-index:0!important}
.premium-hero>div,.premium-hero>aside{position:relative;z-index:1}