/* Richard C. Lyons theme — shared styles (all pages). Extracted from the page templates' inline CSS; load order matches the original. */
:root {
      --bg:          #F4F7FB;
      --bg-alt:      #EBF0F7;
      --bg-dark:     #08152A;
      --bg-navy:     #0D1E35;
      --text:        #0B1C2E;
      --text-b:      #3A5268;
      --text-dim:    #7090A8;
      --gold:        #A87C18;
      --gold-hi:     #C9A030;
      --gold-pale:   #E8C84A;
      --gold-grad:   linear-gradient(135deg,#7a5c0c 0%,#B8900A 32%,#D4A828 55%,#B8900A 78%,#7a5c0c 100%);
      --blue:        #1A3C60;
      --blue-mid:    #2E5C8A;
      --teal:        #1A7888;
      --silver:      #8AA4BA;
      --silver-lite: #C8D8E8;
      --white:       #FFFFFF;
    }
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { background: var(--bg); color: var(--text); font-family: 'EB Garamond', Georgia, serif; overflow-x: hidden; font-size: 18px; }
.gt { background: var(--gold-grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.fi { opacity: 0; transform: translateY(24px); transition: opacity .85s ease, transform .85s ease; }
.fi.on { opacity: 1; transform: none; }
.fi.d1 { transition-delay: .15s; }
.fi.d2 { transition-delay: .3s; }
.fi.d3 { transition-delay: .45s; }
.fi.d4 { transition-delay: .6s; }
#nav {
      position: fixed; top: 0; left: 0; right: 0; z-index: 60;
      padding: 1.1rem 3.5rem;
      display: flex; align-items: center; justify-content: space-between;
      background: rgba(255,255,255,.96);
      backdrop-filter: blur(16px);
      transition: all .4s ease;
    }
#nav.solid {
      border-bottom: 1px solid var(--silver-lite);
      padding: .65rem 3.5rem;
      box-shadow: 0 2px 20px rgba(10,30,55,.08);
    }
.nav-home { display: inline-flex; align-items: center; flex: 0 0 auto; }
.nav-logo { max-height: 46px; width: auto; height: auto; max-width: 100%; object-fit: contain; display: block; }
.nav-links { display: flex; align-items: center; gap: 1.55rem; list-style: none; }
.nav-links > li { position: relative; }
.nav-links > li > a { position: relative; display: inline-flex; align-items: center; gap: .45em; font-family: 'Cinzel', serif; font-size: .63rem; letter-spacing: .19em; text-transform: uppercase; color: var(--text-b); text-decoration: none; padding: .35rem 0; white-space: nowrap; transition: color .25s; }
.nav-links > li > a:hover { color: var(--gold-hi); }
.nav-links > li > a::after { content: ''; position: absolute; left: 0; bottom: -3px; width: 0; height: 1px; background: var(--gold-hi); transition: width .3s ease; }
.nav-links > li:hover > a::after, .nav-links > li:focus-within > a::after { width: 100%; }
.nav-caret { width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .3s ease; opacity: .65; flex: 0 0 auto; }
.nav-links > li:hover .nav-caret, .nav-links > li:focus-within .nav-caret { transform: rotate(-135deg) translateY(1px); opacity: 1; }
.nav-drop { position: absolute; top: calc(100% + 16px); left: -1.15rem; min-width: 232px; list-style: none; background: rgba(255,255,255,.99); backdrop-filter: blur(16px); border: 1px solid var(--silver-lite); border-top: 2px solid var(--gold-hi); box-shadow: 0 20px 44px rgba(10,30,55,.17); padding: .45rem 0; opacity: 0; visibility: hidden; transform: translateY(9px); transition: opacity .26s ease, transform .26s ease, visibility .26s; z-index: 5; }
.nav-drop.align-right { left: auto; right: -1.15rem; }
.nav-drop::before { content: ''; position: absolute; top: -16px; left: 0; right: 0; height: 16px; }
.nav-links > li:hover > .nav-drop, .nav-links > li:focus-within > .nav-drop { opacity: 1; visibility: visible; transform: translateY(0); }
.nav-drop > li { display: block; }
.nav-drop a { display: block; font-family: 'Cinzel', serif; font-size: .595rem; letter-spacing: .15em; text-transform: uppercase; color: var(--text-b); text-decoration: none; padding: .64rem 1.5rem; line-height: 1.4; transition: color .2s, background .2s; }
.nav-drop a:hover { color: var(--gold-hi); background: var(--bg-alt); }
@media (max-width: 1080px) {
      .nav-links { display: none; }
    }
.nav-burger { display: none; flex-direction: column; justify-content: center; gap: 6px; width: 34px; height: 34px; padding: 0; background: none; border: none; cursor: pointer; position: relative; z-index: 62; }
@media (max-width: 1080px) { .nav-burger { display: flex; } }
.nav-burger span { display: block; width: 26px; height: 2px; margin: 0 auto; border-radius: 2px; background: var(--text); transition: transform .32s ease, opacity .2s ease, background .3s ease; }
.nav-burger.open span { background: #fff !important; }
.nav-burger.open span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.nav-burger.open span:nth-child(2) { opacity: 0; }
.nav-burger.open span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
.mobile-menu { position: fixed; inset: 0; z-index: 70; background: #05101f; display: flex; flex-direction: column; opacity: 0; visibility: hidden; pointer-events: none; transition: opacity .4s ease; }
.mobile-menu.open { opacity: 1; visibility: visible; pointer-events: auto; }
.mm-close { position: absolute; top: 1.15rem; right: 1.5rem; width: 40px; height: 40px; background: none; border: none; cursor: pointer; padding: 0; z-index: 4; }
.mm-close::before, .mm-close::after { content: ''; position: absolute; top: 50%; left: 50%; width: 24px; height: 2px; border-radius: 2px; background: rgba(232,240,248,.9); transition: background .25s ease; }
.mm-close::before { transform: translate(-50%,-50%) rotate(45deg); }
.mm-close::after { transform: translate(-50%,-50%) rotate(-45deg); }
.mm-close:hover::before, .mm-close:hover::after { background: var(--gold-hi); }
.mm-scroll { flex: 1; width: 100%; overflow-y: auto; -webkit-overflow-scrolling: touch; display: flex; flex-direction: column; align-items: center; padding: 4.4rem 1.5rem 3rem; }
.mm-mark { max-height: 92px; width: auto; height: auto; max-width: 100%; object-fit: contain; margin-bottom: 1.5rem; flex: 0 0 auto; opacity: 0; transform: translateY(14px); transition: opacity .4s ease .05s, transform .4s ease .05s; }
.mobile-menu.open .mm-mark { opacity: 1; transform: none; }
.mm-nav { width: 100%; max-width: 430px; display: flex; flex-direction: column; }
.mm-group { border-bottom: 1px solid rgba(201,168,64,.14); }
.mm-parent, .mm-link { display: flex; align-items: center; justify-content: center; gap: .55em; width: 100%; background: none; border: none; cursor: pointer; font-family: 'Cinzel', serif; font-size: .9rem; letter-spacing: .24em; text-transform: uppercase; color: rgba(232,240,248,.88); text-decoration: none; padding: 1.02rem 0; transition: color .25s; }
.mm-link { border-bottom: 1px solid rgba(201,168,64,.14); }
.mm-parent:hover, .mm-link:hover { color: var(--gold-hi); }
.mm-caret { width: 7px; height: 7px; border-right: 1.6px solid currentColor; border-bottom: 1.6px solid currentColor; transform: rotate(45deg) translateY(-2px); transition: transform .32s ease; opacity: .7; flex: 0 0 auto; }
.mm-group.open .mm-caret { transform: rotate(-135deg) translateY(2px); opacity: 1; }
.mm-sub { max-height: 0; overflow: hidden; transition: max-height .4s ease; }
.mm-group.open .mm-sub { max-height: 640px; }
.mm-sub a { display: block; text-align: center; font-family: 'Cinzel', serif; font-size: .65rem; letter-spacing: .18em; text-transform: uppercase; color: rgba(200,220,238,.62); text-decoration: none; padding: .6rem 0; transition: color .22s; }
.mm-sub a:first-child { padding-top: .15rem; }
.mm-sub a:last-child { padding-bottom: 1.05rem; }
.mm-sub a:hover { color: var(--gold-hi); }
#hero { position: relative; background: #05101f; display: flex; align-items: center; justify-content: center; overflow: hidden; padding-top: 80px; box-sizing: border-box; }
.h-banner { display: block; width: 100%; height: calc(100vh - 80px); object-fit: cover; object-position: center; margin: 0 auto; }
.scroll-hint { position: absolute; bottom: 1.6rem; left: 50%; transform: translateX(-50%); z-index: 2; display: flex; flex-direction: column; align-items: center; gap: .45rem; opacity: .6; pointer-events: none; }
.scroll-hint span { font-family: 'Cinzel', serif; font-size: .55rem; letter-spacing: .38em; text-transform: uppercase; color: rgba(232,240,248,.85); }
.s-line { width: 1px; height: 38px; background: linear-gradient(to bottom, var(--gold-pale), transparent); animation: sp 2.2s ease-in-out infinite; }
@keyframes sp { 0%,100%{ opacity:.3; } 50%{ opacity:1; } }
.orn { display: flex; align-items: center; justify-content: center; gap: 1rem; max-width: 360px; margin: 0 auto; }
.orn::before, .orn::after { content: ''; flex: 1; height: 1px; background: linear-gradient(to right, transparent, var(--silver-lite)); }
.orn::after { background: linear-gradient(to left, transparent, var(--silver-lite)); }
.orn-mid { color: var(--gold); font-size: .55rem; display: flex; align-items: center; gap: .3rem; }
.sec { padding: 7rem 2rem; }
#series { padding-top: 4rem; }
.sec.alt { background: var(--bg-alt); }
.sec.dark { background: var(--bg-dark); }
.inn { max-width: 1060px; margin: 0 auto; }
.eyebrow { font-family: 'Cinzel', serif; font-size: .66rem; letter-spacing: .42em; text-transform: uppercase; color: var(--teal); text-align: center; margin-bottom: .9rem; }
.s-title { font-family: 'Cinzel Decorative', serif; font-size: clamp(1.8rem, 3.2vw, 2.8rem); font-weight: 700; text-align: center; line-height: 1.15; color: var(--text); margin-bottom: 1rem; }
.s-title.on-dark { color: var(--white); }
.s-title .gt-title { background: var(--gold-grad); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.s-lead { font-family: 'Cinzel', serif; font-size: .78rem; letter-spacing: .24em; text-transform: uppercase; color: var(--text-dim); text-align: center; margin-bottom: 4rem; }
.s-lead.on-dark { color: rgba(200,220,238,.55); }
.shelf { display: flex; justify-content: center; align-items: flex-end; gap: 3.5rem; flex-wrap: wrap; margin-bottom: 5rem; }
.bk { display: flex; flex-direction: column; align-items: center; gap: 1.1rem; cursor: pointer; transition: transform .4s cubic-bezier(.2,.8,.2,1); }
.bk:hover { transform: translateY(-14px); }
.bk-img { width: 200px; height: auto; display: block; filter: drop-shadow(0 16px 26px rgba(10,30,60,.34)); transition: transform .4s cubic-bezier(.2,.8,.2,1), filter .4s; }
.bk-img.lg { width: 226px; }
.bk:hover .bk-img { filter: drop-shadow(0 26px 40px rgba(10,30,60,.5)); }
.bk-name { font-family: 'Cinzel', serif; font-size: .7rem; font-weight: 600; color: var(--blue); letter-spacing: .08em; text-align: center; max-width: 185px; }
.bk-vol { font-family: 'Cinzel', serif; font-size: .6rem; letter-spacing: .2em; color: var(--text-dim); }
.vgrid { display: grid; grid-template-columns: repeat(3,1fr); border: 1px solid var(--silver-lite); max-width: 820px; margin: 0 auto; }
.vi { padding: 2.2rem 2rem; text-align: center; border-right: 1px solid var(--silver-lite); }
.vi:last-child { border-right: none; }
.vi-num { font-family: 'Cinzel', serif; font-size: .6rem; letter-spacing: .38em; text-transform: uppercase; color: var(--teal); margin-bottom: .7rem; }
.vi-text { font-family: 'EB Garamond', serif; font-style: italic; font-size: 1.05rem; line-height: 1.55; color: var(--text-b); }
#cta { background: var(--bg-dark); border-top: 1px solid rgba(200,220,238,.08); border-bottom: 1px solid rgba(200,220,238,.08); }
.cta-frame { max-width: 650px; margin: 0 auto; padding: 3.5rem 3rem; border: 1px solid rgba(201,168,64,.28); position: relative; text-align: center; }
.cta-frame::before { content: ''; position: absolute; top: -1px; left: -1px; width: 22px; height: 22px; border-top: 2px solid var(--gold-hi); border-left: 2px solid var(--gold-hi); }
.cta-frame::after { content: ''; position: absolute; bottom: -1px; right: -1px; width: 22px; height: 22px; border-bottom: 2px solid var(--gold-hi); border-right: 2px solid var(--gold-hi); }
.cta-ey { font-family: 'Cinzel', serif; font-size: .66rem; letter-spacing: .4em; text-transform: uppercase; color: var(--gold-hi); margin-bottom: 1.4rem; }
.cta-h { font-family: 'Cinzel Decorative', serif; font-size: clamp(1.15rem, 2.3vw, 1.75rem); font-weight: 700; color: #ffffff; line-height: 1.42; margin-bottom: 1.1rem; }
.cta-b { font-size: 1.05rem; color: rgba(200,220,238,.65); line-height: 1.72; margin-bottom: 2.2rem; max-width: 440px; margin-left: auto; margin-right: auto; }
.cta-form { display: flex; gap: 10px; flex-wrap: wrap; justify-content: center; align-items: stretch; max-width: 480px; margin: 0 auto 1rem; }
.cta-in { flex: 1 1 240px; min-width: 0; height: 52px; padding: 14px 16px; font-size: 16px; font-family: 'EB Garamond', serif; color: #06222e; background: #f4f8f8; border: 1px solid rgba(231,195,114,.6); border-radius: 6px; outline: none; }
.cta-in::placeholder { color: #5a6b73; }
.cta-in:focus { box-shadow: 0 0 0 3px rgba(47,182,204,.4); }
.cta-btn { flex: 0 0 auto; cursor: pointer; padding: 14px 26px; font-size: .7rem; font-family: 'Cinzel', serif; letter-spacing: .18em; text-transform: uppercase; font-weight: 700; color: #06222e; background: linear-gradient(180deg,#e7c372 0%,#c9a14a 100%); border: 1px solid #b98f37; border-radius: 6px; box-shadow: 0 3px 10px rgba(0,20,28,.45),inset 0 1px 0 rgba(255,255,255,.4); white-space: nowrap; transition: transform .16s ease, box-shadow .16s ease, filter .16s ease; }
.cta-btn:hover { transform: translateY(-2px); filter: brightness(1.07); box-shadow: 0 7px 18px rgba(0,20,28,.55),inset 0 1px 0 rgba(255,255,255,.5); }
.cta-note { font-size: .8rem; font-style: italic; color: rgba(180,200,220,.35); }
.bdet.flip { grid-template-columns: 1fr 220px; }
.bdet.flip .bd-cov { order: 2; }
.bdet.flip .bd-txt { order: 1; }
.bd-cov { display: flex; flex-direction: column; align-items: center; gap: 2rem; }
.bd-vol { font-family: 'Cinzel', serif; font-size: .66rem; letter-spacing: .4em; text-transform: uppercase; color: var(--teal); margin-bottom: .8rem; }
.bd-title { font-family: 'Cinzel Decorative', serif; font-size: clamp(1.5rem, 2.4vw, 2.1rem); font-weight: 700; color: var(--text); line-height: 1.15; margin-bottom: 1.5rem; }
.bd-rule { width: 150px; height: 1px; background: linear-gradient(to right, var(--gold), transparent); margin-bottom: 1.8rem; }
.bd-body { font-size: 1.08rem; line-height: 1.9; color: var(--text-b); margin-bottom: 1rem; }
.awards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; max-width: 780px; margin: 3.5rem auto 0; }
.awards.single { grid-template-columns: minmax(220px, 290px); justify-content: center; }
.aw-card { background: #fff; border: 1px solid var(--silver-lite); border-radius: 4px; padding: 1.4rem 1.2rem 1.4rem; box-shadow: 0 6px 20px rgba(10,30,60,.1); text-align: center; display: flex; flex-direction: column; align-items: center; justify-content: space-between; gap: 1rem; }
.aw-card img { width: 100%; max-width: 190px; height: auto; display: block; margin: 0 auto; }
.aw-cap { font-family: 'Cinzel', serif; font-size: .64rem; letter-spacing: .08em; text-transform: uppercase; line-height: 1.55; }
.aw-cap .w { display: block; color: var(--gold); font-weight: 700; letter-spacing: .2em; margin-bottom: .28rem; }
.aw-cap a { color: var(--blue); text-decoration: none; border-bottom: 1px solid rgba(26,60,96,.32); padding-bottom: 1px; transition: color .25s, border-color .25s; }
.aw-cap a:hover { color: var(--gold-hi); border-color: var(--gold-hi); }
.qband { background: var(--bg-navy); padding: 5.5rem 2rem; }
.q-inner { max-width: 740px; margin: 0 auto; text-align: center; }
.q-mark { font-family: 'EB Garamond', serif; font-size: 5rem; line-height: .55; color: rgba(180,150,30,.3); margin-bottom: 1.2rem; }
.q-text { font-family: 'EB Garamond', serif; font-style: italic; font-size: clamp(1.15rem, 2.2vw, 1.5rem); line-height: 1.78; color: rgba(220,232,244,.8); }
.q-attr { margin-top: 1.8rem; font-family: 'Cinzel', serif; font-size: .64rem; letter-spacing: .3em; text-transform: uppercase; color: var(--gold-hi); }
.dnaod-ci{
      --teal:#0c2c41; --teal-deep:#061f31;
      --aqua:#1a8499; --aqua-bright:#2fb6cc;
      --silver:#eef4f5; --silver-dim:#a8c2c7;
      --g-gold:#c9a14a; --g-gold-bright:#e7c372;
      font-family:'EB Garamond',Georgia,serif;
      color:var(--silver); line-height:1.6;
    }
.dnaod-ci *{box-sizing:border-box;}
.dnaod-ci__hero{
      position:relative;overflow:hidden;width:100%;
      background:var(--teal-deep) url('/wp-content/uploads/2026/07/footer-sea.jpg') center/cover no-repeat;
    }
.dnaod-ci__veil{
      position:absolute;inset:0;z-index:1;
      background:linear-gradient(180deg,
        rgba(6,31,49,.18) 0%, rgba(6,31,49,.22) 38%,
        rgba(7,33,49,.62) 60%, rgba(6,31,49,.9) 80%, rgba(6,31,49,.98) 100%);
    }
.dnaod-ci__inner{
      position:relative;z-index:2;
      width:100%;max-width:760px;margin:0 auto;
      padding:clamp(40px,8vw,68px) clamp(16px,5vw,24px) clamp(36px,7vw,48px);
      text-align:center;display:flex;flex-direction:column;align-items:center;
    }
.dnaod-ci__books{
      width:min(92%,540px);height:auto;margin:0 0 clamp(18px,3.5vw,26px);
      filter:drop-shadow(0 20px 40px rgba(0,15,24,.7));
    }
.dnaod-ci__eyebrow{
      margin:0 0 12px;font-family:'Cinzel',serif;font-size:clamp(11px,3vw,13px);
      letter-spacing:.4em;text-transform:uppercase;
      color:var(--g-gold-bright);text-shadow:0 1px 6px rgba(0,0,0,.6);
    }
.dnaod-ci__title{
      margin:0 0 16px;font-family:'Cinzel Decorative',serif;font-size:clamp(24px,5.4vw,36px);
      line-height:1.18;font-weight:700;color:#fff;letter-spacing:.01em;
      text-shadow:0 2px 18px rgba(0,0,0,.6);
    }
.dnaod-ci__lede{
      margin:0 0 clamp(22px,4vw,30px);max-width:560px;
      font-size:clamp(16px,3.6vw,19px);color:#dbe7e9;line-height:1.7;
      text-shadow:0 1px 10px rgba(0,0,0,.5);
    }
.dnaod-ci__subscribe{width:100%;max-width:540px;margin:0 0 14px;}
.dnaod-ci__subhead{margin:0 0 16px;font-size:clamp(16px,3.4vw,18px);
      color:#eef4f5;text-shadow:0 1px 8px rgba(0,0,0,.5);}
.dnaod-ci__subhead strong{color:var(--g-gold-bright);font-weight:600;}
.dnaod-ci__subhead em{color:#fff;}
.dnaod-ci__form{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;align-items:stretch;}
.dnaod-ci__input{
      flex:1 1 240px;min-width:0;height:52px;padding:14px 16px;
      font-size:16px;font-family:'EB Garamond',serif;color:#06222e;background:#f4f8f8;
      border:1px solid rgba(231,195,114,.6);border-radius:6px;outline:none;
    }
.dnaod-ci__input::placeholder{color:#5a6b73;}
.dnaod-ci__input:focus{box-shadow:0 0 0 3px rgba(47,182,204,.4);}
.dnaod-ci__cta{
      flex:0 0 auto;cursor:pointer;padding:14px 26px;
      font-size:.7rem;font-family:'Cinzel',serif;letter-spacing:.18em;text-transform:uppercase;font-weight:700;
      color:#06222e;
      background:linear-gradient(180deg,#e7c372 0%,#c9a14a 100%);
      border:1px solid #b98f37;border-radius:6px;
      box-shadow:0 3px 10px rgba(0,20,28,.45),inset 0 1px 0 rgba(255,255,255,.4);
      transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
    }
.dnaod-ci__cta:hover{transform:translateY(-2px);filter:brightness(1.07);
      box-shadow:0 7px 18px rgba(0,20,28,.55),inset 0 1px 0 rgba(255,255,255,.5);}
.dnaod-ci__rule{display:flex;align-items:center;gap:14px;
      width:100%;max-width:360px;margin:clamp(26px,5vw,34px) 0 18px;}
.dnaod-ci__rule span{flex:1;height:1px;
      background:linear-gradient(90deg,transparent,rgba(231,195,114,.75),transparent);}
.dnaod-ci__star{color:var(--g-gold-bright);font-size:14px;font-style:normal;}
.dnaod-ci__follow{margin:0 0 16px;font-family:'Cinzel',serif;font-size:clamp(11px,3vw,13px);
      letter-spacing:.3em;text-transform:uppercase;color:var(--g-gold-bright);
      text-shadow:0 1px 6px rgba(0,0,0,.5);}
.dnaod-ci__social{list-style:none;margin:0;padding:0;
      display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(10px,2vw,14px);}
.dnaod-btn{display:inline-flex;align-items:center;gap:10px;
      padding:11px 20px 11px 16px;border-radius:6px;text-decoration:none;
      color:var(--silver);
      background:linear-gradient(180deg,#157d92 0%,#0d5e70 100%);
      border:1px solid rgba(231,195,114,.55);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 2px 8px rgba(0,20,28,.45);
      transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease,background .18s ease;}
.dnaod-btn:hover,.dnaod-btn:focus-visible{transform:translateY(-2px);
      border-color:var(--g-gold-bright);
      background:linear-gradient(180deg,#1f9db5 0%,#157d92 100%);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 6px 18px rgba(0,20,28,.5),0 0 0 1px rgba(231,195,114,.35);
      outline:none;}
.dnaod-btn__icon{display:inline-flex;width:22px;height:22px;flex:0 0 auto;}
.dnaod-btn__icon svg{width:100%;height:100%;fill:var(--g-gold-bright);transition:fill .18s ease;}
.dnaod-btn:hover .dnaod-btn__icon svg,.dnaod-btn:focus-visible .dnaod-btn__icon svg{fill:#fff;}
.dnaod-btn__text{font-family:'Cinzel',serif;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--silver);}
.dnaod-btn:hover .dnaod-btn__text,.dnaod-btn:focus-visible .dnaod-btn__text{color:#fff;}
.dnaod-ci__site{margin:26px 0 0;font-family:'Cinzel',serif;font-size:clamp(12px,2.6vw,14px);
      letter-spacing:.18em;color:var(--g-gold-bright);text-transform:uppercase;}
.site-footer { background: #05101f; border-top: 1px solid rgba(201,168,64,.22); padding: 4.8rem 2rem 2.4rem; }
.sf-inner { max-width: 1140px; margin: 0 auto; }
.sf-brand { display: flex; flex-direction: column; align-items: center; text-align: center; margin-bottom: 3.4rem; }
.sf-logo { max-height: 116px; width: auto; height: auto; max-width: 100%; }
.sf-tag { font-family: 'Cinzel', serif; font-size: .58rem; letter-spacing: .34em; text-transform: uppercase; color: rgba(200,220,238,.5); margin-top: 1.1rem; }
.sf-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2.6rem 2.2rem; max-width: 980px; margin: 0 auto; }
.sf-col { display: flex; flex-direction: column; }
.sf-col + .sf-h { margin-top: 1.7rem; }
.sf-h { font-family: 'Cinzel', serif; font-size: .6rem; letter-spacing: .26em; text-transform: uppercase; color: var(--gold-hi); padding-bottom: .9rem; margin-bottom: .35rem; border-bottom: 1px solid rgba(201,168,64,.16); }
.sf-h.link { text-decoration: none; transition: color .25s; }
.sf-h.link:hover { color: var(--gold-pale); }
.sf-col a:not(.sf-h) { font-family: 'EB Garamond', serif; font-size: 1rem; color: rgba(200,220,238,.62); text-decoration: none; padding: .42rem 0; line-height: 1.35; transition: color .22s, padding-left .22s; }
.sf-col a:not(.sf-h):hover { color: #fff; padding-left: .3rem; }
.sf-divider { width: 320px; max-width: 80%; height: 1px; margin: 3.4rem auto 1.6rem; background: linear-gradient(to right, transparent, rgba(201,168,64,.35), transparent); }
.sf-copy { text-align: center; font-size: .78rem; letter-spacing: .06em; color: rgba(180,200,220,.34); }
@media (max-width: 760px) {
      .site-footer { padding: 3.6rem 1.6rem 2.2rem; }
      .sf-grid { grid-template-columns: repeat(2, 1fr); gap: 2.4rem 1.8rem; max-width: 420px; }
      .sf-logo { max-height: 96px; }
    }
@media (max-width: 380px) {
      .sf-grid { grid-template-columns: 1fr; max-width: 260px; }
    }
#affiliates { background: var(--bg); }
.aff-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.6rem; max-width: 900px; margin: 0 auto; }
.aff-card { background: #fff; border: 1px solid var(--silver-lite); border-radius: 4px; box-shadow: 0 6px 20px rgba(10,30,60,.1); height: 176px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; padding: 1.8rem; text-decoration: none; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.aff-card:hover { transform: translateY(-6px); box-shadow: 0 16px 38px rgba(10,30,60,.18); border-color: rgba(201,168,64,.55); }
.aff-card img { max-width: 100%; max-height: 92px; width: auto; height: auto; object-fit: contain; display: block; }
.aff-name { font-family: 'Cinzel', serif; font-size: .58rem; letter-spacing: .22em; text-transform: uppercase; color: var(--text-dim); transition: color .3s ease; }
.aff-card:hover .aff-name { color: var(--gold-hi); }
.eyebrow-l { font-family:'Cinzel',serif; font-size:.66rem; letter-spacing:.32em; text-transform:uppercase; color:var(--teal); margin-bottom:.7rem; }
.cat-band { background:linear-gradient(180deg, rgba(7,33,49,.80) 0%, rgba(6,31,49,.88) 100%), #061f31 url('/wp-content/uploads/2026/07/footer-sea.jpg') center/cover no-repeat; padding:3.4rem 2rem; }
.cat-grid { max-width:1080px; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:1.7rem; }
.cat-card { display:flex; flex-direction:column; align-items:center; gap:1.05rem; text-decoration:none; }
.cat-thumb { width:100%; aspect-ratio:1/1; border-radius:4px; overflow:hidden; background:#fff; box-shadow:0 8px 22px rgba(0,28,38,.3); display:flex; align-items:center; justify-content:center; transition:transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s; }
.cat-card:hover .cat-thumb { transform:translateY(-8px); box-shadow:0 18px 38px rgba(0,28,38,.42); }
.cat-label { font-family:'Cinzel',serif; font-size:.68rem; letter-spacing:.26em; text-transform:uppercase; color:#fff; }
.sec-head { display:flex; align-items:center; gap:1.4rem; margin-bottom:2.4rem; }
.sec-head::after { content:''; flex:1; height:1px; background:linear-gradient(to right,var(--silver-lite),transparent); }
.feat-head { display:flex; align-items:center; justify-content:center; gap:1.6rem; max-width:780px; margin:0 auto 2.6rem; }
.feat-head::before, .feat-head::after { content:''; flex:1; height:1px; }
.feat-head::before { background:linear-gradient(to left,var(--silver-lite),transparent); }
.feat-head::after { background:linear-gradient(to right,var(--silver-lite),transparent); }
.feat-head.on-teal::before { background:linear-gradient(to left,rgba(255,255,255,.5),transparent); }
.feat-head.on-teal::after { background:linear-gradient(to right,rgba(255,255,255,.5),transparent); }
.rm { display:inline-block; font-family:'Cinzel',serif; font-size:.64rem; letter-spacing:.2em; text-transform:uppercase; color:var(--teal); text-decoration:none; margin-top:1.5rem; transition:color .25s; }
.rm:hover { color:var(--gold-hi); }
.rm.inline { margin-top:0; }
.rm.on-teal { color:#fff; }
.rm.on-teal:hover { color:var(--gold-pale); }
.dl-note { margin-top:1.6rem; font-weight:600; color:var(--teal); line-height:1.62; }
.dl-note a { color:var(--teal); text-decoration:none; border-bottom:1px solid rgba(26,120,136,.4); }
.dl-note a:hover { color:var(--gold-hi); border-color:var(--gold-hi); }
.feat-row { max-width:1060px; margin:0 auto; display:grid; grid-template-columns:minmax(0,430px) 1fr; gap:3.6rem; align-items:center; }
.feat-row.text-first { grid-template-columns:1fr minmax(0,430px); }
.feat-img { width:100%; border-radius:4px; box-shadow:0 16px 30px rgba(10,30,60,.25); display:block; }
.ph-cover { aspect-ratio:2/3; }
.logo-row { display:flex; align-items:center; justify-content:center; gap:3.6rem; flex-wrap:wrap; margin-top:2.8rem; }
.kirkus-mark { font-family:'Cinzel',serif; font-size:1.55rem; letter-spacing:.14em; color:var(--blue); }
.teal-band { background:linear-gradient(180deg, rgba(7,33,49,.78) 0%, rgba(6,31,49,.90) 100%), #061f31 url('/wp-content/uploads/2026/07/footer-sea.jpg') center/cover no-repeat; }
.teal-band .bd-body { color:rgba(255,255,255,.9); }
.ph { background:repeating-linear-gradient(45deg,#dde7f0 0 11px,#e9f0f7 11px 22px); border:1px solid var(--silver-lite); border-radius:4px; display:flex; align-items:center; justify-content:center; text-align:center; padding:1rem; color:#6f8aa0; font-family:'Courier New',monospace; font-size:.64rem; letter-spacing:.04em; line-height:1.6; }
.feat-row .ph { width:100%; }
.sec, .cat-band, .qband { scroll-margin-top:88px; }
.rm { display:inline-flex; align-items:center; gap:.45em; }
.rm::after { content:'→'; transition:transform .25s ease; }
.rm:hover::after { transform:translateX(4px); }
.rm.inline { display:inline; }
.rm.inline::after { content:none; }
.group-head { text-align:center; margin-bottom:3.4rem; }
.group-head .orn { margin-top:1.3rem; }
.work-head { margin-bottom:2.5rem; }
.work-head .ov { display:block; font-family:'Cinzel',serif; font-size:.62rem; letter-spacing:.34em; text-transform:uppercase; color:var(--teal); margin-bottom:.7rem; }
.work-head .hl { display:flex; align-items:center; gap:1.4rem; }
.work-head h2 { font-family:'Cinzel Decorative',serif; font-size:clamp(1.35rem,2.5vw,2rem); font-weight:700; color:var(--text); line-height:1.18; }
.work-head .hl::after { content:''; flex:1; height:1px; background:linear-gradient(to right,var(--silver-lite),transparent); }
.feat-ov { text-align:center; font-family:'Cinzel',serif; font-size:.62rem; letter-spacing:.34em; text-transform:uppercase; color:var(--teal); margin-bottom:.85rem; }
.feat-ov.gold { color:var(--gold-pale); }
.chips { display:flex; gap:.6rem; flex-wrap:wrap; margin-top:1.5rem; }
.chip { font-family:'Cinzel',serif; font-size:.56rem; letter-spacing:.18em; text-transform:uppercase; color:var(--gold); border:1px solid rgba(168,124,24,.45); border-radius:100px; padding:.55em 1.05em; }
.cat-label { position:relative; }
.cat-label::after { content:''; display:block; width:0; height:1px; background:var(--gold-pale); margin:.5rem auto 0; transition:width .3s ease; }
.cat-card:hover .cat-label::after { width:30px; }
.acclaim-ov { text-align:center; font-family:'Cinzel',serif; font-size:.6rem; letter-spacing:.34em; text-transform:uppercase; color:var(--text-dim); margin:3.2rem 0 .2rem; }
