/*
Theme Name: GeneratePress Child
Template: generatepress
Description: Child theme for dorismiller.org — navy chrome on light ground, Oswald + Public Sans + IBM Plex Mono.
Version: 1.0.0
*/

/* ============================================================
   Design tokens
   ============================================================ */
:root{
  --navy:#16324E;
  --navy-deep:#0E2237;
  --navy-mid:#294F73;
  --navy-line:#2E5075;
  --on-navy:#E9F0F5;
  --on-navy-dim:#A9BECE;

  --ground:#F2F5F7;
  --paper:#FFFFFF;
  --ink:#14212C;
  --slate:#4A5C6B;
  --hair:#CBD6DE;
  --hair-strong:#A3B4C0;

  --brass:#8A6414;
  --brass-bright:#D9AE5F;
  --link:#1F4C7A;

  --display:"Oswald","Arial Narrow",Impact,sans-serif;
  --body:"Public Sans",-apple-system,"Segoe UI",Helvetica,Arial,sans-serif;
  --doc:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;

  --col:42rem;
  --wide:64rem;
}

/* ============================================================
   Base
   ============================================================ */
body{
  background:var(--ground) !important;
  color:var(--ink) !important;
  font-family:var(--body) !important;
  font-size:1.075rem !important;
  line-height:1.68 !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,h5,h6,
.gb-headline-h1:not(#_),.gb-headline-h2:not(#_),.gb-headline-h3:not(#_),
.gb-headline-h4:not(#_),.gb-headline-h5:not(#_),.gb-headline-h6:not(#_){
  font-family:var(--display) !important;
  color:var(--navy);
  text-transform:none;
}
h1,.gb-headline-h1:not(#_){
  font-weight:700;font-size:clamp(3.4rem,8.4vw,6.4rem);
  line-height:.9;letter-spacing:.004em;text-transform:uppercase;
}
h2,.gb-headline-h2:not(#_){
  font-weight:600;font-size:clamp(2rem,4.1vw,2.85rem);
  line-height:1.1;text-wrap:balance;
}
h3,.gb-headline-h3:not(#_){font-weight:600;font-size:1.42rem;line-height:1.22}
h4,.gb-headline-h4:not(#_){font-weight:500;font-size:.88rem;letter-spacing:.15em;text-transform:uppercase}

p{margin:0 0 1.25rem}
p:last-child{margin-bottom:0}

.entry-content a,.gb-container a,.gb-text a{
  color:var(--link);text-decoration:none;
  border-bottom:1px solid rgba(31,76,122,.35);
}
.entry-content a:hover,.gb-container a:hover,.gb-text a:hover{
  color:var(--brass);border-bottom-color:var(--brass);
}

/* ============================================================
   HEADER / TOPBAR — GeneratePress "nav as header"
   ============================================================ */
.main-navigation{
  background:var(--navy) !important;
  border-bottom:3px solid var(--brass-bright);
}
.main-navigation .inside-navigation{
  max-width:var(--wide) !important;
  margin:0 auto !important;
  padding:1.5rem 1.75rem !important;
  min-height:0 !important;
  gap:2rem;
  align-items:center;
  justify-content:space-between;
}

/* Cancel GP Menu Plus inline rule that sets .main-title line-height to the
   entire nav height (which pins the wordmark to the top edge and squashes
   the tagline against the bottom). We control vertical rhythm via padding. */
.main-navigation .navigation-branding .main-title,
.main-navigation .navigation-branding .main-title a{
  line-height:1 !important;
  margin:0 !important;
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
}
.main-navigation .navigation-branding{
  padding:0 !important;
  min-height:0 !important;
  height:auto !important;
}
.main-navigation .main-nav > ul,
.main-navigation .main-nav > ul > li,
.main-navigation .main-nav > ul > li > a{
  min-height:0 !important;
  height:auto !important;
}
.main-navigation .main-nav > ul > li > a{ line-height:1 !important; }

/* Wordmark (site title acting as brand in nav) */
.main-navigation .navigation-branding .main-title,
.main-navigation .navigation-branding .main-title a{
  font-family:var(--display);font-weight:600;font-size:1.28rem;
  letter-spacing:.09em;text-transform:uppercase;color:#FFF !important;
  line-height:1;border:0;text-decoration:none;
}
.main-navigation .navigation-branding .main-title a:hover{color:var(--brass-bright) !important}
.main-navigation .navigation-branding .site-description,
.main-navigation .navigation-branding .dm-tagline{
  display:block;font-family:var(--body);font-weight:400;font-size:.7rem;
  letter-spacing:.13em;text-transform:uppercase;color:var(--on-navy-dim);
  margin-top:.4rem;line-height:1.2;
}
/* Stack wordmark + tagline so the tagline sits under the title, not beside it */
.main-navigation .navigation-branding{
  display:flex;flex-direction:column;align-items:flex-start;justify-content:center;
}
.main-navigation .navigation-branding .main-title{margin:0;padding:0}
.main-navigation .navigation-branding .main-title a{display:inline-block}

/* Menu items */
.main-navigation .main-nav ul li a{
  font-family:var(--display) !important;font-weight:500 !important;
  font-size:.92rem !important;letter-spacing:.08em !important;
  text-transform:uppercase !important;color:var(--on-navy) !important;
  padding:0 0 .18rem !important;line-height:1 !important;
  border-bottom:2px solid transparent !important;
  height:auto !important;margin:0 .8rem !important;
}
.main-navigation .main-nav ul{align-items:center;gap:.3rem .5rem}
.main-navigation .main-nav ul li a:hover,
.main-navigation .main-nav ul li.current-menu-item a,
.main-navigation .main-nav ul li[aria-current] a{
  color:var(--brass-bright) !important;
  border-bottom-color:var(--brass-bright) !important;
  background:transparent !important;
}

/* Mobile menu — give each item generous top/bottom room. Applies across the whole GP
   Menu Plus mobile-menu breakpoint (≤980px in this build), so items are properly spaced
   from 320px phones through 980px tablets. */
@media (max-width: 980px){
  .main-navigation .main-nav > ul > li > a,
  .main-navigation .main-nav ul.menu > li > a,
  .main-navigation ul.menu li.menu-item a{
    padding: 1.15rem 1.75rem !important;
    margin: 0 !important;
    border-bottom: 1px solid rgba(233,240,245,.12) !important;
    line-height: 1.4 !important;
    display: block;
  }
  .main-navigation .main-nav ul.menu > li:last-child > a{
    border-bottom: 0 !important;
  }
  .main-navigation .main-nav ul.menu{
    padding-top: .5rem;
    padding-bottom: .5rem;
  }
  .main-navigation .main-nav ul.menu > li{
    display: block;
    width: 100%;
  }
}

/* Mobile menu toggle */
.main-navigation .menu-toggle,
.main-navigation .mobile-menu-control-wrapper .menu-toggle{
  color:var(--on-navy) !important;background:transparent !important;
  font-family:var(--display);font-weight:500;letter-spacing:.08em;
  text-transform:uppercase;
}

/* Sticky nav (GP Menu Plus) keeps the same look */
.main-navigation.navigation-stick,.main-navigation.is_stuck{
  background:var(--navy) !important;
  border-bottom:3px solid var(--brass-bright) !important;
}

/* ============================================================
   PAGE HEAD — navy compact hero for inner pages (.pagehead)
   ============================================================ */
.dm-pagehead{
  background:var(--navy);color:var(--on-navy);
}
.dm-pagehead .gb-inside-container,
.dm-pagehead > .gb-container-inside{padding:3.75rem 1.75rem 2.5rem}
.dm-pagehead h1,.dm-pagehead .gb-headline-h1{
  color:#FFF !important;font-size:clamp(2.6rem,6.4vw,4.4rem) !important;
  line-height:.96 !important;max-width:16ch;
}
.dm-pagehead .dm-standfirst,.dm-pagehead p{
  color:var(--on-navy);font-size:clamp(1.14rem,1.9vw,1.28rem);
  line-height:1.6;max-width:40rem;
}
.dm-pagehead .dm-standfirst b,.dm-pagehead b{color:var(--brass-bright)}

.dm-crumbs{
  font-family:var(--display);font-weight:500;font-size:.9rem;
  letter-spacing:.15em;text-transform:uppercase;color:var(--brass-bright);
  margin:0 0 1.3rem;
}
.dm-crumbs a{color:var(--brass-bright);border-bottom:1px solid rgba(217,174,95,.4)}
.dm-crumbs a:hover{color:#FFF;border-bottom-color:#FFF}

/* Provenance strip */
.dm-provenance{
  background:var(--navy);
  padding:0 1.75rem 2.5rem;
  display:flex;flex-wrap:wrap;gap:.5rem 3rem;
  max-width:var(--wide);margin:0 auto;
}
.dm-prov-item{font-family:var(--doc);font-size:.82rem;line-height:1.7;color:var(--on-navy-dim);margin:0}
.dm-prov-item b{
  display:block;font-family:var(--display);font-weight:500;font-size:.8rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--brass-bright);
  margin-bottom:.15rem;
}

/* ============================================================
   LIGHT HERO (homepage) — headline + portrait, ship wash
   ============================================================ */
.dm-hero{position:relative;overflow:hidden;background:var(--ground)}
.dm-hero::before{
  content:"";position:absolute;left:0;right:0;bottom:0;height:82%;z-index:0;
  pointer-events:none;
  background-image:url(/wp-content/uploads/2026/08/80-g-19930-uss-west-virginia-pearl-harbor.jpeg);
  background-repeat:no-repeat;background-position:center 26%;background-size:cover;
}
.dm-hero::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(to bottom,
    var(--ground) 0%, var(--ground) 17%,
    rgba(242,245,247,.90) 34%,
    rgba(242,245,247,.68) 56%,
    rgba(242,245,247,.58) 100%);
}
.dm-hero > .gb-inside-container,
.dm-hero .dm-hero-grid{position:relative;z-index:1}
.dm-hero-kicker{
  font-family:var(--display);font-weight:500;font-size:.95rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--brass);
  margin:0 0 1.5rem;padding-left:3.4rem;position:relative;
}
.dm-hero-kicker::before{
  content:"";position:absolute;left:0;top:.72em;width:2.6rem;height:2px;background:var(--brass);
}
.dm-rate{
  font-family:var(--body);font-weight:600;font-size:clamp(.8rem,1.5vw,.92rem);
  letter-spacing:.11em;text-transform:uppercase;color:var(--slate);
  margin:1.4rem 0 0;line-height:1.7;
  border-top:1px solid var(--hair-strong);padding-top:1.2rem;max-width:30rem;
}
.dm-standfirst{
  font-size:clamp(1.14rem,1.9vw,1.28rem);line-height:1.6;margin:1.6rem 0 0;
  max-width:34rem;color:var(--ink);
}
.dm-standfirst b{font-weight:700;color:var(--navy)}

.dm-hero-portrait figure,.dm-hero-portrait img{margin:0}
.dm-hero-portrait img{
  width:100%;border-top:4px solid var(--brass-bright);
  filter:contrast(1.03);background:var(--hair);
}
.dm-hero-portrait figcaption{
  font-family:var(--doc);font-size:.86rem;line-height:1.72;color:var(--ink);
  margin-top:.8rem;border-top:1px solid var(--hair-strong);padding-top:.75rem;
}
.dm-hero-portrait figcaption b{color:var(--brass);font-weight:500}

/* ============================================================
   SECTION SPACING — top padding is inline via block styles.
   Add a proper bottom rest to light sections so they don't butt
   into the next block. .dm-moment, .dm-plate, and .dm-hero keep
   their own padding rules and are excluded.
   ============================================================ */
.entry-content > section:not(.dm-hero):not(.dm-moment):not(.dm-plate){
  padding-bottom: 3rem;
}
/* Last section keeps only its own inline padding — no extra buffer above the footer */
.entry-content > section:last-child{ padding-bottom: 0 !important; }
.entry-content > section:last-child > *{ padding-bottom: 0 !important; margin-bottom: 0 !important; }

/* Zero GP's default wrappers so the footer brass border sits flush against
   the last content section instead of floating below a gap. */
.site,
.site-content,
.inside-site-content,
#content,
.site-main,
.inside-article,
.entry-content{
  padding-bottom:0 !important;
  margin-bottom:0 !important;
}
.site-content{padding-top:0 !important;margin-top:0 !important}
.entry-content > *:last-child{margin-bottom:0 !important}

/* And the footer element itself — no top margin pushing the brass border down */
#colophon,
.site-footer,
footer#colophon{ margin-top:0 !important; padding-top:0 !important; }

/* ============================================================
   MARKER (small brass eyebrow with dash)
   ============================================================ */
.dm-marker{
  font-family:var(--display);font-weight:500;font-size:.9rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--brass);
  margin:0 0 1.5rem;display:flex;align-items:center;gap:.9rem;
}
.dm-marker::before{content:"";width:2.6rem;height:2px;background:var(--brass);flex:none}

/* Lede paragraph */
.dm-lede{font-size:1.2rem;line-height:1.6}

/* ============================================================
   MOMENT — full-bleed navy typed sentence
   ============================================================ */
.dm-moment{background:var(--navy);color:var(--on-navy);padding:4.5rem 0}
.dm-moment .gb-inside-container{max-width:52rem;margin:0 auto;padding:0 1.75rem}
.dm-moment .dm-doc-head{
  font-family:var(--display);font-weight:500;font-size:.9rem;
  letter-spacing:.16em;text-transform:uppercase;color:var(--brass-bright);
  margin:0 0 2.25rem;display:flex;align-items:center;gap:.9rem;
}
.dm-moment .dm-doc-head::before{
  content:"";width:2.6rem;height:2px;background:var(--brass-bright);flex:none;
}
.dm-moment blockquote,.dm-moment .dm-quote{
  margin:0;font-family:var(--doc);font-weight:400;
  font-size:clamp(1.08rem,2.15vw,1.62rem);line-height:1.72;color:#FFF;max-width:48rem;
}
.dm-moment .dm-quote u,.dm-moment blockquote u{text-decoration:none;color:var(--brass-bright)}
.dm-moment .dm-src{
  font-size:1rem;line-height:1.6;color:var(--on-navy-dim);max-width:42rem;
  border-top:1px solid var(--navy-line);margin:2.75rem 0 0;padding-top:1.1rem;
}
.dm-moment .dm-src b{color:var(--on-navy);font-weight:600}

/* ============================================================
   PLATE — navy section on inner pages
   ============================================================ */
.dm-plate{background:var(--navy);color:var(--on-navy)}
.dm-plate h1,.dm-plate h2,.dm-plate h3,.dm-plate h4,
.dm-plate .gb-headline-h2:not(#_),.dm-plate .gb-headline-h3:not(#_){color:#FFF !important}
.dm-plate p,.dm-plate li,.dm-plate .dm-lede{color:var(--on-navy)}
.dm-plate a{color:var(--brass-bright);border-bottom-color:rgba(217,174,95,.4)}
.dm-plate a:hover{color:#FFF;border-bottom-color:#FFF}
.dm-plate .dm-marker{color:var(--brass-bright)}
.dm-plate .dm-marker::before{background:var(--brass-bright)}

/* ============================================================
   IMAGE + CREDIT (figure)
   ============================================================ */
.dm-plate-img{margin:2.75rem 0}
.dm-plate-img img{width:100%;background:var(--hair)}
.dm-plate-img figcaption,.wp-block-image figcaption{
  font-family:var(--doc);font-size:.86rem;line-height:1.78;color:var(--ink);
  border-top:1px solid var(--hair-strong);padding-top:.75rem;margin-top:.75rem;text-align:left;
}
.dm-plate-img figcaption b,.wp-block-image figcaption b{color:var(--brass);font-weight:500}

/* ============================================================
   EXCERPT (quieter in-flow doc quote)
   ============================================================ */
.dm-excerpt{
  background:var(--paper);border-left:4px solid var(--brass);
  padding:1.6rem 1.75rem 1.45rem;margin:2.25rem 0;
}
.dm-excerpt .dm-doc-head{
  font-family:var(--display);font-weight:500;font-size:.82rem;
  letter-spacing:.13em;text-transform:uppercase;color:var(--brass);margin:0 0 1rem;
}
.dm-excerpt blockquote,.dm-excerpt .dm-quote{
  margin:0;font-family:var(--doc);font-size:.92rem;line-height:1.8;color:var(--ink);
}
.dm-excerpt .dm-src{
  font-size:.9rem;line-height:1.6;color:var(--slate);
  border-top:1px solid var(--hair);margin:1.2rem 0 0;padding-top:.8rem;
}

/* ============================================================
   FLAG callout (contested claim)
   ============================================================ */
.dm-flag{
  border:2px solid var(--brass);border-left-width:6px;
  background:var(--paper);padding:1.75rem 1.9rem;
}
.dm-flag .dm-flag-label{
  font-family:var(--display);font-weight:600;font-size:.85rem;
  letter-spacing:.15em;text-transform:uppercase;color:var(--brass);
  margin:0 0 .85rem;
}
.dm-flag h3,.dm-flag .gb-headline-h3{font-size:1.55rem;margin:0 0 .6rem}
.dm-flag .dm-flag-more{
  font-family:var(--display);font-weight:600;font-size:.95rem;
  letter-spacing:.09em;text-transform:uppercase;color:var(--navy);
  border-bottom:2px solid var(--brass);padding-bottom:.18rem;
}
.dm-flag .dm-flag-more:hover{color:var(--brass);border-bottom-color:var(--navy)}

/* ============================================================
   TIMELINE
   ============================================================ */
.dm-timeline{
  list-style:none;margin:2.25rem 0 0;padding:0 0 0 1.9rem;
  border-left:2px solid var(--hair-strong);
}
.dm-timeline li{position:relative;padding:0 0 1.6rem}
.dm-timeline li::before{
  content:"";position:absolute;left:-1.9rem;top:.48rem;width:11px;height:11px;
  background:var(--ground);border:2px solid var(--hair-strong);
  transform:translateX(-6.5px);border-radius:50%;
}
.dm-timeline li.mark::before{background:var(--brass);border-color:var(--brass)}
.dm-timeline .t-date{
  display:block;font-family:var(--display);font-weight:600;font-size:.88rem;
  letter-spacing:.11em;text-transform:uppercase;color:var(--brass);margin-bottom:.2rem;
}

/* ============================================================
   RAIL ROW (11rem margin note + main reading column)
   ============================================================ */
.dm-rail-row{
  display:grid;grid-template-columns:11rem minmax(0,var(--col));
  column-gap:2.75rem;align-items:start;justify-content:center;
}
.dm-rail{
  font-size:.9rem;line-height:1.6;color:var(--slate);
  padding-top:.6rem;border-top:2px solid var(--hair-strong);
}
.dm-rail b{
  display:block;font-family:var(--display);font-weight:600;font-size:.82rem;
  letter-spacing:.11em;text-transform:uppercase;color:var(--brass);margin-bottom:.5rem;
}

/* ============================================================
   ENTRIES (site index list on homepage)
   ============================================================ */
.dm-entries{margin-top:2rem;border-top:2px solid var(--hair-strong)}
.dm-entry{padding:1.35rem 0 1.3rem;border-bottom:1px solid var(--hair)}
.dm-entry a.dm-e-title{
  font-family:var(--display);font-weight:600;font-size:1.4rem;color:var(--navy);
  border-bottom:2px solid transparent;text-decoration:none;
}
.dm-entry a.dm-e-title:hover{color:var(--brass);border-bottom-color:var(--brass)}
.dm-entry .dm-e-meta{
  font-family:var(--body);font-weight:700;font-size:.68rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--brass);
  margin-left:.8rem;vertical-align:.22em;
}
.dm-entry p{font-size:1rem;line-height:1.55;color:var(--slate);margin:.3rem 0 0}

/* ============================================================
   SOURCES + PAGENAV
   ============================================================ */
.dm-sources{border-top:3px solid var(--brass);margin-top:3rem;padding-top:1.75rem}
.dm-sources h2,.dm-sources .gb-headline-h2{font-size:1.45rem;margin-bottom:1rem}
.dm-sources ol{margin:0;padding-left:1.35rem}
.dm-sources li{font-size:.88rem;line-height:1.55;margin-bottom:.7rem;color:var(--slate)}
.dm-sources .dm-s-note{font-size:.85rem;line-height:1.6;color:var(--slate);margin-top:1.4rem}

.dm-pagenav{
  border-top:2px solid var(--hair-strong);margin-top:3rem;margin-bottom:4rem;padding-top:1.6rem;
  display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;
}
.dm-pagenav > *{margin:0}
.dm-pagenav > :last-child{text-align:right}
.dm-pagenav .dm-pn-label{
  display:block;font-family:var(--display);font-weight:600;font-size:.82rem;
  letter-spacing:.14em;text-transform:uppercase;color:var(--brass);margin-bottom:.35rem;
}
.dm-pagenav a{
  font-family:var(--display);font-weight:600;font-size:1.28rem;
  color:var(--navy);border-bottom:none;text-decoration:none;
}
.dm-pagenav a:hover{color:var(--brass)}

/* ============================================================
   TRUST FOOTER (site footer element)
   ============================================================ */
.dm-trust{background:var(--navy-deep);color:var(--on-navy);border-top:3px solid var(--brass-bright)}
.dm-trust h4,.dm-trust .gb-headline-h4{
  font-family:var(--display) !important;font-weight:500 !important;
  font-size:.88rem !important;letter-spacing:.15em !important;
  text-transform:uppercase !important;color:var(--brass-bright) !important;
  margin:0 0 .95rem !important;
}
.dm-trust ul{list-style:none;margin:0;padding:0}
.dm-trust li{margin-bottom:.55rem}
.dm-trust a{
  color:var(--brass-bright) !important;
  border-bottom:1px solid rgba(217,174,95,.55) !important;
}
.dm-trust a:hover{color:#FFF !important;border-bottom-color:#FFF !important}
.dm-trust li a{font-size:1rem;font-weight:600}
.dm-trust .dm-statement{font-size:1.04rem;line-height:1.6;color:var(--on-navy);margin:0}
.dm-trust-legal{
  margin-top:3rem;padding-top:1.35rem;border-top:1px solid var(--navy-line);
  font-size:.84rem;line-height:1.8;color:var(--on-navy-dim);
}
.dm-trust-legal p{margin:0 0 .4rem;color:var(--on-navy-dim)}

/* GP footer wrappers get out of the way — dm-trust owns full width */
.site-footer{
  background:var(--navy-deep) !important;
  padding:0 !important;
  width:100% !important;
  max-width:none !important;
  border-top:3px solid var(--brass-bright) !important;
}
.site-footer .inside-site-footer,
.site-footer > .grid-container,
.footer-widgets,
.footer-widgets-container,
.site-info{
  padding:0 !important;
  margin:0 !important;
  max-width:none !important;
  width:100% !important;
  background:transparent !important;
  border-top:0 !important;
}
/* Default GP copyright bar hidden — our dm-trust-legal replaces it */
.site-info{display:none !important}

/* Kill the inner brass border on .dm-trust — the border now lives on the
   outer #colophon so it's guaranteed to sit at the true top edge of the
   footer element, not below any wrapper padding. */
.dm-trust{ border-top:0 !important; }

/* ============================================================
   DATA TABLES
   ============================================================ */
.dm-table-wrap{overflow-x:auto;margin:2rem 0}
table.dm-data{width:100%;border-collapse:collapse;font-size:.98rem;min-width:30rem}
table.dm-data th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;color:var(--brass);
  border-bottom:2px solid var(--brass);padding:.55rem 1rem .55rem 0;
}
table.dm-data td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--hair);
  vertical-align:top;line-height:1.5;
}
table.dm-data td b{color:var(--navy)}

/* ============================================================
   MYTHS — claim list
   ============================================================ */
.dm-claim{border-top:2px solid var(--hair-strong);padding:1.6rem 0 0;margin:0 0 2.2rem}
.dm-claim .dm-verdict{
  font-family:var(--display);font-weight:600;font-size:.8rem;
  letter-spacing:.13em;text-transform:uppercase;margin:0 0 .5rem;
}
.dm-claim .dm-verdict.false{color:#8A2B1E}
.dm-claim .dm-verdict.unsupported{color:var(--brass)}
.dm-claim .dm-verdict.true{color:#1F5C3D}
.dm-claim .dm-verdict.mixed{color:var(--link)}

/* ============================================================
   SOURCE LIST
   ============================================================ */
ol.dm-src-list{margin:1.75rem 0 0;padding-left:1.4rem}
ol.dm-src-list li{margin-bottom:1rem;line-height:1.6}
.dm-plate ol.dm-src-list li{color:var(--on-navy)}

/* ============================================================
   LEGAL / TODO callout
   ============================================================ */
.dm-legal h3{margin-top:2.25rem}
.dm-legal .dm-updated{
  font-family:var(--doc);font-size:.85rem;color:var(--slate);
  border-top:2px solid var(--hair-strong);padding-top:.85rem;margin-top:2.5rem;
}
.dm-todo{
  border-left:4px solid var(--brass);background:var(--paper);
  padding:1.1rem 1.3rem;margin:1.5rem 0;font-size:.95rem;line-height:1.6;
}
.dm-todo b{
  font-family:var(--display);font-weight:600;letter-spacing:.08em;
  text-transform:uppercase;font-size:.82rem;color:var(--brass);
  display:block;margin-bottom:.4rem;
}

/* ============================================================
   FORMINATOR overrides so the contact form matches the site
   ============================================================ */
.forminator-ui.forminator-custom-form label{
  font-family:var(--display) !important;font-weight:600 !important;
  font-size:.92rem !important;letter-spacing:.08em !important;
  text-transform:uppercase !important;color:var(--navy) !important;
}
.forminator-ui.forminator-custom-form input[type=text],
.forminator-ui.forminator-custom-form input[type=email],
.forminator-ui.forminator-custom-form textarea{
  font-family:var(--body) !important;font-size:1rem !important;
  padding:.72rem .85rem !important;border:2px solid var(--hair-strong) !important;
  background:var(--paper) !important;border-radius:0 !important;color:var(--ink) !important;
}
.forminator-ui.forminator-custom-form button[type=submit],
.forminator-ui.forminator-custom-form .forminator-button-submit,
.forminator-ui.forminator-custom-form .forminator-button.forminator-button-submit,
html body.page-id-697 .forminator-ui .forminator-button-submit,
html body.page-id-697 .forminator-ui button.forminator-button.forminator-button-submit{
  display:inline-block !important;width:auto !important;min-width:0 !important;height:auto !important;
  font-family:var(--display) !important;font-weight:600 !important;
  font-size:.98rem !important;letter-spacing:.1em !important;
  text-transform:uppercase !important;text-align:center !important;
  padding:.9rem 2.4rem !important;border:0 !important;border-radius:0 !important;
  background:var(--navy) !important;background-color:var(--navy) !important;color:#FFF !important;
  cursor:pointer !important;line-height:1.2 !important;
  box-shadow:none !important;text-shadow:none !important;text-decoration:none !important;
  transition:background-color .15s ease !important;
  margin-top:.5rem !important;
}
.forminator-ui.forminator-custom-form button[type=submit]:hover,
.forminator-ui.forminator-custom-form .forminator-button-submit:hover,
.forminator-ui.forminator-custom-form .forminator-button.forminator-button-submit:hover,
html body.page-id-697 .forminator-ui .forminator-button-submit:hover,
html body.page-id-697 .forminator-ui button.forminator-button.forminator-button-submit:hover{background:var(--brass) !important;background-color:var(--brass) !important;color:#FFF !important}
.forminator-ui.forminator-custom-form button[type=submit]:focus-visible,
.forminator-ui.forminator-custom-form .forminator-button-submit:focus-visible,
html body.page-id-697 .forminator-ui .forminator-button-submit:focus-visible{
  outline:2px solid var(--ink) !important;outline-offset:2px !important;
}

/* ============================================================
   404
   ============================================================ */
.dm-404{background:var(--navy);color:var(--on-navy);padding:6rem 0}
.dm-404 h1{color:#FFF !important;font-size:clamp(4rem,10vw,7rem)}
.dm-404 p{color:var(--on-navy);font-size:1.2rem}
.dm-404 .wp-block-button__link,
.dm-404 .gb-button{
  background:var(--brass-bright) !important;color:var(--navy-deep) !important;
  font-family:var(--display);font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;padding:.85rem 2rem;border-radius:0;
}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:960px){
  .dm-hero .dm-hero-grid{grid-template-columns:1fr !important;gap:2.5rem !important}
  .dm-hero::before{opacity:.14;background-position:right -20% bottom -8%;background-size:130% auto}
}
@media (max-width:720px){
  :root{--col:100%}
  .dm-rail-row{grid-template-columns:1fr;row-gap:1rem}
  .main-navigation .inside-navigation{flex-direction:column;align-items:flex-start;gap:1rem}
  .dm-hero-kicker{padding-left:0}
  .dm-hero-kicker::before{display:none}
  .dm-pagenav{grid-template-columns:1fr}
  .dm-pagenav > :last-child{text-align:left}
}


/* =====================================================
   INNER PAGES \u2014 pagehead body + rail-row + plate + col-only
   ===================================================== */
.dm-pagehead-body{max-width:var(--wide);margin:0 auto;padding:3.75rem 1.75rem 2.5rem}

section.dm-rail-row,.dm-rail-row{
  max-width:var(--wide);margin:0 auto;padding:4.5rem 1.75rem;
  display:grid;grid-template-columns:11rem minmax(0,var(--col));
  column-gap:2.75rem;align-items:start;justify-content:center;
}

.dm-plate{padding:4.5rem 0;background:var(--navy);color:var(--on-navy)}
.dm-plate .dm-rail-row,.dm-plate section.dm-rail-row{padding-top:0;padding-bottom:0}
.dm-plate .dm-rail-row + .dm-rail-row,.dm-plate section.dm-rail-row + section.dm-rail-row{margin-top:4.5rem}
section.dm-rail-row + section.dm-rail-row,.dm-rail-row + .dm-rail-row{padding-top:0}
.dm-plate + .dm-plate,.dm-plate + section.dm-rail-row,section.dm-rail-row + .dm-plate{margin-top:0}

section.dm-col-only,.dm-col-only{
  max-width:var(--wide);margin:0 auto;padding:4.5rem 1.75rem;
}
.dm-col-only > *{max-width:var(--col);margin-left:auto;margin-right:auto}
.dm-plate .dm-col-only > *{max-width:var(--col)}

.dm-rail .dm-rail-more{display:block;font-style:italic;font-size:.82rem;margin-top:.6rem;color:var(--slate)}

.dm-plate .dm-rail{color:var(--on-navy-dim);border-top-color:var(--navy-line)}
.dm-plate .dm-rail b{color:var(--brass-bright)}
.dm-plate .dm-rail .dm-rail-more{color:var(--on-navy-dim)}

.dm-plate .dm-excerpt{background:var(--navy-mid);border-left-color:var(--brass-bright)}
.dm-plate .dm-excerpt .dm-doc-head{color:var(--brass-bright)}
.dm-plate .dm-excerpt blockquote,.dm-plate .dm-excerpt .dm-quote{color:#FFF}
.dm-plate .dm-excerpt .dm-src{color:var(--on-navy-dim);border-top-color:var(--navy-line)}

.dm-plate-img.dm-inset{max-width:34rem;margin-left:auto;margin-right:auto}

.dm-plate .dm-flag{background:var(--navy-mid);border-color:var(--brass-bright);color:#FFF}
.dm-plate .dm-flag h3,.dm-plate .dm-flag .dm-flag-label{color:var(--brass-bright)}
.dm-plate .dm-flag p{color:var(--on-navy)}
.dm-plate .dm-flag .dm-flag-more{color:#FFF;border-bottom-color:var(--brass-bright)}
.dm-plate .dm-flag .dm-flag-more:hover{color:var(--brass-bright);border-bottom-color:#FFF}

.dm-plate table.dm-data th{color:var(--brass-bright);border-bottom-color:var(--brass-bright)}
.dm-plate table.dm-data td{color:var(--on-navy);border-bottom-color:var(--navy-line)}
.dm-plate table.dm-data td b{color:#FFF}

.dm-plate .dm-plate-img figcaption{color:var(--on-navy);border-top-color:var(--navy-line)}
.dm-plate .dm-plate-img figcaption b{color:var(--brass-bright)}

.dm-plate .dm-sources{border-top-color:var(--brass-bright)}
.dm-plate .dm-sources ol li{color:var(--on-navy)}
.dm-plate .dm-sources .dm-s-note{color:var(--on-navy-dim)}
.dm-plate .dm-sources a{color:var(--brass-bright)}

.dm-plate .dm-pagenav{border-top-color:var(--navy-line)}
.dm-plate .dm-pagenav a{color:#FFF}
.dm-plate .dm-pagenav a:hover{color:var(--brass-bright)}
.dm-plate .dm-pagenav .dm-pn-label{color:var(--brass-bright)}

.dm-col form.contact-form{margin-top:2rem}
.dm-col form.contact-form .field{margin-bottom:1.6rem}
.dm-col form.contact-form label{
  font-family:var(--display);font-weight:600;font-size:.92rem;
  letter-spacing:.08em;text-transform:uppercase;color:var(--navy);
  display:block;margin-bottom:.5rem;
}
.dm-col form.contact-form input[type=text],
.dm-col form.contact-form input[type=email],
.dm-col form.contact-form textarea{
  font-family:var(--body);font-size:1rem;width:100%;
  padding:.72rem .85rem;border:2px solid var(--hair-strong);
  background:var(--paper);color:var(--ink);border-radius:0;box-sizing:border-box;
}
.dm-col form.contact-form textarea{min-height:12rem;resize:vertical}
.dm-col form.contact-form .hint{display:block;margin-top:.4rem;font-size:.85rem;color:var(--slate);line-height:1.5}
.dm-col form.contact-form button[type=submit]{
  font-family:var(--display);font-weight:600;font-size:.98rem;
  letter-spacing:.1em;text-transform:uppercase;
  padding:.85rem 2rem;border:0;border-radius:0;
  background:var(--navy);color:#FFF;cursor:pointer;
}
.dm-col form.contact-form button[type=submit]:hover{background:var(--brass)}

@media (max-width:720px){
  section.dm-rail-row,.dm-rail-row{grid-template-columns:1fr;padding-top:3rem;row-gap:1rem}
  .dm-plate{padding:3rem 0}
  .dm-pagehead-body{padding:3rem 1.5rem 2rem}
  section.dm-col-only,.dm-col-only{padding:3rem 1.5rem 0}
}


/* dm-forminator — tone the Forminator contact form to match the site design */
.forminator-ui.forminator-custom-form{
  max-width:none;margin:2rem 0 0;padding:0;background:transparent;font-family:var(--body);
}
.forminator-ui.forminator-custom-form .forminator-row{margin-bottom:1.25rem}
.forminator-ui.forminator-custom-form .forminator-label{
  font-family:var(--doc);font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;
  color:var(--slate);font-weight:600;margin-bottom:.55rem;display:block;
}
.forminator-ui.forminator-custom-form .forminator-input,
.forminator-ui.forminator-custom-form .forminator-textarea,
.forminator-ui.forminator-custom-form input[type=text],
.forminator-ui.forminator-custom-form input[type=email],
.forminator-ui.forminator-custom-form textarea{
  width:100%;font-family:var(--body);font-size:1rem;line-height:1.5;color:var(--ink);
  background:#fff;border:1px solid var(--hair-strong);border-radius:0;
  padding:.75rem .9rem;box-shadow:none;transition:border-color .15s ease;
}
.forminator-ui.forminator-custom-form .forminator-input:focus,
.forminator-ui.forminator-custom-form .forminator-textarea:focus,
.forminator-ui.forminator-custom-form input[type=text]:focus,
.forminator-ui.forminator-custom-form input[type=email]:focus,
.forminator-ui.forminator-custom-form textarea:focus{
  outline:none;border-color:var(--navy);box-shadow:0 0 0 2px rgba(22,50,78,.12);
}
.forminator-ui.forminator-custom-form .forminator-textarea,
.forminator-ui.forminator-custom-form textarea{min-height:10rem;resize:vertical}
.forminator-ui.forminator-custom-form .forminator-required{color:var(--brass)}
.forminator-ui.forminator-custom-form .forminator-error-message{
  font-family:var(--doc);font-size:.78rem;color:#8A2B1E;margin-top:.35rem;
}
.forminator-ui.forminator-custom-form .forminator-response-message.forminator-success{
  font-family:var(--body);color:var(--ink);border-left:3px solid var(--brass);
  padding:1rem 1.25rem;background:#fff;margin-top:1rem;
}
.forminator-ui.forminator-custom-form .forminator-description{
  font-family:var(--body);font-size:.85rem;color:var(--slate);margin-top:.35rem;
}


/* dm-bottom-spacing — guarantee breathing room below the pagenav on every inner page,
   regardless of whether the last section sits inside a plate, an adjacent rail-row, or the
   theme's own content wrapper. */
.dm-plate:last-child .dm-pagenav,
.dm-plate:last-child .dm-rail-row:last-child .dm-pagenav{margin-bottom:0}
.dm-plate:last-child{padding-bottom:5.5rem}
.entry-content > section.dm-rail-row:last-child{padding-bottom:5.5rem}
.entry-content > .dm-plate:last-child + *{margin-top:0}


/* dm-ships-liscome-bay — exact match to the source template for the Liscome Bay excerpt on page 688 only. */
body.page-id-688 .dm-plate .dm-excerpt{background:var(--navy-deep);border-left-color:var(--brass-bright)}
body.page-id-688 .dm-excerpt blockquote u,
body.page-id-688 .dm-excerpt .wp-block-quote u{text-decoration:none;color:var(--brass);font-weight:500}
body.page-id-688 .dm-plate .dm-excerpt blockquote u,
body.page-id-688 .dm-plate .dm-excerpt .wp-block-quote u{color:var(--brass-bright)}


/* dm-ships-liscome-bay-table — page 688 only. The casualty-figures table now lives as a
   core/html block wrapped in generateblocks/element containers (Main container > Inner
   container > Custom HTML), so the .dm-data class sits on the <table> itself and the
   template's table.data / .plate table.data styling can apply cleanly. Style the table
   the same way the source template does. */
body.page-id-688 .dm-plate .dm-table-wrap{overflow-x:auto;margin:2rem 0;-webkit-overflow-scrolling:touch}
body.page-id-688 .dm-plate .dm-table-inner{margin:0}
body.page-id-688 .dm-plate table.dm-data{
  width:100%;border-collapse:collapse;font-size:.98rem;min-width:30rem;
  margin:0;background:transparent;color:var(--on-navy);
  font-family:var(--body);
}
body.page-id-688 .dm-plate table.dm-data thead th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;
  color:var(--brass-bright);border-bottom:2px solid var(--brass-bright);
  padding:.55rem 1rem .55rem 0;background:transparent;
}
body.page-id-688 .dm-plate table.dm-data tbody td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--navy-line);
  vertical-align:top;line-height:1.5;color:var(--on-navy);background:transparent;
}
body.page-id-688 .dm-plate table.dm-data tbody tr:last-child td{border-bottom:0}
body.page-id-688 .dm-plate table.dm-data tbody td b{color:#FFF;font-weight:600}


/* dm-ships-liscome-bay-responsive — page 688 only.
   Give the inner container of the casualty-figures table 20px left/right padding
   so the table sits inset from the plate edges, and make the entire Liscome Bay
   plate render cleanly on phones. */

/* Inner container padding (all viewports) */
body.page-id-688 .dm-plate .dm-table-inner{padding-left:20px;padding-right:20px}

/* Table remains horizontally scrollable within the padded inner container */
body.page-id-688 .dm-plate .dm-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:2rem 0;padding:0;
}

/* Mobile: tighten the plate and its inner spacing so nothing brushes the screen edge,
   drop the table's min-width so it can compress before it needs to scroll,
   and reduce the excerpt padding + type sizes to match phone reading widths. */
@media (max-width:720px){
  body.page-id-688 .dm-plate{padding:2.5rem 0}
  body.page-id-688 .dm-plate .dm-rail-row{padding-left:1.25rem;padding-right:1.25rem;column-gap:0}
  body.page-id-688 .dm-plate .dm-rail{margin-bottom:1.5rem}
  body.page-id-688 .dm-plate .dm-col{padding:0}

  body.page-id-688 .dm-plate .dm-excerpt{
    padding:1.25rem 1.25rem 1.15rem;margin:1.75rem 0;
  }
  body.page-id-688 .dm-plate .dm-excerpt blockquote,
  body.page-id-688 .dm-plate .dm-excerpt .wp-block-quote{font-size:.9rem;line-height:1.75}
  body.page-id-688 .dm-plate .dm-excerpt .dm-doc-head{font-size:.75rem}
  body.page-id-688 .dm-plate .dm-excerpt .dm-src{font-size:.82rem}

  body.page-id-688 .dm-plate .dm-lede{font-size:1.06rem;line-height:1.55}
  body.page-id-688 .dm-plate h2{font-size:1.75rem;line-height:1.15}
  body.page-id-688 .dm-plate h3{font-size:1.2rem;line-height:1.25}

  /* Table — keep the 20px inner padding, but let the table itself flex smaller
     before it forces horizontal scroll. Also reduce cell padding and font size. */
  body.page-id-688 .dm-plate .dm-table-wrap{margin:1.5rem 0}
  body.page-id-688 .dm-plate .dm-table-inner{padding-left:20px;padding-right:20px}
  body.page-id-688 .dm-plate table.dm-data{
    font-size:.86rem;min-width:0;table-layout:auto;
  }
  body.page-id-688 .dm-plate table.dm-data thead th{
    font-size:.72rem;padding:.5rem .6rem .5rem 0;letter-spacing:.08em;
  }
  body.page-id-688 .dm-plate table.dm-data tbody td{
    padding:.65rem .6rem .65rem 0;line-height:1.45;
  }
  body.page-id-688 .dm-plate table.dm-data thead th:last-child,
  body.page-id-688 .dm-plate table.dm-data tbody td:last-child{padding-right:0}
}

/* Extra-narrow phones (≤400px): allow horizontal scroll on the table by giving it back
   a min-width so column labels stay readable without wrapping badly. */
@media (max-width:400px){
  body.page-id-688 .dm-plate table.dm-data{min-width:22rem}
}

/* dm-blog — styles for the Blog listing page and single-post content template.
   Kept self-contained under .dm-blog-listing (listing) and .dm-single-post (single). */

.dm-blog-listing{max-width:var(--wide);margin:0 auto;padding:4.5rem 1.75rem}
.dm-blog-listing .wp-block-post-template.is-layout-grid{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:2.5rem 2rem;list-style:none;padding:0;margin:0;
}
.dm-blog-listing .wp-block-post-template > li{
  display:flex;flex-direction:column;background:transparent;list-style:none;
}
.dm-blog-listing .wp-block-post-featured-image{margin:0 0 1rem}
.dm-blog-listing .wp-block-post-featured-image img{
  width:100%;height:auto;display:block;object-fit:cover;
}
.dm-blog-listing .wp-block-post-title{
  font-family:var(--display);font-weight:600;font-size:1.35rem;line-height:1.2;
  margin:0 0 .5rem;
}
.dm-blog-listing .wp-block-post-title a{color:var(--navy);text-decoration:none}
.dm-blog-listing .wp-block-post-title a:hover{color:var(--brass)}
.dm-blog-listing .wp-block-post-date{
  font-family:var(--doc);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;
  color:var(--brass);margin:0 0 .75rem;
}
.dm-blog-listing .wp-block-post-date time{color:inherit;text-decoration:none}
.dm-blog-listing .wp-block-post-excerpt{
  font-family:var(--body);font-size:.98rem;line-height:1.55;color:var(--slate);margin:0;
}
.dm-blog-listing .wp-block-post-excerpt__more-link{
  display:inline-block;margin-top:.6rem;
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.06em;
  text-transform:uppercase;color:var(--navy);text-decoration:none;
  border-bottom:2px solid var(--brass);padding-bottom:.15rem;
}
.dm-blog-listing .wp-block-post-excerpt__more-link:hover{color:var(--brass)}

.dm-blog-listing .wp-block-query-pagination{
  margin-top:3.5rem;padding-top:1.6rem;border-top:2px solid var(--hair-strong);
  font-family:var(--display);font-weight:600;letter-spacing:.06em;text-transform:uppercase;
}
.dm-blog-listing .wp-block-query-pagination a,
.dm-blog-listing .wp-block-query-pagination .page-numbers{color:var(--navy);text-decoration:none;padding:.25rem .6rem}
.dm-blog-listing .wp-block-query-pagination a:hover{color:var(--brass)}
.dm-blog-listing .wp-block-query-pagination .current{color:var(--brass)}

@media (max-width:960px){
  .dm-blog-listing .wp-block-post-template.is-layout-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2rem 1.5rem}
}
@media (max-width:600px){
  .dm-blog-listing{padding:2.5rem 1.25rem}
  .dm-blog-listing .wp-block-post-template.is-layout-grid{grid-template-columns:1fr;gap:2rem}
}

/* Single post content template */
.dm-single-post{max-width:var(--col);margin:0 auto;padding:4.5rem 1.75rem}
.dm-single-post > .wp-block-post-title{
  font-family:var(--display);font-weight:600;
  font-size:clamp(2.2rem,4.5vw,3.4rem);line-height:1.08;
  color:var(--navy);margin:0 0 1.5rem;
}
.dm-single-post > .wp-block-post-featured-image{margin:0 0 2rem}
.dm-single-post > .wp-block-post-featured-image img{width:100%;height:auto;display:block;object-fit:cover}
.dm-single-post > .wp-block-post-content{font-family:var(--body);font-size:1.075rem;line-height:1.68;color:var(--ink)}
.dm-single-post > .wp-block-post-content > p{margin:0 0 1.15rem}
.dm-single-post > .wp-block-post-content h2{
  font-family:var(--display);font-weight:600;font-size:1.8rem;line-height:1.2;
  color:var(--navy);margin:2.5rem 0 1rem;
}
.dm-single-post > .wp-block-post-content h3{
  font-family:var(--display);font-weight:600;font-size:1.35rem;line-height:1.25;
  color:var(--navy);margin:2rem 0 .75rem;
}
.dm-single-post > .wp-block-post-content a{color:var(--link);border-bottom:1px solid var(--brass)}
.dm-single-post > .wp-block-post-content a:hover{color:var(--brass)}

@media (max-width:600px){
  .dm-single-post{padding:2.5rem 1.25rem}
}

/* dm-pearl-harbor-boxes — page 687 only. Match the excerpt and flag box design in the
   'The one line everything else rests on' section (and every other excerpt / flag inside
   the navy plate on Pearl Harbor) to the source template. Site-wide dm-plate rules use
   navy-mid backgrounds; the template uses navy-deep for excerpts and a translucent brass
   tint for flags. Scoped to page 687 so no other page is affected. */

/* --- Excerpt boxes --- */
body.page-id-687 .dm-plate .dm-excerpt{
  background:var(--navy-deep) !important;
  border-left-color:var(--brass-bright) !important;
}
body.page-id-687 .dm-excerpt blockquote u,
body.page-id-687 .dm-excerpt .wp-block-quote u{
  text-decoration:none;color:var(--brass);font-weight:500;
}
body.page-id-687 .dm-plate .dm-excerpt blockquote u,
body.page-id-687 .dm-plate .dm-excerpt .wp-block-quote u{color:var(--brass-bright)}

/* --- Flag box ('Contested claim / The aircraft count') --- */
body.page-id-687 .dm-plate .dm-flag{
  background:rgba(217,174,95,.08) !important;
  border-color:var(--brass-bright) !important;
  color:var(--on-navy) !important;
}
body.page-id-687 .dm-plate .dm-flag h3{color:#FFF !important}
body.page-id-687 .dm-plate .dm-flag .dm-flag-label{color:var(--brass-bright) !important}
body.page-id-687 .dm-plate .dm-flag p{color:var(--on-navy) !important}
body.page-id-687 .dm-plate .dm-flag .dm-flag-more{
  color:var(--brass-bright) !important;
  border-bottom-color:var(--brass-bright) !important;
}
body.page-id-687 .dm-plate .dm-flag .dm-flag-more:hover{
  color:#FFF !important;
  border-bottom-color:#FFF !important;
}

/* dm-ships-westvirginia-flag-table — page 688 only. Style the 'How many torpedoes hit her?'
   table so it matches the source template's `.flag .table-wrap table.data` treatment on a
   light (paper) background. Same Main container > Inner container > Custom HTML pattern used
   for the Liscome Bay table, but scoped to a flag box NOT inside a plate. */

/* The flag box that carries this table (only one on page 688) */
body.page-id-688 .dm-flag{
  background:var(--paper) !important;
  border:2px solid var(--brass) !important;
  border-left-width:6px !important;
  padding:1.75rem 1.9rem !important;
  margin:2.25rem 0 !important;
}
body.page-id-688 .dm-flag .dm-flag-label{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.15em;
  text-transform:uppercase;color:var(--brass);margin:0 0 .85rem;
}
body.page-id-688 .dm-flag h3{color:var(--navy);font-size:1.55rem;margin:0 0 .6rem}
body.page-id-688 .dm-flag p{color:var(--ink);margin-bottom:1.25rem}

/* Table wrap inside the flag box — 20px inner-container padding, horizontal scroll on overflow */
body.page-id-688 .dm-flag .dm-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:1.4rem 0;padding:0;
}
body.page-id-688 .dm-flag .dm-table-inner{padding-left:20px;padding-right:20px}

/* Table itself — source template's `table.data` treatment on light background */
body.page-id-688 .dm-flag table.dm-data{
  width:100%;border-collapse:collapse;font-size:.98rem;min-width:30rem;
  margin:0;background:transparent;color:var(--ink);
  font-family:var(--body);
}
body.page-id-688 .dm-flag table.dm-data thead th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;
  color:var(--brass);border-bottom:2px solid var(--brass);
  padding:.55rem 1rem .55rem 0;background:transparent;
}
body.page-id-688 .dm-flag table.dm-data tbody td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--hair);
  vertical-align:top;line-height:1.5;color:var(--ink);background:transparent;
}
body.page-id-688 .dm-flag table.dm-data tbody tr:last-child td{border-bottom:0}
body.page-id-688 .dm-flag table.dm-data tbody td b{color:var(--navy);font-weight:600}
body.page-id-688 .dm-flag table.dm-data tbody td i{color:inherit;font-style:italic}

/* Mobile: keep the box readable on narrow phones */
@media (max-width:720px){
  body.page-id-688 .dm-flag{padding:1.25rem 1.25rem !important;margin:1.75rem 0 !important}
  body.page-id-688 .dm-flag h3{font-size:1.2rem}
  body.page-id-688 .dm-flag p{font-size:.98rem}
  body.page-id-688 .dm-flag .dm-table-wrap{margin:1.1rem 0}
  body.page-id-688 .dm-flag .dm-table-inner{padding-left:20px;padding-right:20px}
  body.page-id-688 .dm-flag table.dm-data{font-size:.86rem;min-width:0;table-layout:auto}
  body.page-id-688 .dm-flag table.dm-data thead th{
    font-size:.72rem;padding:.5rem .6rem .5rem 0;letter-spacing:.08em;
  }
  body.page-id-688 .dm-flag table.dm-data tbody td{
    padding:.65rem .6rem .65rem 0;line-height:1.45;
  }
  body.page-id-688 .dm-flag table.dm-data thead th:last-child,
  body.page-id-688 .dm-flag table.dm-data tbody td:last-child{padding-right:0}
}
@media (max-width:400px){
  body.page-id-688 .dm-flag table.dm-data{min-width:22rem}
}

/* dm-memorials-schools-table — page 690 only. Style the 'Schools, centres and housing'
   table on the light (paper) background to match the source template's `table.data` rules.
   Same Main container > Inner container > Custom HTML pattern with 20px inner padding. */

/* Table wrap (horizontal scroll + inner padding) */
body.page-id-690 .dm-col .dm-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:2rem 0;padding:0;
}
body.page-id-690 .dm-col .dm-table-inner{padding-left:20px;padding-right:20px}

/* Table on light background */
body.page-id-690 .dm-col table.dm-data{
  width:100%;border-collapse:collapse;font-size:.98rem;min-width:30rem;
  margin:0;background:transparent;color:var(--ink);
  font-family:var(--body);
}
body.page-id-690 .dm-col table.dm-data thead th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;
  color:var(--brass);border-bottom:2px solid var(--brass);
  padding:.55rem 1rem .55rem 0;background:transparent;
}
body.page-id-690 .dm-col table.dm-data tbody td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--hair);
  vertical-align:top;line-height:1.5;color:var(--ink);background:transparent;
}
body.page-id-690 .dm-col table.dm-data tbody tr:last-child td{border-bottom:0}
body.page-id-690 .dm-col table.dm-data tbody td b{color:var(--navy);font-weight:600}
body.page-id-690 .dm-col table.dm-data tbody td i{color:inherit;font-style:italic}

/* Mobile responsive */
@media (max-width:720px){
  body.page-id-690 .dm-col .dm-table-wrap{margin:1.5rem 0}
  body.page-id-690 .dm-col .dm-table-inner{padding-left:20px;padding-right:20px}
  body.page-id-690 .dm-col table.dm-data{font-size:.86rem;min-width:0;table-layout:auto}
  body.page-id-690 .dm-col table.dm-data thead th{
    font-size:.72rem;padding:.5rem .6rem .5rem 0;letter-spacing:.08em;
  }
  body.page-id-690 .dm-col table.dm-data tbody td{
    padding:.65rem .6rem .65rem 0;line-height:1.45;
  }
  body.page-id-690 .dm-col table.dm-data thead th:last-child,
  body.page-id-690 .dm-col table.dm-data tbody td:last-child{padding-right:0}
}
@media (max-width:400px){
  body.page-id-690 .dm-col table.dm-data{min-width:24rem}
}

/* dm-image-credits-table — page 696 only. Style the 'Where catalogue descriptions were
   wrong' table on the light (paper) background to match the source template's
   `.table-wrap table.data` rules. Same Main container > Inner container > Custom HTML
   pattern with 20px inner padding, scoped to page 696 so no other page is affected. */

body.page-id-696 .dm-col .dm-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:2rem 0;padding:0;
}
body.page-id-696 .dm-col .dm-table-inner{padding-left:20px;padding-right:20px}

body.page-id-696 .dm-col table.dm-data{
  width:100%;border-collapse:collapse;font-size:.98rem;min-width:30rem;
  margin:0;background:transparent;color:var(--ink);
  font-family:var(--body);
}
body.page-id-696 .dm-col table.dm-data thead th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;
  color:var(--brass);border-bottom:2px solid var(--brass);
  padding:.55rem 1rem .55rem 0;background:transparent;
}
body.page-id-696 .dm-col table.dm-data tbody td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--hair);
  vertical-align:top;line-height:1.5;color:var(--ink);background:transparent;
}
body.page-id-696 .dm-col table.dm-data tbody tr:last-child td{border-bottom:0}
body.page-id-696 .dm-col table.dm-data tbody td b{color:var(--navy);font-weight:600}
body.page-id-696 .dm-col table.dm-data tbody td i{color:inherit;font-style:italic}

@media (max-width:720px){
  body.page-id-696 .dm-col .dm-table-wrap{margin:1.5rem 0}
  body.page-id-696 .dm-col .dm-table-inner{padding-left:20px;padding-right:20px}
  body.page-id-696 .dm-col table.dm-data{font-size:.86rem;min-width:0;table-layout:auto}
  body.page-id-696 .dm-col table.dm-data thead th{
    font-size:.72rem;padding:.5rem .6rem .5rem 0;letter-spacing:.08em;
  }
  body.page-id-696 .dm-col table.dm-data tbody td{
    padding:.65rem .6rem .65rem 0;line-height:1.45;
  }
  body.page-id-696 .dm-col table.dm-data thead th:last-child,
  body.page-id-696 .dm-col table.dm-data tbody td:last-child{padding-right:0}
}
@media (max-width:400px){
  body.page-id-696 .dm-col table.dm-data{min-width:24rem}
}

/* dm-machinegun-boxes-table — page 692 only. Match the source template exactly for the
   White excerpt (light context), the two plate excerpts (Secretary of Navy and Navy Cross
   citation), and the 'Where the counts come from' table (light context). Scoped through
   body.page-id-692 so no other page is affected. */

/* Excerpts in the plate section — darker navy-deep background per the source template */
body.page-id-692 .dm-plate .dm-excerpt{
  background:var(--navy-deep) !important;
  border-left-color:var(--brass-bright) !important;
}

/* Underline styling inside excerpt blockquotes — brass on light, brass-bright on plate */
body.page-id-692 .dm-excerpt blockquote u,
body.page-id-692 .dm-excerpt .wp-block-quote u{
  text-decoration:none;color:var(--brass);font-weight:500;
}
body.page-id-692 .dm-plate .dm-excerpt blockquote u,
body.page-id-692 .dm-plate .dm-excerpt .wp-block-quote u{color:var(--brass-bright)}

/* Table 'Where the counts come from' — light background variant */
body.page-id-692 .dm-col .dm-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:2rem 0;padding:0;
}
body.page-id-692 .dm-col .dm-table-inner{padding-left:20px;padding-right:20px}
body.page-id-692 .dm-col table.dm-data{
  width:100%;border-collapse:collapse;font-size:.98rem;min-width:30rem;
  margin:0;background:transparent;color:var(--ink);
  font-family:var(--body);
}
body.page-id-692 .dm-col table.dm-data thead th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;
  color:var(--brass);border-bottom:2px solid var(--brass);
  padding:.55rem 1rem .55rem 0;background:transparent;
}
body.page-id-692 .dm-col table.dm-data tbody td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--hair);
  vertical-align:top;line-height:1.5;color:var(--ink);background:transparent;
}
body.page-id-692 .dm-col table.dm-data tbody tr:last-child td{border-bottom:0}
body.page-id-692 .dm-col table.dm-data tbody td b{color:var(--navy);font-weight:600}
body.page-id-692 .dm-col table.dm-data tbody td i{color:inherit;font-style:italic}

@media (max-width:720px){
  body.page-id-692 .dm-col .dm-table-wrap{margin:1.5rem 0}
  body.page-id-692 .dm-col table.dm-data{font-size:.86rem;min-width:0;table-layout:auto}
  body.page-id-692 .dm-col table.dm-data thead th{
    font-size:.72rem;padding:.5rem .6rem .5rem 0;letter-spacing:.08em;
  }
  body.page-id-692 .dm-col table.dm-data tbody td{
    padding:.65rem .6rem .65rem 0;line-height:1.45;
  }
  body.page-id-692 .dm-col table.dm-data thead th:last-child,
  body.page-id-692 .dm-col table.dm-data tbody td:last-child{padding-right:0}
}
@media (max-width:400px){
  body.page-id-692 .dm-col table.dm-data{min-width:22rem}
}

/* dm-navycross-boxes-table — page 693 only. Match the source template exactly for the
   Navy Cross citation excerpt (in plate) and the 'Eighty years of bills' table (on light).
   Scoped through body.page-id-693 so no other page is affected. */

/* --- Plate excerpt (Navy Cross citation) --- */
body.page-id-693 .dm-plate .dm-excerpt{
  background:var(--navy-deep) !important;
  border-left-color:var(--brass-bright) !important;
}

/* --- Table 'Eighty years of bills' (5 columns, light background) --- */
body.page-id-693 .dm-col .dm-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  margin:2rem 0;padding:0;
}
body.page-id-693 .dm-col .dm-table-inner{padding-left:20px;padding-right:20px}
body.page-id-693 .dm-col table.dm-data{
  width:100%;border-collapse:collapse;font-size:.98rem;min-width:38rem;
  margin:0;background:transparent;color:var(--ink);
  font-family:var(--body);
}
body.page-id-693 .dm-col table.dm-data thead th{
  font-family:var(--display);font-weight:600;font-size:.85rem;letter-spacing:.1em;
  text-transform:uppercase;text-align:left;
  color:var(--brass);border-bottom:2px solid var(--brass);
  padding:.55rem 1rem .55rem 0;background:transparent;
}
body.page-id-693 .dm-col table.dm-data tbody td{
  padding:.8rem 1rem .8rem 0;border-bottom:1px solid var(--hair);
  vertical-align:top;line-height:1.5;color:var(--ink);background:transparent;
}
body.page-id-693 .dm-col table.dm-data tbody tr:last-child td{border-bottom:0}
body.page-id-693 .dm-col table.dm-data tbody td b{color:var(--navy);font-weight:600}
body.page-id-693 .dm-col table.dm-data tbody td i{color:inherit;font-style:italic}

@media (max-width:960px){
  body.page-id-693 .dm-col table.dm-data{font-size:.9rem}
}
@media (max-width:720px){
  body.page-id-693 .dm-col .dm-table-wrap{margin:1.5rem 0}
  body.page-id-693 .dm-col table.dm-data{font-size:.86rem;min-width:34rem;table-layout:auto}
  body.page-id-693 .dm-col table.dm-data thead th{
    font-size:.72rem;padding:.5rem .6rem .5rem 0;letter-spacing:.08em;
  }
  body.page-id-693 .dm-col table.dm-data tbody td{
    padding:.65rem .6rem .65rem 0;line-height:1.45;
  }
  body.page-id-693 .dm-col table.dm-data thead th:last-child,
  body.page-id-693 .dm-col table.dm-data tbody td:last-child{padding-right:0}
}
@media (max-width:400px){
  body.page-id-693 .dm-col table.dm-data{min-width:30rem}
}