/* Option B preview. Every rule is scoped to the existing hero. */
.campaign.hero-spotlight{--spot-x:0px;--spot-y:0px;--spot-rotate:0deg;isolation:isolate;touch-action:pan-y}
.campaign.hero-spotlight .campaign-image{z-index:0}.campaign.hero-spotlight .campaign-shade{z-index:1;pointer-events:none}.campaign.hero-spotlight .campaign-copy{z-index:3}.campaign.hero-spotlight .campaign-controls{z-index:4}.campaign.hero-spotlight .campaign-caption,.campaign.hero-spotlight .campaign-scroll{z-index:3}
.campaign.hero-spotlight .campaign-image{transform:none!important;scale:1.015;will-change:scale;animation:hj-hero-zoom 18s ease-in-out infinite alternate!important}
.campaign.hero-spotlight.spotlight-paused .campaign-image{animation-play-state:paused!important}
@keyframes hj-hero-zoom{from{scale:1.015}to{scale:1.075}}
.campaign.hero-spotlight .campaign-copy{top:49%!important;left:53%!important;right:6%!important;max-width:650px;transform:translateY(-50%)!important;text-align:left}
.campaign.hero-spotlight .campaign-copy>.eyebrow{font-size:10px!important;letter-spacing:.19em!important;color:#dcc8ab;margin-bottom:18px;display:block}
.campaign.hero-spotlight .campaign-copy h1,.campaign.hero-spotlight .campaign-copy h2{font-family:'DM Sans',Arial,sans-serif!important;font-size:clamp(68px,7.4vw,112px)!important;font-weight:400!important;letter-spacing:-.055em!important;line-height:1!important;text-transform:uppercase;margin:0!important;color:#f5f0e8!important;max-width:100%;text-wrap:balance;overflow-wrap:normal}
.campaign.hero-spotlight .spotlight-line{font-family:'Libre Baskerville',Georgia,serif;font-style:italic;font-weight:400;font-size:clamp(25px,2.8vw,39px);line-height:1.3;letter-spacing:-.025em;color:#dbc8aa;margin:12px 0 0}
.campaign.hero-spotlight .campaign-copy>p{font-size:14px!important;line-height:1.7;color:#e9e4db!important;margin:16px 0 22px!important;max-width:390px}
.campaign.hero-spotlight .spotlight-format{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#c7bfb2;display:block;margin:0 0 25px}
.campaign.hero-spotlight .campaign-copy .button{min-width:185px;min-height:48px;justify-content:space-between;gap:32px;background:#f1ece3!important;color:#24221e!important;border-color:#f1ece3!important;border-radius:5px;box-shadow:none;transition:background .2s,transform .2s}
.campaign.hero-spotlight .campaign-copy .button:hover{background:#fffaf2!important;transform:translateY(-2px)}
.campaign.hero-spotlight .spotlight-selector{display:flex;gap:25px;margin-top:28px}
.campaign.hero-spotlight .spotlight-selector button{background:transparent;border:0;border-bottom:1px solid #f5f0e830;padding:10px 0;min-height:44px;min-width:68px;text-align:left;color:#afa99e;font:500 12px/1.2 'DM Sans',Arial,sans-serif;cursor:pointer;transition:color .2s,border-color .2s}
.campaign.hero-spotlight .spotlight-selector button span{font-size:9px;letter-spacing:.06em;margin-right:9px;color:#a69780}
.campaign.hero-spotlight .spotlight-selector button[aria-pressed=true]{color:#f5f0e8;border-color:#e2c59c}
.campaign.hero-spotlight .spotlight-selector button:focus-visible{outline:2px solid #e2c59c;outline-offset:5px}
.campaign.hero-spotlight .campaign-scene{transition:opacity .8s cubic-bezier(.2,.65,.3,1)}
.campaign.hero-spotlight .campaign-copy h1,.campaign.hero-spotlight .campaign-copy h2,.campaign.hero-spotlight .spotlight-line{opacity:0;transform:translateY(12px);transition:opacity .6s .12s,transform .65s .12s}
.campaign.hero-spotlight .campaign-scene.active .campaign-copy h1,.campaign.hero-spotlight .campaign-scene.active .campaign-copy h2,.campaign.hero-spotlight .campaign-scene.active .spotlight-line{opacity:1;transform:translateY(0)}
.campaign.hero-spotlight .campaign-caption{color:#d1c7b8;letter-spacing:.12em}
@media(max-width:1000px) and (min-width:721px){.campaign.hero-spotlight .campaign-copy{left:50%!important;right:4%!important}.campaign.hero-spotlight .campaign-copy h1,.campaign.hero-spotlight .campaign-copy h2{font-size:clamp(55px,7vw,82px)!important}}
@media(max-width:720px){.campaign.hero-spotlight{height:850px!important}.campaign.hero-spotlight .campaign-copy{left:22px!important;right:22px!important;top:auto!important;bottom:105px!important;transform:none!important;max-width:none}.campaign.hero-spotlight .campaign-copy>.eyebrow{margin-bottom:12px;font-size:9px!important}.campaign.hero-spotlight .campaign-copy h1,.campaign.hero-spotlight .campaign-copy h2{font-size:clamp(50px,15.4vw,68px)!important;letter-spacing:-.05em!important}.campaign.hero-spotlight .spotlight-line{font-size:25px;margin-top:9px}.campaign.hero-spotlight .campaign-copy>p{font-size:13px!important;margin:10px 0 19px!important}.campaign.hero-spotlight .spotlight-format{display:none}.campaign.hero-spotlight .spotlight-selector{margin-top:15px;gap:26px}.campaign.hero-spotlight .spotlight-selector button{min-height:36px;padding:8px 0}.campaign.hero-spotlight .campaign-image{transform:none!important;will-change:auto}.campaign.hero-spotlight .campaign-controls{bottom:29px;right:22px}.campaign.hero-spotlight .campaign-scroll{bottom:35px;left:22px}}
@media(prefers-reduced-motion:reduce){.campaign.hero-spotlight *{transition:none!important;animation:none!important}.campaign.hero-spotlight .campaign-image{transform:none!important;will-change:auto}.campaign.hero-spotlight .campaign-copy h1,.campaign.hero-spotlight .campaign-copy h2,.campaign.hero-spotlight .spotlight-line{opacity:1;transform:none}}

@media(prefers-reduced-motion:reduce){.campaign.hero-spotlight .campaign-image{scale:1!important;animation:none!important}}

/* Text sits in the photographic negative space; new campaigns can choose either side. */
@media(min-width:721px){.campaign.hero-spotlight .campaign-scene[data-text-side=left] .campaign-copy{left:8%!important;right:53%!important;max-width:620px}.campaign.hero-spotlight .campaign-scene[data-text-side=left] .campaign-shade{background:linear-gradient(90deg,#090807b8,transparent 78%),linear-gradient(0deg,#0c0b0970,transparent 45%)}}
.campaign.hero-spotlight .campaign-scene{filter:blur(9px);clip-path:inset(0 0 0 0 round 2.5%);transition:opacity 1s cubic-bezier(.22,.61,.36,1),filter 1s ease,clip-path 1s ease,visibility 1s}
.campaign.hero-spotlight .campaign-scene.active{filter:blur(0);clip-path:inset(0 0 0 0 round 0)}
@media(prefers-reduced-motion:reduce){.campaign.hero-spotlight .campaign-scene{filter:none;clip-path:none;transition:none!important}}
