/* withira.com — "Ira baut dir Software nach Mass". Erbt Tokens/Klassen aus styles.css + katalog.css. */

/* ---- Hero-Feinschliff ---- */
.best-hero{max-width:920px;}
.best-hero .kat-hero__title{font-size:clamp(2rem,4.6vw,3.6rem);}

/* ---- Berater-Band ---- */
.best-band{max-width:1040px;}
.best-wrap{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start;
  background:radial-gradient(120% 140% at 0% 0%,#101a25,var(--wi-bg-1) 60%);
  border:1px solid var(--wi-line);border-radius:26px;padding:30px;}

/* Iras Vorstellung */
.best-ira{text-align:center;}
.best-ira__face{position:relative;display:flex;align-items:center;justify-content:center;height:170px;margin-bottom:8px;}
.best-ira__halo{position:absolute;width:170px;height:170px;border-radius:50%;
  background:radial-gradient(circle,var(--wi-ai-cyan-soft),transparent 65%);filter:blur(10px);animation:breathe 4s ease-in-out infinite;}
.best-ira__avatar{font-size:104px;position:relative;z-index:2;filter:drop-shadow(0 16px 24px rgba(0,0,0,.5));}
.best-ira__tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--wi-ai-cyan);margin-bottom:12px;}
.best-ira__text{color:var(--wi-text-dim);font-size:14.5px;line-height:1.6;margin:0;font-style:italic;}

/* Eingabeformular */
.best-form{min-width:0;}
.best-form__title{font-family:var(--serif);font-weight:400;font-size:clamp(1.4rem,2.4vw,1.9rem);margin:0 0 16px;}
.best-label{display:block;font-size:13px;font-weight:700;letter-spacing:.04em;color:var(--wi-text);margin:0 0 8px;}
.best-textarea{width:100%;background:var(--wi-bg-2);border:1px solid var(--wi-line);color:var(--wi-text);
  border-radius:16px;padding:14px 16px;font:inherit;font-size:15px;line-height:1.55;resize:vertical;min-height:120px;}
.best-textarea:focus{outline:none;border-color:var(--wi-gold);box-shadow:0 0 0 3px var(--wi-ai-cyan-soft);}
.best-hint{font-size:12.5px;color:var(--wi-text-dim);margin:8px 0 0;}

/* Dringlichkeit */
.best-urgency{border:none;padding:0;margin:20px 0 0;}
.best-urgency legend{padding:0;}
.best-urgency__opts{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;}
.best-chip{position:relative;cursor:pointer;}
.best-chip input{position:absolute;opacity:0;width:0;height:0;}
.best-chip span{display:inline-flex;align-items:center;gap:6px;background:var(--wi-bg-2);border:1px solid var(--wi-line);
  color:var(--wi-text-dim);border-radius:999px;padding:9px 16px;font-size:14px;transition:border-color .2s,color .2s,background .2s;}
.best-chip:hover span{border-color:var(--wi-gold);color:var(--wi-gold-hi);}
.best-chip input:checked+span{border-color:var(--wi-gold);color:var(--wi-text);background:color-mix(in srgb,var(--wi-gold) 12%,var(--wi-bg-2));}
.best-chip input:focus-visible+span{outline:2px solid var(--wi-ai-cyan);outline-offset:2px;}

.best-actions{margin-top:22px;}
.best-disclaimer{font-size:12.5px;color:var(--wi-text-dim);margin:14px 0 0;line-height:1.5;}

/* ---- Status / Ladeanzeige ---- */
.best-status{max-width:1040px;margin:24px auto 0;display:flex;align-items:center;justify-content:center;gap:12px;
  color:var(--wi-ai-cyan);font-size:15px;font-weight:500;text-align:center;}
.best-status[hidden]{display:none;}
.best-spin{display:inline-block;width:20px;height:20px;border:2px solid var(--wi-line);border-top-color:var(--wi-ai-cyan);
  border-radius:50%;animation:best-sp 1s linear infinite;flex:none;}
@keyframes best-sp{to{transform:rotate(360deg);}}

/* ---- Ergebnis (Iras Antwort + Quote) ---- */
.best-result{max-width:1040px;margin:24px auto 0;}
.best-result[hidden]{display:none;}
.best-reply{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:start;
  background:radial-gradient(120% 140% at 0% 0%,#101a25,var(--wi-bg-1) 70%);
  border:1px solid var(--wi-line);border-radius:18px;padding:20px 22px;margin-bottom:16px;}
.best-reply__face{font-size:46px;line-height:1;}
.best-reply__name{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--wi-ai-cyan);margin:0 0 8px;}
.best-reply__text{font-size:15.5px;line-height:1.6;color:var(--wi-text);margin:0;}
.best-reply__text b{color:var(--wi-gold-hi);font-weight:700;}

/* Quote-Karte */
.best-quote{background:var(--wi-bg-2);border:1px solid color-mix(in srgb,var(--wi-gold) 26%,var(--wi-line));
  border-radius:18px;padding:24px;box-shadow:0 22px 44px -28px var(--wi-gold-glow);}
.best-quote__head{display:flex;align-items:center;gap:10px;margin-bottom:6px;}
.best-quote__badge{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#1a1408;
  background:var(--wi-grad-gold);border-radius:999px;padding:4px 12px;}
.best-quote__title{font-family:var(--serif);font-weight:400;font-size:22px;margin:0;}
.best-quote__solution{color:var(--wi-text);font-size:15px;line-height:1.6;margin:10px 0 0;}
.best-quote__deliver{color:var(--wi-text-dim);font-size:14px;line-height:1.55;margin:8px 0 0;}
.best-quote__deliver strong{color:var(--wi-text);}

.best-scope{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:8px;}
.best-scope li{display:flex;align-items:flex-start;gap:10px;font-size:14.5px;color:var(--wi-text);line-height:1.5;}
.best-scope li::before{content:"✓";flex:none;color:var(--wi-ai-cyan);font-weight:700;margin-top:1px;}

.best-price{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;
  margin-top:20px;padding-top:18px;border-top:1px solid var(--wi-line);}
.best-price__label{font-size:13px;color:var(--wi-text-dim);}
.best-price__val{font-family:var(--serif);font-size:34px;color:var(--wi-gold-hi);line-height:1;}
.best-price__market{font-size:13px;color:var(--wi-text-dim);text-decoration:line-through;margin-left:10px;}
.best-price__note{width:100%;font-size:12.5px;color:var(--wi-text-dim);margin:10px 0 0;line-height:1.5;}

.best-cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px;}

/* ---- Anfrage-Felder (erscheinen vor dem Senden) ---- */
.best-contact{margin-top:20px;padding-top:18px;border-top:1px solid var(--wi-line);}
.best-contact[hidden]{display:none;}
.best-contact__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;}
.best-input{width:100%;background:var(--wi-bg-2);border:1px solid var(--wi-line);color:var(--wi-text);
  border-radius:999px;padding:12px 16px;font:inherit;font-size:14.5px;}
.best-input:focus{outline:none;border-color:var(--wi-gold);}
.best-field-err{font-size:12.5px;color:#ff8aa3;margin:8px 0 0;min-height:0;}
.best-field-err[hidden]{display:none;}

/* ---- Bestätigung nach dem Senden ---- */
.best-sent{display:grid;grid-template-columns:64px 1fr;gap:16px;align-items:center;
  background:radial-gradient(120% 140% at 0% 0%,#0e1d18,var(--wi-bg-1) 70%);
  border:1px solid color-mix(in srgb,var(--wi-ai-cyan) 34%,var(--wi-line));border-radius:18px;padding:22px;}
.best-sent__mark{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  font-size:28px;background:radial-gradient(circle,var(--wi-ai-cyan-soft),transparent 70%);border:1px solid var(--wi-line);}
.best-sent h3{font-family:var(--serif);font-weight:400;font-size:22px;margin:0 0 6px;}
.best-sent p{color:var(--wi-text-dim);font-size:14.5px;line-height:1.6;margin:0;}

/* ---- Fallback-Panel (KI-Server nicht verbunden) ---- */
.best-fallback{max-width:1040px;margin:24px auto 0;background:var(--wi-bg-2);border:1px dashed color-mix(in srgb,var(--wi-ai-cyan) 40%,var(--wi-line));
  border-radius:18px;padding:24px;}
.best-fallback[hidden]{display:none;}
.best-fallback__tag{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--wi-ai-cyan);margin-bottom:10px;}
.best-fallback__title{font-family:var(--serif);font-weight:400;font-size:20px;margin:0 0 8px;}
.best-fallback__text{color:var(--wi-text-dim);font-size:14.5px;line-height:1.6;margin:0 0 6px;}
.best-fallback__demo{margin-top:18px;}
.best-fallback__demo-label{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--wi-gold);margin:0 0 10px;}

/* ---- Toast (wie katalog.css) ---- */
.best-toast{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);z-index:95;max-width:90vw;
  background:linear-gradient(135deg,#1b2330,#10151d);color:var(--wi-text);border:1px solid var(--wi-ai-cyan-soft);
  border-radius:14px;padding:12px 18px;font-size:14px;font-weight:500;box-shadow:0 18px 40px -16px #000;opacity:0;transition:opacity .25s,transform .25s;}
.best-toast.show{opacity:1;transform:translateX(-50%) translateY(-6px);}

/* ---- Responsive ---- */
@media (max-width:760px){
  .best-wrap{grid-template-columns:1fr;}
  .best-ira__face{height:140px;}
  .best-ira__avatar{font-size:88px;}
  .best-contact__grid{grid-template-columns:1fr;}
}
@media (max-width:560px){
  .best-wrap{padding:22px 18px;}
  .best-reply,.best-sent{grid-template-columns:1fr;}
  .best-reply__face{font-size:38px;}
  .cards4{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){
  .best-ira__halo{animation:none !important;}
  .best-spin{animation-duration:0s;}
}
