body{margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;background:#f5f2ec!important;}#page,#wrapper,.site,.site-content,#content,.content-area,#primary,#secondary,.site-main,.page-content,.entry-content,article,.hentry,.post,.elementor,.elementor-section-wrap{margin:0!important;padding:0!important;max-width:100%!important;width:100%!important;} .custom-535-header{width:100vw!important;max-width:100vw!important;margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;} .custom-535-header .header-topbar,.custom-535-header .header-main{box-sizing:border-box!important;} 
/* === MOBILE HEADER — IRONCLAD UNIFORM HEIGHT === */
@media (max-width: 768px) {
  .custom-535-header { min-height: auto !important; }
  .custom-535-header .header-topbar { padding: 8px 20px !important; }
  .custom-535-header .header-main {
    padding: 12px 20px !important;
    grid-template-columns: 1fr !important;
    row-gap: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    align-content: start !important;
  }
  /* Logo block: lock total reserved height across every page.
     The inline wrapper div sets a fixed pixel height (160px+) that
     overrides flex shrinkage — so we explicitly override it. */
  .custom-535-header .header-center { position: absolute !important; left: 50% !important; top: 50% !important; transform: translate(-50%, -50%) !important; padding: 0 !important; z-index: 1 !important; pointer-events: none !important; }
  .custom-535-header .header-center > div { height: 110px !important; min-height: 110px !important; max-height: 110px !important; justify-content: center !important; }
}
/* Phones: the header becomes a simple left-aligned column in normal
   flow — logo, then hamburger, then Subscribe. No absolute pinning. */
@media (max-width: 600px) {
  .header-nav-links, .arc-nav-links, .cnt-nav-links { display: none !important; }
  .custom-535-header .header-main, .custom-535-header .arc-nav {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
    min-height: 0 !important;
    padding: 12px 20px 18px !important;
    position: relative !important;
  }
  .custom-535-header .header-main > *, .custom-535-header .arc-nav > * { order: 5; }
  .custom-535-header .header-center {
    position: static !important;
    left: auto !important; right: auto !important; top: auto !important;
    transform: none !important;
    order: 1 !important;
    width: auto !important;
    pointer-events: auto !important;
  }
  .custom-535-header .header-center > div {
    height: auto !important; min-height: 0 !important; max-height: none !important;
    justify-content: flex-start !important;
  }
  /* Only the clean logo on phones: the decorative ghost rings, ink
     washes, and echo layers are hidden (one of them was catching the
     date bar's border as a line through the mark). */
  .header-logo-main { height: 64px !important; max-height: 64px !important; width: auto !important; }
  .custom-535-header .header-center > div > div { display: none !important; }
  .custom-535-header .header-center img:not(.header-logo-main) { display: none !important; }

  /* Menu + Subscribe: compact, identical 150px, tight 8px rhythm,
     pinned to their own size (never stretched by the column). */
  .custom-535-header .header-main, .custom-535-header .arc-nav { gap: 6px !important; }
  .m535-burger, #m535-burger {
    width: 128px !important;
    min-width: 0 !important;
    max-width: 128px !important;
    justify-content: center !important;
    align-self: flex-start !important;
    margin: 0 !important;
    padding: 9px 12px !important;
    min-height: 40px !important;
  }
  .m535-burger .m535-burger-label { font-size: 10px !important; letter-spacing: 0.18em !important; }
  .header-sub-wrap { padding: 0 !important; margin: 0 !important; align-self: flex-start !important; }
  .header-sub-wrap .header-sub, a.header-sub {
    display: inline-block !important;
    width: 128px !important;
    box-sizing: border-box !important;
    text-align: center !important;
    padding: 11px 0 !important;
    font-size: 10px !important;
    letter-spacing: 0.14em !important;
  }
  .custom-535-header .m535-burger { position: static !important; order: 2 !important; left: auto !important; top: auto !important; }
  .header-sub-wrap { position: static !important; order: 3 !important; margin: 0 !important; text-align: left !important; justify-self: start !important; }
}
@media (max-width: 768px) {
  .custom-535-header .header-center img { height: 110px !important; max-height: 110px !important; width: auto !important; }
  .custom-535-header .header-logo-main { height: 110px !important; max-height: 110px !important; width: auto !important; }
  /* Subscribe wrap: flush-left under the nav. */
  .custom-535-header .header-sub-wrap { text-align: left !important; margin-left: 0 !important; justify-self: start !important; padding-top: 12px !important; }
  .custom-535-header .header-nav-links { gap: 4px !important; font-size: 11px !important; letter-spacing: 0.12em !important; }
  .custom-535-header .header-nav-links a { line-height: 1.4 !important; }

}
.header-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1100px;
  margin: 0 auto;
  padding: 8px 40px;
  border-bottom: 1px solid var(--rule);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--soft);
  position: relative;
  z-index: 2;
}
.header-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--red);
  font-weight: 700;
  letter-spacing: 0.12em;
}
.header-live-dot {
  width: 5px; height: 5px;
  background: var(--red);
  border-radius: 50%;
  animation: blink 1.2s infinite;
}
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.2} }
.header-main {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
  padding: 28px 40px 24px;
  position: relative;
  z-index: 2;
}
.header-nav-links {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink);
}
.header-nav-links a { color: var(--ink); transition: color 0.15s; }
.header-nav-links a:hover { color: var(--red); }
.header-center { text-align: center; padding: 0 36px; }
.header-center img { height: 88px; width: auto; display: block; margin: 0 auto; }
.header-tagline {
  font-family: 'Playfair Display', serif;
  font-size: 11px;
  letter-spacing: 0.04em;
  color: var(--soft);
  font-style: italic;
  margin-top: 9px;
}
.header-sub {
  display: inline-block;
  background: var(--red);
  color: white;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 9px 20px;
  transition: background 0.15s;
}
.header-sub:hover { background: #5e1722; }

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
a[style*="background:#7a1f2e"]:hover,a[style*="background:var(--maroon)"]:hover,[class*="btn"]:hover,[class*="sub"]:hover{color:white!important;}
:root{--ink:#1a1a1a;--red:#7a1f2e;--maroon:#7a1f2e;--bone:#f5f2ec;--warm:#e8e3da;--soft:#8a7f72;--rule:#d4cfc7;}
body{background:var(--bone);color:var(--ink);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased;margin:0!important;padding:0!important;overflow-x:hidden;}
.site,.site-content,#content,#page,.hfeed,.entry-content,.entry,article,.post,#primary,#secondary,.content-area{max-width:100%!important;width:100%!important;margin:0!important;padding:0!important;}
.lgl-header{background:var(--bone);border-bottom:3px solid var(--ink);width:100%;position:relative;overflow:hidden;}
.lgl-535{position:absolute;left:0;top:50%;transform:translateY(-50%);font-family:'Playfair Display',serif;font-size:200px;font-weight:900;color:#8a7f72;opacity:0.08;line-height:1;letter-spacing:-0.06em;user-select:none;pointer-events:none;}
.lgl-capitol{position:absolute;right:0;top:0;bottom:0;width:36%;pointer-events:none;overflow:hidden;}
.lgl-capitol img{width:100%;height:100%;object-fit:cover;object-position:center 20%;opacity:0.45;filter:grayscale(20%) contrast(1.05) brightness(1.1);}
.lgl-capitol-fade{position:absolute;inset:0;background:linear-gradient(to right,var(--bone) 0%,rgba(245,242,236,0.4) 25%,rgba(245,242,236,0) 60%,transparent 100%);}
.lgl-topbar{display:flex;align-items:center;justify-content:space-between;max-width:1100px;margin:0 auto;padding:8px 40px;border-bottom:1px solid var(--rule);font-size:10px;letter-spacing:0.1em;text-transform:uppercase;color:var(--soft);position:relative;z-index:2;}
.lgl-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1100px;margin:0 auto;padding:28px 40px 24px;position:relative;z-index:2;}
.lgl-nav-links{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;}
.lgl-nav-links a{color:var(--ink);text-decoration:none;transition:color 0.15s;}
.lgl-nav-links a:hover{color:var(--red);}
.lgl-sub{display:inline-block;background:var(--maroon);color:white;font-size:11px;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;padding:10px 22px;text-decoration:none;}
.lgl-sub:hover{background:#5e1722;}
.lgl-hero{background:var(--ink);padding:56px 0 48px;position:relative;overflow:hidden;}
.lgl-hero-ghost{position:absolute;right:-20px;top:50%;transform:translateY(-50%);font-family:'Playfair Display',serif;font-size:200px;font-weight:900;font-style:italic;color:white;opacity:0.04;line-height:1;user-select:none;pointer-events:none;white-space:nowrap;}
.lgl-hero-inner{max-width:1100px;margin:0 auto;padding:0 40px;position:relative;z-index:1;}
.lgl-eyebrow{font-size:8px;letter-spacing:0.28em;text-transform:uppercase;color:rgba(255,255,255,0.45);font-weight:700;margin-bottom:12px;}
.lgl-title{font-family:'Playfair Display',serif;font-size:clamp(36px,5vw,60px);font-weight:900;color:white;line-height:1.05;letter-spacing:-0.02em;margin-bottom:12px;}
.lgl-title em{color:#E8C96F;font-style:italic;}
.lgl-updated{font-size:12px;color:rgba(255,255,255,0.35);font-style:italic;font-family:'Playfair Display',serif;}
.lgl-body{max-width:760px;margin:0 auto;padding:72px 40px 80px;}
.lgl-section{margin-bottom:48px;}
.lgl-section-title{font-family:'Playfair Display',serif;font-size:22px;font-weight:800;color:var(--ink);margin-bottom:16px;letter-spacing:-0.01em;padding-bottom:10px;border-bottom:1px solid var(--rule);}
.lgl-subsection-title{font-size:13px;font-weight:700;color:var(--ink);margin:20px 0 8px;letter-spacing:0.04em;}
.lgl-p{font-size:15px;line-height:1.8;color:#3a3530;margin-bottom:14px;}
.lgl-list{margin:10px 0 14px 20px;}
.lgl-list li{font-size:15px;line-height:1.8;color:#3a3530;margin-bottom:6px;}
.lgl-highlight{background:var(--warm);border-left:3px solid var(--maroon);padding:14px 18px;margin:16px 0;font-size:14px;line-height:1.7;color:var(--ink);}
.lgl-footer-note{font-size:13px;color:var(--soft);font-style:italic;border-top:1px solid var(--rule);padding-top:24px;margin-top:48px;}
.lgl-footer{background:var(--ink);color:white;padding:56px 0 32px;}
.lgl-footer-inner{max-width:1100px;margin:0 auto;padding:0 40px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;}
.lgl-footer-desc{font-size:13px;color:rgba(255,255,255,0.4);line-height:1.6;margin-top:10px;}
.lgl-footer-col-title{font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.35);font-weight:700;margin-bottom:16px;}
.lgl-footer a{display:block;font-size:13px;color:rgba(255,255,255,0.6);margin-bottom:9px;text-decoration:none;transition:color 0.15s;}
.lgl-footer a:hover{color:white;}
.lgl-footer-bottom{max-width:1100px;margin:40px auto 0;padding:20px 40px 0;border-top:1px solid rgba(255,255,255,0.08);display:flex;justify-content:space-between;font-size:11px;color:rgba(255,255,255,0.25);}
@media(max-width:768px){
  .header-main { padding: 16px 20px !important; grid-template-columns: 1fr !important; row-gap: 16px !important; min-height: 140px !important; align-content: center !important; }
  /* Logo on mobile: kept absolutely-centered over the nav but sized
     up to read like an actual logo. The inline markup wraps the logo
     image in <div style="height:160px"> with the image set to 140px —
     fixed pixel heights that ignore CSS rules on the image alone, so
     we must override the WRAPPER div height too or the header row
     stays tall. Descendant selectors below shrink the entire cluster
     in lockstep so the header collapses to one consistent height
     across every page. */
  .header-center { position:absolute !important; left:50% !important; transform:translateX(-50%) !important; z-index:1 !important; padding:0 !important; }
  .header-center > div { height: 100px !important; }
  .header-center img { height: 80px !important; max-height: 80px !important; }
  .header-logo-main { height: 80px !important; max-height: 80px !important; }
  .header-sub-wrap { text-align: left !important; margin-left: 0 !important; justify-self: start !important; }
  .lgl-nav{padding:16px 20px!important;grid-template-columns:1fr auto!important;}
  .lgl-body{padding:40px 20px 60px!important;}
  .lgl-footer-inner{grid-template-columns:1fr 1fr!important;gap:24px!important;padding:0 20px!important;}
  .lgl-footer-bottom{padding:20px 20px 0!important;flex-direction:column!important;gap:8px!important;}
}

/* === HOMEPAGE HEADER CSS - INJECTED === */
.site-header {
  background: var(--bone);
  border-bottom: 3px solid var(--ink);
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  position: relative;
  overflow: hidden;
  display: block;
}
.header-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1100px;
  margin: 0 auto;
  padding: 8px 40px;
  border-bottom: 1px solid var(--rule);
  font-size: 10px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--soft);
  position: relative;
  z-index: 2;
}
.header-live {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--red);
  font-weight: 700;
  letter-spacing: 0.12em;
}
.header-live-dot {
  width: 5px; height: 5px;
  background: var(--red);
  border-radius: 50%;
  animation: blink 1.2s infinite;
}
@keyframes blink { 0%,100%{opacity:1} 50%{opacity:0.2} }
.header-main {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  max-width: 1100px;
  margin: 0 auto;
  padding: 28px 40px 24px;
  position: relative;
  z-index: 2;
}
.header-nav-links {
  display: flex;
  flex-direction: column;
  gap: 7px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ink);
}
.header-nav-links a { color: var(--ink); transition: color 0.15s; }
.header-nav-links a:hover { color: var(--red); }
.header-center { text-align: center; padding: 0 36px; }
.header-center img { height: 88px; width: auto; display: block; margin: 0 auto; }
.header-tagline {
  font-family: 'Playfair Display', serif;
  font-size: 11px;
  letter-spacing: 0.04em;
  color: var(--soft);
  font-style: italic;
  margin-top: 9px;
}
.header-sub {
  display: inline-block;
  background: var(--red);
  color: white;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 9px 20px;
  transition: background 0.15s;
}
.header-sub:hover { background: #5e1722; }
/* === END HEADER CSS === */
  @keyframes logo-breathe {
    0%,100% { opacity:0.38; transform:scale(1); }
    50% { opacity:0.44; transform:scale(1.015); }
  }
  .header-logo-main { animation: logo-breathe 4s ease-in-out infinite; }
  
@keyframes pitch-pulse { 0%,100%{box-shadow:-3px 0 16px rgba(122,31,46,0.25);} 50%{box-shadow:-3px 0 24px rgba(122,31,46,0.5);} }
#pitch-bug { animation: pitch-pulse 3s ease-in-out infinite; }
#pitch-panel { position:fixed;right:-380px;top:50%;transform:translateY(-50%);z-index:9998;width:360px;background:var(--bone);box-shadow:-8px 0 48px rgba(0,0,0,0.18);transition:right 0.35s cubic-bezier(0.4,0,0.2,1);padding:40px 36px;font-family:'DM Sans',sans-serif; }
#pitch-panel.open { right:0; }
#pitch-panel .pitch-eyebrow { font-size:8px;letter-spacing:0.28em;text-transform:uppercase;color:var(--maroon);font-weight:700;margin-bottom:10px; }
#pitch-panel .pitch-title { font-family:'Playfair Display',serif;font-size:26px;font-weight:900;color:var(--ink);line-height:1.1;margin-bottom:8px; }
#pitch-panel .pitch-rule { width:28px;height:2px;background:var(--maroon);margin-bottom:16px; }
#pitch-panel .pitch-desc { font-size:13px;line-height:1.7;color:var(--soft);margin-bottom:24px; }
#pitch-panel .pitch-field { margin-bottom:14px; }
#pitch-panel .pitch-field label { display:block;font-size:11px;letter-spacing:0.16em;text-transform:uppercase;color:var(--soft);font-weight:700;margin-bottom:5px; }
#pitch-panel .pitch-field input,
#pitch-panel .pitch-field textarea { width:100%;border:1px solid var(--rule);padding:10px 12px;font-size:13px;font-family:'DM Sans',sans-serif;background:white;color:var(--ink);outline:none;transition:border-color 0.15s;resize:none; }
#pitch-panel .pitch-field input:focus,
#pitch-panel .pitch-field textarea:focus { border-color:var(--maroon); }
#pitch-panel .pitch-submit { width:100%;background:var(--maroon);color:white;border:none;padding:13px;font-size:11px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;font-family:'DM Sans',sans-serif;cursor:pointer;transition:background 0.15s; }
#pitch-panel .pitch-submit:hover { background:#5e1722; }
#pitch-panel .pitch-close { position:absolute;top:16px;right:16px;background:none;border:none;font-size:18px;color:var(--soft);cursor:pointer;line-height:1;padding:4px 8px; }
#pitch-panel .pitch-close:hover { color:var(--ink); }
#pitch-panel .pitch-success { display:none;text-align:center;padding:20px 0; }
#pitch-panel .pitch-success .ps-icon { font-size:32px;margin-bottom:12px; }
#pitch-panel .pitch-success .ps-title { font-family:'Playfair Display',serif;font-size:20px;font-weight:800;color:var(--ink);margin-bottom:8px; }
#pitch-panel .pitch-success .ps-desc { font-size:13px;color:var(--soft);line-height:1.6; }
#pitch-close-btn{position:fixed;right:64px;top:calc(50% - 60px);transform:translateY(-50%);z-index:9999;width:24px;height:24px;background:#1a1a1a;color:white;border:none;border-radius:50%;font-size:13px;line-height:24px;text-align:center;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,0.3);}@keyframes pitch-pulse2{0%,100%{box-shadow:-4px 0 20px rgba(122,31,46,0.6),0 0 0 1px #7a1f2e;}50%{box-shadow:-4px 0 32px rgba(122,31,46,0.85),0 0 0 1px #7a1f2e;}}#pitch-bug{animation:pitch-pulse2 3s ease-in-out infinite;}
