/* 29 · Index — Weiß, Schwarz, ein Teal. Alles ist eine Liste. */
:root{
  --bg:#fff;
  --ink:#0b0b0b;
  --mute:#5f5f5f;
  --faint:#c8c8c8;
  --line:#0b0b0b;
  --teal:#069d7d;
  --teal-ink:#03785f;
  --pad:clamp(16px,3.2vw,48px);
  --f:'Familjen Grotesk',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font:400 17px/1.5 var(--f);font-feature-settings:'tnum';-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,p,ol,ul,dl,dd,figure{margin:0;padding:0}
ol,ul{list-style:none}
::selection{background:var(--teal);color:#fff}
:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.wrap{max-width:1520px;margin-inline:auto;padding-inline:var(--pad)}
.skip{position:absolute;left:-999px;top:8px;background:var(--ink);color:#fff;padding:8px 14px;z-index:100}
.skip:focus{left:8px}

.label{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.count{color:var(--mute);font-weight:500;letter-spacing:.02em}

/* ---------- Kopf ---------- */
.top{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.94);-webkit-backdrop-filter:saturate(1.4) blur(10px);backdrop-filter:saturate(1.4) blur(10px);border-bottom:1px solid var(--line)}
.top__in{display:flex;align-items:center;gap:32px;height:72px}
.top__logo img{width:66px;height:auto;aspect-ratio:1510/1300}
.top__logo{flex:none}
.top__nav{flex:1;display:flex;align-items:center;justify-content:space-between;gap:32px}
.top__nav ol{display:flex;gap:clamp(18px,2.6vw,40px)}
.top__nav ol a{display:inline-flex;align-items:baseline;gap:6px;text-decoration:none;font-size:16px;font-weight:500;padding:6px 0;background:linear-gradient(var(--ink),var(--ink)) 0 100%/0 1px no-repeat;transition:background-size .25s}
.top__nav ol a:hover{background-size:100% 1px}
.top__nav .n{font-size:11px;color:var(--mute);font-weight:500}
.top__meta{display:flex;align-items:center;gap:22px}
.top__phone{text-decoration:none;font-weight:600;font-size:16px}
.top__phone:hover{color:var(--teal-ink)}
.top__lang{display:inline-grid;place-items:center;width:40px;height:40px;border:1px solid var(--ink);border-radius:50%;font-size:13px;font-weight:600;text-decoration:none;letter-spacing:.04em}
.top__lang:hover{background:var(--ink);color:#fff}
.top__menu{display:none}

/* ---------- Hero ---------- */
.hero{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;padding-top:clamp(40px,6.2vh,72px);padding-bottom:clamp(36px,5vh,56px);align-items:end}
.hero__main{grid-column:1/9}
.kicker{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:500;color:var(--mute);margin-bottom:22px}
.dot{width:9px;height:9px;border-radius:50%;background:var(--teal);flex:none}
.hero h1{font-size:clamp(38px,4.7vw,70px);line-height:1.0;font-weight:600;letter-spacing:-.035em;text-wrap:balance}
.hero__side{grid-column:9/13;display:grid;gap:22px;padding-bottom:6px}
.hero__side p:first-child{font-size:16.5px;line-height:1.5;color:#2b2b2b;hyphens:auto}
.hero__ctas{display:flex;flex-wrap:wrap;gap:10px}
.btn{display:inline-flex;align-items:center;gap:10px;height:46px;padding:0 20px;border:1px solid var(--ink);border-radius:999px;text-decoration:none;font-weight:600;font-size:15.5px;transition:background .2s,color .2s}
.btn:hover{background:var(--ink);color:#fff}
.btn--solid{background:var(--ink);color:#fff}
.btn--solid:hover{background:var(--teal-ink);border-color:var(--teal-ink)}

/* ---------- Index (Leistungen) ---------- */
.index{position:relative;padding-bottom:clamp(80px,10vw,150px)}
.index__head{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;align-items:baseline;border-top:1px solid var(--line);padding:14px 0 18px}
.index__head .label{grid-column:1/5}
.index__head h2{grid-column:5/9;font-size:15px;font-weight:600;letter-spacing:0}
.index__intro{grid-column:9/13;max-width:42ch;font-size:15px;color:var(--mute);line-height:1.45}
.rows{border-bottom:1px solid var(--line)}
.row{border-top:1px solid var(--line)}
.row details{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;align-items:center}
.row summary{grid-column:1/9;list-style:none;cursor:default;display:grid;grid-template-columns:subgrid;align-items:baseline;padding:clamp(6px,1vw,14px) 0 clamp(8px,1.1vw,16px)}
.row summary::-webkit-details-marker{display:none}
.row details::details-content{content-visibility:visible;grid-column:9/13}
.row__n{grid-column:1}
.row__t{grid-column:2/9}
.row__n{font-size:14px;font-weight:600;color:var(--mute);align-self:start;padding-top:1.2em}
.row__t{font-size:clamp(40px,6.4vw,104px);line-height:.98;font-weight:500;letter-spacing:-.045em;transition:color .25s,transform .35s cubic-bezier(.2,.7,.2,1);hyphens:manual}
.row__x{font-size:15.5px;line-height:1.45;color:var(--mute);max-width:36ch;transition:color .25s}
.row__i{display:none}
@media (min-width:900px) and (not (pointer:coarse)){
  .rows:hover .row__t{color:var(--faint)}
  .rows:hover .row__x{color:#a8a8a8}
  .rows .row:hover .row__t{color:var(--ink);transform:translateX(14px)}
  .rows .row:hover .row__x{color:var(--ink)}
  .rows .row:hover .row__n{color:var(--teal-ink)}
}
.row summary:focus-visible{outline:none}
.row summary:focus-visible .row__t{color:var(--teal-ink);text-decoration:underline;text-decoration-thickness:3px;text-underline-offset:10px}

/* Vorschaufenster, folgt dem Cursor (nur Desktop, per JS) */
.peek{position:fixed;left:0;top:0;width:320px;height:210px;pointer-events:none;z-index:30;opacity:0;transform:translate3d(var(--x,0),var(--y,0),0) scale(.92);transition:opacity .2s,transform .12s linear;display:none}
.js .peek{display:block}
.peek.on{opacity:1;transform:translate3d(var(--x,0),var(--y,0),0) scale(1)}
.peek__card{position:absolute;inset:0;display:none;overflow:hidden;background:var(--ink)}
.peek__card.on{display:block}
.peek__card span{position:absolute;left:14px;bottom:12px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.peek__card svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.peek--1{background:var(--teal)}
.peek--1 circle{fill:#fff;stroke:none}
.peek__arc{stroke-dasharray:2 10}
.peek--2{background-size:310%;background-position:88% 30%}
.peek--3{background:#fbc108}
.peek--3 circle{fill:#fff;stroke:none}
.peek--3 .peek__wave{stroke:var(--ink)}
.peek--3 span{color:var(--ink)}
.peek--4{background-size:420%;background-position:20% 24%}
.peek--5 .peek__grid{stroke:#333;stroke-width:1}
.peek--5 .peek__arrow{stroke:var(--teal);stroke-width:4}
.peek--6{background:#e9f5f1}
.peek--6 circle{fill:var(--teal);stroke:#e9f5f1;stroke-width:4}
.peek--6 span{color:var(--teal-ink)}
.peek--photo{background-color:#0b3b52;background-repeat:no-repeat}
.peek--photo::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(0,0,0,.55))}
.peek--photo span{z-index:1}

/* ---------- Abschnittsköpfe ---------- */
.sec-head{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;row-gap:18px;align-items:baseline;border-top:1px solid var(--line);padding-top:14px;margin-bottom:clamp(36px,5vw,64px)}
.sec-head .label{grid-column:1/4}
.sec-head h2{grid-column:4/13;font-size:clamp(34px,4.4vw,64px);line-height:1.02;font-weight:600;letter-spacing:-.035em;text-wrap:balance}
.sec-head__intro{grid-column:4/10;font-size:18px;line-height:1.5;color:#2b2b2b}
.sec-head--row{margin-bottom:clamp(28px,3.6vw,48px)}

/* ---------- Schwerpunkt: zweiter Index ---------- */
.focus{padding-bottom:clamp(80px,10vw,150px)}
.list2{counter-reset:f;border-bottom:1px solid var(--line)}
.list2 li{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;align-items:baseline;border-top:1px solid #d9d9d9;padding:18px 0 20px;transition:background .2s}
.list2 li:first-child{border-top-color:var(--line)}
.list2__n{grid-column:1/4;font-size:14px;font-weight:600;color:var(--teal-ink)}
.list2 h3{grid-column:4/9;font-size:clamp(24px,2.6vw,38px);line-height:1.08;font-weight:500;letter-spacing:-.025em}
.list2 p{grid-column:9/13;font-size:16px;color:var(--mute);line-height:1.45;hyphens:auto}

.stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:clamp(56px,7vw,100px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stats>div{padding:18px 24px 22px 0;display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.stats>div+div{border-left:1px solid var(--line);padding-left:24px}
.stats__v{font-size:clamp(72px,10.5vw,168px);line-height:.86;font-weight:600;letter-spacing:-.06em;margin-left:-.04em}
.stats__v--word{font-size:clamp(48px,6.6vw,104px);line-height:1;letter-spacing:-.045em;white-space:nowrap}
.stats dd{font-size:15px;font-weight:500;max-width:22ch}

.route{margin-top:clamp(56px,7vw,100px);display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;row-gap:14px}
.route__cap{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px}
.tag{display:inline-block;background:var(--teal-ink);color:#fff;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:6px 10px;border-radius:999px}
.route__codes{font-size:15px;font-weight:600;letter-spacing:.06em}
.route__svg{grid-column:1/-1;width:100%;height:auto;overflow:visible;margin:8px 0 0}
.leg{fill:none;stroke:var(--ink);stroke-width:2}
.leg--car{stroke-dasharray:8 9;stroke:var(--teal)}
.js .route .leg{stroke-dasharray:var(--len) var(--len);stroke-dashoffset:var(--len);transition:stroke-dashoffset 1.1s cubic-bezier(.6,0,.2,1)}
.js .route .leg--car{stroke-dasharray:8 9;stroke-dashoffset:0;opacity:0;transition:opacity .6s}
.js .route.drawn .leg{stroke-dashoffset:0}
.js .route.drawn .leg--car{opacity:1}
.js .route.drawn .leg:nth-child(2){transition-delay:.9s}
.js .route.drawn .leg:nth-child(3){transition-delay:1.3s}
.js .route.drawn .leg:nth-child(4){transition-delay:2.2s}
.route__nodes circle{fill:#fff;stroke:var(--ink);stroke-width:2}
.route__nodes circle:first-child,.route__nodes .end{fill:var(--ink)}
.route__lbl text{font:600 22px var(--f);letter-spacing:.06em;text-anchor:middle;fill:var(--ink)}
.route__lbl .mini{font-size:15px;font-weight:500;letter-spacing:.02em;fill:var(--teal-ink)}
.route__list{display:none}
.route__text{grid-column:1/10;font-size:clamp(19px,1.8vw,24px);line-height:1.35;font-weight:500;letter-spacing:-.01em}
.route__note{grid-column:10/13;font-size:15px;color:var(--mute);align-self:end}

/* ---------- Ablauf ---------- */
.process{padding-bottom:clamp(80px,10vw,150px)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}
.steps li{padding:18px 24px 8px 0;display:grid;align-content:start;gap:10px}
.steps li+li{border-left:1px solid #d9d9d9;padding-left:24px}
.steps__n{font-size:64px;line-height:1;font-weight:500;letter-spacing:-.05em;color:var(--teal)}
.steps h3{font-size:24px;font-weight:600;letter-spacing:-.02em}
.steps p{font-size:16px;color:var(--mute);hyphens:auto}

/* ---------- Über uns ---------- */
.about{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;row-gap:28px;border-top:1px solid var(--line);padding-top:14px;padding-bottom:clamp(80px,10vw,150px);align-items:start}
.about__label{grid-column:1/4}
.about__title{grid-column:4/13;font-size:clamp(34px,4.4vw,64px);line-height:1.02;font-weight:600;letter-spacing:-.035em}
.about__fig{grid-column:4/8;margin-top:clamp(12px,2vw,32px)}
.about__fig img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:40% 30%;filter:grayscale(1) contrast(1.05);transition:filter .5s}
.about__fig:hover img{filter:none}
.about__fig figcaption{font-size:13px;color:var(--mute);margin-top:10px;font-weight:500}
.about__body{grid-column:9/13;margin-top:clamp(12px,2vw,32px);display:grid;gap:36px}
.about__text{font-size:clamp(19px,1.55vw,22px);line-height:1.45;letter-spacing:-.005em;hyphens:auto}
.about__list{border-bottom:1px solid var(--line)}
.about__list li{border-top:1px solid var(--line);padding:12px 0;font-weight:500;display:flex;gap:12px;align-items:baseline}
.about__list li::before{content:"";width:14px;height:2px;background:var(--teal);flex:none;transform:translateY(-4px)}

/* ---------- Kontakt ---------- */
.contact{padding-bottom:clamp(80px,9vw,130px)}
.crow{border-bottom:1px solid var(--line)}
.crow li{position:relative;display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;align-items:baseline;border-top:1px solid var(--line)}
.crow__k{grid-column:1/4;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.crow__v{grid-column:4/12;font-size:clamp(30px,5.2vw,84px);line-height:1.1;font-weight:500;letter-spacing:-.04em;text-decoration:none;padding:8px 0 12px;overflow-wrap:anywhere;transition:color .2s}
.crow__v::after{content:"";position:absolute;inset:0}
.crow__a{grid-column:12/13;justify-self:end;width:clamp(26px,3vw,44px);height:auto;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .25s}
.crow li:hover .crow__v{color:var(--teal-ink)}
.crow li:hover .crow__a{transform:translate(4px,-4px);color:var(--teal-ink)}
.crow li:focus-within{outline:2px solid var(--teal);outline-offset:2px}
.crow__v:focus-visible{outline:none}
.cinfo{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;row-gap:28px;margin-top:clamp(40px,5vw,64px)}
.cinfo>div{display:grid;gap:10px;align-content:start}
.cinfo>div:nth-child(1){grid-column:4/7}
.cinfo>div:nth-child(2){grid-column:7/10}
.cinfo>div:nth-child(3){grid-column:10/13}
.cinfo .label{color:var(--mute)}
.cinfo p{font-size:18px;line-height:1.45}

/* ---------- Fuß ---------- */
.foot{border-top:1px solid var(--line);padding:28px 0 96px}
.foot__in{display:grid;grid-template-columns:auto 1fr auto auto;gap:24px 40px;align-items:center}
.foot__logo img{width:84px}
.foot__copy{font-size:14px;color:var(--mute)}
.foot__links{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:15px;font-weight:500}
.foot__links a{text-decoration:none}
.foot__links a:hover{text-decoration:underline;text-underline-offset:4px}
.foot__top{font-size:15px;font-weight:600;text-decoration:none}

/* ---------- Rechtsseiten ---------- */
.legal{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(80px,9vw,140px)}
.legal__head{grid-column:1/-1;display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;border-top:1px solid var(--line);padding-top:14px;margin-bottom:clamp(40px,5vw,72px);row-gap:20px}
.legal__head .label{grid-column:1/4}
.legal__head h1{grid-column:4/13;font-size:clamp(38px,5.4vw,84px);line-height:1;font-weight:600;letter-spacing:-.04em;hyphens:manual;overflow-wrap:break-word}
.legal__back{grid-column:4/13;font-weight:600;text-decoration:none}
.legal__back:hover{color:var(--teal-ink)}
.legal__body{grid-column:4/11;max-width:70ch}
.legal__body h2{font-size:clamp(22px,2vw,28px);line-height:1.15;font-weight:600;letter-spacing:-.02em;border-top:1px solid var(--line);padding-top:12px;margin:48px 0 14px}
.legal__body h2:first-child,.legal__body .legal-note+h2{margin-top:0}
.legal__body p,.legal__body ul{margin-bottom:14px;line-height:1.6;color:#222;overflow-wrap:break-word}
.legal__body ul{padding-left:0}
.legal__body li{position:relative;padding-left:22px;margin-bottom:6px}
.legal__body li::before{content:"";position:absolute;left:0;top:.8em;width:12px;height:2px;background:var(--teal)}
.legal__body a{color:var(--teal-ink);text-underline-offset:3px}
.legal__body .legal-note{border:1px solid var(--line);padding:14px 16px;font-size:15px;margin-bottom:40px}
.legal__body .legal-address{font-size:20px;line-height:1.45;font-weight:500}

/* ---------- Responsiv ---------- */
@media (max-width:1100px){
  .top__nav ol{gap:18px}
  .top__nav .n{display:none}
  .hero__main{grid-column:1/-1}
  .hero__side{grid-column:1/10;margin-top:28px;grid-template-columns:1fr auto;align-items:end;gap:28px}
  .row summary{grid-column:1/8}
  .row details::details-content{grid-column:8/13}
}
@media (max-width:899px){
  .top__in{height:64px;justify-content:space-between}
  .top__logo img{width:56px}
  .top__menu{display:inline-flex;align-items:center;gap:10px;background:none;border:1px solid var(--ink);border-radius:999px;height:42px;padding:0 16px;font:600 15px var(--f);color:var(--ink);cursor:pointer}
  .top__menu-icon{position:relative;width:14px;height:10px}
  .top__menu-icon::before,.top__menu-icon::after{content:"";position:absolute;left:0;width:14px;height:2px;background:currentColor;transition:transform .2s,top .2s}
  .top__menu-icon::before{top:1px}.top__menu-icon::after{top:7px}
  .top__menu[aria-expanded="true"] .top__menu-icon::before{top:4px;transform:rotate(45deg)}
  .top__menu[aria-expanded="true"] .top__menu-icon::after{top:4px;transform:rotate(-45deg)}
  .js .top__nav{position:fixed;inset:64px 0 auto 0;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;padding:8px var(--pad) 24px;gap:20px;display:none;max-height:calc(100vh - 64px);overflow:auto}
  .js .top.open .top__nav{display:flex}
  html:not(.js) .top__in{flex-wrap:wrap;height:auto;padding-block:12px}
  html:not(.js) .top__menu{display:none}
  .top__nav ol{flex-direction:column;gap:0}
  .top__nav ol li{border-bottom:1px solid #e3e3e3}
  .top__nav ol a{font-size:32px;font-weight:500;letter-spacing:-.03em;padding:10px 0;width:100%;background:none}
  .top__nav .n{display:inline;font-size:13px}
  .top__meta{justify-content:space-between}
  .top__phone{font-size:20px}

  .hero{padding-top:36px}
  .kicker{font-size:14px}
  .hero__side{grid-column:1/-1;grid-template-columns:1fr}
  .index__head,.sec-head{grid-template-columns:1fr}
  .index__head>*,.sec-head>*{grid-column:1/-1 !important}
  .index__head{row-gap:6px}
  .row details{display:block}
  .row details::details-content{content-visibility:hidden;block-size:0;overflow:clip;transition:block-size .3s,content-visibility .3s allow-discrete}
  .row details[open]::details-content{content-visibility:visible;block-size:auto}
  .row summary{cursor:pointer;grid-template-columns:34px 1fr 28px;grid-column:auto;align-items:center;padding:12px 0}
  .row__n{padding-top:0;font-size:12px;grid-column:1}
  .row__t{grid-column:2}
  .row__i{grid-column:3}
  .row__t{font-size:clamp(30px,9.6vw,64px);hyphens:auto}
  .row__i{display:block;position:relative;width:20px;height:20px;justify-self:end}
  .row__i::before,.row__i::after{content:"";position:absolute;left:0;top:9px;width:20px;height:2px;background:currentColor;transition:transform .25s}
  .row__i::after{transform:rotate(90deg)}
  .row details[open] .row__i::after{transform:rotate(0)}
  .row details[open] .row__t{color:var(--teal-ink)}
  .row__x{padding:0 0 18px 34px;font-size:16px;color:#333;max-width:none}
  .peek{display:none !important}
  .list2 li{grid-template-columns:34px 1fr;row-gap:6px}
  .list2__n{grid-column:1}
  .list2 h3,.list2 p{grid-column:2}
  .stats{grid-template-columns:1fr}
  .stats>div{flex-direction:row;align-items:baseline;justify-content:flex-start;gap:20px;padding:14px 0}
  .stats>div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}
  .stats__v{font-size:clamp(64px,20vw,120px);min-width:2.1ch}
  .stats__v--word{font-size:clamp(40px,12vw,72px);min-width:0}
  .route{grid-template-columns:1fr}
  .route>*{grid-column:1 !important}
  .route__svg{display:none}
  .route__list{display:grid;gap:0;margin:8px 0 6px;padding-left:4px}
  .route__list li{position:relative;padding:0 0 22px 30px;font-size:30px;font-weight:600;letter-spacing:.02em;line-height:1}
  .route__list li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:14px;border:2px solid var(--ink);border-radius:50%;background:#fff;z-index:1}
  .route__list li:first-child::before,.route__list li:last-child::before{background:var(--ink)}
  .route__list li::after{content:"";position:absolute;left:8px;top:20px;bottom:-6px;border-left:2px solid var(--ink)}
  .route__list li:last-child{padding-bottom:0}
  .route__list li:last-child::after{display:none}
  .route__list li:nth-child(2)::after{border-left:2px dashed var(--teal)}
  .route__list .car span{position:absolute;left:30px;top:-17px;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--teal-ink)}
  .route__list .car{margin-top:16px}
  .steps{grid-template-columns:1fr 1fr}
  .steps li:nth-child(3){border-left:0;padding-left:0}
  .steps li:nth-child(n+3){border-top:1px solid #d9d9d9}
  .about{grid-template-columns:1fr}
  .about>*{grid-column:1 !important}
  .about__fig{max-width:420px}
  .crow li{grid-template-columns:1fr auto;row-gap:2px;padding-top:12px}
  .crow__k{grid-column:1/-1}
  .crow__v{grid-column:1;padding-top:0}
  .crow__a{grid-column:2}
  .cinfo{grid-template-columns:1fr 1fr}
  .cinfo>div{grid-column:auto !important}
  .foot__in{grid-template-columns:auto 1fr;align-items:start}
  .foot__links{grid-column:1/-1}
  .foot__top{grid-column:1/-1}
  .legal,.legal__head{grid-template-columns:1fr}
  .legal>*,.legal__head>*{grid-column:1/-1 !important}
}
@media (max-width:520px){
  .steps{grid-template-columns:1fr}
  .steps li{border-left:0 !important;padding-left:0 !important;border-top:1px solid #d9d9d9;grid-template-columns:48px 1fr;column-gap:8px}
  .steps li:first-child{border-top:0}
  .steps__n{font-size:40px;grid-row:span 2}
  .cinfo{grid-template-columns:1fr}
  .crow__v{font-size:clamp(24px,7.4vw,40px)}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none !important;animation:none !important}
  .js .route .leg{stroke-dashoffset:0}
  .js .route .leg--car{opacity:1}
}
@media print{.top,.peek,.foot__top{display:none}}
