

/* ---------- ROOT ---------- */
:root{
  --fh-paper:#f6f1ea; --fh-paper-2:#efe7da; --fh-ink:#241a2b; --fh-ink-soft:#5c4f63;
  --fh-night:#150e20; --fh-night-2:#0c0813; --fh-night-soft:#cdbfd6;
  --fh-foil:#d8a657; --fh-foil-lite:#f0d49a; --fh-foil-deep:#a9772f;
  --fh-plum:#7d3f6e; --fh-plum-deep:#5a2b50; --fh-wine:#8a2f4f;
  --fh-line:#ddcdb8; --fh-wrap:1180px; --fh-r:10px;
}

/* ---------- BASE ---------- */
body {margin:0}
a {text-decoration: none;}
body.fh-page{margin:0;background:var(--fh-paper);color:var(--fh-ink);
  font-family:"Cormorant Garamond",Georgia,serif;font-size:19px;line-height:1.55;-webkit-font-smoothing:antialiased;font-weight:500;}
.fh-page *{box-sizing:border-box}
.fh-page img{max-width:100%;display:block}
html{scroll-behavior:smooth}
/* body {font-family:"Inter",sans-serif;font-size:14px;} */

/* ---------- LAYOUT + TYPE HELPERS ---------- */
.fh-wrap{max-width:var(--fh-wrap);margin:0 auto;padding:0 24px}
.fh-display{font-family:"Cinzel",serif;font-weight:600;letter-spacing:.02em;line-height:1.08}
.fh-eyebrow{font-family:"Inter",sans-serif;font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
.fh-foil-text{background:linear-gradient(176deg,var(--fh-foil-lite) 6%,var(--fh-foil) 46%,var(--fh-foil-deep) 96%);
  -webkit-background-clip:text;background-clip:text;color:transparent}

/* ---------- BUTTONS ---------- */
.fh-btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;font-family:"Inter",sans-serif;font-weight:600;
  font-size:14px;letter-spacing:.02em;padding:13px 26px;border-radius:6px;cursor:pointer;border:1px solid transparent;
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease, color .16s ease}
.fh-btn--foil{color:#1c1208;background:linear-gradient(177deg,var(--fh-foil-lite),var(--fh-foil) 55%,var(--fh-foil-deep));
  box-shadow:0 6px 18px -7px rgba(216,166,87,.6), inset 0 1px 0 rgba(255,255,255,.5)}
.fh-btn--foil:hover{transform:translateY(-2px);box-shadow:0 12px 26px -8px rgba(216,166,87,.7), inset 0 1px 0 rgba(255,255,255,.6)}
.fh-btn--ghost{color:var(--fh-foil-lite);border-color:rgba(216,166,87,.5);background:rgba(216,166,87,.06)}
.fh-btn--ghost:hover{background:rgba(216,166,87,.14)}
.fh-btn--ink{color:#fff;background:var(--fh-plum)}
.fh-btn--ink:hover{background:var(--fh-plum-deep);transform:translateY(-2px)}
.fh-btn--sm{padding:9px 18px;font-size:13px}
.fh-btn .arr{transition:transform .16s ease}
.fh-btn:hover .arr{transform:translateX(3px)}
.fh-btn:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* ---------- BANDS + ORNAMENTAL DIVIDERS ---------- */
.fh-band{padding:clamp(50px,7.5vw,65px) 0;position:relative}
.fh-band--paper{background:var(--fh-paper)}
.fh-band--tint{background:linear-gradient(180deg,var(--fh-paper-2),var(--fh-paper))}
.fh-band--night{
  background:radial-gradient(120% 80% at 15% 0%, rgba(125,63,110,.34) 0%, transparent 55%),
    radial-gradient(120% 90% at 100% 100%, rgba(47,90,160,.22) 0%, transparent 55%),
    linear-gradient(180deg,var(--fh-night),var(--fh-night-2));
  color:var(--fh-night-soft)}
.fh-band--night .fh-display{color:#fff}
.fh-band--night::before,.fh-band--night::after,.fh-foot::before{content:"";position:absolute;left:0;right:0;height:18px;pointer-events:none;
  background-repeat:no-repeat;background-position:center;
  background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='150'%20height='18'%20viewBox='0%200%20150%2018'%3E%3Cpath%20d='M75%203l5%206-5%206-5-6%205-6z'%20fill='%23d8a657'/%3E%3Ccircle%20cx='75'%20cy='9'%20r='1.5'%20fill='%23150e20'/%3E%3Ccircle%20cx='56'%20cy='9'%20r='1.4'%20fill='%23d8a657'/%3E%3Ccircle%20cx='94'%20cy='9'%20r='1.4'%20fill='%23d8a657'/%3E%3Cpath%20d='M40%209h10M100%209h10'%20stroke='%23d8a657'%20stroke-width='1'/%3E%3C/svg%3E"),
    linear-gradient(90deg,transparent,rgba(216,166,87,.45) 18%,rgba(216,166,87,.45) 82%,transparent);
  background-size:150px 18px,100% 1px}
.fh-band--night::before{top:0}.fh-band--night::after{bottom:0}

.fh-section-head{text-align:center;max-width:680px;margin:0 auto clamp(32px,5vw,50px)}
.fh-section-head .fh-eyebrow{color:var(--fh-foil-deep);margin-bottom:12px;display:block}
.fh-band--night .fh-section-head .fh-eyebrow{color:var(--fh-foil)}
.fh-section-head h2{margin:0;font-size:clamp(26px,4vw,40px)}
.fh-section-head p{color:var(--fh-ink-soft);margin:.6em 0 0}
.fh-band--night .fh-section-head p{color:var(--fh-night-soft)}
.fh-orn{display:flex;justify-content:center;color:var(--fh-foil);margin-bottom:18px}

/* ---------- COVER ---------- */
.fh-cover{aspect-ratio:2/3;border-radius:5px;overflow:hidden;border:1px solid var(--fh-line);
  box-shadow:0 12px 26px -16px rgba(36,26,43,.5);transition:transform .18s ease, box-shadow .18s ease}
.fh-cover:hover{transform:translateY(-4px);box-shadow:0 20px 36px -18px rgba(125,63,110,.6)}
.fh-cover img{width:100%;height:100%;object-fit:cover}


/* =====================================================================
   NAV 
   ===================================================================== */


.fh-nav{position:sticky;top:0;z-index:50;background:rgba(21,14,32,.94);backdrop-filter:blur(10px);
  border-bottom:1px solid rgba(216,166,87,.32);transition:padding .25s ease, box-shadow .25s ease}
.fh-nav__inner{display:flex;align-items:center;gap:24px;padding:18px 24px;max-width:1280px;margin:0 auto;transition:padding .25s ease}
.fh-nav.is-shrunk{box-shadow:0 8px 26px -14px rgba(0,0,0,.6)}
.fh-nav.is-shrunk .fh-nav__inner{padding:9px 24px}
.fh-wordmark{font-family:"Cinzel",serif;font-weight:700;font-size:clamp(18px,2.4vw,23px);letter-spacing:.06em;color:#fff;white-space:nowrap;transition:font-size .25s ease}
.fh-nav.is-shrunk .fh-wordmark{font-size:18px}
.fh-logo {display:flex;align-items:center}
.fh-logo img{max-height:100px;width:auto;display:block;transition:height .25s ease}
.fh-nav.is-shrunk .fh-logo img{height:50px}
.fh-menu{display:flex;gap:22px;margin:0 auto;list-style:none;padding:0}
.fh-menu>li{position:relative}
.fh-menu a{font-family:"Inter",sans-serif;font-size:14px;font-weight:500;color:#ece3f0;letter-spacing:.01em;padding:6px 2px;border-bottom:2px solid transparent;transition:.15s; display:inline-flex; align-items:center}
.fh-menu a:hover,.fh-menu a.active{color:var(--fh-foil-lite);border-color:var(--fh-foil)}
.fh-has-sub>a{gap:5px}
.fh-has-sub>a .caret{width:9px;height:6px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
.fh-has-sub:hover>a .caret,.fh-has-sub:focus-within>a .caret{transform:rotate(180deg)}
.fh-submenu{position:absolute;top:100%;left:0;margin:0;padding:10px;list-style:none;min-width:230px;background:#1d1230;
  border:1px solid rgba(216,166,87,.3);border-radius:8px;box-shadow:0 18px 40px -16px rgba(0,0,0,.7);
  opacity:0;visibility:hidden;transform:translateY(6px);transition:opacity .18s,transform .18s,visibility .18s;z-index:60}
.fh-has-sub:hover>.fh-submenu,.fh-has-sub:focus-within>.fh-submenu{opacity:1;visibility:visible;transform:translateY(0)}
.fh-submenu li{margin:0}
.fh-submenu a{display:block;font-family:"Inter",sans-serif;font-size:13.5px;font-weight:500;color:#e7dcec;padding:8px 12px;border-radius:5px;border:0;white-space:nowrap}
.fh-submenu a:hover{background:rgba(216,166,87,.14);color:var(--fh-foil-lite)}
.fh-submenu--2col{display:grid;grid-template-columns:1fr 1fr;min-width:440px}
.fh-submenu--3col{display:grid;grid-template-columns:repeat(3,1fr);min-width:560px}
.fh-nav__right{display:flex;align-items:center;gap:16px}
.fh-social{display:flex;gap:12px;list-style:none;margin:0;padding:0}
.fh-social a{color:#d7cadf;transition:color .15s, transform .15s;display:grid;place-items:center}
.fh-social a:hover{color:var(--fh-foil-lite);transform:translateY(-2px)}
.fh-social svg{width:18px;height:18px;fill:currentColor}
.fh-burger{display:none;background:none;border:0;font-family:"Inter",sans-serif;font-size:24px;line-height:1;color:#fff;cursor:pointer}
/* mobile panel */
.fh-mobile{position:absolute;left:0;right:0;top:100%;overflow:hidden;max-height:0;transition:max-height .3s ease;
  background:#160e20;border-top:1px solid rgba(216,166,87,.18);box-shadow:0 16px 30px -16px rgba(0,0,0,.6)}
.fh-nav.is-open .fh-mobile{max-height:calc(100vh - 60px);overflow-y:auto}
.fh-mobile__inner{padding:10px 24px 20px;display:flex;flex-direction:column}
.fh-mobile .mlink{font-family:"Inter",sans-serif;font-size:16px;font-weight:500;color:#ece3f0;padding:14px 4px;border-bottom:1px solid rgba(216,166,87,.12)}
.fh-mobile .mlink:hover{color:var(--fh-foil-lite)}
.msub{border-bottom:1px solid rgba(216,166,87,.12)}
.msub>summary{list-style:none;cursor:pointer;font-family:"Inter",sans-serif;font-size:16px;font-weight:500;color:#ece3f0;padding:14px 4px;display:flex;justify-content:space-between;align-items:center}
.msub>summary::-webkit-details-marker{display:none}
.msub>summary .caret{width:11px;height:7px;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s}
.msub[open]>summary .caret{transform:rotate(180deg)}
.msub__links{display:flex;flex-direction:column;padding:0 0 12px 12px}
.msub__links a{font-family:"Inter",sans-serif;font-size:14px;color:#cbbcd4;padding:9px 4px}
.msub__links a:hover{color:var(--fh-foil-lite)}
.fh-mobile__social{display:flex;gap:20px;padding:16px 4px 4px}
.fh-mobile__social a{color:#d7cadf;display:grid;place-items:center}
.fh-mobile__social a:hover{color:var(--fh-foil-lite)}
.fh-mobile__social svg{width:20px;height:20px;fill:currentColor}
.fh-mobile .fh-btn{margin-top:14px}
@media(min-width:1001px){.fh-mobile{display:none}}
@media(max-width:1000px){.fh-menu,.fh-nav__right{display:none}.fh-burger{display:block;margin-left:auto}}


/* =====================================================================
   HOMEPAGE COMPONENTS
   ===================================================================== */


.fh-hero{display:grid;grid-template-columns:minmax(0,0.7fr) minmax(0,1fr);gap:clamp(32px,6vw,72px);align-items:start;}
.fh-hero__art{position:relative;display:flex;justify-content:center; padding-top: 60px;}
.fh-hero__cover{width:min(400px,80%);aspect-ratio:2/3;border-radius:6px;overflow:hidden;border:1px solid rgba(216,166,87,.5);
  box-shadow:0 30px 70px -20px rgba(125,63,110,.7), 0 12px 30px rgba(0,0,0,.45)}
.fh-hero__cover img{width:100%;height:100%;object-fit:cover}
.fh-hero__glow{position:absolute;inset:-12% -8%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side, rgba(125,63,110,.55), transparent 70%);filter:blur(18px)}
.fh-hero h1{margin:0 0 6px;font-size:14px}
.fh-hero .series{display:inline-block;font-family:"Inter",sans-serif;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fh-foil);margin-bottom:14px}
.fh-hero .series a {color:var(--fh-foil);}
.fh-hero .series a:hover{color:var(--fh-foil-lite);}
.fh-hero .title{font-size:clamp(38px,6vw,64px);margin:0 0 18px}
.fh-hero .hook{font-size:clamp(19px,2.4vw,23px);color:#efe6dd;font-style:italic;margin:0 0 14px}
.fh-hero .blurb{color:var(--fh-night-soft);margin:0 0 26px;}
.fh-hero__cta{display:flex;gap:14px;flex-wrap:wrap}


.fh-author-tiles{display:grid;grid-template-columns:repeat(2,1fr);gap:65px;}
.fh-author-tiles h2 {margin: 0 0 16px 0}
.fh-author-tiles p {margin: 0 0 16px 0}
.fh-author-bio-tiles{display:grid;grid-template-columns:minmax(0, 0.45fr) minmax(0, 1fr);gap:20px;align-items:flex-start}
.fh-author-bio_photo{flex:0 0 auto;width:150px;height:150px;border-radius:50%;overflow:hidden;border:1px solid rgba(216,166,87,.5);background:linear-gradient(160deg,var(--fh-plum),#2a1230);display:grid;place-items:center;font-family:"Inter",sans-serif;font-size:9px;color:#d9c7b0;text-align:center;letter-spacing:.08em}
.fh-author-bio_photo img {width: 100%; height: 100%;}
.fh-special-editions img {width: 100%; margin: 0 0 16px 0;}

.fh-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.fh-tile{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:36px 28px;text-align:center;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;position:relative;overflow:hidden}
.fh-tile::after{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--fh-foil-deep),var(--fh-foil),var(--fh-foil-deep));opacity:0;transition:opacity .18s}
.fh-tile:hover{transform:translateY(-4px);box-shadow:0 22px 44px -24px rgba(36,26,43,.45);border-color:rgba(216,166,87,.5)}
.fh-tile:hover::after{opacity:1}
.fh-tile__icon{width:60px;height:60px;margin:0 auto 18px;color:var(--fh-plum)}
.fh-tile__icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.4}
.fh-tile h3{font-family:"Cinzel",serif;font-weight:600;font-size:21px;margin:0 0 8px;color:var(--fh-ink)}
.fh-tile p{color:var(--fh-ink-soft);font-size:16.5px;margin:0 0 18px}

.fh-news{max-width:620px;margin:0 auto;text-align:center}
.fh-news__form{display:flex;gap:10px;margin:24px auto 18px;max-width:620px}
.fh-news__form input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(216,166,87,.45);border-radius:6px;color:#fff;font-family:"Inter",sans-serif;font-size:15px;padding:13px 16px}
.fh-news__form input::placeholder{color:#9b8fa6}
.fh-news__form input:focus{outline:none;border-color:var(--fh-foil)}
.fh-sort{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:8px}
.fh-sort a{font-family:"Inter",sans-serif;font-size:13px;font-weight:600;color:var(--fh-night-soft);border:1px solid rgba(216,166,87,.32);padding:8px 16px;border-radius:999px;transition:.15s}
.fh-sort a:hover{color:var(--fh-foil-lite);border-color:var(--fh-foil)}

.fh-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(28px,5vw,56px);align-items:center}
.fh-feature__copy h2{font-family:"Cinzel",serif;font-weight:600;font-size:clamp(26px,3.6vw,38px);margin:0 0 16px;color:var(--fh-ink)}
.fh-feature__copy p{color:var(--fh-ink-soft);margin:0 0 16px}
.fh-feature__covers{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}

.fh-community{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.fh-comm{display:flex;flex-direction:column;align-items:center;text-align:center;background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:32px 22px;transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.fh-comm:hover{transform:translateY(-4px);box-shadow:0 22px 44px -24px rgba(36,26,43,.45);border-color:rgba(216,166,87,.5)}
.fh-comm__icon{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;margin-bottom:16px;color:#fff}
.fh-comm__icon svg{width:23px;height:23px;fill:currentColor}
.fh-comm h3{font-family:"Cinzel",serif;font-weight:600;font-size:18px;margin:0 0 7px;color:var(--fh-ink)}
.fh-comm p{font-size:15.5px;color:var(--fh-ink-soft);margin:0 0 18px}
.fh-comm .fh-btn{margin-top:auto}
.ic-fb{background:#1877f2}.ic-ig{background:linear-gradient(45deg,#f09433,#dc2743,#bc1888)}.ic-tt{background:#111}.ic-nl{background:var(--fh-plum)}

.fh-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.fh-card{text-align:center}
.fh-card .fh-cover, .fh-slide .fh-cover {margin-bottom:16px; display:block;}
.fh-card h3{font-family:"Cinzel",serif;font-weight:500;font-size:18px;margin:0 0 8px}
.fh-card h3 a{color:var(--fh-ink)}
.fh-card p{color:var(--fh-ink-soft);font-size:16px;margin:0 0 14px}
.fh-band--night .fh-card h3 a{color:#fff}
.fh-band--night .fh-card p{color:var(--fh-night-soft)}
.fh-band--night .fh-card .fh-btn--ink{background:transparent;color:var(--fh-foil-lite);border-color:rgba(216,166,87,.5)}
.fh-band--night .fh-card .fh-btn--ink:hover{background:rgba(216,166,87,.14);transform:translateY(-2px)}

.fh-news-grid{display:grid;grid-template-rows: repeat(2, auto);grid-template-columns:repeat(2, 1fr); grid-auto-flow: column; grid-auto-columns: 1fr; gap: 10px 40px; max-width:980px;margin:0 auto}

.fh-post{border-left:2px solid var(--fh-foil);padding-left:18px;margin-bottom:22px}
.fh-post .date{font-family:"Inter",sans-serif;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--fh-ink-soft);margin:0 0 4px}
.fh-post h3{font-family:"Cinzel",serif;font-weight:500;font-size:19px;margin:0}
.fh-post h3 a{color:var(--fh-ink)}


/* =====================================================================
   BOOK PAGE COMPONENTS
   ===================================================================== */


.fh-book{display:grid;grid-template-columns:300px minmax(0,1fr);gap:clamp(32px,5vw,64px);align-items:start}
.fh-book__cover{position:relative}
.fh-book__cover .fh-cover{border-color:rgba(216,166,87,.5);box-shadow:0 30px 70px -20px rgba(125,63,110,.7),0 12px 30px rgba(0,0,0,.45)}
.fh-glow{position:absolute;inset:-8% -6% 40%;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(125,63,110,.55),transparent 70%);filter:blur(18px)}
.fh-book__info .series{font-family:"Inter",sans-serif;font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--fh-foil)}
.fh-book__info .series a {color:var(--fh-foil)} 
.fh-book__info .title{font-size:clamp(40px,6vw,64px);margin:10px 0 12px}
.fh-book__info .meta{font-family:"Inter",sans-serif;font-size:13px;letter-spacing:.04em;color:var(--fh-foil);margin:0 0 20px}
.fh-book__info .tagline{font-size:clamp(20px,2.6vw,25px);font-style:italic;color:#fff;margin:0 0 20px}
.fh-book__blurb p{color:var(--fh-night-soft);margin:0 0 14px; font-size: 18px;}
.fh-book__blurb .lead{font-size:21px;font-style:italic;color:#fff}
.fh-buybox{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.fh-buybox__label{font-family:"Inter",sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--fh-foil);margin:0 0 2px;text-align:center}
.fh-buy{border-radius:6px}
.fh-buy>summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;font-family:"Inter",sans-serif;font-weight:600;font-size:14.5px;color:var(--fh-foil-lite);border:1px solid rgba(216,166,87,.5);background:rgba(216,166,87,.07);padding:13px 16px;border-radius:6px;transition:background .15s}
.fh-buy>summary::-webkit-details-marker{display:none}
.fh-buy>summary:hover{background:rgba(216,166,87,.14)}
.fh-buy>summary .chev{transition:transform .2s}
.fh-buy[open]>summary{border-radius:6px 6px 0 0;border-bottom-color:transparent}
.fh-buy[open]>summary .chev{transform:rotate(180deg)}
.fh-buy__menu{border:1px solid rgba(216,166,87,.3);border-top:0;border-radius:0 0 6px 6px;overflow:hidden}
.fh-buy__menu a{display:flex;justify-content:space-between;align-items:center;padding:11px 16px;font-family:"Inter",sans-serif;font-size:13.5px;color:#ece3f0;border-bottom:1px solid rgba(216,166,87,.12)}
.fh-buy__menu a:last-child{border-bottom:0}
.fh-buy__menu a:hover{background:rgba(216,166,87,.12);color:var(--fh-foil-lite)}
.fh-buy__menu a span{font-size:10.5px;color:#9286a3}
.fh-excerpt{margin-top:24px;border:1px solid rgba(216,166,87,.3);border-radius:var(--fh-r);background:rgba(255,255,255,.03);overflow:hidden}
.fh-excerpt>summary{list-style:none;cursor:pointer;font-family:"Inter",sans-serif;font-weight:600;font-size:14px;letter-spacing:.04em;color:var(--fh-foil-lite);padding:15px 20px;display:flex;justify-content:space-between;align-items:center}
.fh-excerpt>summary::-webkit-details-marker{display:none}
.fh-excerpt>summary .chev{transition:transform .2s}
.fh-excerpt[open]>summary{border-bottom:1px solid rgba(216,166,87,.2)}
.fh-excerpt[open]>summary .chev{transform:rotate(180deg)}
.fh-excerpt__body{padding:10px 24px 20px;max-height:380px;overflow:auto}
.fh-excerpt__body p{font-size:17px;color:var(--fh-night-soft);margin:0 0 13px}
.fh-excerpt__body em{color:#fff}
/* book page uses a light "story" variant of the excerpt when placed on a paper band: */
.fh-band--paper .fh-excerpt{background:#fff;border-color:var(--fh-line)}
.fh-band--paper .fh-excerpt>summary{color:var(--fh-plum)}
.fh-band--paper .fh-excerpt__body p{color:var(--fh-ink)}
.fh-band--paper .fh-excerpt__body em{color:var(--fh-plum-deep)}

.fh-carousel .fh-cover{aspect-ratio:2/3;border-radius:5px;overflow:hidden;border:1px solid var(--fh-line);
  box-shadow: none;transition:none;}
.fh-carousel .fh-cover:hover{transform:none;box-shadow:none;}

.fh-carousel{max-width:1240px;margin:0 auto;padding:0 56px}
/*.fh-carousel{position:relative;max-width:1240px;margin:0 auto;padding:0 56px}
.fh-carousel__track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 4px 18px;scrollbar-width:thin}
.fh-carousel__track::-webkit-scrollbar{height:6px}
.fh-carousel__track::-webkit-scrollbar-thumb{background:var(--fh-line);border-radius:3px}*/
.fh-slide {flex:0 0 auto;width:230px;scroll-snap-align:start;text-align:center}
.fh-slide .fh-cover{margin-bottom:14px}
.fh-slide h3{font-family:"Cinzel",serif;font-weight:500;font-size:17px;margin:0 0 4px}
.fh-slide h3 a{color:var(--fh-ink)}
.fh-slide .bk{font-family:"Inter",sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--fh-foil-deep);margin:0 0 10px}
.fh-slide img {width: 100%; height: 100%; object-fit: cover;}
.fh-arrow, .slick-arrow {position:absolute;top:38%;width:42px;height:42px;border-radius:50%;border:1px solid var(--fh-line);background:#fff;color:var(--fh-plum);display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 16px -8px rgba(36,26,43,.4);transition:.15s;z-index:2}
.fh-arrow--prev, .slick-prev {left:-40px}
.fh-arrow--next, .slick-next {right:-40px}
.fh-arrow, .slick-arrow svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2}

/* compact variant — used when a series has fewer than 5 books.
   No arrows, no scroll — the row just centres and wraps if needed. */
.fh-carousel--compact{padding:0 24px}
.fh-carousel--compact .fh-arrow{display:none}
.fh-carousel--compact .fh-carousel__track{justify-content:center;flex-wrap:wrap;overflow-x:visible;scroll-snap-type:none;padding-bottom:0}

h3.trope-header {
    color:var(--fh-foil);
	margin-block-end: 0.5em;
}

.fh-tropes {
    list-style: none;
    padding: 0;
	margin-block-start: 0.5em;
}

.fh-tropes li::before {
    content: "\2665";
    margin-right: .5em;
}

.fh-split{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.fh-split__card{border-radius:var(--fh-r);padding:clamp(26px,4vw,40px)}
.fh-split--soon{background:#fff;border:1px solid var(--fh-line);display:flex;gap:22px;align-items:center}
.fh-split--soon .fh-cover{width:120px;flex:0 0 auto}
.fh-split--soon .fh-eyebrow{color:var(--fh-foil-deep);display:block;margin-bottom:8px}
.fh-split--soon h3{font-family:"Cinzel",serif;font-weight:600;font-size:24px;margin:0 0 8px;color:var(--fh-ink)}
.fh-split--soon .fh-count{font-family:"Inter",sans-serif;font-size:14px;font-weight:600;color:var(--fh-plum);margin:0 0 16px}
.fh-split--nl{background:radial-gradient(120% 90% at 20% 0%, rgba(125,63,110,.4), transparent 60%),linear-gradient(180deg,var(--fh-night),var(--fh-night-2));border:1px solid rgba(216,166,87,.35);text-align:center;position:relative;overflow:hidden}
.fh-split--nl .fh-eyebrow{color:var(--fh-foil);display:block;margin-bottom:10px}
.fh-split--nl h3{font-family:"Cinzel",serif;font-weight:600;font-size:26px;color:#fff;margin:0 0 8px}
.fh-split--nl p{color:var(--fh-night-soft);font-size:16px;margin:0 0 18px}
.fh-split--nl .row{display:flex;gap:10px;max-width:380px;margin:0 auto}
.fh-split--nl input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(216,166,87,.4);border-radius:6px;color:#fff;font-family:"Inter",sans-serif;font-size:14px;padding:12px 14px}

.fh-discovery {
    display: grid;
    grid-template-columns: minmax(180px, .7fr) minmax(0, 1.3fr);
    gap: 2rem 4rem;
    align-items: start;
    margin-top: 1.5rem;
}

.fh-discovery__group .trope-header {
    margin-top: 0;
}

@media (max-width: 700px) {
    .fh-discovery {
        grid-template-columns: 1fr;
        gap: 1.25rem;
    }
}

.bonus-scene {margin-top: 20px;}
.bonus-scene .fh-btn {margin: auto;}



/* =====================================================================
   ALL BOOKS PAGE COMPONENTS
   ===================================================================== */

.bd-hero{text-align:center}
.bd-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.bd-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}

.bd-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-bottom:42px}
.bd-filter{
    font-family:"Inter",sans-serif;
    font-size:12px;
    font-weight:600;
    color:var(--fh-plum);
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:999px;
    padding:8px 14px;
    transition:.15s
}
.bd-filter:hover,.bd-filter.is-active{
    color:#fff;
    background:var(--fh-plum);
    border-color:var(--fh-plum)
}

.bd-heading{text-align:center;margin:0 auto 34px}
.bd-heading h2{font-family:"Cinzel",serif;font-size:clamp(26px,4vw,40px);margin:0 0 8px;color:var(--fh-ink)}
.bd-heading p{color:var(--fh-ink-soft);margin:0}

.bd-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:34px 22px
}
.bd-card{text-align:center;min-width:0}
.bd-card .fh-cover{display:block;margin-bottom:12px}
.bd-card h3{
    font-family:"Cinzel",serif;
    font-weight:500;
    font-size:16px;
    line-height:1.3;
    margin:0 0 9px
}
.bd-card h3 a{color:var(--fh-ink)}
.bd-preorder{
    font-family:"Inter",sans-serif;
    font-size:10.5px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--fh-foil-deep);
    margin:0 0 8px
}

.bd-empty{text-align:center;color:var(--fh-ink-soft);padding:30px 0}

.bd-boxsets{margin-top:72px;padding-top:52px;border-top:1px solid var(--fh-line)}

@media(max-width:1000px){
    .bd-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:780px){
    .bd-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:560px){
    .bd-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
}


/* =====================================================================
   SERIES PAGE COMPONENTS
   ===================================================================== */

.fh-wrap-series .fh-section-head {max-width:100%;}
.fh-series-intro { max-width: 900px; margin: 0 auto; }
.fh-series-intro .title { font-size:clamp(30px,5vw,40px);margin:10px 0 24px; text-align: center; }
.fh-series-description { margin: 0; }
.fh-series-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:32px 20px; }
.fh-series-card { min-width:0; text-align:center; }
.fh-series-card .fh-cover { display:block; margin-bottom:12px; }
.fh-series-card .fh-cover img { display:block; width:100%; height:auto; }
.fh-series-boxsets { margin-top:70px; }

.fh-series-card .fh-preorder-label {
    color: var(--fh-foil-deep);
	font-family: "Inter", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .22em;
    text-transform: uppercase;
}
@media (max-width:1000px){ .fh-series-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:650px){ .fh-series-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px 14px; } }


/* =====================================================================
   ALL SERIES PAGE COMPONENTS
   ===================================================================== */

.sd-hero{text-align:center}
.sd-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.sd-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}

.sd-world{margin-bottom:44px}
.sd-world:last-child{margin-bottom:0}
.sd-world__head{display:flex;align-items:center;gap:18px;margin:0 0 6px}
.sd-world__head h2{font-family:"Cinzel",serif;font-size:clamp(23px,3.2vw,32px);margin:0;color:var(--fh-ink);white-space:nowrap}
.sd-world__head .line{flex:1;height:1px;background:linear-gradient(90deg,var(--fh-foil),rgba(216,166,87,.1))}
.sd-world__sub{color:var(--fh-ink-soft);margin:0 0 22px;max-width:76ch;font-size:17px}

/*.sd-track{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:22px 24px;margin-bottom:16px}
.sd-track__head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}
.sd-track__head h3{font-family:"Cinzel",serif;font-size:20px;margin:0 0 4px;color:var(--fh-ink)}*/
.sd-meta{font-family:"Inter",sans-serif;font-size:12px;color:var(--fh-ink-soft);margin:0;letter-spacing:.03em}
.sd-track__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.sd-view{font-family:"Inter",sans-serif;font-size:13px;font-weight:600;color:var(--fh-plum);white-space:nowrap}

.sd-books{display:flex;flex-wrap:wrap;gap:16px}
.sd-book{width:94px;text-align:center}
.sd-book .fh-cover{margin-bottom:7px}
.sd-book span{font-family:"Inter",sans-serif;font-size:11px;line-height:1.25;color:var(--fh-ink-soft);display:block}

.sd-actions{text-align:center;margin-top:36px}

@media(max-width:700px){
    .sd-track__head{flex-direction:column}
    .sd-track__actions{justify-content:flex-start}
    .sd-view{white-space:normal}
}


/* =====================================================================
   READING-ORDER COMPONENTS
   ===================================================================== */


.ro-hero{text-align:center}
.ro-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.ro-hero p{max-width:60ch;margin:16px auto 0;color:var(--fh-night-soft)}
.ro-note{max-width:760px;margin:22px auto 0;font-size:16px;color:var(--fh-night-soft);background:rgba(216,166,87,.07);border:1px solid rgba(216,166,87,.28);border-radius:8px;padding:14px 20px}
.ro-note strong{color:var(--fh-foil-lite)}
.ro-start{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ro-startcard{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:26px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:.18s}
.ro-startcard:hover{transform:translateY(-4px);box-shadow:0 24px 46px -26px rgba(36,26,43,.5);border-color:rgba(216,166,87,.5)}
.ro-startcard .fh-cover{width:150px;margin-bottom:18px}
.ro-startcard .rank{font-family:"Inter",sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--fh-foil-deep);margin-bottom:6px}
.ro-startcard h3{font-family:"Cinzel",serif;font-size:22px;margin:0 0 5px;color:var(--fh-ink)}
.ro-startcard .genre{font-family:"Inter",sans-serif;font-size:13px;color:var(--fh-ink-soft);margin:0 0 18px;line-height:1.45}
.ro-startcard .fh-btn{margin-top:auto}
.ro-world{margin-bottom:36px}
.ro-world__head{display:flex;align-items:center;gap:18px;margin:0 0 6px}
.ro-world__head h2{font-family:"Cinzel",serif;font-size:clamp(23px,3.2vw,32px);margin:0;color:var(--fh-ink);white-space:nowrap}
.ro-world__head .line{flex:1;height:1px;background:linear-gradient(90deg,var(--fh-foil),rgba(216,166,87,.1))}
.ro-world__sub{color:var(--fh-ink-soft);margin:0 0 22px;max-width:74ch;font-size:17px}
.ro-track, .sd-track{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:22px 24px;margin-bottom:16px}
.ro-track__head, .sd-track__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.ro-track__head h3, .sd-track__head h3{font-family:"Cinzel",serif;font-size:20px;margin:0;color:var(--fh-ink)}
.ro-count{font-family:"Inter",sans-serif;font-size:12px;color:var(--fh-ink-soft);letter-spacing:.03em}
.ro-badge{font-family:"Inter",sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#7a3a12;background:#f4d9a4;border:1px solid #e2b86d;padding:3px 10px;border-radius:999px}
.ro-badge--status{color:var(--fh-plum-deep);background:#f0e5ee;border-color:#d9bfd3}
.ro-view{margin-left:auto;font-family:"Inter",sans-serif;font-size:13px;font-weight:600;color:var(--fh-plum)}
.ro-books{display:flex;flex-wrap:wrap;gap:16px}
.ro-book{width:94px;position:relative;text-align:center}
.ro-book .fh-cover{margin-bottom:7px}
.ro-book .num{position:absolute;top:-8px;left:-8px;min-width:24px;height:24px;padding:0 5px;border-radius:999px;background:var(--fh-plum);color:#fff;font-family:"Inter",sans-serif;font-size:12px;font-weight:600;display:grid;place-items:center;z-index:2;box-shadow:0 2px 6px rgba(0,0,0,.35)}
.ro-book .t{font-family:"Inter",sans-serif;font-size:11px;line-height:1.25;color:var(--fh-ink-soft);display:block}
.ro-cross{background:linear-gradient(180deg,#fbf4e6,#f5eddc);border:1px solid #e6d3a8;border-left:3px solid var(--fh-foil);border-radius:8px;padding:20px 22px;margin:6px 0 28px}
.ro-cross h4{font-family:"Inter",sans-serif;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--fh-foil-deep);margin:0 0 14px;display:flex;align-items:center;gap:9px}
.ro-cross h4 svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6}
.ro-cross ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:11px}
.ro-cross li{font-size:16.5px;color:var(--fh-ink);padding-left:22px;position:relative;line-height:1.45}
.ro-cross li::before{content:"\21B3";position:absolute;left:0;color:var(--fh-foil-deep);font-size:16px}
.ro-cross em{font-style:italic;color:var(--fh-plum-deep);font-weight:500}
@media(max-width:820px){.ro-start{grid-template-columns:1fr;max-width:340px;margin:0 auto}.ro-view{width:100%;margin-left:0}}



/* =====================================================================
   TROPES and GENRES PAGES COMPONENTS
   ===================================================================== */

.directory-hero{text-align:center}
.directory-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.directory-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}
.directory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.directory-card{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:28px 24px;text-align:center;transition:.18s}
.directory-card:hover{transform:translateY(-4px);box-shadow:0 22px 44px -24px rgba(36,26,43,.45);border-color:rgba(216,166,87,.5)}
.directory-card h2{font-family:"Cinzel",serif;font-size:20px;margin:0 0 8px;color:var(--fh-ink)}
.directory-card p{font-family:"Inter",sans-serif;font-size:12px;color:var(--fh-ink-soft);margin:0 0 18px}
@media(max-width:900px){.directory-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.directory-grid{grid-template-columns:1fr}}

.discovery-hero{text-align:center}
.discovery-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.discovery-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}

.discovery-head{text-align:center;margin:0 auto 34px}
.discovery-head h2{font-family:"Cinzel",serif;font-size:clamp(26px,4vw,40px);margin:0 0 8px;color:var(--fh-ink)}
.discovery-head p{color:var(--fh-ink-soft);margin:0}

.discovery-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:34px 22px
}
.discovery-card{text-align:center;min-width:0}
.discovery-card .fh-cover{display:block;margin-bottom:12px}
.discovery-card h3{
    font-family:"Cinzel",serif;
    font-weight:500;
    font-size:16px;
    line-height:1.3;
    margin:0 0 9px
}
.discovery-card h3 a{color:var(--fh-ink)}
.discovery-preorder{
    font-family:"Inter",sans-serif;
    font-size:10.5px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--fh-foil-deep);
    margin:0 0 8px
}
.discovery-empty{text-align:center;color:var(--fh-ink-soft);padding:30px 0}
.discovery-actions{text-align:center;margin-top:44px}

@media(max-width:1000px){
    .discovery-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media(max-width:780px){
    .discovery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:560px){
    .discovery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}
}



/* =====================================================================
   BONUS SCENES COMPONENTS
   ===================================================================== */


.bs-hero{text-align:center}
.bs-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.bs-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}

.bs-grid{
    display:flex;
    flex-direction:column;
    gap:28px;
}

.bs-card{
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:28px 26px;
}

.bs-card__head{
    display:flex;
    justify-content:space-between;
    gap:24px;
    align-items:flex-end;
    padding-bottom:18px;
    margin-bottom:18px;
    border-bottom:1px solid var(--fh-line);
}

.bs-card__head-copy{max-width:760px}

.bs-card__head h2{
    font-family:"Cinzel",serif;
    font-size:24px;
    line-height:1.25;
    margin:0 0 8px;
    color:var(--fh-ink);
}

.bs-card__head p{
    color:var(--fh-ink-soft);
    font-size:16px;
    line-height:1.45;
    margin:0;
}

.bs-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
}

.bs-scene{
    border:1px solid #e6d3a8;
    border-radius:8px;
    background:linear-gradient(180deg,#fbf4e6,#f5eddc);
    overflow:hidden;
}

.bs-scene__link{
    display:flex;
    align-items:center;
    gap:14px;
    padding:12px 14px;
    color:inherit;
    min-height:100%;
}

.bs-scene__cover{
    width:58px;
    flex:0 0 58px;
}

.bs-scene__cover img{
    display:block;
    width:100%;
    height:auto;
    border-radius:4px;
    box-shadow:0 6px 14px -8px rgba(36,26,43,.55);
}

.bs-scene__content{
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:4px;
}

.bs-scene__type{
    display:block;
    font-family:"Inter",sans-serif;
    font-size:10px;
    font-weight:600;
    letter-spacing:.14em;
    text-transform:uppercase;
    color:var(--fh-foil-deep);
}

.bs-scene__title{
    font-family:"Cinzel",serif;
    font-size:15px;
    line-height:1.3;
    color:var(--fh-plum);
    font-weight:600;
}

.bs-scene__link:hover .bs-scene__title{
    color:var(--fh-plum-deep);
}

.bs-note{
    max-width:760px;
    margin:36px auto 0;
    text-align:center;
    color:var(--fh-ink-soft);
}

@media(max-width:900px){
    .bs-list{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){
    .bs-card__head{
        flex-direction:column;
        align-items:flex-start;
    }
}

@media(max-width:600px){
    .bs-list{
        grid-template-columns:1fr;
    }
}



/* =====================================================================
   NEWS PAGE
   ===================================================================== */

.news-hero{text-align:center}
.news-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.news-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}

.news-list{
    max-width:900px;
    margin:0 auto;
    display:flex;
    flex-direction:column;
    gap:22px;
}

.news-item{
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:clamp(24px,4vw,38px);
    box-shadow:0 16px 36px -28px rgba(36,26,43,.45);
    position:relative;
    overflow:hidden;
}

.news-item::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    width:3px;
    background:linear-gradient(180deg,var(--fh-foil-lite),var(--fh-foil),var(--fh-foil-deep));
}

.news-item__date{
    font-family:"Inter",sans-serif;
    font-size:11px;
    font-weight:600;
    letter-spacing:.15em;
    text-transform:uppercase;
    color:var(--fh-foil-deep);
    margin:0 0 8px;
}

.news-item h2{
    font-family:"Cinzel",serif;
    font-weight:600;
    font-size:clamp(22px,3vw,30px);
    line-height:1.2;
    color:var(--fh-ink);
    margin:0 0 18px;
}

.news-item__body{
    color:var(--fh-ink-soft);
}

.news-item__body p:first-child{margin-top:0}
.news-item__body p:last-child{margin-bottom:0}
.news-item__body a{color:var(--fh-plum);text-decoration:underline;text-underline-offset:2px}
.news-item__body a:hover{color:var(--fh-plum-deep)}
.news-item__body img{height:auto;border-radius:6px;margin:20px auto}
.news-item__body h3,
.news-item__body h4{
    font-family:"Cinzel",serif;
    color:var(--fh-ink);
}

.news-pagination{
    max-width:900px;
    margin:42px auto 0;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:14px;
}

.news-pagination__count{
    font-family:"Inter",sans-serif;
    font-size:12px;
    color:var(--fh-ink-soft);
    margin:0;
}

.news-pagination__links{
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:8px;
}

.news-page-link{
    min-width:38px;
    height:38px;
    padding:0 11px;
    border-radius:999px;
    border:1px solid var(--fh-line);
    background:#fff;
    color:var(--fh-plum);
    font-family:"Inter",sans-serif;
    font-size:12px;
    font-weight:600;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    transition:.15s;
}

.news-page-link:hover{
    border-color:var(--fh-plum);
    background:var(--fh-paper-2);
}

.news-page-link.is-current{
    background:var(--fh-plum);
    border-color:var(--fh-plum);
    color:#fff;
}

.news-page-link.is-disabled{
    opacity:.4;
    pointer-events:none;
}

.news-empty{
    text-align:center;
    color:var(--fh-ink-soft);
    max-width:700px;
    margin:0 auto;
}

@media(max-width:600px){
    .news-item{padding:24px 22px 24px 25px}
    .news-page-link{
        min-width:34px;
        height:34px;
        padding:0 9px;
    }
}



/* =====================================================================
   COMMUNITY PAGE
   ===================================================================== */






/* =====================================================================
   COMING SOON / WIP PAGE
   ===================================================================== */

.cs-hero{text-align:center}
.cs-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.cs-hero p{max-width:68ch;margin:16px auto 0;color:var(--fh-night-soft)}

.cs-preorders{display:flex;flex-direction:column;gap:24px;max-width:1020px;margin:0 auto}
.cs-preorder{
    display:grid;
    grid-template-columns:180px minmax(0,1fr);
    gap:30px;
    align-items:center;
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:24px;
    box-shadow:0 16px 36px -30px rgba(36,26,43,.45);
}
.cs-preorder__cover{width:100%}
.cs-preorder__cover img{
    display:block;width:100%;height:auto;border-radius:6px;
    box-shadow:0 14px 28px -18px rgba(36,26,43,.65);
}
.cs-preorder__date{
    display:block;margin:0 0 8px;font-family:"Inter",sans-serif;font-size:11px;
    font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--fh-foil-deep)
}
.cs-preorder h3{
    margin:0 0 6px;font-family:"Cinzel",serif;font-size:clamp(25px,3vw,34px);
    line-height:1.15;color:var(--fh-ink)
}
.cs-preorder h3 a{ color:var(--fh-ink); }
.cs-preorder h3 a:hover{ color:var(--fh-ink-soft); }

.cs-preorder__series{
    margin:0 0 16px;color:var(--fh-plum);font-family:"Inter",sans-serif;
    font-size:13px;font-weight:600;letter-spacing:.02em
}
.cs-preorder__series a{color:inherit}
.cs-preorder__promo{
    max-width:680px;margin:0 0 22px;font-size:18px;line-height:1.5;color:var(--fh-ink-soft)
}
.cs-preorder__actions{display:flex;flex-wrap:wrap;gap:10px}
.cs-empty{max-width:760px;margin:0 auto;text-align:center;color:var(--fh-ink-soft)}

.cs-wip-wrap{max-width:1020px;margin:0 auto}
.cs-wip-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cs-wip-card{
    background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);
    padding:24px;position:relative;overflow:hidden
}
.cs-wip-card::before{
    content:"";position:absolute;left:0;right:0;top:0;height:3px;
    background:linear-gradient(90deg,var(--fh-foil-deep),var(--fh-foil),var(--fh-foil-lite))
}
.cs-wip-status{
    display:inline-block;margin:0 0 14px;padding:5px 9px;border:1px solid #e4d2aa;
    border-radius:999px;background:#fbf4e6;color:var(--fh-foil-deep);
    font-family:"Inter",sans-serif;font-size:10px;font-weight:700;
    letter-spacing:.12em;text-transform:uppercase
}
.cs-wip-card h3{
    margin:0 0 5px;font-family:"Cinzel",serif;font-size:21px;line-height:1.25;color:var(--fh-ink)
}
.cs-wip-series{
    margin:0 0 15px;color:var(--fh-plum);font-family:"Inter",sans-serif;font-size:12px;font-weight:600
}
.cs-wip-card p:last-child{margin-bottom:0;color:var(--fh-ink-soft)}
.cs-note{
    max-width:760px;margin:28px auto 0;text-align:center;color:var(--fh-ink-soft);font-style:italic
}

@media(max-width:900px){
    .cs-wip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:700px){
    .cs-preorder{grid-template-columns:120px minmax(0,1fr);gap:20px;padding:20px}
    .cs-preorder__promo{font-size:16px}
}
@media(max-width:560px){
    .cs-preorder{display:block}
    .cs-preorder__cover{width:150px;margin:0 auto 22px}
    .cs-preorder__body{text-align:center}
    .cs-preorder__actions{justify-content:center}
    .cs-wip-grid{grid-template-columns:1fr}
}



/* =====================================================================
   NEWSLETTER PAGE
   ===================================================================== */

.fh-newsletter-layout{
    display:grid;
    grid-template-columns:minmax(220px,320px) minmax(0,1fr);
    gap:48px;
    align-items:center;
    max-width:980px;
    margin:0 auto;
}

.fh-newsletter-cover{
    display:flex;
    justify-content:center;
}

.fh-newsletter-cover img{
    display:block;
    width:100%;
    max-width:300px;
    height:auto;
    border-radius:6px;
    box-shadow:0 24px 50px -24px rgba(0,0,0,.75);
}

.fh-news{
    min-width:0;
}

@media(max-width:760px){
    .fh-newsletter-layout{
        grid-template-columns:1fr;
        gap:30px;
        text-align:center;
    }

    .fh-newsletter-cover img{
        max-width:220px;
    }
}


/* =====================================================================
   COMMUNITY PAGE
   ===================================================================== */

.community-hero{text-align:center}
.community-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.community-hero p{max-width:68ch;margin:16px auto 0;color:var(--fh-night-soft)}

.community-intro{
    max-width:760px;
    margin:0 auto 34px;
    text-align:center;
    color:var(--fh-ink-soft);
    font-size:18px;
    line-height:1.65;
}

.community-feature-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
    max-width:1050px;
    margin:0 auto;
}

.community-feature{
    position:relative;
    overflow:hidden;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:32px;
    background:#fff;
    box-shadow:0 18px 42px -34px rgba(36,26,43,.5);
}

.community-feature::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:4px;
    background:linear-gradient(90deg,var(--fh-foil-deep),var(--fh-foil),var(--fh-foil-lite));
}

.community-feature__mark,
.community-social__mark{
    width:52px;
    height:52px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    background:var(--fh-night);
    color:var(--fh-foil);
    font-family:"Cinzel",serif;
    font-size:18px;
    font-weight:700;
    margin-bottom:18px;
}

.community-feature h2{
    margin:0 0 10px;
    font-family:"Cinzel",serif;
    color:var(--fh-ink);
    font-size:clamp(25px,3vw,32px);
}

.community-feature p{
    margin:0 0 24px;
    color:var(--fh-ink-soft);
    line-height:1.6;
}

.community-feature__actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.community-social-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    max-width:1050px;
    margin:0 auto;
}

.community-social{
    display:flex;
    flex-direction:column;
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:24px;
    min-height:245px;
    transition:transform .15s ease, box-shadow .15s ease;
}

.community-social:hover{
    transform:translateY(-2px);
    box-shadow:0 16px 34px -28px rgba(36,26,43,.55);
}

.community-social h3{
    margin:0 0 8px;
    font-family:"Cinzel",serif;
    color:var(--fh-ink);
    font-size:20px;
}

.community-social p{
    margin:0 0 22px;
    color:var(--fh-ink-soft);
    line-height:1.5;
    flex:1;
}

.community-social a{
    align-self:flex-start;
}

.community-bookish{
    max-width:900px;
    margin:0 auto;
    display:flex;
    justify-content:center;
    flex-wrap:wrap;
    gap:10px;
}

.community-bookish a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:0 16px;
    border-radius:999px;
    border:1px solid var(--fh-line);
    background:#fff;
    color:var(--fh-plum);
    font-family:"Inter",sans-serif;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
    transition:.15s;
}

.community-bookish a:hover{
    border-color:var(--fh-plum);
    background:var(--fh-paper);
}

.community-small-note{
    max-width:760px;
    margin:22px auto 0;
    text-align:center;
    color:var(--fh-ink-soft);
    font-size:18px;
}

@media(max-width:900px){
    .community-social-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:700px){
    .community-feature-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:580px){
    .community-social-grid{
        grid-template-columns:1fr;
    }

    .community-feature,
    .community-social{
        padding:22px;
    }
}



/* =====================================================================
   CONTACT PAGE
   ===================================================================== */

.contact-hero{text-align:center}
.contact-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.contact-hero p{max-width:62ch;margin:16px auto 0;color:var(--fh-night-soft)}
.contact-wrap{max-width:920px;margin:0 auto}
.contact-intro{max-width:700px;margin:0 auto 32px;text-align:center;color:var(--fh-ink-soft);font-size:18px;line-height:1.6}
.contact-card{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:clamp(24px,5vw,42px);box-shadow:0 18px 42px -32px rgba(36,26,43,.5)}
.contact-card__head{margin-bottom:26px;padding-bottom:20px;border-bottom:1px solid var(--fh-line)}
.contact-card__head h2{margin:0 0 7px;font-family:"Cinzel",serif;color:var(--fh-ink);font-size:clamp(25px,4vw,34px)}
.contact-card__head p{margin:0;color:var(--fh-ink-soft)}
.contact-required{color:var(--fh-foil-deep);font-weight:700}
.contact-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.contact-field--full{grid-column:1/-1}
.contact-card label{display:block;margin:0 0 7px;color:var(--fh-ink);font-family:"Inter",sans-serif;font-size:12px;font-weight:700;letter-spacing:.04em}
.contact-card .form-control{display:block;width:100%;box-sizing:border-box;border:1px solid var(--fh-line);border-radius:6px;background:var(--fh-paper);color:var(--fh-ink);padding:12px 13px;font:inherit}
.contact-card .form-control:focus{outline:none;border-color:var(--fh-foil);box-shadow:0 0 0 3px rgba(190,150,70,.12)}
.contact-card textarea.form-control{min-height:210px;resize:vertical}
.contact-actions{margin-top:24px}
.contact-message{margin:0 0 24px;padding:16px 18px;border-radius:8px}
.contact-message--success{background:#f3f6ef;border:1px solid #cfd9c4;color:#405236}
.contact-message--error{background:#fff1f1;border:1px solid #e1b9b9;color:#8d2b2b}
.contact-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
.contact-note{margin:28px auto 0;max-width:720px;text-align:center;color:var(--fh-ink-soft);font-size:16px}
.contact-note a{color:var(--fh-ink);}
.contact-note a:hover{color:var(--fh-ink-soft);}
@media(max-width:650px){.contact-form-grid{grid-template-columns:1fr}.contact-field--full{grid-column:auto}}

/* =====================================================================
   AUTHOR PAGE
   ===================================================================== */

.fh-author-hero{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);
    gap:clamp(40px,7vw,90px);
    align-items:center;
}
.fh-author-hero__copy{max-width:760px}
.fh-author-hero__copy .fh-eyebrow{color:var(--fh-foil);display:block;margin-bottom:12px}
.fh-author-hero__copy h1{
    font-family:"Cinzel",serif;
    font-size:clamp(40px,6vw,66px);
    line-height:1.05;
    margin:0 0 22px;
}
.fh-author-hero__copy .lead{
    color:#fff;
    font-size:clamp(21px,2.5vw,26px);
    line-height:1.4;
    margin:0 0 18px;
}
.fh-author-hero__copy p{color:var(--fh-night-soft);margin:0 0 16px}
.fh-author-hero__photo-wrap{display:flex;justify-content:center;position:relative}
.fh-author-hero__photo-glow{
    position:absolute;
    inset:-12%;
    border-radius:50%;
    background:radial-gradient(circle,rgba(125,63,110,.62),transparent 68%);
    filter:blur(22px);
}
.fh-author-hero__photo{
    width:min(360px,90%);
    aspect-ratio:1;
    border-radius:50%;
    overflow:hidden;
    border:2px solid rgba(216,166,87,.65);
    box-shadow:0 28px 70px -20px rgba(0,0,0,.7);
    position:relative;
    z-index:1;
}
.fh-author-hero__photo img{width:100%;height:100%;object-fit:cover}

.fh-about-grid{
    display:grid;
    grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
    gap:clamp(34px,6vw,72px);
    align-items:start;
}
.fh-about-copy h2{
    font-family:"Cinzel",serif;
    font-size:clamp(28px,4vw,42px);
    margin:0 0 18px;
}

.fh-about-copy a {color:var(--fh-foil-deep);font-weight: 500;}
.fh-about-copy a:hover{color:var(--fh-foil);}

.fh-about-facts{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.fh-about-fact{
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:22px;
}
.fh-about-fact .fh-eyebrow{color:var(--fh-foil-deep);display:block;margin-bottom:6px}
.fh-about-fact strong{
    display:block;
    font-family:"Cinzel",serif;
    font-size:18px;
    color:var(--fh-ink);
    margin-bottom:5px;
}
.fh-about-fact p{font-size:15.5px;margin:0;color:var(--fh-ink-soft)}

.fh-author-series-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:28px;
}
.fh-author-series-card{
    background:#fff;
    border:1px solid var(--fh-line);
    border-radius:var(--fh-r);
    padding:24px;
    display:grid;
    grid-template-columns:110px minmax(0,1fr);
    gap:20px;
    align-items:start;
    transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.fh-author-series-card:hover{
    transform:translateY(-4px);
    box-shadow:0 22px 44px -24px rgba(36,26,43,.45);
    border-color:rgba(216,166,87,.5);
}
.fh-author-series-card .fh-cover{width:110px;margin:0}
.fh-author-series-card__copy{min-width:0}
.fh-author-series-card .fh-eyebrow{color:var(--fh-foil-deep);display:block;margin:0 0 7px}
.fh-author-series-card h3{
    font-family:"Cinzel",serif;
    font-size:20px;
    line-height:1.2;
    margin:0 0 9px;
}
.fh-author-series-card h3 a{color:var(--fh-ink)}
.fh-author-series-card p{color:var(--fh-ink-soft);font-size:15.5px;line-height:1.45;margin:0 0 14px}
.fh-author-series-card .fh-btn{margin-top:auto}

.fh-author-closer{text-align:center;max-width:760px;margin:0 auto}
.fh-author-closer h2{font-size:clamp(28px,4vw,42px);margin:0 0 14px}
.fh-author-closer p{color:var(--fh-night-soft);margin:0 0 22px}
.fh-author-closer__buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

@media(max-width:1050px){
    .fh-author-series-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:820px){
    .fh-author-hero{grid-template-columns:1fr;text-align:center}
    .fh-author-hero__copy{margin:0 auto}
    .fh-author-hero__photo{width:min(300px,75vw)}
    .fh-about-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
    .fh-author-series-grid{grid-template-columns:1fr}
}
@media(max-width:520px){
    .fh-about-facts{grid-template-columns:1fr}
    .fh-author-series-card{grid-template-columns:90px minmax(0,1fr);padding:18px;gap:16px}
    .fh-author-series-card .fh-cover{width:90px}
}




/* =====================================================================
   INTERNATIONAL EDITIONS PAGES
   ===================================================================== */


.intl-hero{text-align:center}
.intl-hero .title{font-size:clamp(40px,7vw,66px);margin:6px 0 0}
.intl-hero p{max-width:68ch;margin:16px auto 0;color:var(--fh-night-soft)}
.intl-switcher{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:24px}
.intl-switcher a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:var(--fh-night-soft);font:600 11px/1 "Inter",sans-serif;text-transform:uppercase;letter-spacing:.08em}
.intl-switcher a:hover,.intl-switcher a.is-current{border-color:var(--fh-foil);color:var(--fh-foil)}
.intl-series{max-width:1120px;margin:0 auto 46px}
.intl-series:last-child{margin-bottom:0}
.intl-series .fh-preorder-label {
    color: var(--fh-foil-deep);
    font-family: "Inter", sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.intl-series__head{align-items:end;justify-content:space-between;gap:20px;padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid var(--fh-line)}
.intl-series__head h2{margin:0;font-family:"Cinzel",serif;font-size:clamp(24px,3vw,32px);color:var(--fh-ink)}
.intl-series__count{margin:0;color:var(--fh-foil-deep);font:600 12px/1 "Inter",sans-serif;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}
.intl-books{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:22px 18px}
.intl-book{text-align:center}
.intl-book__cover{display:block;margin:0 auto 12px}
.intl-book__cover img{display:block;width:100%;height:auto;border-radius:5px;box-shadow:0 12px 26px -18px rgba(36,26,43,.65)}
.intl-book h3{margin:0 0 11px;font-family:"Cinzel",serif;font-size:15px;line-height:1.3;color:var(--fh-ink)}
.intl-note{max-width:760px;margin:0 auto;text-align:center;color:var(--fh-ink-soft)}
.intl-language-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;max-width:1080px;margin:0 auto}
.intl-language{background:#fff;border:1px solid var(--fh-line);border-radius:var(--fh-r);padding:26px;text-align:center;box-shadow:0 18px 42px -34px rgba(36,26,43,.5)}
.intl-language__covers{display:flex;justify-content:center;align-items:flex-end;gap:0;margin:0 auto 22px;min-height:180px}
.intl-language__covers img{width:92px;max-width:31%;height:auto;border-radius:4px;box-shadow:0 12px 24px -16px rgba(36,26,43,.7)}
.intl-language__covers img:nth-child(1){transform:rotate(-5deg) translateX(10px)}
.intl-language__covers img:nth-child(2){position:relative;z-index:2;transform:translateY(-8px)}
.intl-language__covers img:nth-child(3){transform:rotate(5deg) translateX(-10px)}
.intl-language h2{margin:0 0 8px;font-family:"Cinzel",serif;color:var(--fh-ink);font-size:27px}
.intl-language p{margin:0 0 20px;color:var(--fh-ink-soft)}
@media(max-width:1000px){.intl-books{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:820px){.intl-language-grid{grid-template-columns:1fr}.intl-language{max-width:620px;width:100%;box-sizing:border-box;margin:0 auto}.intl-books{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.intl-books{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px}.intl-series__head{display:block}.intl-series__count{margin-top:8px}.intl-language__covers img{width:82px}}


.intl-ml .fh-news {max-width:620px; margin:0 auto; text-align:center; padding: 15px; border: 1px solid var(--fh-foil); border-radius: var(--fh-r);}
.intl-ml .fh-news h2 {font-size:clamp(20px,4vw,26px);margin:0}
.intl-ml .fh-news p {style="color:var(--fh-night-soft);margin:.6em 0 0"}

/* =====================================================================
   FOOTER
   ===================================================================== */


.fh-foot{background:linear-gradient(180deg,var(--fh-night-2),#070510);color:var(--fh-night-soft);padding:64px 0 28px;position:relative}
.fh-foot::before{top:0}
.fh-foot__top{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px}
.fh-foot h4{font-family:"Inter",sans-serif;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--fh-foil);margin:0 0 16px}
.fh-foot ul{list-style:none;margin:0;padding:0}
.fh-foot li{margin-bottom:9px}
.fh-foot .fh-foot_series a{font-family: "Inter", sans-serif; font-size: 14px; color:var(--fh-night-soft);}
.fh-foot .fh-foot_series a:hover{color:var(--fh-foil-lite)}
.fh-foot__about{display:grid;grid-template-columns:minmax(0, 0.35fr) minmax(0, 1fr);gap:16px;align-items:flex-start}
.fh-foot__photo{flex:0 0 auto;width:72px;height:72px;border-radius:50%;overflow:hidden;border:1px solid rgba(216,166,87,.5);background:linear-gradient(160deg,var(--fh-plum),#2a1230);display:grid;place-items:center;font-family:"Inter",sans-serif;font-size:9px;color:#d9c7b0;text-align:center;letter-spacing:.08em}
.fh-foot__photo img {width: 100%; height: 100%;}
.fh-foot__about p{font-size:16px;margin:0;max-width:34ch}
.fh-foot__social{display:flex;gap:14px;margin-top:14px}
.fh-foot__social a{color:var(--fh-night-soft)}
.fh-foot__social svg{width:18px;height:18px;fill:currentColor}
.fh-foot__bottom{border-top:1px solid rgba(216,166,87,.2);margin-top:44px;padding-top:22px;text-align:center;font-family:"Inter",sans-serif;font-size:12px;letter-spacing:.06em;color:#7d7186}




/* =====================================================================
   COMING SOON / NEWSLETTER
   ===================================================================== */

.cs-news{max-width:460px;margin:0 auto;text-align:center}
.cs-news__form{display:flex;gap:10px;margin:24px auto 18px;max-width:460px}
.cs-news__form input{flex:1;background:rgba(255,255,255,.06);border:1px solid rgba(216,166,87,.45);border-radius:6px;color:#fff;font-family:"Inter",sans-serif;font-size:15px;padding:13px 16px}
.cs-news__form input::placeholder{color:#9b8fa6}
.cs-news__form input:focus{outline:none;border-color:var(--fh-foil)}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */


@media (max-width:1000px){
  .fh-foot__top{grid-template-columns:1fr 1fr;gap:32px}
}
@media (max-width:900px){
  .fh-community{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:860px){
  .fh-book{grid-template-columns:1fr;justify-items:center;text-align:center}
  .fh-book__cover{max-width:300px}
  .fh-book__info .tagline,.fh-book__blurb{margin-inline:auto;max-width:60ch}
  .fh-split{grid-template-columns:1fr}
  .fh-split--soon{flex-direction:column;text-align:center}
}
@media (max-width:820px){
  .fh-hero{grid-template-columns:1fr;text-align:center}
  .fh-hero__cta{justify-content:center}
  .fh-hero .blurb{margin-inline:auto}
  .fh-feature{grid-template-columns:1fr}
  .fh-grid{grid-template-columns:repeat(2,1fr)}
  .fh-news-grid{grid-template-columns:1fr;grid-template-rows: none; grid-auto-flow: row; grid-auto-columns: auto; gap:8px}
  .ro-start{grid-template-columns:1fr;max-width:340px;margin:0 auto}
}
@media (max-width:560px){
  .fh-tiles {grid-template-columns:1fr}
  .fh-author-tiles, .fh-author-bio-tiles, .fh-foot__about {grid-template-columns:1fr}
  .fh-foot__top {grid-template-columns:1fr}
  .fh-news__form, .cs-news__form {flex-direction:column}
  .fh-grid{grid-template-columns:1fr}
}
@media (max-width:520px){
  .fh-community{grid-template-columns:1fr}
}
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
