/* S. Hülsen Weihnachtsbäume · Version 1.0 */
/* Hero */
.hero{background:var(--forest);color:white;position:relative;overflow:hidden;padding:118px 0 64px}
.hero::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 22%,rgba(182,218,67,.18),transparent 25%),radial-gradient(circle at 15% 90%,rgba(82,147,114,.24),transparent 28%),linear-gradient(115deg,rgba(255,255,255,.025),transparent 30%);pointer-events:none}
.hero::after{content:"";position:absolute;inset:0;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E");mix-blend-mode:soft-light}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:42px}
.hero-kicker{display:inline-flex;align-items:center;gap:9px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#e7f0eb}
.hero-kicker i{width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(182,218,67,.1)}
.hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(58px,7.4vw,108px);line-height:.9;letter-spacing:-.055em;margin:24px 0 24px;max-width:790px;font-weight:700}
.hero h1 span{color:var(--lime);font-style:italic}
.hero-lead{font-size:clamp(18px,2vw,23px);max-width:650px;color:#cfe0d8;margin:0}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.hero-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:34px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);max-width:680px}
.hero-meta span{display:flex;gap:8px;align-items:center;font-size:13px;font-weight:700;color:#d7e4de}
.hero-meta b{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(182,218,67,.15);color:var(--lime)}
.hero-visual{position:relative;min-height:560px}
.visual-card{position:absolute;inset:24px 0 24px 30px;border-radius:34px;background:linear-gradient(155deg,#184e3c,#0b2d24 70%);overflow:hidden;border:1px solid rgba(255,255,255,.12);box-shadow:0 50px 110px rgba(0,0,0,.22)}
.visual-card::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;background:#f0e6c9;right:48px;top:55px;opacity:.96;box-shadow:0 0 90px rgba(240,230,201,.16)}
.pine-scene{position:absolute;inset:auto -7% -2% auto;width:112%;height:auto}
.visual-badge{position:absolute;left:0;bottom:58px;background:var(--cream);color:var(--forest);padding:18px 20px;border-radius:18px;box-shadow:var(--shadow);display:flex;align-items:center;gap:13px;max-width:285px}
.visual-badge strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:21px;line-height:1.05}
.visual-badge small{display:block;margin-top:4px;color:#64736c;font-weight:700}
.visual-badge .mini-tree{width:48px;height:48px;border-radius:14px;background:var(--forest);display:grid;place-items:center;color:var(--lime);font-size:24px}
.season-stamp{position:absolute;right:16px;top:70px;width:108px;height:108px;border-radius:50%;background:var(--red);color:white;display:grid;place-items:center;text-align:center;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;transform:rotate(8deg);box-shadow:0 18px 42px rgba(159,43,32,.25)}
.season-stamp span{display:block;font-family:Georgia,"Times New Roman",serif;font-size:28px;letter-spacing:-.03em}
.snow{position:absolute;inset:0;pointer-events:none}
.snow i{position:absolute;width:3px;height:3px;border-radius:50%;background:rgba(255,255,255,.65);animation:fall linear infinite}
@keyframes fall{from{transform:translateY(-30px)}to{transform:translateY(760px)}}

/* Trust bar */
.trust{background:var(--lime);color:#173226;overflow:hidden;border-bottom:1px solid rgba(20,35,29,.07)}
.ticker{display:flex;width:max-content;animation:ticker 34s linear infinite}
.ticker-row{display:flex;align-items:center;gap:42px;padding:15px 21px;font-size:12px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}
.ticker-row span{display:flex;align-items:center;gap:20px}.ticker-row span::after{content:"✦";font-size:10px}
@keyframes ticker{to{transform:translateX(-50%)}}
