/* Hero fills the opening screen; content can grow in short/zoomed windows. */
.bb-home{--bb-opening-night:#0b1724}
.bb-home .brand-hero{height:auto;min-height:calc(var(--bb-nav-viewport-height,100svh) - var(--wp-admin--admin-bar--height,0px) / var(--site-scale,1));max-height:none;background:var(--bb-opening-night)}
.bb-home .brand-hero .hero-scene{inset:0 0 auto;height:auto;max-height:100%;object-fit:contain;object-position:right top;mask-image:linear-gradient(90deg,transparent 0%,transparent 20%,#000 42%),linear-gradient(0deg,transparent,#000 14%);mask-composite:intersect}
.bb-home .brand-hero .hero-shade{background:linear-gradient(90deg,#0b1724fc 0%,#0b1724ed 24%,#0b1724c9 39%,#0b17247a 54%,#0b172426 70%,transparent 88%),linear-gradient(0deg,var(--bb-opening-night) 0%,#0b1724c4 5%,#0b172466 11%,#0b17241a 18%,transparent 28%)}
.bb-home .brand-hero .hero-content{height:auto;min-height:inherit;padding-top:calc(var(--bb-home-header-height,72px) + 20px);padding-bottom:24px}
.bb-home .brand-hero h1{font-family:Fraunces,Georgia,serif;font-weight:450;font-size:clamp(48px,min(4.5vw,7svh),76px);line-height:1.08;letter-spacing:-.035em;white-space:pre-line;max-width:690px;margin:0 0 clamp(18px,2.4svh,26px)}
.bb-home .brand-hero .hero-intro{max-width:510px;font-size:clamp(15px,2.1svh,17px);line-height:1.75;color:#e1e6ed;margin:0}
.bb-home .brand-hero .hero-eyebrow{font:650 12px/1.5 Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin:0 0 14px;max-width:560px}
.bb-home .brand-hero .hero-buttons{display:grid;grid-template-columns:repeat(2,max-content);gap:14px;margin:clamp(20px,3svh,30px) 0 0;align-items:stretch}
.bb-home .brand-hero .hero-buttons .button{position:relative;display:flex;align-items:center;justify-content:center;height:clamp(50px,7svh,58px);min-height:50px;margin:0;padding:0 26px;border:1px solid #fff0c9;border-radius:999px;background:var(--gold);color:var(--night);box-shadow:0 6px 18px #050c162e;transition:background-color .18s ease,border-color .18s ease}
.bb-home .brand-hero .hero-buttons .button:hover{background:#ffe8b8;transform:none}
.bb-home .brand-hero .hero-buttons .hero-secondary{color:var(--paper);background:#1c3446eb;border-color:var(--gold)}
.bb-home .brand-hero .hero-buttons .hero-secondary:hover{background:#2c4558}
.bb-home .brand-hero .hero-button-label{display:inline-flex;align-items:center;justify-content:center;gap:9px;position:relative;white-space:nowrap;font-size:14px}
.bb-home .brand-hero .hero-button-label svg{width:19px;height:19px;flex-shrink:0}
.bb-home .brand-hero .hero-secondary .hero-button-label svg{color:var(--gold)}
.bb-home .brand-hero .hero-buttons .button:focus-visible{outline:3px solid var(--gold);outline-offset:5px}
@media(min-width:1200px){
 .bb-home .brand-hero .hero-scene{position:absolute;inset:0;width:100%;height:100%;max-height:none;object-fit:cover;object-position:right center}
 .bb-home .brand-hero .hero-content{position:relative;justify-content:center}
}
@media(min-width:768px) and (max-width:1199px){
 .bb-home .brand-hero .hero-content{justify-content:flex-start;padding-top:calc(var(--bb-home-header-height,62px) + 28px);padding-bottom:300px}
 .bb-home .brand-hero h1{font-size:clamp(43px,5.6vw,60px);max-width:700px;margin-bottom:22px}
 .bb-home .brand-hero .hero-intro{max-width:570px;font-size:16px;line-height:1.7}
 .bb-home .brand-hero .hero-scene{inset:auto 0 0 auto;width:115%;max-width:none;height:auto;object-position:right bottom;mask-image:linear-gradient(0deg,#000 0%,#000 58%,transparent 100%)}
 .bb-home .brand-hero .hero-shade{background:linear-gradient(180deg,#0b1724f2 0%,#0b1724c4 25%,#0b172466 43%,transparent 65%),linear-gradient(0deg,var(--bb-opening-night),#0b172480 5%,transparent 15%)}
}
@media(min-width:768px) and (max-width:1199px) and (orientation:landscape){
 .bb-home .brand-hero .hero-content{justify-content:center;padding-top:calc(var(--bb-home-header-height,62px) + 20px);padding-bottom:24px}
 .bb-home .brand-hero h1{font-size:clamp(40px,min(4.8vw,7svh),56px);max-width:55%}
 .bb-home .brand-hero .hero-intro{max-width:46%;font-size:15px}
 .bb-home .brand-hero .hero-scene{inset:0;width:100%;height:100%;object-fit:cover;object-position:right center;mask-image:linear-gradient(90deg,transparent 0%,transparent 20%,#000 42%)}
 .bb-home .brand-hero .hero-shade{background:linear-gradient(90deg,#0b1724fc 0%,#0b1724ed 24%,#0b1724c9 39%,#0b17247a 54%,#0b172426 70%,transparent 88%),linear-gradient(0deg,var(--bb-opening-night),transparent 20%)}
}
@media(max-width:767px){
 /* Enlarge the original book below the copy without cropping its right-hand scene. */
 .bb-home .brand-hero .hero-scene{inset:auto 0 0 auto;width:min(154%,88svh);max-width:none;height:auto;object-position:right bottom;mask-image:linear-gradient(0deg,#000 0%,#000 58%,transparent 100%)}
 .bb-home .brand-hero .hero-shade{background:linear-gradient(180deg,#0b1724f2 0%,#0b1724c4 25%,#0b172466 43%,transparent 65%),linear-gradient(0deg,var(--bb-opening-night),#0b172480 5%,transparent 15%)}
 .bb-home .brand-hero .hero-content{justify-content:flex-start;padding-top:calc(var(--bb-home-header-height,54px) + 20px);padding-bottom:clamp(240px,34svh,340px)}
 .bb-home .brand-hero h1{font-size:clamp(28px,min(4.2svh,8vw),38px);line-height:1.08;max-width:100%;margin-bottom:14px}
 .bb-home .brand-hero .hero-intro{max-width:440px;font-size:13px;line-height:1.65}
 .bb-home .brand-hero .hero-eyebrow{font-size:11px;letter-spacing:.09em;margin-bottom:10px}
 .bb-home .brand-hero .hero-buttons{width:100%;max-width:420px;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
 .bb-home .brand-hero .hero-buttons .button{height:50px;min-height:50px;min-width:0;padding:0 10px}
 .bb-home .brand-hero .hero-button-label{font-size:12px;gap:6px}
 .bb-home .brand-hero .hero-button-label svg{width:16px;height:16px}
}
@media(max-width:359px){.bb-home .brand-hero .hero-button-label svg{display:none}.bb-home .brand-hero .hero-buttons{gap:8px}.bb-home .brand-hero .hero-buttons .button{padding:0 8px}}
@media(max-width:767px) and (max-height:720px){.bb-home .brand-hero .hero-content{padding-top:calc(var(--bb-home-header-height,54px) + 16px)}.bb-home .brand-hero h1{margin-bottom:14px}.bb-home .brand-hero .hero-intro{font-size:13px;line-height:1.6}.bb-home .brand-hero .hero-buttons{margin-top:18px}}
@media(prefers-reduced-motion:reduce){.bb-home .brand-hero .hero-buttons .button{transition:none}.bb-home .brand-hero .hero-buttons .button:hover{transform:none}}
