/* Shared styles for pages added Oct 2026 (cascadia, extreme-heat, blog, partners).
   Older pages carry the same look inline; these match them visually. */
*{box-sizing:border-box;}
html,body{margin:0;padding:0;background:#141414;}
body{font-family:Inter,system-ui,sans-serif;color:#f0ece4;-webkit-font-smoothing:antialiased;background-color:#1a1a1a;background-image:url('mountains.svg');background-size:cover;background-position:center bottom;background-attachment:fixed;}
a{text-decoration:none;color:inherit;}
::selection{background:#cc2200;color:#f0ece4;}
img{max-width:100%;}
@keyframes alertpulse{0%,100%{opacity:1;}50%{opacity:.35;}}

/* chrome */
.topbar{position:sticky;top:0;z-index:200;background:#101010;border-bottom:1px solid #2a2a2a;}
.topbar-in{max-width:1280px;margin:0 auto;padding:0 28px;height:60px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.brand{display:flex;align-items:center;gap:11px;}
.brand-word{display:flex;align-items:baseline;gap:7px;font-family:'Playfair Display',serif;}
.brand-word b{font-size:21px;font-weight:900;color:#d4930a;line-height:1;}
.brand-word span{font-size:13px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#f0ece4;font-family:Inter,sans-serif;}
.tabs{display:flex;align-items:center;gap:4px;font-size:12.5px;font-weight:600;}
.tab{padding:9px 13px;border-radius:3px;color:#8c867b;transition:color .15s,background .15s;}
.tab:hover{color:#f0ece4;}
.tab.on{color:#1a1a1a;background:#d4930a;}
.sep{width:1px;height:20px;background:#2a2a2a;margin:0 8px;}
.dd{position:relative;display:inline-block;}
.dd-menu{position:absolute;top:100%;left:0;background:#101010;border:1px solid #2a2a2a;border-radius:5px;padding:6px 0;min-width:240px;display:none;z-index:400;box-shadow:0 16px 40px rgba(0,0,0,.55);}
.dd:hover .dd-menu{display:block;}
.dd-menu a{display:flex;align-items:center;gap:11px;padding:9px 16px;font-size:13px;font-weight:600;color:#b8b2a7;white-space:nowrap;}
.dd-menu a .r{font-family:'Playfair Display',serif;font-weight:800;color:#6c665b;min-width:18px;font-size:13px;}
.dd-menu a:hover{background:#1a1a1a;color:#d4930a;}
.dd-menu a:hover .r{color:#d4930a;}
.mast{background:#141414;border-bottom:1px solid #242424;}
.mast-in{max-width:1180px;margin:0 auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.mast-logo{display:flex;align-items:baseline;gap:9px;font-family:'Playfair Display',serif;}
.mast-logo b{font-size:30px;font-weight:900;color:#d4930a;line-height:1;}
.mast-logo span{font-size:15px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;font-family:Inter,sans-serif;}
.mast nav{display:flex;gap:30px;font-size:13px;font-weight:600;color:#b8b2a7;align-items:center;flex-wrap:wrap;}
.navlink:hover{color:#f0ece4;}
.navlink.on{color:#d4930a;}

/* hero */
.hero{position:relative;height:520px;overflow:hidden;background:#0c0c0c;}
.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,12,12,.5),rgba(12,12,12,.94));}
.hero-in{position:relative;max-width:1000px;margin:0 auto;height:100%;padding:0 28px 50px;display:flex;flex-direction:column;justify-content:flex-end;}
.kicker{font-size:12px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#d4930a;margin-bottom:18px;}
.hero h1{font-family:'Playfair Display',serif;font-weight:800;font-size:64px;line-height:1.02;margin:0 0 22px;letter-spacing:-.02em;text-wrap:balance;}
.hero p{font-size:19px;line-height:1.55;color:#cfc9bd;max-width:700px;margin:0;}

.stats{background:#141414;border-bottom:1px solid #242424;}
.stats-in{max-width:1000px;margin:0 auto;padding:0 28px;display:grid;grid-template-columns:repeat(4,1fr);}
.stat{padding:28px 20px;border-right:1px solid #242424;}
.stat:last-child{border-right:none;}
.stat b{display:block;font-family:'Playfair Display',serif;font-size:32px;font-weight:800;line-height:1;color:#f0ece4;}
.stat b.red{color:#cc2200;} .stat b.amb{color:#d4930a;}
.stat span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#8c867b;margin-top:8px;}

/* article layout */
.body{max-width:1100px;margin:0 auto;padding:64px 28px;display:grid;grid-template-columns:1fr 320px;gap:56px;align-items:start;}
.prose{font-size:17.5px;line-height:1.75;color:#d8d3c8;min-width:0;}
.prose .lede{font-size:21px;line-height:1.65;color:#f0ece4;margin:0 0 28px;}
.prose h2{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:#f0ece4;margin:44px 0 18px;line-height:1.15;scroll-margin-top:80px;}
.prose h3{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;color:#f0ece4;margin:32px 0 12px;}
.prose p{margin:0 0 24px;}
.prose ul,.prose ol{margin:0 0 24px;padding-left:22px;}
.prose li{margin-bottom:10px;}
.prose strong{color:#f0ece4;}
.prose a{color:#d4930a;border-bottom:1px solid rgba(212,147,10,.4);}
.prose a:hover{border-color:#d4930a;}
.callout{background:#1c0d09;border:1px solid #5a1c0c;border-radius:5px;padding:30px 32px;margin:36px 0;}
.callout .tag{display:inline-flex;align-items:center;gap:9px;margin-bottom:14px;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#ff6a4a;}
.dot{width:7px;height:7px;border-radius:50%;background:#cc2200;animation:alertpulse 1.8s infinite;display:inline-block;}
.callout h3{margin-top:0;}
.callout p{font-size:16px;line-height:1.65;color:#d8c9bf;}
.callout p:last-child{margin-bottom:0;}
.note{font-size:13.5px;line-height:1.6;color:#8c867b;border-top:1px solid #2a2a2a;padding-top:18px;margin-top:36px;}
.sources{font-size:13.5px;line-height:1.6;color:#9a948a;}
.sources li{margin-bottom:6px;word-break:break-word;}

.side{position:sticky;top:80px;display:flex;flex-direction:column;gap:24px;}
.panel{background:#161616;border:1px solid #242424;border-radius:5px;padding:22px;}
.panel-h{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#d4930a;margin-bottom:14px;}
.panel ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px;font-size:13.5px;color:#9a948a;}
.panel a:hover{color:#f0ece4;}
.panel.red{background:#1c0d09;border-color:#5a1c0c;}

.btn{cursor:pointer;font-family:Inter,sans-serif;transition:background .15s,border-color .15s,color .15s;display:inline-block;border-radius:3px;font-weight:700;}
.btn-amber{background:#d4930a;color:#1a1a1a;padding:12px 20px;font-size:13px;border:none;}
.btn-amber:hover{background:#e8a519;}
.btn-ghost{background:transparent;border:1px solid #4a4a4a;color:#f0ece4;padding:11px 18px;font-size:12.5px;font-weight:600;}
.btn-ghost:hover{border-color:#d4930a;color:#d4930a;}
.btn-block{display:block;text-align:center;width:100%;}

/* cards */
.wrap{max-width:1180px;margin:0 auto;padding:0 28px;}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.card{background:#1f1f1f;border:1px solid #2c2c2c;border-radius:5px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .2s,transform .2s;}
a.card:hover{border-color:#3a3a3a;transform:translateY(-2px);}
.card img{width:100%;height:180px;object-fit:cover;display:block;}
.card-b{padding:20px;display:flex;flex-direction:column;flex:1;}
.card-k{font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#d4930a;margin-bottom:9px;}
.card h3{font-family:'Playfair Display',serif;font-size:20px;font-weight:700;margin:0 0 10px;line-height:1.22;}
.card p{font-size:13.5px;color:#9a948a;line-height:1.55;margin:0 0 14px;flex:1;}
.card .meta{font-size:12px;color:#6c665b;}
.ph{background:linear-gradient(135deg,#242424,#171717);display:flex;align-items:center;justify-content:center;text-align:center;color:#6c665b;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;padding:8px;}

.foot{background:#101010;padding:54px 28px 40px;margin-top:64px;}
.foot-in{max-width:1180px;margin:0 auto;}
.foot-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:30px;padding-bottom:36px;border-bottom:1px solid #242424;}
.foot-cols{display:flex;gap:56px;flex-wrap:wrap;}
.foot-col div{display:flex;flex-direction:column;gap:9px;font-size:13px;color:#9a948a;}
.foot-bot{padding-top:24px;font-size:12px;color:#666;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;}

@media(max-width:900px){
  .tabs .tab-x,.tabs .sep{display:none;}
  .hero{height:auto;min-height:440px;}
  .hero-in{padding-top:120px;}
  .hero h1{font-size:42px;}
  .hero p{font-size:17px;}
  .stats-in{grid-template-columns:repeat(2,1fr);}
  .stat:nth-child(2){border-right:none;}
  .stat{border-bottom:1px solid #242424;}
  .body{grid-template-columns:1fr;gap:36px;padding:44px 16px;}
  .side{position:static;}
  .grid3,.grid4{grid-template-columns:repeat(2,1fr);}
  .mast-in{flex-direction:column;align-items:flex-start;}
  .mast nav{gap:18px;}
}
@media(max-width:560px){
  .topbar-in,.mast-in,.wrap,.hero-in{padding-left:16px;padding-right:16px;}
  .hero h1{font-size:34px;}
  .grid3,.grid4{grid-template-columns:1fr;}
  .stat b{font-size:26px;}
  .prose{font-size:16.5px;}
  .prose h2{font-size:25px;}
  .callout{padding:22px 20px;}
}
