/* Mobile nav fallback: the SPA mobile menu (JS) is removed, so force nav visible */
@media (max-width:1080px){
  .site-header{grid-template-columns:1fr auto;row-gap:.6rem}
  nav{display:flex!important;flex-wrap:wrap;justify-content:center;gap:.5rem 1.1rem;order:3;grid-column:1/-1;padding-bottom:.4rem}
  .header-actions{order:2}
}

/* Social icons — shared for minimal + grid footers */
.social-icons{display:flex;gap:10px;align-items:center}
.social-icons a{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(247,240,228,.25);background:rgba(255,255,255,.06);color:inherit;margin:0;padding:0;transition:background .2s,border-color .2s,color .2s,transform .2s}
.social-icons a:hover{background:#c84f18;border-color:#c84f18;color:#fff;transform:translateY(-2px)}
.social-icons svg{width:18px;height:18px;display:block}
footer .footer-meta{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
footer .footer-meta .social-icons{margin-left:auto}
footer .footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem 1.1rem}

/* ===== Global header rebuild ===== */
header.site-header{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1.5rem;min-height:76px;padding:.55rem 4vw;background:rgba(247,240,228,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);box-shadow:0 14px 34px -24px rgba(40,23,15,.45);position:sticky;top:0;z-index:50}
.site-header nav{display:flex;align-items:center;justify-content:center;gap:clamp(.85rem,1.8vw,1.7rem)}
.site-header nav a{position:relative;font-size:.78rem;font-weight:700;letter-spacing:.05em;padding:.45rem .1rem;opacity:.78;white-space:nowrap;transition:color .2s ease,opacity .2s ease}
.site-header nav a::after{content:"";position:absolute;left:.1rem;right:.1rem;bottom:.15rem;height:2px;border-radius:2px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.site-header nav a:hover{color:var(--espresso);opacity:1}
.site-header nav a:hover::after{transform:scaleX(1)}
.site-header nav a:last-child{opacity:1;color:var(--orange-dark)}
.site-header nav a:last-child:hover{color:var(--orange)}
.header-actions{display:flex;align-items:center;gap:1rem;justify-self:end}
.header-actions>*{flex-shrink:0}
.header-fb{height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:.55rem;border-radius:999px;border:1.5px solid rgba(40,23,15,.25);background:#fffdf8;color:var(--espresso);font-size:.78rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;box-shadow:0 8px 18px -12px rgba(40,23,15,.5);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.header-fb:hover{border-color:var(--espresso);transform:translateY(-2px);box-shadow:0 12px 22px -12px rgba(40,23,15,.55)}
.header-fb svg{width:16px;height:16px;display:block;flex:none;color:#1877F2}
.header-fb span{line-height:1}
header.site-header .header-cta{height:40px;padding:0 1.25rem;display:inline-flex;align-items:center;gap:.55rem;border-radius:999px;background:var(--espresso);color:#fff;font-size:.76rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;box-shadow:0 12px 24px -14px rgba(40,23,15,.7);transition:transform .2s ease,background .2s ease}
header.site-header .header-cta:hover{background:var(--orange);transform:translateY(-2px)}

/* Hero books marquee — 3 slanted vertical columns, full-bleed */
.hero{max-height:900px}
.hero-art{align-self:stretch}
.hero-books-marquee{display:flex;gap:1rem;width:min(100%,680px);height:640px;max-height:80vh;overflow:hidden;position:relative;padding:1.2rem;margin:-7.5rem -6vw -6rem 0;transform:rotate(-4deg) scale(1.04);-webkit-mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(to bottom,transparent,#000 8%,#000 92%,transparent)}
.hero-books-col{flex:1;min-width:0;height:100%;overflow:hidden}
.hero-books-col-inner{display:flex;flex-direction:column}
.hero-books-col-inner img{width:100%;height:auto;border-radius:8px 14px 14px 8px;box-shadow:3px 6px 18px rgba(37,32,27,.28);background:#fff;display:block;margin:0 0 1rem}
.hero-books-up{animation:heroBooksUp 110s linear infinite}
.hero-books-down{animation:heroBooksDown 130s linear infinite}
.hero-book-link{display:block}
.hero-books-marquee:hover .hero-books-col-inner{animation-play-state:paused}
@keyframes heroBooksUp{from{transform:translateY(0)}to{transform:translateY(-50%)}}
@keyframes heroBooksDown{from{transform:translateY(-50%)}to{transform:translateY(0)}}
/* Homepage hero — flush section, padded copy, oversized clipped marquee */
.hero-home{padding-top:0;padding-bottom:0}
.hero-home .hero-copy{padding:7.5rem 0 6rem}
.hero-home .hero-books-marquee{height:1000px;max-height:none;margin:-4rem -6vw 0 0}
@media (max-width:640px){.hero-books-marquee{margin:0;height:520px}.hero-home .hero-copy{padding:4rem 0}}
/* Final CTA separation from footer */
.final-cta{background:radial-gradient(900px 400px at 50% 0%,rgba(200,79,24,.38),transparent 65%),linear-gradient(180deg,#33200f,var(--espresso));border-bottom:2px solid #b98c43}
footer{border-top:0}
/* Proof quote glow-up */
.proof-section{position:relative;overflow:hidden;background:linear-gradient(120deg,var(--orange-dark),var(--orange) 60%,#d96a1f)}
.proof-section::before{content:"\201C";position:absolute;top:-3rem;left:2vw;font-family:Georgia,serif;font-size:clamp(10rem,22vw,20rem);line-height:1;color:rgba(255,255,255,.14);pointer-events:none}
.proof-section blockquote{position:relative;font-style:italic;text-wrap:pretty}
.proof-by{display:block;margin-top:1.4rem;font-size:.78rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,250,241,.85)}
/* Testimonials marquee */
.testimonials{padding:6rem 0;background:linear-gradient(180deg,#f3e9d2,#eeddc0);border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}
.testimonials .section-kicker,.testimonials h2{text-align:center;padding:0 6vw}
.testimonials h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(2.2rem,4vw,3.6rem);margin:0 0 2.5rem;letter-spacing:-.03em}
.testi-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent)}
.testi-track{display:flex;width:max-content;animation:testiScroll 45s linear infinite;padding:.5rem 0 1rem}
.testi-marquee:hover .testi-track{animation-play-state:paused}
.testi-card{flex:0 0 min(420px,82vw);margin:0 1.25rem 0 0;background:#fffdf8;border:1px solid #e9ddc9;border-radius:16px;padding:1.75rem;box-shadow:0 16px 34px -24px rgba(37,32,27,.35)}
.testi-stars{color:#c84f18;letter-spacing:.2em;font-size:.85rem}
.testi-card blockquote{margin:.9rem 0 1.2rem;font:1.02rem/1.7 Georgia,serif;color:#3c2a1f}
.testi-card figcaption{display:flex;align-items:center;gap:.8rem}
.testi-avatar{width:44px;height:44px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--c,#0f766e);color:#fff;font-weight:800;font-size:.9rem;flex:none}
.testi-card figcaption strong{display:block;font-size:.92rem}
.testi-card figcaption em{font-size:.82rem;color:#7c695c;font-style:normal}
@keyframes testiScroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.hero-books-col-inner{animation:none}.testi-track{animation:none}}
