/* SOUTH Look J — one sheet for phone / tablet / desktop */
:root{
  --navy:#004985;
  --steel:#38709E;
  --coral:#E07A4A;
  --coral-btn:#B84E24;
  --cream:#F4F6F8;
  --ink:#1c2a36;
  --muted:#5a6b78;
  --line:#d3e0ea;
  --bg:#fff;
  --max:1120px;
  --gutter:20px;
}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;
  src:url("/assets/fonts/poppins-400-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;
  src:url("/assets/fonts/poppins-400-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2020,U+20A0-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;
  src:url("/assets/fonts/poppins-600-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;
  src:url("/assets/fonts/poppins-600-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2020,U+20A0-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;
  src:url("/assets/fonts/inter-400-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;
  src:url("/assets/fonts/inter-400-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2020,U+20A0-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;
  src:url("/assets/fonts/inter-600-latin.woff2") format("woff2");
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;}
@font-face{font-family:"Inter";font-style:normal;font-weight:600;font-display:swap;
  src:url("/assets/fonts/inter-600-latin-ext.woff2") format("woff2");
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1E00-1EFF,U+2020,U+20A0-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{
  margin:0;
  font:16px/1.6 Inter,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--navy)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{
  outline:2px solid var(--navy);
  outline-offset:2px;
}
.skip{
  position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden;background:#fff;color:var(--navy);padding:8px 12px;z-index:20;
}
.skip:focus{left:8px}
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--edge,var(--gutter))}

/* Header: grid, not a fight between two stylesheets */
header.head{background:var(--navy);color:#fff}
header.head .head-row{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  grid-template-areas:"brand nav tools";
  align-items:center;
  gap:12px 20px;
  min-height:72px;
  padding:10px 0;
}
header.head .brand{grid-area:brand;display:flex;align-items:center;flex:0 0 auto;overflow:hidden}
header.head img.logo{height:40px;width:auto;max-width:180px}
header.head .head-row > nav[aria-label="Main"],
header.head .head-row > nav.main-nav{grid-area:nav;display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center}
header.head .head-row > nav[aria-label="Main"] a,
header.head .head-row > nav.main-nav a{
  color:#fff;text-decoration:none;font-size:13px;
  padding:5px 0;min-height:0;line-height:1.25;display:inline-flex;align-items:center;
}
header.head .tools{grid-area:tools;display:flex;align-items:center;gap:10px;position:relative;z-index:2;background:transparent}
header.head .lang a{color:#d3e0ea;text-decoration:none;font-size:13px;padding:8px 2px;min-height:44px;display:inline-flex;align-items:center}
header.head .lang [aria-current="page"]{color:#fff;font-weight:600}
header.head .lang{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}
header.head .lang-more{position:relative;flex:0 0 auto}
header.head .lang-more summary{
  list-style:none;cursor:pointer;color:#d3e0ea;
  width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:4px;
}
header.head .lang-more summary::-webkit-details-marker,
header.head .lang-more summary::marker{display:none;content:""}
header.head .lang-more[open] summary{color:#fff;background:rgba(255,255,255,.12)}
header.head .lang-more-list{
  display:none;
  position:absolute;right:0;top:calc(100% + 8px);
  background:#004985;min-width:12rem;padding:6px 0;z-index:40;
  box-shadow:0 8px 24px rgba(0,0,0,.25);
}
header.head .lang-more[open] .lang-more-list{display:block}
header.head .lang-more-list span{
  display:block;padding:8px 12px;color:#d3e0ea;font-size:13px;white-space:nowrap;
}
@media (max-width:720px){
  header.head .lang-more-list{
    position:fixed;right:12px;left:auto;top:64px;
  }
}
a.portal{
  background:var(--coral-btn);color:#fff;text-decoration:none;
  padding:8px 14px;font-size:13px;font-weight:600;
  min-height:40px;display:inline-flex;align-items:center;
}

.tag{font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel);padding:10px 0 0}
.hero{background:var(--navy);color:#fff;padding:48px 0 56px}
.hero h1{color:#fff;margin:0 0 10px;font-size:clamp(28px,4vw,40px);max-width:16ch;line-height:1.15}
.hero p{margin:0 0 20px;color:#d3e0ea;max-width:38rem}
.hero .actions{display:flex;flex-wrap:wrap;gap:10px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--coral-btn);color:#fff;text-decoration:none;
  padding:10px 16px;font-weight:600;min-height:44px;border:1px solid transparent;
}
.btn.ghost{background:transparent;border-color:#fff;color:#fff}
.page .btn.ghost{border-color:var(--navy);color:var(--navy)} /* outline button on white (Service: Portal) */

h1,h2,h3{color:var(--navy);font-family:Poppins,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-weight:600}
h1{font-size:clamp(26px,3vw,34px);line-height:1.2;margin:0 0 12px}
h2{font-size:22px;margin:36px 0 14px}
.page{padding-top:28px;padding-bottom:64px}
.note{color:var(--muted);font-size:14px}

.grid,.grid2,.grid4{
  display:grid;
  gap:16px;
}
.grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid2{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}
.grid4{grid-template-columns:repeat(4,minmax(0,1fr))}
.product-hero{display:grid;grid-template-columns:minmax(0,20rem) minmax(11rem,1fr) minmax(240px,18rem);gap:16px;align-items:stretch;justify-content:start;margin:12px 0 22px}
 .product-hero .lead{margin:0;font-size:15px;line-height:1.5;color:#1a2a36}
.product-hero .lead p{margin:0}
.product-hero .gallery{
  margin:0;
  width:100%;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.product-hero .gallery img{
  width:100%;
  aspect-ratio:1;
  height:auto;
  object-fit:contain;
  object-position:center;
  background:transparent;
  border:1px solid var(--line);
}
.product-hero .gallery img:first-child{
  grid-column:1/-1;
  aspect-ratio:auto;
  width:100%;
  height:auto;
  min-height:22rem;
  max-height:28rem;
  object-fit:contain;
}
.product-hero .gallery img.wide{
  grid-column:auto;
  aspect-ratio:1;
  width:100%;
  height:auto;
}
.product-hero .gallery img:first-child.wide{
  grid-column:1/-1;
  aspect-ratio:1;
}
@media (max-width:800px){.product-hero{grid-template-columns:1fr}}
.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:28px;align-items:start}

.card{border:1px solid var(--line);background:var(--cream);text-decoration:none;color:inherit;display:block}
.card .pic{
  aspect-ratio:1;height:auto;max-height:220px;
  background:var(--cream);display:flex;align-items:center;justify-content:center;padding:8px;
}
.card .pic img{width:100%;height:auto;max-height:none;object-fit:contain}
.card.wide .pic{aspect-ratio:auto;max-height:none;height:auto;padding:0}
.card.wide .pic img{width:100%;height:auto;object-fit:contain;display:block}
.card .cap{padding:12px 14px}
.card .cap b{display:block;color:var(--navy)}
.card .cap span{color:var(--muted);font-size:13px}
.card .cap .lang-note{display:inline-block;align-self:flex-start;width:max-content;margin:0 0 6px;padding:1px 7px;border:1px solid var(--line);border-radius:10px;font-size:11.5px;color:var(--muted)}
.pos{font-size:14px;color:var(--ink);margin:8px 0 0}

.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:16px 0}
.gallery img{width:100%;aspect-ratio:1;object-fit:contain;background:transparent;border:1px solid var(--line)}
.gallery img.wide{grid-column:1/-1;width:100%;height:auto;aspect-ratio:auto;object-fit:contain}

form.ask{background:var(--cream);border:1px solid var(--line);padding:14px;display:grid;gap:8px;max-width:100%;min-width:0}
form.ask label{font-size:13px;color:var(--muted)}
form.ask input,form.ask select,form.ask textarea{
  width:100%;max-width:100%;padding:10px 8px;border:1px solid var(--line);
  font:16px/1.4 "Segoe UI","Helvetica Neue",Arial,sans-serif;background:#fff;
}
form.ask textarea{min-height:96px;resize:vertical}
form.ask .consent{
  display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;
  font-size:13px;line-height:1.35;max-width:100%;min-width:0;
}
form.ask .consent input[type="checkbox"]{width:18px;height:18px;margin-top:2px;flex:none}
form.ask .consent span{min-width:0;overflow-wrap:anywhere}
form.ask button{
  background:var(--coral-btn);color:#fff;border:0;padding:12px;font-weight:600;cursor:pointer;min-height:44px;
}

.cover-check{max-width:28rem;margin:0 0 28px}
.cover-row{display:flex;gap:8px;align-items:end}
.cover-row input{flex:0 0 7em;width:7em;min-width:0}
.cover-row button{width:auto;padding:10px 16px;margin:0}
.cover-result{margin:4px 0 0;font-size:15px;color:var(--navy)}
.de-map{width:min(100%,420px);height:auto;display:block;margin:16px 0}
.de-map .land{fill:#E8F1F7;stroke:#004985;stroke-width:2;stroke-linejoin:round}
.de-map .dots circle{fill:#004985}

.mark{font-weight:800;letter-spacing:.04em;color:var(--navy);font-size:22px}
footer.site{background:var(--navy);color:#fff;padding:20px 0;font-size:13px}
footer.site a{color:#d3e0ea}

/* Tablet */
@media (max-width:1024px){
  .grid,.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Phone */
@media (max-width:860px){
  :root{--gutter:16px}
  header.head .head-row{
    grid-template-columns:1fr auto;
    grid-template-areas:
      "brand tools"
      "nav nav";
    min-height:0;
    gap:8px 12px;
  }
  header.head .head-row > nav[aria-label="Main"],
  header.head .head-row > nav.main-nav{
    width:100%;
    padding-top:8px;
    padding-left:10px;
    padding-right:10px;
    box-sizing:border-box;
    border-top:1px solid rgba(255,255,255,.18);
  }
  header.head img.logo{height:34px;max-width:150px}
  .hero{padding:28px 0 36px}
  .grid,.grid2,.grid4{grid-template-columns:1fr}
  .product-hero{grid-template-columns:1fr}
  .product-hero .lead{max-width:40rem}
  .product-hero .lead{margin:0;font-size:15px;line-height:1.5;color:#1a2a36}
.product-hero .lead p{margin:0}
.product-hero .gallery{width:100%}
  .split{grid-template-columns:1fr}
  .gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tag{display:none}
  .btn.ghost{margin-left:0}
}

@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto}
}

header.head .lang{display:flex;flex-wrap:nowrap;gap:2px 8px;align-items:center;background:transparent}
header.head .lang a{color:#d3e0ea;text-decoration:none;font-size:13px;padding:8px 2px;min-height:44px;display:inline-flex;align-items:center}
header.head .lang [aria-current="page"]{color:#fff;font-weight:600}
header.head .lang{display:flex;align-items:center;gap:4px;flex-wrap:nowrap}
header.head .lang-more{position:relative;flex:0 0 auto}
header.head .lang-more summary{
  list-style:none;cursor:pointer;color:#d3e0ea;
  width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;
  border-radius:4px;
}
header.head .lang-more summary::-webkit-details-marker,
header.head .lang-more summary::marker{display:none;content:""}
header.head .lang-more[open] summary{color:#fff;background:rgba(255,255,255,.12)}
header.head .lang-more-list{
  display:none;
  position:absolute;right:0;top:calc(100% + 8px);
  background:#004985;min-width:12rem;padding:6px 0;z-index:40;
  box-shadow:0 8px 24px rgba(0,0,0,.25);
}
header.head .lang-more[open] .lang-more-list{display:block}
header.head .lang-more-list span{
  display:block;padding:8px 12px;color:#d3e0ea;font-size:13px;white-space:nowrap;
}
@media (max-width:720px){
  header.head .lang-more-list{
    position:fixed;right:12px;left:auto;top:64px;
  }
}

.crumb{font-size:14px;color:var(--muted);margin:4px 0 18px;display:flex;flex-wrap:wrap;gap:4px 8px;align-items:center}
.crumb a{color:var(--steel);text-decoration:none}
.crumb a:hover{text-decoration:underline}
.crumb span[aria-current="page"]{color:var(--navy)}
.also{font-size:13px;margin:0 0 16px;color:var(--muted)}
.also a{
  color:var(--navy);text-decoration:underline;
  margin-right:.6em;
}

.types{
  display:flex;flex-wrap:wrap;gap:6px;align-items:center;
  margin:0 0 16px;padding:0;
  background:none;
}
.types a{
  color:var(--navy);text-decoration:none;font-size:13px;
  padding:4px 11px;line-height:1.25;
  display:inline-flex;align-items:center;
  background:transparent;border-radius:999px;border:0;
}
.types a:hover{text-decoration:none;background:#d5e6f2}
.types a[aria-current="page"]{font-weight:600;color:#fff;background:var(--navy);box-shadow:none}

.de-map .dots circle.own{fill:#B84E24}

.copy.old{margin:16px 0 24px;max-width:42em}
.copy.old ul{margin:8px 0 0;padding-left:1.2em}
.copy.old li{margin:4px 0}

/* News overview: date column + title on wide screens, date above title on phones; whole row clickable */
.news-list{list-style:none;margin:8px 0 0;padding:0;max-width:46rem;border-top:1px solid var(--line)}
.news-list li{position:relative;display:grid;grid-template-columns:7.5rem minmax(0,1fr);gap:4px 20px;align-items:baseline;margin:0;padding:16px 32px 16px 0;border-bottom:1px solid var(--line)}
.news-list .note{font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}
.news-list a{color:var(--navy);font-weight:600;line-height:1.4;text-decoration:none}
.news-list a::after{content:"";position:absolute;inset:0}
.news-list li::before{content:"\203A";position:absolute;right:6px;top:50%;transform:translateY(-50%);color:var(--coral);font-size:24px;line-height:1;transition:transform .15s}
.news-list li:hover a,.news-list a:focus-visible{text-decoration:underline}
.news-list li:hover::before{transform:translate(3px,-50%)}
@media (max-width:600px){
  .news-list li{grid-template-columns:minmax(0,1fr);padding:14px 28px 14px 0}
}


.card.photo{position:relative;overflow:hidden;min-height:0}
.card.photo .pic{aspect-ratio:5/3;max-height:none;height:auto;padding:0;background:#F4F6F8}
.card.photo .pic img{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
.card.photo.cut .pic img{object-fit:cover;object-position:center center;padding:0}
.card.photo .cap{
  position:absolute;left:0;top:0;bottom:0;right:auto;
  width:min(48%, 280px);
  padding:16px 18px;
  background:none;
  display:flex;flex-direction:column;justify-content:flex-start;
}
.card.photo .cap b{color:var(--navy)}
.card.photo .cap span{color:var(--muted)}
.card.photo.full .cap{
  position:static;width:auto;display:block;
  background:transparent;padding:12px 14px 8px;
}
.card.photo.full .pic{aspect-ratio:16/8}

.lead-pic{margin:8px 0 20px;background:#0B2440;border:0}
.lead-pic img{width:100%;height:auto;display:block;background:#0B2440}

.oc-head{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin:0 0 16px}
.oc-head h1{margin:0}
.oc-mark{display:block;background:#004985;padding:10px 14px;margin:0}
.oc-mark img{display:block;height:40px;width:auto}
.spec{margin:12px 0 16px;padding:0;list-style:none}
.spec li{border-top:1px solid #d7e3ee;padding:6px 0;display:flex;gap:12px}
.spec b{min-width:11rem;color:#004985;font-weight:600}

.media-video{max-width:52rem;margin:18px 0 24px;max-width:56rem}
.media-video video{display:block;width:100%;height:auto;background:#111;border-radius:6px}
.vid-lang{margin:8px 0 0;font-size:13px;color:var(--muted,#5a6b78)}
.vid-lang a{margin-right:10px}
.vid-lang a[aria-current="page"]{font-weight:600;color:var(--navy)}

.partners{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:16px 0 28px;align-items:stretch}
.partners .block-col{display:flex}
.partners article{background:#fff;border:1px solid var(--line,#d5e0ea);border-radius:8px;padding:16px 16px 12px;display:flex;flex-direction:column;width:100%;height:100%;box-sizing:border-box}
@media (max-width:720px){.partners{grid-template-columns:1fr}}
.partners img{display:block;max-width:100%;height:80px;width:auto;object-fit:contain;margin:0 auto 10px}
.partners h3{margin:0 0 8px;font-size:16px;text-align:center}
.partners p{margin:0;font-size:14px;line-height:1.45}

.visit{max-width:36em;margin:0 0 28px}
.visit p{margin:0 0 12px}

.visit-photo{margin:0 0 16px;max-width:40rem}
.visit-photo img{display:block;width:100%;height:auto;border-radius:6px}
.visit-photo .ph{display:flex;align-items:center;justify-content:center;min-height:200px;background:transparent;color:#004985;border:1px dashed #38709E;border-radius:6px;font-weight:600}
.visit-photo figcaption{margin:6px 0 0;font-size:13px;color:#5a6b78}

.lb{position:fixed;inset:0;background:rgba(11,36,64,.88);z-index:80;display:flex;align-items:center;justify-content:center;padding:24px}
.lb[hidden]{display:none}
.lb img{max-width:min(92vw,1100px);max-height:88vh;width:auto;height:auto;object-fit:contain;background:#fff;border-radius:4px}
.lb-x,.lb-p,.lb-n{position:absolute;background:none;border:0;color:#fff;font-size:42px;line-height:1;cursor:pointer;padding:8px 14px}
.lb-x{top:8px;right:10px}
.lb-p{left:4px}
.lb-n{right:4px}
.gallery img{cursor:zoom-in}

.copy{max-width:40rem;margin:8px 0 28px;line-height:1.55;color:#1a2a36}
.copy p{margin:0 0 12px}
.copy ul{margin:0 0 14px;padding-left:1.2em}
.copy li{margin:0 0 6px}
.copy .note{color:#5a6b78;font-size:13px}

.product-hero .lead p{margin:0 0 10px}
.product-hero .lead ul{margin:8px 0 0;padding-left:1.15em}
.product-hero .lead li{margin:0 0 4px}
.blocks{display:grid;gap:48px;margin:8px 0 36px;max-width:52rem}
.block h2{margin:0 0 8px;font-size:1.15rem;color:var(--navy)}
.block-text p{margin:0 0 10px;line-height:1.55}
.block.has-media,
.block.has-image{
  display:grid;
  gap:24px 28px;
  align-items:stretch;
}
.block-pic{margin:0}
.block-col.kind-image,
.block-pic{
  min-width:0;
}
.block-col.kind-image img,
.block-pic img{
  display:block;
  width:100%;
  max-width:100%;
  height:auto;
  aspect-ratio:auto;
  max-height:340px;
  object-fit:contain;
  object-position:top center;
  background:transparent;
  border:1px solid var(--line);
  border-radius:8px;
  padding:10px;
  box-sizing:border-box;
}
.block.cols-1-2{
  grid-template-columns:minmax(200px,280px) minmax(0,1fr);
}
.block.cols-2-1{
  grid-template-columns:minmax(0,1fr) minmax(200px,280px);
}
.block.cols-1-2,
.block.cols-2-1,
.block.has-image{
  align-items:stretch;
}
.block.cols-1-2 > .kind-text,
.block.cols-2-1 > .kind-text,
.block.has-image > .kind-text{
  display:flex;
  flex-direction:column;
}
.block.cols-1-2 > .kind-text::after,
.block.cols-2-1 > .kind-text::after,
.block.has-image > .kind-text::after{
  content:"";
  flex:1 1 auto;
}
@media (max-width:860px){
  .block.cols-1-2 > .kind-text::after,
  .block.cols-2-1 > .kind-text::after,
  .block.has-image > .kind-text::after{
    content:none;
    flex:none;
  }
}
.block.cols-1-2 .kind-image img,
.block.cols-1-2 .block-pic img{
  margin-right:auto;
}
.block.cols-2-1 .kind-image img,
.block.cols-2-1 .block-pic img{
  margin-left:auto;
}
.block.cols-1 .kind-image img,
.block.cols-1 .block-pic img,
.block.cols-1-1 .kind-image img,
.block.cols-1-1-1 .kind-image img{
  max-width:28rem;
}
.blocks > .block,
details.learn-more > .block{
  margin:0 0 32px;
}
@media (max-width:860px){
  .block.has-media{grid-template-columns:1fr}
}

.block .media-video video{width:100%;height:auto;display:block;background:#0B2440}
/* square 360 degree product turntable next to a text column (SOUTH-Lift coin) */
.media-video.turntable{max-width:480px;margin:0 auto}
.block .media-video.turntable video{background:#F4F6F8;border-radius:8px}

.hp{position:absolute;left:-9999px;height:0;width:0;opacity:0;}

a.temp, .temp { color:#c1121f; }
.head nav a.temp { color:#ffb3b3; }
.head nav a.temp[aria-current] { color:#fff; background:#c1121f; }
/* "All products" looks like the other types (it is not a selection) */


/* Product hero frame — keep every product page the same shape */
.product-hero{
  display:grid;
  grid-template-columns:minmax(0,18rem) minmax(0,1fr) minmax(240px,16rem);
  gap:16px;
  align-items:start;
  justify-content:start;
}
.product-hero .gallery{
  margin:0;
  width:100%;
  max-width:18rem;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
}
.product-hero .gallery img{
  width:100%;
  height:auto;
  aspect-ratio:1;
  object-fit:contain;
  object-position:center;
}
.product-hero .gallery img:first-child,
.product-hero .gallery img:first-child.wide{
  grid-column:1/-1;
  aspect-ratio:1;
  min-height:0;
  max-height:none;
  height:auto;
}
.product-hero .gallery img.wide{
  grid-column:auto;
  aspect-ratio:1;
}
.product-hero .lead{
  min-width:0;
  max-width:none;
}
.product-hero form.ask{
  align-self:start;
}
@media (max-width:860px){
  .wrap.page:has(> .product-hero){
    display:grid;
    grid-template-columns:1fr;
  }
  .product-hero{
    display:contents;
  }
  .product-hero .gallery{
    max-width:22rem;
  }
  .wrap.page:has(> .product-hero) .blocks{
    order:2;
  }
  .wrap.page:has(> .product-hero) form.ask{
    order:3;
    margin:20px 0 8px;
    max-width:22rem;
  }
  .wrap.page:has(> .product-hero) .also{
    order:4;
    display:block;
    max-width:22rem;
    margin:16px 0 24px;
  }
}

.product-hero .lead h2{
  margin:12px 0 6px;
  font-size:1rem;
  color:var(--navy);
}

body.archive{
  background:#e6eaee;
}
body.archive .wrap.page,
body.archive main .page{
  background:transparent;
}


details.learn-more{margin:8px 0 8px;padding-top:4px}
@media (min-width:861px){
  details.learn-more{
    display:contents;
    margin:0;
    padding:0;
  }
  details.learn-more > summary{
    display:none;
  }
}
details.learn-more > summary{
  cursor:pointer;
  color:var(--navy);
  font-weight:600;
  font-size:1rem;
  list-style:none;
  padding:10px 0;
  display:inline-flex;
  align-items:center;
  gap:10px;
}
@media (max-width:860px){
  details.learn-more > summary{
    display:flex;
    width:auto;
    box-sizing:border-box;
    margin:4px 0 8px;
    padding:12px 14px;
    min-height:44px;
    background:transparent;
    border:1px solid var(--line);
    border-radius:8px;
    justify-content:space-between;
    font-size:1.02rem;
  }
  details.learn-more[open] > summary{
    margin-bottom:12px;
  }
}
details.learn-more > summary::-webkit-details-marker{display:none}
details.learn-more > summary::after{
  content:"";
  width:.42em;height:.42em;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  margin-top:-.12em;
}
details.learn-more[open] > summary::after{
  transform:rotate(225deg);
  margin-top:.18em;
}


.block.cols-1{display:block}
.block.cols-1-2{display:grid;grid-template-columns:minmax(160px,200px) minmax(0,1fr);gap:24px 32px;align-items:start}
.block.cols-2-1{display:grid;grid-template-columns:minmax(0,1fr) minmax(200px,280px);gap:24px 28px;align-items:start}


.block.cols-1-1{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.block.cols-1-1-1{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px;align-items:start}
.block-col h2{margin:0 0 8px;font-size:1rem;color:var(--navy)}
.block-col img,.block-col video{width:100%;height:auto;display:block}
@media (max-width:860px){
  .block.cols-1-2,.block.cols-2-1,.block.cols-1-1,.block.cols-1-1-1{grid-template-columns:1fr}
}


.video-frame{position:relative;display:block}
.video-label{
  position:absolute;
  left:12px;
  bottom:12px;
  z-index:2;
  background:#004985;
  color:#fff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:5px 9px;
  pointer-events:none;
}
.video-frame.is-playing .video-label{display:none}

.block-title{margin:0 0 10px;font-size:1.05rem;color:var(--navy)}

.blocks ul,.blocks ol,.lead ul,.lead ol{margin:0 0 14px;padding-left:1.2em}
.blocks em,.lead em,em{font-style:italic}
.blocks u,.lead u,u{text-decoration:underline}

.lead p.align-center,.blocks p.align-center,p.align-center{text-align:center}
.lead p.align-right,.blocks p.align-right,p.align-right{text-align:right}
.lead p.align-left,.blocks p.align-left,p.align-left{text-align:left}

.block.tone-navy{border-left:4px solid #004985;background:#f4f8fb}
.block.tone-steel{border-left:4px solid #38709E;background:#f5f9fc}
.block.tone-ink{border-left:4px solid #1c2a36;background:#f5f6f7}
.block.tone-muted{border-left:4px solid #5a6b78;background:#f6f7f8}
.block.tone-alert{border-left:4px solid #c1121f;background:#fdf6f6}
.block.tone-cream{border-left:4px solid #9bb4c6;background:#F4F6F8}
.block.tone-line{border-left:4px solid #d3e0ea;background:#f7fafc}
.block.tone-white{border-left:4px solid #c5d0d8;background:#fff}


/* Two-cabinet cards on OneCash Prime — equal height */
.block.cabinets{
  background:transparent;
  gap:16px;
  align-items:stretch;
}
.block.cabinets > .block-col{
  background:transparent;
  padding:20px 22px 18px;
  border-radius:8px;
  height:100%;
}


/* Trial: gallery then text left; form right across both rows */
.product-hero.hero-2{
  grid-template-columns:minmax(0,1fr) minmax(220px,18rem);
  grid-template-rows:auto auto;
  align-items:start;
  gap:16px 28px;
}
.product-hero.hero-2 .hero-main{
  display:contents;
}
.product-hero.hero-2 .gallery{
  grid-column:1;
  grid-row:1;
  max-width:24rem;
  margin-left:0;
}
.product-hero.hero-2 .lead{
  grid-column:1;
  grid-row:2;
  max-width:100%;
  width:auto;
  border-left:3px solid var(--navy);
  padding:2px 0 2px 14px;
  margin:0;
  font-size:1.12rem;
  line-height:1.5;
  color:var(--navy);
  font-weight:500;
}
.product-hero.hero-2 form.ask{
  grid-column:2;
  grid-row:1 / span 2;
  align-self:start;
  max-width:18rem;
  margin:0;
}
@media (min-width:861px){
  .product-hero.hero-2{
    margin-bottom:64px;
  }
  .product-hero.hero-2 .lead{
    font-size:18px;
    line-height:1.5;
  }
  .wrap.page:has(> .product-hero.hero-2) .blocks{
    gap:56px;
    margin-top:0;
  }
  .wrap.page:has(> .product-hero.hero-2) .block{
    padding-top:12px;
  }
  .wrap.page:has(> .product-hero.hero-2) .blocks > .block,
  .wrap.page:has(> .product-hero.hero-2) details.learn-more > .block{
    margin-bottom:0;
  }
}
.product-hero.hero-2 .lead p{
  margin:0 0 .55em;
}
.product-hero.hero-2 .lead p:last-child{
  margin:0;
}
.product-hero.hero-2 .lead ul{
  display:none;
}
form.ask.compact{
  grid-template-columns:1fr;
  column-gap:10px;
  row-gap:7px;
  align-content:start;
  max-width:18rem;
}
form.ask.compact > strong,
form.ask.compact > .consent,
form.ask.compact > button{
  grid-column:1/-1;
}
form.ask.compact > input[type="hidden"],
form.ask.compact > .hp{
  display:none;
}
form.ask.compact .pair{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
form.ask.compact .pair.span2{grid-column:1/-1}
form.ask.compact input,
form.ask.compact select{padding:8px}
@media (max-width:860px){
  .wrap.page:has(> .product-hero.hero-2){
    display:flex;
    flex-direction:column;
  }
  .wrap.page:has(> .product-hero.hero-2) > h1{
    order:0;
  }
  .wrap.page:has(> .product-hero.hero-2) > .crumb{
    order:0;
  }
  .wrap.page:has(> .product-hero.hero-2) > .types{
    order:1;
    flex-wrap:nowrap;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
    gap:8px;
    margin:0 0 14px;
    padding:0 0 6px;
    scrollbar-width:thin;
  }
  .wrap.page:has(> .product-hero.hero-2) > .types a{
    flex:0 0 auto;
    white-space:nowrap;
  }
  .product-hero.hero-2{
    display:contents;
  }
  .product-hero.hero-2 .hero-main{
    display:contents;
  }
  .product-hero.hero-2 .gallery{
    order:2;
    width:100%;
    max-width:22rem;
    margin:0 auto 8px;
  }
  .product-hero.hero-2 .gallery img,
  .product-hero.hero-2 .gallery img:first-child,
  .product-hero.hero-2 .gallery img:first-child.wide{
    min-height:0;
    max-height:none;
    width:100%;
    height:auto;
    aspect-ratio:1;
  }
  .product-hero.hero-2 .lead{
    order:3;
    max-width:100%;
    width:auto;
    font-size:17px;
    line-height:1.5;
    margin:0 0 32px 10px;
    padding:2px 8px 2px 16px;
    border-left:4px solid var(--navy);
  }
  .wrap.page:has(> .product-hero.hero-2) .blocks{
    order:4;
    max-width:100%;
    margin:0 0 20px 10px;
    gap:44px;
  }
  .wrap.page:has(> .product-hero.hero-2) .blocks > .block,
  .wrap.page:has(> .product-hero.hero-2) details.learn-more > .block{
    margin-bottom:0;
  }
  .wrap.page:has(> .product-hero.hero-2) details.learn-more{
    margin-left:0;
    margin-top:16px;
  }
  .wrap.page:has(> .product-hero.hero-2) form.ask,
  .wrap.page:has(> .product-hero.hero-2) form.ask.compact{
    order:5;
    width:auto;
    max-width:none;
    margin:0 10px 16px 10px;
    grid-template-columns:1fr;
    box-sizing:border-box;
  }
  .wrap.page:has(> .product-hero.hero-2) .also{
    order:6;
    max-width:100%;
    margin-left:10px;
  }
}

/* Multi-image trial: thumbnails right of the main picture */
.product-hero.hero-2 .gallery:has(img:nth-child(2)){
  display:grid;
  grid-template-columns:minmax(0,1fr) 4.6rem;
  max-width:28rem;
  gap:8px;
  align-items:start;
}
.product-hero.hero-2 .gallery:has(img:nth-child(2)) img:first-child,
.product-hero.hero-2 .gallery:has(img:nth-child(2)) img:first-child.wide{
  grid-column:1;
  grid-row:1 / span 8;
  width:100%;
  aspect-ratio:1;
  min-height:0;
  max-height:none;
  height:auto;
}
.product-hero.hero-2 .gallery:has(img:nth-child(2)) img:not(:first-child){
  grid-column:2;
  width:100%;
  height:auto;
  aspect-ratio:1;
}
@media (max-width:860px){
  .product-hero.hero-2 .gallery:has(img:nth-child(2)){
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-width:22rem;
  }
  .product-hero.hero-2 .gallery:has(img:nth-child(2)) img:first-child,
  .product-hero.hero-2 .gallery:has(img:nth-child(2)) img:first-child.wide{
    grid-column:1/-1;
    grid-row:auto;
  }
  .product-hero.hero-2 .gallery:has(img:nth-child(2)) img:not(:first-child){
    grid-column:auto;
  }
}


.home-news{margin:40px 0 8px;max-width:40rem}
.home-news h2{margin:0 0 10px}
.home-news ul{list-style:none;margin:0;padding:0}
.home-news li{
  display:flex;gap:14px;align-items:baseline;
  padding:10px 0;border-top:1px solid var(--line);
}
.home-news li:last-child{border-bottom:1px solid var(--line)}
.home-news time{color:var(--muted);font-size:13px;flex:0 0 7.2rem}
.home-news a{color:var(--navy);text-decoration:none}
.home-news a:hover{text-decoration:underline}
.home-news .more{margin:12px 0 0;font-size:14px}
.home-news .more a{font-weight:600}


@media (min-width:861px){
  details.learn-more{
    display:contents !important;
    margin:0 !important;
    padding:0 !important;
  }
  details.learn-more > summary{
    display:none !important;
  }
}


.hero.hero-coins{
  position:relative;
  overflow:hidden;
  background:#004985;
}
/* Coin photo and blue gradient as layers, so the photo can drift slowly once (2026-10-24) */
.hero.hero-coins::before,
.hero.hero-coins::after{content:"";position:absolute;inset:0;pointer-events:none}
.hero.hero-coins::before{
  background:#004985 url("/assets/hero-coins.webp?v=1") right center / cover no-repeat;
  transform-origin:70% 50%;
  animation:hero-drift 30s cubic-bezier(.25,.1,.25,1) forwards;
}
.hero.hero-coins::after{
  background:linear-gradient(100deg, rgba(0,73,133,.94) 0%, rgba(0,73,133,.82) 38%, rgba(0,73,133,.55) 70%, rgba(0,73,133,.38) 100%);
}
.hero.hero-coins .wrap{position:relative;z-index:1}
.hero.hero-coins .actions{animation:hero-rise .5s .2s ease-out both}
@keyframes hero-drift{
  from{transform:scale(1) translate3d(0,0,0)}
  to{transform:scale(1.06) translate3d(-1.5%,0,0)}
}
@keyframes hero-rise{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:none}
}
@media (max-width:860px){
  .hero.hero-coins::before{background-position:center 40%}
  .hero.hero-coins::after{
    background:linear-gradient(180deg, rgba(0,73,133,.92) 0%, rgba(0,73,133,.78) 70%, rgba(0,73,133,.62) 100%);
  }
}
@media (prefers-reduced-motion:reduce){
  .hero.hero-coins::before,
  .hero.hero-coins .actions{animation:none}
}

.block.cols-1-2 > .kind-image,
.block.cols-2-1 > .kind-image,
.block.has-image > .kind-image{
  align-self:start;
  margin-top:0;
  padding-top:0;
}
.block.cols-1-2 > .kind-text > :first-child,
.block.cols-2-1 > .kind-text > :first-child,
.block.has-image > .kind-text > :first-child,
.block.has-image > .block-title{
  margin-top:0;
}
.block.cols-1-2 > .kind-image img,
.block.cols-2-1 > .kind-image img,
.block.has-image > .kind-image img{
  padding-top:10px;
}
.block.has-image > .block-title{
  grid-column:1 / -1;
}

/* Image top aligns with first text row, not the headline */
.block.cols-1-2.has-image,
.block.cols-2-1.has-image,
.block.cols-1-2,
.block.cols-2-1{
  align-items:start;
}
.block.cols-2-1 > .kind-image,
.block.cols-1-2 > .kind-image,
.block.has-image > .kind-image{
  padding-top:calc(1.15rem * 1.3 + 16px);
}
.block.has-image:has(> .block-title) > .kind-image{
  padding-top:0;
}
.block.has-image > .block-title{
  grid-column:1 / -1;
  margin-bottom:8px;
}
@media (max-width:860px){
  .block.cols-2-1 > .kind-image,
  .block.cols-1-2 > .kind-image,
  .block.has-image > .kind-image{
    padding-top:0;
  }
}


.card .pic.draw{
  aspect-ratio:16/10;
  max-height:none;
  padding:0;
  background:transparent;
  overflow:hidden;
}
.card .pic.draw img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hero.hero-building{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(100deg, rgba(0,73,133,.94) 0%, rgba(0,73,133,.78) 46%, rgba(0,73,133,.42) 100%),
    #004985 url("/assets/company-building.webp?v=25") right center / cover no-repeat;
}
.hero.hero-building .wrap{position:relative;z-index:1}
.hero .facts{
  display:flex;flex-wrap:wrap;gap:8px 18px;
  list-style:none;margin:18px 0 0;padding:0;
  color:#d3e0ea;font-size:14px;
}
.hero .facts li{margin:0}
.contact-photo{max-width:22rem;margin:0 0 16px}
.contact-photo img{width:100%;height:auto;display:block;border-radius:6px}
@media (max-width:860px){
  .hero.hero-building{
    background:
      linear-gradient(180deg, rgba(0,73,133,.92) 0%, rgba(0,73,133,.72) 100%),
      #004985 url("/assets/company-building.webp?v=25") center 40% / cover no-repeat;
    /* phones: the 800 px copy on normal screens, the original on sharp ones */
    background-image:
      linear-gradient(180deg, rgba(0,73,133,.92) 0%, rgba(0,73,133,.72) 100%),
      image-set(url("/assets/company-building-800w.webp?v=1") 1x, url("/assets/company-building.webp?v=25") 2x);
  }
}

.world-cover{margin:12px 0 16px;max-width:52rem}
.world-cover img{display:block;width:100%;height:auto;border-radius:6px;background:#004985}

.service-split{
  display:grid;
  grid-template-columns:minmax(240px,340px) minmax(260px,1fr) minmax(300px,400px);
  gap:24px 28px;
  align-items:start;
  margin:16px 0 20px;
  justify-content:start;
}
.service-split .de-map{
  width:100%;
  max-width:460px;
  height:auto;
  margin:0;
}
.service-ask,
.service-dist{
  display:flex;
  flex-direction:column;
  min-width:0;
}
.service-ask h2,
.service-dist h2{margin-top:0}
.service-ask form.ask,
.service-dist form.ask{
  flex:1;
  max-width:none;
  width:100%;
  box-sizing:border-box;
}
@media (max-width:980px){
  .service-split{grid-template-columns:minmax(220px,1fr) minmax(200px,260px)}
  .service-dist{grid-column:1 / -1;max-width:none;width:100%}
}
@media (max-width:860px){
  .service-split{grid-template-columns:1fr}
  .service-split .de-map{max-width:320px;height:auto}
  .service-ask form.ask,
  .service-dist form.ask,
  .service-side,
  .service-ask,
  .service-dist{max-width:none;width:100%}
}

object.world-cover,
#worldmap{
  display:block;
  width:100%;
  max-width:52rem;
  height:auto;
  min-height:280px;
  aspect-ratio:1010/666;
  border:0;
  background:transparent;
  border-radius:6px;
}
object.de-map,
#kreisemap{
  display:block;
  width:100%;
  max-width:380px;
  min-height:420px;
  aspect-ratio:400/560;
  border:0;
  background:transparent;
}

form.ask-wide input[type=hidden]{display:none}
form.ask-wide{
  grid-template-columns:1fr;
  gap:8px;
}
form.ask-wide .hp{display:none}
form.ask-wide label{grid-column:auto}
form.ask-wide input,
form.ask-wide textarea{width:100%}
form.ask-wide .consent,
form.ask-wide button,
form.ask-wide textarea,
form.ask-wide label[for="svc-msg"]{
  grid-column:1 / -1;
}
form.ask-wide textarea{min-height:4.2rem;max-height:7rem}
form.ask-wide select{width:100%}
.service-ask.service-request{max-width:41rem;margin:32px 0 0}
.service-dist{max-width:41rem;margin:0 0 24px;width:100%}
object.de-map,
#kreisemap{
  max-width:460px;
  min-height:500px;
}
@media (max-width:860px){
  form.ask-wide{grid-template-columns:1fr}
}

.service-side{display:flex;flex-direction:column;gap:18px;min-width:0}
.service-side .service-ask,
.service-side .service-dist{margin:0;max-width:none;width:100%}
.service-map h2{margin:0 0 12px}
.service-map .hotline{margin:0 0 16px}
.hotline-btn{display:inline-flex;align-items:center;min-height:44px;padding:10px 18px;background:var(--navy);color:#fff;font-family:Poppins,"Segoe UI","Helvetica Neue",Arial,sans-serif;font-weight:600;font-size:18px;text-decoration:none;border-radius:6px;white-space:nowrap}
.hotline-btn:hover,.hotline-btn:focus-visible{background:var(--steel);color:#fff}
.service-map svg.de-kreise{width:100%;height:auto;max-width:480px;display:block}
.service-map object.de-kreise{width:100%;height:auto;max-width:480px;aspect-ratio:400/560;display:block;border:0}
.map-tip{
  position:fixed;z-index:40;pointer-events:none;
  background:#004985;color:#fff;font-size:12px;line-height:1.2;
  padding:4px 8px;border-radius:4px;white-space:nowrap;
  transform:translate(10px,14px);
}
@media (max-width:860px){
  .service-split{grid-template-columns:1fr}
}

.service-copy{
  display:flex;
  flex-direction:column;
  gap:16px;
  min-width:0;
}
.service-copy h2{margin:0 0 6px;font-size:1.05rem}
.service-copy p{margin:0;font-size:15px;color:var(--ink)}
@media (max-width:1100px){
  .service-split{grid-template-columns:minmax(240px,340px) minmax(280px,1fr)}
  .service-side{grid-column:1 / -1}
}
@media (max-width:860px){
  .service-split{grid-template-columns:1fr}
  .service-copy{grid-template-columns:1fr}
}

@media (max-width:860px){
  .page,
  .home-news,
  .news-item,
  main.news .wrap,
  .wrap.news{
    padding-left:calc(var(--gutter) + 10px);
    padding-right:calc(var(--gutter) + 10px);
  }
}

@media (max-width:860px){
  .service-side,
  .service-ask,
  .service-dist,
  .service-ask form.ask,
  .service-dist form.ask,
  form.ask-wide{
    max-width:none !important;
    width:100%;
  }
}

.years{display:flex;flex-wrap:wrap;gap:8px 22px;list-style:none;margin:16px 0 0;padding:0}
.years li{font-size:14px;color:#e8f1f7}
.years b{display:block;font-size:18px;color:#fff}
.work3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:8px 0 8px}
.work3 h3{margin:0 0 6px;font-size:1.05rem}
.work3 p{margin:0;color:#334}
.industries{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 0}
.industries a{display:inline-block;padding:8px 12px;border:1px solid var(--line,#c5d4e0);border-radius:999px;text-decoration:none;color:var(--navy,#004985);font-weight:650;font-size:14px;background:#fff}
.industries a:hover{background:#F4F6F8}
@media (max-width:860px){
  .work3{grid-template-columns:1fr}
}

.certifications{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:16px 0 28px;align-items:stretch}
.certifications .block-col{display:flex}
.certifications article{background:#fff;border:1px solid var(--line,#d5e0ea);border-radius:8px;padding:16px 16px 12px;display:flex;flex-direction:column;width:100%;height:100%;box-sizing:border-box}
.certifications img{display:block;max-width:100%;height:80px;width:auto;object-fit:contain;margin:0 auto 10px}
.certifications h3{margin:0 0 8px;font-size:16px;text-align:center}
.certifications p{margin:0;font-size:14px;line-height:1.45}
@media (max-width:860px){.certifications{grid-template-columns:1fr}}
.de-kreise path.on{fill:#d5dde3 !important}
.de-kreise .svc-dot{fill:#c0392b;stroke:#fff;stroke-width:1}

.card.side{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:4px 10px}
.card.side .pic.icon{max-height:none;height:96px;aspect-ratio:auto;padding:10px;background:transparent}
.card.side .pic.icon img{width:auto;height:auto;max-width:84px;max-height:76px;object-fit:contain}
.card.side .cap{padding:12px 14px 12px 0}

/* Block titles: size and colour taken from the dropped type 2 layout */
.wrap.page:has(.product-hero) .block h2,
.wrap.page:has(.product-hero) .block h3{
  color:#004985;
  font-size:26px;
  line-height:1.2;
  margin:0 0 10px;
  font-weight:600;
}

/* German service page: folded list of service regions */
details.regions{margin:4px 0 0;font-size:12px;color:var(--muted)}
details.regions summary{cursor:pointer;color:#b8c0c8;list-style:none}
details.regions summary::-webkit-details-marker{display:none}
details.regions p{margin:4px 0}
.service-regions{margin:32px 0 0}
/* Family cards on phones: text under the photo instead of on top of it */
@media (max-width:600px){
  .card.photo .cap{position:static;width:auto;display:block;padding:12px 14px 8px}
}

/* terms (AGB / GTC) */
.legal{max-width:80ch}
.legal h2{font-size:1.15rem;margin:28px 0 8px}
.legal p{margin:6px 0}

/* product page: video instead of photos at the top */
.product-hero .gallery .hero-video{grid-column:1/-1;margin:0;max-width:none}
.product-hero .gallery .hero-video video{width:100%;height:auto;max-height:28rem;object-fit:contain;border-radius:0;background:#0B2440}
.product-hero.hero-2:has(.hero-video){grid-template-rows:auto 1fr}
.product-hero.hero-2 .gallery:has(.hero-video){max-width:36rem}

/* reference stories */
.ref-box{margin:32px 0 8px}
.ref-box h2{margin:0 0 12px}
.ref-card .ref-customer{display:block;font-size:.85rem;color:var(--steel,#38709E);margin-bottom:2px}
.ref-logo img{height:40px;width:auto;max-width:100%;display:block;margin:4px 0 6px}
.page blockquote{margin:18px 0;padding:6px 0 6px 20px;border-left:4px solid var(--steel)}
.page blockquote p{font-size:18px;line-height:1.55;color:var(--navy);margin:0 0 8px}
.page blockquote p:last-child{font-size:14px;color:var(--muted);margin:0}
.ref-hero img{width:100%;max-width:56rem;height:auto;display:block;margin:8px 0 18px}
.ref-gallery{max-width:56rem}
.c-alert{color:#c1121f} /* CMS text colour "red": marks text still to confirm */
.ref-gallery img{aspect-ratio:4/3;object-fit:cover}
.card.photo.ref-card .cap{position:static;width:auto;display:block;padding:12px 14px 10px;background:none}
/* home: "References" row of three (empty slots get a staging-only placeholder), lower pictures */
.ref-home .ref-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.ref-grid>[hidden]{display:none}
.ref-home .card.photo .pic{aspect-ratio:2/1}
/* staging only: approval badge on story pictures (app/references.php ref_status_marks) */
.ref-card .pic,.ref-hero{position:relative}
.ref-status{position:absolute;top:10px;left:10px;z-index:1;padding:4px 10px;border-radius:4px;font-size:13px;font-weight:700;line-height:1.3;color:#fff}
.ref-status-approved{background:#2b8a3e}
.ref-status-pending{background:#c1121f}
@media (max-width:860px){.ref-home .ref-grid{grid-template-columns:1fr}}

/* product cards (added at render, app/cards.php): light card, label, three-line text, text link */
.grid:has(> .product-card){gap:28px}
.card.product-card{display:flex;flex-direction:column;background:#fff;border:0;border-radius:6px;transition:box-shadow .2s}
.card.product-card:hover,.card.product-card:focus-visible{box-shadow:0 6px 24px rgba(0,33,66,.12)}
.card.product-card .pic{background:#F4F6F8;border-radius:6px 6px 0 0}
.card.product-card .cap{flex:1;display:flex;flex-direction:column;padding:24px}
.card.product-card .cap .card-for{display:block;order:-1;font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted,#5b6b78);margin:0 0 6px}
.card.product-card .cap b{font-size:19px;font-weight:600;line-height:1.3}
.card.product-card .card-desc{margin-top:8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden}
.card.product-card .card-desc .pos{display:inline;margin:0;font-size:15px;line-height:1.6}
.card.product-card .card-desc .pos + .pos::before{content:" "}
.card.product-card .cap .card-gap{flex:1;min-height:16px}
.card.product-card .cap .card-btn{align-self:flex-start;color:var(--navy);font-size:15px;font-weight:600}
.card.product-card .card-btn span{display:inline-block;transition:transform .2s}
.card.product-card:hover .card-btn span,.card.product-card:focus-visible .card-btn span{transform:translateX(4px)}
@media (max-width:700px){.grid:has(> .product-card){gap:18px}.card.product-card .cap{padding:18px}}

/* tall product photos (e.g. TBM-M1 AIR, EvoSort H9) stay inside the card picture */
.card:not(.photo) .pic{overflow:hidden}
.card:not(.photo) .pic img{width:auto;max-width:100%;max-height:204px}
/* product cards: photo area as wide as the card, same landscape frame everywhere */
.card.product-card .pic{align-self:stretch;width:100%;aspect-ratio:4/3;max-height:none;height:auto;padding:20px;box-sizing:border-box}
.card.product-card .pic img{width:100%;height:100%;max-width:100%;max-height:none;object-fit:contain}

/* product page photos like the cards: light grey area, no border, same frame */
.product-hero .gallery img,
.product-hero.hero-2 .gallery img,
.product-hero.hero-2 .gallery:has(img:nth-child(2)) img:not(:first-child){
  background:#F4F6F8;border:0;border-radius:6px;padding:6px;box-sizing:border-box;object-fit:contain;
}
.product-hero .gallery img:first-child,
.product-hero .gallery img:first-child.wide,
.product-hero.hero-2 .gallery img:first-child,
.product-hero.hero-2 .gallery:has(img:nth-child(2)) img:first-child,
.product-hero.hero-2 .gallery:has(img:nth-child(2)) img:first-child.wide{
  aspect-ratio:1;width:100%;height:auto;min-height:0;max-height:28rem;padding:8px;
}

/* overview pages: light band with breadcrumb, title and intro (app/render.php overview_band) */
.page-band{background:#F4F6F8;padding:52px 0 44px}
.page-band .crumb{margin:0 0 10px}
.page-band h1{margin:0 0 12px}
.page-band .lead,.page-band h1 + p{margin:0;max-width:62rem}
.page-band + .wrap.page{padding-top:20px}
@media (max-width:700px){.page-band{padding:30px 0 28px}}

/* body text in Inter; titles, menu, buttons, product names stay Poppins */
h1,h2,h3,header.head,.head nav,button,.btn,.card .cap b,.types,summary,.crumb{font-family:Poppins,"Segoe UI","Helvetica Neue",Arial,sans-serif}

/* footer: columns on desktop, stacked on mobile */
footer.site{padding:44px 0 0;font-size:14px;line-height:1.6}
footer.site .foot-cols{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:28px}
footer.site h2{color:#fff;font-size:15px;margin:0 0 12px;letter-spacing:.02em}
footer.site ul{list-style:none;margin:0;padding:0}
footer.site li{margin:0 0 6px}
footer.site p{margin:0 0 10px;color:#d3e0ea}
footer.site a{color:#d3e0ea;text-decoration:none}
footer.site a:hover,footer.site a:focus-visible{color:#fff;text-decoration:underline}
footer.site .foot-bottom{display:flex;flex-wrap:wrap;gap:10px 24px;justify-content:space-between;border-top:1px solid rgba(255,255,255,.18);margin-top:32px;padding:16px var(--gutter) 22px;font-size:13px;color:#d3e0ea}
footer.site .foot-langs a{margin-left:10px}
footer.site .foot-langs a[aria-current]{color:#fff;font-weight:600}
@media (max-width:900px){footer.site .foot-cols{grid-template-columns:1fr 1fr}}
@media (max-width:560px){footer.site .foot-cols{grid-template-columns:1fr;gap:22px}footer.site .foot-bottom{flex-direction:column}footer.site .foot-langs a{margin:0 12px 0 0}}

/* one card style everywhere (home tiles, families, solutions, applications, stories) */
.card{background:#fff;border:0;border-radius:6px;transition:box-shadow .2s;display:flex;flex-direction:column}
.card:hover,.card:focus-visible{box-shadow:0 6px 24px rgba(0,33,66,.12)}
.card .pic{background:#F4F6F8;border-radius:6px 6px 0 0;overflow:hidden}
.card .cap{padding:20px 24px 24px}
.card .cap b{font-size:18px;font-weight:600;line-height:1.3}
.card .cap span{display:block;margin-top:6px;font-size:15px;line-height:1.6;color:var(--ink)}
.card.photo .cap,.card.photo.full .cap{position:static;width:auto;display:block;padding:20px 24px 24px;background:none}
.card.side{display:grid;grid-template-columns:104px minmax(0,1fr);align-items:stretch}
.card.side .pic.icon{background:#F4F6F8;border-radius:6px 0 0 6px;height:auto;min-height:96px;display:flex;align-items:center;justify-content:center}
.card.side .cap{padding:16px 20px}
.grid:has(> .card){gap:28px}
@media (max-width:700px){.grid:has(> .card){gap:18px}.card .cap,.card.photo .cap{padding:16px 18px 18px}}

/* drop-down lists under main menu items (languages in NAV_SUB_LANGS, app/render.php; assets/menu.js) */
header.head .main-nav .nav-item{position:relative;display:inline-flex;align-items:center;gap:2px;padding:4px 0}
header.head .sub-toggle{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;color:#d3e0ea;padding:4px;margin:0;cursor:pointer;border-radius:4px}
header.head .sub-toggle:hover,header.head .sub-toggle:focus-visible{color:#fff;background:rgba(255,255,255,.12)}
header.head .sub-toggle svg{transition:transform .15s}
header.head .sub-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
header.head .nav-sub{display:none;position:absolute;left:-14px;top:100%;z-index:40;min-width:15rem;padding:6px 0;background:#004985;border-radius:0 0 6px 6px;box-shadow:0 8px 24px rgba(0,0,0,.25)}
[dir="rtl"] header.head .nav-sub{left:auto;right:-14px}
header.head .nav-item:hover > .nav-sub,header.head .nav-item:focus-within > .nav-sub,header.head .nav-item.open > .nav-sub{display:block}
header.head .nav-item.shut > .nav-sub{display:none}
header.head .head-row > nav.main-nav .nav-sub a{display:block;padding:8px 16px;font-size:13px;white-space:nowrap;color:#fff}
header.head .head-row > nav.main-nav .nav-sub a:hover,header.head .head-row > nav.main-nav .nav-sub a:focus-visible{background:rgba(255,255,255,.12)}
header.head .head-row > nav.main-nav .nav-sub a[aria-current="page"]{color:#f4b08f}
.site-menu .menu-item{display:flex;flex-wrap:wrap;align-items:center;width:100%;border-bottom:1px solid rgba(255,255,255,.15)}
.site-menu nav .menu-item > a{flex:1 1 auto;min-width:0;border-bottom:0}
.site-menu .menu-item .sub-toggle{-webkit-appearance:none;appearance:none;flex:0 0 48px;width:48px;min-height:48px;align-self:stretch;margin:0;padding:0;color:#fff;border:0;border-radius:0;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent}
header.head .site-menu .menu-item .sub-toggle:hover{background:transparent}
header.head .site-menu .menu-item .sub-toggle:focus-visible{background:transparent;outline:2px solid #fff;outline-offset:-6px}
.site-menu .menu-item .sub-toggle svg{width:18px;height:18px;transition:transform .15s}
.site-menu .menu-item .sub-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.site-menu .menu-sub{flex:0 0 100%;padding:0 0 10px;padding-inline-start:14px}
.site-menu .menu-sub[hidden]{display:none}
.site-menu nav .menu-sub a{display:block;font-size:17px;font-weight:400;padding:9px 0;border-bottom:0;color:#d3e0ea}

/* mobile menu: ☰ opens an overlay with the main links, languages and Portal */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.menu-toggle,.site-menu{display:none}
@media (max-width:900px){
  header.head .head-row{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"brand . toggle";min-height:64px}
  header.head .head-row > nav[aria-label],header.head .head-row .tools{display:none}
  .menu-toggle{display:inline-flex;grid-area:toggle;align-items:center;justify-content:center;min-width:48px;min-height:48px;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:6px;color:#fff;font-size:22px;cursor:pointer}
  .site-menu:not([hidden]){display:block;position:fixed;inset:0;z-index:100;background:var(--navy);color:#fff;padding:72px 24px 32px;overflow:auto}
  .site-menu .menu-close{position:absolute;top:12px;right:16px;min-width:48px;min-height:48px;background:transparent;border:1px solid rgba(255,255,255,.35);border-radius:6px;color:#fff;font-size:20px;cursor:pointer}
  .site-menu nav{display:flex;flex-direction:column}
  .site-menu nav a{color:#fff;text-decoration:none;font-family:Poppins,"Segoe UI",Arial,sans-serif;font-size:22px;font-weight:600;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.15)}
  .site-menu nav a[aria-current="page"]{color:#f4b08f}
  .site-menu .menu-langs{display:flex;gap:18px;margin:28px 0 20px}
  .site-menu .menu-langs a{color:#d3e0ea;text-decoration:none;font-size:16px;min-height:44px;display:inline-flex;align-items:center}
  .site-menu .menu-langs a[aria-current]{color:#fff;font-weight:600}
  html.menu-open{overflow:hidden}
}

/* product pages: band with tagline, key facts next to the photo (app/design.php) */
.page-band .tagline{margin:0;font-size:18px;line-height:1.5;color:var(--steel)}
.key-facts{background:#F4F6F8;border-radius:6px;padding:18px 20px;align-self:start}
.key-facts h2{font-size:15px;margin:0 0 10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.key-facts table{border-collapse:collapse;width:100%}
/* each fact as label over value, in as many columns as fit (two in the hero box, one on phones) */
.key-facts table,.key-facts tbody{display:block}
.key-facts tbody{display:grid;grid-template-columns:repeat(auto-fill,minmax(8.5rem,1fr));column-gap:16px}
.key-facts tr{display:block;padding:9px 0;border-top:1px solid #dfe5ea}
.key-facts th,.key-facts td{display:block;padding:0;border:0}
.key-facts th{text-align:start;font-weight:600;color:var(--navy);font-family:Poppins,"Segoe UI",Arial,sans-serif;font-size:12px;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}
.key-facts td{font-size:14px;line-height:1.4}
@media (min-width:861px){
  .product-hero.hero-2:has(.key-facts){grid-template-columns:minmax(0,24rem) minmax(0,1fr) minmax(220px,18rem)}
  .product-hero.hero-2:has(.key-facts) .key-facts{grid-column:2;grid-row:1}
  .product-hero.hero-2:has(.key-facts) .lead{grid-column:1 / span 2}
  .product-hero.hero-2:has(.key-facts) form.ask{grid-column:3}
}
@media (max-width:860px){
  .product-hero.hero-2 .key-facts{order:2;margin:0 0 12px}
  .wrap.page:has(> .product-hero.hero-2) form.ask,
  .wrap.page:has(> .product-hero.hero-2) form.ask.compact{order:4}
  .wrap.page:has(> .product-hero.hero-2) .blocks{order:5}
  .wrap.page:has(> .product-hero.hero-2) .ref-box{order:6}
  .wrap.page:has(> .product-hero.hero-2) .also{order:7}
}

/* design round 3 ------------------------------------------------------------ */
/* one left edge for header, band, pills, grids, text and footer */
:root{--edge:var(--gutter)}
@media (max-width:860px){:root{--edge:calc(var(--gutter) + 10px)}}
.wrap.page{padding-left:var(--edge);padding-right:var(--edge)}
.page-band + .wrap.page{padding-top:20px}
/* text pages (imprint, privacy, terms, news): one readable column on the common left edge */
body.text-page .wrap.page{max-width:calc(760px + 2 * var(--edge));margin-left:max(0px, calc((100% - var(--max)) / 2))}
/* company: text sections in the readable width, tiles and grids full width */
.wrap.page .block.cols-1 > .block-col.kind-text{max-width:760px}
/* small fixes */
.types a.temp{color:var(--navy)}
.types a.temp[aria-current="page"]{color:#fff}
button,.btn,a.portal,input,select,textarea,form.ask{border-radius:6px}
.product-hero.hero-2 .lead{border-left:0;padding:0;color:var(--ink);font-size:1.15rem;font-weight:400;line-height:1.6}
@media (max-width:860px){.product-hero.hero-2 .lead{border-left:0;padding:0}}
.certifications article{background:#F4F6F8;border:0;border-radius:6px;padding:20px 22px}
.certifications img{display:none}
.certifications h3{text-align:left;font-size:17px;margin:0 0 8px}
header.head .head-row,footer.site .wrap{padding-left:var(--edge);padding-right:var(--edge)}
footer.site .foot-top{padding-bottom:24px;margin-bottom:28px;border-bottom:1px solid rgba(255,255,255,.18)}footer.site .foot-logo{display:inline-block}footer.site .foot-logo img{height:40px;width:auto}
/* family banners: always the whole picture (no cropping), same frame as the image */
.card.photo.cut .pic,.card.photo.cut.full .pic{aspect-ratio:5/3}
.card.photo.cut .pic img{object-fit:contain;object-position:center}
/* the logo file has a little empty space on its left: line the drawn logo up with the text edge */
footer.site .foot-logo img,header.head img.logo{margin-left:-8px}
/* the header logo sits in a box with overflow:hidden, so pull it in by a little less than the empty space
   (about 20% of the logo height: 8px at 40px, 6.8px at 34px), otherwise the edge of the shield is cut off */
header.head img.logo{margin-left:-7px}
@media (max-width:860px){header.head img.logo{margin-left:-6px}}
/* archive pages: band a shade darker on the grey archive background */
body.archive .page-band{background:#d9e0e6}
.page-band .band-note{margin:0 0 6px;font-size:13px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
/* archive pages: status (production, service, replacement) next to the photo */
@media (min-width:861px){
  body.archive .product-hero.hero-2:not(:has(.key-facts)){grid-template-columns:minmax(0,24rem) minmax(0,1fr) minmax(220px,18rem)}
  body.archive .product-hero.hero-2:not(:has(.key-facts)) .lead{grid-column:2;grid-row:1;align-self:start}
  body.archive .product-hero.hero-2:not(:has(.key-facts)) form.ask{grid-column:3;grid-row:1}
}
body.archive .product-hero .lead{font-size:15.5px}

/* company page structure (CMS blocks): framed intro, three cards, framed history */
.block > .block-title{grid-column:1 / -1}
.block.tone-cream,.block.tone-navy,.block.tone-steel{padding:24px 28px;border-radius:0 6px 6px 0}
.block.cols-1-1-1 > .block-col.kind-text{background:#F4F6F8;border-top:3px solid var(--navy);border-radius:0 0 6px 6px;padding:20px 22px;height:100%}
.block.cols-1-1-1 > .block-col.kind-text h3{margin:0 0 8px;font-size:17px}
.block.cols-1-1-1 > .block-col.kind-text p{margin:0}
.block.tone-cream .industries{margin-top:4px}
.wrap.page .block.cols-1-1 > .block-col.kind-text{max-width:none}
.block.tone-cream .kind-html h2{margin-top:0;font-size:1.05rem}

/* ---- Languages: list of all languages under the globe ---- */
header.head .lang-more[open] .lang-more-list{display:grid;grid-template-columns:repeat(2,minmax(9.5rem,1fr));max-height:calc(100vh - 96px);overflow:auto}
header.head .lang-more-list a{display:flex;gap:10px;align-items:baseline;min-height:0;padding:8px 14px;font-size:14px;color:#d3e0ea;white-space:nowrap}
header.head .lang-more-list a:hover,header.head .lang-more-list a:focus-visible{background:rgba(255,255,255,.12);color:#fff}
header.head .lang-more-list .lang-code{min-width:1.8em;font-size:12px;opacity:.75}
.site-menu .menu-langs{flex-wrap:wrap;align-items:center;gap:4px 18px}
.site-menu .menu-lang-more{flex-basis:100%}
.site-menu .menu-lang-more summary{list-style:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;color:#d3e0ea;font-size:16px;cursor:pointer}
.site-menu .menu-lang-more summary::-webkit-details-marker{display:none}
.site-menu .menu-lang-more[open] summary{color:#fff}
.site-menu .menu-lang-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin-top:4px}
.site-menu .menu-lang-list a{display:flex;gap:10px;align-items:center;min-height:44px;font-size:15px}
.site-menu .menu-lang-list .lang-code{min-width:1.8em;font-size:12px;opacity:.75}
footer.site .foot-langs{display:flex;flex-wrap:wrap;gap:4px 0}

/* ---- Right-to-left languages (Arabic) ---- */
html[lang="ar"] body,html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3,html[lang="ar"] header.head,html[lang="ar"] .head nav,html[lang="ar"] button,html[lang="ar"] .btn,html[lang="ar"] .card .cap b,html[lang="ar"] summary,html[lang="ar"] .crumb,html[lang="ar"] .site-menu nav a{font-family:"Segoe UI",Tahoma,"Geeza Pro","Noto Sans Arabic","Noto Naskh Arabic",Arial,sans-serif;letter-spacing:0}
[dir="rtl"] .skip,[dir="rtl"] .hp{left:auto;right:-9999px}
[dir="rtl"] .skip:focus{right:8px}
[dir="rtl"] header.head .lang-more-list{right:auto;left:0}
@media (max-width:720px){[dir="rtl"] header.head .lang-more-list{right:auto;left:12px}}
[dir="rtl"] footer.site .foot-logo img,[dir="rtl"] header.head img.logo{margin-left:0;margin-right:-8px}
[dir="rtl"] header.head img.logo{margin-right:-7px}
@media (max-width:860px){[dir="rtl"] header.head img.logo{margin-right:-6px}}
[dir="rtl"] footer.site .foot-langs a{margin-left:0;margin-right:10px}
[dir="rtl"] .site-menu .menu-close{right:auto;left:16px}
[dir="rtl"] .card.photo .cap{left:auto;right:0}
[dir="rtl"] .card-btn span{display:inline-block;transform:scaleX(-1)}
[dir="rtl"] .card.product-card:hover .card-btn span,[dir="rtl"] .card.product-card:focus-visible .card-btn span{transform:scaleX(-1) translateX(4px)}
[dir="rtl"] .copy ul,[dir="rtl"] .copy.old ul,[dir="rtl"] .blocks ul,[dir="rtl"] .blocks ol,[dir="rtl"] .lead ul,[dir="rtl"] .lead ol,[dir="rtl"] .product-hero .lead ul{padding-left:0;padding-right:1.2em}
[dir="rtl"] .also a,[dir="rtl"] .vid-lang a{margin-right:0;margin-left:.6em}
[dir="rtl"] .news-list li{padding-right:0;padding-left:32px}
[dir="rtl"] .news-list li::before{content:"\2039";right:auto;left:6px}
[dir="rtl"] .news-list li:hover::before{transform:translate(-3px,-50%)}
[dir="rtl"] .certifications h3{text-align:right}
@media (max-width:560px){[dir="rtl"] footer.site .foot-langs a{margin:0 0 0 12px}}

/* request form not sent: what the visitor entered (public/request.php) */
.form-copy{margin:8px 0 24px}
.form-copy dt{font-weight:600;margin-top:8px}
.form-copy dd{margin:0;overflow-wrap:anywhere}

/* language suggestion bar (assets/ui.js): another language of the site fits the visitor's browser */
.lang-bar{background:var(--navy);color:#fff;font-size:14px}
.lang-bar .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding-top:9px;padding-bottom:9px}
.lang-bar span{flex:1 1 220px}
.lang-bar-go{background:#fff;color:var(--navy);font-weight:600;padding:6px 14px;text-decoration:none;border-radius:3px}
.lang-bar-go:hover,.lang-bar-go:focus-visible{background:var(--cream)}
.lang-bar-no{background:none;border:1px solid rgba(255,255,255,.6);color:#fff;font:inherit;padding:5px 12px;border-radius:3px;cursor:pointer}
.lang-bar-no:hover,.lang-bar-no:focus-visible{border-color:#fff}

/* note line under the key facts (ECB type name, written in the content) */
.key-facts .kf-note{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:var(--muted)}
.key-facts .kf-note a{color:var(--navy)}
/* datasheet link under the key facts (app/datasheet.php) */
.key-facts .ds-link{margin:12px 0 0;font-size:14px}
.key-facts .ds-link a{font-weight:600;color:var(--navy)}
.key-facts .ds-link a::before{content:"";display:inline-block;width:11px;height:14px;margin-inline-end:7px;vertical-align:-2px;
  border:1.5px solid currentColor;border-radius:1px;background:linear-gradient(currentColor,currentColor) 2px 4px/5px 1.5px no-repeat,linear-gradient(currentColor,currentColor) 2px 7px/5px 1.5px no-repeat}

/* enquiry list (assets/ui.js): several machines in one enquiry */
form.ask .eq{display:grid;gap:6px;min-width:0}
form.ask .eq-add{justify-self:start;background:none;border:1px dashed var(--steel);color:var(--navy);font:600 13px Poppins,"Segoe UI",Arial,sans-serif;padding:6px 10px;border-radius:3px;cursor:pointer;width:auto}
form.ask .eq-add[aria-pressed="true"]{border-style:solid;background:#fff}
form.ask .eq-also{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px}
form.ask .eq-also[hidden]{display:none}
form.ask .eq-label{color:var(--muted);flex-basis:100%}
form.ask .eq-chip{display:inline-flex;align-items:center;background:#fff;border:1px solid var(--line);border-radius:3px;padding:2px 2px 2px 8px}
form.ask .eq-chip a{color:var(--ink);text-decoration:none}
form.ask .eq-chip button{background:none;border:0;color:var(--muted);font-size:16px;line-height:1;padding:2px 6px;cursor:pointer;width:auto;min-height:0}
form.ask .eq-chip button:hover{color:var(--coral-btn)}
.eq-pill{position:fixed;bottom:16px;inset-inline-end:16px;z-index:50;background:var(--coral-btn);color:#fff;font-weight:600;font-size:14px;padding:10px 16px;border-radius:24px;text-decoration:none;box-shadow:0 2px 10px rgba(0,0,0,.2)}
.eq-pill[hidden]{display:none}
@media print{.lang-bar,.eq-pill,.eq{display:none}}
/* "how to choose" section after the cards of a category page: text, model comparison, questions */
.guide{max-width:52rem;margin:8px 0 24px}
.guide h2{margin:36px 0 12px}
.guide h3{font-size:16.5px;margin:20px 0 6px;color:var(--navy)}
.guide p{margin:0 0 12px;line-height:1.6}
.guide .note-box{background:#F4F6F8;border-radius:6px;padding:14px 18px;margin:16px 0}
.guide .note-box h3{margin-top:0}
.guide .note-box ol{margin:0 0 12px;padding-inline-start:1.3em;line-height:1.6}
.compare{overflow-x:auto;margin:16px 0 8px;background:#F4F6F8;border-radius:6px;padding:12px 18px}
.compare table{border-collapse:collapse;width:100%;font-size:14.5px;line-height:1.45}
.compare th,.compare td{text-align:start;vertical-align:top;padding:8px 14px 8px 0}
.compare thead th{font-family:Poppins,"Segoe UI",Arial,sans-serif;font-size:13px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.compare tbody th{font-family:Poppins,"Segoe UI",Arial,sans-serif;font-weight:600;color:var(--navy);white-space:nowrap}
.compare tbody tr th,.compare tbody tr td{border-top:1px solid #dfe5ea}
@media(max-width:700px){.compare{padding:10px 12px}.compare table{min-width:38rem}}
