/* Rasha Books 2.0 — editorial storefront layer */
:root{
  /* Keep the legacy variable semantics from style.css intact.
     --cream is historically the dark "ink" color throughout the book site. */
  --bg:#f4f1e9;
  --bg-alt:#ebe6da;
  --cream:#111713;
  --panel:#fffdfa;
  --panel-border:#d8d0c1;
  --border:#d8d0c1;
  --text:#111713;
  --text-dim:#59625d;
  --gold:#1f8a63;
  --gold-bright:#0e553d;
  --btn:#111713;
  --btn-hover:#28322c;
  --btn-text:#fff;
  --radius:18px;
}

html{scroll-padding-top:110px}
body{background:var(--bg);color:var(--text);font-family:'Source Sans 3',system-ui,sans-serif}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(rgba(17,23,19,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(17,23,19,.018) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,#000,transparent 70%)}

.network-bar{background:#0c120f}
.network-bar a:hover{color:#9ce7c4}
.site-header{background:rgba(244,241,233,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(17,23,19,.1)}
.site-header .nav{position:relative}
.brand-mark{background:var(--text);color:#fff;border-radius:7px}
.brand-text{font-weight:750;color:var(--text)}
.nav-links a{font-weight:650;color:var(--text)}
.cart-btn{border-radius:10px;background:var(--panel);border:1px solid var(--border);color:var(--text)}

/* shared/js/site.js creates these elements on every site. The book subsite
   does not load shared/css/redesign.css, so define the companion styles here
   to prevent the generated mobile nav from appearing as a second raw menu. */
.mobile-toggle{
  display:none;width:44px;height:44px;border:1px solid var(--panel-border);
  background:var(--panel);color:var(--text);border-radius:10px;
  align-items:center;justify-content:center;cursor:pointer;padding:0;
}
.mobile-toggle svg{width:22px;height:22px;display:block}
.mobile-menu{
  display:none;position:absolute;left:16px;right:16px;top:calc(100% + 8px);
  z-index:80;padding:10px;background:rgba(255,253,250,.98);
  border:1px solid var(--panel-border);border-radius:14px;
  box-shadow:0 20px 50px rgba(17,23,19,.14);
}
.mobile-menu.open{display:grid}
.mobile-menu a{padding:12px 14px;border-radius:8px;text-decoration:none;font-weight:700;color:var(--text)}
.mobile-menu a:hover{background:rgba(31,138,99,.10);color:var(--gold-bright)}

.hero{position:relative;overflow:hidden}
.hero::after{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(31,138,99,.15);border-radius:50%;right:-260px;top:-250px;box-shadow:0 0 0 52px rgba(31,138,99,.025),0 0 0 115px rgba(31,138,99,.015);pointer-events:none}
.hero h1,.page-hero h1{letter-spacing:-.04em;color:var(--text)}
.badge{border-radius:6px}
.btn{border-radius:9px;font-weight:750}
.btn-gold{background:var(--text);border-color:var(--text);color:#fff}
.btn-gold:hover{background:#28322c;border-color:#28322c}
.btn-outline{border-color:var(--text);color:var(--text)}

.product-card,.buy-card,.promo-card,.webinar-card,.modal,.cart-drawer{border-radius:18px;box-shadow:0 10px 35px rgba(17,23,19,.07)}
.product-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
.product-card:hover{transform:translateY(-4px);box-shadow:0 20px 48px rgba(17,23,19,.11);border-color:rgba(31,138,99,.4)}
.status-pill,.tag,.cat-label{letter-spacing:.07em}
.tab-btn{border-radius:8px}
.tab-btn.active{background:var(--text);color:#fff}
.book-detail-grid,.author-strip{gap:clamp(32px,6vw,72px)}
.cover-shot{box-shadow:0 30px 70px rgba(17,23,19,.2)}
.site-footer{background:#0e1511;color:#c9d0cb}
.site-footer h4{color:#fff}
.footer-bottom{border-top-color:rgba(255,255,255,.12)}
.notify-form input{border-radius:9px}
.fine-print{line-height:1.55}
.back-to-top{border-radius:10px!important}
.scroll-progress{position:fixed;z-index:120;top:0;left:0;height:2px;width:0;background:var(--gold)}

@media(max-width:799px){
  .nav-links{display:none}
  .mobile-toggle{display:flex}
  .brand-text{display:inline}
  .book-detail-grid{grid-template-columns:1fr}
  .cover-shot{max-width:320px;margin-inline:auto}
}
@media(min-width:800px){
  .mobile-toggle,.mobile-menu{display:none!important}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Match the main Robert Rasha masthead behavior. */
.sticky-top{position:sticky;top:0;z-index:60}
