/* irontally.de · Richtung „Strichliste" · Farben und Schriften aus der App (Palette Eisen) */
@font-face{font-family:"Plex Sans";src:url(/assets/fonts/plex-sans-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Plex Sans";src:url(/assets/fonts/plex-sans-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Plex Sans";src:url(/assets/fonts/plex-sans-600.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Plex Cond";src:url(/assets/fonts/plex-cond-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Plex Cond";src:url(/assets/fonts/plex-cond-600.woff2) format("woff2");font-weight:600;font-display:swap}

:root{
  --schwarz:#0E0E0D; --flaeche:#161615; --haar:#24231F; --linie:#34322E;
  --papier:#EDEBE6; --papier-2:#C9C6BE; --bleistift:#8F8C85; --signal:#FF6B2C; --messing:#C9A86A;
  --sans:"Plex Sans",system-ui,-apple-system,"Segoe UI",sans-serif;
  --cond:"Plex Cond","Plex Sans",system-ui,sans-serif;
  /* Regler (Phase 6) */
  --rand:20px; --breite:1240px;
  --abschnitt:clamp(76px,12vw,152px);
  --h1:clamp(42px,10.4vw,96px); --h2:clamp(32px,6.6vw,60px);
  --text:clamp(16px,1.1vw + 12px,18px);
  --hero-oben:clamp(20px,4vw,56px);
  --geraet:min(82vw,360px);
}
@media (min-width:768px){:root{--rand:40px}}
@media (min-width:1200px){:root{--rand:64px}}

*,*::before,*::after{box-sizing:border-box}
*{margin:0}
html{background:var(--schwarz);color:var(--papier);font-family:var(--sans);font-size:100%;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;scrollbar-color:var(--linie) var(--schwarz);color-scheme:dark}
body{font-size:var(--text);line-height:1.55;overflow-x:hidden}
img,svg{display:block;max-width:100%}
img{height:auto}
::selection{background:var(--papier);color:var(--schwarz)}
a{color:inherit;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.24em;text-decoration-color:var(--linie);transition:text-decoration-color .15s}
a:hover{text-decoration-color:currentColor}
:focus-visible{outline:2px solid var(--signal);outline-offset:3px;border-radius:2px}
.zahl{font-family:var(--cond);font-variant-numeric:tabular-nums lining-nums}
.skip{position:absolute;left:var(--rand);top:-60px;background:var(--papier);color:var(--schwarz);padding:10px 14px;border-radius:6px;z-index:10;font-weight:600;text-decoration:none}
.skip:focus{top:12px}

.wrap{width:100%;max-width:calc(var(--breite) + 2*var(--rand));margin:0 auto;padding-inline:var(--rand)}
h1,h2{font-family:var(--cond);font-weight:600;text-wrap:balance}
h1{font-size:var(--h1);line-height:.96;letter-spacing:-.015em}
h2{font-size:var(--h2);line-height:1.02;letter-spacing:-.012em}
p{max-width:62ch;text-wrap:pretty}
.leise{color:var(--papier-2)}
.abschnitt{padding-block:var(--abschnitt)}
.band{background:var(--flaeche)}

/* Kopf */
.kopf{display:flex;align-items:center;justify-content:space-between;height:64px}
.marke{display:flex;align-items:center;gap:10px;font-weight:600;font-size:17px;letter-spacing:-.005em;text-decoration:none}
.marke img{width:28px;height:28px;border-radius:7px}
.kopf a.store{font-size:14px;font-weight:500;color:var(--papier-2)}

/* Badge: Original von Google, Freiraum = 1/4 der sichtbaren Höhe */
.badge{display:inline-block;line-height:0;margin:-2px 0;border-radius:10px}
.badge img{height:70px;width:auto}
.aktion{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;margin-top:20px}
.aktion small{font-size:13px;line-height:1.4;color:var(--bleistift)}

/* Hero */
.hero{padding-top:var(--hero-oben);padding-bottom:clamp(56px,9vw,120px)}
.hero .unter{margin-top:16px;color:var(--papier-2);max-width:36ch}
.hero-raster{display:grid;gap:0 40px}
.hero-raster figure{margin-top:40px;transform:translateY(var(--bild-y,0px))}
.hero h1{max-width:11ch}

.buendel{display:grid;grid-template-columns:auto 1fr;gap:22px 24px;align-items:center;margin-top:36px;padding-top:24px;border-top:1px solid var(--haar)}
.buendel svg{width:var(--buendel,132px);overflow:visible}
.buendel .strich{stroke:var(--papier);stroke-width:17;stroke-linecap:round}
.buendel .quer{stroke:var(--signal);stroke-width:17;stroke-linecap:round}
.buendel text{font:500 13px var(--cond);fill:var(--bleistift);text-anchor:middle}
.buendel text.jetzt{fill:var(--signal);font-weight:600}
.protokoll{display:grid;gap:12px}
.protokoll dt{font-size:12px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--bleistift)}
.protokoll dd{margin-top:4px}
.protokoll > div + div{padding-top:12px;border-top:1px solid var(--haar)}
.alt{font:500 24px/1 var(--cond);color:var(--papier-2)}
.neu{font:600 clamp(32px,9vw,40px)/1 var(--cond);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}
.neu .delta{font-size:.5em;font-weight:600;color:var(--signal)}
.grund{font-size:13px;line-height:1.4;color:var(--bleistift);margin-top:6px}
.bereich{grid-column:1 / -1;font-size:12px;color:var(--bleistift);margin-top:-8px}

/* Bewegung: einmal, kurz, nur additiv */
@media (prefers-reduced-motion:no-preference){
  .buendel .strich{stroke-dasharray:132;stroke-dashoffset:132;animation:ziehen .18s cubic-bezier(.2,.7,.2,1) forwards}
  .buendel .strich:nth-of-type(1){animation-delay:.15s}.buendel .strich:nth-of-type(2){animation-delay:.25s}
  .buendel .strich:nth-of-type(3){animation-delay:.35s}.buendel .strich:nth-of-type(4){animation-delay:.45s}
  .buendel .quer{stroke-dasharray:150;stroke-dashoffset:150;animation:ziehen .24s cubic-bezier(.55,0,.1,1) .66s forwards}
  .buendel .jetzt,.neu,.grund{opacity:0;animation:da .25s ease-out .9s forwards}
}
@keyframes ziehen{to{stroke-dashoffset:0}}
@keyframes da{to{opacity:1}}

/* Geräte-Fassung für echte Screens */
.geraet{width:var(--geraet);border:1px solid var(--linie);border-radius:36px;padding:9px;background:#0A0A09}
.geraet img{border-radius:28px;width:100%}
.geraet.ausschnitt{border-bottom:0;border-radius:36px 36px 0 0;padding-bottom:0}
.geraet.ausschnitt img{border-radius:28px 28px 0 0}
.hero .geraet{margin-left:auto;margin-right:calc(var(--rand) * -.2)}

/* Zweispaltige Abschnitte: Text links, Screen rechts */
.zwei{display:grid;gap:48px;align-items:center}
.zwei .text > * + *{margin-top:18px}
.zwei .text p{color:var(--papier-2)}
.zwei figure{justify-self:center}

/* Modi */
.modi-kopf{display:grid;gap:18px}
.modi-kopf p{color:var(--papier-2)}
.modi{list-style:none;padding:0;display:grid;margin-top:48px;border-top:1px solid var(--linie)}
.modi li{display:grid;gap:4px 32px;padding:20px 0;border-bottom:1px solid var(--linie)}
.modi b{font:600 26px/1.1 var(--cond)}
.modi span{color:var(--papier-2)}

/* Anfänger */
.antworten{list-style:none;padding:0;display:flex;flex-wrap:wrap;align-items:baseline}
.antworten li{font:500 clamp(19px,4.9vw,30px)/1.2 var(--cond);color:var(--papier);white-space:nowrap}
.antworten li + li::before{content:"";display:inline-block;width:1px;height:.8em;background:var(--linie);margin:0 clamp(10px,2.6vw,16px);vertical-align:-.05em}

/* Rekorde */
.zwei .text .rekord-zeile,.rekord-zeile{display:flex;align-items:center;gap:10px;color:var(--messing);font:600 15px/1.3 var(--sans)}
.rekord-zeile svg{width:18px;height:18px;flex:none}
.zwei-screens{position:relative;justify-self:center;width:min(100%,520px);padding-bottom:40px}
.zwei-screens .geraet{width:min(64%,320px)}
.zwei-screens .geraet + .geraet{position:absolute;right:0;top:56px;background:var(--schwarz)}

/* Mehr */
.liste{list-style:none;padding:0;margin-top:40px;display:grid;column-gap:48px;border-top:1px solid var(--linie)}
.liste li{text-wrap:balance;padding:16px 0;border-bottom:1px solid var(--linie);font:500 clamp(18px,2vw,21px)/1.35 var(--cond);color:var(--papier)}

/* Nicht + Daten */
.nicht-daten{display:grid;gap:64px}
.nicht ul{list-style:none;padding:0;margin-top:28px}
.nicht li{font:500 clamp(22px,4.4vw,30px)/1.2 var(--cond);color:var(--papier-2);padding:14px 0;border-top:1px solid var(--haar)}
.daten > * + *{margin-top:18px}
.daten p{color:var(--papier-2)}

/* FAQ */
.faq h2{margin-bottom:32px}
.faq details{border-top:1px solid var(--linie)}
.faq details:last-of-type{border-bottom:1px solid var(--linie)}
.faq summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr 20px;gap:16px;align-items:center;padding:20px 0;font:600 clamp(19px,2.2vw,23px)/1.25 var(--cond)}
.faq summary::-webkit-details-marker{display:none}
.faq summary .plus{position:relative;width:16px;height:16px}
.faq summary .plus::before,.faq summary .plus::after{content:"";position:absolute;left:0;top:7px;width:16px;height:2px;border-radius:2px;background:var(--papier);transition:transform .2s ease-out}
.faq summary .plus::after{transform:rotate(90deg)}
.faq details[open] summary .plus::after{transform:rotate(0)}
.faq summary:hover{text-decoration:underline;text-decoration-color:var(--linie);text-underline-offset:.2em}
.faq details p{color:var(--papier-2);padding:0 0 22px;max-width:62ch}

/* Schluss */
.schluss{text-align:left}
.schluss h2{font-size:clamp(40px,9vw,88px);max-width:12ch}
.schluss p{margin-top:16px;color:var(--papier-2)}
.naechstes{display:flex;align-items:center;gap:18px;margin-top:32px}
.naechstes p{margin:0;font:500 clamp(20px,3vw,26px)/1.2 var(--cond);color:var(--papier)}
.ein-strich{width:30px;overflow:visible}
.ein-strich .strich{stroke:var(--papier);stroke-width:17;stroke-linecap:round}
.ein-strich text{font:500 13px var(--cond);fill:var(--bleistift);text-anchor:middle}

/* Fuß */
.fuss{border-top:1px solid var(--haar);padding-block:40px 48px;font-size:14px;color:var(--bleistift)}
.fuss nav ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:14px}
.fuss nav + nav ul{margin-top:10px}
.fuss nav a{color:var(--papier-2)}
.fuss .copy{margin-top:22px}

/* Rechtstexte */
.recht{padding-block:clamp(40px,7vw,96px) var(--abschnitt)}
.recht h1{font-size:clamp(40px,8vw,72px)}
.recht h2{font-size:clamp(22px,3vw,28px);margin-top:44px;margin-bottom:10px;letter-spacing:-.005em}
.recht p,.recht address{color:var(--papier-2);margin-top:10px;font-style:normal;max-width:60ch}
.recht .stand{margin-top:44px;font-size:14px;color:var(--bleistift)}

@media (min-width:768px){
  .zwei{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}
  .zwei.umgekehrt .text{order:2}
  .modi li{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:baseline;padding:24px 0}
  .liste{grid-template-columns:1fr 1fr}
  .nicht-daten{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:72px}
}
@media (min-width:1100px){
  :root{--geraet:430px}
  .hero{padding-bottom:32px}
  .hero{--buendel:156px}
  .ein-strich{width:35px}
  .buendel{gap:22px 32px}
  .hero-raster{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:72px;align-items:start}
  .hero h1{grid-column:1 / -1;max-width:none}
  .hero .unter{margin-top:28px}
  .hero-raster figure{margin:28px 0 0 auto}
  .hero .geraet.ausschnitt{border-bottom:1px solid var(--linie);border-radius:36px;padding-bottom:9px}
  .hero .geraet.ausschnitt img{border-radius:28px}
  .modi-kopf{grid-template-columns:minmax(0,7fr) minmax(0,5fr);column-gap:72px;align-items:end}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
