/* ===========================================================================
   TEIL: HÄUFIGE FRAGEN + ANFRAGE/ANFAHRT — Haus Rentei
   Ergänzung zu _soul.css. Jede Regel beginnt mit .t-fragen, damit sich
   nichts in die Arbeit der anderen Abschnitte mischt. Keine neuen Farben,
   keine dritte Schrift. Keyframes tragen den Präfix fr-.
   =========================================================================== */

.t-fragen{
  position:relative;background:var(--papier);color:var(--tinte);
  padding:clamp(52px,7vw,104px) 0;
  border-top:1px solid var(--linie);
}
.t-fragen .vor{
  margin:0 0 clamp(14px,1.8vw,24px);font-size:10.5px;letter-spacing:.26em;
  text-transform:uppercase;color:var(--stumm);font-weight:500;
}
.t-fragen h2{
  font-family:var(--anton);font-weight:400;text-transform:uppercase;
  font-size:clamp(34px,5.4vw,74px);line-height:.96;margin:0;letter-spacing:.004em;
}
.t-fragen h3{
  font-family:var(--anton);font-weight:400;text-transform:uppercase;
  font-size:clamp(21px,2.1vw,29px);line-height:1.04;margin:0 0 10px;
}
.t-fragen p{margin:0}
.t-fragen :focus-visible{outline:2px solid var(--tinte);outline-offset:3px;border-radius:6px}

/* ---------- Teil 1: der Aufklapper --------------------------------------- */
.t-fragen__gitter{
  display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.3fr);
  gap:clamp(28px,4.4vw,72px);align-items:start;
}
.t-fragen__kopf{position:sticky;top:clamp(96px,9vw,124px)}
.t-fragen__kopf .knopf{margin-top:clamp(18px,2.2vw,28px)}
.t-fragen__lead{
  margin-top:clamp(14px,1.8vw,22px)!important;font-size:clamp(15px,1.15vw,17px);
  color:#3B3A36;max-width:34ch;
}

.t-fragen__liste{counter-reset:frage;border-top:1px solid var(--linie)}
.t-fragen__punkt{border-bottom:1px solid var(--linie)}
.t-fragen__punkt > summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;
  gap:clamp(12px,1.6vw,22px);
  padding:clamp(15px,1.8vw,22px) 0;
  transition:padding-left .28s cubic-bezier(.2,.7,.3,1);
}
.t-fragen__punkt > summary::-webkit-details-marker{display:none}
.t-fragen__punkt > summary::before{
  counter-increment:frage;content:counter(frage,decimal-leading-zero);
  font-family:var(--anton);font-weight:400;font-size:13px;line-height:1;
  color:var(--stumm);flex:none;width:2.1em;padding-top:.2em;
  font-variant-numeric:tabular-nums;transition:color .25s ease;
}
.t-fragen__punkt > summary:hover{padding-left:6px}
.t-fragen__punkt > summary:hover::before,
.t-fragen__punkt[open] > summary::before{color:var(--tinte)}
.t-fragen__frage{
  flex:1;min-width:0;font-weight:500;font-size:clamp(15.5px,1.35vw,19px);
  line-height:1.34;
}
.t-fragen__kreuz{
  position:relative;flex:none;width:34px;height:34px;border-radius:50%;
  border:1px solid var(--linie);transition:background .25s ease,border-color .25s ease;
}
.t-fragen__kreuz::before,.t-fragen__kreuz::after{
  content:'';position:absolute;left:50%;top:50%;width:12px;height:1.5px;
  margin:-.75px 0 0 -6px;background:var(--tinte);transition:transform .3s cubic-bezier(.2,.7,.3,1);
}
.t-fragen__kreuz::after{transform:rotate(90deg)}
.t-fragen__punkt[open] .t-fragen__kreuz{background:var(--sand);border-color:transparent}
.t-fragen__punkt[open] .t-fragen__kreuz::after{transform:rotate(90deg) scaleX(0)}
.t-fragen__punkt > summary:hover .t-fragen__kreuz{background:var(--sand-hell)}
.t-fragen__punkt > summary:focus-visible{outline:2px solid var(--tinte);outline-offset:2px}

.t-fragen__antwort{
  padding:0 0 clamp(20px,2.4vw,30px) calc(2.1em + clamp(12px,1.6vw,22px));
  max-width:64ch;animation:fr-auf .34s cubic-bezier(.2,.7,.3,1);
}
.t-fragen__antwort p{font-size:clamp(14.5px,1.05vw,16px);color:#3B3A36}
.t-fragen__antwort p + p{margin-top:10px}
.t-fragen__antwort a{border-bottom:1px solid var(--linie);text-decoration:none;white-space:nowrap}
.t-fragen__antwort a:hover{border-bottom-color:var(--tinte)}
.t-fragen__kurz{
  font-family:var(--anton);font-weight:400;text-transform:uppercase;
  font-size:clamp(26px,3.2vw,44px);line-height:1;color:var(--tinte)!important;
}
.t-fragen__satz{
  list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;
}
.t-fragen__satz li{
  display:flex;align-items:baseline;gap:8px;background:var(--sand-hell);
  border-radius:var(--pille);padding:8px 16px;
}
.t-fragen__satz b{
  font-weight:500;font-size:10px;letter-spacing:.18em;text-transform:uppercase;
  color:var(--stumm);
}
.t-fragen__satz span{
  font-family:var(--anton);font-size:17px;line-height:1;font-variant-numeric:tabular-nums;
}

@keyframes fr-auf{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

/* ---------- Teil 2: Anfrage und Anfahrt ---------------------------------- */
.t-fragen.t-anfrage{background:var(--sand);border-top:0}
.t-fragen__anfrage{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.02fr);
  gap:clamp(14px,1.8vw,24px);align-items:start;
}
.t-fragen__ruf{padding:0 0 clamp(6px,1vw,14px)}
.t-fragen__ruf p{
  margin-top:clamp(14px,1.6vw,20px);font-size:clamp(14.5px,1.05vw,16px);
  color:#3B3A36;max-width:32ch;
}
.t-fragen__nummer{
  display:inline-block;margin-top:clamp(16px,2vw,26px);text-decoration:none;
  font-family:var(--anton);font-weight:400;
  font-size:clamp(30px,4.4vw,58px);line-height:1;letter-spacing:.005em;
  font-variant-numeric:tabular-nums;
  border-bottom:2px solid transparent;transition:border-color .25s ease;
}
.t-fragen__nummer:hover{border-bottom-color:var(--tinte)}

.t-fragen__karte{
  background:var(--papier);border-radius:var(--radius);
  padding:clamp(22px,2.6vw,36px);
}
.t-fragen__baustein{grid-column:2;grid-row:1 / span 2}
.t-fragen__untertitel{
  font-size:clamp(14px,1vw,15.5px);color:#3B3A36;max-width:44ch;
  margin-bottom:clamp(18px,2.2vw,26px)!important;
}

.t-fragen__feld{margin-bottom:14px}
.t-fragen__feld label{
  display:block;margin-bottom:7px;font-size:10px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--stumm);font-weight:500;
}
.t-fragen__feld input{
  width:100%;min-width:0;max-width:100%;font:inherit;font-size:15px;
  color:var(--tinte);background:var(--sand-hell);
  border:1px solid var(--linie);border-radius:16px;
  padding:12px 15px;appearance:none;-webkit-appearance:none;
  transition:border-color .2s ease,background .2s ease;
}
.t-fragen__feld input::placeholder{color:var(--stumm);opacity:.75}
.t-fragen__feld input:hover{background:var(--papier)}
.t-fragen__feld input:focus{outline:none;border-color:var(--tinte);background:var(--papier)}
.t-fragen__feld input:focus-visible{outline:2px solid var(--tinte);outline-offset:2px}
.t-fragen__feld input[type="date"]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6}
.t-fragen__feld input[type="number"]{-moz-appearance:textfield}
.t-fragen__feld input[type="number"]::-webkit-outer-spin-button,
.t-fragen__feld input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

.t-fragen__vorschaukopf{
  margin:clamp(20px,2.4vw,28px) 0 9px!important;font-size:10px;letter-spacing:.2em;
  text-transform:uppercase;color:var(--stumm);font-weight:500;
}
.t-fragen__vorschau{
  font-family:var(--sans);font-size:14px;line-height:1.6;color:#3B3A36;
  background:var(--sand-hell);border-radius:20px;
  padding:clamp(16px,1.8vw,22px);
  white-space:pre-wrap;overflow-wrap:anywhere;
  max-height:280px;overflow:auto;
}
.t-fragen__knopfreihe{display:flex;flex-wrap:wrap;gap:10px;margin-top:clamp(16px,2vw,22px)}
.t-fragen__hinweis{
  margin-top:clamp(18px,2.2vw,26px)!important;padding-top:15px;
  border-top:1px solid var(--linie);
  font-size:12.5px;line-height:1.62;color:var(--stumm);
}
.t-fragen__hinweis a{overflow-wrap:anywhere;border-bottom:1px solid var(--linie);text-decoration:none}
.t-fragen__hinweis a:hover{border-bottom-color:var(--tinte)}

.t-fragen__weg{grid-column:1;grid-row:2}
.t-fragen__adresse{
  font-style:normal;font-size:clamp(15px,1.15vw,17px);line-height:1.66;
}
.t-fragen__betreiber{
  margin-top:12px!important;font-size:14px;color:var(--stumm);
}
.t-fragen__punkte{
  list-style:none;margin:clamp(18px,2.2vw,26px) 0;padding:0;
  border-top:1px solid var(--linie);
}
.t-fragen__punkte li{
  position:relative;padding:11px 0 11px 22px;font-size:14.5px;color:#3B3A36;
  border-bottom:1px solid var(--linie);
}
.t-fragen__punkte li::before{
  content:'';position:absolute;left:0;top:1.05em;width:11px;height:1.5px;
  background:var(--stumm);
}
.t-fragen__extern svg{
  width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.7;
  stroke-linecap:round;stroke-linejoin:round;flex:none;
}
.t-fragen__rechtlich{
  margin-top:clamp(16px,2vw,22px)!important;display:flex;flex-wrap:wrap;gap:10px;
  align-items:center;font-size:12.5px;color:var(--stumm);
}
.t-fragen__rechtlich a{text-decoration:none;border-bottom:1px solid var(--linie)}
.t-fragen__rechtlich a:hover{border-bottom-color:var(--tinte);color:var(--tinte)}

/* ---------- schmal -------------------------------------------------------- */
@media(max-width:1000px){
  .t-fragen__gitter{grid-template-columns:1fr;gap:clamp(24px,4vw,38px)}
  .t-fragen__kopf{position:static}
  .t-fragen__lead{max-width:52ch}
  .t-fragen__anfrage{grid-template-columns:1fr}
  .t-fragen__baustein{grid-column:1;grid-row:2}
  .t-fragen__weg{grid-column:1;grid-row:3}
}
@media(max-width:720px){
  .t-fragen{padding:clamp(42px,9vw,64px) 0}
  .t-fragen__punkt > summary{gap:12px;padding:14px 0}
  .t-fragen__punkt > summary::before{width:1.9em;font-size:12px}
  .t-fragen__kreuz{width:30px;height:30px}
  .t-fragen__antwort{padding-left:calc(1.9em + 12px);padding-bottom:18px}
  .t-fragen__knopfreihe .knopf{flex:1 1 100%;justify-content:center}
  .t-fragen__vorschau{max-height:none}
}
@media(max-width:400px){
  .t-fragen__punkt > summary::before{display:none}
  .t-fragen__antwort{padding-left:0}
  .t-fragen__satz li{flex:1 1 100%}
}

/* ---------- Bewegung aus ------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .t-fragen__antwort{animation:none}
  .t-fragen__punkt > summary:hover{padding-left:0}
  .t-fragen *{transition-duration:.001ms!important}
}
