.hero{max-width:var(--page-max);padding:clamp(12px, 1.6vw, 24px) var(--page-gutter) 0;margin:0 auto}.hero-frame{background:#2a2a24;border-radius:22px;align-items:flex-end;min-height:clamp(520px,44vw,720px);display:flex;position:relative;overflow:hidden;box-shadow:0 2px 4px #1f2d281a,0 24px 60px -16px #1f2d2859}.hero-media{position:absolute;inset:0}.hero-media img{object-fit:cover;object-position:var(--hero-pos,50% 45%)}.hero-media:after{content:"";background:linear-gradient(#0e120e80 0%,#0e120e00 24%),linear-gradient(#0e120e00 22%,#0e120e94 60%,#0e120ed6 100%),linear-gradient(90deg,#0e120e8c 0%,#0e120e00 60%);position:absolute;inset:0}.hero-copy{color:#fbf7ee;max-width:820px;padding:clamp(32px,4vw,64px);position:relative}@media (min-width:961px){.hero[data-side=right] .hero-copy{margin-left:auto}.hero[data-side=right] .hero-media:after{background:linear-gradient(#0e120e80 0%,#0e120e00 24%),linear-gradient(#0e120e00 22%,#0e120e94 60%,#0e120ed6 100%),linear-gradient(270deg,#0e120e8c 0%,#0e120e00 60%)}}.hero-eyebrow{color:#f0d29c;letter-spacing:.2em;text-transform:uppercase;text-shadow:0 1px 10px #0000008c;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0;font-size:13px;font-weight:600;display:flex}.hero-eyebrow span[aria-hidden]{background:currentColor;border-radius:50%;width:4px;height:4px}.hero-title{color:#fff;font-family:var(--font-serif), Georgia, serif;letter-spacing:-.01em;text-shadow:0 2px 18px #0000004d;margin:18px 0 0;font-size:clamp(44px,4.4vw,76px);font-weight:400;line-height:1.08}.hero-title em{color:#f0c97c;font-style:italic}.hero-keep{white-space:nowrap}.hero-lead{color:#fbf7eee0;max-width:500px;margin:22px 0 0;font-size:16.5px;line-height:1.7}.hero-button{min-height:52px;color:var(--color-brand);background:#fbf7ee;border-radius:999px;align-items:center;gap:14px;margin-top:26px;padding:0 26px;font-size:16px;font-weight:600;text-decoration:none;transition:background .18s;display:inline-flex}.hero-button:hover{background:#fff}@media (max-width:960px){.hero-frame{border-radius:18px;min-height:min(78svh,680px)}.hero-media img{object-position:var(--hero-pos-narrow,38% 50%)}}@media (max-width:560px){.hero{padding-top:8px}.hero-frame{border-radius:16px;min-height:min(82svh,640px)}.hero-copy{padding:24px 22px 26px}.hero-title{font-size:clamp(30px,9.2vw,36px)}.hero-lead{font-size:16px}.hero-button{box-sizing:border-box;justify-content:center;width:100%}}
