/* Highrizz Homepage Redesign — Shipping-Label-Design-Sprache. Nur auf der Startseite geladen.
   Alle Selektoren mit .hrz-home vorangestellt und Text-/Button-Farben explizit mit !important,
   weil Blocksys generiertes global.css sonst mit eigenen Farben (Blau-Palette) gewinnt. */

@font-face{font-family:'Archivo Black';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/archivo900.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/inter400.woff2') format('woff2');}
@font-face{font-family:'Inter';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/inter700.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/jbmono400.woff2') format('woff2');}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:600;font-display:swap;src:url('../fonts/jbmono600.woff2') format('woff2');}

.hrz-home{
  --hrz-ink:#161512; --hrz-board:#EDE7D8; --hrz-board-2:#E3DCC8;
  --hrz-caution:#F5B700; --hrz-flag:#992014; --hrz-stone:#A79C89; --hrz-text-muted:#524B3D;
  --hrz-surface:var(--hrz-board); --hrz-surface-2:var(--hrz-board-2); --hrz-text:var(--hrz-ink);
  --hrz-line:#00000018; --hrz-btn-bg:var(--hrz-ink); --hrz-btn-fg:var(--hrz-board); --hrz-focus:var(--hrz-flag);

  background:var(--hrz-surface) !important; color:var(--hrz-text) !important;
  font-family:'Inter',system-ui,sans-serif !important; font-size:16px; line-height:1.55;
  -webkit-font-smoothing:antialiased;
  background-image:radial-gradient(var(--hrz-line) 1px, transparent 1px);
  background-size:22px 22px;
}


.hrz-home *{box-sizing:border-box;}
.hrz-home a{color:inherit; text-decoration:none;}
.hrz-home img{max-width:100%; height:auto; display:block;}
.hrz-home :focus-visible{outline:3px solid var(--hrz-focus); outline-offset:3px; border-radius:2px;}
.hrz-wrap{max-width:1080px; margin:0 auto; padding:0 clamp(1.1rem,4vw,2.5rem);}

/* jede Text-fuehrende Klasse bekommt ihre Farbe explizit statt sich auf Vererbung zu verlassen,
   damit Blocksys h1/p/a-Regeln nichts ueberschreiben koennen */
.hrz-home .hrz-headline,
.hrz-home .hrz-spotlight h3,
.hrz-home .hrz-section-title,
.hrz-home .hrz-process-name{
  color:var(--hrz-text) !important;
}
.hrz-home .hrz-subclaim,
.hrz-home .hrz-desc,
.hrz-home .hrz-cats,
.hrz-home .hrz-eyebrow,
.hrz-home .hrz-hero-note,
.hrz-home .hrz-section-meta,
.hrz-home .hrz-process-num,
.hrz-home .hrz-process-desc{
  color:var(--hrz-text-muted) !important;
}

/* hero */
.hrz-home .hrz-hero{padding:clamp(3rem,8vw,5.5rem) 0 clamp(2.5rem,6vw,4rem);}
.hrz-home .hrz-eyebrow{
  display:inline-flex; gap:1.5rem; font-family:'JetBrains Mono',monospace; font-size:.72rem;
  letter-spacing:.05em; text-transform:uppercase;
  border:1px dashed var(--hrz-stone); padding:.55rem .9rem; border-radius:6px; margin-bottom:1.75rem; flex-wrap:wrap;
}
.hrz-home .hrz-headline{
  font-family:'Archivo Black',sans-serif !important; font-weight:400 !important;
  font-size:clamp(2.6rem,7vw,5.2rem); line-height:.98; letter-spacing:-.01em;
  margin:0 0 1.4rem; max-width:15ch; text-wrap:balance;
}
.hrz-home .hrz-subclaim{font-size:clamp(1rem,1.6vw,1.2rem); max-width:44ch; margin:0 0 2.25rem;}
.hrz-home .hrz-hero-actions{display:flex; align-items:center; gap:1.5rem; flex-wrap:wrap;}
.hrz-home .hrz-hero-note{font-family:'JetBrains Mono',monospace; font-size:.76rem;}

/* buttons shared */
.hrz-home .hrz-btn{
  appearance:none; border:0; cursor:pointer; text-decoration:none; display:inline-flex; align-items:center;
  background:var(--hrz-btn-bg) !important; color:var(--hrz-btn-fg) !important;
  height:56px; padding:0 1.9rem; border-radius:28px;
  font-family:'JetBrains Mono',monospace !important; font-weight:600 !important; font-size:.82rem; letter-spacing:.05em; text-transform:uppercase;
  transition:transform .2s ease; position:relative;
}
.hrz-home .hrz-btn:hover,
.hrz-home .hrz-btn:focus,
.hrz-home .hrz-btn:visited,
.hrz-home .hrz-btn:active{
  color:var(--hrz-btn-fg) !important;
  transform:translateY(-1px);
}

/* drop animation — "shop the drop" taken literally */
.hrz-home .hrz-btn-drop{overflow:visible;}
.hrz-home .hrz-drop-stage{position:absolute; left:0; right:0; top:0; height:0; overflow:visible; pointer-events:none;}
.hrz-home .hrz-drop-box{
  position:absolute; left:50%; top:0; width:20px; height:18px; margin-left:-10px;
  transform:translateY(-46px); opacity:0; color:var(--hrz-btn-fg);
}
.hrz-home .hrz-drop-impact{
  position:absolute; left:50%; top:-2px; width:34px; height:10px; margin-left:-17px;
  border-radius:50%; background:radial-gradient(ellipse at center, var(--hrz-caution) 0%, transparent 72%);
  opacity:0; transform:scale(.4);
}
.hrz-home .hrz-btn-drop.is-dropping .hrz-drop-box{animation:hrzDropBounce .8s cubic-bezier(.34,1.56,.64,1) forwards;}
.hrz-home .hrz-btn-drop.is-dropping .hrz-drop-impact{animation:hrzImpactPulse .8s ease-out forwards;}
@keyframes hrzDropBounce{
  0%{transform:translateY(-46px); opacity:0;}
  12%{opacity:1;}
  55%{transform:translateY(0); opacity:1;}
  70%{transform:translateY(-7px);}
  85%{transform:translateY(1px);}
  100%{transform:translateY(0); opacity:0;}
}
@keyframes hrzImpactPulse{
  0%,50%{opacity:0; transform:scale(.4);}
  58%{opacity:.9; transform:scale(1);}
  78%{opacity:0; transform:scale(1.5);}
  100%{opacity:0;}
}
@media (prefers-reduced-motion:reduce){
  .hrz-home .hrz-btn-drop.is-dropping .hrz-drop-box, .hrz-home .hrz-btn-drop.is-dropping .hrz-drop-impact{animation:none !important;}
}

/* scan-sweep — hover only, this button really navigates away */
.hrz-home .hrz-btn-scan{overflow:hidden;}
.hrz-home .hrz-scan-line{
  position:absolute; top:0; bottom:0; left:-16%; width:20%;
  background:linear-gradient(90deg, transparent, var(--hrz-caution) 50%, transparent);
  opacity:0; pointer-events:none;
}
.hrz-home .hrz-btn-scan:hover .hrz-scan-line, .hrz-home .hrz-btn-scan:focus-visible .hrz-scan-line{
  animation:hrzScanSweep .55s ease-out;
}
@keyframes hrzScanSweep{
  0%{opacity:.85; transform:translateX(0);}
  100%{opacity:0; transform:translateX(650%);}
}
@media (prefers-reduced-motion:reduce){
  .hrz-home .hrz-btn-scan:hover .hrz-scan-line, .hrz-home .hrz-btn-scan:focus-visible .hrz-scan-line{animation:none !important;}
}

/* sections */
.hrz-home .hrz-section{padding:clamp(2.5rem,6vw,4rem) 0; border-top:1px solid var(--hrz-line);}
.hrz-home .hrz-section-head{display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin-bottom:2rem; flex-wrap:wrap;}
.hrz-home .hrz-section-title{font-family:'Archivo Black',sans-serif !important; font-weight:400 !important; font-size:clamp(1.4rem,3vw,1.9rem); margin:0;}
.hrz-home .hrz-section-meta{font-family:'JetBrains Mono',monospace; font-size:.72rem; text-transform:uppercase; letter-spacing:.05em;}

/* featured product spotlight */
.hrz-home .hrz-spotlight{display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(2rem,5vw,3.5rem); align-items:center;}
@media (max-width:760px){ .hrz-home .hrz-spotlight{grid-template-columns:1fr;} }
.hrz-home .hrz-spotlight-art{
  background:var(--hrz-surface-2); border:1px solid var(--hrz-line); border-radius:20px;
  display:flex; align-items:center; justify-content:center; padding:2.5rem; aspect-ratio:1/1; overflow:hidden;
}
.hrz-home .hrz-spotlight-art svg{width:100%; max-width:260px; height:auto;}
.hrz-home .hrz-spotlight-art img{width:100%; height:100%; object-fit:cover; border-radius:10px;}
.hrz-home .hrz-spotlight-tag{
  display:inline-block; font-family:'JetBrains Mono',monospace; font-size:.68rem; letter-spacing:.05em;
  text-transform:uppercase; color:var(--hrz-flag) !important; border:1px solid var(--hrz-flag); border-radius:999px;
  padding:.3rem .65rem; margin-bottom:1rem;
}
.hrz-home .hrz-spotlight h3{font-family:'Archivo Black',sans-serif !important; font-weight:400 !important; font-size:clamp(1.6rem,3.5vw,2.1rem); margin:0 0 .8rem;}
.hrz-home .hrz-desc{max-width:42ch; margin:0 0 1.4rem;}
.hrz-home .hrz-cats{font-family:'JetBrains Mono',monospace; font-size:.72rem; text-transform:uppercase; letter-spacing:.03em; margin:0 0 1.4rem;}
.hrz-home .hrz-spotlight-price-row{display:flex; align-items:center; gap:1.3rem; flex-wrap:wrap;}
.hrz-home .hrz-spotlight-price{font-family:'JetBrains Mono',monospace; font-size:1.3rem; font-variant-numeric:tabular-nums; color:var(--hrz-text) !important;}
.hrz-home .hrz-spotlight-price .woocommerce-Price-amount{font-family:'JetBrains Mono',monospace; color:var(--hrz-text) !important;}

/* category chips */
.hrz-home .hrz-chip-row{display:flex; flex-wrap:wrap; gap:.7rem;}
.hrz-home .hrz-chip{
  font-family:'JetBrains Mono',monospace; font-size:.76rem; text-transform:uppercase; letter-spacing:.03em;
  border:1px solid var(--hrz-line); background:var(--hrz-surface-2); border-radius:999px; padding:.5rem 1rem;
  text-decoration:none; color:var(--hrz-text) !important; display:inline-block;
}
.hrz-home .hrz-chip:hover, .hrz-home .hrz-chip:visited{border-color:var(--hrz-text); color:var(--hrz-text) !important;}

/* process */
.hrz-home .hrz-process-list{list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4,1fr); gap:1.25rem;}
@media (max-width:820px){.hrz-home .hrz-process-list{grid-template-columns:1fr 1fr;}}
@media (max-width:480px){.hrz-home .hrz-process-list{grid-template-columns:1fr;}}
.hrz-home .hrz-process-list li{border-left:2px solid var(--hrz-stone); padding-left:1rem;}
.hrz-home .hrz-process-num{font-family:'JetBrains Mono',monospace; font-size:.72rem;}
.hrz-home .hrz-process-name{font-family:'Archivo Black',sans-serif !important; font-weight:400 !important; font-size:1.02rem; margin:.35rem 0 .35rem;}
.hrz-home .hrz-process-desc{font-size:.86rem; margin:0;}
