
:root{
  --black:#010101;
  --page:#030201;
  --panel:#070403;
  --orange:#ff5817;
  --amber:#efb444;
  --cream:#f4eadf;
  --muted:#b3a49a;
  --line:#a8340f;
  --line2:#ef6520;
}
*{box-sizing:border-box}
html,body{margin:0;background:var(--page);color:var(--cream)}
body{
  font-family:Georgia,"Times New Roman",serif;
  background:
    radial-gradient(circle at 10% 11%,rgba(255,78,10,.07),transparent 22%),
    radial-gradient(circle at 90% 32%,rgba(139,47,9,.05),transparent 25%),
    linear-gradient(180deg,#040201,#010101 66%,#020101);
}
a{color:inherit;text-decoration:none}
img{max-width:100%}

/* ---- masthead: ONE frame, not three boxes ---- */
.masthead{padding:14px 0 10px;border-top:3px solid #2a2320;border-bottom:2px solid #691f09}
.mast-frame{
  max-width:1580px;margin:auto;padding:10px 20px;
  min-height:320px;
  display:grid;grid-template-columns:31% 38% 31%;
  align-items:stretch;
  position:relative;
  border:3px solid var(--line);
  border-radius:14px;
  background:
    radial-gradient(circle at 16% 22%,rgba(255,83,11,.07),transparent 28%),
    radial-gradient(circle at 82% 23%,rgba(255,83,11,.045),transparent 25%),
    linear-gradient(180deg,#0b0503,#050302);
  box-shadow:inset 0 0 0 1px rgba(255,155,72,.09),0 0 22px rgba(0,0,0,.5);
}
.mast-frame:before{
  content:"";position:absolute;left:12px;right:12px;top:6px;height:3px;
  background:linear-gradient(90deg,transparent,var(--line2),var(--amber),var(--line2),transparent);
}
.mast-brand{
  min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;
  padding:10px 20px;
}
.method-brand img{width:92%;height:280px;object-fit:contain;mix-blend-mode:screen}
.storm-brand img{width:92%;height:215px;object-fit:contain;background:#020101}
.storm-brand strong{margin-top:8px;color:#efb38f;font:900 12px Arial,sans-serif;letter-spacing:.09em}
.mast-copy{
  min-width:0;
  display:grid;grid-template-rows:60px 1fr;
  border-left:2px solid rgba(106,31,8,.75);
  border-right:2px solid rgba(106,31,8,.75);
}
.mast-copy nav{
  display:flex;align-items:center;justify-content:center;gap:19px;
  overflow:hidden;
  border-bottom:2px solid #591a07;
  padding:0 10px;
  font:800 14px Arial,sans-serif;text-transform:uppercase;white-space:nowrap;
}
.mast-copy nav a:hover{color:var(--orange)}
.copy-inner{display:flex;flex-direction:column;justify-content:center;padding:24px 31px;min-width:0}
.copy-inner>span{color:var(--orange);font:900 10px Arial,sans-serif;letter-spacing:.15em}
.copy-inner h1{margin:8px 0 14px;font-size:42px;line-height:1.02;font-weight:400}
.copy-inner h1 em{font-style:normal;color:var(--amber)}
.copy-inner p{margin:0 0 15px;font:15px/1.5 Arial,sans-serif;color:#cdbdb2;overflow-wrap:anywhere}
.learn{color:#ff6923;font:900 12px Arial,sans-serif}

/* ---- editorial columns ---- */
main{max-width:1580px;margin:auto;padding:0 20px 65px}
.editorial-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) 286px;
  gap:10px;
  align-items:start;
}
.feed,.rail{
  min-width:0;
  border:3px solid #96300d;border-radius:11px;
  padding:14px;
  background:linear-gradient(180deg,#080403,#040201);
  box-shadow:inset 0 0 0 1px rgba(255,157,73,.06),0 7px 22px rgba(0,0,0,.3);
  position:relative;
}
.feed:before,.rail:before{
  content:"";position:absolute;left:9px;right:9px;top:5px;height:3px;
  background:linear-gradient(90deg,transparent,#ff5b17,#e5a03d,#ff5b17,transparent);
}
.feed header,.rail header{
  display:flex;align-items:end;justify-content:space-between;gap:8px;
  padding:2px 0 9px;margin-bottom:13px;border-bottom:2px solid #5b1b07;
  min-width:0;
}
.feed h2,.rail h2{font-size:28px;font-weight:400;margin:0}
.feed header small,.rail header small{
  flex:0 0 auto;color:#b98c74;font:900 8px Arial,sans-serif;letter-spacing:.11em
}
.post{
  min-width:0;
  padding:0 0 20px;
  margin:0;
  border-bottom:2px solid rgba(85,26,8,.76);
}
.post+.post{padding-top:19px}
.hero-image{
  display:block;width:100%;height:auto;aspect-ratio:16/10;
  object-fit:cover;background:#030201;border:1px solid #4d1607;
}
.video-placeholder{
  width:100%;aspect-ratio:16/10;
  display:grid;place-items:center;background:
    radial-gradient(circle,rgba(255,84,10,.15),transparent 28%),#030201;
  border:1px solid #4d1607;
}
.video-placeholder.small{aspect-ratio:16/9}
.video-placeholder span{color:var(--orange);font:bold 58px Arial,sans-serif}
.title{
  display:block;max-width:100%;
  margin:11px 0 4px;
  color:#ff5b17;
  font:bold 18px/1.22 Arial,sans-serif;
  overflow-wrap:anywhere;word-break:normal;
}
.meta{color:#c0aea1;font:10px Arial,sans-serif;margin-bottom:8px}
.excerpt{
  max-width:100%;
  color:#aa9b92;
  font:13px/1.56 Georgia,serif;
  margin:0 0 8px;
  overflow-wrap:anywhere;word-break:normal;
}
.read{color:#ff3120;font:bold 10px Arial,sans-serif}

/* exact protection against bleed/overflow */
.feed *, .rail *, .mast-frame *{min-width:0}
.feed p,.feed a,.rail p,.rail h3,.rail strong{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}
.feed{overflow:hidden}
.rail{overflow:hidden}

.rail-item{display:block;padding:14px 0 18px;border-bottom:2px solid rgba(83,26,8,.76)}
.rail-item img{
  display:block;width:100%;height:auto;aspect-ratio:16/7;object-fit:contain;background:#020101;border:1px solid #4d1607
}
.rail-item h3{font-size:20px;font-weight:400;margin:9px 0 6px}
.rail-item p{color:#a99b92;font:12px/1.52 Georgia,serif;margin:0 0 7px}
.rail-item.firestorm strong{color:#ff4f16;font:900 10px Arial,sans-serif}
.rail-item.promo{margin-top:16px;padding:14px;border:2px solid #754128;background:#080403}
.rail-item.promo span{display:block;color:var(--orange);font:900 8px Arial,sans-serif;letter-spacing:.12em;margin-bottom:8px}

footer{
  border-top:2px solid #621d08;padding:22px 4vw;background:#040201;
  color:#82756c;font:10px Arial,sans-serif;display:flex;justify-content:space-between
}
@media(max-width:1200px){
  .mast-frame{grid-template-columns:1fr 1fr}
  .mast-copy{grid-column:1/-1;grid-row:1;border-left:0;border-right:0;border-bottom:2px solid #5b1b07}
  .editorial-grid{grid-template-columns:1fr 1fr}
  .rail{grid-column:1/-1}
}
@media(max-width:760px){
  .mast-frame{grid-template-columns:1fr;padding:8px}
  .mast-copy{grid-column:auto;grid-row:auto}
  .mast-copy nav{justify-content:flex-start;overflow-x:auto;font-size:12px}
  .copy-inner h1{font-size:35px}
  .editorial-grid{grid-template-columns:1fr}
}


/* v9.1 populate-ready: hard wrapping safeguards */
.feed,
.rail,
.post,
.rail-item,
.mast-copy,
.copy-inner {
  min-width: 0;
}

.title,
.excerpt,
.post p,
.rail-item p,
.rail-item h3,
.rail-item strong,
.copy-inner p,
.copy-inner h1 {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: normal;
  hyphens: auto;
}

.title {
  display: block;
}

.post,
.rail-item {
  overflow: hidden;
}

/* Long URLs or unbroken strings should never push into another column. */
.post a,
.rail a {
  overflow-wrap: anywhere;
}
