/* NRMC R3.5 homepage (owner-approved Image 2 layout) and shared philosophy bands.
   All imagery is authentic archival photography; decoration is CSS only (gradients, stars, type). */
:root{--hh-navy:#0a1a33;--hh-navy2:#0e2547;--hh-red:#b92438;--hh-red-d:#7d1020;--hh-blue:#2f6fe4;--hh-cream:#f4efe4;
  --serif:'Playfair Display',Georgia,'Times New Roman',serif;--script:'Allura','Brush Script MT',cursive}

/* ---------- hero shell ---------- */
.home-hero{position:relative;overflow:hidden;color:#fff;background:
  radial-gradient(1200px 600px at 55% 20%,rgba(47,111,228,.18),transparent 60%),
  radial-gradient(900px 500px at 0% 0%,rgba(185,36,56,.22),transparent 60%),
  linear-gradient(180deg,#0b1d3b 0%,#081631 70%,#071226 100%);padding:34px max(3vw,18px) 34px}
.hh-bg{position:absolute;inset:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cpath fill='%23ffffff' fill-opacity='.05' d='M40 18l4.7 14.5H60l-12.4 9 4.7 14.5L40 47l-12.4 9 4.7-14.5L20 32.5h15.3z'/%3E%3C/svg%3E");}
.hh-bg::before{content:'';position:absolute;left:-8%;top:-10%;width:42%;height:120%;transform:rotate(-14deg);
  background:repeating-linear-gradient(180deg,rgba(185,36,56,.22) 0 26px,rgba(255,255,255,.035) 26px 52px);filter:blur(1px)}
.hh-wtp{position:absolute;right:6%;top:2%;font-family:var(--script);font-size:clamp(3rem,7vw,6.5rem);color:rgba(255,255,255,.08);transform:rotate(-6deg);white-space:nowrap}

/* ---------- grid ---------- */
.hh-grid{position:relative;max-width:1500px;margin:auto;display:grid;gap:22px 26px;
  grid-template-columns:minmax(0,1fr) minmax(0,1.22fr) minmax(0,.78fr);
  grid-template-areas:"intro phil origins" "photoL phil photoR";align-items:start}
.hh-intro{grid-area:intro}
.hh-phil{grid-area:phil;align-self:center}
.hh-origins{grid-area:origins}
.hh-photo-left{grid-area:photoL}
.hh-photo-right{grid-area:photoR}

.hh-kicker{font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;color:#dfe6f2;margin:6px 0 10px}
.home-hero h1{font-family:var(--serif);font-weight:800;text-transform:uppercase;font-size:clamp(2.4rem,3.9vw,4rem);line-height:1.02;letter-spacing:-.005em;margin:0 0 .35em;color:#f7f3ea}
.home-hero h1::after{content:'';display:block;width:58px;height:4px;margin-top:18px;background:linear-gradient(90deg,var(--hh-red) 50%,var(--hh-blue) 50%)}
.hh-lead{font-family:var(--serif);font-size:1.08rem;line-height:1.5;color:#e9edf5;max-width:34em}
.hh-cta{display:inline-flex;gap:10px;align-items:center;margin-top:10px;padding:12px 26px;background:var(--hh-red);color:#fff;text-decoration:none;
  text-transform:uppercase;letter-spacing:.16em;font-size:.8rem;font-weight:600;clip-path:polygon(0 4%,100% 0,98% 100%,1% 96%)}
.hh-cta:hover{background:#d12d44}

/* ---------- framed photographs ---------- */
.hh-photo{margin:0;position:relative;background:#fff;padding:8px 8px 8px;box-shadow:0 18px 40px rgba(0,0,0,.45)}
.hh-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.hh-photo-left{transform:rotate(-2deg);margin-top:4px}
.hh-photo-right{transform:rotate(1.6deg)}
.hh-photo-right img{aspect-ratio:4/3}
.hh-script{position:absolute;left:8px;right:8px;bottom:30px;padding:28px 14px 6px;font-family:var(--script);font-size:clamp(1.3rem,2vw,1.9rem);color:#fff;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.72));text-shadow:0 2px 6px rgba(0,0,0,.6);line-height:1.1}
.hh-photo-right .hh-script{text-align:right}
.hh-photo figcaption{font-size:.68rem;line-height:1.3;padding:6px 2px 0;color:#24324a}
.hh-photo figcaption a{color:#24324a}

/* ---------- philosophy bands (homepage + principles page) ---------- */
.hh-label{display:flex;align-items:center;gap:14px;justify-content:center;font-size:.78rem;letter-spacing:.32em;text-transform:uppercase;color:#e7ecf4;margin:0 0 12px}
.hh-label::before,.hh-label::after{content:'';flex:0 1 70px;height:2px;background:var(--hh-red)}
.hh-label.small{justify-content:flex-start;font-size:.72rem}
.hh-label.small::before{display:none}
.phil{display:grid;grid-template-columns:clamp(84px,9vw,128px) 1fr 64px;align-items:center;gap:6px 18px;min-height:132px;padding:12px 24px 12px 14px;margin:0 0 10px;
  text-decoration:none;color:#fff;position:relative;box-shadow:0 10px 26px rgba(0,0,0,.35);clip-path:polygon(1.2% 0,100% 2%,99% 100%,0 97%)}
.phil-num{font-family:var(--serif);font-style:italic;font-weight:800;font-size:clamp(3.6rem,6.4vw,5.6rem);line-height:.9;text-align:center;border-right:2px solid rgba(255,255,255,.45);padding-right:10px}
.phil-title{display:block;font-family:var(--serif);font-weight:700;font-size:clamp(1.6rem,2.6vw,2.35rem);line-height:1.02}
.phil-tag{display:block;margin-top:8px;font-size:.74rem;letter-spacing:.18em;text-transform:uppercase}
.phil-icon svg{width:52px;height:52px;fill:currentColor;stroke:currentColor;opacity:.85}
.phil-hear{background:linear-gradient(100deg,#6f0e1d 0%,#a51f33 38%,#b92438 70%,#8a1829 100%)}
.phil-hear .phil-num{color:rgba(255,255,255,.28)}
.phil-examine{background:linear-gradient(100deg,#c9cdd3 0%,#eef0f2 40%,#dfe2e6 100%);color:#0b1d3b}
.phil-examine .phil-num{color:#6c7480;border-color:rgba(11,29,59,.35)}
.phil-examine .phil-icon svg{fill:none;stroke:#0b1d3b}
.phil-serve{background:linear-gradient(100deg,#0a1a38 0%,#10306a 55%,#0c2552 100%);border-top:2px solid rgba(47,111,228,.6)}
.phil-serve .phil-num{color:var(--hh-blue);border-color:rgba(255,255,255,.35)}
.phil:hover{filter:brightness(1.08)}
.phil:focus-visible,.hh-card:focus-visible,.hh-cta:focus-visible{outline:3px solid #ffd166;outline-offset:3px}

/* ---------- origins card ---------- */
.hh-origins{background:rgba(6,16,34,.85);border:1px solid rgba(255,255,255,.18);padding:16px 18px 18px}
.hh-origins img{display:block;width:100%;height:auto;margin:4px 0 10px;background:#fff;padding:6px}
.hh-origins p{font-size:.86rem;line-height:1.5;color:#e3e8f1;margin:0 0 12px}
.hh-origins a{color:#ff9aa8;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;text-decoration:none;border-bottom:3px solid var(--hh-red);padding-bottom:4px}

/* ---------- bottom cards ---------- */
.hh-cards{position:relative;max-width:1500px;margin:28px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.hh-card{position:relative;overflow:hidden;display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start;min-height:150px;padding:24px 22px 34px;
  background:linear-gradient(135deg,rgba(14,37,71,.95),rgba(8,22,45,.95));border:1px solid rgba(255,255,255,.14);color:#fff;text-decoration:none}
.hh-card.red{background:linear-gradient(135deg,rgba(120,18,34,.92),rgba(70,12,26,.95))}
.hh-card.has-photo::before{content:'';position:absolute;inset:0;background-size:cover;background-position:center 30%;opacity:.3;filter:grayscale(.55) contrast(1.05)}
.hh-card.has-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,22,45,.92) 0%,rgba(8,22,45,.6) 55%,rgba(8,22,45,.35))}
.hh-card.red.has-photo::after{background:linear-gradient(90deg,rgba(90,12,26,.94) 0%,rgba(90,12,26,.62) 55%,rgba(90,12,26,.38))}
.bg-timeline::before{background-image:url('trump-closeup-2015.webp')}
.bg-founders::before{background-image:url('stephen-gilchrist-nrmc-event.webp');background-position:center 20%}
.hh-card>*{position:relative;z-index:1}
.hh-card-icon svg{width:56px;height:56px;fill:#fff;stroke:#fff}
.hh-card-icon svg.line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.hh-card-title{display:block;font-family:var(--serif);font-size:1.3rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600}
.hh-card-text{display:block;font-size:.92rem;line-height:1.45;color:#e2e8f2;margin:6px 0 12px}
.hh-card-link{display:inline-block;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700;border-bottom:3px solid var(--hh-red);padding-bottom:4px;color:#fff}
.hh-card.red .hh-card-link{border-color:#ff7b8d}
.card-credit{position:absolute;left:22px;right:14px;bottom:8px;font-size:.62rem;line-height:1.3;color:#d5dceb}
.card-credit a{color:#d5dceb}

/* ---------- principles page ---------- */
.phil-band{background:linear-gradient(180deg,#0b1d3b,#081631);padding:34px max(4vw,18px) 30px}
.phil-band .phil{max-width:1000px;margin-left:auto;margin-right:auto}
.principles .principle{padding:34px 0 10px;border-bottom:1px solid #dbe2ec;scroll-margin-top:20px}
.principles h2{font-family:var(--serif);font-size:clamp(2rem,3.4vw,2.8rem);display:flex;align-items:baseline;gap:14px}
.principles .pnum{font-style:italic;font-weight:800;color:var(--hh-red)}
.principle-examine .pnum{color:#6c7480}.principle-serve .pnum{color:var(--hh-blue)}
.psummary{font-size:1.1rem;color:#24324a}
.synthesis{background:#f4f7fb;padding:30px 28px!important;margin-top:30px;border-left:5px solid var(--hh-red)}
.synthesis p.tier{display:inline-block}

/* ---------- responsive ---------- */
@media (max-width:1180px){
  .hh-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"intro intro" "phil phil" "photoL origins" "photoR photoR"}
  .hh-photo-right{max-width:640px;justify-self:center}
  .hh-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .home-hero{padding:22px 16px 26px}
  .hh-grid{grid-template-columns:1fr;grid-template-areas:"intro" "phil" "photoL" "origins" "photoR"}
  .hh-photo-left,.hh-photo-right{transform:none}
  .phil{grid-template-columns:70px 1fr;min-height:0;padding:14px 16px 14px 10px}
  .phil-icon{display:none}
  .phil-num{font-size:3.2rem}
  .hh-cards{grid-template-columns:1fr}
  .hh-card{grid-template-columns:48px 1fr;min-height:0}
  .hh-card-icon svg{width:42px;height:42px}
  .hh-wtp{display:none}
}
@media (prefers-reduced-motion:reduce){.phil:hover{filter:none}}
@media print{.home-hero{background:#fff!important;color:#000}.hh-bg{display:none}.phil{box-shadow:none;clip-path:none}}

/* ---- density pass: fit the Image 2 composition (hero, panels, photos, cards) near one desktop screen ---- */
@media (min-width:1181px){
  .home-hero{padding-top:22px}
  .hh-grid{gap:10px 26px;grid-template-rows:auto 1fr}
  .home-hero h1{font-size:clamp(2.2rem,3.05vw,3.3rem);margin-bottom:.25em}
  .home-hero h1::after{margin-top:12px}
  .hh-lead{font-size:.98rem;margin:.4em 0 .6em}
  .hh-cta{margin-top:2px;padding:10px 22px}
  .hh-phil{align-self:start;margin-top:110px}
  .phil{min-height:112px;margin-bottom:8px}
  .hh-photo-left{margin-top:-6px}
  .hh-photo-left img{aspect-ratio:2.25/1;object-position:center 30%}
  .hh-photo-right{margin-top:-120px}
  .hh-photo-right img{aspect-ratio:1.5/1}
  .hh-cards{margin-top:20px}
  .hh-card{min-height:128px;padding:20px 20px 30px}
}
.hh-wtp{right:22%;top:0}
.hh-origins img{max-height:150px;object-fit:contain}
/* credits flow under the card text instead of overlapping it */
.card-credit{position:relative;left:auto;right:auto;bottom:auto;grid-column:1/-1;margin-top:-4px}
.hh-card{padding-bottom:16px}

/* ---- R3.7: authentic-photo background collage (replaces the unrecorded texture) ---- */
.hh-c{position:absolute;background-size:cover;background-repeat:no-repeat;filter:grayscale(.75) contrast(1.05) brightness(.9);opacity:.34;
  -webkit-mask-image:radial-gradient(closest-side,#000 55%,transparent 100%);mask-image:radial-gradient(closest-side,#000 55%,transparent 100%)}
.c-reinvest{left:-4%;top:-6%;width:44%;height:78%;background-image:url('reinvest-event.webp');background-position:center 30%;opacity:.26}
.c-interview{left:30%;top:-8%;width:40%;height:58%;background-image:url('john-lewis-interview-2015.webp');background-position:center 40%}
.c-stage{left:60%;top:-4%;width:36%;height:52%;background-image:url('chamber-stage-2015.webp');background-position:70% center;opacity:.3}
.c-crowd{left:28%;top:44%;width:76%;height:62%;background-image:url('charleston-crowd-2015.webp');background-position:center 60%;opacity:.3}
.hh-bg::before{opacity:.75}
.home-hero::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(8,22,45,.82) 0%,rgba(8,22,45,.45) 34%,rgba(8,22,45,.35) 65%,rgba(8,22,45,.6) 100%)}
.hh-grid,.hh-cards,.hh-bgcredit{position:relative;z-index:1}
.hh-bgcredit{max-width:1500px;margin:14px auto 0;font-size:.62rem;color:#c6d0e2;text-align:right}
/* Political Junkie on the dark origins card: transparent logo, no white box */
.hh-origins img{background:none;padding:0;max-height:170px;width:auto;max-width:100%;margin:6px auto 12px}
/* FAQ and Evidence cards: faded archive photos */
.bg-faq::before{background-image:url('conference-2016.webp');background-position:center 45%}
.bg-evidence::before{background-image:url('nrmc-flyer.webp');background-position:center 35%}
@media (max-width:700px){.c-reinvest,.c-stage{display:none}.c-interview{left:-10%;width:120%;height:40%}.c-crowd{left:-10%;top:55%;width:120%;height:45%}.hh-bgcredit{text-align:left}}
