
:root{--yellow:#ffd52e;--yellow2:#fff3b8;--ink:#11110f;--muted:#686862;--paper:#f7f6f0;--line:#deddd5;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:"Noto Sans Georgian","Segoe UI",Arial,sans-serif}a{text-decoration:none;color:inherit}button{font:inherit}.header{height:92px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,24px);border-bottom:1px solid #ecebe5;position:sticky;top:0;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);z-index:20}.brand img{width:132px;height:72px;object-fit:contain}.nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}.nav>a:not(.nav-cta),.dropdown>button{padding:34px 0;border:0;background:none;cursor:pointer}.nav a:hover,.dropdown>button:hover{color:#8a6b00}.nav-cta,.primary{background:var(--ink);color:#fff;padding:15px 22px;border-radius:4px;display:inline-flex;align-items:center;gap:16px;font-weight:800}.nav-cta:hover,.primary:hover{background:#2e2e28}.dropdown{position:relative}.dropdown button span{margin-left:4px}.drop-menu{opacity:0;visibility:hidden;transform:translateY(-6px);position:absolute;top:72px;left:-20px;width:230px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px #1112;padding:10px;transition:.2s}.drop-menu a{display:block;padding:11px 12px;border-radius:4px;font-size:13px}.drop-menu a:hover{background:var(--paper)}.dropdown:hover .drop-menu{opacity:1;visibility:visible;transform:none}.burger{display:none;border:0;background:none;font-size:26px}.hero{min-height:690px;display:grid;grid-template-columns:1.04fr .96fr;background:var(--paper);overflow:hidden}.hero-copy{padding:92px 6vw 70px max(6vw,30px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.pill{font-size:12px;font-weight:800;letter-spacing:.04em;border:1px solid #d4d2c8;border-radius:30px;padding:9px 14px;background:#fff}.pill i{display:inline-block;width:7px;height:7px;background:var(--yellow);border-radius:50%;margin-right:7px}.hero h1,.detail-hero h1{font-size:clamp(46px,5vw,76px);line-height:1.12;letter-spacing:-.045em;margin:24px 0}.hero h1 em{font-style:normal;position:relative;z-index:1}.hero h1 em:after{content:"";position:absolute;left:-5px;right:-8px;bottom:5px;height:19px;background:var(--yellow);z-index:-1;transform:rotate(-1deg)}.hero-copy>p{font-size:18px;line-height:1.8;color:var(--muted);max-width:630px}.hero-actions{display:flex;gap:22px;align-items:center;margin-top:24px}.secondary{font-weight:800;font-size:14px;border-bottom:1px solid}.trust{display:flex;align-items:center;margin-top:45px}.avatars{display:flex}.avatars span{width:36px;height:36px;border-radius:50%;background:var(--yellow);display:grid;place-items:center;border:2px solid #fff;margin-left:-8px;font-weight:900;font-size:12px}.avatars span:first-child{margin-left:0}.trust p{margin:0 0 0 12px;display:flex;flex-direction:column;font-size:12px}.trust small{color:#8d7100;margin-top:4px}.hero-art{position:relative;background:var(--yellow);min-height:620px}.hero-art:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#0000000a 1px,transparent 1px),linear-gradient(90deg,#0000000a 1px,transparent 1px);background-size:36px 36px}.paper{position:absolute;width:180px;height:230px;background:#fff;box-shadow:0 18px 50px #5d4b001f;padding:22px;display:flex;flex-direction:column;justify-content:space-between;font-size:12px;font-weight:900}.paper:after{content:"";position:absolute;inset:55px 20px auto;height:75px;background:repeating-linear-gradient(#ddd 0 2px,transparent 2px 15px)}.paper b{border:2px solid var(--ink);padding:8px;transform:rotate(-5deg)}.p1{left:13%;top:13%;transform:rotate(-7deg)}.p2{right:10%;bottom:13%;transform:rotate(6deg);height:200px}.bulb{position:absolute;left:49%;top:38%;transform:translate(-50%,-50%);font-size:122px;filter:grayscale(1);z-index:2}.note{position:absolute;left:11%;bottom:12%;background:#fff4b1;padding:22px 26px;transform:rotate(3deg);box-shadow:0 10px 30px #0001;font-family:"Segoe Print",cursive;font-size:18px}.note span{display:block;font-size:11px;margin-top:12px}.stamp{position:absolute;right:9%;top:16%;border:4px double var(--ink);border-radius:50%;width:100px;height:100px;display:grid;place-items:center;text-align:center;font-size:12px;font-weight:900;transform:rotate(12deg)}.section-label{font-size:11px;text-transform:uppercase;letter-spacing:.18em;font-weight:900;color:#8a6b00}.intro{padding:110px max(7vw,30px);text-align:center}.intro h2,.section-head h2,.why h2,.process h2,.home-faq h2,.detail-faq h2{font-size:clamp(35px,4vw,58px);line-height:1.18;letter-spacing:-.035em;margin:18px 0}.intro>p{max-width:720px;margin:0 auto;color:var(--muted);font-size:17px;line-height:1.8}.stats{margin:75px auto 0;display:grid;grid-template-columns:repeat(4,1fr);max-width:1080px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats div{padding:30px 18px;border-right:1px solid var(--line);display:flex;flex-direction:column}.stats div:last-child{border:0}.stats b{font-size:36px}.stats span{font-size:12px;color:var(--muted);margin-top:7px}.services,.reviews,.process{padding:110px max(6vw,28px)}.services{background:#121210;color:#fff}.section-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:52px}.section-head>p{max-width:390px;color:#a6a69f;line-height:1.7}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#383833}.service-card{min-height:320px;padding:30px;background:#1b1b18;position:relative;display:flex;flex-direction:column;align-items:flex-start;transition:.25s}.service-card:hover{background:#252520;transform:translateY(-5px)}.service-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:var(--yellow);color:#111;font-size:25px}.service-card>span{position:absolute;right:28px;top:31px;color:#777;font-size:12px}.service-card h3{font-size:23px;margin:55px 0 10px}.service-card p{color:#aaa;line-height:1.6;font-size:14px}.service-card b{margin-top:auto;color:var(--yellow);font-size:13px}.why{display:grid;grid-template-columns:.9fr 1.1fr}.why-art{background:var(--yellow);min-height:720px;position:relative;display:grid;place-items:center}.big-note{font-size:66px;line-height:1.3;transform:rotate(-4deg);font-family:"Segoe Print",cursive}.big-note b{background:#fff;padding:0 10px}.tiny-note{position:absolute;right:10%;bottom:14%;background:#fff;padding:18px;transform:rotate(5deg);font-weight:900}.why-copy{padding:100px max(7vw,50px)}.why-item{display:grid;grid-template-columns:45px 1fr;gap:16px;padding:22px 0;border-top:1px solid var(--line)}.why-item>span{font-size:12px;color:#9b7800;font-weight:900}.why-item h3{margin:0 0 8px;font-size:18px}.why-item p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}.process{text-align:center;background:var(--paper)}.steps{display:grid;grid-template-columns:repeat(4,1fr);margin-top:55px;position:relative}.steps:before{content:"";position:absolute;top:55px;left:12%;right:12%;border-top:1px dashed #aaa}.step{padding:0 25px;position:relative}.step>span{font-size:11px;color:#9b7800;font-weight:900}.step-icon{width:82px;height:82px;border:1px solid #bbb;border-radius:50%;background:var(--paper);display:grid;place-items:center;margin:15px auto 25px;font-size:26px;position:relative}.step:last-child .step-icon{background:var(--yellow);border-color:var(--yellow)}.step h3{font-size:18px}.step p{color:var(--muted);font-size:13px;line-height:1.7}.reviews{background:#fff}.rating{display:flex!important;flex-direction:column;text-align:right;color:#b48b00!important}.rating b{font-size:44px;color:#111}.rating small{color:#777}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.review{border:1px solid var(--line);padding:30px;min-height:270px;display:flex;flex-direction:column}.review>div{color:#d5a900;letter-spacing:3px}.review>p{font-size:16px;line-height:1.8}.review footer{margin-top:auto;background:none;color:inherit;padding:20px 0 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.review footer span{color:var(--muted)}.home-faq,.detail-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;padding:110px max(7vw,30px);background:var(--paper)}.home-faq>div:first-child>p,.detail-faq>div:first-child>p{color:var(--muted);line-height:1.7}.text-link{font-weight:900;display:inline-block;margin-top:18px;border-bottom:2px solid var(--yellow)}.faq{border-top:1px solid #cbc9be}.faq:last-child{border-bottom:1px solid #cbc9be}.faq button{width:100%;padding:22px 0;background:none;border:0;display:flex;justify-content:space-between;text-align:left;font-weight:800;cursor:pointer}.faq button b{font-size:21px}.faq>div{display:grid;grid-template-rows:0fr;transition:.25s}.faq>div p{overflow:hidden;margin:0;color:var(--muted);line-height:1.7;font-size:14px}.faq.active>div{grid-template-rows:1fr}.faq.active>div p{padding-bottom:22px}.cta{background:var(--yellow);padding:65px max(7vw,30px);display:flex;align-items:center;justify-content:space-between}.cta span{font-size:11px;text-transform:uppercase;font-weight:900;letter-spacing:.15em}.cta h2{font-size:clamp(32px,4vw,54px);line-height:1.2;margin:12px 0}.cta>a{background:#111;color:#fff;padding:18px 24px;font-weight:900}.cta>a b{margin-left:24px}.cta.slim h2{font-size:38px}.page-wrapper > footer{background:#11110f;color:#fff;padding:70px max(6vw,30px) 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:45px}.footer-grid img{width:140px;height:90px;object-fit:contain;background:#fff;border-radius:3px}.footer-grid p{color:#a9a9a3;max-width:310px;line-height:1.7;font-size:13px}.footer-grid h4{color:var(--yellow);font-size:11px;text-transform:uppercase;letter-spacing:.14em;margin-bottom:22px}.footer-grid a,.footer-grid span{display:block;color:#c9c9c4;font-size:13px;margin:12px 0}.copyright{border-top:1px solid #34342f;margin-top:55px;padding-top:25px;display:flex;justify-content:space-between;color:#777;font-size:11px}.whatsapp{position:fixed;right:22px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:23px;z-index:25;box-shadow:0 10px 30px #0003}.whatsapp i{position:absolute;right:0;top:0;width:18px;height:18px;border-radius:50%;background:#e51d2a;font-size:10px;font-style:normal;display:grid;place-items:center;border:2px solid #fff}.detail-hero{min-height:590px;background:var(--paper);display:grid;grid-template-columns:1.25fr .75fr;padding:80px max(7vw,30px);align-items:center;gap:8vw}.detail-hero>div:first-child{max-width:800px}.detail-hero h1{font-size:clamp(44px,5.5vw,75px)}.detail-hero p{color:var(--muted);font-size:18px;line-height:1.75;max-width:650px;margin-bottom:35px}.detail-symbol{width:min(28vw,330px);aspect-ratio:1;border-radius:50%;background:var(--yellow);display:grid;place-items:center;font-size:100px;font-weight:900;position:relative}.detail-symbol:before{content:"";position:absolute;inset:-22px;border:2px dashed #222;border-radius:50%;animation:spin 30s linear infinite}.detail-symbol small{position:absolute;bottom:55px;font-size:10px;letter-spacing:.3em}@keyframes spin{to{transform:rotate(360deg)}}.detail-sections{padding:80px max(8vw,30px)}.detail-sections article{display:grid;grid-template-columns:80px 1fr;gap:25px;padding:48px 0;border-top:1px solid var(--line);max-width:1050px;margin:auto}.detail-sections article:last-child{border-bottom:1px solid var(--line)}.detail-sections article>span{color:#9f7d00;font-weight:900;font-size:12px}.detail-sections h2{font-size:34px;margin:0 0 15px}.detail-sections p{color:var(--muted);line-height:1.8;max-width:800px}.detail-sections ul{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:0;margin-top:25px;list-style:none}.detail-sections li{background:var(--paper);padding:14px 16px;font-size:14px}.detail-sections li:before{content:"✓";font-weight:900;margin-right:10px;color:#9b7800}
@media(max-width:900px){.header{height:75px}.brand img{width:108px;height:60px}.burger{display:block}.nav{position:absolute;left:0;right:0;top:75px;background:#fff;display:none;flex-direction:column;align-items:stretch;padding:15px 25px 30px;border-bottom:1px solid var(--line);gap:0}.nav.open{display:flex}.nav>a:not(.nav-cta),.dropdown>button{padding:13px 0}.dropdown button{width:100%;text-align:left}.drop-menu{display:none}.nav-cta{margin-top:8px;justify-content:center}.hero{grid-template-columns:1fr}.hero-copy{padding:70px 25px}.hero-art{min-height:500px}.stats{grid-template-columns:repeat(2,1fr)}.stats div:nth-child(2){border-right:0}.service-grid{grid-template-columns:repeat(2,1fr)}.why{grid-template-columns:1fr}.why-art{min-height:500px}.steps{grid-template-columns:repeat(2,1fr);gap:45px}.steps:before{display:none}.review-grid{grid-template-columns:1fr}.home-faq,.detail-faq{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.detail-hero{grid-template-columns:1fr}.detail-symbol{width:230px;margin:35px auto 0}.section-head{align-items:flex-start;flex-direction:column}.section-head>p{margin-top:0}}
@media(max-width:560px){.hero-copy{padding-top:55px}.hero h1{font-size:42px}.hero-actions{align-items:stretch;flex-direction:column;width:100%}.hero-actions a{justify-content:center}.hero-art{min-height:410px}.paper{width:130px;height:170px}.bulb{font-size:80px}.note{font-size:13px;padding:15px}.stamp{width:70px;height:70px;font-size:9px}.intro,.services,.reviews,.process,.home-faq,.detail-faq{padding:75px 22px}.stats b{font-size:28px}.service-grid{grid-template-columns:1fr}.service-card{min-height:270px}.why-copy{padding:75px 22px}.big-note{font-size:48px}.steps{grid-template-columns:1fr}.review{min-height:240px}.cta{align-items:flex-start;flex-direction:column;gap:25px;padding:48px 22px}.footer-grid{grid-template-columns:1fr}.copyright{flex-direction:column;gap:8px}.detail-hero{padding:70px 22px}.detail-symbol{width:180px;font-size:70px}.detail-symbol small{bottom:28px}.detail-sections{padding:50px 22px}.detail-sections article{grid-template-columns:1fr;gap:8px}.detail-sections h2{font-size:27px}.detail-sections ul{grid-template-columns:1fr}}
.brand{display:inline-flex;align-items:center}
.footer-brand{font-size:22px;font-weight:900;margin-bottom:12px}
@media(max-width:900px){
  .drop-menu{
  position:static;
  width:100%;
  opacity:1;
  visibility:visible;
  transform:none;
  box-shadow:none;
  border:0;
  padding:0 0 8px;
  display:none;
  }
  .drop-menu.open{display:block}
}

/* ===== Hero scene (overrides legacy split layout) ===== */
.hero{
  position:relative;
  display:block;
  min-height:min(100vh,920px);
  height:auto;
  overflow:hidden;
  background:
  radial-gradient(ellipse 55% 45% at 68% 42%, #ffe56a55 0%, transparent 70%),
  var(--paper);
  border-bottom:1px solid var(--line);
  grid-template-columns:unset;
}
.hero-stage{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:2;
}
.hero-glow{
  position:absolute;
  left:62%;
  top:40%;
  width:min(52vw,520px);
  height:min(52vw,520px);
  transform:translate(-50%,-50%);
  background:radial-gradient(circle, #ffd52e66 0%, #ffd52e22 35%, transparent 68%);
  border-radius:50%;
}
.hero-copy{
  position:relative;
  z-index:3;
  width:min(520px,92vw);
  margin:0;
  padding:clamp(56px,10vh,110px) max(5vw,24px) 80px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  min-height:min(100vh,920px);
}
.hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#6f5a00;
  background:#fff;
  border:1px solid #ddd9c8;
  padding:9px 14px;
}
.hero-kicker i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--yellow);
  box-shadow:0 0 0 3px #ffd52e44;
}
.hero-title{
  max-width:900px;
  font-size:clamp(56px, 5vw, 82px);
  line-height:1.05;
  letter-spacing:-.045em;
  margin:22px 0 18px;
}
.hero-title > span{
  display:block;
  width:fit-content;
  max-width:100%;
}
.hero-line-pair > span{
  display:inline;
}
.hero-line-pair > span + span:before{
  content:" ";
}
.hero-highlight{
  position:relative;
  z-index:1;
  white-space:nowrap;
  font-style:normal;
}
.hero-highlight:after{
  content:"";
  position:absolute;
  left:-4px;
  right:-6px;
  bottom:.08em;
  height:.28em;
  width:auto;
  background:var(--yellow);
  z-index:-1;
  transform:rotate(-1.2deg);
}
.detail-hero h1{
  font-size:clamp(44px,5.5vw,75px);
  line-height:1.12;
  letter-spacing:-.045em;
  margin:24px 0;
}
.hero-nowrap{
  white-space:nowrap;
  display:inline-block;
}
.hero-lead{
  margin:0;
  font-size:17px;
  line-height:1.75;
  color:var(--muted);
  max-width:42ch;
  background:linear-gradient(90deg,#f7f6f0f2 70%,#f7f6f000);
  padding:4px 0;
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:18px 26px;
  align-items:center;
  margin-top:28px;
}
.hero .secondary{
  font-weight:800;
  font-size:14px;
  border-bottom:1.5px solid var(--ink);
  padding-bottom:2px;
}
.hero .secondary:hover{color:#8a6b00;border-color:#8a6b00}

/* Documents */
.hero-doc{
  position:absolute;
  width:148px;
  height:188px;
  background:#fff;
  border:1px solid #e4e1d6;
  box-shadow:0 14px 36px #11111114;
  padding:16px 14px;
  display:flex;
  flex-direction:column;
  pointer-events:auto;
  transform:translate3d(var(--tx,0px),var(--ty,0px),0) rotate(var(--rot,0deg));
  transition:transform .45s cubic-bezier(.2,.7,.2,1), box-shadow .45s ease;
  z-index:2;
  animation:hero-drift var(--dur,14s) ease-in-out infinite alternate;
  will-change:transform;
}
.hero-doc:hover{
  z-index:6;
  box-shadow:0 22px 50px #11111122;
  transform:translate3d(var(--tx,0px),calc(var(--ty,0px) - 10px),0) rotate(calc(var(--rot,0deg) + 2.5deg)) scale(1.04);
  animation-play-state:paused;
}
.hero-doc header{
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  border-bottom:2px solid var(--ink);
  padding-bottom:8px;
}
.hero-doc footer{
  margin-top:auto;
  font-size:10px;
  font-weight:700;
  color:#888;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero-lines{
  flex:1;
  margin:14px 0 10px;
  background:repeating-linear-gradient(
  transparent 0 9px,
  #e8e5db 9px 10px
  );
  opacity:.9;
}
.hero-lines.short{max-height:48px;flex:0 0 48px}
.hero-hl{
  display:inline-block;
  align-self:flex-start;
  background:var(--yellow);
  font-size:10px;
  font-weight:800;
  padding:2px 6px;
  transform:rotate(-2deg);
  margin-bottom:8px;
}
.hero-hl.thin{padding:1px 5px;background:#fff3b8}
.hero-stamp-mini{
  align-self:flex-end;
  border:1.5px solid var(--ink);
  font-size:10px;
  font-weight:900;
  padding:4px 7px;
  transform:rotate(8deg);
  margin-bottom:6px;
}
.hero-tag{
  width:28px;
  height:28px;
  border-radius:50%;
  background:var(--yellow);
  display:grid;
  place-items:center;
  font-size:12px;
  font-weight:900;
  margin:8px 0;
}

.hero-doc.d1{left:54%; top:10%; --dur:16s; --drift-x:8px; --drift-y:-10px}
.hero-doc.d2{right:6%; top:14%; --dur:18s; --drift-x:-10px; --drift-y:8px; width:136px; height:172px}
.hero-doc.d3{right:16%; top:46%; --dur:15s; --drift-x:6px; --drift-y:12px; width:128px; height:160px}
.hero-doc.d4{right:5%; bottom:12%; --dur:17s; --drift-x:-8px; --drift-y:-6px}
.hero-doc.d5{left:58%; bottom:9%; --dur:19s; --drift-x:10px; --drift-y:7px; width:140px; height:168px}

@keyframes hero-drift{
  from{translate:0 0}
  to{translate:var(--drift-x,6px) var(--drift-y,8px)}
}

/* Bulb */
.hero-bulb{
  position:absolute;
  left:62%;
  top:40%;
  transform:translate(calc(-50% + var(--tx,0px)), calc(-50% + var(--ty,0px)));
  z-index:4;
  display:flex;
  flex-direction:column;
  align-items:center;
  pointer-events:auto;
  transition:transform .5s cubic-bezier(.2,.7,.2,1);
}
.hero-bulb-aura{
  position:absolute;
  inset:-28% -40%;
  background:radial-gradient(circle,#ffd52e88 0%,#ffd52e33 40%,transparent 70%);
  border-radius:50%;
  animation:hero-pulse 5.5s ease-in-out infinite;
  z-index:0;
}
.hero-bulb-svg{
  position:relative;
  z-index:1;
  width:min(18vw,148px);
  height:auto;
  filter:drop-shadow(0 10px 18px #b894001f);
}
.hero-bulb-label{
  margin-top:6px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.22em;
  text-transform:uppercase;
  background:#111;
  color:#fff;
  padding:5px 10px;
  position:relative;
  z-index:1;
}
@keyframes hero-pulse{
  0%,100%{opacity:.55;transform:scale(.96)}
  50%{opacity:1;transform:scale(1.04)}
}

.hero-arrows{
  position:absolute;
  left:42%;
  top:8%;
  width:min(58vw,620px);
  height:auto;
  opacity:.55;
  z-index:3;
  pointer-events:none;
}
.hero-sticky{
  position:absolute;
  left:64%;
  bottom:20%;
  z-index:5;
  background:#fff1a8;
  padding:16px 18px;
  font-family:"Segoe Print","Comic Sans MS",cursive;
  font-size:15px;
  line-height:1.35;
  transform:rotate(4deg) translate(var(--tx,0px),var(--ty,0px));
  box-shadow:0 10px 24px #00000012;
  pointer-events:auto;
  transition:transform .4s ease, box-shadow .4s ease;
}
.hero-sticky:hover{
  transform:rotate(2deg) translateY(-6px);
  box-shadow:0 16px 32px #00000018;
}
.hero-sticky span{
  display:block;
  margin-top:10px;
  font-size:11px;
  opacity:.7;
}
.hero-seal{
  position:absolute;
  right:28%;
  top:11%;
  z-index:5;
  width:92px;
  height:92px;
  border:3px double var(--ink);
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  line-height:1.2;
  transform:rotate(14deg);
  background:#ffd52e33;
  color:var(--ink);
  pointer-events:none;
}
.hero-scribble{
  position:absolute;
  right:10%;
  bottom:38%;
  z-index:5;
  font-family:"Segoe Print","Comic Sans MS",cursive;
  font-size:22px;
  color:#8a6b00;
  transform:rotate(-8deg);
  text-decoration:underline;
  text-decoration-color:var(--yellow);
  text-underline-offset:4px;
  pointer-events:none;
}

@media (max-width:1100px){
  .hero-doc.d5,.hero-arrows,.hero-scribble{display:none}
  .hero-copy{width:min(460px,88vw)}
  .hero-bulb{left:70%}
  .hero-doc.d1{left:48%}
}

@media (max-width:1024px){
  .hero-title{
  max-width:650px;
  font-size:clamp(48px, 6vw, 64px);
  }
}

/* Mobile hero under 768px: desktop unchanged */
@media (max-width:767.98px){
  .header{
  height:72px;
  padding:0 16px;
  }
  .brand img{
  width:120px;
  height:66px;
  }
  .nav{top:72px}

  .whatsapp{
  right:14px;
  bottom:16px;
  width:56px;
  height:56px;
  }

  .hero{
  display:flex;
  flex-direction:column;
  position:relative;
  height:auto;
  min-height:0;
  max-height:none;
  overflow-x:hidden;
  overflow-y:visible;
  background:var(--paper);
  }

  .hero-copy{
  order:1;
  position:relative;
  z-index:3;
  width:100%;
  max-width:none;
  min-height:0;
  height:auto;
  margin:0;
  padding:20px 20px 6px;
  justify-content:flex-start;
  background:var(--paper);
  overflow:visible;
  }

  /* Soft peeking doc at right edge: ~15% visible */
  .hero-copy:after{
  content:"";
  position:absolute;
  top:64px;
  right:-78px;
  width:90px;
  height:114px;
  background:#fff;
  border:1px solid #e4e1d6;
  box-shadow:0 8px 20px #11111110;
  transform:rotate(9deg);
  opacity:.32;
  z-index:0;
  pointer-events:none;
  }

  .hero-kicker,
  .hero-title,
  .hero-lead,
  .hero-actions{
  position:relative;
  z-index:2;
  background:var(--paper);
  }

  .hero-kicker{
  gap:6px;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  border-radius:0;
  font-size:15px !important;
  font-weight:700;
  letter-spacing:.02em;
  text-transform:none;
  color:#6f5a00;
  white-space:nowrap;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1.25;
  }
  .hero-kicker i{
  width:6px;
  height:6px;
  box-shadow:none;
  flex:0 0 auto;
  }

  .hero-title{
  max-width:100%;
  margin:10px 0 8px;
  font-size:clamp(38px, 10.5vw, 46px);
  line-height:1.04;
  letter-spacing:-.045em;
  white-space:normal;
  background:transparent;
  padding-right:4px;
  overflow:visible;
  box-sizing:border-box;
  }
  .hero-line-pair > span{
  display:block;
  }
  .hero-line-pair > span + span:before{
  content:none;
  }
  .hero-highlight{
  white-space:normal;
  }
  .hero-highlight:after{
  height:.26em;
  bottom:.06em;
  }

  .hero-lead{
  margin:0;
  max-width:100%;
  padding:0;
  background:var(--paper);
  font-size:17px;
  line-height:1.55;
  color:var(--muted);
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:4;
  overflow:hidden;
  }

  .hero-actions{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:8px;
  width:100%;
  max-width:100%;
  margin-top:14px;
  padding:0 0 4px;
  background:var(--paper);
  }
  .hero-actions .primary{
  width:100%;
  min-height:58px;
  height:58px;
  justify-content:center;
  align-items:center;
  padding:0 18px;
  gap:12px;
  font-size:15px;
  border-radius:4px;
  background:#11110f;
  color:#fff;
  outline:0;
  box-shadow:none;
  border:0;
  -webkit-tap-highlight-color:transparent;
  }
  .hero-actions .primary:focus,
  .hero-actions .primary:focus-visible{
  outline:0;
  box-shadow:none;
  }
  .hero-actions .primary:hover{
  background:#2e2e28;
  }
  .hero-actions .secondary{
  font-size:14px;
  padding-bottom:1px;
  margin-top:0;
  width:auto;
  text-align:left;
  background:transparent;
  }

  .hero-stage{
  order:2;
  position:relative;
  inset:auto;
  width:100%;
  height:270px;
  margin:-20px 0 0;
  padding:0;
  pointer-events:none;
  z-index:1;
  overflow:hidden;
  background:
  radial-gradient(circle at 50% 52%, #ffe56a55 0%, #ffe56a18 40%, transparent 66%);
  }

  .hero-glow{
  left:50%;
  top:48%;
  width:200px;
  height:200px;
  opacity:1;
  }

  .hero-bulb{
  left:50%;
  top:46%;
  transform:translate(calc(-50% + var(--tx,0px)), calc(-50% + var(--ty,0px)));
  pointer-events:none;
  z-index:3;
  }
  .hero-bulb-svg{width:96px}
  .hero-bulb-label{
  font-size:9px;
  letter-spacing:.16em;
  padding:4px 8px;
  }
  .hero-bulb-aura{inset:-24% -36%}

  .hero-doc{
  pointer-events:none;
  width:92px;
  height:116px;
  padding:10px 8px;
  opacity:1;
  box-shadow:0 10px 24px #11111114;
  }
  .hero-doc header{font-size:9px;padding-bottom:6px}
  .hero-doc footer{font-size:8px}
  .hero-hl{font-size:8px;padding:1px 4px}
  .hero-stamp-mini{font-size:8px;padding:3px 5px}
  .hero-tag{width:20px;height:20px;font-size:10px;margin:5px 0}

  .hero-doc.d1{
  left:5%;
  top:18%;
  z-index:2;
  opacity:1;
  --rot:-10deg;
  --dur:18s;
  --drift-x:3px;
  --drift-y:-3px;
  }
  .hero-doc.d2{
  display:none !important;
  }
  .hero-doc.d3{
  display:flex !important;
  left:auto;
  right:5%;
  top:16%;
  z-index:2;
  width:86px;
  height:110px;
  --rot:8deg;
  --dur:16s;
  --drift-x:-3px;
  --drift-y:3px;
  }
  .hero-doc.d4{
  left:auto;
  right:16%;
  top:auto;
  bottom:8%;
  z-index:2;
  width:94px;
  height:120px;
  --rot:11deg;
  --dur:17s;
  --drift-x:2px;
  --drift-y:-2px;
  }
  .hero-doc.d5,
  .hero-sticky,
  .hero-seal,
  .hero-arrows,
  .hero-scribble{
  display:none !important;
  }
}

@media (max-width:389.98px){
  .hero-copy{padding:18px 18px 4px}
  .hero-stage{height:255px}
  .hero-bulb{top:45%}
  .hero-bulb-svg{width:90px}
  .hero-doc{width:84px;height:108px}
  .hero-doc.d3{width:80px;height:104px}
  .hero-doc.d4{width:88px;height:112px;right:12%;bottom:10%}
  .hero-copy:after{right:-80px;top:58px;opacity:.28}
  .hero-title{font-size:clamp(38px, 10.5vw, 46px);line-height:1.04;letter-spacing:-.05em}
}

@media (min-width:390px) and (max-width:429.98px){
  .hero-stage{height:270px}
}

@media (min-width:430px) and (max-width:767.98px){
  .hero-copy{padding:24px 24px 8px}
  .hero-stage{height:285px}
  .hero-actions{max-width:360px}
  .hero-bulb-svg{width:102px}
  .hero-copy:after{right:-72px}
}

@media (prefers-reduced-motion:reduce){
  .hero-doc,
  .hero-bulb-aura,
  .hero-sticky,
  .hero-bulb,
  .detail-symbol:before{
  animation:none !important;
  transition:none !important;
  }
  .hero-doc:hover,
  .hero-sticky:hover{
  transform:translate3d(var(--tx,0px),var(--ty,0px),0) rotate(var(--rot,0deg));
  }
}

/* ===== Klaro Wegweiser ===== */
.wegweiser{
  position:relative;
  background:var(--paper);
  padding:56px max(4vw,20px) 48px;
  overflow:visible;
  border-bottom:1px solid var(--line);
}
.weg-scene{
  position:relative;
  display:grid;
  grid-template-columns:minmax(280px,42%) 1fr;
  align-items:start;
  height:700px;
  min-height:650px;
  max-height:750px;
  max-width:1280px;
  margin:0 auto;
}
.weg-intro{
  position:relative;
  z-index:4;
  max-width:440px;
  margin:0;
  padding:8px 24px 0 0;
  text-align:left;
  background:linear-gradient(90deg,var(--paper) 78%,transparent);
}
.weg-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 14px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#8a6b00;
}
.weg-kicker i{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--yellow);
}
.wegweiser h2{
  font-size:clamp(32px,3.6vw,50px);
  line-height:1.14;
  letter-spacing:-.035em;
  margin:0 0 16px;
}
.weg-mark{
  font-style:normal;
  position:relative;
  z-index:1;
  white-space:nowrap;
}
.weg-mark:after{
  content:"";
  position:absolute;
  left:-2px;
  right:-4px;
  bottom:.06em;
  height:.28em;
  background:var(--yellow);
  z-index:-1;
  border-radius:1px;
}
.weg-lead{
  margin:0;
  font-size:16px;
  line-height:1.7;
  color:var(--muted);
  max-width:38ch;
}

.weg-route{
  position:absolute;
  inset:0;
  z-index:1;
}

.weg-svg,
.weg-svg-desktop{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:1;
  overflow:visible;
}
.weg-svg-mobile{display:none}
.weg-dot{
  fill:var(--yellow);
  stroke:#111;
  stroke-width:2;
}
.weg-rail,
.route-background,
.route-desktop-background,
.route-mobile-background{
  fill:none;
  stroke:#f6e8a9;
  stroke-width:10;
  stroke-linecap:round;
  stroke-linejoin:round;
  opacity:1;
}
.weg-draw,
.route-progress,
.route-desktop-progress{
  fill:none;
  stroke:#ffd21f;
  stroke-width:10;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:drop-shadow(0 0 7px rgba(255,210,31,.35));
  transition:none;
}
.route-mobile-background{
  fill:none;
  stroke:#e8dfb0;
  stroke-width:10;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:none;
}
.route-mobile-progress{
  fill:none;
  stroke:#ffd21f;
  stroke-width:10;
  stroke-linecap:round;
  stroke-linejoin:round;
  filter:none;
  transition:none;
}

.weg-node{position:absolute;z-index:2}
.weg-start{
  left:8%;
  top:28%;
  z-index:3;
}
.weg-start-label{
  background:#111;
  color:#fff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.03em;
  padding:8px 12px;
  transform:rotate(-3deg);
  display:inline-block;
}

.weg-stop{
  width:min(200px,22vw);
  color:#9a9a94;
  transition:color .5s ease, transform .5s ease;
}
.weg-stop .weg-num{
  margin:8px 0 4px;
  font-size:clamp(36px,3.5vw,52px);
  font-weight:900;
  letter-spacing:-.04em;
  line-height:1;
  color:inherit;
  transition:color .5s ease;
}
.weg-stop .weg-num i{
  font-style:normal;
  font-size:.55em;
  margin-left:1px;
}
.weg-cap{
  margin:0;
  font-size:12px;
  font-weight:700;
  color:inherit;
  line-height:1.35;
  max-width:15ch;
  transition:color .5s ease;
}
.weg-doc{
  position:relative;
  width:72px;
  height:90px;
  background:#fff;
  border:1px solid #e2dfd4;
  padding:9px 7px;
  transform:rotate(-6deg);
  box-shadow:0 8px 18px #1111110d;
  transition:transform .5s ease;
}
.weg-stop.s2 .weg-doc{transform:rotate(5deg)}
.weg-stop.s3 .weg-doc{transform:rotate(-4deg)}
.weg-stop.s4 .weg-doc{transform:rotate(7deg)}
.weg-stop.is-on{
  color:var(--ink);
}
.weg-stop.is-on .weg-doc{
  transform:rotate(-6deg) translateY(-8px);
}
.weg-stop.s2.is-on .weg-doc{transform:rotate(5deg) translateY(-8px)}
.weg-stop.s3.is-on .weg-doc{transform:rotate(-4deg) translateY(-8px)}
.weg-stop.s4.is-on .weg-doc{transform:rotate(7deg) translateY(-8px)}
.weg-stop.is-on .weg-num{color:var(--ink)}
.weg-stop.is-on .weg-cap{color:var(--muted)}
.weg-doc-title{
  display:block;
  font-size:8px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
  border-bottom:1.5px solid currentColor;
  padding-bottom:4px;
  color:#b0aea6;
  transition:color .5s ease;
}
.weg-stop.is-on .weg-doc-title{color:#111}
.weg-doc-lines{
  display:block;
  height:32px;
  margin-top:8px;
  background:repeating-linear-gradient(#e8e5db 0 1px, transparent 1px 8px);
}
.weg-stamp{
  position:absolute;
  right:-6px;
  bottom:6px;
  border:2px solid #111;
  color:#111;
  font-size:8px;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  padding:2px 4px;
  background:var(--yellow);
  transform:rotate(-18deg) scale(.6);
  opacity:0;
  transition:opacity .5s ease, transform .5s ease;
}
.weg-stop.is-on .weg-stamp{
  opacity:1;
  transform:rotate(-12deg) scale(1);
}

.weg-stop.s1{left:34%; top:38%; z-index:3}
.weg-stop.s2{left:52%; top:58%}
.weg-stop.s3{left:64%; top:26%}
.weg-stop.s4{left:76%; top:52%}

/* Endstation: wrapper at original SVG path end (1080,175); path stays soft/horizontal */
.weg-svg-desktop .weg-dot-end{opacity:0}
.route-end{
  position:absolute;
  display:flex;
  align-items:center;
  gap:24px;
}
.route-end.weg-finish{
  left:90%;
  top:25%;
  right:auto;
  width:auto;
  max-width:none;
  flex-direction:row;
  text-align:left;
  z-index:5;
  /* Dot center sits on path end; button extends right via short bridge */
  transform:translate(-10px, -50%);
  pointer-events:none;
}
.route-end-col{
  position:absolute;
  left:0;
  bottom:calc(50% + 26px);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:10px;
  width:auto;
  pointer-events:none;
}
.weg-bulb{
  position:relative;
  width:64px;
  flex:0 0 auto;
  margin:0;
}
.weg-bulb svg{width:100%; height:auto; display:block; position:relative; z-index:1}
.weg-bulb ellipse{
  fill:#c5c3bb;
  transition:fill .45s ease;
}
.weg-bulb-glow{
  position:absolute;
  inset:-18% -28%;
  background:radial-gradient(circle,#ffd52e88 0%,#ffd52e22 45%,transparent 70%);
  border-radius:50%;
  z-index:0;
  opacity:0;
  transform:scale(.85);
  transition:opacity .5s ease, transform .5s cubic-bezier(.22,.61,.36,1);
}
.weg-finish.is-on .weg-bulb ellipse{
  fill:var(--yellow);
}
.weg-finish.is-on .weg-bulb-glow{
  opacity:1;
  transform:scale(1);
}
.weg-finish-text{
  margin:0;
  font-size:15px;
  font-weight:800;
  line-height:1.3;
  letter-spacing:-.02em;
  max-width:18ch;
}
.route-end-row{
  display:flex;
  align-items:center;
  gap:0;
  position:relative;
  pointer-events:auto;
}
.weg-end-dot{
  position:relative;
  left:auto;
  top:auto;
  flex:0 0 auto;
  width:20px;
  height:20px;
  border-radius:50%;
  background:var(--yellow);
  border:2px solid #11110f;
  box-sizing:border-box;
  transform:none;
  z-index:2;
  pointer-events:none;
}
.weg-end-pulse{
  position:absolute;
  left:0;
  top:50%;
  width:20px;
  height:20px;
  margin-top:-10px;
  border-radius:50%;
  background:rgba(255,213,46,.55);
  transform:scale(1);
  opacity:0;
  z-index:1;
  pointer-events:none;
}
.route-end-bridge{
  display:block;
  width:26px;
  height:4px;
  margin:0;
  background:#c5c3bb;
  border-radius:2px;
  flex:0 0 auto;
  transition:background .45s ease;
}
.weg-finish.is-on .route-end-bridge{
  background:var(--yellow);
}
.weg-finish-cta{
  position:relative;
  z-index:3;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:auto;
  min-width:160px;
  height:54px;
  min-height:54px;
  padding:0 24px;
  margin-left:0;
  background:#c5c3bb;
  color:#5a5954;
  font-size:14px;
  font-weight:800;
  border:2px solid #8a8983;
  border-radius:4px;
  opacity:1;
  box-shadow:none;
  transform:translateY(0);
  transition:background .45s ease, color .45s ease, border-color .45s ease, transform .25s ease, box-shadow .25s ease;
  pointer-events:auto;
}
.weg-finish.is-on .weg-finish-cta,
.weg-scene.is-finish-on .mobile-contact-cta{
  background:var(--yellow);
  color:#111111;
  border-color:#111111;
  box-shadow:0 2px 6px rgba(17,17,15,.06);
}
.weg-finish-cta-arrow{
  display:inline-block;
  transition:transform .25s ease;
}
.weg-finish.is-on .weg-finish-cta:hover,
.weg-scene.is-finish-on .mobile-contact-cta:hover{
  background:#111111;
  color:#fff;
  transform:translateY(-2px);
  box-shadow:0 3px 8px rgba(17,17,15,.1);
}
.weg-finish.is-on .weg-finish-cta:hover .weg-finish-cta-arrow,
.weg-scene.is-finish-on .mobile-contact-cta:hover .weg-finish-cta-arrow{
  transform:translateX(3px);
}
.weg-finish.is-on .weg-end-pulse{
  animation:wegEndPulse .7s ease-out 1;
}
@keyframes wegEndPulse{
  0%{opacity:.9; transform:scale(1)}
  100%{opacity:0; transform:scale(3.2)}
}

@media (max-width:1100px){
  .weg-scene{height:680px}
  .weg-stop.s1{left:36%}
  .weg-stop.s3{left:62%}
  .route-end.weg-finish{left:89%}
  .weg-finish-text{font-size:13px}
  .weg-bulb{width:56px}
  .weg-finish-cta{min-width:148px; font-size:13px}
}

/* Mobile end block: hidden on desktop */
.mobile-route-result,
.mobile-contact-cta{display:none !important}

@media (max-width:767.98px){
  .wegweiser{
  padding:48px 18px 0;
  overflow-x:hidden;
  overflow-y:visible;
  }
  .weg-scene{
  display:flex;
  flex-direction:column;
  height:auto;
  min-height:0;
  max-height:none;
  grid-template-columns:none;
  }
  .weg-intro{
  max-width:none;
  padding:0 0 4px;
  background:var(--paper);
  z-index:4;
  }
  .wegweiser h2{font-size:clamp(28px,7.5vw,36px);margin-bottom:12px}
  .weg-lead{font-size:15px;line-height:1.6;max-width:none;margin-bottom:4px}

  .weg-svg-desktop{display:none !important}
  .weg-svg-mobile{
  display:block;
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  pointer-events:none;
  z-index:0;
  overflow:visible;
  }
  .weg-svg-mobile .route-mobile-background,
  .weg-svg-mobile .route-mobile-progress{
  stroke-width:10;
  stroke-linecap:round;
  stroke-linejoin:round;
  }
  .weg-svg-mobile .route-mobile-background{
  stroke:#e8dfb0;
  filter:none;
  }
  .weg-svg-mobile .route-mobile-progress{
  stroke:#ffd21f;
  filter:none;
  }
  .weg-svg-mobile .weg-dot-end.route-end-dot{
  display:block;
  opacity:1;
  fill:#f0eee4;
  stroke:#11110f;
  stroke-width:2;
  transition:fill .35s ease;
  }
  .weg-svg-mobile .weg-dot-end.route-end-dot.is-reached{
  fill:#FFD21F;
  }

  .weg-route{
  position:relative;
  inset:auto;
  width:100%;
  height:1100px;
  min-height:1100px;
  max-height:none;
  margin:4px 0 0;
  overflow:visible;
  padding-bottom:0;
  display:block;
  }

  .weg-node{
  position:absolute;
  z-index:2;
  margin:0;
  padding:0;
  width:auto;
  }

  .weg-start{
  left:4%;
  top:1.5%;
  }
  .weg-start-label{transform:rotate(-2deg);font-size:11px}
  .weg-start:before,
  .weg-stop:before{display:none !important}

  .weg-stop.s1{
  left:4%;
  top:10%;
  max-width:58%;
  text-align:left;
  }
  .weg-stop.s2{
  left:auto;
  right:3%;
  top:28%;
  max-width:58%;
  text-align:right;
  }
  .weg-stop.s2 .weg-doc,
  .weg-stop.s2 .weg-cap{margin-left:auto}
  .weg-stop.s3{
  left:4%;
  top:46%;
  max-width:58%;
  text-align:left;
  }
  .weg-stop.s4{
  left:auto;
  right:3%;
  top:66%;
  max-width:58%;
  text-align:right;
  z-index:3;
  }
  .weg-stop.s4 .weg-doc,
  .weg-stop.s4 .weg-cap{margin-left:auto}

  .weg-stop{width:auto}
  .weg-stop .weg-num{font-size:40px}

  .weg-stop.is-on .weg-doc,
  .weg-stop.s2.is-on .weg-doc,
  .weg-stop.s3.is-on .weg-doc,
  .weg-stop.s4.is-on .weg-doc{
  transform:rotate(-6deg);
  }
  .weg-stop.s2.is-on .weg-doc{transform:rotate(5deg)}
  .weg-stop.s3.is-on .weg-doc{transform:rotate(-4deg)}
  .weg-stop.s4.is-on .weg-doc{transform:rotate(7deg)}

  .route-end.weg-finish{display:none !important}

  .mobile-route-result{
  display:flex !important;
  flex-direction:column;
  align-items:center;
  width:100%;
  position:relative;
  z-index:3;
  padding-top:20px;
  }

  .mobile-result-bulb{
  position:relative;
  width:68px;
  flex:0 0 auto;
  margin:0;
  opacity:.55;
  filter:grayscale(1);
  transform:translateY(0);
  transition:
  opacity .4s ease,
  filter .4s ease,
  transform .4s ease;
  }
  .mobile-result-bulb svg{
  width:100%;
  height:auto;
  display:block;
  position:relative;
  z-index:1;
  }
  .mobile-result-bulb .bulb-fill{
  fill:transparent;
  transition:fill .4s ease;
  }
  .mobile-result-bulb .bulb-stroke{
  stroke:#9b9b91;
  transition:stroke .4s ease, fill .4s ease;
  }
  .mobile-result-bulb circle.bulb-stroke{
  fill:#9b9b91;
  stroke:none;
  }
  .mobile-result-bulb .light-rays{
  opacity:0;
  transition:opacity .4s ease;
  }
  .mobile-result-bulb .bulb-glow{
  position:absolute;
  inset:-14% -20%;
  background:radial-gradient(circle,#ffd21f66 0%,#ffd21f18 48%,transparent 72%);
  border-radius:50%;
  z-index:0;
  opacity:0;
  pointer-events:none;
  }
  .mobile-result-bulb.is-lit{
  opacity:1;
  filter:grayscale(0) drop-shadow(0 0 14px rgba(255,210,31,.55));
  transform:translateY(-2px);
  }
  .mobile-result-bulb.is-lit .bulb-fill{
  fill:#FFD21F;
  }
  .mobile-result-bulb.is-lit .bulb-stroke{
  stroke:#111111;
  }
  .mobile-result-bulb.is-lit circle.bulb-stroke{
  fill:#111111;
  }
  .mobile-result-bulb.is-lit .light-rays{
  opacity:1;
  }
  .mobile-result-bulb.is-lit.did-flash .bulb-glow{
  animation:routeBulbFlash .9s ease-out 1;
  }
  @keyframes routeBulbFlash{
  0%{opacity:0}
  35%{opacity:.8}
  100%{opacity:0}
  }

  .route-final-text{
  position:relative;
  inset:auto;
  transform:translateY(4px);
  width:min(260px, calc(100% - 48px));
  margin:24px auto 0;
  text-align:center;
  line-height:1.35;
  font-size:15px;
  font-weight:800;
  letter-spacing:-.02em;
  z-index:3;
  opacity:.55;
  transition:opacity .4s ease, transform .4s ease;
  }

  .mobile-contact-cta{
  display:flex !important;
  position:relative;
  inset:auto;
  align-self:center;
  width:calc(100% - 40px);
  min-width:0;
  min-height:56px;
  height:56px;
  margin:32px auto 60px;
  z-index:5;
  justify-content:center;
  background:var(--yellow) !important;
  color:#111111 !important;
  border:2px solid #111111 !important;
  opacity:.55;
  transform:translateY(4px);
  box-shadow:0 2px 6px rgba(17,17,15,.06);
  transition:opacity .4s ease, transform .4s ease, background .25s ease, color .25s ease, box-shadow .25s ease;
  pointer-events:auto;
  }
  .mobile-contact-cta:hover{
  background:#111111 !important;
  color:#fff !important;
  transform:translateY(2px);
  }

  .mobile-route-result.is-complete .route-final-text,
  .mobile-route-result.is-complete .mobile-contact-cta{
  opacity:1;
  transform:translateY(0);
  }
  .mobile-route-result.is-complete .mobile-contact-cta:hover{
  transform:translateY(-2px);
  }
}


@media (prefers-reduced-motion:reduce){
  .weg-stamp{opacity:1;transform:rotate(-12deg) scale(1)}
  .route-desktop-progress,
  .route-mobile-progress,
  .route-progress,
  .weg-draw{
  stroke-dashoffset:0 !important;
  transition:none !important;
  filter:none;
  }
  .weg-stop{
  color:var(--ink);
  }
  .weg-stop .weg-doc-title{color:#111}
  .weg-stop .weg-cap{color:var(--muted)}
  .weg-finish-cta{
  transition:none !important;
  }
  .weg-bulb ellipse,
  .weg-bulb-glow,
  .mobile-result-bulb,
  .mobile-result-bulb .bulb-fill,
  .mobile-result-bulb .bulb-stroke,
  .mobile-result-bulb .light-rays,
  .mobile-result-bulb .bulb-glow{
  transition:none !important;
  animation:none !important;
  }
  .mobile-result-bulb{
  opacity:1 !important;
  filter:none !important;
  transform:translateY(-2px) !important;
  }
  .mobile-result-bulb .bulb-fill{fill:#FFD21F !important}
  .mobile-result-bulb .bulb-stroke{stroke:#111111 !important}
  .mobile-result-bulb circle.bulb-stroke{fill:#111111 !important}
  .mobile-result-bulb .light-rays{opacity:1 !important}
  .weg-svg-mobile .route-end-dot{fill:#FFD21F !important}
  .mobile-route-result .route-final-text,
  .mobile-route-result .mobile-contact-cta{
  opacity:1 !important;
  transform:none !important;
  }
  .weg-finish.is-on .weg-end-pulse{
  animation:none;
  opacity:0;
  }
}

/* ===== Klaro Aktenmappe (services) ===== */
.services.akten{
  background:
  radial-gradient(ellipse 80% 50% at 20% 30%, #1f1e1a 0%, transparent 55%),
  radial-gradient(ellipse 60% 40% at 85% 70%, #25231c 0%, transparent 50%),
  #11110f;
  color:#f7f6f0;
  padding:100px max(5vw,24px) 110px;
  overflow:hidden;
}
.services.akten .section-label{color:var(--yellow)}
.akten-head{
  max-width:920px;
  margin:0 0 48px;
}
.akten-head h2{
  margin:10px 0 14px;
  font-size:clamp(32px,4.2vw,52px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:800;
  color:#fff;
}
.akten-head p{
  margin:0;
  max-width:540px;
  font-size:16px;
  line-height:1.65;
  color:rgba(247,246,240,.72);
}

.akten-desk{
  position:relative;
  display:grid;
  grid-template-columns:minmax(280px,1.05fr) minmax(300px,1fr);
  gap:0 28px;
  align-items:stretch;
  min-height:560px;
  padding:28px 24px 32px;
  border:1px solid rgba(255,213,46,.18);
  background:
  linear-gradient(135deg, rgba(255,213,46,.04), transparent 40%),
  linear-gradient(180deg, #1a1915 0%, #141311 100%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}
.akten-desk::before{
  content:"";
  position:absolute;
  inset:12px;
  border:1px dashed rgba(255,213,46,.12);
  pointer-events:none;
  z-index:0;
}

.akten-stack{
  position:relative;
  z-index:1;
  min-height:540px;
  isolation:isolate;
}
.akten-item{
  position:absolute;
  left:0;
  width:min(100%,340px);
  transition:transform .38s cubic-bezier(.22,.61,.36,1), filter .38s ease, opacity .38s ease;
  will-change:transform;
}
.akten-item:nth-child(1){top:8%; transform:translate(0,0) rotate(-3.5deg); z-index:1}
.akten-item:nth-child(2){top:20%; transform:translate(22px,0) rotate(-1.2deg); z-index:2}
.akten-item:nth-child(3){top:32%; transform:translate(44px,0) rotate(1.5deg); z-index:3}
.akten-item:nth-child(4){top:44%; transform:translate(18px,0) rotate(-2deg); z-index:4}
.akten-item:nth-child(5){top:56%; transform:translate(40px,0) rotate(2.2deg); z-index:5}
.akten-item:nth-child(6){top:68%; transform:translate(12px,0) rotate(-.8deg); z-index:6}

.akten-item.is-active{
  z-index:20 !important;
  filter:none;
  opacity:1;
}
.akten-item.is-active:nth-child(1){transform:translate(56px,-6px) rotate(-.5deg) scale(1.03)}
.akten-item.is-active:nth-child(2){transform:translate(56px,-6px) rotate(.4deg) scale(1.03)}
.akten-item.is-active:nth-child(3){transform:translate(56px,-6px) rotate(-.3deg) scale(1.03)}
.akten-item.is-active:nth-child(4){transform:translate(56px,-6px) rotate(.6deg) scale(1.03)}
.akten-item.is-active:nth-child(5){transform:translate(56px,-6px) rotate(-.4deg) scale(1.03)}
.akten-item.is-active:nth-child(6){transform:translate(56px,-6px) rotate(.2deg) scale(1.03)}

.akten-item.is-back{
  filter:brightness(.72);
  opacity:.78;
}
.akten-item.is-back:nth-child(1){transform:translate(-10px,8px) rotate(-4deg) scale(.96)}
.akten-item.is-back:nth-child(2){transform:translate(8px,10px) rotate(-2deg) scale(.96)}
.akten-item.is-back:nth-child(3){transform:translate(28px,10px) rotate(2.5deg) scale(.96)}
.akten-item.is-back:nth-child(4){transform:translate(4px,12px) rotate(-2.8deg) scale(.96)}
.akten-item.is-back:nth-child(5){transform:translate(24px,12px) rotate(3deg) scale(.96)}
.akten-item.is-back:nth-child(6){transform:translate(-2px,14px) rotate(-1.5deg) scale(.96)}

.akten-file{
  display:block;
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
  text-align:left;
  color:inherit;
  position:relative;
}
.akten-tab{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  padding:8px 16px 10px;
  margin-left:18px;
  background:var(--yellow);
  color:#11110f;
  font-size:13px;
  font-weight:800;
  letter-spacing:-.01em;
  border-radius:6px 6px 0 0;
  box-shadow:2px 0 0 #c9a812;
  max-width:calc(100% - 28px);
  line-height:1.25;
  white-space:normal;
}
.akten-sheet{
  display:block;
  position:relative;
  margin-top:-1px;
  min-height:118px;
  padding:18px 16px 16px;
  background:linear-gradient(180deg, #fbfaf4 0%, #f3f0e4 100%);
  border:1px solid #d9d4c4;
  border-radius:2px 8px 8px 8px;
  box-shadow:
  0 10px 28px rgba(0,0,0,.35),
  inset 0 0 0 1px rgba(255,255,255,.5);
  overflow:hidden;
}
.akten-sheet::before{
  content:"";
  position:absolute;
  left:0; top:0; bottom:0;
  width:10px;
  background:repeating-linear-gradient(
  180deg,
  #e8e2d2 0 8px,
  #d4cdb8 8px 10px
  );
}
.akten-lines{
  display:block;
  height:54px;
  margin:4px 0 0 14px;
  background:repeating-linear-gradient(
  180deg,
  transparent 0 11px,
  rgba(17,17,15,.12) 11px 12px
  );
  mask-image:linear-gradient(90deg,#000 55%,transparent);
}
.akten-meta{
  position:absolute;
  right:12px;
  top:12px;
  font-size:10px;
  font-weight:700;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(17,17,15,.45);
}
.akten-clip{
  position:absolute;
  top:-6px;
  right:42px;
  width:18px;
  height:28px;
  background:linear-gradient(90deg,#c5c0b2,#ece8dc,#c5c0b2);
  border-radius:2px;
  box-shadow:0 2px 4px rgba(0,0,0,.2);
}

.akten-foldout{display:none}

.akten-panel{
  position:relative;
  z-index:2;
  display:flex;
  align-items:stretch;
  min-height:100%;
}
.akten-panel-paper{
  position:relative;
  flex:1;
  margin:18px 8px 8px 0;
  padding:36px 34px 32px;
  background:
  linear-gradient(90deg, transparent 39px, rgba(180,40,40,.18) 39px, rgba(180,40,40,.18) 40px, transparent 40px),
  repeating-linear-gradient(180deg, transparent 0 27px, rgba(17,17,15,.08) 27px 28px),
  linear-gradient(180deg, #fbfaf4, #f2efe4);
  color:#11110f;
  border:1px solid #d8d2c0;
  box-shadow:
  0 18px 40px rgba(0,0,0,.4),
  6px 6px 0 rgba(255,213,46,.15);
  transform-origin:left center;
  transition:transform .38s cubic-bezier(.22,.61,.36,1), opacity .32s ease;
}
.akten-panel.is-switching .akten-panel-paper{
  opacity:.55;
  transform:translateX(14px) rotate(.4deg);
}
.akten-num{
  margin:0 0 6px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.14em;
  color:#8a6b00;
}
.akten-panel-paper h3,
.akten-foldout h3{
  margin:0 0 12px;
  font-size:clamp(26px,3vw,36px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:800;
}
.akten-desc{
  margin:0 0 18px;
  font-size:15px;
  line-height:1.65;
  color:#3a3934;
  max-width:42ch;
}
.akten-points{
  margin:0 0 26px;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.akten-points li{
  position:relative;
  padding:10px 12px 10px 36px;
  background:rgba(255,213,46,.16);
  border-left:3px solid var(--yellow);
  font-size:14px;
  font-weight:600;
  line-height:1.45;
  color:#1c1b18;
}
.akten-points li::before{
  content:"\2713";
  position:absolute;
  left:12px;
  top:10px;
  color:#8a6b00;
  font-weight:800;
}
.akten-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:44px;
  padding:12px 20px;
  background:#11110f;
  color:#fff;
  font-weight:800;
  font-size:14px;
  border-radius:4px;
  transition:background .2s ease, transform .2s ease;
}
.akten-cta:hover{
  background:#2a2a26;
  transform:translateY(-1px);
}
.akten-cta span{color:var(--yellow)}

.akten-stamp{
  position:absolute;
  right:28px;
  top:28px;
  width:104px;
  height:104px;
  border:3px solid var(--yellow);
  border-radius:50%;
  color:#c9a20e;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  line-height:1.15;
  display:grid;
  place-items:center;
  text-align:center;
  transform:rotate(-18deg) scale(.6);
  opacity:0;
  pointer-events:none;
  box-shadow:inset 0 0 0 2px rgba(255,213,46,.35);
}
.akten-panel.is-stamping .akten-stamp{
  animation:aktenStamp .42s cubic-bezier(.2,.8,.2,1) forwards;
}
@keyframes aktenStamp{
  0%{opacity:0; transform:rotate(-28deg) scale(1.35)}
  35%{opacity:1; transform:rotate(-14deg) scale(1)}
  100%{opacity:.92; transform:rotate(-12deg) scale(1)}
}

@media (max-width:980px){
  .akten-desk{grid-template-columns:1fr 1fr; gap:0 16px; padding:20px 14px}
  .akten-item{width:min(100%,290px)}
  .akten-panel-paper{padding:28px 22px; margin-top:10px}
}

@media (max-width:767.98px){
  .services.akten{
  padding:72px 18px 80px;
  overflow-x:hidden;
  }
  .akten-head{margin-bottom:28px}
  .akten-head h2{font-size:clamp(28px,7vw,36px)}
  .akten-head p{font-size:15px}

  .akten-desk{
  display:block;
  min-height:0;
  padding:14px 12px 18px;
  overflow-x:hidden;
  }
  .akten-desk::before{inset:8px}

  .akten-stack{
  min-height:0;
  display:flex;
  flex-direction:column;
  gap:10px;
  }
  .akten-item,
  .akten-item.is-active,
  .akten-item.is-back,
  .akten-item:nth-child(n){
  position:relative;
  top:auto !important;
  left:auto;
  width:100%;
  transform:none !important;
  filter:none;
  opacity:1;
  z-index:auto !important;
  }

  .akten-file{width:100%}
  .akten-tab{
  margin-left:10px;
  margin-right:10px;
  font-size:13px;
  max-width:none;
  width:calc(100% - 20px);
  justify-content:flex-start;
  }
  .akten-sheet{
  min-height:0;
  padding:0;
  height:0;
  border:0;
  box-shadow:none;
  overflow:hidden;
  background:transparent;
  }
  .akten-sheet > *{display:none}
  .akten-sheet::before{display:none}

  .akten-item.is-active .akten-tab{
  box-shadow:3px 0 0 #111;
  }

  .akten-foldout{
  display:block;
  margin:0 2px;
  color:#11110f;
  border-radius:0 0 6px 6px;
  overflow:hidden;
  max-height:0;
  opacity:0;
  padding:0 16px;
  border:1px solid transparent;
  border-top:0;
  transition:max-height .4s ease, opacity .3s ease, padding .38s ease, background .2s ease;
  }
  .akten-item.is-active .akten-foldout{
  max-height:680px;
  opacity:1;
  padding:20px 16px 18px;
  margin-top:-1px;
  background:linear-gradient(180deg,#fbfaf4,#f2efe4);
  border-color:#d8d2c0;
  box-shadow:0 12px 28px rgba(0,0,0,.28);
  }

  .akten-panel{display:none}
  .akten-stamp{display:none}
  .akten-foldout .akten-num{margin-top:0}
  .akten-foldout h3{font-size:24px}
  .akten-cta{width:100%}
}

@media (prefers-reduced-motion:reduce){
  .akten-item,
  .akten-panel-paper,
  .akten-foldout,
  .akten-cta{
  transition:none !important;
  }
  .akten-panel.is-stamping .akten-stamp{
  animation:none;
  opacity:.9;
  transform:rotate(-12deg) scale(1);
  }
  .akten-panel.is-switching .akten-panel-paper{
  opacity:1;
  transform:none;
  }
}

/* ===== Vier Klaro-Versprechen (accordion) ===== */
.why.klaro-promises{
  display:block;
  grid-template-columns:none;
  background:#f7f6f0;
  color:var(--ink);
  padding:88px max(5vw,24px) 100px;
  overflow-x:hidden;
  height:auto;
}
.why.klaro-promises .section-label{color:#8a6b00}

.prom-head{
  max-width:760px;
  margin:0 0 40px;
}
.prom-head h2{
  margin:10px 0 14px;
  font-size:clamp(30px,4vw,48px);
  line-height:1.18;
  letter-spacing:-.03em;
  font-weight:800;
}
.prom-head p{
  margin:0;
  max-width:48ch;
  font-size:16px;
  line-height:1.65;
  color:var(--muted);
}

.prom-list{
  display:flex;
  flex-direction:column;
  width:100%;
  max-width:1200px;
  border-top:1px solid #ddd9ce;
}

.prom-stripe{
  position:relative;
  border-bottom:1px solid #ddd9ce;
  background:#efece3;
  color:#11110f;
  overflow:hidden;
  transition:background .45s cubic-bezier(.22,.61,.36,1), color .45s cubic-bezier(.22,.61,.36,1);
}
.prom-stripe:nth-child(even){background:#e8e4d8}
.prom-stripe.is-open{
  background:var(--yellow);
  color:#11110f;
}

.prom-trigger{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:88px 1fr 48px;
  align-items:center;
  gap:12px;
  width:100%;
  min-height:90px;
  padding:0 28px;
  border:0;
  background:transparent;
  cursor:pointer;
  text-align:left;
  color:inherit;
  font:inherit;
}
.prom-bg-num{
  position:absolute;
  left:8px;
  top:50%;
  transform:translateY(-52%);
  font-size:clamp(72px,8vw,110px);
  font-weight:900;
  line-height:1;
  letter-spacing:-.04em;
  color:rgba(17,17,15,.07);
  pointer-events:none;
  z-index:0;
}
.prom-stripe.is-open .prom-bg-num{color:rgba(17,17,15,.1)}
.prom-num{
  position:relative;
  z-index:1;
  font-size:14px;
  font-weight:900;
  letter-spacing:.12em;
  color:#8a6b00;
}
.prom-stripe.is-open .prom-num{color:#11110f}
.prom-title{
  position:relative;
  z-index:1;
  font-size:clamp(18px,2.2vw,28px);
  font-weight:800;
  letter-spacing:-.02em;
  line-height:1.2;
  transition:font-size .45s cubic-bezier(.22,.61,.36,1);
}
.prom-stripe.is-open .prom-title{
  font-size:clamp(24px,3vw,36px);
}
.prom-title:after{
  content:"";
  display:block;
  width:0;
  height:3px;
  margin-top:8px;
  background:#11110f;
  border-radius:2px;
  transform:rotate(-.6deg);
  transition:width .45s cubic-bezier(.22,.61,.36,1) .12s;
}
.prom-stripe.is-open .prom-title:after{width:72px; background:#11110f}
.prom-arrow{
  position:relative;
  z-index:1;
  width:18px;
  height:18px;
  justify-self:end;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg);
  transition:transform .45s cubic-bezier(.22,.61,.36,1);
  opacity:.7;
}
.prom-stripe.is-open .prom-arrow{
  transform:rotate(225deg);
  opacity:1;
}

.prom-panel{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .45s cubic-bezier(.22,.61,.36,1);
}
.prom-stripe.is-open .prom-panel{grid-template-rows:1fr}
.prom-panel-inner{
  overflow:hidden;
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(180px,.8fr);
  gap:20px 32px;
  align-items:end;
  padding:0 28px;
  opacity:0;
  transform:translateY(10px);
  transition:opacity .35s ease, transform .35s ease, padding .45s cubic-bezier(.22,.61,.36,1);
}
.prom-stripe.is-open .prom-panel-inner{
  padding:8px 28px 28px;
  opacity:1;
  transform:translateY(0);
  transition-delay:.12s;
}
.prom-desc{
  margin:0;
  max-width:42ch;
  font-size:clamp(15px,1.5vw,18px);
  line-height:1.65;
  font-weight:600;
  color:#1c1b18;
}

.prom-extras{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:14px;
  flex-wrap:wrap;
  min-height:110px;
}
.prom-sketch-arrow{
  width:70px;
  height:36px;
  flex:0 0 auto;
  opacity:.85;
}
.prom-illu{
  position:relative;
  flex:0 0 auto;
}
.prom-illu-1{
  display:flex;
  gap:8px;
  align-items:flex-end;
}
.prom-bubble{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  height:36px;
  padding:0 12px;
  border:2px solid #11110f;
  background:#fff;
  font-size:12px;
  font-weight:900;
  position:relative;
}
.prom-bubble:after{
  content:"";
  position:absolute;
  left:12px;
  bottom:-7px;
  border:6px solid transparent;
  border-top-color:#11110f;
}
.prom-bubble:before{
  content:"";
  position:absolute;
  left:14px;
  bottom:-4px;
  border:4px solid transparent;
  border-top-color:#fff;
  z-index:1;
}
.prom-bubble.ka{
  background:#11110f;
  color:#ffd52e;
  transform:translateY(6px) rotate(3deg);
}
.prom-bubble.ka:after{border-top-color:#11110f}
.prom-bubble.ka:before{border-top-color:#11110f}
.prom-bubble.de{transform:rotate(-4deg)}

.prom-illu-2 svg,
.prom-illu-3 svg,
.prom-illu-4 svg{
  display:block;
  width:auto;
  height:72px;
}
.prom-illu-3 svg{height:44px; width:100px}
.prom-illu-4 svg{height:78px}

.prom-mini-doc{
  width:52px;
  height:68px;
  background:#fff;
  border:1.5px solid #11110f;
  padding:10px 8px;
  display:flex;
  flex-direction:column;
  gap:6px;
  transform:rotate(-4deg);
}
.prom-mini-doc.tilt{transform:rotate(5deg)}
.prom-mini-doc i{
  display:block;
  height:3px;
  background:#d4d0c4;
}
.prom-mini-doc i:nth-child(1){width:90%}
.prom-mini-doc i:nth-child(2){width:70%}
.prom-mini-doc i:nth-child(3){width:80%}

.prom-stamp{
  width:58px;
  height:58px;
  border:2.5px solid #11110f;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:10px;
  font-weight:900;
  letter-spacing:.06em;
  transform:rotate(-14deg);
  background:transparent;
}

.prom-stripe.is-open{
  min-height:240px;
}

@media (max-width:900px){
  .prom-trigger{
  grid-template-columns:56px 1fr 36px;
  padding:0 18px;
  min-height:84px;
  }
  .prom-panel-inner{
  grid-template-columns:1fr;
  gap:16px;
  }
  .prom-extras{justify-content:flex-start; min-height:0}
  .prom-stripe.is-open{min-height:0}
}

@media (max-width:767.98px){
  .why.klaro-promises{
  padding:64px 16px 88px;
  }
  .prom-head{margin-bottom:28px}
  .prom-head h2{font-size:clamp(26px,7vw,34px)}
  .prom-head p{font-size:15px}

  .prom-trigger{
  grid-template-columns:44px minmax(0,1fr) 28px;
  gap:8px;
  min-height:76px;
  padding:0 14px;
  }
  .prom-bg-num{
  font-size:64px;
  left:4px;
  }
  .prom-num{font-size:12px}
  .prom-title{
  font-size:15px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  }
  .prom-stripe.is-open .prom-title{
  font-size:18px;
  white-space:normal;
  }
  .prom-title:after{margin-top:6px}
  .prom-stripe.is-open .prom-title:after{width:48px}

  .prom-panel-inner{
  padding:0 14px;
  transition:opacity .25s ease, transform .25s ease, padding .3s ease;
  }
  .prom-stripe.is-open .prom-panel-inner{
  padding:4px 14px 72px;
  }
  .prom-desc{font-size:14px; max-width:none}
  .prom-illu-2 svg,
  .prom-illu-4 svg{height:56px}
  .prom-stamp{width:48px; height:48px; font-size:8px}
  .prom-mini-doc{width:42px; height:56px}

  .prom-list,
  .prom-stripe,
  .prom-trigger,
  .prom-panel{max-width:100%}
}

@media (hover:hover) and (pointer:fine){
  .prom-stripe:not(.is-open):hover{background:#e3dfd2}
}

@media (prefers-reduced-motion:reduce){
  .prom-stripe,
  .prom-panel,
  .prom-panel-inner,
  .prom-title,
  .prom-title:after,
  .prom-arrow{
  transition:none !important;
  }
  .prom-stripe.is-open .prom-panel-inner{transition-delay:0s}
}

/* ===== Klaro Help Desk ===== */
.home-faq.helpdesk{
  display:block;
  grid-template-columns:none;
  background:#f3efe6;
  padding:88px max(5vw,24px) 100px !important;
  overflow-x:clip;
}
.hd-head{
  max-width:720px;
  margin:0 auto 28px;
  text-align:center;
}
.hd-label{
  display:inline-block;
  color:#c9a20e;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:12px;
}
.hd-head h2{
  margin:0 0 12px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-0.03em;
  font-weight:800;
  color:#11110f;
}
.hd-head p{
  margin:0 auto;
  max-width:40ch;
  font-size:16px;
  line-height:1.6;
  color:#6a675e;
}

.hd-tabs{
  display:flex;
  gap:0;
  max-width:1100px;
  margin:0 auto;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  padding:0 2px;
  position:relative;
  z-index:2;
}
.hd-tabs::-webkit-scrollbar{display:none;}
.hd-tab{
  flex:0 0 auto;
  border:1px solid #d4cfc3;
  border-bottom:0;
  background:#eae4d8;
  color:#5f5c54;
  font:inherit;
  font-size:13px;
  font-weight:700;
  padding:12px 16px 14px;
  cursor:pointer;
  margin-right:4px;
  border-radius:6px 6px 0 0;
  position:relative;
  top:1px;
  transition:background .2s ease, color .2s ease;
}
.hd-tab:hover{color:#11110f;}
.hd-tab.is-on{
  background:#fffcf5;
  color:#11110f;
  border-color:#cfc8b8;
  box-shadow:inset 0 3px 0 var(--yellow);
  z-index:1;
}

.hd-folder{
  max-width:1100px;
  margin:0 auto;
  background:#fffcf5;
  border:1px solid #cfc8b8;
  position:relative;
  min-height:420px;
  display:grid;
  grid-template-columns:minmax(280px, .95fr) minmax(300px, 1.15fr);
  gap:0;
}
.hd-list{
  border-right:1px solid #e4dfd2;
  padding:8px 0;
}
.hd-item{
  border-bottom:1px solid #e8e3d7;
}
.hd-item:last-child{border-bottom:0;}
.hd-item.is-hidden{display:none;}
.hd-q{
  width:100%;
  display:grid;
  grid-template-columns:44px 1fr 14px;
  align-items:center;
  gap:10px;
  border:0;
  background:transparent;
  text-align:left;
  padding:18px 22px;
  cursor:pointer;
  font:inherit;
  color:#11110f;
}
.hd-num{
  font-size:13px;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  color:#9a968a;
  transition:color .2s ease;
}
.hd-q-text{
  font-size:15px;
  font-weight:700;
  line-height:1.4;
}
.hd-ind{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#d4d0c4;
  justify-self:end;
  transition:background .2s ease, box-shadow .2s ease;
}
.hd-q:hover .hd-num,
.hd-item.is-active .hd-num{color:var(--yellow);}
.hd-q:hover .hd-ind,
.hd-item.is-active .hd-ind{
  background:var(--yellow);
  box-shadow:0 0 0 3px rgba(255,213,46,.28);
}
.hd-q:focus-visible{
  outline:2px solid #11110f;
  outline-offset:-2px;
}

.hd-a{display:none;}
.hd-panel{
  position:relative;
  padding:36px 36px 32px;
  min-height:380px;
}
.hd-panel .hd-a-inner,
.hd-a-inner{
  position:relative;
  opacity:1;
  transform:translateY(0);
  transition:opacity .35s ease, transform .35s ease;
}
.hd-panel.is-animating .hd-a-inner{
  opacity:0;
  transform:translateY(10px);
}
.hd-bulb{
  position:absolute;
  top:18px;
  right:22px;
  opacity:.9;
  pointer-events:none;
}
.hd-a-label{
  margin:0 0 14px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#8a6b00;
}
.hd-a-title{
  margin:0 0 16px;
  max-width:18em;
  font-size:clamp(22px, 2.4vw, 30px);
  line-height:1.25;
  letter-spacing:-0.02em;
  font-weight:800;
  color:#11110f;
  padding-right:36px;
}
.hd-a-body{
  font-size:16px;
  line-height:1.7;
  color:#3a3832;
  max-width:42ch;
}
.hd-a-body p{margin:0 0 12px;}
.hd-a-body ul{
  margin:0 0 12px;
  padding-left:1.15em;
}
.hd-a-body li{margin:0 0 6px;}
.hd-mark{
  background:linear-gradient(transparent 58%, rgba(255,213,46,.72) 58%);
  color:inherit;
  padding:0 .05em;
}
.hd-more{
  display:inline-flex;
  margin-top:22px;
  font-size:14px;
  font-weight:800;
  color:#11110f;
  border-bottom:2px solid var(--yellow);
  padding-bottom:2px;
}
.hd-more:hover{color:#8a6b00;}

.hd-empty{
  grid-column:1 / -1;
  padding:56px 28px;
  text-align:center;
}
.hd-empty[hidden]{display:none !important;}
.hd-empty p{
  margin:0 0 22px;
  font-size:clamp(18px, 2.2vw, 24px);
  font-weight:700;
  line-height:1.45;
  color:#11110f;
  max-width:28ch;
  margin-inline:auto;
}
.hd-wa{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:14px 22px;
  background:var(--yellow);
  color:#11110f;
  font-weight:800;
  font-size:15px;
  border-radius:2px;
}
.hd-wa:hover{filter:brightness(.97);}

.hd-folder.is-empty .hd-list,
.hd-folder.is-empty .hd-panel{display:none;}

/* Service-page helpdesk (no topic tabs) */
.helpdesk--service .hd-folder{
  border-radius:4px;
  margin-top:8px;
}
.helpdesk--service .hd-head{
  margin-bottom:32px;
}

@media (max-width:900px){
  .home-faq.helpdesk{
  padding:72px 20px 88px !important;
  }
  .hd-folder{
  grid-template-columns:1fr;
  min-height:0;
  }
  .hd-list{
  border-right:0;
  padding:0;
  }
  .hd-panel{display:none !important;}
  .hd-a{
  display:block;
  border-top:1px solid #ebe6da;
  background:#fff;
  padding:0;
  }
  .hd-a[hidden]{display:none !important;}
  .hd-a-inner{
  padding:20px 18px 24px;
  position:relative;
  }
  .hd-a-title{
  font-size:20px;
  padding-right:40px;
  }
  .hd-a-body{
  font-size:16px;
  line-height:1.7;
  max-width:none;
  }
  .hd-q{
  padding:16px 16px;
  grid-template-columns:40px 1fr 12px;
  }
  .hd-q-text{font-size:15px;}
  .hd-bulb{top:14px; right:14px;}
  .hd-empty{padding:40px 18px;}
  .hd-wa{width:100%;}
  .hd-tab{font-size:12px; padding:11px 13px 13px;}
}

@media (max-width:430px){
  .home-faq.helpdesk{
  padding:64px 16px 80px !important;
  }
  .hd-head h2{font-size:clamp(26px, 8vw, 34px);}
}

@media (prefers-reduced-motion: reduce){
  .hd-panel .hd-a-inner,
  .hd-tab{
  transition:none !important;
  }
}


/* ===== Ask First ===== */
.ask-first{
  position:relative;
  background:#0e0e0c;
  color:#f7f4ec;
  padding:clamp(72px, 9vw, 110px) max(5vw, 24px);
  overflow:hidden;
}
.ask-inner{
  position:relative;
  z-index:1;
  max-width:820px;
}
.ask-label{
  display:inline-block;
  color:var(--yellow);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:14px;
}
.ask-head h2{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-0.03em;
  font-weight:800;
  color:#fff;
  max-width:16em;
}
.ask-head p{
  margin:0 0 36px;
  max-width:40ch;
  font-size:16px;
  line-height:1.6;
  color:rgba(247,244,236,.58);
}
.ask-sr{
  position:absolute;
  width:1px;height:1px;
  padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);
  white-space:nowrap;border:0;
}
.ask-field{
  position:relative;
  border-bottom:1.5px solid rgba(255,255,255,.28);
  padding-bottom:14px;
}
.ask-field textarea{
  display:block;
  width:100%;
  min-height:140px;
  border:0;
  background:transparent;
  resize:vertical;
  font:inherit;
  font-size:clamp(18px, 2.2vw, 24px);
  font-weight:700;
  line-height:1.45;
  letter-spacing:-0.02em;
  color:#fff;
  padding:8px 0 64px;
  outline:none;
}
.ask-field textarea::placeholder{
  color:rgba(247,244,236,.32);
  font-weight:600;
}
.ask-send{
  position:absolute;
  right:0;
  bottom:14px;
  border:0;
  background:var(--yellow);
  color:#11110f;
  font:inherit;
  font-weight:800;
  font-size:14px;
  padding:14px 20px;
  cursor:pointer;
  border-radius:2px;
  transition:opacity .35s ease, filter .2s ease;
}
.ask-send.is-idle,
.ask-send:disabled{
  opacity:.38;
  cursor:not-allowed;
}
.ask-send:not(:disabled):hover{filter:brightness(.96);}
.ask-hint{
  margin:10px 0 0;
  font-size:13px;
  font-weight:600;
  color:#ffb4a8;
}
.ask-hint[hidden]{display:none !important;}
.ask-topics{
  display:flex;
  flex-wrap:wrap;
  gap:14px 22px;
  margin-top:22px;
}
.ask-topic{
  border:0;
  background:none;
  padding:0 0 4px;
  font:inherit;
  font-size:14px;
  font-weight:700;
  color:rgba(247,244,236,.48);
  cursor:pointer;
  border-bottom:2px solid transparent;
  transition:color .2s ease, border-color .2s ease;
}
.ask-topic:hover{color:rgba(247,244,236,.85);}
.ask-topic.is-on{
  color:var(--yellow);
  border-bottom-color:var(--yellow);
}
.ask-trust{
  list-style:none;
  margin:36px 0 0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:10px 28px;
  font-size:13px;
  font-weight:600;
  color:rgba(247,244,236,.45);
}
.ask-bulb{
  position:absolute;
  right:max(-20px, 4vw);
  top:50%;
  transform:translateY(-48%);
  width:min(280px, 32vw);
  height:auto;
  color:rgba(255,255,255,.07);
  pointer-events:none;
  z-index:0;
}
.ask-bulb-glow{
  fill:rgba(255,213,46,0);
  transition:fill .6s ease;
}
.ask-first.is-typing .ask-bulb-glow{
  fill:rgba(255,213,46,.22);
}
.ask-first.is-typing .ask-bulb{
  color:rgba(255,255,255,.1);
}

@media (max-width:900px){
  .ask-first{
  padding:72px 20px 80px;
  }
  .ask-head h2{max-width:none;}
  .ask-composer{display:flex; flex-direction:column;}
  .ask-topics{
  order:-1;
  flex-wrap:nowrap;
  overflow-x:auto;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  margin:0 0 20px;
  padding-bottom:4px;
  gap:18px;
  }
  .ask-topics::-webkit-scrollbar{display:none;}
  .ask-topic{flex:0 0 auto; white-space:nowrap;}
  .ask-field{
  display:flex;
  flex-direction:column;
  gap:16px;
  border-bottom:0;
  padding-bottom:0;
  }
  .ask-field textarea{
  min-height:120px;
  padding:12px 0 8px;
  border-bottom:1.5px solid rgba(255,255,255,.28);
  }
  .ask-send{
  position:static;
  width:100%;
  text-align:center;
  }
  .ask-trust{
  flex-direction:column;
  gap:8px;
  margin-top:28px;
  }
  .ask-bulb{
  right:-30px;
  top:auto;
  bottom:-40px;
  transform:none;
  width:160px;
  opacity:.9;
  }
}

.whatsapp-wrap.wa-hide-ask{
  opacity:0;
  pointer-events:none;
  visibility:hidden;
}

@media (max-width:430px){
  .ask-first{padding:64px 16px 72px;}
  .ask-head h2{font-size:clamp(26px, 8vw, 34px);}
}

@media (prefers-reduced-motion: reduce){
  .ask-bulb-glow,
  .ask-send,
  .ask-bulb{
  transition:none !important;
  }
}

/* ===== Floating WhatsApp button ===== */
.whatsapp-wrap{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:25;
  display:flex;
  flex-direction:row;
  align-items:center;
  gap:10px;
  pointer-events:none;
  transition:opacity .25s ease, visibility .25s ease;
}
.whatsapp-wrap .whatsapp,
.whatsapp-wrap .whatsapp-tip{
  pointer-events:auto;
}
a.whatsapp{
  position:relative;
  right:auto;
  bottom:auto;
  width:60px;
  height:60px;
  border-radius:50%;
  background:#25D366;
  color:#fff;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:0;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
  transition:transform .2s ease, box-shadow .2s ease;
  flex:0 0 auto;
}
a.whatsapp:hover{
  transform:translateY(-3px) scale(1.04);
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
a.whatsapp:focus-visible{
  outline:2px solid #11110f;
  outline-offset:3px;
}
a.whatsapp .whatsapp-icon,
.whatsapp svg.whatsapp-icon{
  width:30px;
  height:30px;
  display:block;
  color:#fff;
  fill:currentColor;
  line-height:1;
}

.whatsapp-tip{
  max-width:220px;
  padding:10px 14px;
  background:#fff;
  color:#11110f;
  border:1px solid #e5e3da;
  border-radius:14px 14px 4px 14px;
  font-size:13px;
  font-weight:700;
  line-height:1.4;
  box-shadow:0 8px 24px rgba(0,0,0,.1);
  opacity:0;
  transform:translateX(8px);
  transition:opacity .25s ease, transform .25s ease;
  pointer-events:none;
}
.whatsapp-tip.is-on{
  opacity:1;
  transform:translateX(0);
}
.whatsapp-tip[hidden]{display:none !important}

@media (max-width:767.98px){
  .whatsapp-wrap{
  right:14px;
  bottom:16px;
  flex-direction:column;
  align-items:flex-end;
  gap:8px;
  z-index:40;
  transition:bottom .25s ease, opacity .25s ease;
  }
  .whatsapp-wrap.wa-lift{
  bottom:96px;
  }
  .whatsapp-wrap.wa-lift-reviews{
  bottom:110px;
  }
  a.whatsapp{
  width:54px;
  height:54px;
  }
  a.whatsapp .whatsapp-icon,
  .whatsapp svg.whatsapp-icon{
  width:26px;
  height:26px;
  font-size:26px;
  }
  .whatsapp-tip{
  max-width:min(220px, calc(100vw - 90px));
  border-radius:14px 14px 14px 4px;
  font-size:12px;
  }
}

@media (prefers-reduced-motion:reduce){
  a.whatsapp,
  .whatsapp-tip{
  transition:none !important;
  }
  a.whatsapp:hover{transform:none}
}

/* ===== შენ / Klaro process ===== */
.process.you-klaro{
  background:#f3efe6;
  padding:88px max(5vw,24px) 100px !important;
  overflow-x:clip;
  text-align:left;
}
.yk-head{
  max-width:760px;
  margin:0 0 48px;
}
.yk-label{
  display:inline-block;
  color:#c9a20e;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:12px;
}
.yk-head h2{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-0.03em;
  font-weight:800;
  color:#11110f;
}
.yk-head p{
  margin:0;
  max-width:42ch;
  font-size:16px;
  line-height:1.65;
  color:#6a675e;
}

.yk-stages{
  max-width:1100px;
  margin:0 auto;
  border-top:1px solid #d8d2c4;
  container-type:inline-size;
  container-name:yk-stages;
}

.yk-stage{
  --split:50%;
  position:relative;
  z-index:0;
  display:grid;
  grid-template-columns:
  minmax(0, var(--split))
  minmax(0, calc(100% - var(--split)));
  align-items:stretch;
  min-height:168px;
  border-bottom:1px solid #d8d2c4;
  overflow:visible;
}
.yk-you{
  grid-column:1;
  grid-row:1;
}
.yk-klaro{
  grid-column:2;
  grid-row:1;
}
.yk-num,
.process-number{
  position:absolute;
  left:var(--split);
  top:50%;
  transform:translate(-50%, -50%);
  z-index:10;
  transition:transform .45s cubic-bezier(.22,.7,.25,1);

  display:grid;
  place-items:center;

  width:52px;
  height:52px;
  box-sizing:border-box;

  background:#ffd329;
  color:#0e0e0c;
  border:2px solid #0e0e0c;
  border-radius:50%;

  font-size:15px;
  font-weight:800;
  line-height:1;
  letter-spacing:.04em;

  white-space:nowrap;
  overflow:visible;
  pointer-events:none;
  user-select:none;
}

.yk-you,
.yk-klaro{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
  padding:36px clamp(20px, 3vw, 40px);
  overflow:visible;
}

.yk-you{
  background:#f3efe6;
  color:#11110f;
  padding-right:55px;
}

.yk-klaro{
  background:#11110f;
  color:#f7f4ec;
  padding-left:55px;
  transition:transform .45s cubic-bezier(.22,.7,.25,1), box-shadow .45s cubic-bezier(.22,.7,.25,1);
  will-change:transform;
}

.yk-klaro::before{
  content:"";
  position:absolute;
  left:0;
  top:28px;
  bottom:28px;
  width:3px;
  background:var(--yellow);
  opacity:.85;
}

/* Fills the gap on the right when the panel slides left no layout reflow */
.yk-klaro::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  left:100%;
  width:0;
  background:#11110f;
  transition:width .45s cubic-bezier(.22,.7,.25,1);
  pointer-events:none;
  z-index:-1;
}

.yk-side{
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  opacity:.55;
}

.yk-klaro .yk-side{
  color:var(--yellow);
  opacity:.9;
}

.yk-you p,
.yk-klaro p{
  margin:0;
  max-width:18em;
  font-size:clamp(18px, 2.1vw, 26px);
  line-height:1.35;
  font-weight:800;
  letter-spacing:-0.02em;
}

.yk-mark{
  background:transparent;
  color:inherit;
  padding:0 .04em;
  transition:background-color .45s ease;
}

@media (hover:hover) and (pointer:fine){
  .yk-stage:hover{
  z-index:2;
  }
  .yk-stage:hover .yk-klaro{
  transform:translateX(-4cqi);
  box-shadow:-18px 0 28px rgba(0,0,0,.18);
  z-index:3;
  }
  .yk-stage:hover .yk-klaro::after{
  width:4cqi;
  }
  .yk-stage:hover .yk-num,
  .yk-stage:hover .process-number{
  transform:translate(calc(-50% - 4cqi), -50%);
  }
  .yk-stage:hover .yk-mark{
  background:linear-gradient(transparent 56%, rgba(255,213,46,.75) 56%);
  }
}

@media (prefers-reduced-motion: reduce){
  .yk-klaro,
  .yk-klaro::after,
  .yk-num,
  .process-number{
  transition:none;
  }
}

.yk-foot{
  max-width:1100px;
  margin:40px auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  /* Do not inherit site <footer> chrome (black bar / white ink). */
  background:transparent;
  color:inherit;
  padding:0;
  border:0;
}
.yk-result{
  margin:0;
  font-size:clamp(18px, 2vw, 24px);
  font-weight:800;
  letter-spacing:-0.02em;
  color:#11110f;
  max-width:22ch;
  line-height:1.3;
}
.yk-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 24px;
  background:var(--yellow);
  color:#11110f;
  font-weight:800;
  font-size:15px;
  border-radius:2px;
  flex-shrink:0;
}
.yk-cta:hover{filter:brightness(.97);}

@media (max-width:900px){
  .process.you-klaro{
  padding:72px 20px 80px !important;
  }
  .yk-stage{
  display:flex;
  flex-direction:column;
  min-height:0;
  grid-template-columns:none;
  overflow:visible;
  }
  .yk-you{order:2; grid-column:auto; grid-row:auto; padding-right:clamp(20px, 3vw, 40px);}
  .yk-klaro{
  order:3;
  grid-column:auto;
  grid-row:auto;
  padding-left:clamp(20px, 3vw, 40px);
  transform:none !important;
  box-shadow:none !important;
  transition:none;
  }
  .yk-klaro::after{
  display:none;
  }
  .yk-num,
  .process-number{
  order:1;
  position:static;
  left:auto;
  top:auto;
  transform:none !important;
  transition:none;
  width:44px;
  height:44px;
  margin:18px 0 16px;
  font-size:14px;
  align-self:flex-start;
  z-index:auto;
  }
  .yk-you,
  .yk-klaro{
  width:100%;
  padding:22px 18px 26px;
  }
  .yk-klaro::before{
  top:0;
  bottom:auto;
  left:18px;
  right:18px;
  width:auto;
  height:3px;
  }
  .yk-you p,
  .yk-klaro p{
  max-width:none;
  font-size:clamp(17px, 4.6vw, 22px);
  }
  .yk-foot{
  flex-direction:column;
  align-items:stretch;
  gap:18px;
  margin-top:32px;
  }
  .yk-result{max-width:none;}
  .yk-cta{width:100%;}
}

@media (max-width:430px){
  .process.you-klaro{
  padding:64px 16px 72px !important;
  }
  .yk-head h2{font-size:clamp(26px, 8vw, 34px);}
}

@media (prefers-reduced-motion: reduce){
  .yk-stage,
  .yk-num,
  .yk-mark{
  transition:none !important;
  }
}

/* Klaro Review Stream */
.review-stream{
  --rst-bg:#0e0e0c;
  --rst-yellow:#ffd52e;
  --rst-cream:#f3eee4;
  --rst-ink:#11110f;
  --rst-muted:rgba(243,238,228,.48);
  background:var(--rst-bg);
  color:var(--rst-cream);
  overflow-x:clip;
  padding:clamp(72px, 9vw, 110px) 0 !important;
  position:relative;
}
.rstream-inner{
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:0 max(5vw, 24px);
}
.rstream-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:28px;
  margin-bottom:clamp(36px, 5vw, 56px);
}
.rstream-label{
  display:inline-block;
  color:var(--rst-yellow);
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  margin-bottom:10px;
}
.rstream-heading h2{
  margin:0;
  max-width:14em;
  font-size:clamp(28px, 3.6vw, 46px);
  line-height:1.15;
  letter-spacing:-0.025em;
  color:#fff;
  font-weight:800;
}
.rstream-avg{
  text-align:right;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:4px;
  flex-shrink:0;
}
.rstream-avg strong{
  font-size:clamp(26px, 2.8vw, 34px);
  line-height:1;
  color:#fff;
  font-variant-numeric:tabular-nums;
}
.rstream-avg-stars{
  color:var(--rst-yellow);
  letter-spacing:2px;
  font-size:15px;
}
.rstream-count{
  font-size:13px;
  font-weight:600;
  color:var(--rst-muted);
}
.rstream-flow{
  position:relative;
  margin:0 calc(50% - 50vw);
  width:100vw;
  padding:28px 0 36px;
  overflow:hidden;
}
.rstream-glow{
  position:absolute;
  left:50%;
  top:50%;
  width:min(680px, 80vw);
  height:280px;
  transform:translate(-50%, -50%) scale(.6);
  opacity:0;
  background:radial-gradient(
  ellipse at center,
  rgba(255,213,46,.28) 0%,
  rgba(255,213,46,.10) 35%,
  transparent 72%
  );
  filter:blur(30px);
  pointer-events:none;
  transition:opacity 420ms ease, transform 420ms ease;
  z-index:0;
}
.review-stream.is-detail-open .rstream-glow{
  opacity:1;
  transform:translate(-50%, -50%) scale(1);
}
.rstream-rows{
  display:flex;
  flex-direction:column;
  gap:22px;
  position:relative;
  z-index:1;
}
.rstream-row{
  overflow:hidden;
  mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
}
.rstream-track{
  display:flex;
  align-items:center;
  width:max-content;
  gap:0;
  will-change:transform;
}
.rstream-row[data-dir="left"] .rstream-track{
  animation:rstream-left 95s linear infinite;
}
.rstream-row[data-dir="right"] .rstream-track{
  animation:rstream-right 110s linear infinite;
}
.rstream-row:nth-child(3) .rstream-track{
  animation-duration:120s;
}
.rstream-row.is-paused .rstream-track,
.rstream-row:hover .rstream-track,
.review-stream.is-frozen .rstream-track{
  animation-play-state:paused;
}
@keyframes rstream-left{
  from{transform:translateX(0)}
  to{transform:translateX(-50%)}
}
@keyframes rstream-right{
  from{transform:translateX(-50%)}
  to{transform:translateX(0)}
}
.rstream-item{
  display:inline-flex;
  align-items:center;
  gap:18px;
  flex:0 0 auto;
  border:0;
  background:transparent;
  padding:6px 4px;
  margin:0;
  cursor:pointer;
  font:inherit;
  font-size:clamp(15px, 1.55vw, 22px);
  font-weight:700;
  letter-spacing:-0.01em;
  line-height:1.35;
  white-space:nowrap;
  color:rgba(255,255,255,.78);
  transition:color 180ms ease, opacity 180ms ease;
}
.rstream-item[data-tone="muted"]{color:rgba(243,238,228,.42);}
.rstream-item[data-tone="accent"]{color:var(--rst-yellow);}
.rstream-item[data-tone="white"]{color:rgba(255,255,255,.88);}
.rstream-item::after{
  content:"★";
  color:rgba(255,213,46,.55);
  font-size:.72em;
  margin-left:18px;
}
.rstream-row.is-dim .rstream-item{opacity:.35;}
.rstream-row.is-paused .rstream-item,
.rstream-row:hover .rstream-item{opacity:1;}
.rstream-row.is-paused .rstream-item:hover,
.rstream-item:hover,
.rstream-item:focus-visible{
  color:#fff;
  outline:none;
}
.rstream-item[data-tone="accent"]:hover,
.rstream-item[data-tone="accent"]:focus-visible{
  color:var(--rst-yellow);
}
.rstream-static{
  display:flex;
  flex-wrap:wrap;
  gap:14px 22px;
  justify-content:center;
  max-width:1100px;
  margin:0 auto;
  padding:0 max(5vw, 24px);
  position:relative;
  z-index:1;
}
.rstream-static .rstream-item{
  white-space:normal;
  max-width:28ch;
  text-align:left;
}
.rstream-static .rstream-item::after{display:none;}
.rstream-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:clamp(36px, 5vw, 52px);
  padding-top:22px;
  border-top:1px solid rgba(255,255,255,.1);
}
.rstream-link{
  border:0;
  background:none;
  color:rgba(255,255,255,.75);
  font:inherit;
  font-size:15px;
  font-weight:700;
  cursor:pointer;
  text-decoration:underline;
  text-underline-offset:4px;
  padding:0;
}
.rstream-link:hover{color:#fff;}
.rstream-cta,
.rstream-submit,
.rstream-load-more{
  appearance:none;
  border:0;
  background:var(--rst-yellow);
  color:var(--rst-ink);
  font:inherit;
  font-weight:800;
  padding:14px 22px;
  cursor:pointer;
  border-radius:2px;
}
.rstream-cta:hover,
.rstream-submit:hover,
.rstream-load-more:hover{filter:brightness(.96);}

/* Detail overlay / bottom sheet */
.rstream-detail{
  position:fixed;
  inset:0;
  z-index:80;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.rstream-detail[hidden]{display:none !important;}
.rstream-detail-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(8,8,6,.55);
  cursor:pointer;
}
.rstream-detail-panel{
  position:relative;
  z-index:1;
  width:min(100%, 560px);
  background:#16150f;
  color:#f7f4ec;
  border:1px solid rgba(255,255,255,.1);
  padding:36px 32px 28px;
  box-shadow:0 24px 60px rgba(0,0,0,.35);
}
.rstream-detail-close{
  position:absolute;
  top:12px;
  right:14px;
  border:0;
  background:transparent;
  color:rgba(255,255,255,.7);
  font-size:28px;
  line-height:1;
  cursor:pointer;
}
.rstream-detail-stars{
  color:var(--rst-yellow);
  letter-spacing:3px;
  font-size:16px;
  margin-bottom:14px;
}
.rstream-detail-quote{
  margin:0 0 22px;
  font-size:clamp(20px, 2.4vw, 28px);
  line-height:1.4;
  font-weight:700;
  letter-spacing:-0.02em;
}
.rstream-detail-meta{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin-bottom:14px;
}
.rstream-detail-meta b{font-size:15px;}
.rstream-detail-meta span,
.rstream-detail-meta time{
  font-size:13px;
  color:var(--rst-muted);
}
.rstream-detail-badge{
  margin:0;
  font-size:11px;
  font-weight:600;
  letter-spacing:.04em;
  color:rgba(255,213,46,.7);
}

/* Archive modal */
.rstream-archive{
  width:min(96vw, 820px);
  max-height:min(88vh, 860px);
  border:1px solid #2a2820;
  border-radius:4px;
  padding:0;
  background:#14130f;
  color:#f7f4ec;
}
.rstream-archive::backdrop{background:rgba(8,8,6,.6);}
.rstream-archive-inner{padding:22px 22px 26px;}
.rstream-archive-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.rstream-archive-head h3{margin:0; font-size:24px; color:#fff;}
.rstream-archive .rstream-detail-close{position:static;}
.rstream-filters{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:12px;
  margin-bottom:18px;
}
.rstream-filters label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-size:12px;
  font-weight:700;
  color:var(--rst-muted);
}
.rstream-filters select{
  font:inherit;
  font-weight:600;
  border:1px solid rgba(255,255,255,.14);
  background:#1c1b16;
  color:#fff;
  padding:10px 12px;
  border-radius:2px;
}
.rstream-archive-list{
  display:grid;
  gap:12px;
  max-height:min(52vh, 480px);
  overflow:auto;
  padding-right:4px;
}
.rstream-card{
  border:0;
  border-bottom:1px solid rgba(255,255,255,.08);
  background:transparent;
  text-align:left;
  padding:14px 4px 16px;
  color:inherit;
  cursor:pointer;
  width:100%;
  font:inherit;
}
.rstream-card:hover{background:rgba(255,255,255,.03);}
.rstream-card-stars{color:var(--rst-yellow); letter-spacing:2px; font-size:13px; margin-bottom:8px;}
.rstream-card-text{margin:0 0 10px; font-size:15px; line-height:1.5; font-weight:600;}
.rstream-card-meta{display:flex; flex-wrap:wrap; gap:8px 14px; font-size:12px; color:var(--rst-muted);}
.rstream-load-more{width:100%; margin-top:16px;}

/* Form dialog */
.rstream-form-dialog{
  width:min(92vw, 460px);
  border:1px solid #d8d0bf;
  border-radius:4px;
  padding:0;
  background:#fffcf6;
  color:#11110f;
}
.rstream-form-dialog::backdrop{background:rgba(14,14,12,.55);}
.rstream-form,
.rstream-thanks{padding:22px 22px 24px;}
.rstream-form-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:18px;
}
.rstream-form-head h3{margin:0; font-size:20px;}
.rstream-form-dialog .rstream-detail-close{
  position:static;
  color:#6f6a5c;
}
.rstream-stars-field{border:0; margin:0 0 16px; padding:0;}
.rstream-stars-field legend{font-size:13px; font-weight:700; margin-bottom:8px;}
.rstream-star-pick{display:flex; gap:6px;}
.rstream-star-pick button{
  border:0;
  background:transparent;
  font-size:28px;
  color:#d4cdb8;
  cursor:pointer;
  padding:0;
  line-height:1;
}
.rstream-star-pick button.is-on{color:#e6b800;}
.rstream-field{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:14px;
  font-size:13px;
  font-weight:700;
}
.rstream-field input,
.rstream-field select,
.rstream-field textarea{
  font:inherit;
  font-weight:500;
  border:1px solid #d8d0bf;
  background:#fff;
  padding:11px 12px;
  border-radius:2px;
  color:#11110f;
}
.rstream-field textarea{resize:vertical; min-height:96px;}
.rstream-check{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0 0 14px;
  font-size:14px;
  font-weight:500;
  color:#5f5a4e;
}
.rstream-check input{margin-top:3px;}
.rstream-submit{width:100%; margin-top:4px;}
.rstream-form-note{
  margin:12px 0 0;
  font-size:12px;
  line-height:1.45;
  color:#8a8476;
}
.rstream-thanks{text-align:center;}
.rstream-thanks p{margin:12px 0 22px; font-size:17px; line-height:1.5;}
.rstream-thanks .rstream-submit{width:auto; min-width:140px;}

@media (max-width:900px){
  .rstream-top{
  flex-direction:column;
  gap:18px;
  }
  .rstream-avg{align-items:flex-start; text-align:left;}
  .rstream-row[data-mobile-hide="true"]{display:none;}
  .rstream-row[data-dir="left"] .rstream-track{animation-duration:130s;}
  .rstream-row[data-dir="right"] .rstream-track{animation-duration:145s;}
  .rstream-item{font-size:clamp(14px, 3.8vw, 17px);}
  .rstream-actions{
  flex-direction:column;
  align-items:stretch;
  }
  .rstream-link,
  .rstream-cta{width:100%; text-align:center; padding:14px 18px;}
  .rstream-link{
  border:1px solid rgba(255,255,255,.2);
  text-decoration:none;
  color:#fff;
  }
  .rstream-detail{
  align-items:flex-end;
  padding:0;
  }
  .rstream-detail-panel{
  width:100%;
  border-radius:16px 16px 0 0;
  padding:28px 22px 30px;
  max-height:85vh;
  overflow:auto;
  }
  .rstream-filters{grid-template-columns:1fr;}
}

@media (max-width:767.98px){
  .whatsapp-wrap.wa-lift-reviews{bottom:110px;}
}

@media (prefers-reduced-motion: reduce){
  .rstream-track{
  animation:none !important;
  transform:none !important;
  }
  .rstream-glow{transition:none !important;}
}
/* ===== Klaro dark mode + pull-cord (architecture v2) ===== */
:root{
  --theme-ease:400ms ease;
  --color-bg:#ffffff;
  --color-bg-secondary:#f7f6f0;
  --color-surface:#ffffff;
  --color-surface-raised:#ffffff;
  --color-text:#11110f;
  --color-text-secondary:#686862;
  --color-text-muted:#8a877c;
  --color-border:#deddd5;
  --color-border-strong:#c9c6bb;
  --color-accent:#ffd42a;
  --color-accent-hover:#ffe05c;
  --color-on-accent:#11120f;
  --color-paper:#f7f6f0;
  --color-paper-secondary:#efe9dc;
  --color-on-paper:#171814;
  --color-on-paper-muted:#615e55;
  --color-danger:#ff6b61;
  --color-focus:#ffd42a;
  --page-bg:var(--color-bg);
  --section-bg:var(--color-bg-secondary);
  --surface-bg:var(--color-surface);
  --surface-raised:var(--color-surface-raised);
  --text-primary:var(--color-text);
  --text-secondary:var(--color-text-secondary);
  --text-muted:var(--color-text-muted);
  --border-color:var(--color-border);
  --paper-bg:var(--color-paper);
  --paper-text:var(--color-on-paper);
  --paper-muted:var(--color-on-paper-muted);
  --klaro-yellow:var(--color-accent);
}

html[data-theme="dark"]{
  color-scheme:dark;
  --color-bg:#0f100e;
  --color-bg-secondary:#141512;
  --color-surface:#191a17;
  --color-surface-raised:#20211d;
  --color-text:#f4f1e8;
  --color-text-secondary:#c4c0b4;
  --color-text-muted:#a7a397;
  --color-border:rgba(244,241,232,.18);
  --color-border-strong:rgba(244,241,232,.34);
  --color-accent:#ffd42a;
  --color-accent-hover:#ffe05c;
  --color-on-accent:#11120f;
  --color-paper:#eee8da;
  --color-paper-secondary:#e2dac9;
  --color-on-paper:#171814;
  --color-on-paper-muted:#615e55;
  --color-danger:#ff6b61;
  --color-focus:#ffd42a;
  --page-bg:var(--color-bg);
  --section-bg:var(--color-bg-secondary);
  --surface-bg:var(--color-surface);
  --surface-raised:var(--color-surface-raised);
  --text-primary:var(--color-text);
  --text-secondary:var(--color-text-secondary);
  --text-muted:var(--color-text-muted);
  --border-color:var(--color-border);
  --yellow:var(--color-accent);
  --yellow2:rgba(255,212,42,.16);
  --ink:var(--color-text);
  --muted:var(--color-text-secondary);
  --paper:var(--color-bg-secondary);
  --line:var(--color-border);
  --white:var(--color-surface);
  --paper-bg:var(--color-paper);
  --paper-text:var(--color-on-paper);
  --paper-muted:var(--color-on-paper-muted);
  --klaro-yellow:var(--color-accent);
}

html[data-theme="dark"] body{
  background:var(--page-bg);
  color:var(--text-primary);
}
body{
  background:var(--page-bg);
  color:var(--text-primary);
  transition:background-color var(--theme-ease),color var(--theme-ease);
}

html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4{
  color:var(--text-primary);
}
html[data-theme="dark"] p,
html[data-theme="dark"] li{
  color:var(--text-secondary);
}

/* Paper islands keep dark ink */
html[data-theme="dark"] .hero-doc,
html[data-theme="dark"] .hero-doc header,
html[data-theme="dark"] .hero-doc footer,
html[data-theme="dark"] .hero-doc p,
html[data-theme="dark"] .weg-doc,
html[data-theme="dark"] .weg-doc p,
html[data-theme="dark"] .akten-sheet,
html[data-theme="dark"] .akten-panel-paper,
html[data-theme="dark"] .akten-panel-paper h3,
html[data-theme="dark"] .akten-panel-paper p,
html[data-theme="dark"] .akten-panel-paper li,
html[data-theme="dark"] .akten-foldout,
html[data-theme="dark"] .akten-foldout h3,
html[data-theme="dark"] .akten-foldout p,
html[data-theme="dark"] .akten-foldout li{
  color:var(--paper-text);
}

/* ===== Pull cord ===== */
.pull-cord{
  position:absolute;
  top:0;
  right:max(5vw,24px);
  z-index:30;
  --pull-y:0px;
  height:92px;
  display:flex;
  align-items:flex-start;
}
.header .nav{margin-right:56px}
.pull-cord-btn{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-start;
  width:48px;
  min-height:72px;
  padding:0 4px 8px;
  border:0;
  background:transparent;
  cursor:pointer;
  touch-action:pan-y;
  -webkit-tap-highlight-color:transparent;
  outline:none;
}
.pull-cord-btn:focus-visible{
  outline:2px solid var(--klaro-yellow);
  outline-offset:3px;
  border-radius:8px;
}
.pull-cord-visual{
  display:flex;
  flex-direction:column;
  align-items:center;
  transform:translateY(var(--pull-y));
  pointer-events:none;
}
.pull-cord-string{
  display:block;
  width:2px;
  height:42px;
  background:linear-gradient(180deg,#4a4840,#2e2c26);
  border-radius:1px;
}
.pull-cord-handle{
  display:block;
  width:14px;
  height:14px;
  margin-top:-1px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%,#ffe566,#ffd329 55%,#e6b800);
  box-shadow:0 1px 3px rgba(0,0,0,.35);
}
.pull-cord-tip{
  position:absolute;
  top:100%;
  right:0;
  margin-top:4px;
  padding:5px 8px;
  border-radius:4px;
  background:#1b1c18;
  color:#f2f0e8;
  font-size:11px;
  font-weight:700;
  white-space:nowrap;
  opacity:0;
  transform:translateY(-4px);
  pointer-events:none;
  transition:opacity .2s ease,transform .2s ease;
}
.pull-cord-btn:hover .pull-cord-tip,
.pull-cord-btn:focus-visible .pull-cord-tip{
  opacity:1;
  transform:none;
}
html[data-theme="dark"] .pull-cord-tip{
  background:#f2f0e8;
  color:#151613;
}
.pull-cord.is-pulling .pull-cord-visual{
  transition:transform 280ms cubic-bezier(.2,.7,.2,1);
  transform:translateY(44px);
}
.pull-cord.is-releasing .pull-cord-visual{
  transition:transform 320ms cubic-bezier(.33,1.05,.45,1);
  transform:translateY(0);
}
.pull-cord.is-dragging .pull-cord-visual{transition:none}
@media(max-width:900px){
  .pull-cord{
  position:relative;
  top:auto;right:auto;
  height:auto;
  margin-left:auto;
  margin-right:6px;
  order:2;
  align-items:center;
  }
  .header .nav{margin-right:0}
  .burger{order:3}
  .brand{order:1}
  .nav{order:4}
  .pull-cord-btn{width:44px;min-width:44px;min-height:44px;padding:0;justify-content:center}
  .pull-cord-string{height:22px}
  .pull-cord-handle{width:16px;height:16px}
  .pull-cord-tip{right:auto;left:50%;transform:translate(-50%,-4px)}
  .pull-cord-btn:hover .pull-cord-tip,
  .pull-cord-btn:focus-visible .pull-cord-tip{transform:translate(-50%,0)}
  .pull-cord.is-pulling .pull-cord-visual{transform:translateY(28px)}
}
@media(prefers-reduced-motion:reduce){
  .pull-cord.is-pulling .pull-cord-visual,
  .pull-cord.is-releasing .pull-cord-visual{
  transition:none;
  transform:none;
  }
}

/* ===== Klaro guide lamp: ambient bulb glow (dark only) ===== */
.page-wrapper{
  position:relative;
}
.klaro-guide-glow-layer{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:1;
  pointer-events:none;
  overflow:visible;
  opacity:0;
  visibility:hidden;
}
html[data-theme="dark"].theme-lamps-on .klaro-guide-glow-layer{
  opacity:1;
  visibility:visible;
}
.klaro-guide-glow{
  --glow-width:clamp(300px, 42vw, 520px);
  --glow-height:clamp(300px, 42vw, 520px);
  position:absolute;
  top:0;
  left:0;
  width:var(--glow-width);
  height:var(--glow-height);
  border-radius:50%;
  transform:translate3d(-9999px,-9999px,0) translate(-50%,-50%);
  pointer-events:none;
  background:radial-gradient(
  circle at center,
  rgba(255, 230, 145, .55) 0%,
  rgba(255, 220, 90, .28) 18%,
  rgba(255, 212, 42, .12) 40%,
  rgba(255, 212, 42, .04) 62%,
  transparent 78%
  );
  filter:blur(28px);
  opacity:1;
  transition:width 500ms ease, height 500ms ease, opacity 300ms ease;
  will-change:transform,width,height;
}
.klaro-guide-glow.is-flying{
  opacity:.45;
}
.klaro-guide-layer{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  z-index:6;
  pointer-events:none;
  overflow:visible;
}
.klaro-guide-lamp{
  position:absolute;
  top:0;
  left:0;
  width:56px;
  height:72px;
  opacity:0;
  visibility:hidden;
  transform:translate3d(-9999px,-9999px,0);
  will-change:transform;
  pointer-events:none;
}
html[data-theme="dark"].theme-lamps-on .klaro-guide-lamp{
  opacity:1;
  visibility:visible;
}
.klaro-guide-lamp__body{
  position:relative;
  z-index:2;
  width:56px;
  color:rgba(242,240,232,.82);
}
.klaro-guide-lamp__body::before{
  content:"";
  position:absolute;
  left:50%;
  top:36%;
  width:64px;
  height:64px;
  transform:translate(-50%,-50%);
  z-index:-1;
  border-radius:50%;
  background:
  radial-gradient(circle, rgba(255, 236, 160, .95) 0%, rgba(255, 212, 42, .55) 28%, rgba(255, 212, 42, .12) 58%, transparent 74%),
  radial-gradient(circle, rgba(255, 212, 42, .18) 0%, transparent 70%);
  pointer-events:none;
}
.klaro-guide-lamp__body svg{
  display:block;
  width:100%;
  height:auto;
}
.klaro-guide-lamp__fill{
  fill:var(--klaro-yellow, #ffd329);
}

/* Avoid stacking light-zone relative over absolute finish marker */
html[data-theme="dark"] .light-zone:not(.route-end){
  position:relative;
}
html[data-theme="dark"] .light-zone.light-zone--composition{
  display:block;
}
html[data-theme="dark"] .light-zone::after{
  content:"";
  position:absolute;
  inset:-80px -100px;
  z-index:-1;
  pointer-events:none;
  opacity:0;
  background:radial-gradient(
  ellipse at var(--target-light-x, 50%) 50%,
  rgba(255,218,85,.09) 0%,
  rgba(255,211,41,.035) 48%,
  transparent 76%
  );
  filter:blur(24px);
  transition:opacity 350ms ease;
}
html[data-theme="dark"].theme-lamps-on .light-zone.is-light-active::after{
  opacity:1;
}

/* ===== Lamp is decorative only: never dim readable content ===== */
html[data-theme="dark"].theme-lamps-on .light-zone,
html[data-theme="dark"].theme-lamps-on .light-ambient,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-ambient,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone.is-light-active,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone.is-light-active.light-ambient,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone.is-waking,
html[data-theme="dark"].theme-lamps-on .light-zone:focus-within:not(.is-light-active),
html[data-theme="dark"].theme-lamps-on .light-zone:has(
  a:hover,
  button:hover,
  input:hover,
  textarea:hover,
  select:hover
):not(.is-light-active){
  opacity:1;
  filter:none;
  transition:none;
}
html[data-theme="dark"].theme-lamps-on .header,
html[data-theme="dark"].theme-lamps-on .whatsapp-wrap,
html[data-theme="dark"].theme-lamps-on .girex-float,
html[data-theme="dark"].theme-lamps-on .back-to-top,
html[data-theme="dark"].theme-lamps-on .pull-cord,
html[data-theme="dark"].theme-lamps-on .page-wrapper > footer{
  opacity:1;
  filter:none;
}
html[data-theme="dark"].theme-lamps-on :is(a, button, input, textarea, select):focus-visible{
  outline:2px solid var(--klaro-yellow, #ffd329);
  outline-offset:3px;
}

.header{z-index:100}
.whatsapp-wrap{z-index:100}
.hero-stage{z-index:2}
.hero-copy{z-index:3}

@media(max-width:1024px){
  .klaro-guide-lamp{width:50px;height:66px}
  .klaro-guide-lamp__body{width:50px}
  .klaro-guide-lamp__body::before{width:58px;height:58px}
}
@media(max-width:900px){
  .page-wrapper{overflow-x:clip}
  .klaro-guide-lamp{width:42px;height:56px}
  .klaro-guide-lamp__body{width:42px}
  .klaro-guide-lamp__body::before{width:48px;height:48px}
  .klaro-guide-glow{
  filter:blur(24px);
  opacity:.85;
  --glow-width:clamp(180px, 55vw, 300px);
  --glow-height:clamp(180px, 55vw, 300px);
  }
  .klaro-guide-glow.is-flying{
  opacity:.4;
  }
  html[data-theme="dark"] .light-zone::after{
  inset:-48px -36px;
  }
  html[data-theme="dark"].theme-lamps-on .light-zone,
  html[data-theme="dark"].theme-lamps-on .light-ambient,
  html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone,
  html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-ambient{
  opacity:1;
  filter:none;
  }
}

@media(prefers-reduced-motion:reduce){
  .klaro-guide-glow,
  html[data-theme="dark"] .light-zone::after,
  html[data-theme="dark"].theme-lamps-on .light-zone,
  html[data-theme="dark"].theme-lamps-on .light-ambient{
  transition:opacity 200ms ease, filter 200ms ease !important;
  }
}

.page-wrapper > main,
.page-wrapper > footer{
  position:relative;
  z-index:5;
}

/* ===== Header ===== */
html[data-theme="dark"] .header{
  background:rgba(16,17,15,.94);
  border-bottom-color:var(--border-color);
  color:var(--text-primary);
  transition:background-color var(--theme-ease),border-color var(--theme-ease),color var(--theme-ease);
}
html[data-theme="dark"] .nav a:hover,
html[data-theme="dark"] .dropdown>button:hover{color:var(--klaro-yellow)}
html[data-theme="dark"] .drop-menu{
  background:var(--surface-raised);
  border-color:var(--border-color);
  box-shadow:0 18px 50px rgba(0,0,0,.45);
}
html[data-theme="dark"] .drop-menu a{color:var(--text-primary)}
html[data-theme="dark"] .drop-menu a:hover{background:var(--surface-bg);color:var(--text-primary)}
html[data-theme="dark"] .nav-cta,
html[data-theme="dark"] .primary{
  background:var(--klaro-yellow);
  color:#1a1808;
}
html[data-theme="dark"] .nav-cta:hover,
html[data-theme="dark"] .primary:hover{background:#ffe066;color:#1a1808}
html[data-theme="dark"] .burger{color:var(--text-primary)}
@media(max-width:900px){
  html[data-theme="dark"] .nav{
  background:var(--section-bg);
  border-bottom-color:var(--border-color);
  }
}

/* ===== Hero ===== */
html[data-theme="dark"] .hero{
  background:
  radial-gradient(ellipse 48% 40% at 72% 38%, rgba(255,212,42,.06) 0%, transparent 70%),
  var(--page-bg, #0f100e);
  color:var(--text-primary);
  border-bottom-color:var(--border-color);
  transition:background-color var(--theme-ease),color var(--theme-ease),border-color var(--theme-ease);
}
html[data-theme="dark"] .hero-title,
html[data-theme="dark"] .hero-highlight{color:var(--text-primary)}
html[data-theme="dark"] .hero-lead{
  color:var(--text-secondary);
  background:none !important;
}
html[data-theme="dark"] .hero-kicker{color:#c9a61a}
html[data-theme="dark"] .hero-highlight:after{background:rgba(255,211,41,.32)}
html[data-theme="dark"] .hero .secondary{
  color:var(--text-primary);
  border-bottom-color:var(--text-secondary);
}
html[data-theme="dark"] .hero-doc{
  background:var(--paper-bg);
  border-color:#d4cfc3;
  box-shadow:0 14px 36px rgba(0,0,0,.4);
  color:var(--paper-text);
}
html[data-theme="dark"] .hero-glow{
  opacity:.22;
  background:radial-gradient(circle,rgba(255,211,41,.08),transparent 68%);
}
html[data-theme="dark"].theme-lamps-on .hero-bulb-aura{
  opacity:.55;
  background:radial-gradient(circle,rgba(255,211,41,.14),transparent 70%);
}
html[data-theme="dark"].theme-lamps-on .hero-bulb-svg ellipse{fill:var(--klaro-yellow)}
html[data-theme="dark"] .hero-bulb-svg path{stroke:rgba(242,240,232,.7)}
html[data-theme="dark"] .hero-bulb-svg circle{fill:rgba(242,240,232,.7);stroke:none}
html[data-theme="dark"] .hero-bulb-label{color:var(--klaro-yellow)}
html[data-theme="dark"] .hero-arrows path{stroke:rgba(242,240,232,.28)}
html[data-theme="dark"] .hero-sticky{
  background:#2a2818;
  color:#f2f0e8;
  border:1px solid rgba(255,211,41,.35);
}
html[data-theme="dark"] .hero-sticky span{
  color:rgba(242,240,232,.7);
  opacity:1;
}
html[data-theme="dark"] .hero-seal,
html[data-theme="dark"] .hero-scribble{color:var(--text-secondary)}
@media(max-width:767.98px){
  html[data-theme="dark"] .hero,
  html[data-theme="dark"] .hero-copy{
  background:var(--page-bg, #0f100e) !important;
  }
  html[data-theme="dark"] .hero-kicker,
  html[data-theme="dark"] .hero-title,
  html[data-theme="dark"] .hero-lead,
  html[data-theme="dark"] .hero-actions{
  background:transparent !important;
  }
  html[data-theme="dark"] .hero-copy:after{
  background:#1b1c18;
  border-color:rgba(244,241,232,.14);
  box-shadow:0 8px 20px rgba(0,0,0,.35);
  opacity:.45;
  }
}

/* ===== Weg / statistics ===== */
html[data-theme="dark"] .wegweiser{
  background:var(--section-bg);
  border-bottom-color:var(--border-color);
  color:var(--text-primary);
  transition:background-color var(--theme-ease),color var(--theme-ease),border-color var(--theme-ease);
}
html[data-theme="dark"] .weg-intro{
  background:linear-gradient(90deg,var(--section-bg) 72%,transparent);
}
html[data-theme="dark"] .wegweiser h2{color:var(--text-primary)}
html[data-theme="dark"] .weg-lead{color:var(--text-secondary)}
html[data-theme="dark"] .weg-kicker{color:#d4b01a}
html[data-theme="dark"] .weg-num,
html[data-theme="dark"] .weg-num b{color:var(--text-primary)}
html[data-theme="dark"] .weg-cap,
html[data-theme="dark"] .weg-start-label{color:var(--text-secondary)}
html[data-theme="dark"] .weg-doc{
  background:var(--paper-bg);
  color:var(--paper-text);
  box-shadow:0 12px 28px rgba(0,0,0,.35);
}
html[data-theme="dark"] .weg-finish-text{color:var(--text-primary)}
html[data-theme="dark"] .weg-finish-cta,
html[data-theme="dark"] .mobile-contact-cta{
  background:var(--klaro-yellow);
  color:#1a1808;
}
html[data-theme="dark"].theme-lamps-on .weg-bulb-glow,
html[data-theme="dark"].theme-lamps-on .mobile-result-bulb .bulb-glow{
  opacity:.9;
  background:radial-gradient(circle,rgba(255,211,41,.28),transparent 70%);
}
html[data-theme="dark"].theme-lamps-on .weg-bulb .bulb-fill,
html[data-theme="dark"].theme-lamps-on .mobile-result-bulb .bulb-fill{
  fill:var(--klaro-yellow);
}
html[data-theme="dark"] .route-final-text{color:var(--text-primary)}

/* ===== Services / Akten ===== */
html[data-theme="dark"] .services.akten{
  background:var(--surface-bg);
  color:var(--text-primary);
  transition:background-color var(--theme-ease),color var(--theme-ease);
}
html[data-theme="dark"] .akten-head h2{color:var(--text-primary)}
html[data-theme="dark"] .akten-head p{color:var(--text-secondary)}
html[data-theme="dark"] .akten-desk{
  background:#141511;
  border-color:var(--border-color);
}
html[data-theme="dark"] .akten-tab{
  background:var(--klaro-yellow);
  color:#1a1808;
}
html[data-theme="dark"] .akten-sheet{
  background:linear-gradient(180deg,#ebe6db 0%,#e0dbd0 100%);
  border-color:#cfc8b8;
  color:var(--paper-text);
  box-shadow:0 10px 28px rgba(0,0,0,.4),inset 0 0 0 1px rgba(255,255,255,.35);
}
html[data-theme="dark"] .akten-meta{color:var(--paper-muted)}
html[data-theme="dark"] .akten-item.is-back{
  filter:none;
  opacity:1;
}
html[data-theme="dark"] .akten-item.is-back .akten-sheet{
  background:linear-gradient(180deg,#d8d3c8 0%,#cec9be 100%);
}
html[data-theme="dark"] .akten-item.is-back .akten-tab{
  background:#e0c44a;
  color:#1a1808;
}
html[data-theme="dark"] .akten-panel-paper{
  background:var(--paper-bg);
  color:var(--paper-text);
  box-shadow:0 16px 40px rgba(0,0,0,.4);
}
html[data-theme="dark"] .akten-panel-paper .akten-desc,
html[data-theme="dark"] .akten-panel-paper .akten-points{color:var(--paper-muted)}
html[data-theme="dark"] .akten-foldout{
  background:var(--paper-bg);
  color:var(--paper-text);
}
html[data-theme="dark"] .akten-cta{
  background:#11110f;
  color:#f2f0e8;
}
html[data-theme="dark"] .akten-cta span{color:var(--klaro-yellow)}
html[data-theme="dark"] .akten-foldout .akten-cta,
html[data-theme="dark"] .akten-panel-paper .akten-cta{
  color:#f2f0e8;
}

/* ===== Why Klaro ===== */
html[data-theme="dark"] .why.klaro-promises{
  background:var(--section-bg);
  color:var(--text-primary);
  transition:background-color var(--theme-ease),color var(--theme-ease);
}
html[data-theme="dark"] .prom-head h2{color:var(--text-primary)}
html[data-theme="dark"] .prom-head p{color:var(--text-secondary)}
html[data-theme="dark"] .prom-list{border-top-color:var(--border-color)}
html[data-theme="dark"] .prom-stripe{
  border-bottom-color:var(--border-color);
  background:transparent;
}
html[data-theme="dark"] .prom-stripe:nth-child(even){background:#181916}
html[data-theme="dark"] .prom-stripe.is-open{background:var(--surface-bg)}
html[data-theme="dark"] .prom-title,
html[data-theme="dark"] .prom-stripe.is-open .prom-title{color:var(--color-text)}
html[data-theme="dark"] .prom-num,
html[data-theme="dark"] .prom-stripe.is-open .prom-num{color:var(--color-accent);opacity:1}
html[data-theme="dark"] .prom-stripe.is-open .prom-title:after{background:var(--color-accent)}
html[data-theme="dark"] .prom-desc{color:var(--color-text-secondary)}
html[data-theme="dark"] .prom-bg-num,
html[data-theme="dark"] .prom-stripe.is-open .prom-bg-num{color:var(--color-accent);opacity:.16}
html[data-theme="dark"] .prom-arrow{border-color:var(--text-secondary)}

/* ===== Process You/Klaro ===== */
html[data-theme="dark"] .process.you-klaro{
  background:var(--section-bg);
  transition:background-color var(--theme-ease);
}
html[data-theme="dark"] .yk-head h2{color:var(--text-primary)}
html[data-theme="dark"] .yk-head p{color:var(--text-secondary)}
html[data-theme="dark"] .yk-label{color:#d4b01a}
html[data-theme="dark"] .yk-stages{
  border-top-color:var(--border-color);
}
html[data-theme="dark"] .yk-you{
  background:var(--color-paper, #f3efe6);
  color:var(--color-on-paper, #11110f);
}
html[data-theme="dark"] .yk-klaro{
  background:#121310;
  color:var(--text-primary);
}
html[data-theme="dark"] .yk-you p{
  color:var(--color-on-paper, #11110f);
  opacity:1;
}
html[data-theme="dark"] .yk-klaro p{
  color:var(--text-primary);
  opacity:1;
}
html[data-theme="dark"] .yk-side{
  color:rgba(17,17,15,.5);
  opacity:1;
}
html[data-theme="dark"] .yk-klaro .yk-side{
  color:var(--klaro-yellow);
  opacity:1;
}
html[data-theme="dark"] .yk-mark{
  background:linear-gradient(transparent 58%,rgba(255,211,41,.45) 58%);
  color:inherit;
}
html[data-theme="dark"] .yk-foot{
  background:transparent;
  border-top-color:var(--border-color);
}
html[data-theme="dark"] .yk-result{
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .yk-cta{
  background:var(--klaro-yellow);
  color:#1a1808;
  box-shadow:0 0 0 2px var(--section-bg), 0 0 0 3px rgba(255,211,41,.28);
}
html[data-theme="dark"] .yk-num,
html[data-theme="dark"] .process-number{
  background:var(--klaro-yellow);
  color:#0e0e0c;
  border-color:#0e0e0c;
}

/* ===== Reviews ===== */
html[data-theme="dark"] .review-stream{
  --rst-bg:#141511;
  --rst-cream:var(--text-primary);
  --rst-muted:var(--text-secondary);
  --rst-ink:var(--paper-text);
  --rst-yellow:var(--klaro-yellow);
  background:var(--rst-bg);
  color:var(--text-primary);
}
html[data-theme="dark"] .rstream-heading h2{color:var(--text-primary)}
html[data-theme="dark"] .rstream-avg strong{color:var(--text-primary)}
html[data-theme="dark"] .rstream-count{color:var(--text-secondary)}
html[data-theme="dark"] .rstream-item[data-tone="muted"]{color:var(--text-muted)}
html[data-theme="dark"] .rstream-item[data-tone="white"]{color:var(--text-primary)}
html[data-theme="dark"] .rstream-detail-panel,
html[data-theme="dark"] .rstream-archive,
html[data-theme="dark"] .rstream-form-dlg{
  background:var(--surface-raised);
  color:var(--text-primary);
  border-color:var(--border-color);
}
html[data-theme="dark"] .rstream-submit{
  background:var(--klaro-yellow);
  color:#1a1808;
}

/* ===== FAQ / Helpdesk ===== */
html[data-theme="dark"] .home-faq.helpdesk{
  background:var(--section-bg);
  transition:background-color var(--theme-ease);
}
html[data-theme="dark"] .hd-head h2{color:var(--text-primary)}
html[data-theme="dark"] .hd-head p{color:var(--text-secondary)}
html[data-theme="dark"] .hd-label{color:#d4b01a}
html[data-theme="dark"] .hd-tab{
  background:#1a1b17;
  color:var(--text-secondary);
  border-color:var(--border-color);
}
html[data-theme="dark"] .hd-tab:hover{color:var(--text-primary)}
html[data-theme="dark"] .hd-tab.is-on{
  background:var(--surface-raised);
  color:var(--text-primary);
  border-color:rgba(255,211,41,.35);
  box-shadow:inset 0 3px 0 var(--klaro-yellow);
}
html[data-theme="dark"] .hd-folder{
  background:var(--surface-bg);
  border-color:var(--border-color);
  position:relative;
  z-index:2;
}
html[data-theme="dark"] .hd-list{border-right-color:var(--border-color)}
html[data-theme="dark"] .hd-item{border-bottom-color:var(--border-color)}
html[data-theme="dark"] .hd-q,
html[data-theme="dark"] .hd-q-text{color:var(--text-primary)}
html[data-theme="dark"] .hd-num,
html[data-theme="dark"] .hd-item.is-active .hd-num{color:var(--color-accent);opacity:1}
html[data-theme="dark"] .hd-q:focus-visible{outline-color:var(--klaro-yellow)}
html[data-theme="dark"] .hd-panel{
  background:var(--surface-raised);
  color:var(--text-primary);
}
html[data-theme="dark"] .hd-a-title,
html[data-theme="dark"] .hd-panel .hd-a-title,
html[data-theme="dark"] .hd-a .hd-a-title,
html[data-theme="dark"] .hd-a-inner .hd-a-title{
  color:var(--text-primary) !important;
}
html[data-theme="dark"] .hd-a-label{color:#d4b01a}
html[data-theme="dark"] .hd-a-body,
html[data-theme="dark"] .hd-a-body p,
html[data-theme="dark"] .hd-a-body li,
html[data-theme="dark"] .hd-panel .hd-a-body,
html[data-theme="dark"] .hd-panel .hd-a-body p,
html[data-theme="dark"] .hd-a-inner .hd-a-body,
html[data-theme="dark"] .hd-a-inner .hd-a-body p{
  color:var(--text-secondary) !important;
}
html[data-theme="dark"] .hd-more{
  color:var(--text-primary);
  border-bottom-color:var(--klaro-yellow);
}
html[data-theme="dark"] .hd-empty p{color:var(--text-primary)}
html[data-theme="dark"] .hd-wa{
  background:var(--klaro-yellow);
  color:#1a1808;
}
html[data-theme="dark"].theme-lamps-on .hd-bulb{
  color:var(--klaro-yellow);
  opacity:1;
}
html[data-theme="dark"] .hd-a{background:transparent}
@media(max-width:767.98px){
  html[data-theme="dark"] .hd-item.is-active{
  background:var(--surface-raised);
  }
  html[data-theme="dark"] .hd-a{
  background:var(--surface-bg);
  color:var(--text-secondary);
  }
}

/* ===== Ask First / CTA ===== */
html[data-theme="dark"] .ask-first{
  background:#121310;
  color:var(--text-primary);
  transition:background-color var(--theme-ease),color var(--theme-ease);
}
html[data-theme="dark"] .ask-bulb{
  z-index:1;
}
html[data-theme="dark"] .ask-head h2{color:var(--text-primary)}
html[data-theme="dark"] .ask-head p,
html[data-theme="dark"] .ask-hint,
html[data-theme="dark"] .ask-trust{color:var(--text-secondary)}
html[data-theme="dark"] .ask-label{color:var(--klaro-yellow)}
html[data-theme="dark"] .ask-field textarea{
  background:var(--surface-raised);
  color:var(--text-primary);
  border-color:var(--border-color);
}
html[data-theme="dark"] .ask-field textarea::placeholder{color:var(--text-muted)}
html[data-theme="dark"] .ask-topic{
  border-color:var(--border-color);
  color:var(--text-secondary);
  background:transparent;
}
html[data-theme="dark"] .ask-topic.is-on{
  border-color:var(--klaro-yellow);
  color:var(--klaro-yellow);
}
html[data-theme="dark"] .ask-send{
  background:var(--klaro-yellow);
  color:#1a1808;
  box-shadow:0 0 0 2px #121310, 0 0 0 3px rgba(255,211,41,.35);
}
html[data-theme="dark"] .ask-send:disabled{
  background:#2a2b26;
  color:var(--text-muted);
  box-shadow:none;
}
html[data-theme="dark"].theme-lamps-on .ask-bulb{color:var(--klaro-yellow)}
html[data-theme="dark"].theme-lamps-on .ask-bulb-glow{
  fill:rgba(255,211,41,.2);
  opacity:1;
}

/* ===== Detail pages ===== */
html[data-theme="dark"] .detail-hero{
  background:var(--section-bg);
  color:var(--text-primary);
}
html[data-theme="dark"] .detail-hero h1{color:var(--text-primary)}
html[data-theme="dark"] .detail-hero p{color:var(--text-secondary)}

/* Clean service hero (no yellow circle) */
.detail-hero.detail-hero--clean{
  min-height:0;
  grid-template-columns:1fr;
  align-items:start;
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
  gap:0;
}
.detail-hero.detail-hero--clean .light-zone{
  max-width:720px;
  width:100%;
}
.detail-hero.detail-hero--clean h1{
  max-width:16em;
  margin:18px 0 16px;
}
.detail-hero.detail-hero--clean .primary{
  margin-top:8px;
}
.detail-hero__hint{
  margin:14px 0 0;
  max-width:40ch;
  font-size:14px;
  font-weight:700;
  line-height:1.55;
  color:var(--muted, #686862);
}
html[data-theme="dark"] .detail-hero__hint{
  color:var(--text-secondary, #c3c0b6);
}
@media(max-width:900px){
  .detail-hero.detail-hero--clean{
  padding:56px max(20px, 5vw) 64px;
  }
  .detail-hero.detail-hero--clean h1{max-width:100%}
  .detail-hero.detail-hero--clean .primary{
  width:100%;
  justify-content:center;
  }
}

/* ===== About editorial hero ===== */
.about-hero{
  --ah-cream:#f3eee3;
  --ah-ink:#141311;
  --ah-muted:#6a675e;
  --ah-line:rgba(20,19,17,.18);
  --ah-yellow:#ffd329;
  --ah-paper:#fbf7ef;
  background:var(--ah-cream);
  color:var(--ah-ink);
  padding:clamp(48px, 7vw, 88px) max(5vw, 24px) clamp(40px, 5vw, 56px);
}
.about-hero__inner{
  max-width:1180px;
  margin:0 auto;
}
.about-hero__grid{
  display:grid;
  grid-template-columns:minmax(0, .45fr) minmax(0, .55fr);
  grid-template-areas:
  "copy media"
  "links media";
  gap:clamp(20px, 3vw, 28px) clamp(28px, 5vw, 56px);
  align-items:start;
}
.about-hero__copy{grid-area:copy}
.about-hero__links{grid-area:links; align-self:start}
.about-hero__media{grid-area:media}
.about-hero__label{
  display:inline-block;
  margin:0 0 14px;
  padding:5px 10px;
  background:var(--ah-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.about-hero__title{
  margin:0 0 18px;
  max-width:11em;
  font-size:clamp(38px, 5.4vw, 72px);
  line-height:1.12;
  letter-spacing:-.035em;
  font-weight:900;
  color:var(--ah-ink);
}
.about-hero__title span{
  display:block;
}
.about-hero__lead{
  margin:0 0 28px;
  max-width:38ch;
  font-size:17px;
  line-height:1.7;
  font-weight:500;
  color:var(--ah-muted);
}
.about-hero__links{
  display:flex;
  flex-wrap:wrap;
  gap:14px 28px;
  align-items:center;
}
.about-hero__link{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:15px;
  font-weight:800;
  color:var(--ah-ink);
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-thickness:1.5px;
}
.about-hero__link--primary{
  color:#8a6b00;
  text-decoration-color:var(--ah-yellow);
}
.about-hero__link:hover{color:#8a6b00}
.about-hero__link:focus-visible{
  outline:2px solid var(--ah-ink);
  outline-offset:3px;
}

.about-hero__media{
  position:relative;
  margin:0;
  padding:18px 18px 0 28px;
}
.about-hero__wordmark{
  position:absolute;
  left:0;
  top:28px;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font-size:11px;
  font-weight:900;
  letter-spacing:.28em;
  color:rgba(20,19,17,.45);
}
.about-hero__frame{
  position:relative;
  padding:10px 10px 14px;
  background:var(--ah-paper);
  border:1px solid rgba(20,19,17,.28);
  box-shadow:4px 5px 0 rgba(20,19,17,.05);
  transform:rotate(-0.4deg);
  transition:transform .2s ease;
  will-change:transform;
}
.about-hero__photo{
  position:relative;
  aspect-ratio:4 / 5;
  width:100%;
  overflow:hidden;
  background:#ebe4d6;
  border:1px solid rgba(20,19,17,.12);
}
.about-hero__photo img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center 20%;
}
.about-hero__photo:not(.is-placeholder) .about-hero__placeholder-text{display:none}
.portrait-wall__photo:not(.is-placeholder) .portrait-wall__ph-num,
.portrait-wall__photo:not(.is-placeholder) .portrait-wall__ph-text{display:none}
.about-hero__photo.is-placeholder{
  display:grid;
  place-items:center;
  padding:24px;
  background:
  repeating-linear-gradient(
  -12deg,
  transparent,
  transparent 10px,
  rgba(20,19,17,.03) 10px,
  rgba(20,19,17,.03) 11px
  ),
  #ebe4d6;
}
.about-hero__placeholder-text{
  max-width:16ch;
  text-align:center;
  font-size:15px;
  font-weight:800;
  line-height:1.45;
  color:#5c594f;
}
.about-hero__hover-strip{
  position:absolute;
  left:10px;
  right:10px;
  bottom:14px;
  margin:0;
  padding:10px 12px;
  background:var(--ah-yellow);
  color:#141311;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  opacity:0;
  transform:translateY(6px);
  transition:opacity .2s ease, transform .2s ease;
  pointer-events:none;
}
.about-hero__frame:hover .about-hero__hover-strip,
.about-hero__frame:focus-within .about-hero__hover-strip{
  opacity:1;
  transform:none;
}

.about-hero__caption{
  margin:14px 0 0;
  padding-left:4px;
}
.about-hero__caption-title{
  margin:0 0 8px;
  font-size:14px;
  font-weight:900;
  letter-spacing:-.01em;
  color:var(--ah-ink);
}
.about-hero__people{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.about-hero__people li{
  font-size:13px;
  font-weight:600;
  color:var(--ah-muted);
}

.about-hero__notes{
  list-style:none;
  margin:0;
  padding:0;
  pointer-events:none;
}
.about-hero__note{
  position:absolute;
  display:flex;
  align-items:center;
  gap:8px;
  z-index:2;
}
.about-hero__note-text{
  padding:4px 8px;
  background:var(--ah-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}
.about-hero__note-line{
  display:block;
  height:1px;
  background:var(--ah-ink);
  opacity:.55;
}
.about-hero__note--1{
  top:8%;
  right:0;
  flex-direction:row-reverse;
}
.about-hero__note--1 .about-hero__note-line{width:36px}
.about-hero__note--2{
  left:0;
  bottom:34%;
}
.about-hero__note--2 .about-hero__note-line{width:42px}
.about-hero__note--3{
  right:4%;
  bottom:18%;
  flex-direction:row-reverse;
}
.about-hero__note--3 .about-hero__note-line{width:28px}

.about-hero__trust{
  list-style:none;
  margin:clamp(28px, 4vw, 40px) 0 0;
  padding:18px 0 0;
  border-top:1px solid var(--ah-line);
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:0;
}
.about-hero__trust li{
  padding:0 22px;
  font-size:14px;
  font-weight:800;
  line-height:1.4;
  color:var(--ah-ink);
  border-right:1px solid var(--ah-line);
}
.about-hero__trust li:first-child{padding-left:0}
.about-hero__trust li:last-child{
  border-right:0;
  padding-right:0;
}

html[data-theme="dark"] .about-hero{
  --ah-cream:#161512;
  --ah-ink:#f2f0e8;
  --ah-muted:#c3c0b6;
  --ah-line:rgba(242,240,232,.2);
  --ah-paper:#2a2822;
  background:var(--ah-cream);
  color:var(--ah-ink);
}
html[data-theme="dark"] .about-hero__title,
html[data-theme="dark"] .about-hero__caption-title,
html[data-theme="dark"] .about-hero__trust li,
html[data-theme="dark"] .about-hero__link{
  color:var(--ah-ink);
}
html[data-theme="dark"] .about-hero__link--primary{color:var(--ah-yellow)}
html[data-theme="dark"] .about-hero__wordmark{color:rgba(242,240,232,.4)}
html[data-theme="dark"] .about-hero__frame{
  border-color:rgba(242,240,232,.22);
  box-shadow:4px 5px 0 rgba(0,0,0,.28);
}
html[data-theme="dark"] .about-hero__photo.is-placeholder{
  background:
  repeating-linear-gradient(
  -12deg,
  transparent,
  transparent 10px,
  rgba(255,255,255,.03) 10px,
  rgba(255,255,255,.03) 11px
  ),
  #23211c;
}
html[data-theme="dark"] .about-hero__placeholder-text{color:#c3c0b6}
html[data-theme="dark"] .about-hero__note-line{background:var(--ah-ink)}
html[data-theme="dark"] .about-hero__link:focus-visible{
  outline-color:var(--ah-yellow);
}
html[data-theme="dark"].theme-lamps-on section.about-hero.is-light-section-active .about-hero__frame,
html[data-theme="dark"].theme-lamps-on section.about-hero.is-light-section-active .about-hero__copy{
  opacity:1;
  filter:none;
}

@media(max-width:768px){
  .about-hero{
  padding:48px max(20px, 5vw) 40px;
  }
  .about-hero__grid{
  grid-template-columns:1fr;
  grid-template-areas:
  "copy"
  "media"
  "links";
  gap:22px;
  }
  .about-hero__title{
  max-width:none;
  font-size:clamp(38px, 10vw, 48px);
  }
  .about-hero__lead{max-width:none; margin-bottom:0}
  .about-hero__media{padding:0}
  .about-hero__notes{display:none}
  .about-hero__wordmark{display:none}
  .about-hero__frame{transform:none}
  .about-hero__photo{aspect-ratio:5 / 4}
  .about-hero__trust{
  grid-template-columns:1fr;
  gap:0;
  }
  .about-hero__trust li{
  padding:12px 0;
  border-right:0;
  border-bottom:1px solid var(--ah-line);
  }
  .about-hero__trust li:last-child{border-bottom:0}
}

@media(prefers-reduced-motion:reduce){
  .about-hero__frame,
  .about-hero__hover-strip{
  transition:none;
  }
}

/* ===== Clarity Gateway (Mission) ===== */
.gateway{
  --gw-dark:#11110f;
  --gw-cream:#f3eee3;
  --gw-ink:#141311;
  --gw-muted:#6a675e;
  --gw-yellow:#ffd329;
  --gateway-open:0;
  background:var(--gw-dark);
  color:var(--gw-ink);
  position:relative;
  z-index:3;
}
.gateway__pin{position:relative}
.gateway__stage{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  overflow:hidden;
  background:var(--gw-dark);
  isolation:isolate;
}

/* Warm light plane behind panels */
.gateway__light{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:color-mix(
  in srgb,
  var(--gw-yellow) calc((1 - var(--gateway-open)) * 72%),
  var(--gw-cream) calc(var(--gateway-open) * 100%)
  );
  opacity:calc(0.55 + var(--gateway-open) * 0.45);
  box-shadow:inset 0 0 80px rgba(255,211,41,calc(0.12 + (1 - var(--gateway-open)) * 0.18));
}

.gateway__reveal{
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:none;
}
.gateway__inner{
  width:min(1180px, 100%);
  margin:0 auto;
  padding:clamp(56px, 10vh, 96px) max(5vw, 24px) clamp(48px, 8vh, 80px);
  box-sizing:border-box;
  pointer-events:auto;
}
.gateway__label{
  margin:0 0 clamp(28px, 5vh, 52px);
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8a6b00;
}
.gateway__grid{
  display:grid;
  grid-template-columns:minmax(0, 1.2fr) minmax(0, .65fr);
  gap:clamp(20px, 4vw, 48px);
  align-items:end;
}
.gateway__title{
  margin:0 0 22px;
  max-width:8.6em;
  font-size:clamp(4rem, 7.5vw, 9rem);
  line-height:.98;
  letter-spacing:-.045em;
  font-weight:900;
  color:var(--gw-ink);
  opacity:calc((var(--gateway-open) - 0.22) / 0.38);
}
.gateway__title span{display:block}
.gateway__lead{
  margin:0;
  max-width:600px;
  font-size:clamp(16px, 1.5vw, 19px);
  line-height:1.7;
  font-weight:600;
  color:var(--gw-muted);
  opacity:calc((var(--gateway-open) - 0.45) / 0.3);
}
.gateway__close{
  margin:clamp(28px, 5vh, 48px) 0 0;
  max-width:44ch;
  font-size:15px;
  line-height:1.65;
  font-weight:700;
  color:var(--gw-ink);
  opacity:calc((var(--gateway-open) - 0.66) / 0.24);
}
.gateway__wordmark{
  margin:0;
  justify-self:end;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font-size:clamp(4rem, 8vw, 7.5rem);
  font-weight:900;
  letter-spacing:.14em;
  line-height:1;
  color:transparent;
  -webkit-text-stroke:1.5px rgba(20,19,17,.16);
  user-select:none;
  opacity:calc((var(--gateway-open) - 0.52) / 0.32);
}

.gateway__panel{
  position:absolute;
  top:0;
  bottom:0;
  width:54%;
  z-index:2;
  background:var(--gw-dark);
  will-change:transform;
  pointer-events:none;
}
.gateway__panel--left{
  left:0;
  transform:translate3d(calc(var(--gateway-open) * -84%), 0, 0);
  border-right:1px solid rgba(255,211,41,.1);
}
.gateway__panel--right{
  right:0;
  transform:translate3d(calc(var(--gateway-open) * 84%), 0, 0);
  border-left:1px solid rgba(255,211,41,.1);
}
.gateway__seam{
  position:absolute;
  top:0;
  bottom:0;
  left:50%;
  width:3px;
  margin-left:-1.5px;
  z-index:3;
  background:var(--gw-yellow);
  box-shadow:0 0 24px rgba(255,211,41,.4);
  opacity:calc(1 - var(--gateway-open) * 1.25);
  pointer-events:none;
}
.gateway__hint{
  position:absolute;
  left:50%;
  bottom:clamp(22px, 4.5vh, 36px);
  z-index:4;
  margin:0;
  transform:translateX(-50%);
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(244,241,232,.42);
  opacity:calc(1 - var(--gateway-open) * 3.4);
  pointer-events:none;
  white-space:nowrap;
}

/* Sticky scroll stage (desktop + mobile) */
@media(prefers-reduced-motion:no-preference){
  .gateway__pin{height:180vh}
  .gateway__stage{
  position:sticky;
  top:0;
  height:100vh;
  height:100svh;
  min-height:100vh;
  min-height:100svh;
  }
  .gateway__label{
  position:absolute;
  left:max(5vw, 24px);
  top:clamp(40px, 7vh, 72px);
  z-index:5;
  margin:0;
  color:var(--gw-yellow);
  }
  .gateway__inner{
  position:relative;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding-top:clamp(88px, 14vh, 120px);
  padding-bottom:clamp(40px, 6vh, 64px);
  }
  .gateway__grid{
  flex:1 1 auto;
  align-content:center;
  }
}

@media(min-width:769px) and (prefers-reduced-motion:no-preference){
  .gateway__pin{height:180vh}
}

@media(max-width:768px){
  .gateway{
  overflow-x:clip;
  }
  .gateway__stage{
  overflow-x:hidden;
  }
}

@media(max-width:768px) and (prefers-reduced-motion:no-preference){
  .gateway__pin{height:160vh}
  .gateway__stage{
  height:100svh;
  min-height:100svh;
  }
  .gateway__label{
  position:static;
  left:auto;
  top:auto;
  z-index:auto;
  margin:0 0 18px;
  color:#8a6b00;
  text-align:center;
  opacity:calc((var(--gateway-open) - 0.38) / 0.3);
  }
  .gateway__inner{
  justify-content:center;
  align-items:center;
  text-align:center;
  padding:clamp(48px, 8svh, 72px) max(22px, calc(8vw + 4px)) clamp(36px, 6svh, 56px);
  max-width:min(100%, calc(100% - 16px));
  box-sizing:border-box;
  }
  .gateway__grid{
  grid-template-columns:1fr;
  justify-items:center;
  width:100%;
  flex:0 1 auto;
  }
  .gateway__copy{
  display:flex;
  flex-direction:column;
  align-items:center;
  width:100%;
  }
  .gateway__title{
  margin:0 0 18px;
  max-width:9em;
  font-size:clamp(2.5rem, 11vw, 4.2rem);
  text-align:center;
  /* Reveal only once the opening can hold the type */
  opacity:calc((var(--gateway-open) - 0.4) / 0.32);
  }
  .gateway__lead{
  margin:0 auto;
  max-width:34ch;
  font-size:15px;
  text-align:center;
  opacity:calc((var(--gateway-open) - 0.55) / 0.28);
  }
  .gateway__close{
  margin:22px auto 0;
  max-width:32ch;
  font-size:14px;
  text-align:center;
  opacity:calc((var(--gateway-open) - 0.72) / 0.22);
  }
  .gateway__wordmark{display:none}
  .gateway__hint{
  bottom:clamp(18px, 4svh, 28px);
  font-size:11px;
  }
  /* Keep panels / seam / light; slightly stronger frame on small screens */
  .gateway__panel{width:55%}
  .gateway__panel--left{transform:translate3d(calc(var(--gateway-open) * -82%), 0, 0)}
  .gateway__panel--right{transform:translate3d(calc(var(--gateway-open) * 82%), 0, 0)}
}


html[data-theme="dark"] .gateway{
  --gw-cream:var(--color-paper);
  --gw-ink:var(--color-on-paper);
  --gw-muted:var(--color-on-paper-muted);
}
html[data-theme="dark"] .gateway .gateway__title,
html[data-theme="dark"] .gateway .gateway__title span,
html[data-theme="dark"] .gateway h2,
html[data-theme="dark"] .gateway .gateway__close{
  color:var(--color-on-paper);
}
html[data-theme="dark"] .gateway .gateway__lead{
  color:var(--color-on-paper-muted);
}
html[data-theme="dark"] .gateway .gateway__label{
  color:#8a6b00;
}
html[data-theme="dark"] .gateway__wordmark{
  -webkit-text-stroke:1.5px rgba(23,24,20,.22);
}


html.klaro-lamp-paused .klaro-guide-layer,
html.klaro-lamp-paused .klaro-guide-glow-layer{
  opacity:0 !important;
  visibility:hidden;
  pointer-events:none;
}

@media(prefers-reduced-motion:reduce){
  .gateway{
  --gateway-open:1 !important;
  }
  .gateway__pin{height:auto !important}
  .gateway__stage{
  position:relative !important;
  height:auto !important;
  min-height:100vh;
  min-height:100svh;
  }
  .gateway__panel--left{transform:translate3d(-84%,0,0)}
  .gateway__panel--right{transform:translate3d(84%,0,0)}
  .gateway__seam,
  .gateway__hint{opacity:0;display:none}
  .gateway__title,
  .gateway__lead,
  .gateway__close,
  .gateway__wordmark{opacity:1}
  .gateway__light{
  background:var(--gw-cream);
  opacity:1;
  }
  .gateway__label{
  position:static;
  color:#8a6b00;
  margin:0 0 clamp(28px, 5vh, 52px);
  }
  .gateway__inner{
  height:auto;
  display:block;
  text-align:left;
  padding:clamp(48px, 8vh, 72px) max(22px, 5vw);
  }
}

@media(max-width:768px) and (prefers-reduced-motion:reduce){
  .gateway__inner{text-align:center}
  .gateway__title{
  font-size:clamp(2.5rem, 11vw, 4.2rem);
  text-align:center;
  margin-left:auto;
  margin-right:auto;
  }
  .gateway__lead,
  .gateway__close{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
  }
  .gateway__wordmark{display:none}
}

@media(scripting:none){
  .gateway{--gateway-open:1}
  .gateway__panel--left{transform:translate3d(-84%,0,0)}
  .gateway__panel--right{transform:translate3d(84%,0,0)}
  .gateway__seam,
  .gateway__hint{opacity:0}
  .gateway__title,
  .gateway__lead,
  .gateway__close,
  .gateway__wordmark{opacity:1}
  .gateway__light{
  background:var(--gw-cream);
  opacity:1;
  }
}

html[data-theme="dark"].theme-lamps-on section.gateway,
html[data-theme="dark"].theme-lamps-on section.gateway .gateway__stage,
html[data-theme="dark"].theme-lamps-on section.gateway .gateway__title{
  opacity:1 !important;
  filter:none !important;
}

/* ===== Klaro Living Archive / History ===== */
:root{
  --header-height:92px;
  --mobile-header-height:75px;
}
@media(max-width:900px){
  :root{--header-height:75px}
}

.history-section.archive,
.archive.history-section{
  --ar-bg:#0e0e0c;
  --ar-ink:#f3eee3;
  --ar-muted:#9a968c;
  --ar-yellow:#ffd329;
  --ar-paper:#ebe4d6;
  background:var(--ar-bg);
  color:var(--ar-ink);
  position:relative;
  z-index:3;
  height:320vh;
  overflow:visible;
}

.history-sticky-stage{
  position:sticky;
  top:var(--header-height);
  height:calc(100svh - var(--header-height));
  overflow:hidden;
  background:var(--ar-bg);
  isolation:isolate;
  box-sizing:border-box;
}

.history-chapters{
  position:absolute;
  inset:0;
  z-index:1;
}

.history-chapter{
  position:absolute;
  inset:0;
  display:grid;
  grid-template-columns:minmax(0, 1.05fr) minmax(0, .95fr);
  gap:clamp(24px, 4vw, 56px);
  align-items:center;
  padding:clamp(56px, 10vh, 88px) max(22px, 5vw) clamp(40px, 6vh, 64px);
  box-sizing:border-box;
  margin:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate3d(0, 24px, 0);
  transition:opacity .45s ease, transform .45s ease, visibility .45s ease;
  z-index:1;
}
.history-chapter.is-active{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate3d(0, 0, 0);
  z-index:3;
}
.history-chapter.is-exit{
  opacity:0;
  visibility:visible;
  pointer-events:none;
  transform:translate3d(0, -24px, 0);
  z-index:2;
}

.archive__eyebrow{
  position:absolute;
  left:max(22px, 5vw);
  top:clamp(18px, 3vh, 28px);
  z-index:5;
  margin:0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ar-yellow);
}

.archive__progress{
  list-style:none;
  margin:0;
  padding:0;
  position:absolute;
  right:max(16px, 2.5vw);
  top:50%;
  transform:translateY(-50%);
  display:flex;
  flex-direction:column;
  gap:14px;
  z-index:5;
}
.archive__progress li{
  width:7px;
  height:7px;
  border-radius:50%;
  background:rgba(243,238,227,.22);
  transition:background .35s ease, transform .35s ease;
}
.history-sticky-stage[data-active="1"] [data-archive-dot="1"],
.history-sticky-stage[data-active="2"] [data-archive-dot="2"],
.history-sticky-stage[data-active="3"] [data-archive-dot="3"],
.history-sticky-stage[data-active="4"] [data-archive-dot="4"]{
  background:var(--ar-yellow);
  transform:scale(1.25);
}

.archive__copy{
  position:relative;
  z-index:2;
  max-width:34em;
}
.archive__num{
  margin:0 0 8px;
  font-size:clamp(4rem, 9vw, 8rem);
  line-height:.85;
  letter-spacing:-.06em;
  font-weight:900;
  color:var(--ar-yellow);
}
.archive__ch-label{
  margin:0 0 16px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--ar-yellow);
}
.archive__ch-title{
  margin:0 0 14px;
  font-size:clamp(1.6rem, 3vw, 2.6rem);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:var(--ar-ink);
}
.archive__ch-text{
  margin:0;
  max-width:38ch;
  font-size:clamp(15px, 1.35vw, 17px);
  line-height:1.7;
  font-weight:600;
  color:var(--ar-muted);
}

.archive__artifact{
  margin:0;
  position:relative;
  z-index:1;
  justify-self:center;
  width:min(100%, 400px);
}
.archive__mat{
  position:relative;
  background:var(--ar-paper);
  color:#1a180f;
  box-shadow:0 18px 40px rgba(0,0,0,.28);
}
.archive__inv{
  position:absolute;
  top:10px;
  left:12px;
  z-index:2;
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  color:rgba(26,24,15,.45);
}
.archive__slot{
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:28px 24px;
  min-height:220px;
  box-sizing:border-box;
  border:1px solid rgba(26,24,15,.12);
}
.archive__slot-text{
  max-width:16em;
  font-size:13px;
  line-height:1.5;
  font-weight:700;
  color:rgba(26,24,15,.48);
}
.archive__slot img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.archive__slot:not(.is-placeholder){
  padding:0;
  display:block;
  overflow:hidden;
  min-height:220px;
}
.archive__slot:not(.is-placeholder) .archive__slot-text{display:none}
.archive__cap{
  margin:12px 0 0;
  font-size:12px;
  line-height:1.5;
  font-weight:600;
  color:rgba(243,238,227,.55);
}

.archive__artifact--sheet .archive__mat{
  transform:rotate(-1.2deg);
  padding:18px 16px 22px;
}
.archive__artifact--sheet .archive__slot{
  min-height:240px;
  background:linear-gradient(180deg, #f7f1e4 0%, #efe6d4 100%);
  border:0;
  border-bottom:1px solid rgba(26,24,15,.08);
}
.archive__artifact--mark .archive__mat{
  transform:rotate(1deg);
  padding:22px;
  aspect-ratio:1;
  display:flex;
  align-items:center;
  justify-content:center;
}
.archive__artifact--mark .archive__slot{
  width:100%;
  min-height:0;
  aspect-ratio:1;
  border:1px dashed rgba(26,24,15,.22);
  background:#f4efe4;
}
.archive__artifact--print .archive__mat{
  transform:rotate(-0.8deg);
  padding:14px 14px 36px;
  background:#f6f3ea;
}
.archive__artifact--print .archive__slot{
  min-height:200px;
  background:#ddd6c6;
  border:1px solid rgba(26,24,15,.1);
}
.archive__artifact--photo .archive__mat{
  transform:rotate(1.2deg);
  padding:12px 12px 40px;
  background:#f8f5ec;
}
.archive__artifact--photo .archive__slot{
  min-height:250px;
  background:#d7d0bf;
  border:0;
}

.archive__finale-inline{
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(243,238,227,.14);
  max-width:38ch;
}
.archive__finale-title{
  margin:0 0 10px;
  font-size:clamp(1.25rem, 2.2vw, 1.65rem);
  line-height:1.2;
  font-weight:900;
  color:var(--ar-ink);
}
.archive__finale-text{
  margin:0 0 14px;
  font-size:14px;
  line-height:1.65;
  font-weight:600;
  color:var(--ar-muted);
}
.archive__finale-link{
  display:inline-flex;
  font-size:14px;
  font-weight:800;
  color:var(--ar-yellow);
  border-bottom:1px solid rgba(255,211,41,.45);
  padding-bottom:2px;
}
.archive__finale-link:hover{border-bottom-color:var(--ar-yellow)}

html[data-theme="dark"] .history-section.archive{
  --ar-bg:#0c0c0a;
  --ar-paper:#e4dccb;
}
html[data-theme="dark"].theme-lamps-on section.history-section,
html[data-theme="dark"].theme-lamps-on section.history-section .archive__ch-title,
html[data-theme="dark"].theme-lamps-on section.history-section .archive__finale-title{
  opacity:1 !important;
  filter:none !important;
}

html.klaro-archive-glow .klaro-guide-glow{
  --glow-width:min(70vw, 720px);
  --glow-height:min(55vh, 560px);
  opacity:.55;
}
html.klaro-archive-glow.klaro-archive-glow--mobile .klaro-guide-glow{
  --glow-width:min(88vw, 420px);
  --glow-height:min(42svh, 340px);
  opacity:.4;
}
html.klaro-archive-glow .klaro-guide-lamp{
  pointer-events:none;
}

@media(max-width:768px){
  .history-section.archive{
  height:300vh;
  }
  .history-sticky-stage{
  top:var(--mobile-header-height);
  height:calc(100svh - var(--mobile-header-height));
  }
  .history-chapter{
  grid-template-columns:1fr;
  gap:20px;
  align-content:center;
  padding:56px max(22px, 5vw) 36px;
  overflow:auto;
  }
  .archive__progress{
  right:12px;
  gap:10px;
  }
  .archive__num{font-size:clamp(3rem, 16vw, 4.5rem)}
  .archive__artifact{
  width:100%;
  max-width:340px;
  justify-self:start;
  }
  .archive__artifact--sheet .archive__mat,
  .archive__artifact--mark .archive__mat,
  .archive__artifact--print .archive__mat,
  .archive__artifact--photo .archive__mat{
  transform:none;
  }
  .archive__slot{min-height:180px}
  .archive__artifact--photo .archive__slot,
  .archive__artifact--sheet .archive__slot{min-height:190px}
}

@media(prefers-reduced-motion:reduce){
  .history-section.archive{
  height:auto !important;
  }
  .history-sticky-stage{
  position:relative !important;
  top:auto !important;
  height:auto !important;
  overflow:visible !important;
  }
  .history-chapters{
  position:relative !important;
  inset:auto !important;
  display:flex;
  flex-direction:column;
  gap:48px;
  padding:48px 0 64px;
  }
  .history-chapter{
  position:relative !important;
  inset:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:none !important;
  transition:none !important;
  height:auto !important;
  padding:24px max(22px, 5vw);
  }
  .archive__eyebrow{
  position:static;
  margin:0 max(22px, 5vw) 12px;
  }
  .archive__progress{display:none !important}
}

/* ===== Living Portrait Wall (Team) ===== */
.portrait-wall{
  --pw-bg:#11110f;
  --pw-ink:#f3eee3;
  --pw-muted:#9a968c;
  --pw-yellow:#ffd329;
  --pw-cream:#ebe4d6;
  --pw-ease:cubic-bezier(.4, 0, .2, 1);
  background:var(--pw-bg);
  color:var(--pw-ink);
  position:relative;
  z-index:3;
  padding:clamp(64px, 9vw, 110px) 0 clamp(56px, 8vw, 96px);
  overflow-x:clip;
}
.portrait-wall__intro{
  width:min(920px, calc(100% - 44px));
  margin:0 auto clamp(36px, 5vw, 56px);
  padding:0 max(20px, 4vw);
  box-sizing:border-box;
}
.portrait-wall__label{
  margin:0 0 14px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--pw-yellow);
}
.portrait-wall__heading{
  margin:0 0 16px;
  max-width:14em;
  font-size:clamp(2.2rem, 4.8vw, 4rem);
  line-height:1.1;
  letter-spacing:-.035em;
  font-weight:900;
}
.portrait-wall__lead{
  margin:0 0 18px;
  max-width:46ch;
  font-size:clamp(15px, 1.4vw, 18px);
  line-height:1.7;
  font-weight:600;
  color:var(--pw-muted);
}
.portrait-wall__hint{
  margin:0;
  font-size:12px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(243,238,227,.42);
}
.portrait-wall__visually-hidden{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

.portrait-wall__wall{
  display:flex;
  width:min(1280px, calc(100% - 32px));
  margin:0 auto;
  height:clamp(68vh, 80vh, 820px);
  gap:2px;
  background:var(--pw-cream);
  isolation:isolate;
  box-sizing:border-box;
}
.portrait-wall__member{
  position:relative;
  flex:1 1 0;
  min-width:0;
  overflow:hidden;
  background:#161512;
  transition:flex .6s var(--pw-ease);
  will-change:flex;
}
.portrait-wall__member.is-active{
  flex:2.2 1 0;
}
.portrait-wall__hit{
  position:absolute;
  inset:0;
  z-index:4;
  margin:0;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}
.portrait-wall__hit:focus-visible{
  outline:2px solid var(--pw-yellow);
  outline-offset:-4px;
}
.portrait-wall__media{
  position:absolute;
  inset:0;
  z-index:0;
}
.portrait-wall__photo{
  position:absolute;
  inset:0;
  background:
  linear-gradient(160deg, #2a271f 0%, #1a1814 48%, #12110e 100%);
}
.portrait-wall__photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center top;
  display:block;
  filter:saturate(.92) contrast(1.02);
}
.portrait-wall__photo.is-placeholder{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:24px;
  text-align:center;
}
.portrait-wall__ph-num{
  font-size:clamp(3rem, 8vw, 5rem);
  font-weight:900;
  letter-spacing:-.04em;
  color:rgba(255,211,41,.28);
  line-height:1;
}
.portrait-wall__ph-text{
  max-width:12em;
  font-size:13px;
  font-weight:700;
  line-height:1.45;
  color:rgba(243,238,227,.45);
}
.portrait-wall__shade{
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:linear-gradient(
  180deg,
  rgba(17,17,15,.08) 0%,
  rgba(17,17,15,.12) 42%,
  rgba(17,17,15,.72) 100%
  );
  transition:background .6s var(--pw-ease);
}
.portrait-wall__member.is-active .portrait-wall__shade{
  background:linear-gradient(
  105deg,
  rgba(17,17,15,.18) 0%,
  rgba(17,17,15,.28) 38%,
  rgba(17,17,15,.82) 72%,
  rgba(17,17,15,.9) 100%
  );
}
.portrait-wall__index{
  position:absolute;
  left:14px;
  top:14px;
  z-index:2;
  margin:0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.12em;
  color:rgba(243,238,227,.7);
  pointer-events:none;
}
.portrait-wall__name-vert{
  position:absolute;
  left:14px;
  bottom:18px;
  z-index:2;
  margin:0;
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  font-size:13px;
  font-weight:800;
  letter-spacing:.08em;
  color:var(--pw-ink);
  pointer-events:none;
  max-height:55%;
  overflow:hidden;
  transition:opacity .45s var(--pw-ease);
}
.portrait-wall__member.is-active .portrait-wall__name-vert{
  opacity:0;
}

.portrait-wall__bio{
  position:absolute;
  right:0;
  top:0;
  bottom:0;
  z-index:3;
  width:min(100%, 340px);
  padding:48px 28px 32px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  opacity:0;
  visibility:hidden;
  transform:translate3d(12px, 0, 0);
  transition:opacity .55s var(--pw-ease), transform .55s var(--pw-ease), visibility .55s;
  pointer-events:none;
}
.portrait-wall__member.is-active .portrait-wall__bio{
  opacity:1;
  visibility:visible;
  transform:none;
  pointer-events:auto;
}
.portrait-wall__bio-num{
  position:absolute;
  right:12px;
  top:18%;
  margin:0;
  font-size:clamp(5rem, 12vw, 9rem);
  font-weight:900;
  letter-spacing:-.06em;
  line-height:1;
  color:rgba(255,211,41,.1);
  pointer-events:none;
}
.portrait-wall__bio-caption{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(255,211,41,.75);
}
.portrait-wall__bio-name{
  margin:0 0 12px;
  font-size:clamp(1.45rem, 2.4vw, 2rem);
  line-height:1.15;
  letter-spacing:-.02em;
  font-weight:900;
}
.portrait-wall__bio-role{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:0 0 12px;
  font-size:14px;
  font-weight:700;
  line-height:1.45;
  color:var(--pw-ink);
}
.portrait-wall__role-line{
  flex:0 0 auto;
  width:18px;
  height:2px;
  margin-top:.55em;
  background:var(--pw-yellow);
}
.portrait-wall__bio-meta{
  margin:0 0 8px;
  font-size:13px;
  line-height:1.55;
  font-weight:600;
  color:var(--pw-muted);
}
.portrait-wall__bio-quote{
  margin:14px 0 0;
  max-width:28ch;
  font-size:14px;
  line-height:1.65;
  font-weight:600;
  color:rgba(243,238,227,.82);
}

.portrait-wall__connection{
  width:min(920px, calc(100% - 44px));
  margin:clamp(28px, 4vw, 44px) auto 0;
  padding:0 max(20px, 4vw);
  box-sizing:border-box;
}
.portrait-wall__rail{
  display:flex;
  align-items:center;
  gap:14px;
  margin:0 0 18px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  color:rgba(243,238,227,.45);
}
.portrait-wall__rail-line{
  flex:1 1 auto;
  height:1px;
  background:linear-gradient(90deg, rgba(255,211,41,.55), rgba(243,238,227,.18));
}
.portrait-wall__bond{
  margin:0 0 10px;
  font-size:clamp(1.15rem, 2.2vw, 1.55rem);
  line-height:1.3;
  font-weight:900;
  letter-spacing:-.02em;
}
.portrait-wall__bond-support{
  margin:0;
  max-width:42ch;
  font-size:14px;
  line-height:1.65;
  font-weight:600;
  color:var(--pw-muted);
}

html[data-theme="dark"] .portrait-wall{
  --pw-bg:#0e0e0c;
}
html[data-theme="dark"].theme-lamps-on section.portrait-wall,
html[data-theme="dark"].theme-lamps-on section.portrait-wall .portrait-wall__heading,
html[data-theme="dark"].theme-lamps-on section.portrait-wall .portrait-wall__bio-name{
  opacity:1 !important;
  filter:none !important;
}

@media(max-width:768px){
  .portrait-wall{
  padding:56px 0 64px;
  }
  .portrait-wall__intro{
  width:100%;
  margin-bottom:28px;
  }
  .portrait-wall__hint{display:none}
  .portrait-wall__wall{
  display:flex;
  flex-direction:column;
  width:100%;
  height:auto;
  gap:0;
  background:transparent;
  }
  .portrait-wall__member{
  position:relative;
  flex:none !important;
  display:block;
  margin:0 0 40px;
  background:transparent;
  overflow:visible;
  }
  .portrait-wall__member:last-child{margin-bottom:0}
  .portrait-wall__hit{
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:65svh;
  min-height:320px;
  z-index:4;
  }
  .portrait-wall__media{
  position:relative;
  inset:auto;
  height:65svh;
  min-height:320px;
  overflow:hidden;
  }
  .portrait-wall__shade{
  background:linear-gradient(180deg, rgba(17,17,15,.05) 42%, rgba(17,17,15,.72) 100%);
  }
  .portrait-wall__member.is-active .portrait-wall__shade{
  background:linear-gradient(180deg, rgba(17,17,15,.05) 42%, rgba(17,17,15,.72) 100%);
  }
  .portrait-wall__name-vert{
  opacity:1 !important;
  writing-mode:horizontal-tb;
  transform:none;
  left:20px;
  top:calc(65svh - 48px);
  bottom:auto;
  max-height:none;
  font-size:15px;
  }
  .portrait-wall__index{left:20px; top:18px}
  .portrait-wall__bio{
  position:relative;
  inset:auto;
  width:100%;
  opacity:1 !important;
  visibility:visible !important;
  transform:none !important;
  pointer-events:auto !important;
  background:#161512;
  padding:28px 20px 32px;
  }
  .portrait-wall__member:nth-child(even) .portrait-wall__bio{
  background:#1b1914;
  }
  .portrait-wall__member:nth-child(even) .portrait-wall__bio-role{
  flex-direction:row-reverse;
  justify-content:flex-end;
  }
  .portrait-wall__bio-num{display:none}
  .portrait-wall__connection{
  width:100%;
  margin-top:8px;
  padding-left:20px;
  padding-right:20px;
  }
}

@media(prefers-reduced-motion:reduce){
  .portrait-wall__member,
  .portrait-wall__shade,
  .portrait-wall__bio,
  .portrait-wall__name-vert{
  transition:none !important;
  }
  .portrait-wall__member,
  .portrait-wall__member.is-active{
  flex:1 1 0 !important;
  }
  .portrait-wall__bio{
  position:absolute;
  inset:auto 0 0 0;
  width:100%;
  max-height:46%;
  opacity:0;
  visibility:hidden;
  background:linear-gradient(180deg, transparent, rgba(17,17,15,.94) 28%);
  padding:28px 20px 22px;
  transform:none;
  }
  .portrait-wall__member.is-active .portrait-wall__bio{
  opacity:1;
  visibility:visible;
  }
  .portrait-wall__member.is-active .portrait-wall__name-vert{opacity:0}
}

html[data-theme="dark"] .detail-sections{
  background:var(--page-bg);
  color:var(--text-primary);
}
html[data-theme="dark"] .detail-sections article{border-color:var(--border-color)}
html[data-theme="dark"] .detail-sections h2{color:var(--text-primary)}
html[data-theme="dark"] .detail-sections p{color:var(--text-secondary)}
html[data-theme="dark"] .detail-sections li{
  background:var(--surface-bg);
  color:var(--text-primary);
}
html[data-theme="dark"] .detail-symbol{
  background:var(--klaro-yellow);
  color:#1a1808;
}
html[data-theme="dark"] .detail-faq{background:var(--section-bg)}
html[data-theme="dark"] .cta{
  background:var(--color-accent);
  color:var(--color-on-accent);
}
html[data-theme="dark"] .cta span,
html[data-theme="dark"] .cta h2,
html[data-theme="dark"] .cta p{
  color:var(--color-on-accent);
}
html[data-theme="dark"] .cta>a{
  background:var(--color-on-accent);
  color:var(--color-accent);
}
html[data-theme="dark"] .section-label{color:#d4b01a}
html[data-theme="dark"] .page-wrapper > footer{background:#0c0d0b}
html[data-theme="dark"] .footer-brand{color:var(--klaro-yellow)}
html[data-theme="dark"] .footer-grid p,
html[data-theme="dark"] .footer-grid a,
html[data-theme="dark"] .footer-grid span{color:var(--text-secondary)}
html[data-theme="dark"] .whatsapp{background:#25d366}

.header,
.hero,
.wegweiser,
.services,
.why,
.process,
.review-stream,
.helpdesk,
.ask-first,
.detail-hero,
.licence-intro,
.precheck,
.prep-gear,
.brand-connection,
.project-launch,
.doc-map,
.steuer-status,
.tax-file,
.time-file,
.visa-dir,
.ready-file,
.about-hero,
.gateway,
.archive,
.portrait-wall,
.detail-sections,
.drop-menu,
.nav-cta,
.primary{
  transition:background-color var(--theme-ease),color var(--theme-ease),border-color var(--theme-ease),box-shadow var(--theme-ease);
}

/* ===== Licence intro: Klaro Service Brief ===== */
.licence-intro{
  background:var(--paper, #f7f6f0);
  color:var(--ink, #11110f);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.licence-intro__inner{
  max-width:1180px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:clamp(28px, 4vw, 40px);
}
.licence-intro__grid{
  display:grid;
  grid-template-columns:minmax(0, 48%) minmax(0, 42%);
  justify-content:space-between;
  column-gap:clamp(28px, 5vw, 64px);
  align-items:start;
}
.licence-intro__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  padding-top:4px;
}
.licence-intro__label{margin:0}
.licence-intro__title{
  margin:0;
  max-width:14.5em;
  font-size:clamp(34px, 4.2vw, 54px);
  line-height:1.12;
  letter-spacing:-.04em;
  font-weight:900;
  text-wrap:balance;
  display:flex;
  flex-direction:column;
  gap:.02em;
}
.licence-intro__title span{display:block}
.licence-intro__lead{
  margin:2px 0 0;
  max-width:40ch;
  font-size:17px;
  line-height:1.7;
  color:var(--muted, #686862);
}
.licence-intro__actions{
  margin-top:10px;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.licence-intro__hint{
  margin:0;
  font-size:14px;
  font-weight:700;
  color:var(--muted, #686862);
}
.licence-intro__cta:focus-visible{
  outline:2px solid #11110f;
  outline-offset:3px;
}

/* Service Brief panel */
.service-brief{
  position:relative;
  width:100%;
  background:#141311;
  color:#f2f0e8;
  border:1px solid rgba(196,188,170,.28);
  border-radius:2px;
  padding:28px 26px 24px;
  overflow:hidden;
}
.service-brief__reg{
  position:absolute;
  top:14px;
  left:14px;
  width:10px;
  height:10px;
  border:1px solid rgba(242,240,232,.35);
  opacity:.7;
}
.service-brief__reg:before,
.service-brief__reg:after{
  content:"";
  position:absolute;
  background:rgba(242,240,232,.35);
}
.service-brief__reg:before{
  left:50%;
  top:-3px;
  bottom:-3px;
  width:1px;
  transform:translateX(-50%);
}
.service-brief__reg:after{
  top:50%;
  left:-3px;
  right:-3px;
  height:1px;
  transform:translateY(-50%);
}
.service-brief__stamp{
  position:absolute;
  right:18px;
  bottom:18px;
  padding:5px 7px;
  border:1px solid rgba(255,213,46,.55);
  color:rgba(255,213,46,.7);
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  transform:rotate(-12deg);
  pointer-events:none;
  opacity:.55;
}
.service-brief__head{
  position:relative;
  padding:4px 0 22px;
  border-bottom:1px solid rgba(196,188,170,.28);
}
.service-brief__meta{
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-bottom:14px;
  padding-right:8px;
}
.service-brief__num{
  font-size:13px;
  font-weight:900;
  letter-spacing:.04em;
  color:var(--klaro-yellow, #ffd329);
}
.service-brief__eyebrow{
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(242,240,232,.55);
}
.service-brief__status{
  position:absolute;
  top:4px;
  right:0;
  margin:0;
  display:inline-flex;
  align-items:center;
  gap:7px;
  font-size:11px;
  font-weight:700;
  color:rgba(242,240,232,.72);
  max-width:42%;
  text-align:right;
  line-height:1.3;
}
.service-brief__status-dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--klaro-yellow, #ffd329);
  flex:0 0 auto;
  box-shadow:0 0 0 3px rgba(255,213,41,.15);
}
.service-brief__title{
  margin:0;
  font-size:clamp(22px, 2.4vw, 28px);
  line-height:1.25;
  letter-spacing:-.03em;
  font-weight:900;
  color:#f7f4ec;
  max-width:16ch;
}
.service-brief__rows{
  margin:0;
  padding:4px 0 8px;
}
.service-brief__row{
  display:grid;
  grid-template-columns:minmax(7.5rem, 32%) minmax(0, 1fr);
  gap:16px 20px;
  align-items:baseline;
  padding:18px 0;
  border-bottom:1px solid rgba(196,188,170,.22);
}
.service-brief__row:last-child{border-bottom:0}
.service-brief__row dt{
  margin:0;
  font-size:clamp(18px, 2vw, 22px);
  font-weight:900;
  letter-spacing:-.03em;
  color:var(--klaro-yellow, #ffd329);
  line-height:1.2;
}
.service-brief__row dd{
  margin:0;
  font-size:15px;
  line-height:1.55;
  font-weight:600;
  color:rgba(242,240,232,.88);
}
.service-brief__receive{
  margin-top:8px;
  padding:18px 16px 16px;
  background:var(--klaro-yellow, #ffd329);
  color:#141311;
  border-radius:1px;
}
.service-brief__receive-title{
  margin:0 0 12px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.01em;
  line-height:1.35;
}
.service-brief__receive-list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.service-brief__receive-list li{
  position:relative;
  padding-left:22px;
  font-size:14px;
  font-weight:700;
  line-height:1.4;
}
.service-brief__receive-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  font-weight:900;
}
.service-brief__link{
  display:inline-flex;
  margin-top:18px;
  font-size:14px;
  font-weight:800;
  color:#f2f0e8;
  text-decoration:underline;
  text-underline-offset:4px;
  text-decoration-thickness:1px;
}
.service-brief__link:hover{color:var(--klaro-yellow, #ffd329)}
.service-brief__link:focus-visible{
  outline:2px solid var(--klaro-yellow, #ffd329);
  outline-offset:3px;
}

/* Bottom information strip */
.licence-intro__strip{
  margin:0;
  padding:18px 0 0;
  border-top:1px solid rgba(17,17,15,.16);
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:0;
}
.licence-intro__strip-item{
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:4px 22px;
  border-right:1px solid rgba(17,17,15,.16);
}
.licence-intro__strip-item:first-child{padding-left:0}
.licence-intro__strip-item:last-child{
  border-right:0;
  padding-right:0;
}
.licence-intro__strip-item dt{
  margin:0;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:rgba(17,17,15,.5);
}
.licence-intro__strip-item dd{
  margin:0;
  font-size:15px;
  font-weight:800;
  line-height:1.35;
  color:#11110f;
}

html[data-theme="dark"] .licence-intro{
  background:var(--section-bg, #181916);
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .licence-intro__title{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"] .licence-intro__lead,
html[data-theme="dark"] .licence-intro__hint{
  color:var(--text-secondary, #c3c0b6);
}
html[data-theme="dark"] .licence-intro__cta:focus-visible{
  outline-color:var(--klaro-yellow, #ffd329);
}
html[data-theme="dark"] .service-brief{
  background:var(--color-paper);
  border-color:rgba(23,24,20,.18);
  color:var(--color-on-paper);
}
html[data-theme="dark"] .service-brief__title{color:var(--color-on-paper)}
html[data-theme="dark"] .service-brief__row dt{color:var(--color-on-paper-muted)}
html[data-theme="dark"] .service-brief__row dd{color:var(--color-on-paper)}
html[data-theme="dark"] .service-brief__num{color:#8a6b00}
html[data-theme="dark"] .licence-intro__strip{
  border-top-color:rgba(242,240,232,.18);
}
html[data-theme="dark"] .licence-intro__strip-item{
  border-right-color:rgba(242,240,232,.18);
}
html[data-theme="dark"] .licence-intro__strip-item dt{color:rgba(242,240,232,.5)}
html[data-theme="dark"] .licence-intro__strip-item dd{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"].theme-lamps-on section.licence-intro.is-light-section-active .service-brief,
html[data-theme="dark"].theme-lamps-on section.licence-intro.is-light-section-active .licence-intro__strip{
  opacity:1;
  filter:none;
}

@media(max-width:1024px){
  .licence-intro__title{font-size:clamp(32px, 4vw, 46px); max-width:13.5em}
  .service-brief__status{max-width:46%; font-size:10px}
}

@media(max-width:900px){
  .licence-intro{
  padding:56px max(20px, 5vw) 64px;
  }
  .licence-intro__grid{
  grid-template-columns:1fr;
  gap:28px;
  }
  .licence-intro__title{
  max-width:100%;
  font-size:clamp(30px, 8vw, 40px);
  }
  .licence-intro__actions{
  width:100%;
  margin-top:6px;
  }
  .licence-intro__actions .primary{
  width:100%;
  justify-content:center;
  }
  .service-brief{
  padding:24px 18px 20px;
  }
  .service-brief__status{
  position:static;
  max-width:none;
  text-align:left;
  margin:0 0 14px;
  }
  .service-brief__meta{margin-bottom:10px}
  .service-brief__title{max-width:none}
  .service-brief__row{
  grid-template-columns:1fr;
  gap:6px;
  padding:16px 0;
  }
  .licence-intro__strip{
  grid-template-columns:1fr;
  gap:0;
  padding-top:8px;
  }
  .licence-intro__strip-item{
  padding:14px 0;
  border-right:0;
  border-bottom:1px solid rgba(17,17,15,.14);
  }
  .licence-intro__strip-item:last-child{border-bottom:0}
  html[data-theme="dark"] .licence-intro__strip-item{
  border-bottom-color:rgba(242,240,232,.16);
  }
}

@media(max-width:430px){
  .service-brief{padding:22px 16px 18px}
  .service-brief__receive{padding:16px 14px 14px}
  .service-brief__stamp{right:12px; bottom:12px}
}

/* ===== Prep gear: manual mode selector + learning dossier ===== */
.prep-gear{
  --prep-ink:#11110f;
  --prep-muted:#686862;
  --prep-line:rgba(17,17,15,.18);
  --prep-paper:#f7f6f0;
  --prep-cream:#f3efe6;
  --prep-yellow:#ffd329;
  background:var(--prep-paper);
  color:var(--prep-ink);
  padding:clamp(64px, 9vw, 110px) max(5vw, 24px);
}
.prep-gear__wrap{
  max-width:1180px;
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:clamp(36px, 5vw, 56px);
}
.prep-gear__head{
  max-width:46rem;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.prep-gear__title{
  margin:0;
  font-size:clamp(32px, 4.2vw, 54px);
  line-height:1.12;
  letter-spacing:-.04em;
  font-weight:900;
  text-wrap:balance;
}
.prep-gear__lead{
  margin:0;
  max-width:52ch;
  font-size:17px;
  line-height:1.75;
  color:var(--prep-muted);
}
.prep-gear__stage{
  display:grid;
  grid-template-columns:minmax(260px, 0.92fr) minmax(0, 1.18fr);
  gap:clamp(28px, 4vw, 56px);
  align-items:stretch;
  min-width:0;
}
.prep-gear__console{
  position:relative;
  min-width:0;
  border:1px solid var(--prep-line);
  background:var(--prep-cream);
  padding:22px 20px 28px;
  display:flex;
  flex-direction:column;
  gap:22px;
}
.prep-gear__console:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:3px;
  background:var(--prep-yellow);
}
.prep-gear__console-label{
  margin:0;
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:rgba(17,17,15,.55);
}
.prep-gear__console-label span:first-child{
  color:#8a6b00;
}
.prep-gear__switch{
  --prep-index:0;
  position:relative;
  flex:1;
  display:grid;
  grid-template-columns:72px minmax(0, 1fr);
  gap:18px;
  align-items:stretch;
  min-height:320px;
}
.prep-gear__gate{
  position:relative;
  display:grid;
  place-items:center;
  border-right:1px solid var(--prep-line);
  padding-right:10px;
  color:rgba(17,17,15,.55);
}
.prep-gear__path{
  width:100%;
  height:auto;
  display:block;
}
.prep-gear__path--v{
  width:36px;
  height:100%;
  max-height:280px;
}
.prep-gear__path--h{display:none}
.prep-gear__knob{
  position:absolute;
  left:50%;
  top:calc(8% + var(--prep-index) * 42%);
  width:22px;
  height:22px;
  margin-left:-11px;
  margin-top:-11px;
  border-radius:50%;
  background:var(--prep-yellow);
  border:2px solid var(--prep-ink);
  box-shadow:0 1px 0 rgba(17,17,15,.2);
  transition:top .32s cubic-bezier(.22,.8,.28,1);
  z-index:2;
  pointer-events:none;
}
.prep-gear__knob:after{
  content:"";
  position:absolute;
  inset:5px;
  border-radius:50%;
  border:1px solid rgba(17,17,15,.35);
}
.prep-gear__positions{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
  min-width:0;
}
.prep-gear__pos{
  appearance:none;
  width:100%;
  margin:0;
  padding:16px 14px;
  border:1px solid transparent;
  border-bottom:1px solid var(--prep-line);
  background:transparent;
  color:inherit;
  text-align:left;
  cursor:pointer;
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:14px;
  align-items:center;
  transition:border-color .2s ease, background-color .2s ease;
}
.prep-gear__pos:last-child{border-bottom-color:transparent}
.prep-gear__pos-num{
  font-size:clamp(28px, 3vw, 40px);
  font-weight:900;
  letter-spacing:-.04em;
  line-height:1;
  color:rgba(17,17,15,.28);
  font-variant-numeric:tabular-nums;
  transition:color .2s ease;
}
.prep-gear__pos-text{
  font-size:16px;
  font-weight:800;
  line-height:1.3;
  letter-spacing:-.02em;
}
.prep-gear__pos:hover .prep-gear__pos-num{color:rgba(17,17,15,.5)}
.prep-gear__pos.is-active{
  background:#fff;
  border-color:var(--prep-ink);
}
.prep-gear__pos.is-active .prep-gear__pos-num{color:var(--prep-ink)}
.prep-gear__pos:focus-visible{
  outline:2px solid var(--prep-yellow);
  outline-offset:3px;
  z-index:1;
}
.prep-gear__dossier-wrap{
  position:relative;
  min-width:0;
  min-height:100%;
  display:grid;
}
.prep-gear__dossier{
  position:relative;
  grid-area:1 / 1;
  height:100%;
  border:1px solid var(--prep-line);
  background:#fff;
  padding:28px 28px 30px;
  display:flex;
  flex-direction:column;
  gap:14px;
  min-width:0;
}
.prep-gear__dossier[hidden]{display:none !important}
.prep-gear__dossier.is-active{
  display:flex;
  animation:prep-dossier-in .34s cubic-bezier(.22,.8,.28,1) both;
}
.prep-gear__dossier.is-leaving{
  animation:prep-dossier-out .2s ease both;
}
@keyframes prep-dossier-in{
  from{opacity:0; transform:translateY(10px)}
  to{opacity:1; transform:translateY(0)}
}
@keyframes prep-dossier-out{
  from{opacity:1; transform:translateY(0)}
  to{opacity:0; transform:translateY(-8px)}
}
.prep-gear__dossier:before{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  top:0;
  height:4px;
  background:repeating-linear-gradient(
  90deg,
  var(--prep-ink) 0 6px,
  transparent 6px 12px
  );
  opacity:.18;
}
.prep-gear__dossier-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding-top:6px;
  border-bottom:1px solid var(--prep-line);
  padding-bottom:16px;
}
.prep-gear__dossier-meta{
  display:flex;
  align-items:baseline;
  gap:12px;
  min-width:0;
}
.prep-gear__dossier-num{
  font-size:clamp(36px, 4vw, 52px);
  font-weight:900;
  letter-spacing:-.05em;
  line-height:1;
  color:var(--prep-ink);
  font-variant-numeric:tabular-nums;
}
.prep-gear__dossier-eyebrow{
  font-size:10px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#8a6b00;
}
.prep-gear__dossier-ref{
  margin:0;
  font-size:11px;
  font-weight:700;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(17,17,15,.45);
  white-space:nowrap;
}
.prep-gear__dossier-title{
  margin:4px 0 0;
  font-size:clamp(24px, 2.6vw, 32px);
  line-height:1.2;
  letter-spacing:-.03em;
  font-weight:900;
  max-width:16em;
}
.prep-gear__dossier-price{
  margin:0;
  display:flex;
  align-items:baseline;
  gap:6px;
  font-variant-numeric:tabular-nums;
}
.prep-gear__dossier-price b{
  font-size:clamp(40px, 4.5vw, 56px);
  font-weight:900;
  letter-spacing:-.05em;
  line-height:1;
}
.prep-gear__dossier-price span{
  font-size:18px;
  font-weight:800;
  color:#8a6b00;
}
.prep-gear__dossier-desc{
  margin:0;
  max-width:42ch;
  font-size:15px;
  line-height:1.7;
  color:var(--prep-muted);
}
.prep-gear__dossier-list{
  margin:4px 0 0;
  padding:0;
  list-style:none;
  display:flex;
  flex-direction:column;
  border-top:1px solid var(--prep-line);
}
.prep-gear__dossier-list li{
  position:relative;
  padding:12px 0 12px 22px;
  border-bottom:1px solid var(--prep-line);
  font-size:14px;
  font-weight:600;
  line-height:1.55;
}
.prep-gear__dossier-list li:last-child{border-bottom:0}
.prep-gear__dossier-list li:before{
  content:"";
  position:absolute;
  left:0;
  top:1.05em;
  width:10px;
  height:1px;
  background:var(--prep-ink);
}
.prep-gear__dossier-cta{
  margin-top:auto;
  align-self:flex-start;
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:15px 20px;
  background:var(--prep-ink);
  color:#fff;
  font-size:14px;
  font-weight:800;
  border:1px solid var(--prep-ink);
  transition:background-color .2s ease, color .2s ease;
}
.prep-gear__dossier-cta:hover{
  background:var(--prep-yellow);
  color:var(--prep-ink);
}
.prep-gear__dossier-cta:focus-visible{
  outline:2px solid var(--prep-yellow);
  outline-offset:3px;
}

html[data-theme="dark"] .prep-gear{
  --prep-ink:var(--text-primary, #f2f0e8);
  --prep-muted:var(--text-secondary, #c3c0b6);
  --prep-line:rgba(242,240,232,.18);
  --prep-paper:var(--section-bg, #181916);
  --prep-cream:#1f201b;
  --prep-yellow:var(--klaro-yellow, #ffd329);
  background:var(--prep-paper);
  color:var(--prep-ink);
}
html[data-theme="dark"] .prep-gear__console{
  background:#1c1d18;
  border-color:rgba(242,240,232,.16);
}
html[data-theme="dark"] .prep-gear__pos.is-active{
  background:#12130f;
  border-color:rgba(242,240,232,.55);
}
html[data-theme="dark"] .prep-gear__pos-num{color:rgba(242,240,232,.28)}
html[data-theme="dark"] .prep-gear__pos.is-active .prep-gear__pos-num{color:var(--prep-yellow)}
html[data-theme="dark"] .prep-gear__knob{
  border-color:#0e0e0c;
}
html[data-theme="dark"] .prep-gear__dossier{
  background:var(--color-paper, #f7f6f0);
  border-color:rgba(23,24,20,.18);
  color:var(--color-on-paper, #171814);
}
html[data-theme="dark"] .prep-gear__dossier-num,
html[data-theme="dark"] .prep-gear__dossier-title,
html[data-theme="dark"] .prep-gear__dossier-price b,
html[data-theme="dark"] .prep-gear__dossier-list li{
  color:var(--color-on-paper, #171814);
}
html[data-theme="dark"] .prep-gear__dossier-desc,
html[data-theme="dark"] .prep-gear__dossier-ref{
  color:var(--color-on-paper-muted, #5c5a52);
}
html[data-theme="dark"] .prep-gear__dossier-list,
html[data-theme="dark"] .prep-gear__dossier-list li,
html[data-theme="dark"] .prep-gear__dossier-head{
  border-color:rgba(23,24,20,.14);
}
html[data-theme="dark"] .prep-gear__dossier-list li:before{
  background:var(--color-on-paper, #171814);
}
html[data-theme="dark"] .prep-gear__dossier-cta{
  background:#11110f;
  border-color:#11110f;
  color:#fff;
}
html[data-theme="dark"] .prep-gear__dossier-cta:hover{
  background:var(--prep-yellow);
  color:#11110f;
}

@media (prefers-reduced-motion: reduce){
  .prep-gear__knob{transition:none}
  .prep-gear__dossier.is-active,
  .prep-gear__dossier.is-leaving{animation:none}
}

@media(max-width:900px){
  .prep-gear{
  padding:64px max(20px, 5vw) 72px;
  }
  .prep-gear__stage{
  grid-template-columns:1fr;
  gap:22px;
  }
  .prep-gear__switch{
  grid-template-columns:1fr;
  min-height:0;
  gap:14px;
  }
  .prep-gear__gate{
  border-right:0;
  border-bottom:1px solid var(--prep-line);
  padding:4px 8px 18px;
  min-height:56px;
  }
  .prep-gear__path--v{display:none}
  .prep-gear__path--h{
  display:block;
  width:100%;
  max-width:280px;
  height:36px;
  margin:0 auto;
  }
  .prep-gear__knob{
  left:calc(8% + var(--prep-index) * 42%);
  top:50%;
  margin-left:-11px;
  margin-top:-11px;
  transition:left .32s cubic-bezier(.22,.8,.28,1);
  }
  .prep-gear__positions{
  flex-direction:row;
  gap:0;
  }
  .prep-gear__pos{
  flex:1;
  min-width:0;
  grid-template-columns:1fr;
  gap:8px;
  padding:14px 10px;
  border:0;
  border-right:1px solid var(--prep-line);
  text-align:center;
  justify-items:center;
  }
  .prep-gear__pos:last-child{border-right:0}
  .prep-gear__pos-num{font-size:22px}
  .prep-gear__pos-text{
  font-size:12px;
  line-height:1.25;
  }
  .prep-gear__dossier{
  padding:24px 18px 22px;
  }
  .prep-gear__dossier-head{
  flex-direction:column;
  gap:8px;
  }
  .prep-gear__dossier-cta{
  width:100%;
  justify-content:center;
  }
}

@media(max-width:430px){
  .prep-gear__pos{padding:12px 6px}
  .prep-gear__pos-text{font-size:11px}
}

#process,
#documents,
#duration,
#visa-routes,
#readiness,
#story,
#team,
#mission,
#who-needs,
#tax-docs,
#precheck,
#prep-modes,
#digital-partner,
#faq{
  scroll-margin-top:100px;
}

/* ===== Steuererklärung: Three Statuses ===== */
.steuer-status{
  background:var(--paper, #f7f6f0);
  color:var(--ink, #11110f);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.steuer-status__inner{
  max-width:1100px;
  margin:0 auto;
}
.steuer-status__head{
  max-width:640px;
  margin:0 0 clamp(28px, 4vw, 36px);
}
.steuer-status__label{
  display:inline-block;
  margin:0 0 12px;
  color:#c9a20e;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.steuer-status__title{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:#11110f;
}
.steuer-status__lead{
  margin:0 0 14px;
  max-width:48ch;
  font-size:16px;
  line-height:1.65;
  color:#6a675e;
}
.steuer-status__highlight{
  margin:0;
  font-size:15px;
  font-weight:700;
  line-height:1.5;
  color:#11110f;
}
.steuer-status__highlight mark{
  background:linear-gradient(transparent 58%, rgba(255,213,46,.72) 58%);
  color:inherit;
  padding:0 .04em;
}

.steuer-status__bands{
  list-style:none;
  margin:0;
  padding:0;
  border:1.5px solid #11110f;
  overflow:hidden;
}
.steuer-band{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0, 1.55fr) minmax(200px, .7fr);
  gap:20px 28px;
  align-items:start;
  padding:32px 28px 28px;
  overflow:hidden;
}
.steuer-band + .steuer-band{
  border-top:1px solid rgba(17,17,15,.18);
}
.steuer-band__bg{
  position:absolute;
  right:18px;
  top:10px;
  font-size:clamp(72px, 9vw, 120px);
  font-weight:900;
  line-height:1;
  letter-spacing:-.06em;
  opacity:.08;
  pointer-events:none;
  user-select:none;
}
.steuer-band__num{
  display:block;
  margin:0 0 10px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.06em;
}
.steuer-band__status{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.steuer-band__headline{
  margin:0 0 16px;
  max-width:22em;
  font-size:clamp(20px, 2.2vw, 28px);
  line-height:1.25;
  letter-spacing:-.025em;
  font-weight:900;
}
.steuer-band__list{
  list-style:none;
  margin:0 0 14px;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:9px;
  max-width:42em;
}
.steuer-band__list li{
  position:relative;
  padding-left:16px;
  font-size:15px;
  font-weight:600;
  line-height:1.45;
}
.steuer-band__list li:before{
  content:"";
  position:absolute;
  left:0;
  top:.55em;
  width:6px;
  height:6px;
  background:currentColor;
  opacity:.85;
}
.steuer-band__aside{
  margin:0;
  padding-top:28px;
  font-size:15px;
  font-weight:800;
  line-height:1.45;
  letter-spacing:-.01em;
  max-width:18em;
}
.steuer-band__toggle{
  display:inline-flex;
  margin:0;
  padding:0;
  border:0;
  background:none;
  font:inherit;
  font-size:14px;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
  cursor:pointer;
  color:inherit;
}
.steuer-band__toggle:focus-visible{
  outline:2px solid currentColor;
  outline-offset:3px;
}
.steuer-band__detail{
  margin-top:12px;
  max-width:42em;
}
.steuer-band__detail[hidden]{display:none !important}
.steuer-band__detail p{
  margin:0;
  font-size:14px;
  font-weight:600;
  line-height:1.6;
  opacity:.88;
}

.steuer-band--dark{
  background:#141311;
  color:#f2f0e8;
}
.steuer-band--dark .steuer-band__status{color:#ffd329}
.steuer-band--dark .steuer-band__num{color:rgba(255,213,41,.7)}
.steuer-band--dark .steuer-band__bg{color:#fff; opacity:.06}
.steuer-band--dark .steuer-band__list li{color:rgba(242,240,232,.9)}
.steuer-band--dark .steuer-band__aside{color:#f7f4ec}
.steuer-band--dark .steuer-band__toggle{color:#ffd329}

.steuer-band--yellow{
  background:#ffd329;
  color:#141311;
}
.steuer-band--yellow .steuer-band__status{color:rgba(20,19,17,.65)}
.steuer-band--yellow .steuer-band__num{color:rgba(20,19,17,.55)}
.steuer-band--yellow .steuer-band__bg{opacity:.1}
.steuer-band--yellow .steuer-band__toggle{color:#141311}

.steuer-band--cream{
  background:#f8f4ea;
  color:#141311;
  border-top:1.5px solid #11110f !important;
  box-shadow:inset 0 -1.5px 0 #11110f;
}
.steuer-band--cream .steuer-band__status{color:rgba(20,19,17,.55)}
.steuer-band--cream .steuer-band__num{color:#a88400}
.steuer-band--cream .steuer-band__bg{opacity:.07}

.steuer-status__cta{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.steuer-status__cta-title{
  margin:0 0 8px;
  font-size:clamp(20px, 2.2vw, 28px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.25;
  color:#11110f;
}
.steuer-status__cta-copy p{
  margin:0;
  max-width:40ch;
  font-size:15px;
  font-weight:600;
  line-height:1.55;
  color:#6a675e;
}
.steuer-status__cta-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:14px 24px;
  background:#11110f;
  color:#fff;
  font-weight:800;
  font-size:15px;
  border-radius:2px;
}
.steuer-status__cta-btn:hover{background:#2a2820}
.steuer-status__cta-btn:focus-visible{
  outline:2px solid #ffd329;
  outline-offset:3px;
}
.steuer-status__disclaimer{
  margin:22px 0 8px;
  max-width:62ch;
  font-size:13px;
  font-weight:600;
  line-height:1.55;
  color:rgba(17,17,15,.55);
}
.steuer-status__legal{
  margin:0;
  font-size:13px;
  font-weight:700;
}
.steuer-status__legal a{
  color:#11110f;
  text-decoration:underline;
  text-underline-offset:3px;
}
.steuer-status__legal a:hover{color:#8a6b00}
.steuer-status__legal a:focus-visible{
  outline:2px solid #11110f;
  outline-offset:3px;
}

html[data-theme="dark"] .steuer-status{
  background:var(--section-bg, #181916);
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .steuer-status__title,
html[data-theme="dark"] .steuer-status__cta-title{
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .steuer-status__lead,
html[data-theme="dark"] .steuer-status__cta-copy p,
html[data-theme="dark"] .steuer-status__disclaimer{
  color:var(--text-secondary, #c3c0b6);
}
html[data-theme="dark"] .steuer-status__highlight{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"] .steuer-status__bands{border-color:rgba(242,240,232,.28)}
html[data-theme="dark"] .steuer-band--dark{
  background:#24231e;
  color:#f2f0e8;
}
html[data-theme="dark"] .steuer-band--yellow{
  background:#c9a82a;
  color:#141311;
}
html[data-theme="dark"] .steuer-band--cream{
  background:#2a2822;
  color:#f2f0e8;
  border-top-color:rgba(242,240,232,.22) !important;
  box-shadow:inset 0 -1.5px 0 rgba(242,240,232,.18);
}
html[data-theme="dark"] .steuer-band--cream .steuer-band__status{color:rgba(242,240,232,.55)}
html[data-theme="dark"] .steuer-band--cream .steuer-band__num{color:#ffd329}
html[data-theme="dark"] .steuer-status__legal a{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"] .steuer-status__cta-btn{
  background:#ffd329;
  color:#141311;
}
html[data-theme="dark"].theme-lamps-on section.steuer-status.is-light-section-active .steuer-band{
  opacity:1;
  filter:none;
}

@media(max-width:900px){
  .steuer-status{
  padding:56px max(20px, 5vw) 64px;
  }
  .steuer-band{
  grid-template-columns:1fr;
  gap:14px;
  padding:26px 18px 22px;
  }
  .steuer-band__bg{
  font-size:72px;
  right:10px;
  top:8px;
  opacity:.06;
  }
  .steuer-band__aside{
  padding-top:4px;
  max-width:none;
  padding-left:16px;
  border-left:2px solid currentColor;
  }
  .steuer-band__list li{font-size:16px}
  .steuer-status__cta{
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  }
  .steuer-status__cta-btn{width:100%}
}

@media(max-width:430px){
  .steuer-band{padding:22px 14px 18px}
}

/* ===== Steuererklärung: Annual Tax File ===== */
.tax-file{
  --tf-cream:#f7f1e4;
  --tf-paper:#fbf7ef;
  --tf-ink:#141311;
  --tf-muted:#6a675e;
  --tf-line:rgba(20,19,17,.16);
  --tf-folder:#e8e0d0;
  --tf-yellow:#ffd329;
  --tf-need:#3a3934;
  --tf-skip:#d8d4ca;
  background:var(--tf-cream);
  color:var(--tf-ink);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.tax-file__inner{
  max-width:1120px;
  margin:0 auto;
}
.tax-file__sr{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.tax-file__head{
  max-width:640px;
  margin:0 0 clamp(22px, 3vw, 30px);
}
.tax-file__label{
  display:inline-block;
  margin:0 0 12px;
  padding:5px 10px;
  background:var(--tf-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.tax-file__title{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:var(--tf-ink);
}
.tax-file__lead{
  margin:0 0 14px;
  max-width:48ch;
  font-size:16px;
  line-height:1.65;
  color:var(--tf-muted);
}
.tax-file__highlight{
  margin:0;
  font-size:15px;
  font-weight:700;
  line-height:1.5;
  color:var(--tf-ink);
}
.tax-file__highlight mark{
  background:linear-gradient(transparent 58%, rgba(255,213,41,.72) 58%);
  color:inherit;
  padding:0 .04em;
}

.tax-file__summary{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:space-between;
  gap:12px 20px;
  margin:0 0 22px;
  padding:14px 16px;
  background:rgba(255,255,255,.45);
  border:1px solid var(--tf-line);
}
.tax-file__summary p{
  margin:0;
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  font-size:14px;
  font-weight:700;
  color:var(--tf-ink);
}
.tax-file__summary strong{
  font-variant-numeric:tabular-nums;
}
.tax-file__reset{
  margin:0;
  padding:8px 0;
  min-height:44px;
  border:0;
  background:none;
  font:inherit;
  font-size:13px;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
  color:var(--tf-ink);
  cursor:pointer;
}
.tax-file__reset:focus-visible{
  outline:2px solid var(--tf-ink);
  outline-offset:3px;
}

.tax-file__desk{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1.08fr);
  gap:0;
  border:1.5px solid var(--tf-ink);
  background:var(--tf-folder);
  box-shadow:4px 4px 0 rgba(20,19,17,.06);
  position:relative;
}
.tax-file__desk:before{
  content:"";
  position:absolute;
  left:12px;
  right:12px;
  top:10px;
  height:1px;
  background:repeating-linear-gradient(90deg, rgba(20,19,17,.22) 0 8px, transparent 8px 14px);
  pointer-events:none;
  opacity:.55;
}
.tax-file__basic,
.tax-file__extra{
  padding:28px 24px 24px;
  min-width:0;
}
.tax-file__basic{
  border-right:1px solid rgba(20,19,17,.18);
  background:
  linear-gradient(180deg, rgba(255,255,255,.35), transparent 40px),
  var(--tf-folder);
}
.tax-file__extra{
  background:
  linear-gradient(180deg, rgba(20,19,17,.03), transparent 36px),
  var(--tf-folder);
}
.tax-file__pane-head{
  margin:0 0 16px;
}
.tax-file__pane-title{
  margin:0 0 6px;
  font-size:clamp(18px, 2vw, 22px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.25;
}
.tax-file__pane-label{
  margin:0;
  font-size:12px;
  font-weight:700;
  letter-spacing:.04em;
  color:var(--tf-muted);
}

.tax-file__sheet{
  list-style:none;
  margin:0;
  padding:18px 16px;
  background:var(--tf-paper);
  border:1px solid rgba(20,19,17,.2);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);
  color:#141311;
}
.tax-file__row{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px 14px;
  padding:12px 0;
}
.tax-file__row + .tax-file__row{
  border-top:1px solid rgba(20,19,17,.12);
}
.tax-file__name{
  flex:1 1 180px;
  min-width:0;
  font-size:14px;
  font-weight:700;
  line-height:1.45;
  color:#141311;
  padding-top:8px;
}
.tax-file__states{
  margin:0;
  padding:0;
  border:0;
  display:inline-flex;
  flex-wrap:wrap;
  gap:6px;
  min-width:0;
}
.tax-file__state{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  margin:0;
  cursor:pointer;
}
.tax-file__state input{
  position:absolute;
  opacity:0;
  width:1px;
  height:1px;
  margin:0;
}
.tax-file__state span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 11px;
  border:1px solid rgba(20,19,17,.28);
  background:#fff;
  color:#141311;
  font-size:12px;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
}
.tax-file__state input:focus-visible + span{
  outline:2px solid #141311;
  outline-offset:2px;
}
.tax-file__state--have input:checked + span{
  background:var(--tf-yellow);
  border-color:#b89600;
  color:#141311;
}
.tax-file__state--need input:checked + span{
  background:var(--tf-need);
  border-color:var(--tf-need);
  color:#f4f1e8;
}
.tax-file__state--skip input:checked + span{
  background:var(--tf-skip);
  border-color:#bdb8ac;
  color:#4a4840;
}
.tax-file__basic-note{
  margin:12px 0 0;
  font-size:13px;
  font-weight:600;
  line-height:1.5;
  color:var(--tf-muted);
}

.tax-file__extra-stack{
  display:flex;
  flex-direction:column;
  gap:0;
  border:1px solid rgba(20,19,17,.2);
  background:rgba(255,255,255,.28);
}
.tax-file__cat{
  display:flex;
  align-items:center;
  gap:12px;
  width:100%;
  min-height:48px;
  margin:0;
  padding:12px 14px;
  border:0;
  border-bottom:1px solid rgba(20,19,17,.14);
  background:transparent;
  text-align:left;
  font:inherit;
  font-size:14px;
  font-weight:800;
  color:#141311;
  cursor:pointer;
}
.tax-file__cat:last-of-type{border-bottom:0}
.tax-file__cat:focus-visible{
  outline:2px solid #141311;
  outline-offset:-2px;
  z-index:1;
}
.tax-file__cat-num{
  flex:0 0 auto;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  color:rgba(20,19,17,.45);
}
.tax-file__cat.is-on{
  background:var(--tf-yellow);
}
.tax-file__cat.is-on .tax-file__cat-num{color:#141311}
.tax-file__panel{
  padding:0 14px 14px;
  background:var(--tf-paper);
  border-bottom:1px solid rgba(20,19,17,.14);
  color:#141311;
}
.tax-file__panel-title{
  margin:0 0 8px;
  padding-top:4px;
  font-size:15px;
  font-weight:900;
  letter-spacing:-.01em;
  color:#141311;
}
.tax-file__sheet--panel{
  padding:12px 12px;
  border-color:rgba(20,19,17,.14);
  box-shadow:none;
}
.tax-file.is-enhanced .tax-file__panel:not(.is-open){
  display:none;
}
.tax-file.is-enhanced .tax-file__panel.is-open{
  display:block;
}

.tax-file__receipt{
  grid-column:1 / -1;
  padding:18px 24px 20px;
  border-top:1px solid rgba(20,19,17,.18);
  background:#fff8e6;
  color:#141311;
}
.tax-file__receipt-title{
  margin:0 0 8px;
  font-size:15px;
  font-weight:900;
  line-height:1.35;
}
.tax-file__receipt p{
  margin:0 0 10px;
  max-width:70ch;
  font-size:14px;
  font-weight:600;
  line-height:1.55;
  color:#5c594f;
}
.tax-file__receipt-link{
  display:inline-flex;
  min-height:44px;
  align-items:center;
  font-size:13px;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
  color:#141311;
}
.tax-file__receipt-link:focus-visible{
  outline:2px solid #141311;
  outline-offset:3px;
}

.tax-file__cta{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.tax-file__cta-title{
  margin:0 0 8px;
  font-size:clamp(20px, 2.2vw, 28px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.25;
  color:var(--tf-ink);
}
.tax-file__cta-copy p{
  margin:0;
  max-width:42ch;
  font-size:15px;
  font-weight:600;
  line-height:1.55;
  color:var(--tf-muted);
}
.tax-file__cta-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:14px 24px;
  background:#11110f;
  color:#fff;
  font-weight:800;
  font-size:15px;
  border-radius:0;
}
.tax-file__cta-btn:hover{background:#2a2820}
.tax-file__cta-btn:focus-visible{
  outline:2px solid var(--tf-yellow);
  outline-offset:3px;
}

html[data-theme="dark"] .tax-file{
  --tf-cream:#1c1b18;
  --tf-folder:#2a2822;
  --tf-ink:#f2f0e8;
  --tf-muted:#c3c0b6;
  --tf-line:rgba(242,240,232,.22);
  background:var(--tf-cream);
  color:var(--tf-ink);
}
html[data-theme="dark"] .tax-file__title,
html[data-theme="dark"] .tax-file__cta-title,
html[data-theme="dark"] .tax-file__highlight,
html[data-theme="dark"] .tax-file__pane-title,
html[data-theme="dark"] .tax-file__summary,
html[data-theme="dark"] .tax-file__reset{
  color:var(--tf-ink);
}
html[data-theme="dark"] .tax-file__desk{
  border-color:rgba(242,240,232,.28);
  box-shadow:4px 4px 0 rgba(0,0,0,.25);
}
html[data-theme="dark"] .tax-file__desk:before{
  background:repeating-linear-gradient(90deg, rgba(242,240,232,.28) 0 8px, transparent 8px 14px);
}
html[data-theme="dark"] .tax-file__basic{
  border-right-color:rgba(242,240,232,.16);
}
html[data-theme="dark"] .tax-file__sheet,
html[data-theme="dark"] .tax-file__panel,
html[data-theme="dark"] .tax-file__sheet--panel{
  background:#fbf7ef;
  color:#141311;
}
html[data-theme="dark"] .tax-file__name,
html[data-theme="dark"] .tax-file__panel-title{
  color:#141311;
}
html[data-theme="dark"] .tax-file__cat{
  color:#f2f0e8;
  border-bottom-color:rgba(242,240,232,.14);
}
html[data-theme="dark"] .tax-file__cat-num{color:rgba(242,240,232,.45)}
html[data-theme="dark"] .tax-file__cat.is-on{
  background:var(--tf-yellow);
  color:#141311;
}
html[data-theme="dark"] .tax-file__cat.is-on .tax-file__cat-num{color:#141311}
html[data-theme="dark"] .tax-file__cat:focus-visible{
  outline-color:var(--tf-yellow);
}
html[data-theme="dark"] .tax-file__extra-stack{
  border-color:rgba(242,240,232,.2);
  background:rgba(0,0,0,.18);
}
html[data-theme="dark"] .tax-file__summary{
  background:rgba(0,0,0,.22);
}
html[data-theme="dark"] .tax-file__receipt{
  background:#2f2c24;
  border-top-color:rgba(242,240,232,.16);
  color:#f2f0e8;
}
html[data-theme="dark"] .tax-file__receipt-title,
html[data-theme="dark"] .tax-file__receipt-link{
  color:#f2f0e8;
}
html[data-theme="dark"] .tax-file__receipt p{color:#c3c0b6}
html[data-theme="dark"] .tax-file__cta-btn{
  background:var(--tf-yellow);
  color:#141311;
}
html[data-theme="dark"].theme-lamps-on section.tax-file.is-light-section-active .tax-file__desk{
  opacity:1;
  filter:none;
}

@media(min-width:901px){
  .tax-file.is-enhanced .tax-file__extra-stack{
  display:grid;
  grid-template-columns:minmax(200px, 240px) minmax(0, 1fr);
  align-items:start;
  gap:0;
  }
  .tax-file.is-enhanced .tax-file__cat{
  grid-column:1;
  border-right:1px solid rgba(20,19,17,.14);
  border-bottom:1px solid rgba(20,19,17,.14);
  }
  .tax-file.is-enhanced .tax-file__panel.is-open{
  grid-column:2;
  grid-row:1 / -1;
  align-self:stretch;
  height:100%;
  border-bottom:0;
  padding:14px;
  }
  .tax-file.is-enhanced .tax-file__panel-title{
  display:none;
  }
  html[data-theme="dark"] .tax-file.is-enhanced .tax-file__cat{
  border-right-color:rgba(242,240,232,.14);
  border-bottom-color:rgba(242,240,232,.14);
  }
}

@media(max-width:900px){
  .tax-file{
  padding:56px max(20px, 5vw) 64px;
  }
  .tax-file__desk{
  grid-template-columns:1fr;
  box-shadow:none;
  }
  .tax-file__basic{
  border-right:0;
  border-bottom:1px solid rgba(20,19,17,.18);
  padding:22px 18px 20px;
  }
  .tax-file__extra{
  padding:22px 18px 18px;
  }
  .tax-file__receipt{
  padding:16px 18px 18px;
  }
  .tax-file__name{
  flex:1 1 100%;
  padding-top:0;
  }
  .tax-file__states{
  width:100%;
  }
  .tax-file__state{
  flex:1 1 auto;
  }
  .tax-file__state span{
  width:100%;
  }
  .tax-file__cta{
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  }
  .tax-file__cta-btn{width:100%}
  html[data-theme="dark"] .tax-file__basic{
  border-bottom-color:rgba(242,240,232,.16);
  }
}

@media(max-width:430px){
  .tax-file__basic,
  .tax-file__extra{
  padding:18px 14px 16px;
  }
  .tax-file__sheet{padding:14px 12px}
  .tax-file__receipt{padding:14px}
}

/* ===== Diploma Document Map ===== */
.doc-map{
  background:var(--paper, #f7f6f0);
  color:var(--ink, #11110f);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.doc-map__inner{
  max-width:1180px;
  margin:0 auto;
}
.doc-map__head{
  max-width:640px;
  margin:0 0 clamp(28px, 4vw, 40px);
}
.doc-map__label{
  display:inline-block;
  margin:0 0 12px;
  color:#c9a20e;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.doc-map__title{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:#11110f;
}
.doc-map__lead{
  margin:0 0 14px;
  max-width:48ch;
  font-size:16px;
  line-height:1.65;
  color:#6a675e;
}
.doc-map__highlight{
  margin:0;
  font-size:15px;
  font-weight:700;
  line-height:1.5;
  color:#11110f;
}
.doc-map__highlight mark{
  background:linear-gradient(transparent 58%, rgba(255,213,46,.72) 58%);
  color:inherit;
  padding:0 .04em;
}

.doc-map__sheet{
  position:relative;
  border:1.5px solid #11110f;
  background:
  linear-gradient(180deg, rgba(255,255,255,.5), transparent 32%),
  repeating-linear-gradient(
  90deg,
  transparent 0 27px,
  rgba(17,17,15,.028) 27px 28px
  ),
  #f8f4ea;
  padding:18px 18px 16px;
  overflow:hidden;
}
.doc-map__sheet-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  padding:4px 4px 14px;
  border-bottom:1px solid rgba(17,17,15,.18);
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:rgba(17,17,15,.55);
}
.doc-map__stamp{
  position:absolute;
  right:22px;
  bottom:42px;
  z-index:2;
  padding:5px 7px;
  border:1px solid rgba(17,17,15,.4);
  background:rgba(255,213,46,.28);
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  transform:rotate(-11deg);
  opacity:.5;
  pointer-events:none;
}
.doc-map__route{
  position:absolute;
  left:28px;
  right:28px;
  top:68px;
  height:2px;
  background:linear-gradient(90deg, #ffd329 0%, #ffd329 100%);
  opacity:.85;
  z-index:1;
  pointer-events:none;
}
.doc-map__route:before,
.doc-map__route:after{
  content:"";
  position:absolute;
  top:50%;
  width:8px;
  height:8px;
  border:1.5px solid #11110f;
  background:#ffd329;
  border-radius:50%;
  transform:translateY(-50%);
  box-sizing:border-box;
}
.doc-map__route:before{left:0}
.doc-map__route:after{right:0}

.doc-map__zones{
  list-style:none;
  margin:0;
  padding:22px 0 8px;
  display:grid;
  grid-template-columns:0.9fr 1.28fr 1.28fr 0.95fr;
  gap:0;
  position:relative;
  z-index:2;
}
.doc-map__zone{
  position:relative;
  padding:18px 16px 16px;
  border-right:1px solid rgba(17,17,15,.16);
  min-width:0;
  transition:background-color .25s ease, opacity .25s ease;
}
.doc-map__zone:last-child{border-right:0}
.doc-map__zone--lg{padding-right:18px}
.doc-map__bg-num{
  position:absolute;
  right:8px;
  top:8px;
  font-size:clamp(48px, 5vw, 72px);
  font-weight:900;
  line-height:1;
  letter-spacing:-.06em;
  color:rgba(17,17,15,.05);
  pointer-events:none;
  user-select:none;
}
.doc-map__num{
  position:relative;
  display:inline-block;
  margin:0 0 8px;
  font-size:13px;
  font-weight:900;
  letter-spacing:.04em;
  color:#a88400;
  transition:color .25s ease, background-color .25s ease;
}
.doc-map__num:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-10px;
  width:8px;
  height:8px;
  margin:0 auto;
  border:1.5px solid #11110f;
  background:#f8f4ea;
  border-radius:50%;
  box-sizing:border-box;
}
.doc-map__cat{
  margin:0 0 6px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:rgba(17,17,15,.48);
}
.doc-map__zone-title{
  margin:0 0 6px;
  font-size:clamp(17px, 1.7vw, 21px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.25;
  color:#11110f;
}
.doc-map__purpose{
  margin:0 0 12px;
  font-size:13px;
  font-weight:600;
  line-height:1.4;
  color:#6a675e;
}
.doc-map__hover-note{
  display:none;
  margin:-4px 0 12px;
  font-size:12px;
  font-weight:600;
  line-height:1.45;
  color:#3a3832;
}
.doc-map__docs{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.doc-map__docs li{
  position:relative;
  padding-left:16px;
  font-size:13px;
  font-weight:600;
  line-height:1.45;
  color:#1a1810;
}
.doc-map__docs li:before{
  content:"";
  position:absolute;
  left:0;
  top:.45em;
  width:6px;
  height:6px;
  background:#11110f;
}
.doc-map__note{
  margin:8px 4px 0;
  padding-top:12px;
  border-top:1px solid rgba(17,17,15,.14);
  font-size:12px;
  font-weight:600;
  line-height:1.5;
  color:rgba(17,17,15,.55);
}

@media (hover:hover) and (pointer:fine){
  .doc-map__sheet:hover .doc-map__zone{
  opacity:.72;
  }
  .doc-map__sheet:hover .doc-map__zone:hover{
  opacity:1;
  background:rgba(255,255,255,.45);
  }
  .doc-map__zone:hover .doc-map__num{
  color:#11110f;
  background:linear-gradient(transparent 62%, rgba(255,213,46,.85) 62%);
  }
  .doc-map__zone:hover .doc-map__hover-note{
  display:block;
  }
}

.doc-map__cta{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:8px;
}
.doc-map__cta-title{
  margin:0 0 8px;
  font-size:clamp(18px, 2vw, 24px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.3;
  color:#11110f;
  max-width:22ch;
}
.doc-map__cta-sub{
  margin:0;
  max-width:40ch;
  font-size:14px;
  font-weight:600;
  line-height:1.55;
  color:#6a675e;
}
.doc-map__cta-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:14px 24px;
  background:#11110f;
  color:#fff;
  font-weight:800;
  font-size:15px;
  border-radius:2px;
}
.doc-map__cta-btn:hover{background:#2a2820}
.doc-map__cta-btn:focus-visible{
  outline:2px solid #ffd329;
  outline-offset:3px;
}

html[data-theme="dark"] .doc-map{
  background:var(--section-bg, #181916);
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .doc-map__title,
html[data-theme="dark"] .doc-map__cta-title{
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .doc-map__lead,
html[data-theme="dark"] .doc-map__cta-sub{
  color:var(--text-secondary, #c3c0b6);
}
html[data-theme="dark"] .doc-map__highlight{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"] .doc-map__sheet{
  background:
  linear-gradient(180deg, rgba(255,255,255,.4), transparent 32%),
  repeating-linear-gradient(
  90deg,
  transparent 0 27px,
  rgba(17,17,15,.03) 27px 28px
  ),
  #f4efe4;
  border-color:#1a1808;
  color:#141311;
}
html[data-theme="dark"] .doc-map__zone-title,
html[data-theme="dark"] .doc-map__docs li{
  color:#11110f;
}
html[data-theme="dark"] .doc-map__num:after{background:#f4efe4}
html[data-theme="dark"].theme-lamps-on section.doc-map.is-light-section-active .doc-map__sheet{
  opacity:1;
  filter:none;
}

@media(max-width:980px){
  .doc-map__zones{
  grid-template-columns:1fr 1fr;
  }
  .doc-map__zone{
  border-right:0;
  border-bottom:1px solid rgba(17,17,15,.14);
  }
  .doc-map__zone:nth-child(odd){
  border-right:1px solid rgba(17,17,15,.14);
  }
  .doc-map__route{display:none}
  .doc-map__num:after{display:none}
}

@media(max-width:900px){
  .doc-map{
  padding:56px max(20px, 5vw) 64px;
  }
  .doc-map__sheet{padding:16px 14px 14px}
  .doc-map__zones{
  grid-template-columns:1fr;
  padding:12px 0 4px 18px;
  }
  .doc-map__zone,
  .doc-map__zone:nth-child(odd){
  border-right:0;
  border-bottom:1px solid rgba(17,17,15,.14);
  padding:18px 8px 18px 14px;
  }
  .doc-map__zone:last-child{border-bottom:0}
  .doc-map__sheet{
  background:
  linear-gradient(180deg, rgba(255,255,255,.45), transparent 28%),
  #f8f4ea;
  }
  .doc-map__sheet:before{
  content:"";
  position:absolute;
  left:18px;
  top:62px;
  bottom:52px;
  width:2px;
  background:#ffd329;
  z-index:1;
  }
  .doc-map__num:after{
  display:block;
  left:-18px;
  right:auto;
  top:4px;
  margin:0;
  }
  .doc-map__bg-num{font-size:56px; opacity:.9}
  .doc-map__hover-note{display:block}
  .doc-map__stamp{opacity:.3; bottom:56px; right:14px}
  .doc-map__cta{
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  }
  .doc-map__cta-title{max-width:none}
  .doc-map__cta-btn{width:100%}
}

@media(max-width:430px){
  .doc-map__sheet{padding:14px 12px 12px}
  .doc-map__zones{padding-left:14px}
  .doc-map__sheet:before{left:14px}
  .doc-map__num:after{left:-16px}
}

@media(prefers-reduced-motion:reduce){
  .doc-map__zone{transition:none}
}

/* ===== Diploma: Recognition Time File ===== */
.time-file{
  --rt-cream:#f7f1e4;
  --rt-ink:#141311;
  --rt-muted:#6a675e;
  --rt-line:rgba(20,19,17,.16);
  --rt-yellow:#ffd329;
  --rt-paper:#fbf7ef;
  background:var(--rt-cream);
  color:var(--rt-ink);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.time-file__inner{
  max-width:1120px;
  margin:0 auto;
}
.time-file__head{
  max-width:640px;
  margin:0 0 clamp(28px, 4vw, 40px);
}
.time-file__label{
  display:inline-block;
  margin:0 0 12px;
  padding:5px 10px;
  background:var(--rt-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.time-file__title{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:var(--rt-ink);
}
.time-file__lead{
  margin:0;
  max-width:50ch;
  font-size:16px;
  line-height:1.65;
  color:var(--rt-muted);
}

.time-file__layout{
  display:grid;
  grid-template-columns:minmax(0, 1.15fr) minmax(0, .9fr);
  gap:clamp(28px, 4vw, 48px);
  align-items:start;
}

.time-file__display{
  position:relative;
  margin:0 0 22px;
  padding:8px 0 4px;
}
.time-file__display:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:1px;
  background:repeating-linear-gradient(90deg, rgba(20,19,17,.28) 0 10px, transparent 10px 16px);
  opacity:.55;
  pointer-events:none;
}
.time-file__display-label{
  margin:18px 0 8px;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  color:var(--rt-muted);
}
.time-file__figure{
  margin:0 0 18px;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:10px 16px;
  line-height:1;
}
.time-file__num{
  font-size:clamp(72px, 12vw, 128px);
  font-weight:900;
  letter-spacing:-.06em;
  color:var(--rt-ink);
  line-height:.9;
}
.time-file__unit{
  font-size:clamp(28px, 4vw, 42px);
  font-weight:900;
  letter-spacing:-.03em;
  color:var(--rt-ink);
}
.time-file__highlight{
  margin:0 0 12px;
  max-width:34em;
  font-size:17px;
  font-weight:700;
  line-height:1.5;
  color:var(--rt-ink);
}
.time-file__highlight mark{
  background:linear-gradient(transparent 58%, rgba(255,213,41,.75) 58%);
  color:inherit;
  padding:0 .04em;
}
.time-file__note{
  margin:0;
  max-width:40em;
  font-size:14px;
  font-weight:600;
  line-height:1.55;
  color:var(--rt-muted);
}

.time-file__stages{
  list-style:none;
  margin:0;
  padding:0;
  border:1.5px solid var(--rt-ink);
  background:var(--rt-paper);
  box-shadow:3px 3px 0 rgba(20,19,17,.05);
  color:#141311;
}
.time-file__stage{
  display:grid;
  grid-template-columns:48px minmax(0, 1fr);
  gap:14px 16px;
  padding:18px 18px 18px 16px;
}
.time-file__stage + .time-file__stage{
  border-top:1px solid rgba(20,19,17,.14);
}
.time-file__stage-num{
  font-size:13px;
  font-weight:900;
  letter-spacing:.06em;
  color:rgba(20,19,17,.45);
  padding-top:2px;
}
.time-file__stage-title{
  margin:0 0 8px;
  font-size:16px;
  font-weight:900;
  letter-spacing:-.015em;
  line-height:1.3;
  color:#141311;
}
.time-file__stage-text{
  margin:0 0 8px;
  font-size:15px;
  font-weight:600;
  line-height:1.55;
  color:#4a4840;
}
.time-file__stage-time{
  margin:0;
  font-size:12px;
  font-weight:800;
  letter-spacing:.03em;
  color:#8a6b00;
}

.time-file__side-title{
  margin:0 0 18px;
  font-size:clamp(18px, 2vw, 22px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.3;
  color:var(--rt-ink);
}
.time-file__factors{
  list-style:none;
  margin:0 0 20px;
  padding:0;
  border-top:1px solid var(--rt-line);
}
.time-file__factor{
  display:grid;
  grid-template-columns:36px minmax(0, 1fr);
  gap:10px 12px;
  padding:14px 0 14px 10px;
  border-top:1px solid transparent;
  border-bottom:1px solid var(--rt-line);
  border-left:3px solid transparent;
  outline:none;
  cursor:default;
  transition:border-color .18s ease, background-color .18s ease;
}
.time-file__factor:hover,
.time-file__factor:focus-visible,
.time-file__factor.is-on{
  border-left-color:var(--rt-yellow);
  background:rgba(255,211,41,.08);
}
.time-file__factor:focus-visible{
  outline:2px solid var(--rt-ink);
  outline-offset:2px;
}
.time-file__factor-num{
  font-size:12px;
  font-weight:900;
  letter-spacing:.05em;
  color:rgba(20,19,17,.4);
  padding-top:2px;
}
.time-file__factor-title{
  margin:0 0 6px;
  font-size:15px;
  font-weight:900;
  line-height:1.35;
  color:var(--rt-ink);
}
.time-file__factor-text{
  margin:0;
  font-size:14px;
  font-weight:600;
  line-height:1.55;
  color:var(--rt-muted);
}

.time-file__klaro{
  padding:18px 18px 16px;
  background:#141311;
  color:#f4f1e8;
}
.time-file__klaro-label{
  margin:0 0 10px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--rt-yellow);
}
.time-file__klaro-text{
  margin:0 0 12px;
  font-size:15px;
  font-weight:600;
  line-height:1.55;
  color:#f4f1e8;
}
.time-file__klaro-note{
  margin:0;
  font-size:13px;
  font-weight:600;
  line-height:1.5;
  color:rgba(244,241,232,.62);
}

.time-file__cta{
  margin-top:clamp(28px, 4vw, 36px);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:24px;
  border-top:1px solid var(--rt-line);
}
.time-file__cta-title{
  margin:0;
  max-width:28ch;
  font-size:clamp(20px, 2.2vw, 28px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.25;
  color:var(--rt-ink);
}
.time-file__cta-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:14px 24px;
  background:#11110f;
  color:#fff;
  font-weight:800;
  font-size:15px;
  border-radius:0;
}
.time-file__cta-btn:hover{background:#2a2820}
.time-file__cta-btn:focus-visible{
  outline:2px solid var(--rt-yellow);
  outline-offset:3px;
}

.time-file__source{
  margin:18px 0 0;
  font-size:13px;
  font-weight:700;
  color:var(--rt-muted);
}
.time-file__source a{
  color:var(--rt-ink);
  text-decoration:underline;
  text-underline-offset:3px;
}
.time-file__source a:hover{color:#8a6b00}
.time-file__source a:focus-visible{
  outline:2px solid var(--rt-ink);
  outline-offset:3px;
}

html[data-theme="dark"] .time-file{
  --rt-cream:#1c1b18;
  --rt-ink:#f2f0e8;
  --rt-muted:#c3c0b6;
  --rt-line:rgba(242,240,232,.22);
  --rt-paper:#2a2822;
  background:var(--rt-cream);
  color:var(--rt-ink);
}
html[data-theme="dark"] .time-file__title,
html[data-theme="dark"] .time-file__num,
html[data-theme="dark"] .time-file__unit,
html[data-theme="dark"] .time-file__highlight,
html[data-theme="dark"] .time-file__side-title,
html[data-theme="dark"] .time-file__cta-title,
html[data-theme="dark"] .time-file__factor-title{
  color:var(--rt-ink);
}
html[data-theme="dark"] .time-file__display:before{
  background:repeating-linear-gradient(90deg, rgba(242,240,232,.3) 0 10px, transparent 10px 16px);
}
html[data-theme="dark"] .time-file__highlight mark{
  background:linear-gradient(transparent 58%, rgba(255,213,41,.55) 58%);
}
html[data-theme="dark"] .time-file__stages{
  border-color:rgba(242,240,232,.28);
  background:#24221c;
  box-shadow:3px 3px 0 rgba(0,0,0,.28);
  color:#f2f0e8;
}
html[data-theme="dark"] .time-file__stage + .time-file__stage{
  border-top-color:rgba(242,240,232,.14);
}
html[data-theme="dark"] .time-file__stage-num{color:rgba(242,240,232,.42)}
html[data-theme="dark"] .time-file__stage-title{color:#f2f0e8}
html[data-theme="dark"] .time-file__stage-text{color:#c3c0b6}
html[data-theme="dark"] .time-file__stage-time{color:#ffd329}
html[data-theme="dark"] .time-file__factor-num{color:rgba(242,240,232,.42)}
html[data-theme="dark"] .time-file__factor:hover,
html[data-theme="dark"] .time-file__factor:focus-visible,
html[data-theme="dark"] .time-file__factor.is-on{
  background:rgba(255,211,41,.1);
}
html[data-theme="dark"] .time-file__factor:focus-visible{
  outline-color:var(--rt-yellow);
}
html[data-theme="dark"] .time-file__klaro{
  background:#10100e;
}
html[data-theme="dark"] .time-file__cta-btn{
  background:var(--rt-yellow);
  color:#141311;
}
html[data-theme="dark"] .time-file__source a{color:var(--rt-ink)}
html[data-theme="dark"].theme-lamps-on section.time-file.is-light-section-active .time-file__display,
html[data-theme="dark"].theme-lamps-on section.time-file.is-light-section-active .time-file__stages{
  opacity:1;
  filter:none;
}

@media(max-width:900px){
  .time-file{
  padding:56px max(20px, 5vw) 64px;
  }
  .time-file__layout{
  grid-template-columns:1fr;
  gap:28px;
  }
  .time-file__stages{
  position:relative;
  border:0;
  background:transparent;
  box-shadow:none;
  padding-left:18px;
  }
  .time-file__stages:before{
  content:"";
  position:absolute;
  left:4px;
  top:8px;
  bottom:8px;
  width:2px;
  background:var(--rt-yellow);
  }
  .time-file__stage{
  grid-template-columns:1fr;
  gap:8px;
  padding:0 0 22px 14px;
  position:relative;
  }
  .time-file__stage + .time-file__stage{
  border-top:0;
  }
  .time-file__stage:last-child{padding-bottom:0}
  .time-file__stage:before{
  content:"";
  position:absolute;
  left:-16px;
  top:6px;
  width:10px;
  height:10px;
  background:var(--rt-yellow);
  border:1.5px solid var(--rt-ink);
  box-sizing:border-box;
  }
  .time-file__stage-num{
  color:var(--rt-muted);
  }
  .time-file__stage-title,
  .time-file__stage-text{
  color:var(--rt-ink);
  }
  .time-file__stage-text{
  font-size:16px;
  color:var(--rt-muted);
  }
  .time-file__factor-text{
  font-size:15px;
  }
  .time-file__cta{
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  }
  .time-file__cta-title{max-width:none}
  .time-file__cta-btn{width:100%}
  html[data-theme="dark"] .time-file__stages{
  background:transparent;
  box-shadow:none;
  }
  html[data-theme="dark"] .time-file__stage:before{
  border-color:#f2f0e8;
  }
}

@media(max-width:430px){
  .time-file__num{font-size:68px}
  .time-file__unit{font-size:26px}
  .time-file__highlight{font-size:16px}
  .time-file__factor{
  grid-template-columns:28px minmax(0, 1fr);
  padding-left:8px;
  }
}

@media(prefers-reduced-motion:reduce){
  .time-file__factor{transition:none}
}

/* ===== Visa Route Directory ===== */
.visa-dir{
  --vd-cream:#f7f1e4;
  --vd-ink:#141311;
  --vd-muted:#6a675e;
  --vd-line:rgba(20,19,17,.16);
  --vd-yellow:#ffd329;
  --vd-panel:#fbf7ef;
  background:var(--vd-cream);
  color:var(--vd-ink);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.visa-dir__inner{
  max-width:1120px;
  margin:0 auto;
}
.visa-dir__head{
  max-width:640px;
  margin:0 0 clamp(28px, 4vw, 40px);
}
.visa-dir__label{
  display:inline-block;
  margin:0 0 12px;
  padding:5px 10px;
  background:var(--vd-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.visa-dir__title{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:var(--vd-ink);
}
.visa-dir__lead{
  margin:0;
  max-width:50ch;
  font-size:16px;
  line-height:1.65;
  color:var(--vd-muted);
}

.visa-dir__desk{
  border:1.5px solid var(--vd-ink);
  background:#f3eee3;
  box-shadow:3px 3px 0 rgba(20,19,17,.05);
}
.visa-dir__stack{
  display:flex;
  flex-direction:column;
}

.visa-dir__cat{
  display:grid;
  grid-template-columns:44px minmax(0, 1fr) 28px;
  align-items:center;
  gap:12px;
  width:100%;
  min-height:56px;
  margin:0;
  padding:14px 16px;
  border:0;
  border-bottom:1px solid var(--vd-line);
  border-left:3px solid transparent;
  background:transparent;
  text-align:left;
  font:inherit;
  color:var(--vd-ink);
  cursor:pointer;
}
.visa-dir__cat:focus-visible{
  outline:2px solid var(--vd-ink);
  outline-offset:-2px;
  z-index:1;
}
.visa-dir__cat-num{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1.5px solid rgba(20,19,17,.28);
  border-radius:50%;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  color:var(--vd-muted);
  background:transparent;
}
.visa-dir__cat-text{
  font-size:15px;
  font-weight:700;
  line-height:1.35;
  color:var(--vd-ink);
}
.visa-dir__cat-arrow{
  justify-self:end;
  font-size:16px;
  font-weight:700;
  color:transparent;
  transition:color .2s ease;
}
.visa-dir__cat.is-on{
  border-left-color:var(--vd-yellow);
  background:var(--vd-panel);
}
.visa-dir__cat.is-on .visa-dir__cat-num{
  background:var(--vd-yellow);
  border-color:#b89600;
  color:#141311;
}
.visa-dir__cat.is-on .visa-dir__cat-text{
  font-weight:900;
  color:#141311;
}
.visa-dir__cat.is-on .visa-dir__cat-arrow{
  color:#141311;
}

.visa-dir__panel{
  padding:20px 20px 22px;
  background:var(--vd-panel);
  border-bottom:1px solid var(--vd-line);
  color:#141311;
}
.visa-dir__progress{
  margin:0 0 16px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  color:rgba(20,19,17,.5);
}
.visa-dir__progress span{color:#141311}
.visa-dir__routes{
  display:flex;
  flex-direction:column;
  gap:0;
}
.visa-dir__route{
  padding:18px 0;
}
.visa-dir__route + .visa-dir__route{
  border-top:1px solid rgba(20,19,17,.14);
}
.visa-dir__route-name{
  margin:0 0 14px;
  font-size:clamp(17px, 2vw, 20px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.3;
  color:#141311;
}
.visa-dir__route-tag{
  margin:0 0 6px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.1em;
  text-transform:uppercase;
  color:#8a6b00;
}
.visa-dir__route-text{
  margin:0 0 14px;
  font-size:15px;
  font-weight:600;
  line-height:1.6;
  color:#4a4840;
}
.visa-dir__route-more{
  display:inline-flex;
  align-items:center;
  min-height:44px;
  font-size:14px;
  font-weight:800;
  text-decoration:underline;
  text-underline-offset:3px;
  color:#141311;
}
.visa-dir__route-more:focus-visible{
  outline:2px solid #141311;
  outline-offset:3px;
}

.visa-dir.is-enhanced .visa-dir__panel:not(.is-open){
  display:none;
}
.visa-dir.is-enhanced .visa-dir__panel.is-open{
  display:block;
}
.visa-dir.is-enhanced .visa-dir__panel.is-entering{
  animation:visaDirPanelIn .25s ease;
}
@keyframes visaDirPanelIn{
  from{opacity:0; transform:translateY(10px)}
  to{opacity:1; transform:translateY(0)}
}
@media(prefers-reduced-motion:reduce){
  .visa-dir.is-enhanced .visa-dir__panel.is-entering{
  animation:none;
  }
}

.visa-dir__consult{
  margin-top:28px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding-top:24px;
  border-top:1px solid var(--vd-line);
}
.visa-dir__consult-title{
  margin:0;
  max-width:34ch;
  font-size:clamp(18px, 2.1vw, 24px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.3;
  color:var(--vd-ink);
}
.visa-dir__consult-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:14px 22px;
  background:var(--vd-yellow);
  color:#141311;
  border:1.5px solid #141311;
  font-weight:800;
  font-size:15px;
  border-radius:2px;
}
.visa-dir__consult-btn:hover{background:#ffe566}
.visa-dir__consult-btn:focus-visible{
  outline:2px solid #141311;
  outline-offset:3px;
}

.visa-dir__note{
  margin:18px 0 0;
  max-width:70ch;
  font-size:13px;
  font-weight:600;
  line-height:1.55;
  color:var(--vd-muted);
}

html[data-theme="dark"] .visa-dir{
  --vd-cream:#1c1b18;
  --vd-ink:#f2f0e8;
  --vd-muted:#c3c0b6;
  --vd-line:rgba(242,240,232,.22);
  --vd-panel:#fbf7ef;
  background:var(--vd-cream);
  color:var(--vd-ink);
}
html[data-theme="dark"] .visa-dir__title,
html[data-theme="dark"] .visa-dir__consult-title{
  color:var(--vd-ink);
}
html[data-theme="dark"] .visa-dir__desk{
  border-color:rgba(242,240,232,.28);
  background:#24221c;
  box-shadow:3px 3px 0 rgba(0,0,0,.28);
}
html[data-theme="dark"] .visa-dir__cat{
  color:var(--vd-ink);
  border-bottom-color:rgba(242,240,232,.14);
}
html[data-theme="dark"] .visa-dir__cat-num{
  border-color:rgba(242,240,232,.28);
  color:rgba(242,240,232,.55);
}
html[data-theme="dark"] .visa-dir__cat-text{color:var(--vd-ink)}
html[data-theme="dark"] .visa-dir__cat.is-on{
  background:var(--vd-panel);
}
html[data-theme="dark"] .visa-dir__cat.is-on .visa-dir__cat-text,
html[data-theme="dark"] .visa-dir__cat.is-on .visa-dir__cat-arrow{
  color:#141311;
}
html[data-theme="dark"] .visa-dir__cat.is-on .visa-dir__cat-num{
  background:var(--vd-yellow);
  border-color:#b89600;
  color:#141311;
}
html[data-theme="dark"] .visa-dir__cat:focus-visible{
  outline-color:var(--vd-yellow);
}
html[data-theme="dark"] .visa-dir__panel{
  background:var(--vd-panel);
  border-bottom-color:rgba(20,19,17,.12);
  color:#141311;
}
html[data-theme="dark"] .visa-dir__consult-btn{
  border-color:#f2f0e8;
}
html[data-theme="dark"].theme-lamps-on section.visa-dir.is-light-section-active .visa-dir__desk{
  opacity:1;
  filter:none;
}

@media(min-width:769px){
  .visa-dir.is-enhanced .visa-dir__stack{
  display:grid;
  grid-template-columns:minmax(240px, 300px) minmax(0, 1fr);
  align-items:stretch;
  }
  .visa-dir.is-enhanced .visa-dir__cat{
  grid-column:1;
  border-right:1px solid var(--vd-line);
  }
  .visa-dir.is-enhanced .visa-dir__panel.is-open{
  grid-column:2;
  grid-row:1 / -1;
  border-bottom:0;
  align-self:stretch;
  min-height:100%;
  padding:24px 26px 28px;
  }
  html[data-theme="dark"] .visa-dir.is-enhanced .visa-dir__cat{
  border-right-color:rgba(242,240,232,.14);
  }
}

@media(max-width:768px){
  .visa-dir{
  padding:56px max(20px, 5vw) 64px;
  }
  .visa-dir__desk{box-shadow:none}
  .visa-dir__cat{
  min-height:52px;
  padding:14px 14px;
  }
  .visa-dir__cat-arrow{transform:rotate(90deg)}
  .visa-dir__cat.is-on .visa-dir__cat-arrow{transform:rotate(90deg)}
  .visa-dir__panel{padding:16px 14px 18px}
  .visa-dir__route-text{font-size:16px}
  .visa-dir__consult{
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  }
  .visa-dir__consult-title{max-width:none}
  .visa-dir__consult-btn{width:100%}
}

@media(max-width:430px){
  .visa-dir__cat{
  grid-template-columns:40px minmax(0, 1fr) 22px;
  gap:10px;
  padding:12px;
  }
  .visa-dir__route{padding:16px 0}
}

/* ===== Employment: Candidate Readiness File ===== */

.ready-file{
  --rf-cream:#f3eee3;
  --rf-paper:#fbf7ef;
  --rf-ink:#141311;
  --rf-muted:#6a675e;
  --rf-line:rgba(20,19,17,.16);
  --rf-yellow:#ffd329;
  --rf-bridge-top:72px;
  background:var(--rf-cream);
  color:var(--rf-ink);
  padding:clamp(56px, 8vw, 96px) max(5vw, 24px);
}
.ready-file__inner{
  max-width:1120px;
  margin:0 auto;
}
.ready-file__head{
  max-width:640px;
  margin:0 0 clamp(28px, 4vw, 40px);
}
.ready-file__label{
  display:inline-block;
  margin:0 0 12px;
  padding:5px 10px;
  background:var(--rf-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.ready-file__title{
  margin:0 0 14px;
  font-size:clamp(28px, 4vw, 46px);
  line-height:1.15;
  letter-spacing:-.03em;
  font-weight:900;
  color:var(--rf-ink);
}
.ready-file__lead{
  margin:0;
  max-width:50ch;
  font-size:16px;
  line-height:1.65;
  color:var(--rf-muted);
}

.ready-file__sheet{
  border:1.5px solid var(--rf-ink);
  background:var(--rf-paper);
  box-shadow:3px 3px 0 rgba(20,19,17,.05);
  overflow:hidden;
}
.ready-file__desk{
  position:relative;
  display:grid;
  grid-template-columns:minmax(240px, .42fr) minmax(0, .58fr);
  align-items:stretch;
}

.ready-file__summary{
  position:relative;
  padding:24px 22px 28px;
  border-right:1px solid var(--rf-line);
  background:
  linear-gradient(180deg, rgba(255,255,255,.4), transparent 48px),
  var(--rf-paper);
  color:#141311;
}
.ready-file__check{
  display:inline-block;
  margin:0 0 16px;
  padding:4px 9px;
  background:var(--rf-yellow);
  color:#141311;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
}
.ready-file__fields{
  margin:0;
  padding:0;
}
.ready-file__field{
  margin:0 0 14px;
}
.ready-file__field:last-child{margin-bottom:0}
.ready-file__field dt{
  margin:0 0 6px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  color:#6a675e;
}
.ready-file__field dd{
  margin:0;
  min-height:18px;
  border-bottom:1px solid rgba(20,19,17,.22);
}

.ready-file__bridge{
  display:none;
}

.ready-file__groups{
  display:flex;
  flex-direction:column;
  min-width:0;
  background:rgba(255,255,255,.28);
}
.ready-file__group{
  border-bottom:1px solid var(--rf-line);
}
.ready-file__group:last-child{border-bottom:0}
.ready-file__group-btn{
  display:grid;
  grid-template-columns:44px minmax(0, 1fr) auto auto;
  align-items:center;
  gap:10px 12px;
  width:100%;
  min-height:64px;
  margin:0;
  padding:16px 18px;
  border:0;
  border-left:3px solid transparent;
  background:transparent;
  text-align:left;
  font:inherit;
  color:#141311;
  cursor:pointer;
}
.ready-file__group-btn:focus-visible{
  outline:2px solid #141311;
  outline-offset:-2px;
  z-index:1;
}
.ready-file__group-num{
  display:inline-grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1.5px solid rgba(20,19,17,.28);
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  color:#6a675e;
  background:transparent;
  transition:background .25s ease, border-color .25s ease, color .25s ease;
}
.ready-file__group-copy{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.ready-file__group-tag{
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#8a6b00;
}
.ready-file__group-title{
  font-size:15px;
  font-weight:900;
  line-height:1.35;
  letter-spacing:-.015em;
  color:#141311;
}
.ready-file__group-status{
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  color:#8a6b00;
  white-space:nowrap;
}
.ready-file__group-status[hidden]{display:none !important}
.ready-file__group-icon{
  position:relative;
  width:16px;
  height:16px;
  flex:0 0 auto;
}
.ready-file__group-icon:before,
.ready-file__group-icon:after{
  content:"";
  position:absolute;
  background:#141311;
  transition:transform .25s ease, opacity .25s ease;
}
.ready-file__group-icon:before{
  left:2px;
  right:2px;
  top:7px;
  height:2px;
}
.ready-file__group-icon:after{
  top:2px;
  bottom:2px;
  left:7px;
  width:2px;
}
.ready-file__group.is-open .ready-file__group-icon:after{
  transform:scaleY(0);
  opacity:0;
}
.ready-file__group.is-open .ready-file__group-btn{
  border-left-color:var(--rf-yellow);
  background:rgba(255,211,41,.12);
}
.ready-file__group.is-open .ready-file__group-num{
  background:var(--rf-yellow);
  border-color:#b89600;
  color:#141311;
}

.ready-file__group-body{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .25s ease;
}
.ready-file__group-inner{
  overflow:hidden;
  min-height:0;
}
.ready-file__group.is-open .ready-file__group-body{
  grid-template-rows:1fr;
}
.ready-file:not(.is-enhanced) .ready-file__group-body{
  grid-template-rows:1fr;
}
.ready-file__items{
  list-style:none;
  margin:0;
  padding:0 18px 18px 62px;
}
.ready-file__items li{
  position:relative;
  padding:10px 0 10px 18px;
  border-top:1px solid rgba(20,19,17,.12);
  font-size:15px;
  font-weight:600;
  line-height:1.5;
  color:#3f3d37;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .25s ease, transform .25s ease;
}
.ready-file__items li:first-child{border-top:0}
.ready-file__items li:before{
  content:"";
  position:absolute;
  left:0;
  top:1.05em;
  width:7px;
  height:7px;
  border:1.5px solid rgba(20,19,17,.55);
  background:transparent;
}
.ready-file.is-enhanced .ready-file__group.is-open .ready-file__items li{
  opacity:1;
  transform:none;
}
.ready-file.is-enhanced .ready-file__group.is-open .ready-file__items li:nth-child(2){transition-delay:.03s}
.ready-file.is-enhanced .ready-file__group.is-open .ready-file__items li:nth-child(3){transition-delay:.06s}
.ready-file.is-enhanced .ready-file__group.is-open .ready-file__items li:nth-child(4){transition-delay:.09s}
.ready-file.is-enhanced .ready-file__group.is-open .ready-file__items li:nth-child(5){transition-delay:.12s}
.ready-file:not(.is-enhanced) .ready-file__items li{
  opacity:1;
  transform:none;
}

.ready-file__assist{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:22px 24px;
  background:#141311;
  color:#f4f1e8;
}
.ready-file__assist-title{
  margin:0 0 8px;
  max-width:34ch;
  font-size:clamp(17px, 2vw, 22px);
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.3;
  color:#f4f1e8;
}
.ready-file__assist-copy p{
  margin:0;
  max-width:48ch;
  font-size:14px;
  font-weight:600;
  line-height:1.55;
  color:rgba(244,241,232,.72);
}
.ready-file__assist-btn{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:12px 20px;
  background:var(--rf-yellow);
  color:#141311;
  border:1.5px solid #141311;
  font-weight:800;
  font-size:14px;
  border-radius:2px;
}
.ready-file__assist-btn:hover{background:#ffe566}
.ready-file__assist-btn:focus-visible{
  outline:2px solid var(--rf-yellow);
  outline-offset:3px;
}

.ready-file__note{
  margin:16px 0 0;
  max-width:70ch;
  font-size:13px;
  font-weight:600;
  line-height:1.55;
  color:var(--rf-muted);
}

html[data-theme="dark"] .ready-file{
  --rf-cream:#161512;
  --rf-paper:#2a2822;
  --rf-ink:#f2f0e8;
  --rf-muted:#c3c0b6;
  --rf-line:rgba(242,240,232,.2);
  background:var(--rf-cream);
  color:var(--rf-ink);
}
html[data-theme="dark"] .ready-file__title{color:var(--rf-ink)}
html[data-theme="dark"] .ready-file__sheet{
  border-color:rgba(242,240,232,.28);
  background:var(--rf-paper);
  box-shadow:3px 3px 0 rgba(0,0,0,.28);
}
html[data-theme="dark"] .ready-file__summary{
  background:
  linear-gradient(180deg, rgba(255,255,255,.04), transparent 48px),
  #2f2c24;
  border-right-color:rgba(242,240,232,.14);
  color:var(--rf-ink);
}
html[data-theme="dark"] .ready-file__group-title{
  color:var(--rf-ink);
}
html[data-theme="dark"] .ready-file__field dt,
html[data-theme="dark"] .ready-file__group-num{
  color:rgba(242,240,232,.55);
}
html[data-theme="dark"] .ready-file__field dd{
  border-bottom-color:rgba(242,240,232,.28);
}
html[data-theme="dark"] .ready-file__groups{
  background:rgba(0,0,0,.18);
}
html[data-theme="dark"] .ready-file__group{
  border-bottom-color:rgba(242,240,232,.14);
}
html[data-theme="dark"] .ready-file__group-btn{
  color:var(--rf-ink);
}
html[data-theme="dark"] .ready-file__group-num{
  border-color:rgba(242,240,232,.28);
}
html[data-theme="dark"] .ready-file__group.is-open .ready-file__group-btn{
  background:rgba(255,211,41,.14);
}
html[data-theme="dark"] .ready-file__group.is-open .ready-file__group-num{
  background:var(--rf-yellow);
  border-color:#b89600;
  color:#141311;
}
html[data-theme="dark"] .ready-file__group-icon:before,
html[data-theme="dark"] .ready-file__group-icon:after{
  background:var(--rf-ink);
}
html[data-theme="dark"] .ready-file__items li{
  color:rgba(242,240,232,.86);
  border-top-color:rgba(242,240,232,.12);
}
html[data-theme="dark"] .ready-file__items li:before{
  border-color:rgba(242,240,232,.55);
}
html[data-theme="dark"] .ready-file__assist{
  background:#10100e;
}
html[data-theme="dark"] .ready-file__assist-btn{
  border-color:#f2f0e8;
}
html[data-theme="dark"] .ready-file__group-btn:focus-visible{
  outline-color:var(--rf-yellow);
}
html[data-theme="dark"].theme-lamps-on section.ready-file.is-light-section-active .ready-file__sheet{
  opacity:1;
  filter:none;
}

@media(min-width:769px){
  .ready-file.is-active .ready-file__bridge{
  display:block;
  position:absolute;
  right:-1px;
  top:var(--rf-bridge-top, 72px);
  width:18px;
  height:2px;
  background:var(--rf-yellow);
  transform:translateY(-50%);
  transition:top .3s ease;
  z-index:2;
  }
  .ready-file.is-active .ready-file__bridge:after{
  content:"";
  position:absolute;
  right:-10px;
  top:50%;
  width:10px;
  height:2px;
  background:var(--rf-yellow);
  transform:translateY(-50%);
  }
}

@media(max-width:768px){
  .ready-file{
  padding:56px max(20px, 5vw) 64px;
  }
  .ready-file__sheet{box-shadow:none}
  .ready-file__desk{
  grid-template-columns:1fr;
  }
  .ready-file__summary{
  border-right:0;
  border-bottom:1px solid var(--rf-line);
  padding:20px 16px 18px;
  }
  .ready-file__group-btn{
  grid-template-columns:40px minmax(0, 1fr) auto;
  padding:14px 14px;
  }
  .ready-file__group-status{
  display:none !important;
  }
  .ready-file__items{
  padding:0 14px 16px 54px;
  }
  .ready-file__items li{
  font-size:16px;
  }
  .ready-file__assist{
  flex-direction:column;
  align-items:stretch;
  gap:16px;
  padding:18px 16px;
  }
  .ready-file__assist-title{max-width:none}
  .ready-file__assist-btn{width:100%}
  html[data-theme="dark"] .ready-file__summary{
  border-bottom-color:rgba(242,240,232,.14);
  }
}

@media(max-width:430px){
  .ready-file__summary{padding:18px 14px 16px}
  .ready-file__group-btn{padding:12px}
  .ready-file__items{padding-left:48px; padding-right:12px}
}

@media(prefers-reduced-motion:reduce){
  .ready-file__group-body,
  .ready-file__group-num,
  .ready-file__items li,
  .ready-file__bridge,
  .ready-file__group-icon:before,
  .ready-file__group-icon:after{
  transition:none;
  }
}

/* ===== Klaro pre-check (martvis) ===== */

.precheck{
  background:var(--paper, #f7f6f0);
  color:var(--ink, #11110f);
  padding:clamp(56px, 8vw, 92px) max(5vw, 24px);
  scroll-margin-top:100px;
}
.precheck__wrap{
  max-width:1100px;
  margin:0 auto;
}
.precheck__head{max-width:640px; margin-bottom:36px}
.precheck__title{
  margin:10px 0 12px;
  font-size:clamp(30px, 4vw, 48px);
  line-height:1.1;
  letter-spacing:-.04em;
  font-weight:900;
}
.precheck__lead{
  margin:0;
  font-size:17px;
  line-height:1.65;
  color:var(--muted, #686862);
  max-width:46ch;
}
.precheck__desk{
  display:grid;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  border:1.5px solid #11110f;
  background:#faf8f2;
  min-height:420px;
}
.precheck__left,
.precheck__right{
  padding:28px 26px 32px;
  min-width:0;
}
.precheck__left{
  border-right:1px solid rgba(17,17,15,.22);
}
.precheck__stage-label span{
  display:inline-block;
  font-size:12px;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:uppercase;
  margin-bottom:6px;
}
.precheck__stage-label p{
  margin:0 0 22px;
  font-size:14px;
  color:var(--muted, #686862);
  line-height:1.5;
}
.precheck__progress{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:22px;
}
.precheck__marks{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}
.precheck__marks li{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  font-weight:800;
  color:rgba(17,17,15,.45);
}
.precheck__marks li i{
  width:18px;
  height:18px;
  border:1.5px solid rgba(17,17,15,.35);
  border-radius:50%;
  display:grid;
  place-items:center;
  background:transparent;
  position:relative;
}
.precheck__marks li i:after{
  content:"";
  width:8px;
  height:5px;
  border-left:2px solid transparent;
  border-bottom:2px solid transparent;
  transform:rotate(-45deg) translate(1px, -1px);
}
.precheck__marks li.is-done{color:#11110f}
.precheck__marks li.is-done i{
  background:var(--yellow, #ffd52e);
  border-color:#11110f;
}
.precheck__marks li.is-done i:after{
  border-left-color:#11110f;
  border-bottom-color:#11110f;
}
.precheck__marks li.is-active span{
  background:var(--yellow, #ffd52e);
  color:#11110f;
  padding:2px 6px;
}
.precheck__count{
  margin:0;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
}
.precheck__done{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:18px;
}
.precheck__done[hidden]{display:none !important}
.precheck__done-item{
  display:flex;
  align-items:baseline;
  gap:10px;
  padding:8px 0;
  border-bottom:1px solid rgba(17,17,15,.12);
  cursor:pointer;
  background:none;
  border-left:0;
  border-right:0;
  border-top:0;
  width:100%;
  text-align:left;
  font:inherit;
  color:inherit;
}
.precheck__done-item:hover{color:#8a6b00}
.precheck__done-item:focus-visible{
  outline:2px solid var(--yellow, #ffd52e);
  outline-offset:2px;
}
.precheck__done-num{
  font-size:12px;
  font-weight:900;
  color:rgba(17,17,15,.5);
}
.precheck__done-q{
  flex:1;
  font-size:13px;
  font-weight:700;
  line-height:1.35;
}
.precheck__done-a{
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.precheck__questions{position:relative; min-height:180px}
.precheck__q{
  margin:0;
  padding:0;
  border:0;
  min-width:0;
}
.precheck__q[hidden]{display:none !important}
.precheck__q.is-active{
  animation:precheck-in .45s ease both;
}
.precheck__q legend{
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:8px;
}
.precheck__q-num{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  color:rgba(17,17,15,.45);
}
.precheck__q-text{
  font-size:clamp(20px, 2.4vw, 26px);
  font-weight:900;
  line-height:1.25;
  letter-spacing:-.03em;
  color:#11110f;
}
.precheck__q-note{
  margin:0 0 18px;
  font-size:14px;
  color:var(--muted, #686862);
  line-height:1.5;
}
.precheck__switch{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:0;
  border:1.5px solid #11110f;
  width:100%;
  max-width:320px;
}
.precheck__choice{
  position:relative;
  margin:0;
  cursor:pointer;
}
.precheck__choice input{
  position:absolute;
  opacity:0;
  inset:0;
  margin:0;
  cursor:pointer;
}
.precheck__choice span{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:10px 14px;
  font-size:15px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
  background:transparent;
  color:#11110f;
  border-right:1.5px solid #11110f;
  transition:background .2s ease, color .2s ease;
}
.precheck__choice:last-child span{border-right:0}
.precheck__choice input:focus-visible + span{
  outline:2px solid #11110f;
  outline-offset:-4px;
}
.precheck__choice input[value="yes"]:checked + span{
  background:var(--yellow, #ffd52e);
  color:#11110f;
}
.precheck__choice input[value="no"]:checked + span{
  background:#171714;
  color:#f2f0e8;
}

.precheck__locked{
  position:relative;
  min-height:280px;
  padding:8px 4px 24px;
}
.precheck__locked-title{
  margin:0 0 18px;
  font-size:20px;
  font-weight:900;
  line-height:1.25;
  letter-spacing:-.02em;
  max-width:18ch;
}
.precheck__blur{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px 16px;
  background:#fffef8;
  border:1.5px solid rgba(17,17,15,.2);
  filter:blur(2.5px);
  opacity:.55;
  user-select:none;
  pointer-events:none;
}
.precheck__blur i{
  display:block;
  height:10px;
  background:rgba(17,17,15,.14);
  border-radius:1px;
}
.precheck__blur i:nth-child(1){width:88%}
.precheck__blur i:nth-child(2){width:74%}
.precheck__blur i:nth-child(3){width:82%}
.precheck__blur i:nth-child(4){width:66%}
.precheck__blur i:nth-child(5){width:78%}
.precheck__wait-stamp{
  position:absolute;
  right:18px;
  bottom:28px;
  padding:7px 10px;
  border:1.5px solid #11110f;
  background:rgba(255,213,46,.9);
  font-size:10px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
  transform:rotate(-4deg);
}

.precheck__unlocked[hidden]{display:none !important}
.precheck__unlocked.is-reveal .precheck__paper{
  animation:precheck-paper .55s ease both;
}
.precheck__unlocked.is-reveal .precheck__paper-stamp{
  animation:precheck-stamp .55s .15s ease both;
}
.precheck__unlocked.is-reveal .precheck__cta{
  animation:precheck-fade .5s .2s ease both;
}
.precheck__outcome{
  margin-bottom:18px;
}
.precheck__outcome h3{
  margin:0 0 8px;
  font-size:22px;
  font-weight:900;
  letter-spacing:-.03em;
  line-height:1.2;
}
.precheck__outcome p{
  margin:0 0 16px;
  font-size:15px;
  line-height:1.55;
  color:var(--muted, #686862);
  max-width:36ch;
}
.precheck__paper{
  position:relative;
  background:#fffef8;
  border:1.5px solid #11110f;
  padding:22px 20px 26px;
  box-shadow:0 14px 30px rgba(17,17,15,.08);
  color:#11110f;
}
.precheck__paper-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:16px;
  padding-bottom:12px;
  border-bottom:1px solid rgba(17,17,15,.15);
}
.precheck__paper-head h3{
  margin:0;
  font-size:18px;
  font-weight:900;
  letter-spacing:-.02em;
}
.precheck__paper-head code{
  font-family:inherit;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  color:rgba(17,17,15,.5);
  white-space:nowrap;
}
.precheck__docs{
  list-style:none;
  margin:0;
  padding:0;
}
.precheck__docs li{
  border-bottom:1px dashed rgba(17,17,15,.18);
}
.precheck__docs li:last-child{border-bottom:0}
.precheck__docs label{
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:12px 0;
  cursor:pointer;
}
.precheck__docs input{
  position:absolute;
  width:1px;
  height:1px;
  opacity:0;
  margin:0;
}
.precheck__box{
  flex:0 0 auto;
  width:16px;
  height:16px;
  margin-top:2px;
  border:1.5px solid #11110f;
  background:#fff;
  position:relative;
}
.precheck__docs input:checked + .precheck__box:after{
  content:"";
  position:absolute;
  left:3px;
  top:1px;
  width:7px;
  height:10px;
  border-right:2px solid #11110f;
  border-bottom:2px solid #11110f;
  transform:rotate(40deg);
}
.precheck__docs input:focus-visible + .precheck__box{
  outline:2px solid var(--yellow, #ffd52e);
  outline-offset:2px;
}
.precheck__doc-text{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
.precheck__doc-text strong{
  font-size:14px;
  font-weight:800;
  line-height:1.35;
}
.precheck__doc-text small{
  font-size:12px;
  color:rgba(17,17,15,.55);
  line-height:1.4;
}
.precheck__paper-stamp{
  position:absolute;
  right:16px;
  bottom:14px;
  padding:6px 9px;
  border:1.5px solid #11110f;
  background:rgba(255,213,46,.92);
  font-size:10px;
  font-weight:900;
  letter-spacing:.08em;
  transform:rotate(-6deg);
  opacity:0;
}
.precheck__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:18px;
  min-height:52px;
  padding:12px 22px;
  background:var(--yellow, #ffd52e);
  color:#11110f;
  font-weight:900;
  font-size:15px;
  border:1.5px solid #11110f;
  opacity:0;
}
.precheck__cta:hover{background:#ffe066}
.precheck__cta:focus-visible{
  outline:2px solid #11110f;
  outline-offset:3px;
}
.precheck__disclaimer{
  margin:22px 0 0;
  font-size:13px;
  line-height:1.55;
  color:var(--muted, #686862);
  max-width:62ch;
}

@keyframes precheck-in{
  from{opacity:0; transform:translateY(10px)}
  to{opacity:1; transform:translateY(0)}
}
@keyframes precheck-paper{
  from{opacity:0; transform:translateY(12px)}
  to{opacity:1; transform:translateY(0)}
}
@keyframes precheck-stamp{
  from{opacity:0; transform:rotate(-12deg) scale(.9)}
  to{opacity:1; transform:rotate(-6deg) scale(1)}
}
@keyframes precheck-fade{
  from{opacity:0; transform:translateY(6px)}
  to{opacity:1; transform:translateY(0)}
}

html[data-theme="dark"] .precheck{
  background:var(--section-bg, #181916);
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .precheck__title{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"] .precheck__lead,
html[data-theme="dark"] .precheck__stage-label p,
html[data-theme="dark"] .precheck__q-note,
html[data-theme="dark"] .precheck__disclaimer,
html[data-theme="dark"] .precheck__outcome p{
  color:var(--text-secondary, #c3c0b6);
}
html[data-theme="dark"] .precheck__desk{
  background:#1c1d19;
  border-color:rgba(242,240,232,.28);
}
html[data-theme="dark"] .precheck__left{
  border-right-color:rgba(242,240,232,.18);
}
html[data-theme="dark"] .precheck__q-text,
html[data-theme="dark"] .precheck__count,
html[data-theme="dark"] .precheck__locked-title,
html[data-theme="dark"] .precheck__outcome h3,
html[data-theme="dark"] .precheck__done-item,
html[data-theme="dark"] .precheck__marks li.is-done{
  color:var(--text-primary, #f2f0e8);
}
html[data-theme="dark"] .precheck__marks li{color:rgba(242,240,232,.4)}
html[data-theme="dark"] .precheck__marks li i{border-color:rgba(242,240,232,.35)}
html[data-theme="dark"] .precheck__marks li.is-done i{
  border-color:#11110f;
  background:var(--yellow, #ffd52e);
}
html[data-theme="dark"] .precheck__switch{border-color:rgba(242,240,232,.45)}
html[data-theme="dark"] .precheck__choice span{
  color:var(--text-primary, #f2f0e8);
  border-right-color:rgba(242,240,232,.45);
}
html[data-theme="dark"] .precheck__choice input[value="yes"]:checked + span{
  color:#11110f;
}
html[data-theme="dark"] .precheck__blur{
  background:#f4efe3;
  border-color:rgba(17,17,15,.25);
  opacity:.7;
  filter:blur(2px);
}
html[data-theme="dark"] .precheck__paper{
  background:#fffef8;
  color:#11110f;
  border-color:#11110f;
}
html[data-theme="dark"].theme-lamps-on section.precheck.is-light-section-active .precheck__desk{
  opacity:1;
  filter:none;
}
html[data-theme="dark"].theme-lamps-on section.precheck.is-light-section-active .precheck__left,
html[data-theme="dark"].theme-lamps-on section.precheck.is-light-section-active .precheck__right{
  opacity:1;
}

@media(max-width:900px){
  .precheck{padding:56px 22px 64px}
  .precheck__desk{
  grid-template-columns:1fr;
  min-height:0;
  }
  .precheck__left{
  border-right:0;
  border-bottom:1px solid rgba(17,17,15,.18);
  }
  html[data-theme="dark"] .precheck__left{
  border-bottom-color:rgba(242,240,232,.18);
  }
  .precheck__progress{
  flex-direction:row;
  align-items:center;
  }
  .precheck__marks{
  flex-direction:row;
  gap:14px;
  }
  .precheck__switch{max-width:none}
  .precheck__cta{width:100%}
}

@media(max-width:320px){
  .precheck__left,
  .precheck__right{padding:20px 14px 24px}
  .precheck__q-text{font-size:18px}
  .precheck__paper{padding:16px 12px 22px}
}

@media(prefers-reduced-motion:reduce){
  .precheck__q.is-active,
  .precheck__unlocked.is-reveal .precheck__paper,
  .precheck__unlocked.is-reveal .precheck__paper-stamp,
  .precheck__unlocked.is-reveal .precheck__cta{
  animation:none !important;
  opacity:1;
  transform:none;
  }
  .precheck__paper-stamp,
  .precheck__cta{opacity:1}
}

/* ===== DARK MODE ARCHITECTURE (global repair) ===== */
:root{
  --color-bg:#ffffff;
  --color-bg-secondary:#f7f6f0;
  --color-surface:#ffffff;
  --color-surface-raised:#ffffff;
  --color-text:#11110f;
  --color-text-secondary:#686862;
  --color-text-muted:#8a877c;
  --color-border:#deddd5;
  --color-border-strong:#c9c6bb;
  --color-accent:#ffd42a;
  --color-accent-hover:#ffe05c;
  --color-on-accent:#11120f;
  --color-paper:#f7f6f0;
  --color-paper-secondary:#efe9dc;
  --color-on-paper:#171814;
  --color-on-paper-muted:#615e55;
  --color-danger:#ff6b61;
  --color-focus:#ffd42a;

  /* Legacy aliases (light) */
  --page-bg:var(--color-bg);
  --section-bg:var(--color-bg-secondary);
  --surface-bg:var(--color-surface);
  --surface-raised:var(--color-surface-raised);
  --text-primary:var(--color-text);
  --text-secondary:var(--color-text-secondary);
  --text-muted:var(--color-text-muted);
  --border-color:var(--color-border);
  --paper-bg:var(--color-paper);
  --paper-text:var(--color-on-paper);
  --paper-muted:var(--color-on-paper-muted);
  --klaro-yellow:var(--color-accent);
}

html[data-theme="dark"]{
  color-scheme:dark;

  --color-bg:#0f100e;
  --color-bg-secondary:#141512;
  --color-surface:#191a17;
  --color-surface-raised:#20211d;

  --color-text:#f4f1e8;
  --color-text-secondary:#c4c0b4;
  --color-text-muted:#a7a397;

  --color-border:rgba(244, 241, 232, 0.18);
  --color-border-strong:rgba(244, 241, 232, 0.34);

  --color-accent:#ffd42a;
  --color-accent-hover:#ffe05c;
  --color-on-accent:#11120f;

  --color-paper:#eee8da;
  --color-paper-secondary:#e2dac9;
  --color-on-paper:#171814;
  --color-on-paper-muted:#615e55;

  --color-danger:#ff6b61;
  --color-focus:#ffd42a;

  /* Legacy aliases (dark) keep components working */
  --page-bg:var(--color-bg);
  --section-bg:var(--color-bg-secondary);
  --surface-bg:var(--color-surface);
  --surface-raised:var(--color-surface-raised);
  --text-primary:var(--color-text);
  --text-secondary:var(--color-text-secondary);
  --text-muted:var(--color-text-muted);
  --border-color:var(--color-border);
  --yellow:var(--color-accent);
  --yellow2:rgba(255, 212, 42, 0.16);
  --ink:var(--color-text);
  --muted:var(--color-text-secondary);
  --paper:var(--color-bg-secondary);
  --line:var(--color-border);
  --white:var(--color-surface);
  --paper-bg:var(--color-paper);
  --paper-text:var(--color-on-paper);
  --paper-muted:var(--color-on-paper-muted);
  --klaro-yellow:var(--color-accent);
}

/* Ban parent opacity/filter dimming from the moving lamp */
html[data-theme="dark"].theme-lamps-on .light-zone,
html[data-theme="dark"].theme-lamps-on .light-ambient,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-ambient,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone.is-light-active,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone.is-light-active.light-ambient,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone.is-waking,
html[data-theme="dark"].theme-lamps-on .light-zone:focus-within:not(.is-light-active),
html[data-theme="dark"].theme-lamps-on .light-zone:has(
  a:hover,
  button:hover,
  input:hover,
  textarea:hover,
  select:hover
):not(.is-light-active){
  opacity:1 !important;
  filter:none !important;
}

@media(max-width:900px){
  html[data-theme="dark"].theme-lamps-on .light-zone,
  html[data-theme="dark"].theme-lamps-on .light-ambient,
  html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-zone,
  html[data-theme="dark"].theme-lamps-on section.is-light-section-active .light-ambient{
  opacity:1 !important;
  filter:none !important;
  }
}

/* Lamp layer order: glow behind content, bulb decorative, nav on top */
.klaro-guide-glow-layer{z-index:1 !important}
.klaro-guide-layer{z-index:6 !important}
.page-wrapper > main{z-index:5}
.page-wrapper > footer{z-index:5}
.header{z-index:20 !important}

/* Soft zone glow stays behind text */
html[data-theme="dark"] .light-zone::after{
  z-index:0;
  mix-blend-mode:normal;
}

/* Dynamic section lighting: see section-lighting.css + section-lighting.js */

/* ===== Accent / yellow panels: always dark ink ===== */
html[data-theme="dark"] .cta,
html[data-theme="dark"] .yellow-panel,
html[data-theme="dark"] .accent-panel,
html[data-theme="dark"] [data-surface="accent"],
html[data-theme="dark"] .hero-art,
html[data-theme="dark"] .why-art,
html[data-theme="dark"] .detail-symbol{
  background:var(--color-accent);
  color:var(--color-on-accent);
}
html[data-theme="dark"] .cta :is(h1, h2, h3, h4, p, li, span, strong, a, label, small),
html[data-theme="dark"] .yellow-panel :is(h1, h2, h3, h4, p, li, span, strong, a),
html[data-theme="dark"] .accent-panel :is(h1, h2, h3, h4, p, li, span, strong, a),
html[data-theme="dark"] [data-surface="accent"] :is(h1, h2, h3, h4, p, li, span, strong, a),
html[data-theme="dark"] .hero-art :is(h1, h2, h3, h4, p, li, span, strong, b, small),
html[data-theme="dark"] .why-art :is(h1, h2, h3, h4, p, li, span, strong, b, small),
html[data-theme="dark"] .detail-symbol,
html[data-theme="dark"] .detail-symbol small{
  color:var(--color-on-accent);
}
html[data-theme="dark"] .cta > a{
  background:var(--color-on-accent);
  color:var(--color-accent);
}
html[data-theme="dark"] .cta > a:hover{
  background:#000;
  color:var(--color-accent);
}

/* ===== Paper islands: dark ink on cream (document surfaces only) ===== */
html[data-theme="dark"] .surface-paper,
html[data-theme="dark"] .service-brief,
html[data-theme="dark"] .doc-map__sheet,
html[data-theme="dark"] .hero-doc,
html[data-theme="dark"] .weg-doc,
html[data-theme="dark"] .akten-sheet,
html[data-theme="dark"] .akten-panel-paper,
html[data-theme="dark"] .akten-foldout,
html[data-theme="dark"] .steuer-band--cream,
html[data-theme="dark"] .precheck__paper,
html[data-theme="dark"] .tax-file__sheet,
html[data-theme="dark"] .tax-file__panel,
html[data-theme="dark"] .tax-file__sheet--panel,
html[data-theme="dark"] .prep-gear__dossier,
html[data-theme="dark"] .yk-you{
  background:var(--color-paper);
  color:var(--color-on-paper);
}
html[data-theme="dark"] .surface-paper :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .service-brief :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .doc-map__sheet :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .hero-doc :is(h1, h2, h3, h4, strong, b, header, footer),
html[data-theme="dark"] .weg-doc :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .akten-sheet :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .akten-panel-paper :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .akten-foldout :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .steuer-band--cream :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .precheck__paper :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .tax-file__sheet :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .tax-file__panel :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .prep-gear__dossier :is(h1, h2, h3, h4, strong, b),
html[data-theme="dark"] .yk-you :is(h1, h2, h3, h4, strong, b, p){
  color:var(--color-on-paper);
}
html[data-theme="dark"] .surface-paper :is(p, li, small, figcaption, span, label, td, th),
html[data-theme="dark"] .service-brief :is(p, li, small, figcaption, span, label),
html[data-theme="dark"] .doc-map__sheet :is(p, li, small, figcaption, span, label),
html[data-theme="dark"] .hero-doc :is(p, li, small, span),
html[data-theme="dark"] .weg-doc :is(p, li, small, span),
html[data-theme="dark"] .akten-panel-paper :is(p, li, small, span),
html[data-theme="dark"] .akten-foldout :is(p, li, small, span),
html[data-theme="dark"] .steuer-band--cream :is(p, li, small, span, label),
html[data-theme="dark"] .precheck__paper :is(p, li, small, span, label),
html[data-theme="dark"] .tax-file__sheet :is(p, li, small, span, label),
html[data-theme="dark"] .tax-file__panel :is(p, li, small, span, label),
html[data-theme="dark"] .prep-gear__dossier :is(p, li, small, span, label){
  color:var(--color-on-paper-muted);
}
html[data-theme="dark"] .prep-gear__dossier-num,
html[data-theme="dark"] .prep-gear__dossier-title,
html[data-theme="dark"] .prep-gear__dossier-price b,
html[data-theme="dark"] .prep-gear__dossier-list li{
  color:var(--color-on-paper);
}
html[data-theme="dark"] .prep-gear__dossier-eyebrow{
  color:#8a6b00;
}
html[data-theme="dark"] .prep-gear__dossier-cta{
  background:#11110f;
  color:#fff;
  border-color:#11110f;
}

html[data-theme="dark"] .steuer-band--yellow,
html[data-theme="dark"] .steuer-band--yellow :is(h1, h2, h3, h4, p, li, span, strong, small, label){
  background:var(--color-accent);
  color:var(--color-on-accent);
}

/* Yellow accents inside paper stay dark-gold, not pale */
html[data-theme="dark"] .surface-paper .section-label,
html[data-theme="dark"] .service-brief [class*="eyebrow"],
html[data-theme="dark"] .service-brief [class*="num"],
html[data-theme="dark"] .doc-map [class*="num"],
html[data-theme="dark"] .doc-map__num,
html[data-theme="dark"] .service-brief__num{
  color:#8a6b00;
}

/* Grey stage/factor numbers → yellow */
html[data-theme="dark"] .time-file__stage-num,
html[data-theme="dark"] .time-file__factor-num,
html[data-theme="dark"] .tax-file__cat-num,
html[data-theme="dark"] .visa-dir__cat-num,
html[data-theme="dark"] .ready-file__group-num,
html[data-theme="dark"] .ready-file__field dt{
  color:var(--color-accent);
  opacity:1;
}

/* ===== Functional numbers: solid Klaro yellow ===== */
html[data-theme="dark"] .hd-num,
html[data-theme="dark"] .hd-item.is-active .hd-num,
html[data-theme="dark"] .hd-q:hover .hd-num,
html[data-theme="dark"] .prom-num,
html[data-theme="dark"] .prom-stripe.is-open .prom-num,
html[data-theme="dark"] .archive__num,
html[data-theme="dark"] .history-chapter .archive__num,
html[data-theme="dark"] .portrait-wall__index,
html[data-theme="dark"] .portrait-wall__ph-num,
html[data-theme="dark"] .detail-sections article > span,
html[data-theme="dark"] .step > span,
html[data-theme="dark"] .why-item > span,
html[data-theme="dark"] .service-card > span,
html[data-theme="dark"] .doc-map__num,
html[data-theme="dark"] .service-brief__num,
html[data-theme="dark"] [data-step-number],
html[data-theme="dark"] .steuer-status__num,
html[data-theme="dark"] .visa-dir__num,
html[data-theme="dark"] .ready-file__group-num,
html[data-theme="dark"] .precheck__count,
html[data-theme="dark"] .tax-file__cat-num{
  color:var(--color-accent);
  opacity:1;
}

/* Decorative giant numbers: yellow at low opacity, never grey */
html[data-theme="dark"] .prom-bg-num,
html[data-theme="dark"] .prom-stripe.is-open .prom-bg-num,
html[data-theme="dark"] .portrait-wall__bio-num,
html[data-theme="dark"] .archive__bio-num{
  color:var(--color-accent);
  opacity:0.16;
}

/* ===== Clarity Gateway: cream reveal uses paper ink ===== */
html[data-theme="dark"] .gateway{
  --gw-cream:var(--color-paper);
  --gw-ink:var(--color-on-paper);
  --gw-muted:var(--color-on-paper-muted);
  --gw-yellow:var(--color-accent);
}
html[data-theme="dark"] .gateway .gateway__title,
html[data-theme="dark"] .gateway .gateway__title span,
html[data-theme="dark"] .gateway .gateway__close,
html[data-theme="dark"] .gateway h2{
  color:var(--color-on-paper);
}
html[data-theme="dark"] .gateway .gateway__lead{
  color:var(--color-on-paper-muted);
}
html[data-theme="dark"] .gateway .gateway__label{
  color:#8a6b00;
}
html[data-theme="dark"] .gateway .gateway__wordmark{
  -webkit-text-stroke:1.5px rgba(23, 24, 20, 0.22);
  color:transparent;
}
html[data-theme="dark"] .gateway .gateway__hint{
  color:rgba(244, 241, 232, 0.45);
}

/* History + portrait walls keep cream text on dark archive bg */
html[data-theme="dark"] .history-section.archive,
html[data-theme="dark"] .history-section.archive :is(h2, h3, p, a),
html[data-theme="dark"] .portrait-wall,
html[data-theme="dark"] .portrait-wall :is(h2, h3, p, a){
  /* restore cream on dark undo global paper bleed if any */
}
html[data-theme="dark"] .history-section.archive{
  color:var(--color-text);
}
html[data-theme="dark"] .history-section.archive .archive__ch-title,
html[data-theme="dark"] .history-section.archive .archive__finale-title,
html[data-theme="dark"] .history-section.archive .archive__intro-title,
html[data-theme="dark"] .portrait-wall__heading,
html[data-theme="dark"] .portrait-wall__bio-name,
html[data-theme="dark"] .portrait-wall__bond{
  color:var(--color-text);
}
html[data-theme="dark"] .history-section.archive .archive__ch-text,
html[data-theme="dark"] .history-section.archive .archive__finale-text,
html[data-theme="dark"] .portrait-wall__lead,
html[data-theme="dark"] .portrait-wall__bond-support,
html[data-theme="dark"] .portrait-wall__bio-meta,
html[data-theme="dark"] .portrait-wall__bio-quote{
  color:var(--color-text-secondary);
}
html[data-theme="dark"] .history-section.archive .archive__num,
html[data-theme="dark"] .history-section.archive .archive__ch-label,
html[data-theme="dark"] .history-section.archive .archive__eyebrow,
html[data-theme="dark"] .portrait-wall__label,
html[data-theme="dark"] .portrait-wall__bio-caption{
  color:var(--color-accent);
}

/* Buttons */
html[data-theme="dark"] .nav-cta,
html[data-theme="dark"] .primary,
html[data-theme="dark"] .yk-cta,
html[data-theme="dark"] .rstream-submit{
  background:var(--color-accent);
  color:var(--color-on-accent);
  border-color:var(--color-on-accent);
}
html[data-theme="dark"] .nav-cta:hover,
html[data-theme="dark"] .primary:hover,
html[data-theme="dark"] .yk-cta:hover{
  background:var(--color-accent-hover);
  color:var(--color-on-accent);
}
html[data-theme="dark"] .secondary{
  color:var(--color-text);
  border-bottom-color:var(--color-border-strong);
}
html[data-theme="dark"] :is(a, button, input, textarea, select):focus-visible{
  outline:2px solid var(--color-focus);
  outline-offset:3px;
}

/* Forms */
html[data-theme="dark"] :is(input, textarea, select){
  background:var(--color-surface-raised);
  color:var(--color-text);
  border:1px solid var(--color-border-strong);
}
html[data-theme="dark"] :is(input, textarea, select)::placeholder{
  color:var(--color-text-muted);
  opacity:1;
}
html[data-theme="dark"] :is(input, textarea, select):focus{
  border-color:var(--color-accent);
  outline:none;
  box-shadow:0 0 0 2px rgba(255, 212, 42, 0.28);
}

/* Neutralize lamp compensation hacks that forced opacity */
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .service-brief,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .doc-map__sheet,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .tax-file__desk,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .visa-dir__desk,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .ready-file__sheet,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .precheck__desk,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .about-hero__frame,
html[data-theme="dark"].theme-lamps-on section.is-light-section-active .about-hero__copy{
  opacity:1;
  filter:none;
}

/* yk-num: yellow disc with dark ink (already), ensure no grey text child */
html[data-theme="dark"] .yk-num,
html[data-theme="dark"] .process-number{
  background:var(--color-accent);
  color:var(--color-on-accent);
  border-color:var(--color-on-accent);
  opacity:1;
}



/* ===== Girex Studio: footer credit stamp ===== */
.copyright{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px 28px;
  flex-wrap:wrap;
}
.copyright__klaro{
  display:flex;
  flex-wrap:wrap;
  gap:8px 18px;
  align-items:center;
}
.girex-credit{
  position:relative;
  display:inline-flex;
  flex-direction:column;
  align-items:flex-start;
  gap:3px;
  padding:8px 12px 8px 18px;
  border:1px solid rgba(255,255,255,.22);
  color:#c9c9c4;
  transform:rotate(-1deg);
  transition:transform .28s ease, border-color .28s ease, color .28s ease;
  max-width:100%;
}
.girex-credit__dot{
  position:absolute;
  left:7px;
  top:50%;
  width:5px;
  height:5px;
  margin-top:-2.5px;
  border-radius:50%;
  background:var(--yellow, #ffd52e);
}
.girex-credit__label{
  font-size:8px;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:rgba(201,201,196,.7);
}
.girex-credit__name{
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#eceae3;
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.girex-credit__arrow{
  display:inline-block;
  transition:transform .28s ease;
}
.girex-credit:hover,
.girex-credit:focus-visible{
  transform:rotate(0deg);
  border-color:var(--yellow, #ffd52e);
  color:#fff;
  outline:none;
}
.girex-credit:hover .girex-credit__arrow,
.girex-credit:focus-visible .girex-credit__arrow{
  transform:translate(2px, -2px);
}
.girex-credit:focus-visible{
  box-shadow:0 0 0 2px #11110f, 0 0 0 4px var(--yellow, #ffd52e);
}
html[data-theme="dark"] .girex-credit{
  border-color:rgba(242,240,232,.2);
  color:var(--text-secondary, #c3c0b6);
}
html[data-theme="dark"] .girex-credit__name{color:var(--text-primary, #f2f0e8)}
html[data-theme="dark"] .girex-credit:hover,
html[data-theme="dark"] .girex-credit:focus-visible{
  border-color:var(--klaro-yellow, #ffd329);
  color:#fff;
}
@media(max-width:560px){
  .copyright{
  flex-direction:column;
  align-items:flex-start;
  gap:14px;
  }
  .girex-credit{
  transform:none;
  align-self:flex-start;
  }
}

/* ===== Brand connection (home partnership) ===== */
.brand-connection{
  --bc-ink:#11110f;
  --bc-muted:#686862;
  --bc-line:rgba(17,17,15,.16);
  --bc-paper:#f7f6f0;
  --bc-yellow:#ffd329;
  background:var(--bc-paper);
  color:var(--bc-ink);
  padding:clamp(64px, 8vw, 96px) max(5vw, 24px);
  min-height:clamp(440px, 52vw, 560px);
  display:flex;
  align-items:center;
}
.brand-connection__inner{
  width:min(1180px, 100%);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  gap:clamp(36px, 5vw, 52px);
}
.brand-connection__head{
  max-width:40rem;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
}
.brand-connection__title{
  margin:0;
  font-size:clamp(30px, 4vw, 48px);
  line-height:1.14;
  letter-spacing:-.04em;
  font-weight:900;
  text-wrap:balance;
}
.brand-connection__lead{
  margin:0;
  max-width:46ch;
  font-size:16px;
  line-height:1.7;
  color:var(--bc-muted);
}
.brand-connection__stage{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  gap:clamp(16px, 3vw, 36px);
  align-items:center;
  min-width:0;
}
.brand-connection__side{
  min-width:0;
  border:1px solid var(--bc-line);
  padding:clamp(22px, 3vw, 32px);
  background:#fff;
}
.brand-connection__side--klaro{
  border-left:3px solid var(--bc-ink);
}
.brand-connection__side--girex{
  border-left:3px solid var(--bc-yellow);
  opacity:.38;
  transform:translateY(6px);
  transition:opacity .55s ease, transform .55s ease;
}
.brand-connection.is-connected .brand-connection__side--girex{
  opacity:1;
  transform:none;
}
.brand-connection__brand{
  margin:0 0 8px;
  font-size:clamp(22px, 2.4vw, 30px);
  font-weight:900;
  letter-spacing:-.03em;
}
.brand-connection__tag{
  margin:0;
  font-size:14px;
  font-weight:700;
  color:var(--bc-muted);
  line-height:1.45;
}
.brand-connection__cta{
  margin-top:18px;
  display:none;
  align-items:center;
  gap:8px;
  padding:13px 18px;
  background:var(--bc-ink);
  color:#fff;
  font-size:13px;
  font-weight:800;
  border:1px solid var(--bc-ink);
  width:fit-content;
  max-width:100%;
  transition:background-color .2s ease, color .2s ease;
}
.brand-connection.is-connected .brand-connection__cta{
  display:inline-flex;
}
.brand-connection__cta:hover{
  background:var(--bc-yellow);
  color:var(--bc-ink);
}
.brand-connection__cta:focus-visible{
  outline:2px solid var(--bc-yellow);
  outline-offset:3px;
}
.brand-connection__bridge{
  position:relative;
  width:clamp(72px, 12vw, 140px);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:10px;
}
.brand-connection__rail{
  position:relative;
  display:block;
  width:100%;
  height:2px;
  background:rgba(17,17,15,.14);
  overflow:hidden;
}
.brand-connection__fill{
  position:absolute;
  inset:0 auto 0 0;
  width:0%;
  background:var(--bc-yellow);
  transition:width .9s cubic-bezier(.22,.8,.28,1);
}
.brand-connection.is-connected .brand-connection__fill{width:100%}
.brand-connection__node{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.brand-connection__node-dot{
  width:10px;
  height:10px;
  border-radius:50%;
  background:var(--bc-yellow);
  border:2px solid var(--bc-ink);
  box-shadow:0 0 0 3px var(--bc-paper);
}
.brand-connection__node-label{
  font-size:8px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:#8a6b00;
  white-space:nowrap;
}
html[data-theme="dark"] .brand-connection{
  --bc-ink:var(--text-primary, #f2f0e8);
  --bc-muted:var(--text-secondary, #c3c0b6);
  --bc-line:rgba(242,240,232,.18);
  --bc-paper:var(--section-bg, #181916);
  --bc-yellow:var(--klaro-yellow, #ffd329);
}
html[data-theme="dark"] .brand-connection__side{
  background:#1c1d18;
  border-color:rgba(242,240,232,.16);
}
html[data-theme="dark"] .brand-connection__side--klaro{border-left-color:var(--bc-yellow)}
html[data-theme="dark"] .brand-connection__cta{
  background:var(--bc-yellow);
  border-color:var(--bc-yellow);
  color:#11110f;
}
html[data-theme="dark"] .brand-connection__cta:hover{
  background:#ffe784;
  color:#11110f;
}
html[data-theme="dark"] .brand-connection__rail{background:rgba(242,240,232,.14)}
html[data-theme="dark"] .brand-connection__node-dot{
  border-color:#0e0e0c;
  box-shadow:0 0 0 3px var(--bc-paper);
}
@media (prefers-reduced-motion: reduce){
  .brand-connection__fill,
  .brand-connection__side--girex{transition:none}
  .brand-connection .brand-connection__fill{width:100%}
  .brand-connection .brand-connection__side--girex{opacity:1;transform:none}
  .brand-connection .brand-connection__cta{display:inline-flex}
}
@media(max-width:900px){
  .brand-connection{
  min-height:0;
  padding:64px max(20px, 5vw) 72px;
  }
  .brand-connection__stage{
  grid-template-columns:1fr;
  gap:0;
  }
  .brand-connection__bridge{
  width:100%;
  flex-direction:row;
  justify-content:center;
  padding:18px 0;
  gap:12px;
  }
  .brand-connection__rail{
  width:2px;
  height:56px;
  }
  .brand-connection__fill{
  inset:0 0 auto 0;
  width:100%;
  height:0%;
  transition:height .9s cubic-bezier(.22,.8,.28,1);
  }
  .brand-connection.is-connected .brand-connection__fill{
  width:100%;
  height:100%;
  }
  .brand-connection__node-label{white-space:normal; text-align:center}
  .brand-connection__cta{
  width:100%;
  justify-content:center;
  }
  @media (prefers-reduced-motion: reduce){
  .brand-connection .brand-connection__fill{height:100%}
  }
}

/* ===== Project launch: Klaro × Girex cinematic reveal ===== */
.project-launch{
  --pl-ink:#11110f;
  --pl-muted:#686862;
  --pl-line:rgba(17,17,15,.16);
  --pl-paper:#f3efe6;
  --pl-yellow:#ffd329;
  background:var(--pl-paper);
  color:var(--pl-ink);
  padding:clamp(72px, 9vh, 110px) max(4vw, 18px) clamp(80px, 10vh, 120px);
  min-height:0;
  overflow:clip;
}
.project-launch__inner{
  width:min(1480px, 100%);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:clamp(28px, 4vh, 48px);
}
.project-launch__intro{
  width:min(100%, 1180px);
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:18px;
}
.project-launch__pair{
  margin:0;
  font-size:11px;
  font-weight:800;
  letter-spacing:.2em;
  text-transform:uppercase;
  color:#8a6b00;
}
.project-launch__partner-label,
.project-launch__presentation{
  margin:-6px 0 0;
  font-size:11px;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
  color:#8a6b00;
}
.project-launch__presentation{
  margin-top:-10px;
  letter-spacing:.14em;
  opacity:.78;
}
.project-launch__title{
  margin:0;
  width:100%;
  font-size:clamp(54px, 7vw, 118px);
  line-height:1.02;
  letter-spacing:-.05em;
  font-weight:900;
  text-wrap:balance;
}
.project-launch__line{
  display:block;
  opacity:0;
  transform:translateY(18px);
  transition:opacity .55s ease, transform .55s cubic-bezier(.22,.8,.28,1);
}
.project-launch__line:nth-child(2){transition-delay:.12s}
.project-launch.is-heading .project-launch__line,
.project-launch.is-complete .project-launch__line{
  opacity:1;
  transform:none;
}
.project-launch__mark{
  position:relative;
  display:inline;
  background:none;
  color:inherit;
  padding:0 .06em;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.project-launch__lead{
  margin:0;
  max-width:42ch;
  font-size:clamp(15px, 1.5vw, 18px);
  line-height:1.7;
  color:var(--pl-muted);
  opacity:0;
  transform:translateY(10px);
  transition:opacity .5s ease .2s, transform .5s ease .2s;
}
.project-launch.is-heading .project-launch__lead,
.project-launch.is-complete .project-launch__lead{
  opacity:1;
  transform:none;
}

.project-launch__stage{
  position:relative;
  width:min(80vw, 1380px);
  margin:8px auto 0;
  padding:clamp(28px, 5vh, 56px) 0 clamp(36px, 5vh, 52px);
  display:flex;
  justify-content:center;
  align-items:center;
  min-width:0;
}
.project-launch__lamp-anchor{
  position:absolute;
  right:2%;
  top:42%;
  width:1px;
  height:1px;
  pointer-events:none;
}
.project-launch__backdrop{
  position:absolute;
  inset:-4% -2%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:clamp(4px, 1vh, 12px);
  pointer-events:none;
  z-index:0;
  font-size:clamp(72px, 14vw, 220px);
  font-weight:900;
  line-height:.86;
  letter-spacing:-.06em;
  color:transparent;
  -webkit-text-stroke:1px rgba(17,17,15,.1);
  opacity:0;
  transition:opacity .7s ease;
  user-select:none;
}
.project-launch.is-grid .project-launch__backdrop,
.project-launch.is-complete .project-launch__backdrop{
  opacity:1;
}
.project-launch__backdrop span{
  display:block;
  white-space:nowrap;
}
.project-launch__backdrop span:nth-child(1){transform:translateX(-8%)}
.project-launch__backdrop span:nth-child(2){transform:translateX(18%); text-align:right}
.project-launch__backdrop span:nth-child(3){transform:translateX(-2%)}
.project-launch__grid{
  position:absolute;
  left:8%;
  right:8%;
  top:10%;
  bottom:14%;
  z-index:0;
  pointer-events:none;
  opacity:0;
  transition:opacity .55s ease;
  background-image:
  linear-gradient(to right, rgba(17,17,15,.07) 1px, transparent 1px),
  linear-gradient(to bottom, rgba(17,17,15,.07) 1px, transparent 1px);
  background-size:32px 32px;
  mask-image:radial-gradient(ellipse 70% 65% at 50% 45%, #000 40%, transparent 78%);
}
.project-launch.is-grid .project-launch__grid,
.project-launch.is-complete .project-launch__grid{
  opacity:1;
}

.project-launch__stages{
  position:absolute;
  inset:0;
  margin:0;
  padding:0;
  list-style:none;
  z-index:3;
  pointer-events:none;
}
.project-launch__stage-item{
  position:absolute;
  display:flex;
  align-items:center;
  gap:10px;
  max-width:min(42vw, 220px);
  font-size:11px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:rgba(17,17,15,.62);
  opacity:0;
  transform:translateY(8px);
  transition:opacity .45s ease, transform .45s ease;
}
.project-launch__stage-item b{
  font-weight:800;
  line-height:1.25;
}
.project-launch__stage-item span{color:#8a6b00}
.project-launch__stage-item:before{
  content:"";
  width:28px;
  height:1px;
  background:rgba(17,17,15,.28);
}
.project-launch__stage-item--1{top:8%; left:0}
.project-launch__stage-item--2{top:8%; right:0; flex-direction:row-reverse}
.project-launch__stage-item--2:before{order:1}
.project-launch__stage-item--3{bottom:18%; left:0}
.project-launch__stage-item--4{bottom:18%; right:0; flex-direction:row-reverse}
.project-launch__stage-item--4:before{order:1}
.project-launch.is-stages .project-launch__stage-item,
.project-launch.is-complete .project-launch__stage-item{
  opacity:1;
  transform:none;
}
.project-launch.is-stages .project-launch__stage-item--2{transition-delay:.08s}
.project-launch.is-stages .project-launch__stage-item--3{transition-delay:.16s}
.project-launch.is-stages .project-launch__stage-item--4{transition-delay:.24s}

.girex-monitor--launch{
  position:relative;
  z-index:2;
  width:100%;
  max-width:1380px;
  margin:0 auto;
  opacity:0;
  transform:translateY(50px);
  transition:opacity .65s ease, transform .65s cubic-bezier(.22,.8,.28,1);
}
.project-launch.is-framed .girex-monitor--launch,
.project-launch.is-complete .girex-monitor--launch{
  opacity:1;
  transform:none;
}
.girex-monitor__glow{
  position:absolute;
  left:50%;
  top:42%;
  width:78%;
  height:62%;
  transform:translate(-50%, -50%);
  background:rgba(255,211,41,0);
  filter:blur(34px);
  pointer-events:none;
  z-index:0;
  transition:background-color .55s ease;
}
.girex-monitor__frame{
  position:relative;
  z-index:1;
  background:#121310;
  border:1px solid #2a2b26;
  box-shadow:
  0 0 0 1px #ece8dc,
  0 28px 60px rgba(17,17,15,.22);
  padding:11px 11px 0;
}
.girex-monitor__screen{
  position:relative;
  display:block;
  aspect-ratio:16 / 9;
  overflow:hidden;
  background:#050505;
  border:1px solid #0a0a0a;
  color:inherit;
}
.girex-monitor__image{
  display:block;
  width:100%;
  height:120%;
  object-fit:cover;
  object-position:top center;
  opacity:1;
  transform:translateY(0);
  clip-path:inset(0 0 100% 0);
  transition:transform .7s ease, clip-path .9s cubic-bezier(.22,.8,.28,1);
}
.project-launch.is-screen-on .girex-monitor__image,
.project-launch.is-complete .girex-monitor__image{
  clip-path:inset(0 0 0 0);
}
@media (hover:hover) and (pointer:fine){
  .project-launch.is-screen-on .girex-monitor--launch:hover .girex-monitor__image{
  transform:translateY(-10%);
  }
  .project-launch.is-screen-on .girex-monitor--launch:hover .girex-monitor__live{
  opacity:1;
  transform:none;
  }
}
.girex-monitor__reflection{
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(125deg, rgba(255,255,255,.12) 0%, transparent 32%, transparent 100%);
  mix-blend-mode:soft-light;
  opacity:.4;
}
.girex-monitor__veil{
  position:absolute;
  inset:0;
  background:#050505;
  pointer-events:none;
  opacity:1;
  transition:opacity .35s ease;
}
.project-launch.is-screen-on .girex-monitor__veil,
.project-launch.is-complete .girex-monitor__veil{
  opacity:0;
}
.girex-monitor__scan{
  position:absolute;
  left:0;
  right:0;
  top:0;
  height:2px;
  background:var(--pl-yellow, #ffd329);
  box-shadow:0 0 12px rgba(255,211,41,.65);
  opacity:0;
  pointer-events:none;
  z-index:3;
}
.project-launch.is-scanning .girex-monitor__scan{
  animation:pl-scan .85s ease forwards;
}
@keyframes pl-scan{
  0%{opacity:0; top:0}
  12%{opacity:1}
  100%{opacity:0; top:100%}
}
.girex-monitor__live{
  position:absolute;
  right:12px;
  bottom:12px;
  z-index:4;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(8,8,8,.72);
  color:#fff;
  font-size:9px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .3s ease, transform .3s ease;
  pointer-events:none;
}
.girex-monitor__chin{
  margin:0;
  padding:9px 10px 10px;
  text-align:center;
  font-size:9px;
  font-weight:800;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:#cfc9b8;
  background:#121310;
}
.girex-monitor__stand{
  display:block;
  width:12%;
  height:clamp(26px, 3.2vw, 42px);
  margin:-1px auto 0;
  background:linear-gradient(90deg, #151612, #22231e 45%, #151612);
  border-left:1px solid #2f302b;
  border-right:1px solid #2f302b;
  clip-path:polygon(18% 0, 82% 0, 100% 100%, 0 100%);
  position:relative;
  z-index:1;
}
.girex-monitor__base{
  display:block;
  width:46%;
  height:10px;
  margin:0 auto;
  background:#1a1b17;
  border:1px solid #2f302b;
  border-radius:1px 1px 2px 2px;
  transform:perspective(120px) rotateX(18deg);
  box-shadow:0 16px 28px rgba(17,17,15,.2);
  position:relative;
  z-index:1;
}
.girex-monitor__dim{display:none}

.project-launch__stamp{
  position:absolute;
  right:2%;
  bottom:4%;
  z-index:4;
  margin:0;
  padding:9px 11px;
  border:1.5px solid #11110f;
  background:var(--pl-yellow);
  color:#11110f;
  transform:rotate(-2.5deg);
  opacity:0;
  transition:opacity .4s ease;
  display:flex;
  flex-direction:column;
  gap:3px;
  pointer-events:none;
}
.project-launch__stamp span{
  font-size:8px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.project-launch__stamp strong{
  font-size:11px;
  font-weight:900;
  letter-spacing:.1em;
}
.project-launch.is-stamp .project-launch__stamp,
.project-launch.is-complete .project-launch__stamp{
  opacity:1;
}

.project-launch__credits{
  width:min(100%, 1100px);
  margin:0;
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  border-top:1px solid var(--pl-line);
  border-bottom:1px solid var(--pl-line);
  opacity:0;
  transform:translateY(12px);
  transition:opacity .5s ease, transform .5s ease;
}
.project-launch.is-stamp .project-launch__credits,
.project-launch.is-complete .project-launch__credits{
  opacity:1;
  transform:none;
}
.project-launch__credits > div{
  padding:18px 16px;
  border-right:1px solid var(--pl-line);
  display:flex;
  flex-direction:column;
  gap:8px;
  min-width:0;
}
.project-launch__credits > div:last-child{border-right:0}
.project-launch__credits dt{
  margin:0;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(17,17,15,.45);
}
.project-launch__credits dd{
  margin:0;
  font-size:13px;
  font-weight:800;
  letter-spacing:.04em;
  display:flex;
  align-items:center;
  gap:8px;
}
.project-launch__status-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--pl-yellow);
  border:1px solid #11110f;
  flex:0 0 auto;
}

.project-launch__finale{
  width:min(100%, 820px);
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:22px;
  opacity:0;
  transform:translateY(14px);
  transition:opacity .5s ease, transform .5s ease;
}
.project-launch.is-stamp .project-launch__finale,
.project-launch.is-complete .project-launch__finale{
  opacity:1;
  transform:none;
}
.project-launch__closing{
  margin:0;
  font-size:clamp(28px, 4vw, 48px);
  line-height:1.15;
  letter-spacing:-.04em;
  font-weight:900;
  text-wrap:balance;
}
.project-launch__actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px 22px;
  align-items:center;
  justify-content:center;
}
.project-launch__cta{
  display:inline-flex;
  align-items:center;
  gap:10px;
  padding:15px 22px;
  background:var(--pl-ink);
  color:#fff;
  font-size:14px;
  font-weight:800;
  border:1px solid var(--pl-ink);
  transition:background-color .2s ease, color .2s ease;
}
.project-launch__cta:hover{
  background:var(--pl-yellow);
  color:#11110f;
}
.project-launch__cta:focus-visible{
  outline:2px solid var(--pl-yellow);
  outline-offset:3px;
}
.project-launch__secondary{
  font-size:14px;
  font-weight:800;
  border-bottom:1px solid currentColor;
  padding-bottom:2px;
  color:var(--pl-ink);
}
.project-launch__secondary:focus-visible{
  outline:2px solid var(--pl-yellow);
  outline-offset:3px;
}

html[data-theme="dark"] .project-launch{
  --pl-ink:var(--text-primary, #f2f0e8);
  --pl-muted:var(--text-secondary, #c3c0b6);
  --pl-line:rgba(242,240,232,.18);
  --pl-paper:var(--section-bg, #121310);
  --pl-yellow:var(--klaro-yellow, #ffd329);
}
html[data-theme="dark"] .project-launch__backdrop{
  -webkit-text-stroke:1px rgba(242,240,232,.12);
}
html[data-theme="dark"] .project-launch__grid{
  background-image:
  linear-gradient(to right, rgba(242,240,232,.08) 1px, transparent 1px),
  linear-gradient(to bottom, rgba(242,240,232,.08) 1px, transparent 1px);
}
html[data-theme="dark"] .project-launch__stage-item{color:rgba(242,240,232,.62)}
html[data-theme="dark"] .project-launch__stage-item:before{background:rgba(242,240,232,.28)}
html[data-theme="dark"] .project-launch__credits dt{color:rgba(242,240,232,.45)}
html[data-theme="dark"] .girex-monitor__frame{
  background:#0d0e0c;
  border-color:#1f201c;
  box-shadow:
  0 0 0 1px rgba(236,232,220,.28),
  0 28px 60px rgba(0,0,0,.5);
}
html[data-theme="dark"] .girex-monitor__image{
  opacity:1 !important;
  filter:none !important;
  color:initial !important;
}
html[data-theme="dark"].js-section-lighting [data-light-section]:not(.is-active) .girex-monitor__dim{
  display:block;
  position:absolute;
  inset:0;
  z-index:5;
  background:rgba(15,16,14,.4);
  pointer-events:none;
}
html[data-theme="dark"].js-section-lighting [data-light-section].is-active .girex-monitor__glow{
  background:rgba(255,211,41,.18);
}
html[data-theme="dark"].js-section-lighting [data-light-section].is-active .girex-monitor__dim{
  display:none;
}
html[data-theme="dark"] .project-launch__cta{
  background:var(--pl-yellow);
  border-color:var(--pl-yellow);
  color:#11110f;
}
html[data-theme="dark"] .project-launch__cta:hover{
  background:#ffe784;
  color:#11110f;
}
html[data-theme="dark"] .project-launch__stamp{
  border-color:#11110f;
  color:#11110f;
}
html[data-theme="dark"] .project-launch__status-dot{border-color:#11110f}

@media (prefers-reduced-motion: reduce){
  .project-launch__line,
  .project-launch__lead,
  .project-launch__backdrop,
  .project-launch__grid,
  .girex-monitor--launch,
  .girex-monitor__image,
  .girex-monitor__veil,
  .project-launch__stage-item,
  .project-launch__stamp,
  .project-launch__credits,
  .project-launch__finale{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
  animation:none !important;
  clip-path:none !important;
  }
  .girex-monitor__veil{opacity:0 !important}
  .girex-monitor__scan{display:none}
}
@media(max-width:900px){
  .project-launch{
  min-height:0;
  padding:64px max(18px, 5vw) 72px;
  }
  .project-launch__title{font-size:clamp(34px, 9vw, 54px)}
  .project-launch__stage{
  width:100%;
  padding:24px 0 28px;
  margin-top:32px;
  flex-direction:column;
  }
  .project-launch__backdrop{display:none}
  .project-launch__grid{
  left:0; right:0; top:0; bottom:8%;
  }
  .girex-monitor--launch{
  width:100%;
  order:1;
  }
  .project-launch__stages{
  position:static;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-top:18px;
  width:100%;
  order:2;
  }
  .project-launch__stage-item{
  position:static;
  flex-direction:row !important;
  padding:10px 12px;
  border:1px solid var(--pl-line);
  transform:none;
  }
  .project-launch__stage-item:before{display:none}
  .girex-monitor__stand{height:18px; width:14%}
  .girex-monitor__base{width:42%; height:7px; transform:none}
  .project-launch__stamp{
  position:static;
  transform:rotate(-1.5deg);
  margin:16px auto 0;
  order:3;
  }
  .project-launch__lamp-anchor{display:none}
  .project-launch__credits{
  grid-template-columns:1fr 1fr;
  }
  .project-launch__credits > div{
  border-right:0;
  border-bottom:1px solid var(--pl-line);
  }
  .project-launch__credits > div:nth-child(odd){
  border-right:1px solid var(--pl-line);
  }
  .project-launch__credits > div:nth-last-child(-n+2){border-bottom:0}
  .project-launch__actions{
  width:100%;
  flex-direction:column;
  align-items:stretch;
  }
  .project-launch__cta,
  .project-launch__secondary{
  width:100%;
  justify-content:center;
  text-align:center;
  }
  .project-launch__secondary{
  border-bottom:0;
  padding:12px 0;
  text-decoration:underline;
  text-underline-offset:4px;
  }
}

/* ===== Floating Girex promo + back-to-top ===== */
.back-to-top{
  position:fixed;
  right:22px;
  left:auto;
  bottom:calc(22px + 60px + 16px);
  z-index:100;
  width:46px;
  height:46px;
  padding:0;
  border-radius:10px;
  border:1px solid #ffd329;
  background:#11110f;
  color:#ffd329;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(17,17,15,.18);
  opacity:0;
  transform:translateY(10px);
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease, background .2s ease, bottom .25s ease, visibility .25s ease;
}
.back-to-top.is-visible{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.back-to-top[hidden]{display:none !important}
.back-to-top.wa-hide-ask{
  opacity:0;
  pointer-events:none;
  visibility:hidden;
}
.back-to-top__icon{
  font-size:18px;
  line-height:1;
  font-weight:700;
}
.back-to-top__label{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.back-to-top:hover{
  background:#1a1a17;
}
.back-to-top:focus-visible{
  outline:2px solid #ffd329;
  outline-offset:3px;
}

.girex-float{
  position:fixed;
  left:20px;
  right:auto;
  bottom:22px;
  z-index:101;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:0;
  pointer-events:none;
  transition:opacity .25s ease, visibility .25s ease;
}
.girex-float__button,
.girex-float__popover{
  pointer-events:auto;
}
.girex-float__button{
  position:relative;
  width:70px;
  height:70px;
  padding:0;
  border-radius:50%;
  border:0;
  background:#000;
  box-shadow:0 6px 18px rgba(17,17,15,.2);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease;
}
.girex-float__button:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 20px rgba(17,17,15,.24);
}
.girex-float__button:focus-visible{
  outline:2px solid #ffd329;
  outline-offset:3px;
}
.girex-float__logo{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  border-radius:50%;
}
.girex-float__popover{
  position:absolute;
  left:calc(100% + 14px);
  right:auto;
  bottom:0;
  width:min(320px, calc(100vw - 32px));
  padding:16px 16px 14px;
  border:1px solid #11110f;
  background:#f7f4ea;
  color:#11110f;
  box-shadow:0 12px 28px rgba(17,17,15,.16);
  opacity:0;
  transform:translateX(-8px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.girex-float.is-open .girex-float__popover{
  opacity:1;
  transform:none;
  pointer-events:auto;
}
.girex-float__popover[hidden]{display:none !important}
.girex-float.is-open .girex-float__popover[hidden]{display:block !important}
.girex-float__popover:before{
  content:"";
  position:absolute;
  top:14px;
  left:12px;
  width:7px;
  height:7px;
  border-radius:50%;
  background:#ffd329;
  border:1px solid #11110f;
}
.girex-float__close{
  position:absolute;
  top:8px;
  right:8px;
  width:28px;
  height:28px;
  border:0;
  background:transparent;
  color:#11110f;
  font-size:20px;
  line-height:1;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.girex-float__close:focus-visible{
  outline:2px solid #ffd329;
  outline-offset:2px;
}
.girex-float__label{
  margin:0 0 8px;
  padding-left:14px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#8a6b00;
}
.girex-float__title{
  margin:0 0 8px;
  font-size:16px;
  line-height:1.35;
  font-weight:800;
  color:#11110f;
  padding-right:24px;
}
.girex-float__text{
  margin:0 0 12px;
  font-size:13px;
  line-height:1.45;
  color:#3a3a34;
}
.girex-float__text--note{
  margin:10px 0 0;
  font-size:12px;
  color:#6a6a60;
}
.girex-float__cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  width:100%;
  padding:11px 14px;
  border:1px solid #11110f;
  background:#ffd329;
  color:#11110f !important;
  font-size:13px;
  font-weight:800;
  text-decoration:none;
  transition:background .2s ease;
}
.girex-float__cta:hover{
  background:#ffe066;
  color:#11110f !important;
}
.girex-float__cta:focus-visible{
  outline:2px solid #11110f;
  outline-offset:2px;
}

html[data-theme="dark"] .back-to-top{
  background:#121310;
  border-color:#ffd329;
  color:#ffd329;
}
html[data-theme="dark"] .girex-float__button{
  background:#000;
  border:0;
}
html[data-theme="dark"] .girex-float__popover{
  background:#171814;
  border-color:#2f302b;
  color:#f2f0e8;
  box-shadow:0 14px 32px rgba(0,0,0,.4);
}
html[data-theme="dark"] .girex-float__popover:before{
  border-color:#f2f0e8;
}
html[data-theme="dark"] .girex-float__close{color:#f2f0e8}
html[data-theme="dark"] .girex-float__label{color:#ffd329}
html[data-theme="dark"] .girex-float__title{color:#f2f0e8}
html[data-theme="dark"] .girex-float__text{color:rgba(242,240,232,.72)}
html[data-theme="dark"] .girex-float__text--note{color:rgba(242,240,232,.5)}
html[data-theme="dark"] .girex-float__cta{
  background:#ffd329 !important;
  border-color:#11110f;
  color:#11110f !important;
}
html[data-theme="dark"] .project-launch__partner-label,
html[data-theme="dark"] .project-launch__presentation{
  color:rgba(255,211,41,.72);
}

@media (max-width:767.98px){
  .back-to-top{
  left:auto;
  right:14px;
  bottom:calc(16px + 54px + 16px);
  width:44px;
  height:44px;
  }
  .back-to-top.wa-lift{
  bottom:calc(96px + 54px + 16px);
  }
  .back-to-top.wa-lift-reviews{
  bottom:calc(110px + 54px + 16px);
  }
  .girex-float{
  left:14px;
  right:auto;
  bottom:16px;
  }
  .girex-float__button{
  width:62px;
  height:62px;
  }
  .girex-float__popover{
  position:absolute;
  left:0;
  right:auto;
  bottom:calc(100% + 12px);
  width:calc(100vw - 32px);
  max-width:360px;
  transform:translateY(8px);
  }
  .girex-float.is-open .girex-float__popover{
  transform:none;
  }
}

@media (prefers-reduced-motion: reduce){
  .back-to-top,
  .girex-float__button,
  .girex-float__popover{
  transition:none !important;
  }
}

.whatsapp-wrap{z-index:100}
.girex-float{z-index:101}
.back-to-top{z-index:99}

/* ===== Native smooth scroll foundation ===== */
html{
  scroll-behavior:smooth;
  scroll-padding-top:var(--header-height, 92px);
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
}
section[id],
[id].light-section,
[data-light-section][id],
#contact{
  scroll-margin-top:calc(var(--header-height, 92px) + 20px);
}

/* ===== Sticky header scroll states ===== */
.header{
  --header-blur:12px;
  transition:
  height .28s cubic-bezier(.22,.8,.25,1),
  background-color .28s ease,
  border-color .28s ease,
  box-shadow .28s ease,
  backdrop-filter .28s ease;
}
.header.is-compact{
  height:82px;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-bottom-color:rgba(17,17,15,.12);
  box-shadow:0 8px 24px rgba(17,17,15,.05);
}
.header.is-compact .brand img{
  width:118px;
  height:64px;
  transition:width .28s ease, height .28s ease;
}
.header.is-climbing{
  box-shadow:0 10px 28px rgba(17,17,15,.07);
}
html[data-theme="dark"] .header.is-compact{
  border-bottom-color:rgba(244,241,232,.14);
  box-shadow:0 10px 28px rgba(0,0,0,.28);
  background:rgba(15,16,14,.92);
}
@media (max-width:900px){
  .header.is-compact{height:68px}
  .header.is-compact .brand img{width:100px;height:56px}
}

/* ===== Scroll progress ===== */
.scroll-progress{
  position:fixed;
  z-index:120;
  pointer-events:none;
  opacity:0;
  transition:opacity .25s ease;
}
.scroll-progress.is-active{opacity:1}
.scroll-progress__fill{
  display:block;
  width:100%;
  height:100%;
  background:var(--klaro-yellow, #ffd329);
  transform:scaleY(0);
  transform-origin:top;
  will-change:transform;
}
@media (min-width:768px){
  .scroll-progress{
  top:0;
  right:0;
  width:2px;
  height:100vh;
  height:100dvh;
  background:rgba(17,17,15,.08);
  }
  html[data-theme="dark"] .scroll-progress{
  background:rgba(244,241,232,.1);
  }
  .scroll-progress__fill{
  transform:scaleY(0);
  transform-origin:top;
  }
}
@media (max-width:767.98px){
  .scroll-progress{
  top:var(--header-height, 75px);
  left:0;
  right:0;
  width:100%;
  height:2px;
  background:rgba(17,17,15,.08);
  }
  html[data-theme="dark"] .scroll-progress{
  background:rgba(244,241,232,.12);
  }
  .scroll-progress__fill{
  transform:scaleX(0);
  transform-origin:left;
  }
}
@media (prefers-reduced-motion: reduce){
  .scroll-progress{display:none}
}

/* ===== Section reveals ===== */
[data-scroll-reveal]{
  --reveal-delay:0ms;
  opacity:0;
  transform:translateY(24px);
  transition:
  opacity .72s cubic-bezier(.22,.8,.25,1) var(--reveal-delay),
  transform .72s cubic-bezier(.22,.8,.25,1) var(--reveal-delay);
}
[data-scroll-reveal="split"] .light-zone:first-child,
[data-scroll-reveal="split"] > .why-copy,
[data-scroll-reveal="split"] > .detail-copy{
  opacity:0;
  transform:translateX(-20px);
  transition:opacity .8s cubic-bezier(.22,.8,.25,1), transform .8s cubic-bezier(.22,.8,.25,1);
}
[data-scroll-reveal="split"] .why-art,
[data-scroll-reveal="split"] .detail-symbol,
[data-scroll-reveal="split"] [data-scroll-visual]{
  opacity:0;
  transform:translateX(24px);
  transition:opacity .8s cubic-bezier(.22,.8,.25,1) .08s, transform .8s cubic-bezier(.22,.8,.25,1) .08s;
}
[data-scroll-reveal].is-revealed,
[data-scroll-reveal="cinematic"].is-revealed{
  opacity:1;
  transform:none;
}
[data-scroll-reveal="split"].is-revealed .light-zone:first-child,
[data-scroll-reveal="split"].is-revealed > .why-copy,
[data-scroll-reveal="split"].is-revealed > .detail-copy,
[data-scroll-reveal="split"].is-revealed .why-art,
[data-scroll-reveal="split"].is-revealed .detail-symbol,
[data-scroll-reveal="split"].is-revealed [data-scroll-visual]{
  opacity:1;
  transform:none;
}
@media (prefers-reduced-motion: reduce){
  [data-scroll-reveal],
  [data-scroll-reveal="split"] .light-zone:first-child,
  [data-scroll-reveal="split"] > .why-copy,
  [data-scroll-reveal="split"] .why-art,
  [data-scroll-reveal="split"] .detail-symbol{
  opacity:1 !important;
  transform:none !important;
  transition:none !important;
  }
}

/* ===== Section-to-section seams + entry marker ===== */
.scroll-section-mark{
  position:absolute;
  top:18px;
  left:max(5vw, 24px);
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--klaro-yellow, #ffd329);
  border:1px solid #11110f;
  transform:translateY(0);
  opacity:0;
  pointer-events:none;
  z-index:3;
  transition:opacity .35s ease, transform .55s cubic-bezier(.22,.8,.25,1);
}
[data-light-section].is-scroll-active > .scroll-section-mark,
section[id].is-scroll-active > .scroll-section-mark{
  opacity:1;
  transform:translateY(12px);
}
.page-wrapper > section + section,
.page-wrapper > [data-light-section] + [data-light-section]{
  box-shadow:inset 0 1px 0 rgba(17,17,15,.08);
}
html[data-theme="dark"] .page-wrapper > section + section,
html[data-theme="dark"] .page-wrapper > [data-light-section] + [data-light-section]{
  box-shadow:inset 0 1px 0 rgba(244,241,232,.1);
}
.hero .scroll-section-mark{display:none}

/* Yellow CTA → footer seam */
.ask-first,
.cta{
  border-bottom:1px solid rgba(17,17,15,.14);
}
html[data-theme="dark"] .ask-first,
html[data-theme="dark"] .cta{
  border-bottom-color:rgba(244,241,232,.16);
}

/* ===== Reviews: pause off-screen ===== */
.review-stream.is-offscreen .rstream-track{
  animation-play-state:paused;
}

/* ===== Project launch: underline draw ===== */
.project-launch__mark{
  background:none;
}
.project-launch__mark:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:.08em;
  height:.18em;
  background:var(--pl-yellow, #ffd329);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .7s cubic-bezier(.22,.8,.25,1) .18s;
  z-index:-1;
}
.project-launch.is-heading .project-launch__mark:after,
.project-launch.is-complete .project-launch__mark:after{
  transform:scaleX(1);
}
.girex-monitor--launch{
  transform:translateY(44px);
}
@media (prefers-reduced-motion: reduce){
  .project-launch__mark:after{transform:scaleX(1)}
  .girex-monitor--launch{transform:none}
}

/* Soften permanent will-change elsewhere if any */
@media (max-width:767.98px){
  .hero-doc,
  .hero-bulb{
  will-change:auto;
  }
}


/* Legal footer links: keep above floating actions */
.page-wrapper > footer .footer-grid > div:last-child {
  position: relative;
  z-index: 6;
}
.page-wrapper > footer a[href*='impressum'],
.page-wrapper > footer a[href*='datenschutz'] {
  display: inline-block;
  padding: 4px 0;
  min-height: 44px;
  line-height: 36px;
}
