/* Complete desktop sections. Content stays in normal flow and may grow for translations. */
@media (min-width:1100px) and (min-height:640px){
 body:not(.destination-page) #ablauf,
 body:not(.destination-page) #check,
 body:not(.destination-page) #fragen{
  min-height:calc(100svh - var(--header-h) - 12px);
  padding-block:26px;
  display:flex;
  align-items:center;
 }

 body:not(.destination-page) #ablauf .flow-track{width:100%;height:auto;min-height:0}
 body:not(.destination-page) #ablauf .flow-sticky{position:static;display:block;height:auto;min-height:0;overflow:visible;padding:0}
 body:not(.destination-page) #ablauf .flow-head{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;gap:40px;margin-bottom:20px}
 body:not(.destination-page) #ablauf .h-display{font-size:clamp(36px,3vw,42px);line-height:1.05;max-width:25ch}
 body:not(.destination-page) #ablauf .eyebrow{margin-bottom:10px}
 body:not(.destination-page) #ablauf .flow-lead{font-size:15px;line-height:1.45;margin-bottom:12px;max-width:34em}
 body:not(.destination-page) #ablauf .flow-aside .btn{min-height:38px;padding:8px 15px;font-size:13px;gap:12px}
 body:not(.destination-page) #ablauf .flow-aside .i-arrow{width:17px;height:17px}
 body:not(.destination-page) #ablauf .flow-rail{width:min(100% - 2 * var(--gutter),var(--wrap));margin-inline:auto;padding:0;overflow:visible}
 body:not(.destination-page) #ablauf .flow-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:auto;transform:none;will-change:auto}
 body:not(.destination-page) #ablauf .fstep{width:auto;min-width:0;min-height:0;padding:16px 18px;border-radius:16px;gap:8px}
 body:not(.destination-page) #ablauf .fs-top{min-height:30px;margin:0 0 3px}
 body:not(.destination-page) #ablauf .fs-no{font-size:37px;line-height:.9}
 body:not(.destination-page) #ablauf .who{font-size:11px;line-height:1.2;padding:4px 8px}
 body:not(.destination-page) #ablauf .fstep h3{font-size:23px;line-height:1.08}
 body:not(.destination-page) #ablauf .fstep p{font-size:13.5px;line-height:1.44;padding-inline-end:24px}
 body:not(.destination-page) #ablauf .tick{width:21px;height:21px;inset-inline-end:12px;bottom:14px;border-width:1px}
 body:not(.destination-page) #ablauf .tick svg{width:13px;height:13px}
 body:not(.destination-page) #ablauf .flow-meter{display:none}

 body:not(.destination-page) #check{overflow:visible}
 body:not(.destination-page) #check .check-grid{width:min(100% - 2 * var(--gutter),var(--wrap));grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:44px;align-items:center}
 body:not(.destination-page) #check .check-copy .h-display{font-size:clamp(36px,3vw,42px);line-height:1.06;max-width:21ch}
 body:not(.destination-page) #check .check-copy .eyebrow{margin-bottom:14px}
 body:not(.destination-page) #check .check-lead{font-size:15px;line-height:1.5;margin-top:16px;max-width:37em}
 body:not(.destination-page) #check .fine{font-size:13px;line-height:1.45;margin-top:10px;max-width:38em;color:#eef3efb3}
 body:not(.destination-page) #check .check-copy>.assurances{grid-template-columns:minmax(0,1fr);gap:9px;margin-top:18px}
 body:not(.destination-page) #check .assurances li{grid-template-columns:25px minmax(0,1fr);gap:9px;padding:0;background:transparent;border-radius:0;font-size:13px;line-height:1.42;color:var(--on-dark-2)}
 body:not(.destination-page) #check .assurances b{color:var(--on-dark)}
 body:not(.destination-page) #check .as-ico{width:25px;height:25px;border-radius:7px;background:#ffffff12;color:var(--mint)}
 body:not(.destination-page) #check .as-ico svg{width:17px;height:17px}
 body:not(.destination-page) #check .quiz-card{padding:23px 25px;border-radius:20px;min-width:0}
 body:not(.destination-page) #check .quiz-top{font-size:13px;gap:14px}
 body:not(.destination-page) #check .quiz-bar{margin-top:12px}
 body:not(.destination-page) #check .q legend{font-size:25px;line-height:1.13;padding:18px 0 14px}
 body:not(.destination-page) #check .opt{min-height:57px;padding:9px 13px;gap:11px;border-radius:12px}
 body:not(.destination-page) #check .opt+.opt{margin-top:8px}
 body:not(.destination-page) #check .txt b{font-size:15px;line-height:1.3}
 body:not(.destination-page) #check .txt small{font-size:13px;line-height:1.35;margin-top:2px}
 body:not(.destination-page) #check .box{width:22px;height:22px}
 body:not(.destination-page) #check .quiz-nav{min-height:42px;margin-top:15px;gap:10px}
 body:not(.destination-page) #check .quiz-hint{font-size:13px;line-height:1.4}
 body:not(.destination-page) #check .quiz-nav .btn{min-height:40px;padding:9px 18px;font-size:14px}
 body:not(.destination-page) #check .quiz-nav .link-btn{font-size:13px}
 body:not(.destination-page) #check .q-email-copy{font-size:14px;line-height:1.45;margin-bottom:14px}
 body:not(.destination-page) #check .q-email-label{font-size:13px;margin-bottom:7px}
 body:not(.destination-page) #check .q-email-input{min-height:48px;border-radius:10px;font-size:16px;padding-inline:14px}
 body:not(.destination-page) #check .q-email-privacy,
 body:not(.destination-page) #check .q-email-preview,
 body:not(.destination-page) #check .q-email-error{font-size:13px;line-height:1.4}
 body:not(.destination-page) #check .q-email-preview{padding:9px 11px;margin-top:10px}
 body:not(.destination-page) #check .res-head{padding-top:18px}
 body:not(.destination-page) #check .res-title{font-size:25px;line-height:1.08}
 body:not(.destination-page) #check .res-text{font-size:14px;line-height:1.45;margin-top:11px}
 body:not(.destination-page) #check .res-points{margin-top:10px;gap:5px}
 body:not(.destination-page) #check .res-points li{font-size:13px;line-height:1.4;padding-inline-start:16px}
 body:not(.destination-page) #check .res-offer{margin-top:13px;padding:13px 15px;gap:9px 15px}
 body:not(.destination-page) #check .res-offer b{font-size:14px;line-height:1.3}
 body:not(.destination-page) #check .res-price{font-size:28px}
 body:not(.destination-page) #check .res-price small{font-size:13px;line-height:1.4}
 body:not(.destination-page) #check .res-actions{margin-top:13px;gap:9px}
 body:not(.destination-page) #check .res-actions .btn{min-height:38px;padding:9px 13px;font-size:13px}

 body:not(.destination-page) #fragen .faq-grid{width:min(100% - 2 * var(--gutter),var(--wrap));grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:40px;align-items:start}
 body:not(.destination-page) #fragen .faq-side{position:static}
 body:not(.destination-page) #fragen .h-display{font-size:clamp(36px,3vw,42px);line-height:1.05}
 body:not(.destination-page) #fragen .eyebrow{margin-bottom:14px}
 body:not(.destination-page) #fragen .faq-contact{font-size:14px;line-height:1.5;margin-top:18px}
 body:not(.destination-page) #fragen .faq-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:26px;align-items:start}
 body:not(.destination-page) #fragen .faq-item summary{grid-template-columns:24px minmax(0,1fr) 25px;align-items:center;gap:9px;min-height:44px;padding:10px 0;font-size:15px;line-height:1.3}
 body:not(.destination-page) #fragen .fq-no{display:block;font-size:11px;padding-top:0}
 body:not(.destination-page) #fragen .plus{width:25px;height:25px;margin:0}
 body:not(.destination-page) #fragen .plus:before,
 body:not(.destination-page) #fragen .plus:after{width:10px;margin-left:-5px}
 body:not(.destination-page) #fragen .faq-a p{padding:0 34px 17px;font-size:14px;line-height:1.55;max-width:none}
}

/* Short desktop windows retain every item with tighter spacing, not clipped panels. */
@media (min-width:1100px) and (min-height:640px) and (max-height:699px){
 body:not(.destination-page) #ablauf,
 body:not(.destination-page) #check,
 body:not(.destination-page) #fragen{padding-block:18px}
 body:not(.destination-page) #ablauf .flow-head{margin-bottom:14px}
 body:not(.destination-page) #ablauf .h-display,
 body:not(.destination-page) #check .check-copy .h-display,
 body:not(.destination-page) #fragen .h-display{font-size:36px}
 body:not(.destination-page) #ablauf .flow-steps{gap:10px}
 body:not(.destination-page) #ablauf .fstep{padding:14px 16px;gap:7px}
 body:not(.destination-page) #ablauf .fs-top{min-height:27px}
 body:not(.destination-page) #ablauf .fs-no{font-size:32px}
 body:not(.destination-page) #ablauf .fstep h3{font-size:22px}
 body:not(.destination-page) #ablauf .fstep p{font-size:13px;line-height:1.4}
 body:not(.destination-page) #check .quiz-card{padding:16px 22px}
 body:not(.destination-page) #check .q legend{font-size:23px;padding:14px 0 12px}
 body:not(.destination-page) #check .opt{min-height:51px;padding:7px 11px}
 body:not(.destination-page) #check .opt+.opt{margin-top:6px}
 body:not(.destination-page) #check .txt b{font-size:14.5px;line-height:1.3}
 body:not(.destination-page) #check .txt small{line-height:1.3}
 body:not(.destination-page) #check .quiz-nav{margin-top:12px;min-height:38px}
 body:not(.destination-page) #check .quiz-nav .btn{min-height:38px;padding-block:8px}
 body:not(.destination-page) #fragen .faq-item summary{min-height:41px;padding-block:8px}
}

/* On taller screens the same layout breathes without becoming a second screen. */
@media (min-width:1100px) and (min-height:900px){
 body:not(.destination-page) #ablauf,
 body:not(.destination-page) #check,
 body:not(.destination-page) #fragen{padding-block:40px}
 body:not(.destination-page) #ablauf .flow-head{margin-bottom:27px}
 body:not(.destination-page) #ablauf .fstep{padding:21px 23px;gap:11px}
 body:not(.destination-page) #ablauf .fstep p{font-size:15px;line-height:1.5}
 body:not(.destination-page) #ablauf .fs-top{margin-bottom:7px}
 body:not(.destination-page) #check .quiz-card{padding:30px 32px}
 body:not(.destination-page) #check .opt{min-height:63px}
 body:not(.destination-page) #check .txt b{font-size:16px}
 body:not(.destination-page) #check .txt small{font-size:14px}
 body:not(.destination-page) #fragen .faq-item summary{font-size:16px;min-height:49px;padding-block:12px}
}
