/* PASS35 — Maine State Flag civic palette + mobile declutter
   Intent: dark blue foundation, gold centerpiece action, green constructive reform, red only for harm/urgency/accountability.
   This file is visual/layout only. It does not alter bill-form text. */
:root{
  --maine-blue:#002664;
  --maine-blue-950:#00152f;
  --maine-blue-900:#001d47;
  --maine-blue-850:#062f6f;
  --maine-gold:#ffe84f;
  --maine-gold-strong:#ffd32a;
  --maine-red:#ff163c;
  --maine-green:#3e6f3e;
  --maine-white:#ffffff;
  --maine-ink:#07101f;
  --maine-paper:#f7fafc;
  --maine-muted:#dbe8ff;
  --maine-panel:rgba(0,38,100,.72);
  --maine-panel-strong:rgba(0,29,71,.92);
  --maine-line:rgba(255,255,255,.16);
  --maine-shadow:0 24px 80px rgba(0,0,0,.32);
}
html{background:var(--maine-blue-950);}
body{
  background:
    radial-gradient(1100px 520px at 18% -10%, rgba(255,232,79,.12), transparent 58%),
    radial-gradient(800px 420px at 98% 8%, rgba(62,111,62,.15), transparent 56%),
    linear-gradient(180deg,var(--maine-blue-950) 0%, var(--maine-blue) 42%, var(--maine-blue-950) 100%) !important;
}
.hero,.page-hero,.initiative-hero,.initiative-shell,.justice-shell{
  background:
    radial-gradient(900px 420px at 8% 6%, rgba(255,232,79,.16), transparent 56%),
    radial-gradient(900px 480px at 96% 8%, rgba(62,111,62,.16), transparent 58%),
    linear-gradient(135deg,var(--maine-blue) 0%, #001b49 56%, var(--maine-blue-950) 100%) !important;
}
.hero:before,.page-hero:before,.initiative-hero:before{
  background:
    linear-gradient(110deg, rgba(255,255,255,.055) 0 1px, transparent 1px 22px),
    radial-gradient(circle at 14% 18%, rgba(255,232,79,.10), transparent 32%) !important;
}
.kicker,.meta,.rail-label,.intent-label,.quick-help-kicker,.status-label{color:var(--maine-gold) !important;}
a{color:#b9e5ff;}
a:hover,a:focus{color:var(--maine-white);}
.btn-primary,.btn-accent,.tws-cta,.quick-help-chip.priority,.initiative-page .btn.primary,.focused-nav .nav-links a.primary,
.hero-actions-condensed .btn:first-child,.actions .btn.primary{
  background:linear-gradient(180deg,var(--maine-gold),var(--maine-gold-strong)) !important;
  border-color:rgba(255,232,79,.86) !important;
  color:#061326 !important;
  box-shadow:0 16px 42px rgba(255,232,79,.20) !important;
}
.btn-primary:hover,.btn-primary:focus,.btn-accent:hover,.btn-accent:focus,.tws-cta:hover,.tws-cta:focus,
.quick-help-chip.priority:hover,.quick-help-chip.priority:focus,.initiative-page .btn.primary:hover,.initiative-page .btn.primary:focus,
.focused-nav .nav-links a.primary:hover,.focused-nav .nav-links a.primary:focus{
  filter:brightness(1.03); transform:translateY(-1px); color:#061326 !important;
}
.btn-default,.btn-outline-primary,.btn.white,.initiative-page .btn,.actions .btn,.focused-nav .nav-links a{
  background:rgba(255,255,255,.94) !important;
  border-color:rgba(255,255,255,.65) !important;
  color:#061326 !important;
}
.btn.blue,.initiative-page .btn.blue,.actions .btn.blue{
  background:linear-gradient(180deg,#2683ff,#0064d9) !important;
  border-color:rgba(255,255,255,.22) !important;
  color:#fff !important;
}
.alert,.urgent,.intent-urgent,.privacy-no-intake-ribbon,.quick-help-chip.urgent{
  border-color:rgba(255,22,60,.42) !important;
}
.intent-urgent,.quick-help-chip.urgent:not(.priority){
  background:linear-gradient(180deg,rgba(255,22,60,.94),rgba(143,13,33,.96)) !important;
  color:#fff !important;
}
.card-lite,.callout,.identity-card,.route-sequence-card,.lane-companion-card,.reader-card,.bill-section,.micro,
.quick-help-inner,.site-boundary-ribbon .container,.privacy-no-intake-ribbon .container{
  border-color:rgba(255,255,255,.18) !important;
  box-shadow:var(--maine-shadow);
}
.card-lite,.callout,.identity-card,.route-sequence-card,.lane-companion-card,.quick-help-inner{
  background:linear-gradient(180deg,rgba(0,38,100,.70),rgba(0,21,47,.86)) !important;
}
/* Make constructive reform cards feel constructive rather than alarmist. */
.card-lite.constructive,.callout.constructive,.reform,.family,.support,.implementation-card{
  border-color:rgba(62,111,62,.45) !important;
}
/* Keep the centerpiece initiative visibly above the utility navigation. */
.hero .hero-main .sources-nav,
.page-hero .sources-nav,
.hero-utility-row{
  border-color:rgba(255,232,79,.18) !important;
}
.hero .sources-nav a,.page-hero .sources-nav a,.hero-utility-row a,.platform-rail a,.site-intent-strip a{
  background:rgba(0,21,47,.72) !important;
  border-color:rgba(255,255,255,.16) !important;
  color:#f2f7ff !important;
}
.hero .sources-nav a[href*="initiative"],.hero-utility-row a[href*="initiative"],.platform-rail a[href*="initiative"],.site-intent-strip a[href*="initiative"]{
  background:linear-gradient(180deg,rgba(255,232,79,.96),rgba(255,211,42,.96)) !important;
  color:#061326 !important;
  border-color:rgba(255,232,79,.85) !important;
}
/* Initiative reader: wider, calmer, less phone-column feeling. */
.initiative-page .reader-card,.reader-card{
  background:linear-gradient(180deg,rgba(0,29,71,.88),rgba(0,18,42,.96)) !important;
}
.bill-section summary{
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035)) !important;
  border-color:rgba(255,232,79,.24) !important;
}
.bill-section[open] summary{border-color:rgba(255,232,79,.48) !important;}
.bill-section pre{
  background:#071526 !important;
  color:#f6fbff !important;
  border-color:rgba(255,255,255,.14) !important;
}
.section-number{color:var(--maine-gold) !important;}
/* Desktop: reduce duplicate wayfinding density without deleting routes. */
@media (min-width: 769px){
  .platform-rail-inner,.site-intent-inner{gap:8px !important;}
  .platform-rail a,.site-intent-strip a,.sources-nav a,.hero-utility-row a{border-radius:999px !important;}
  .platform-rail{position:relative;}
}
/* Mobile-first declutter: stop navigation from consuming the page before content appears. */
@media (max-width: 768px){
  body{font-size:16px; line-height:1.55;}
  .container{width:100% !important; max-width:100% !important; padding-left:18px !important; padding-right:18px !important;}
  .hero,.page-hero{padding:28px 0 34px !important; min-height:0 !important;}
  .hero h1,.page-hero h1{font-size:32px !important; line-height:1.08 !important; margin-bottom:12px !important;}
  .hero p.lead,.page-hero p.lead{font-size:17px !important; line-height:1.45 !important;}
  .privacy-no-intake-ribbon{font-size:12px !important; line-height:1.35 !important; padding:6px 0 !important;}
  .privacy-no-intake-ribbon .container{box-shadow:none !important; border-radius:0 !important; padding-top:0 !important; padding-bottom:0 !important;}
  .privacy-no-intake-ribbon .privacy-actions a:nth-child(n+2){display:none !important;}
  .site-boundary-ribbon,.platform-rail,.site-intent-strip,.quick-help-strip,.jump-strip,.page-shortcuts,.timeline-progress,.desktop-page-nav-dock,
  .page-progress-dock,.dock-progress,.sticky-progress,.floating-progress{display:none !important;}
  .hero .sources-nav,.page-hero .sources-nav,.hero-utility-row{display:none !important;}
  .hero-actions-condensed{display:grid !important; grid-template-columns:1fr !important; gap:10px !important; margin-top:18px !important;}
  .hero-actions-condensed .btn{width:100% !important; margin:0 !important; border-radius:12px !important; padding:13px 15px !important; font-size:14px !important;}
  .hero-actions-condensed .btn:nth-of-type(n+4){display:none !important;}
  .card-lite,.callout,.identity-card,.route-sequence-card,.lane-companion-card,.micro,.quick-card,.resource-card,
  .issue-card,.proof-card,.packet-card{padding:18px !important; border-radius:18px !important; margin-left:0 !important; margin-right:0 !important;}
  .row{margin-left:0 !important; margin-right:0 !important;}
  [class*="col-"]{padding-left:0 !important; padding-right:0 !important;}
  .section{padding:34px 0 !important;}
  .section-alt{padding:34px 0 !important;}
  h2{font-size:27px !important; line-height:1.16 !important;}
  h3{font-size:21px !important; line-height:1.2 !important;}
  /* Focused initiative page */
  .focused-nav{position:sticky !important; top:0 !important; z-index:50 !important;}
  .focused-nav .container{display:flex !important; align-items:center !important; justify-content:space-between !important; gap:10px !important;}
  .focused-nav .brand{font-size:13px !important; white-space:nowrap !important;}
  .focused-nav .nav-links{display:flex !important; gap:8px !important; overflow-x:auto !important; -webkit-overflow-scrolling:touch !important; padding:6px 0 !important;}
  .focused-nav .nav-links a{white-space:nowrap !important; font-size:12px !important; padding:8px 10px !important; border-radius:999px !important;}
  .focused-nav .nav-links a:nth-of-type(n+4){display:none !important;}
  .initiative-hero{padding:34px 0 28px !important;}
  .initiative-hero h1{font-size:30px !important; line-height:1.08 !important;}
  .initiative-hero .actions{display:grid !important; grid-template-columns:1fr !important; gap:10px !important;}
  .initiative-hero .actions .btn{width:100% !important; margin:0 !important;}
  .initiative-hero .actions .btn:nth-of-type(n+4){display:none !important;}
  .bill-centerpiece,.reader-card{padding:16px !important; border-radius:20px !important; margin-left:0 !important; margin-right:0 !important; width:100% !important; max-width:100% !important;}
  .reader-head{display:block !important;}
  .reader-controls{display:grid !important; grid-template-columns:1fr 1fr !important; gap:10px !important; margin-top:12px !important;}
  .reader-controls button{width:100% !important; border-radius:999px !important; min-height:42px !important;}
  .toc-strip{display:none !important;}
  .bill-section{margin:12px 0 !important; border-radius:18px !important; overflow:hidden !important;}
  .bill-section summary{display:flex !important; align-items:flex-start !important; gap:10px !important; padding:14px 14px !important;}
  .bill-section summary::marker{font-size:0 !important;}
  .bill-section summary:before{content:"+"; display:inline-flex; width:24px; height:24px; flex:0 0 24px; align-items:center; justify-content:center; border-radius:50%; background:rgba(255,232,79,.16); color:var(--maine-gold); font-weight:900; margin-top:1px;}
  .bill-section[open] summary:before{content:"–";}
  .section-title{font-size:14px !important; line-height:1.25 !important; overflow-wrap:anywhere;}
  .section-number{font-size:12px !important; line-height:1.25 !important; min-width:54px;}
  .bill-section pre{white-space:pre-wrap !important; overflow-wrap:break-word !important; word-break:normal !important; overflow-x:hidden !important; font-size:14px !important; line-height:1.55 !important; padding:16px !important; max-width:100% !important;}
  .bill-microgrid{grid-template-columns:1fr !important; gap:10px !important;}
  .micro{padding:14px !important;}
  .mobile-nav-minimal .navbar-collapse{max-height:62vh !important; overflow:auto !important;}
  .navbar-nav>li>a{font-size:13px !important; padding:9px 12px !important;}
}
@media (max-width: 420px){
  .container{padding-left:14px !important; padding-right:14px !important;}
  .hero h1,.page-hero h1,.initiative-hero h1{font-size:28px !important;}
  .bill-centerpiece,.reader-card{padding:12px !important; border-radius:16px !important;}
  .bill-section pre{font-size:13.5px !important; padding:14px !important;}
  .section-title{font-size:13px !important;}
  .section-number{min-width:48px;}
}
