/* ============================================
   JESSE MORENO FOR DISTRICT 6 — SHARED STYLES
   Edit colors here and every page updates.
   ============================================ */

:root{
  --navy:#0B1F3A;
  --navy2:#132B4C;
  --teal:#00BFA5;
  --gold:#E8B33C;
  --white:#FFFFFF;
  --offwhite:#F3F7F7;
  --gray:#5C6B7A;
}

*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif;color:var(--navy);background:var(--white);line-height:1.65;}
h1,h2,h3,h4,.display{font-family:'Archivo Black',sans-serif;font-weight:400;font-style:italic;line-height:1.1;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.container{max-width:1120px;margin:0 auto;padding:0 24px;}
.narrow{max-width:860px;}

/* ---------- NAV ---------- */
nav{position:sticky;top:0;z-index:100;background:var(--navy);border-bottom:3px solid var(--teal);}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:106px;}
.nav-logo img{height:76px;width:auto;}
.nav-links{display:flex;gap:26px;align-items:center;}
.nav-links a{color:rgba(255,255,255,.85);font-weight:600;font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;transition:color .2s;}
.nav-links a:hover,.nav-links a.active{color:var(--teal);}
.nav-donate{background:var(--gold);color:var(--navy)!important;padding:11px 24px;border-radius:4px;font-family:'Archivo Black',sans-serif;font-style:italic;font-size:.8rem!important;}
.nav-donate:hover{background:#F2C25A;color:var(--navy)!important;}
.nav-toggle{display:none;background:none;border:none;color:var(--white);font-size:1.7rem;cursor:pointer;}

/* ---------- BUTTONS ---------- */
.btn{display:inline-block;padding:15px 32px;border-radius:4px;font-family:'Archivo Black',sans-serif;font-style:italic;font-size:.9rem;letter-spacing:.05em;text-transform:uppercase;transition:all .2s;}
.btn-gold{background:var(--gold);color:var(--navy);}
.btn-gold:hover{background:#F2C25A;transform:translateY(-2px);}
.btn-outline{border:3px solid var(--teal);color:var(--white);}
.btn-outline:hover{background:var(--teal);color:var(--navy);}
.btn-navy{background:var(--navy);color:var(--white);}
.btn-navy:hover{background:var(--navy2);}

/* ---------- PAGE BANNER (inner pages) ---------- */
.page-banner{background:var(--navy);color:var(--white);padding:70px 0 60px;text-align:center;}
.page-banner .eyebrow{color:var(--teal);font-family:'Archivo Black',sans-serif;font-style:italic;letter-spacing:.1em;text-transform:uppercase;font-size:.95rem;margin-bottom:12px;}
.page-banner h1{font-size:clamp(2.1rem,5vw,3.4rem);text-transform:uppercase;color:var(--white);}
.page-banner .sub{color:#B9C7D6;font-size:1.05rem;margin-top:18px;max-width:720px;margin-left:auto;margin-right:auto;}
.banner-rule{width:110px;height:7px;background:var(--gold);margin:24px auto 0;}

/* ---------- HERO (home) ---------- */
.hero{background:var(--navy);color:var(--white);padding:70px 0 0;}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;}
.hero-eyebrow{color:var(--teal);font-family:'Archivo Black',sans-serif;font-style:italic;letter-spacing:.06em;text-transform:uppercase;font-size:1.35rem;margin-bottom:6px;}
.hero h1{font-size:clamp(3rem,7vw,4.9rem);color:var(--white);margin-bottom:16px;}
.hero-office{font-family:'Archivo Black',sans-serif;font-style:italic;color:var(--gold);font-size:clamp(1.1rem,2.4vw,1.6rem);text-transform:uppercase;line-height:1.2;margin-bottom:26px;}
.hero-quote{font-family:'Archivo Black',sans-serif;font-style:italic;color:var(--teal);font-size:clamp(1rem,2vw,1.3rem);line-height:1.35;margin-bottom:30px;text-transform:uppercase;}
.hero-ctas{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:56px;}
.hero-logo{width:100%;max-width:560px;margin-bottom:28px;}
.hero-photo img{width:100%;max-width:420px;margin:0 auto;}

/* ---------- DATE BAR ---------- */
.datebar{background:var(--gold);padding:16px 0;}
.datebar-inner{display:flex;justify-content:center;gap:50px;flex-wrap:wrap;}
.datebar span{font-family:'Archivo Black',sans-serif;font-style:italic;color:var(--navy);font-size:1.05rem;letter-spacing:.03em;text-transform:uppercase;}

/* ---------- SECTIONS ---------- */
section{padding:80px 0;}
.section-eyebrow{color:var(--teal);font-family:'Archivo Black',sans-serif;font-style:italic;letter-spacing:.08em;text-transform:uppercase;font-size:.95rem;margin-bottom:10px;}
.section-title{font-size:clamp(1.9rem,4.2vw,2.9rem);text-transform:uppercase;margin-bottom:18px;}
.section-rule{width:100px;height:7px;background:var(--gold);margin-bottom:32px;}
.bg-off{background:var(--offwhite);}
.bg-navy{background:var(--navy);color:var(--white);}
.bg-navy .section-title{color:var(--white);}

/* ---------- STATEMENT BAR ---------- */
.statement{background:var(--gold);color:var(--navy);font-family:'Archivo Black',sans-serif;font-style:italic;text-transform:uppercase;font-size:clamp(1rem,2.1vw,1.3rem);line-height:1.45;padding:28px 34px;border-radius:8px;text-align:center;}

/* ---------- ISSUE BLOCKS ---------- */
.issue{border-top:1px solid #DDE5E5;padding:46px 0;}
.issue:first-of-type{border-top:none;}
.issue-head{display:flex;gap:22px;align-items:flex-start;margin-bottom:16px;}
.issue-num{flex-shrink:0;width:62px;height:62px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-family:'Archivo Black',sans-serif;font-style:italic;font-size:1.5rem;}
.issue-head h2{font-size:clamp(1.35rem,3vw,1.9rem);text-transform:uppercase;padding-top:8px;}
.issue-intro{font-size:1.06rem;color:#26364A;margin-bottom:22px;}
.issue-points{list-style:none;display:flex;flex-direction:column;gap:16px;}
.issue-points li{padding-left:34px;position:relative;font-size:1rem;color:#33455C;}
.issue-points li::before{
  content:'';position:absolute;left:0;top:7px;
  width:0;height:0;border-left:14px solid var(--teal);
  border-top:8px solid transparent;border-bottom:8px solid transparent;
}
.issue-points strong{color:var(--navy);font-weight:700;}

/* ---------- PILLAR ARROWS (home) ---------- */
.pillars{display:grid;grid-template-columns:1fr 1fr;gap:30px;}
.pillar{display:flex;gap:20px;align-items:flex-start;}
.pillar-arrow{flex-shrink:0;width:46px;height:46px;margin-top:2px;}
.pillar h3{color:var(--teal);font-size:1.05rem;margin-bottom:8px;text-transform:uppercase;text-decoration:underline;text-underline-offset:4px;}
.pillar p{color:#C9D6E3;font-size:.97rem;line-height:1.55;}

/* ---------- CARDS ---------- */
.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.card{background:var(--white);border:1px solid #E1E8E8;border-radius:12px;padding:36px 28px;text-align:center;transition:transform .2s, box-shadow .2s;}
.card:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(11,31,58,.12);}
.card .icon{width:66px;height:66px;border-radius:50%;background:var(--navy);color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin:0 auto 18px;font-family:'Archivo Black',sans-serif;font-style:italic;}
.card h3{font-size:1.15rem;text-transform:uppercase;margin-bottom:10px;}
.card p{color:var(--gray);font-size:.95rem;margin-bottom:22px;}

/* ---------- BIO PAGE ---------- */
.bio-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:56px;align-items:start;}
.bio-photo img{width:100%;max-width:380px;margin:0 auto;}
.bio p{margin-bottom:20px;font-size:1.08rem;color:#26364A;}
.pull{font-family:'Archivo Black',sans-serif;font-style:italic;text-transform:uppercase;color:var(--teal);font-size:1.2rem;line-height:1.35;border-left:7px solid var(--gold);padding-left:20px;margin:28px 0;}
.cred-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 26px;margin-top:26px;}
.cred{display:flex;gap:10px;align-items:flex-start;font-weight:600;font-size:.94rem;}
.cred::before{content:'\2605';color:var(--gold);flex-shrink:0;}

/* ---------- PLATFORM LIGHT VARIANT (home) ---------- */
.eyebrow-xl{font-size:1.55rem;}
.title-xl{font-size:clamp(2.6rem,6vw,4.1rem);}
.platform-light .pillar h3{color:var(--navy);}
.platform-light .pillar p{color:#3B4C61;}

/* ---------- PHOTO GRID ---------- */
.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;}
.photo{margin:0;}
.photo img{width:100%;height:300px;object-fit:cover;border-radius:10px;border:4px solid var(--teal);}
.photo figcaption{margin-top:12px;color:#B9C7D6;font-size:.92rem;font-style:italic;}

/* ---------- CONTACT ---------- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px;}
.contact-block{margin-bottom:32px;}
.contact-block h3{color:var(--teal);font-size:1.05rem;text-transform:uppercase;margin-bottom:10px;}
.contact-block p,.contact-block a{font-size:1.02rem;color:#33455C;}
.contact-block a:hover{color:var(--teal);}

/* ---------- FOOTER ---------- */
footer{background:var(--navy);color:var(--white);padding:56px 0 28px;border-top:6px solid var(--gold);}
.footer-logo{max-width:290px;margin-bottom:20px;}
.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:40px;margin-bottom:38px;}
.footer-tag{color:#9FB0C2;font-size:.95rem;}
footer h4{color:var(--gold);font-size:.9rem;letter-spacing:.06em;text-transform:uppercase;margin-bottom:14px;}
footer ul{list-style:none;}
footer li{margin-bottom:9px;color:#C6D2DF;font-size:.93rem;}
footer li a:hover{color:var(--teal);}
.social{display:flex;gap:12px;margin-top:16px;}
.social a{width:42px;height:42px;border-radius:50%;background:var(--teal);color:var(--navy);display:flex;align-items:center;justify-content:center;font-family:'Archivo Black',sans-serif;font-style:italic;font-size:.9rem;}
.social a:hover{background:var(--gold);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding-top:24px;text-align:center;}
.disclaimer{display:inline-block;border:2px solid rgba(255,255,255,.28);padding:9px 22px;color:#9FB0C2;font-size:.8rem;letter-spacing:.03em;margin-bottom:12px;}
.copyright{color:#66788C;font-size:.78rem;}

/* ---------- RESPONSIVE ---------- */
@media(max-width:900px){
  .nav-inner{height:86px;}
  .nav-logo img{height:58px;}
  .nav-links{display:none;position:absolute;top:86px;left:0;right:0;background:var(--navy);flex-direction:column;padding:22px;gap:18px;border-bottom:3px solid var(--teal);}
  .nav-links.open{display:flex;}
  .nav-toggle{display:block;}
  .hero-grid,.bio-grid,.contact-grid{grid-template-columns:1fr;}
  .hero-photo{order:-1;}
  .hero-photo img{max-width:280px;}
  .hero-logo{max-width:400px;margin-bottom:22px;}
  .pillars,.cards-3,.footer-grid,.cred-list,.photo-grid{grid-template-columns:1fr;}
  .photo img{height:240px;}
  .datebar-inner{gap:14px;flex-direction:column;text-align:center;}
  .issue-num{width:50px;height:50px;font-size:1.2rem;}
}
