/* Heretro campaign hero. Images are original raster artwork; copy stays live HTML. */
.heretro-home-v2 .hrh-campaign { padding:18px 0 22px; background:#fff; border:0; }
.heretro-home-v2 .hrh-campaign-frame { position:relative; width:min(1240px,calc(100% - 64px)); margin-inline:auto; overflow:hidden; border-radius:12px; background:#17202d; }
.heretro-home-v2 .hrh-campaign-slide { position:relative; isolation:isolate; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr); grid-template-areas:"copy visual" "actions visual"; grid-template-rows:1fr auto; align-items:stretch; min-height:500px; gap:20px 52px; padding:44px 54px 86px; }
.heretro-home-v2 .hrh-campaign-slide[hidden], .heretro-home-v2 .hrh-campaign-controls[hidden] { display:none !important; }
.heretro-home-v2 .hrh-campaign-backdrop { position:absolute; z-index:0; inset:0; display:block; pointer-events:none; }
.heretro-home-v2 .hrh-campaign-backdrop img { display:block; width:100%; height:100%; object-fit:cover; object-position:center; }
.heretro-home-v2 .hrh-campaign-slide::before { content:""; position:absolute; z-index:1; inset:0; pointer-events:none; background:linear-gradient(90deg,rgba(10,19,31,.5),rgba(10,19,31,.15) 54%,transparent 80%); }
.heretro-home-v2 .hrh-campaign-copy { grid-area:copy; position:relative; z-index:2; align-self:end; min-width:0; }
.heretro-home-v2 .hrh-campaign .hrh-eyebrow { margin:0 0 14px; color:#e4c8cb; font-size:10px; line-height:1.5; letter-spacing:.14em; font-weight:650; }
.heretro-home-v2 .hrh-campaign .hrh-campaign-title { margin:0 0 16px; color:#fff; font-size:clamp(48px,4.9vw,65px); line-height:1.06; font-weight:700; letter-spacing:-.025em; text-transform:none; }
.heretro-home-v2 .hrh-campaign .hrh-campaign-title span { color:#f5f3ef; }
.heretro-home-v2 .hrh-campaign-copy > p { max-width:370px; margin:0; color:#dce1e7; font-size:14px; line-height:1.7; }
.heretro-home-v2 .hrh-campaign-visual { grid-area:visual; position:relative; z-index:2; align-self:center; display:flex; align-items:center; justify-content:center; min-width:0; height:360px; }
.heretro-home-v2 .hrh-campaign-product { display:block; width:100%; height:100%; max-width:360px; padding:0; background:#fff; border-radius:10px; overflow:hidden; box-shadow:0 20px 40px rgba(0,0,0,.22); }
.heretro-home-v2 .hrh-campaign-product img { display:block; width:100%; height:100%; max-height:none; margin:0; padding:12px; background:#fff; object-fit:contain; }
.heretro-home-v2 .hrh-campaign-actions { grid-area:actions; position:relative; z-index:2; display:flex; flex-wrap:wrap; align-items:center; align-self:start; gap:20px; min-width:0; }
.heretro-home-v2 .hrh-campaign .hrh-button { min-height:48px; padding:13px 24px; border-radius:4px; color:#fff; background:#ad2330; border:1px solid #ad2330; font-size:13px; line-height:1.4; font-weight:650; }
.heretro-home-v2 .hrh-campaign .hrh-button:hover { color:#fff; background:#8e1c27; border-color:#8e1c27; }
.heretro-home-v2 .hrh-campaign-secondary { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:12px 4px; color:#f5f3ef; font-size:13px; line-height:1.4; font-weight:600; text-decoration:underline; text-underline-offset:5px; text-decoration-color:#9ca5af; }
.heretro-home-v2 .hrh-campaign-secondary:hover { color:#fff; text-decoration-color:#fff; }
.heretro-home-v2 .hrh-campaign-controls { position:absolute; z-index:3; bottom:18px; left:54px; display:flex; align-items:center; gap:8px; }
.heretro-home-v2 .hrh-campaign-control { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-width:126px; min-height:44px; margin:0; padding:10px 14px; border:1px solid rgba(255,255,255,.3); border-radius:5px; background:rgba(16,25,37,.45); color:#e5e9ed; font-family:"Segoe UI",Arial,sans-serif; font-size:11px; line-height:1.4; font-weight:600; letter-spacing:0; text-transform:none; box-shadow:none; cursor:pointer; }
.heretro-home-v2 .hrh-campaign-control span { opacity:.7; font-size:10px; font-variant-numeric:tabular-nums; }
.heretro-home-v2 .hrh-campaign-control[aria-pressed="true"] { border-color:#f5f3ef; background:#f5f3ef; color:#17202d; }
.heretro-home-v2 .hrh-campaign-control:hover { border-color:#f5f3ef; }
.heretro-home-v2 .hrh-campaign a:focus-visible, .heretro-home-v2 .hrh-campaign button:focus-visible { outline:3px solid #fff; outline-offset:4px; }
@media (max-width:1099px) {
 .heretro-home-v2 .hrh-campaign-slide { min-height:460px; gap:18px 30px; padding:36px 40px 84px; }
 .heretro-home-v2 .hrh-campaign .hrh-campaign-title { font-size:52px; }
 .heretro-home-v2 .hrh-campaign-visual { height:330px; }
 .heretro-home-v2 .hrh-campaign-product { max-width:330px; }
 .heretro-home-v2 .hrh-campaign-controls { left:40px; }
}
@media (max-width:849px) {
 .heretro-home-v2 .hrh-campaign-frame { width:calc(100% - 40px); }
 .heretro-home-v2 .hrh-campaign-slide { min-height:430px; gap:18px 24px; padding:30px 30px 84px; }
 .heretro-home-v2 .hrh-campaign .hrh-campaign-title { font-size:46px; }
 .heretro-home-v2 .hrh-campaign-copy > p { font-size:13px; }
 .heretro-home-v2 .hrh-campaign-visual { height:280px; }
 .heretro-home-v2 .hrh-campaign-product { max-width:280px; }
 .heretro-home-v2 .hrh-campaign-actions { gap:12px; }
 .heretro-home-v2 .hrh-campaign .hrh-button { padding-inline:16px; font-size:12px; }
 .heretro-home-v2 .hrh-campaign-secondary { font-size:12px; }
 .heretro-home-v2 .hrh-campaign-controls { left:30px; }
}
@media (max-width:699px) {
 .heretro-home-v2 .hrh-campaign { padding:12px 0 16px; }
 .heretro-home-v2 .hrh-campaign-frame { width:calc(100% - 24px); border-radius:9px; }
 .heretro-home-v2 .hrh-campaign-slide { grid-template-columns:minmax(0,1fr); grid-template-areas:"copy" "visual" "actions"; grid-template-rows:auto auto auto; min-height:0; gap:18px; padding:26px 20px 84px; }
 .heretro-home-v2 .hrh-campaign-backdrop img { object-position:78% center; }
 .heretro-home-v2 .hrh-campaign-slide::before { background:linear-gradient(180deg,rgba(10,19,31,.66),rgba(10,19,31,.2) 48%,rgba(10,19,31,.76)); }
 .heretro-home-v2 .hrh-campaign-copy { text-align:center; }
 .heretro-home-v2 .hrh-campaign .hrh-eyebrow { margin-bottom:10px; font-size:9px; letter-spacing:.11em; }
 .heretro-home-v2 .hrh-campaign .hrh-campaign-title { margin-bottom:12px; font-size:clamp(34px,9vw,46px); line-height:1.07; }
 .heretro-home-v2 .hrh-campaign-copy > p { max-width:275px; min-height:44px; margin-inline:auto; font-size:13px; line-height:1.65; }
 .heretro-home-v2 .hrh-campaign-visual { height:224px; }
 .heretro-home-v2 .hrh-campaign-product { max-width:224px; border-radius:8px; }
 .heretro-home-v2 .hrh-campaign-product img { padding:8px; }
 .heretro-home-v2 .hrh-campaign-actions { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); width:100%; max-width:344px; margin-inline:auto; gap:10px; }
 .heretro-home-v2 .hrh-campaign .hrh-button { padding:12px 8px; min-height:48px; font-size:12px; }
 .heretro-home-v2 .hrh-campaign-secondary { min-height:48px; padding:12px 3px; font-size:12px; }
 .heretro-home-v2 .hrh-campaign-controls { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); left:20px; right:20px; bottom:18px; gap:8px; }
 .heretro-home-v2 .hrh-campaign-control { min-width:0; min-height:44px; padding:10px 8px; font-size:11px; }
}
@media (max-width:359px) {
 .heretro-home-v2 .hrh-campaign-visual { height:208px; }
 .heretro-home-v2 .hrh-campaign-product { max-width:208px; }
 .heretro-home-v2 .hrh-campaign .hrh-campaign-title { font-size:34px; }
}
