
@font-face{
  font-family:"SF Pro Display";
  src:url("assets/fonts/SFPRODISPLAYREGULAR.OTF") format("opentype");
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"SF Pro Display";
  src:url("assets/fonts/SFPRODISPLAYMEDIUM.OTF") format("opentype");
  font-weight:500; font-style:normal; font-display:swap;
}
@font-face{
  font-family:"SF Pro Display";
  src:url("assets/fonts/SFPRODISPLAYBOLD.woff") format("woff");
  font-weight:700; font-style:normal; font-display:swap;
}
:root{
  --red:#b12025;
  --red-dark:#8e1519;
  --ink:#212121;
  --ink-soft:#6f6f6f;
  --ink-mute:#a6a6a6;
  --line:#d9d9d9;
  --paper:#ffffff;
  --wash:#f7f7f7;
  --black:#0d0d0d;
  --sans:"SF Pro Display","Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --d:calc(min(100vw, 2560px) / 2560);
  --gutter:calc(var(--d) * 104);
  --ease:cubic-bezier(.22,.61,.36,1);
}
@media (max-width:1024px){ :root{ --gutter:32px; } }
@media (max-width:640px){ :root{ --gutter:20px; } }
*,*::before,*::after{ box-sizing:border-box; }
html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; scroll-padding-top:90px; }
body{
  margin:0; background:var(--paper); color:var(--ink);
  font-family:var(--sans); font-weight:400; font-size:16px; line-height:1.4;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
img,svg{ display:block; max-width:100%; }
a{ color:inherit; text-decoration:none; }
button{ font:inherit; color:inherit; background:none; border:0; padding:0; cursor:pointer; }
h1,h2,h3,h4,p,ul,ol,figure{ margin:0; }
ul,ol{ padding:0; list-style:none; }
:focus-visible{ outline:2px solid var(--red); outline-offset:3px; }
.sr-only{ position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.wrap{ width:100%; max-width:2560px; margin:0 auto; padding-inline:var(--gutter); }
.btn{
  --h:max(44px, calc(var(--d) * 60));
  position:relative; overflow:hidden; isolation:isolate;
  display:inline-flex; align-items:center; justify-content:center; gap:max(8px, calc(var(--d) * 12));
  height:var(--h); padding-inline:max(20px, calc(var(--d) * 38));
  border-radius:999px; border:2px solid transparent;
  font-size:max(14px, calc(var(--d) * 20)); letter-spacing:-.03em; white-space:nowrap;
  transition:background-color .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease);
}
.btn svg{ width:max(14px, calc(var(--d) * 22)); height:auto; flex:none; }
.btn--red{ background:var(--red); color:#fff; }
.btn--outline{ border-color:var(--red); color:var(--red); }
.btn--black{ background:var(--black); color:#fff; }
.btn--white{ background:#fff; color:var(--red); }
.btn--ghost-white{ border-color:rgba(255,255,255,.85); color:#fff; }
@property --r{ syntax:"<length>"; inherits:false; initial-value:0px; }
@property --fc{ syntax:"<color>"; inherits:false; initial-value:transparent; }
@property --ec{ syntax:"<color>"; inherits:false; initial-value:transparent; }
.roll{ display:block; overflow:hidden; height:1.25em; line-height:1.25em; }
.roll-t{ display:block; position:relative; transition:transform .45s var(--ease); }
.roll-t::after{ content:attr(data-t); content:attr(data-t) / ""; position:absolute; left:0; top:100%; }
.btn-ax{
  display:inline-grid; place-items:center; flex:none; width:0; margin-left:calc(-1 * max(8px, calc(var(--d) * 12)));
  opacity:0; overflow:hidden; transform:translateX(-8px);
  transition:width .35s var(--ease), margin .35s var(--ease), opacity .3s, transform .35s var(--ease);
}
.btn .btn-ax svg{ width:max(13px, calc(var(--d) * 18)); }
.btn .btn-lead{
  width:max(14px, calc(var(--d) * 22)); transform-origin:50% 50%;
  transition:width .35s var(--ease), margin .35s var(--ease), opacity .2s, transform .35s var(--ease);
}
.btn--outline{ --fill:var(--red); background:linear-gradient(var(--fill), var(--fill)) 0 0 / 0% 100% no-repeat border-box;
  transition:background-size .45s var(--ease), color .3s, border-color .3s, transform .25s var(--ease); }
.btn--white{ --r:calc(var(--h) / 2 + 2px); --fc:#fff; --base:#fff;
  background:radial-gradient(circle at calc(var(--h) / 2 + 1px) 50%, var(--fc) var(--r), var(--base) calc(var(--r) + .5px)) border-box no-repeat;
  transition:--fc .14s linear, --r .55s cubic-bezier(.5,0,.2,1), color .2s .05s, transform .25s var(--ease); }
.btn--ghost-white{ --r:calc(var(--h) / 2 + 2px); --fc:rgba(255,255,255,0);
  background:radial-gradient(circle at calc(var(--h) / 2 + 1px) 50%, var(--fc) var(--r), rgba(255,255,255,0) calc(var(--r) + .5px)) border-box no-repeat;
  transition:--fc .14s linear, --r .55s cubic-bezier(.5,0,.2,1), color .2s .05s, border-color .2s, transform .25s var(--ease); }
@media (hover:hover){
  .btn:hover .roll-t{ transform:translateY(-100%); }
  .btn:hover .btn-ax{ width:max(13px, calc(var(--d) * 18)); margin-left:0; opacity:1; transform:none; }
  .btn:hover .btn-lead{ width:0; margin-right:calc(-1 * max(8px, calc(var(--d) * 12))); opacity:0; transform:translate(40%, -40%) scale(.6); }
  .btn--red:hover{ background:var(--red-dark); }
  .btn--black:not(.lst-more):hover{ background:#333; }
  .btn--outline:hover{ background-size:100% 100%; color:#fff; }
  .btn--white:hover{ --r:calc(var(--h) * 8); --fc:var(--ink); color:#fff; }
  .btn--white:hover .roll-t{ transform:none; }                
  .btn--ghost-white:hover{ --r:calc(var(--h) * 8); --fc:#fff; border-color:#fff; color:var(--ink); }
}
.eyebrow{
  display:inline-flex; align-items:center; gap:max(8px, calc(var(--d) * 18));
  font-weight:700; font-size:max(15px, calc(var(--d) * 35)); letter-spacing:-.04em; line-height:1;
}
.eyebrow::before{
  content:""; width:max(8px, calc(var(--d) * 16)); height:max(8px, calc(var(--d) * 16));
  border-radius:2px; background:var(--red); flex:none;
}
.eyebrow--mute{ color:var(--ink-mute); }
.eyebrow--white{ color:#fff; }
.arrow-btn{
  width:max(36px, calc(var(--d) * 53)); height:max(36px, calc(var(--d) * 53));
  display:inline-grid; place-items:center; border:1.5px solid var(--ink); border-radius:3px;
  transition:background-color .25s var(--ease), color .2s, border-color .12s linear, border-radius .35s var(--ease);
}
@media (hover:hover){ .arrow-btn:hover{ border-radius:50%; background:var(--red); border-color:transparent; color:#fff; } }
.arrow-btn svg{ width:40%; height:auto; }
.reveal{ opacity:0; transform:translateY(24px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
.reveal.is-in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){
  html{ scroll-behavior:auto; }
  .reveal{ opacity:1; transform:none; transition:none; }
  *,*::before,*::after{ animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
}
.btn.is-measure, .btn.is-measure *{ transition:none !important; }
.btn.is-measure .btn-ax{ width:max(13px, calc(var(--d) * 18)); margin-left:0; }
.btn.is-measure .btn-lead{ width:0; margin-right:calc(-1 * max(8px, calc(var(--d) * 12))); }
:root{
  --pt-t:.72s; --pt-s:.84; --pt-r:24px; --pt-gap:10vw;   
  --pt-x:calc(100vw * var(--pt-s) + var(--pt-gap));   
  --pt-e:cubic-bezier(.65, 0, .35, 1);
  --pt-slide:cubic-bezier(.77, 0, .18, 1);   
  --pt-out:cubic-bezier(.33, 1, .68, 1);     
  --pt-in:cubic-bezier(.16, 1, .3, 1);       
}
html.pt-on, html.pt-on body{ background:var(--red); overflow:hidden; }
html.pt-on .stage *, html.pt-on .hdr *{ pointer-events:none; }
html.pt-on:not(.pt-menu) .stage{ clip-path:inset(var(--clip-t, 0px) 0 var(--clip-b, 0px) round 0); }
html.pt-out .stage, html.pt-out .hdr{
  animation:pt-old-scale calc(var(--pt-t) * .45) var(--pt-out) forwards, pt-slide-out var(--pt-t) var(--pt-slide) calc(var(--pt-t) * .08) forwards;
}
html.pt-out:not(.pt-menu) .stage{ clip-path:inset(var(--clip-t, 0px) 0 var(--clip-b, 0px) round var(--pt-r)); transition:clip-path calc(var(--pt-t) * .3) var(--pt-out); }
@keyframes pt-old-scale{ to{ scale:var(--pt-s); } }
@keyframes pt-slide-out{ to{ translate:calc(-1 * var(--pt-x)) 0; } }
html.pt-menu.pt-out .stage, html.pt-menu.pt-out .hdr{ animation:pt-slide-menu var(--pt-t) var(--pt-slide) forwards; }
html.pt-menu.pt-out .mega{ animation:pt-slide-menu var(--pt-t) var(--pt-slide) forwards, pt-fade calc(var(--pt-t) * .6) var(--pt-out) forwards; }
@keyframes pt-slide-menu{ to{ translate:-100vw 0; } }
@keyframes pt-fade{ to{ opacity:0; } }
.pt-next{
  position:fixed; left:0; top:0; width:100vw; height:100vh; border:0; margin:0; z-index:2147483000;
  background:#fff; pointer-events:none; visibility:hidden;
  translate:var(--pt-x) 0; scale:var(--pt-s); border-radius:var(--pt-r);
}
html.pt-on .pt-next{ visibility:visible; }
html.pt-out .pt-next{
  animation:pt-slide-in var(--pt-t) var(--pt-slide) calc(var(--pt-t) * .08) forwards, pt-new-scale calc(var(--pt-t) * .5) var(--pt-in) calc(var(--pt-t) * .62) forwards;
  border-radius:0; transition:border-radius calc(var(--pt-t) * .4) var(--pt-in) calc(var(--pt-t) * .7);
}
@keyframes pt-slide-in{ to{ translate:0 0; } }
@keyframes pt-new-scale{ to{ scale:1; } }
.hdr{
  --hdr-h:calc(var(--d) * 190);
  position:absolute; top:0; left:0; right:0; z-index:60;   
  height:var(--hdr-h);
  background:rgba(255,255,255,0); border-bottom:1px solid transparent;
  transition:height .35s var(--ease), background-color .35s var(--ease), border-color .35s var(--ease);
}
.hdr-logo img{ transition:filter .3s var(--ease); }
.hdr-link, .hdr-dot, .hdr-burger span, .hdr-actions .btn{ transition:color .3s var(--ease), background-color .3s var(--ease), border-color .3s var(--ease), background-size .45s var(--ease); }
.hdr:not(.is-menu) .hdr-logo[data-tone] img{ filter:brightness(0) invert(1); }
.hdr:not(.is-menu) .hdr-item[data-tone] .hdr-link{ color:#fff; }
.hdr:not(.is-menu) .hdr-item[data-tone="dark"] .hdr-link:hover,
.hdr:not(.is-menu) .hdr-item[data-tone="dark"].is-open .hdr-link{ color:var(--red); }
.hdr:not(.is-menu) .hdr-item[data-tone="red"] .hdr-link:hover,
.hdr:not(.is-menu) .hdr-item[data-tone="red"].is-open .hdr-link{ color:rgba(255,255,255,.66); }
.hdr:not(.is-menu) .hdr-item[data-tone="red"] .hdr-dot{ background:#fff; }
.hdr:not(.is-menu) .hdr-burger[data-tone] span{ background:#fff; }
.hdr-actions .btn--outline[data-tone]{ --fill:#fff; border-color:rgba(255,255,255,.75); color:#fff; }
.hdr-actions .btn--outline[data-tone]:hover{ border-color:#fff; color:var(--ink); }
.hdr-actions .btn--red[data-tone="red"]{ background:#fff; color:var(--red); }
@media (hover:hover){ .hdr-actions .btn--red[data-tone="red"]:hover{ background:rgba(255,255,255,.86); } }
.hdr-bar{
  position:relative; z-index:2; height:100%;
  max-width:2560px; margin:0 auto;
  padding-left:var(--gutter); padding-right:calc(var(--d) * 134);
  display:grid; grid-template-columns:1fr auto 1fr; align-items:center;
  animation:hdr-in .6s var(--ease) both;
}
.hdr-logo{ justify-self:start; display:block; transform:translateY(calc(var(--d) * 12)); }
.hdr-logo img{ width:max(120px, calc(var(--d) * 292)); height:auto; }
.hdr-list{ display:flex; align-items:center; gap:calc(var(--d) * 62); transform:translateY(calc(var(--d) * 5)); }
.hdr-item{ position:relative; }
.hdr-link{
  display:inline-flex; align-items:center; gap:max(4px, calc(var(--d) * 5));
  padding-block:10px;
  font-weight:500; font-size:max(14px, calc(var(--d) * 20)); letter-spacing:-.03em; color:#000;
  transition:color .2s;
}
.hdr-link:hover, .hdr-item.is-open .hdr-link{ color:var(--red); }
@media (hover:hover){ .hdr-link:hover .roll-t{ transform:translateY(-100%); } }   
.hdr-dot{ width:max(3px, calc(var(--d) * 4)); height:max(3px, calc(var(--d) * 4)); background:var(--red); flex:none; transform:translateY(1px); }
:root{ --mega-ease:cubic-bezier(.76,0,.24,1); --mega-t:.9s; --mega-s:.66; --mega-x:-58vw; --mega-r:28px; }
html.mega-on, html.mega-on body{ background:var(--red); }
.stage{ position:relative; z-index:1; background:var(--paper); }
.stage, .hdr{ transition-property:transform, clip-path, height, background-color, border-color; transition-duration:var(--mega-t), var(--mega-t), .35s, .35s, .35s; transition-timing-function:var(--mega-ease), var(--mega-ease), var(--ease), var(--ease), var(--ease); }
.hdr{ transition-property:transform, clip-path; transition-duration:var(--mega-t), var(--mega-t); transition-timing-function:var(--mega-ease), var(--mega-ease); }
html.mega-on .stage{ clip-path:inset(var(--clip-t, 0px) 0 var(--clip-b, 0px) round 0); }
html.mega-on .hdr{ clip-path:inset(0 round 0); }
html.mega-open .stage{ clip-path:inset(var(--clip-t, 0px) 0 var(--clip-b, 0px) round var(--mega-r)); }
html.mega-open .hdr{ clip-path:inset(0 round var(--mega-r) var(--mega-r) 0 0); }
html.mega-open .stage, html.mega-open .hdr{ transform:translateX(var(--mega-x)) scale(var(--mega-s)); cursor:pointer; }
html.mega-open .stage *, html.mega-open .hdr *{ pointer-events:none; }
.mega{
  position:fixed; inset:0; z-index:0;
  display:grid; grid-template-rows:auto 1fr auto; gap:calc(var(--d) * 60);
  padding:calc(var(--d) * 64) var(--gutter) calc(var(--d) * 72) 36vw;
  background:var(--red); color:#fff;
}
.mega[hidden]{ display:none; }
.mega-top{ display:flex; align-items:center; justify-content:space-between; }
.mega-tabs{ display:flex; gap:6px; padding:4px; border:1px solid rgba(255,255,255,.35); border-radius:999px; }
.mega-tab{
  height:max(36px, calc(var(--d) * 50)); padding-inline:max(16px, calc(var(--d) * 28)); border-radius:999px;
  font-weight:500; font-size:max(14px, calc(var(--d) * 20)); letter-spacing:-.03em; color:rgba(255,255,255,.75);
  transition:background-color .25s var(--ease), color .25s var(--ease);
}
.mega-tab:hover{ color:#fff; }
.mega-tab[aria-pressed="true"]{ background:#fff; color:var(--red); }
.mega-close{
  width:max(44px, calc(var(--d) * 60)); height:max(44px, calc(var(--d) * 60)); display:grid; place-items:center;
  border:1px solid rgba(255,255,255,.6); border-radius:50%; transition:background-color .25s, color .25s, transform .4s var(--ease);
}
.mega-close svg{ width:42%; }
.mega-close:hover{ background:#fff; color:var(--red); transform:rotate(90deg); }
.mega-panels{ display:grid; align-content:center; }
.mega-panel{ grid-area:1/1; }
.mega-panel[hidden]{ display:block; visibility:hidden; }
.mega-eyebrow{ margin-bottom:calc(var(--d) * 44); }
.mega-eyebrow::before{ background:#fff; }
.mega-list{ border-top:1px solid rgba(255,255,255,.28); }
.mega-list li{ border-bottom:1px solid rgba(255,255,255,.28); }
.mega-list a{
  display:grid; grid-template-columns:calc(var(--d) * 110) 1fr auto; align-items:center;
  min-height:max(56px, calc(var(--d) * 118));
  font-weight:500; font-size:max(24px, calc(var(--d) * 64)); letter-spacing:-.045em; line-height:1.05;
  transition:opacity .3s var(--ease);
}
.mega-num{ font-size:max(12px, calc(var(--d) * 18)); letter-spacing:0; color:rgba(255,255,255,.6); font-variant-numeric:tabular-nums; }
.mega-name{ transition:transform .45s var(--ease); }
.mega-list svg{ width:max(22px, calc(var(--d) * 44)); opacity:0; transform:translateX(-16px); transition:opacity .3s var(--ease), transform .45s var(--ease); }
.mega-list:hover a{ opacity:.45; }
.mega-list a:hover, .mega-list a:focus-visible{ opacity:1; }
.mega-list a:hover .mega-name, .mega-list a:focus-visible .mega-name{ transform:translateX(calc(var(--d) * 18)); }
.mega-list a:hover svg, .mega-list a:focus-visible svg{ opacity:1; transform:none; }
.mega-list a:focus-visible, .mega-tab:focus-visible, .mega-close:focus-visible, .mega-foot :focus-visible{ outline-color:#fff; }
.mega-foot{ display:flex; align-items:center; gap:calc(var(--d) * 44); }
.mega-foot-link{ font-weight:500; font-size:max(14px, calc(var(--d) * 20)); letter-spacing:-.03em; border-bottom:1px solid rgba(255,255,255,.5); padding-bottom:2px; }
.mega-foot-link:hover{ border-color:#fff; }
.mega-top, .mega-eyebrow, .mega-list li, .mega-foot{ opacity:0; transform:translateX(48px); transition:opacity .5s var(--ease), transform .7s var(--ease); }
html.mega-open .mega-top, html.mega-open .mega-eyebrow, html.mega-open .mega-foot,
html.mega-open .mega-panel:not([hidden]) li{ opacity:1; transform:none; }
html.mega-open .mega-top{ transition-delay:.35s; }
html.mega-open .mega-eyebrow{ transition-delay:.4s; }
html.mega-open .mega-panel:not([hidden]) li{ transition-delay:calc(.45s + var(--i) * .06s); }
html.mega-open .mega-foot{ transition-delay:.8s; }
html.mega-open.mega-switch .mega-panel:not([hidden]) li{ transition-delay:calc(var(--i) * .05s); }
.hdr-actions{ justify-self:end; display:flex; align-items:center; gap:calc(var(--d) * 13); }
.hdr-btn{ --h:max(40px, calc(var(--d) * 56)); }
.hdr-actions .btn--outline{ padding-inline:max(18px, calc(var(--d) * 38)); min-width:calc(var(--d) * 156); }
.hdr-actions .btn--red{ padding-inline:max(18px, calc(var(--d) * 37)); min-width:calc(var(--d) * 299); }
.hdr-burger{ display:none; }
.hdr-menu{ display:none; }
@keyframes hdr-in{ from{ opacity:0; transform:translateY(-12px); } to{ opacity:1; transform:none; } }
@media (max-width:1024px){
  .hdr{ transform:none; }
  .hdr-bar{ grid-template-columns:1fr auto; padding-right:var(--gutter); }
  .hdr-logo img{ width:150px; }
  .hdr-nav, .hdr-actions{ display:none; }
  .hdr-burger{
    display:inline-grid; place-content:center; gap:6px; justify-self:end;
    width:48px; height:48px; margin-right:-10px; border-radius:6px;
  }
  .hdr-burger span{ display:block; width:24px; height:2px; background:var(--ink); border-radius:2px; transition:transform .3s var(--ease), opacity .2s; }
  .hdr-burger[aria-expanded="true"] span:nth-child(1){ transform:translateY(8px) rotate(45deg); }
  .hdr-burger[aria-expanded="true"] span:nth-child(2){ opacity:0; }
  .hdr-burger[aria-expanded="true"] span:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }
  .hdr.is-menu{ background:#fff; border-bottom-color:var(--line); }
  .hdr-menu{
    position:fixed; inset:0; z-index:1; display:flex; flex-direction:column; justify-content:space-between; gap:32px;
    padding:calc(72px + 24px) var(--gutter) 32px; background:#fff; overflow-y:auto;
    opacity:0; transition:opacity .3s var(--ease);
  }
  .hdr-menu[hidden]{ display:none; }
  .hdr.is-menu .hdr-menu{ opacity:1; }
  .hdr-menu-nav > ul > li{ border-bottom:1px solid var(--line); }
  .hdr-menu-link{
    display:flex; align-items:center; gap:8px; width:100%; min-height:60px;
    font-weight:700; font-size:28px; letter-spacing:-.04em; color:var(--ink); text-align:left;
  }
  .hdr-menu-link .hdr-dot{ width:6px; height:6px; }
  .hdr-menu-toggle::after{
    content:""; margin-left:auto; width:10px; height:10px;
    border-right:2px solid currentColor; border-bottom:2px solid currentColor;
    transform:translateY(-3px) rotate(45deg); transition:transform .25s var(--ease);
  }
  .hdr-menu-toggle[aria-expanded="true"]::after{ transform:translateY(2px) rotate(-135deg); }
  .hdr-menu-sub{ padding:0 0 14px; }
  .hdr-menu-sub a{ display:flex; align-items:center; min-height:44px; font-weight:500; font-size:17px; color:var(--ink-soft); }
  .hdr-menu-sub a:hover{ color:var(--red); }
  .hdr-menu-actions{ display:flex; flex-direction:column; gap:12px; }
  .hdr-menu-actions .btn{ width:100%; --h:52px; font-size:16px; }
}
@media (max-width:640px){
  .hdr-logo img{ width:128px; }
  .hdr-menu-link{ font-size:24px; min-height:56px; }
}
.hero{
  --dh:min(var(--d), calc(100vh / 1440)); --dh:min(var(--d), calc(100svh / 1440));
  position:relative; overflow:hidden; isolation:isolate;
  padding-top:calc(var(--dh) * 316); padding-bottom:calc(var(--dh) * 84);
  background:#fff;
}
.hero-inner{ position:relative; z-index:2; }
.hero-title{
  max-width:calc(var(--dh) * 1640);
  font-weight:700; font-size:calc(var(--dh) * 140); line-height:calc(120 / 140); letter-spacing:-.03em;
  color:var(--ink);
}
.hero-sub{
  max-width:calc(var(--dh) * 1194); margin-top:calc(var(--dh) * 221);
  font-weight:500; font-size:calc(var(--dh) * 55); line-height:calc(53 / 55); letter-spacing:-.04em;
  color:var(--ink);
}
.hero-ctas{ display:flex; flex-wrap:wrap; gap:calc(var(--dh) * 28); margin-top:calc(var(--dh) * 59); }
.hero-ctas .btn--red{ min-width:calc(var(--dh) * 334); }
.hero-ctas .btn--outline{ min-width:calc(var(--dh) * 238); }
.hero-ctas .btn--outline svg{ width:max(12px, calc(var(--d) * 16)); }
.hero-art{ --a:var(--d); position:absolute; inset:0; z-index:1; pointer-events:none; }
.hero-arc{ 
  position:absolute; right:calc(var(--a) * -378); top:calc(var(--a) * -179);
  width:calc(var(--a) * 1553); height:calc(var(--a) * 2165);
  display:grid; place-items:center; mix-blend-mode:multiply;
}
.hero-arc-media{
  position:relative; flex:none;
  width:calc(var(--a) * 1950.6); height:calc(var(--a) * 1088.7);
  transform:rotate(-75.11deg);
  animation:hero-arc-in 1.4s var(--ease) both;
}
.hero-arc-media > *{ position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; }
.hero-arc-media img{ transition:opacity .6s var(--ease); }
.hero-vid{ opacity:0; filter:brightness(1.035); transform:scaleX(-1); transition:opacity 1.2s linear; }
.hero-vid.is-on{ opacity:1; }
.hero-vid.is-first{ transition:none; }
.hero-arc.wants-video .hero-arc-media{ animation:none; }
.hero-vid.is-top{ z-index:2; }
.hero-arc.wants-video img{ opacity:0; }
.hero-fade{
  position:absolute; left:calc(var(--d) * 1199); top:calc(var(--d) * 996);
  width:calc(var(--d) * 1361); bottom:0; 
  background:linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
.hero-fade::after{ 
  content:""; position:absolute; left:calc(var(--d) * 800); top:calc(var(--d) * 260);
  width:calc(var(--d) * 1500); height:calc(var(--d) * 1000);
  background:radial-gradient(closest-side, #fff 55%, rgba(255,255,255,0));
  transform:rotate(-20deg);
}
.hero-logos{
  position:relative; z-index:2;
  width:calc(var(--dh) * 1617); margin-top:calc(var(--dh) * 154); margin-left:calc(var(--dh) * 89);
  height:calc(var(--dh) * 80); display:flex; align-items:center; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent 1.2%, #000 10.9%, #000 88.4%, transparent 90.2%);
          mask-image:linear-gradient(90deg, transparent 1.2%, #000 10.9%, #000 88.4%, transparent 90.2%);
}
.hero-logos-track{ display:flex; width:max-content; animation:hero-marquee 38s linear infinite; }
.hero-logos:hover .hero-logos-track{ animation-play-state:paused; }
.hero-logos-list{ display:flex; align-items:center; gap:calc(var(--dh) * 95); padding-left:calc(var(--dh) * 21); padding-right:calc(var(--dh) * 74); }
.hero-logos-list img{
  width:calc(var(--dh) * var(--w)); height:calc(var(--dh) * var(--h)); max-width:none;
  object-fit:fill; opacity:.5; filter:grayscale(1) brightness(0);
}
.hero-in{ animation:hero-up .8s var(--ease) both; }
.hero-title.hero-in{ animation-delay:.05s; }
.hero-sub.hero-in{ animation-delay:.18s; }
.hero-ctas.hero-in{ animation-delay:.3s; }
.hero-logos.hero-in{ animation-delay:.42s; }
@keyframes hero-up{ from{ opacity:0; transform:translateY(28px); } to{ opacity:1; transform:none; } }
@keyframes hero-arc-in{ from{ opacity:0; } to{ opacity:1; } }
@keyframes hero-marquee{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){
  .hero-logos-track{ animation:none; }
}
@media (max-width:1024px){
  .hero{ padding-top:calc(72px + 72px); padding-bottom:40px; }
  .hero-title{ max-width:14ch; font-size:60px; line-height:1; }
  .hero-sub{ max-width:30ch; margin-top:36px; font-size:26px; line-height:1.12; letter-spacing:-.03em; }
  .hero-ctas{ gap:12px; margin-top:32px; }
  .hero-art{ --a:.5px; }
  .hero-fade{ left:0; right:0; top:auto; bottom:0; width:auto; height:45%; }
  .hero-fade::after{ display:none; }
  .hero-logos{
    width:auto; height:64px; margin:56px 0 0;
    -webkit-mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
            mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
  }
  .hero-logos-list{ gap:48px; padding-inline:0 48px; }
  .hero-logos-list img{ width:calc(var(--w) * .7px); height:calc(var(--h) * .7px); }
}
@media (max-width:640px){
  .hero{ padding-top:calc(72px + 40px); }
  .hero-title{ font-size:40px; line-height:1.02; letter-spacing:-.035em; max-width:none; }
  .hero-sub{ font-size:20px; line-height:1.2; margin-top:24px; max-width:none; }
  .hero-ctas{ flex-direction:column; align-items:stretch; margin-top:28px; }
  .hero-ctas .btn{ --h:52px; font-size:16px; }
  .hero-art{ --a:.36px; }
  .hero-arc{ opacity:.22; }
  .hero-logos{ margin-top:44px; height:56px; }
  .hero-logos-list{ gap:36px; padding-right:36px; }
  .hero-logos-list img{ width:calc(var(--w) * .58px); height:calc(var(--h) * .58px); }
}
.hero-nb{ white-space:nowrap; }
:root{ --in-ease:cubic-bezier(.16,1,.3,1); --box-ease:cubic-bezier(.7,0,.2,1); }
.intro-screen{ display:none; }
html.intro:not(.intro-done), html.intro:not(.intro-done) body{ background:var(--red); }
html.intro:not(.intro-done) .intro-screen{ display:grid; place-items:center; position:fixed; inset:0; z-index:90; pointer-events:none; }
html.intro:not(.intro-done) .stage{ clip-path:xywh(50% 50vh 0 0 round 24px); }
html.intro.intro-go:not(.intro-done) .stage{ clip-path:xywh(0 0 100% 100vh round 0); transition:clip-path .6s var(--box-ease); }
html.intro:not(.intro-go):not(.intro-done) .hdr-bar{ visibility:hidden; }
html.intro .hero-in, html.intro .hdr-bar{ animation:none; }
.intro-logo{ width:clamp(200px, 17vw, 420px); height:auto; overflow:visible; }
.intro-arc-stroke{
  stroke-dasharray:1 1; stroke-dashoffset:1;
  animation:intro-draw .5s cubic-bezier(.65,0,.35,1) .06s forwards, intro-erase .36s cubic-bezier(.65,0,.35,1) .76s forwards;
}
.intro-l{
  transform:translateY(32px);
  animation:intro-l-in .5s var(--in-ease) calc(.16s + var(--i) * .03s) forwards, intro-l-out .28s cubic-bezier(.5,0,.75,0) calc(.74s + var(--i) * .015s) forwards;
}
@keyframes intro-draw{ to{ stroke-dashoffset:0; } }
@keyframes intro-erase{ from{ stroke-dashoffset:0; } to{ stroke-dashoffset:-1; } }
@keyframes intro-l-in{ from{ transform:translateY(32px); } to{ transform:none; } }
@keyframes intro-l-out{ from{ transform:none; } to{ transform:translateY(-32px); } }
.ln{ display:block; clip-path:inset(-60% -20% 0 -20%); padding-bottom:.18em; margin-bottom:-.18em; }
.ln-i{ display:block; transform-origin:0 100%; }
html.intro-go .hero-arc{ animation:intro-arc 1.8s var(--in-ease) backwards; }
html.intro-go .hero-title .ln-i{ animation:intro-line 1s var(--in-ease) calc(.28s + var(--n, 0) * .08s) backwards; }
html.intro-go .hero-sub .ln-i{ animation:intro-line .9s var(--in-ease) calc(.5s + var(--n, 0) * .07s) backwards; }
html.intro-go .hero-ctas .btn{ animation:intro-btn .75s var(--in-ease) calc(.7s + var(--n, 0) * .08s) backwards; }
html.intro-go .hero-ctas .btn .roll-t{ animation:intro-roll .75s var(--in-ease) calc(.78s + var(--n, 0) * .08s) backwards; }
html.intro-go .hero-ctas .btn > svg{ animation:intro-pop .6s var(--in-ease) calc(.84s + var(--n, 0) * .08s) backwards; }
html.intro-go .hero-logos-list li{ animation:intro-up .9s var(--in-ease) calc(.92s + var(--n, 0) * .045s) backwards; }
html.intro-go .hdr-logo{ animation:intro-wipe .8s var(--in-ease) .46s backwards; }
html.intro-go .hdr-link .roll-t{ animation:intro-roll .7s var(--in-ease) calc(.52s + var(--n, 0) * .05s) backwards; }
html.intro-go .hdr-dot{ animation:intro-pop .5s var(--in-ease) calc(.7s + var(--n, 0) * .05s) backwards; }
html.intro-go .hdr-actions .btn{ animation:intro-btn .7s var(--in-ease) calc(.66s + var(--n, 0) * .07s) backwards; }
html.intro-go .hdr-actions .btn .roll-t{ animation:intro-roll .7s var(--in-ease) calc(.74s + var(--n, 0) * .07s) backwards; }
html.intro-go .hdr-burger{ animation:intro-up .7s var(--in-ease) .5s backwards; }
@keyframes intro-arc{ from{ transform:scale(1.07); } to{ transform:none; } }
@keyframes intro-line{ from{ transform:translateY(112%) rotate(2.5deg); } to{ transform:none; } }
@keyframes intro-btn{ from{ clip-path:inset(100% 0 0 0); } to{ clip-path:inset(0 0 0 0); } }
@keyframes intro-roll{ from{ transform:translateY(110%); } to{ transform:none; } }
@keyframes intro-pop{ from{ opacity:0; transform:scale(.4); } to{ opacity:1; } }
@keyframes intro-up{ from{ opacity:0; transform:translateY(60%); } to{ opacity:1; transform:none; } }
@keyframes intro-wipe{ from{ clip-path:inset(0 0 100% 0); transform:translateY(40%); } to{ clip-path:inset(0 0 0 0); } }
.aus{ padding-top:calc(var(--d) * 143); padding-bottom:calc(var(--d) * 247); overflow:hidden; }
.aus-line{ margin:0; border:0; height:max(1px, calc(var(--d) * 2)); background:rgba(0,0,0,.2); border-radius:2px; }
.aus-top{
  display:grid; grid-template-columns:calc(var(--d) * 1418) 1fr; align-items:start;
  padding-top:calc(var(--d) * 111);
}
.aus-statement{
  max-width:calc(var(--d) * 1112); margin-top:calc(var(--d) * 14);
  font-weight:500; font-size:calc(var(--d) * 75); line-height:calc(66 / 75); letter-spacing:-.04em; color:var(--ink);
}
.aus-stats{ display:grid; grid-template-columns:calc(var(--d) * 427) auto; row-gap:calc(var(--d) * 62); }
.aus-stat-num{
  display:flex; align-items:center; height:calc(var(--d) * 98);
  font-weight:700; font-size:calc(var(--d) * 60); line-height:calc(50 / 60); letter-spacing:-.04em; color:var(--ink); white-space:nowrap;
}
.aus-kranz{ position:relative; flex:none; width:calc(var(--d) * 75); height:calc(var(--d) * 98); }
.aus-kranz--r{ margin-left:calc(var(--d) * 5); }
.aus-kranz::before{ 
  content:""; position:absolute; left:50%; top:50%;
  width:calc(var(--d) * 40.864); height:calc(var(--d) * 89.03);
  background:url("assets/images/aus-kranz.png") no-repeat 100% 0 / 217.87% 100%;
  transform:translate(-50%, -50%) rotate(-25.3deg);
}
.aus-kranz--l::before{ transform:translate(-50%, -50%) scaleX(-1) rotate(-25.3deg); }
.aus-kranz:has(svg)::before{ display:none; }
.aus-kranz svg{
  position:absolute; left:50%; top:50%; width:calc(var(--d) * 40.864); height:calc(var(--d) * 89.03); overflow:visible;
  transform:translate(-50%, -50%) rotate(-25.3deg);
}
.aus-kranz--l svg{ transform:translate(-50%, -50%) scaleX(-1) rotate(-25.3deg); }
.aus-kranz path{ transform:scale(0) rotate(-35deg); }
.aus-stats.is-in .aus-kranz path{ animation:kr-a .7s var(--in-ease) calc(.35s + var(--k) * .045s) both; }
.aus-stats.is-in .kr-hov .aus-kranz path{ animation-delay:calc(var(--k) * .03s); }
.aus-stats.is-in .kr-b .aus-kranz path{ animation-name:kr-b; }
@keyframes kr-a{ from{ transform:scale(0) rotate(-35deg); } to{ transform:none; } }
@keyframes kr-b{ from{ transform:scale(0) rotate(-35deg); } to{ transform:none; } }
@media (prefers-reduced-motion:reduce){ .aus-kranz path, .aus-stats.is-in .aus-kranz path{ animation:none; transform:none; } }
.aus-stat-label{
  box-sizing:content-box; max-width:calc(var(--d) * var(--lw, 300)); margin-top:calc(var(--d) * 2); padding-left:calc(var(--d) * 22);
  font-weight:500; font-size:max(14px, calc(var(--d) * 27)); line-height:calc(25 / 27); letter-spacing:-.04em;
  color:rgba(33,33,33,.5);
}
.aus-head{
  display:flex; align-items:flex-end; justify-content:space-between; gap:24px;
  margin-top:calc(var(--d) * 218);
}
.aus-eyebrow{ font-size:max(15px, calc(var(--d) * 35)); color:rgba(33,33,33,.5); }
.aus-eyebrow::before{ margin-left:calc(var(--d) * 4); }
.aus-lead{
  max-width:calc(var(--d) * 1264); margin-top:calc(var(--d) * 10);
  font-weight:700; font-size:calc(var(--d) * 45); line-height:calc(42 / 45); letter-spacing:-.04em; color:var(--ink);
}
.aus-arrows{ display:flex; gap:calc(var(--d) * 16); flex:none; }
.aus-arrows .arrow-btn[disabled]{ opacity:.3; cursor:default; pointer-events:none; }
.aus-line--mid{ margin-top:calc(var(--d) * 61); }
.aus-slider{ position:relative; max-width:2560px; margin:calc(var(--d) * 72) auto 0; }
.aus-track{
  display:flex; gap:calc(var(--d) * 38);
  padding-inline:var(--gutter); scroll-padding-inline:var(--gutter);
  overflow-x:auto; overscroll-behavior-x:contain; scroll-snap-type:x mandatory; scroll-behavior:smooth;
  scrollbar-width:none;
}
.aus-track::-webkit-scrollbar{ display:none; }
.aus-track::after{ content:""; flex:0 0 1px; } 
.aus-card{
  position:relative; flex:0 0 calc(var(--d) * 490); height:calc(var(--d) * 540);
  border-radius:max(6px, calc(var(--d) * 8)); overflow:hidden; background:#111; color:#fff;
  scroll-snap-align:start;
}
.aus-card-num{
  position:absolute; z-index:2; left:calc(var(--d) * 23); top:calc(var(--d) * 30);
  font-weight:700; font-size:calc(var(--d) * 90); line-height:calc(66 / 90); letter-spacing:-.04em; white-space:nowrap;
}
.aus-card-text{
  position:absolute; z-index:2; left:calc(var(--d) * 23); right:calc(var(--d) * 21); bottom:calc(var(--d) * 36);
  font-weight:700; font-size:max(16px, calc(var(--d) * 35)); line-height:calc(36 / 35); letter-spacing:-.04em;
}
.aus-card-bg{ position:absolute; max-width:none; object-fit:cover; }
.aus-card--rot .aus-card-bg{ left:-10.18%; top:-36.67%; width:141.14%; height:197.04%; }
.aus-card--person .aus-card-bg{ left:0; top:-11.67%; width:100%; height:136.1%; }
.aus-card--person::after{
  content:""; position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(33,33,33,.6) 0%, rgba(33,33,33,0) 56%, rgba(33,33,33,.68) 100%);
}
.aus-card--rot .aus-card-text{ right:calc(var(--d) * 40); }
.aus-card--person .aus-card-text{ right:calc(var(--d) * 65); }
.aus-card-logo{ position:absolute; left:21.63%; top:24.35%; width:56.73%; height:auto; }
.aus-card-samsung{ position:absolute; left:13.67%; top:36.67%; width:68.98%; }
.aus-card-samsung img{ width:100%; height:auto; }
.aus-card-samsung i{ 
  position:absolute; left:94.08%; top:53.47%; width:4.73%; aspect-ratio:1; border-radius:2px;
  background:var(--red); box-shadow:0 0 calc(var(--d) * 7) var(--red);
}
.aus-card-yc{ position:absolute; left:12.02%; top:25.19%; width:78.62%; }
.aus-card-yc img{ width:100%; height:auto; filter:drop-shadow(0 0 2px rgba(255,255,255,.55)); }
.aus-card-sq{ position:absolute; z-index:2; bottom:0; width:max(14px, calc(var(--d) * 27)); aspect-ratio:1; border-radius:4px; background:var(--red); }
.aus-card-sq--r{ right:0; }
.aus-card-sq--l{ left:0; }
.aus-fade{
  position:absolute; top:0; right:0; bottom:0; width:calc(var(--d) * 291); z-index:3; pointer-events:none;
  background:linear-gradient(90deg, rgba(255,255,255,0), #fff 81.25%);
  transition:opacity .3s var(--ease);
}
.aus-slider.is-end .aus-fade{ opacity:0; }
.aus-help{
  max-width:2560px; margin:calc(var(--d) * 264) auto 0;
  padding-left:calc(var(--d) * 401); padding-right:calc(var(--d) * 316);
}
.aus-help-eyebrow{ gap:calc(var(--d) * 16); color:var(--ink); }
.aus-rows{ margin-top:calc(var(--d) * 43); display:flex; flex-direction:column; gap:calc(var(--d) * 37); }
.aus-row-btn{
  display:flex; align-items:baseline; justify-content:space-between; gap:24px; width:100%; text-align:left;
}
.aus-row-title{
  font-weight:700; font-size:calc(var(--d) * 55); line-height:calc(42 / 55); letter-spacing:-.04em;
  color:rgba(33,33,33,.3); transition:color .45s ease;
}
.aus-row-service{
  flex:none; text-align:right; display:inline-flex; align-items:center; gap:max(6px, calc(var(--d) * 12));
  font-weight:500; font-size:max(14px, calc(var(--d) * 27)); line-height:calc(42 / 27); letter-spacing:-.04em;
  color:rgba(33,33,33,.5); transition:color .45s ease;
}
.aus-row-desc{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .6s cubic-bezier(.22,1,.36,1); }   
.aus-row-desc p{
  overflow:hidden; min-height:0; opacity:0; transform:translateY(-6px);
  transition:opacity .35s ease, transform .6s cubic-bezier(.22,1,.36,1), padding .6s cubic-bezier(.22,1,.36,1);
  max-width:calc(var(--d) * 1843);
  font-weight:500; font-size:max(15px, calc(var(--d) * 27)); line-height:1.4; letter-spacing:-.04em;
  color:rgba(33,33,33,.7);
}
.aus-row.is-active .aus-row-title{ color:var(--ink); }
.aus-row.is-active .aus-row-service{ color:var(--ink); }   
.aus-row.is-active .aus-row-desc{ grid-template-rows:1fr; }
.aus-row.is-active .aus-row-desc p{ opacity:1; transform:none; padding-top:calc(var(--d) * 15); padding-bottom:calc(var(--d) * 8); transition-delay:.08s, .0s, 0s; }
.aus-row-arrow{ flex:none; width:max(11px, calc(var(--d) * 17)); height:auto; opacity:0; transform:translateX(-8px); transition:opacity .4s ease, transform .55s cubic-bezier(.22,1,.36,1); }
@media (hover:hover){
  .aus-row-btn:hover .aus-row-title{ color:var(--ink); }
  .aus-row-btn:hover .aus-row-service{ color:var(--red); }
  .aus-row-btn:hover .aus-row-arrow{ opacity:1; transform:none; }
}
.aus-ctas{ display:flex; flex-wrap:wrap; gap:calc(var(--d) * 21); margin-top:calc(var(--d) * 74); }
.aus-ctas .btn{ --h:max(44px, calc(var(--d) * 61)); }
.aus-ctas .btn--outline{ min-width:calc(var(--d) * 346); }
.aus-ctas .btn--black{ min-width:calc(var(--d) * 362); }
.aus-ctas .btn--outline svg{ width:max(12px, calc(var(--d) * 16)); }
@media (max-width:1024px){
  .aus{ padding-top:64px; padding-bottom:96px; }
  .aus-line{ height:1px; }
  .aus-top{ grid-template-columns:1fr; gap:48px; padding-top:48px; }
  .aus-statement{ max-width:22ch; margin-top:0; font-size:44px; line-height:1.05; }
  .aus-stats{ grid-template-columns:repeat(2, minmax(0, 1fr)); row-gap:36px; column-gap:24px; }
  .aus-stat-num{ height:64px; font-size:40px; line-height:1; }
  .aus-kranz{ width:44px; height:64px; }
  .aus-kranz--r{ margin-left:4px; }
  .aus-kranz::before, .aus-kranz svg{ width:26px; height:57px; }
  .aus-stat-label{ max-width:260px; box-sizing:border-box; padding-left:14px; margin-top:4px; font-size:16px; line-height:1.2; }
  .aus-head{ margin-top:80px; }
  .aus-eyebrow{ font-size:20px; }
  .aus-lead{ margin-top:10px; font-size:28px; line-height:1.1; max-width:26ch; }
  .aus-arrows{ gap:10px; }
  .aus-arrows .arrow-btn{ width:44px; height:44px; }
  .aus-line--mid{ margin-top:32px; }
  .aus-slider{ margin-top:32px; }
  .aus-track{ gap:16px; }
  .aus-card{ flex-basis:320px; height:360px; }
  .aus-card-num{ left:18px; top:20px; font-size:56px; line-height:1; }
  .aus-card-text, .aus-card--rot .aus-card-text, .aus-card--person .aus-card-text{ left:18px; right:18px; bottom:24px; font-size:21px; line-height:1.08; }
  .aus-fade{ width:96px; }
  .aus-help{ margin-top:96px; padding-inline:var(--gutter); }
  .aus-help-eyebrow{ gap:10px; font-size:20px; }
  .aus-rows{ margin-top:24px; gap:0; }
  .aus-row{ border-bottom:1px solid var(--line); }
  .aus-row-btn{ flex-direction:column; align-items:flex-start; gap:4px; padding-block:16px; }
  .aus-row-title{ font-size:28px; line-height:1.1; }
  .aus-row-service{ text-align:left; font-size:15px; line-height:1.3; }
  .aus-row-desc p{ font-size:17px; line-height:1.45; max-width:60ch; }
  .aus-row.is-active .aus-row-desc p{ padding-top:0; padding-bottom:18px; }
  .aus-ctas{ gap:12px; margin-top:36px; }
  .aus-ctas .btn{ --h:52px; font-size:16px; }
}
@media (max-width:640px){
  .aus{ padding-top:48px; padding-bottom:72px; }
  .aus-top{ gap:36px; padding-top:36px; }
  .aus-statement{ font-size:34px; line-height:1.06; }
  .aus-stats{ column-gap:12px; row-gap:28px; }
  .aus-stat-num{ height:52px; font-size:28px; }
  .aus-kranz{ width:30px; height:52px; }
  .aus-kranz--r{ margin-left:2px; }
  .aus-kranz::before, .aus-kranz svg{ width:20px; height:44px; }
  .aus-stat-label{ padding-left:8px; font-size:15px; }
  .aus-head{ margin-top:64px; flex-direction:column; align-items:stretch; }
  .aus-lead{ font-size:24px; }
  .aus-arrows{ display:none; }
  .aus-track{ gap:12px; }
  .aus-card{ flex-basis:min(78vw, 300px); height:340px; }
  .aus-card-num{ font-size:48px; }
  .aus-card-text, .aus-card--rot .aus-card-text, .aus-card--person .aus-card-text{ font-size:19px; }
  .aus-fade{ display:none; }
  .aus-help{ margin-top:72px; }
  .aus-row-title{ font-size:24px; }
  .aus-row-desc p{ font-size:16px; }
  .aus-ctas{ flex-direction:column; align-items:stretch; }
  .aus-ctas .btn{ min-width:0; }
}
.aus-nb{ white-space:nowrap; }
.aus-card--photo .aus-card-bg{ left:0; top:0; width:100%; height:100%; transition:transform .9s var(--ease); }
.aus-card--photo:hover .aus-card-bg{ transform:scale(1.04); }
.aus-card--photo::after{ content:""; position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(17,17,17,.62) 0%, rgba(17,17,17,.1) 50%, rgba(17,17,17,.78) 100%); }
.aus-row-link{ margin-left:.35em; color:var(--red); font-weight:500; text-decoration:underline; text-underline-offset:3px; white-space:nowrap; }
.aus-row-link::after{ content:" \2192"; }
.aus-row-link:hover{ color:var(--ink); }
.lst{ padding-block:calc(var(--d) * 183) calc(var(--d) * 175); background:var(--paper); }
.lst-grid{
  display:grid;
  grid-template-columns:calc(var(--d) * 859) calc(var(--d) * 1129);
  grid-template-areas:"side head" "side acc";
  grid-template-rows:auto 1fr;
  column-gap:calc(var(--d) * 176);
}
.lst-head{ grid-area:head; }
.lst-acc{ grid-area:acc; }
.lst-side{ grid-area:side; margin-top:calc(var(--d) * 105); align-self:start; }
.lst-title{
  margin-top:calc(var(--d) * 42);
  font-weight:700; font-size:calc(var(--d) * 75); line-height:1.013; letter-spacing:-.04em; color:var(--ink);
}
.lst-intro{
  margin-top:calc(var(--d) * 79); max-width:max(calc(var(--d) * 792), 475px);
  font-size:max(15px, calc(var(--d) * 25)); line-height:1.16; letter-spacing:-.03em; color:rgba(0,0,0,.5);
}
.lst-acc{ margin-top:calc(var(--d) * 108); align-self:start; }
.lst-item{ border-top:2px solid rgba(0,0,0,.2); padding-block:calc(var(--d) * 73); }
.lst-item-head{ font:inherit; }
.lst-toggle{
  display:flex; align-items:center; width:100%; text-align:left;
  --num-col:calc(var(--d) * 151);
}
.lst-num{
  flex:none; width:var(--num-col);
  display:inline-flex; align-items:center; gap:max(8px, calc(var(--d) * 16));
  font-weight:700; font-size:max(16px, calc(var(--d) * 35)); line-height:1; letter-spacing:-.04em;
  color:rgba(33,33,33,.5); transition:color .35s var(--ease);
}
.lst-num::before{
  content:""; width:max(8px, calc(var(--d) * 16)); height:max(8px, calc(var(--d) * 16));
  border-radius:1px; background:currentColor; flex:none;
}
.lst-name{
  font-weight:700; font-size:max(18px, calc(var(--d) * 45)); line-height:1; letter-spacing:-.04em;
  color:rgba(33,33,33,.5);
  transition:color .35s var(--ease), font-size .35s var(--ease);
}
.lst-toggle:hover .lst-name{ color:var(--ink); }
.lst-item.is-open .lst-num{ color:var(--red); }
.lst-item.is-open .lst-name{ color:var(--ink); font-size:max(20px, calc(var(--d) * 55)); }
.lst-item.is-open .lst-toggle{ cursor:default; }
.lst-desc{
  margin-top:calc(var(--d) * 38); margin-left:calc(var(--d) * 151);
  max-width:max(calc(var(--d) * var(--w, 600)), calc(var(--w, 600) * .6px)); min-width:min(100%, 260px);
  font-weight:500; font-size:max(15px, calc(var(--d) * 25)); line-height:1.16; letter-spacing:-.03em;
  color:rgba(33,33,33,.5);
}
.lst-panel{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .5s var(--ease); }
.lst-item.is-open .lst-panel{ grid-template-rows:1fr; }
.lst-panel-inner{
  overflow:hidden; min-height:0; padding-left:calc(var(--d) * 151);
  opacity:0; transition:opacity .35s var(--ease);
}
.lst-item.is-open .lst-panel-inner{ opacity:1; transition-delay:.12s; }
.lst-checks{
  margin-top:calc(var(--d) * 48);
  display:grid; grid-template-columns:repeat(2, minmax(max-content, calc(var(--d) * 344)));
  row-gap:max(10px, calc(var(--d) * 21)); column-gap:max(16px, calc(var(--d) * 20));
}
.lst-checks li{
  display:flex; align-items:center; gap:max(8px, calc(var(--d) * 9));
  font-weight:500; font-size:max(15px, calc(var(--d) * 25)); line-height:1; letter-spacing:-.03em; color:var(--ink);
}
.lst-checks li::before{
  content:""; flex:none; width:max(16px, calc(var(--d) * 24)); height:max(16px, calc(var(--d) * 24));
  background:url("assets/images/lst-check.png") center / contain no-repeat;
}
.lst-actions{
  margin-top:calc(var(--d) * 66); padding-bottom:3px;
  display:flex; flex-wrap:wrap; gap:max(12px, calc(var(--d) * 27));
}
.lst-actions .btn img{ width:max(16px, calc(var(--d) * 23)); height:auto; }
.lst-more{
  --ico:max(28px, calc(var(--d) * 36)); --pr:max(6px, calc(var(--d) * 12));
  --cx:calc(100% - var(--pr) - var(--ico) / 2 - 2px); --r:calc(var(--h) / 2 + 4px); --fc:var(--black);
  padding-right:var(--pr); gap:max(10px, calc(var(--d) * 14));
  background:radial-gradient(circle at var(--cx) 50%, var(--fc) var(--r), var(--black) calc(var(--r) + .5px)) border-box no-repeat;
  transition:--fc .14s linear, --r .6s cubic-bezier(.5,0,.2,1), gap .35s var(--ease), padding .35s var(--ease);
}
.lst-more-ico{
  display:grid; place-items:center; flex:none;
  width:var(--ico); height:var(--ico);
  border-radius:50%; background:#fff; border:1px solid #fff; color:#000;
  transition:transform .3s var(--ease), color .3s;
}
.lst-more .lst-more-ico svg{ width:42%; transition:transform .35s var(--ease); }
@media (hover:hover){
  .lst-more:hover{ --r:calc(var(--h) * 7); --fc:var(--red); gap:max(20px, calc(var(--d) * 36)); padding-left:max(26px, calc(var(--d) * 50)); }
  .lst-more:hover .lst-more-ico{ color:var(--red); }
  .lst-more:hover .lst-more-ico svg{ transform:rotate(-45deg); }
}
.lst-case{
  position:relative; height:calc(var(--d) * 1102); border-radius:8px; overflow:hidden;
  background:#111; color:#fff; isolation:isolate;
}
.lst-case-slides{ position:absolute; inset:0; }
.lst-slide{ position:absolute; inset:0; opacity:0; visibility:hidden; transition:opacity .6s var(--ease), visibility 0s .6s; }
.lst-slide.is-active{ opacity:1; visibility:visible; transition:opacity .6s var(--ease), visibility 0s; }
.lst-slide-img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:var(--pos, 50% 50%);
  transform:scale(1.06); transition:transform 1.2s var(--ease);
}
.lst-slide.is-active .lst-slide-img{ transform:scale(1); }
.lst-slide-img--flip{ transform:scale(-1.06, 1.06); }
.lst-slide.is-active .lst-slide-img--flip{ transform:scale(-1, 1); }
.lst-slide::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:
    linear-gradient(to bottom, rgba(33,33,33,.55) 0%, rgba(33,33,33,0) 46%),
    linear-gradient(to top, rgba(33,33,33,.92) 0%, rgba(33,33,33,0) 52%);
}
.lst-stat{
  position:absolute; z-index:1; left:calc(var(--d) * 64); right:calc(var(--d) * 64); bottom:calc(var(--d) * 132);
  transform:translateY(16px); opacity:0; transition:transform .6s var(--ease), opacity .6s var(--ease);
}
.lst-slide.is-active .lst-stat{ transform:none; opacity:1; transition-delay:.15s; }
.lst-stat strong{
  display:block; font-weight:700; font-size:max(44px, calc(var(--d) * 125)); line-height:1; letter-spacing:-.04em;
}
.lst-stat > span{
  display:block; margin-top:calc(var(--d) * 23); max-width:calc(var(--d) * 560);
  font-weight:700; font-size:max(18px, calc(var(--d) * 45)); line-height:1.09; letter-spacing:-.04em;
}
.lst-case-top{
  position:absolute; z-index:2; top:calc(var(--d) * 76); left:calc(var(--d) * 64); right:calc(var(--d) * 62);
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.lst-case-next{
  flex:none; width:max(36px, calc(var(--d) * 53)); height:max(36px, calc(var(--d) * 53)); color:#fff;
  border-radius:3px; transition:background-color .2s, color .2s;
}
.lst-case-next svg{ width:100%; height:100%; }
.lst-case-next:hover{ background:#fff; color:var(--ink); }
.lst-dots{
  position:absolute; z-index:2; left:calc(var(--d) * 64 - 5px); bottom:calc(var(--d) * 47 - 5px);
  display:flex;
}
.lst-dot{ padding:5px; }
.lst-dot::before{
  content:""; display:block; width:max(9px, calc(var(--d) * 16)); height:max(9px, calc(var(--d) * 16));
  background:rgba(255,255,255,.5); transition:background-color .25s, transform .3s var(--ease);
}
@media (hover:hover){ .lst-dot:hover::before{ background:rgba(255,255,255,.8); transform:scale(1.35); } }   
.lst-dot[aria-pressed="true"]::before{ background:#fff; }
.lst-tiles{
  margin-top:calc(var(--d) * 39);
  display:grid; grid-template-columns:repeat(2, 1fr); column-gap:calc(var(--d) * 33); row-gap:calc(var(--d) * 29);
}
.lst-tile{
  --face:#fff; --ec:rgba(33,33,33,.1); --fc:rgba(33,33,33,0);
  display:flex; align-items:center; gap:max(8px, calc(var(--d) * 21));
  height:100%; min-height:max(56px, calc(var(--d) * 114)); padding:10px calc(var(--d) * 34);
  border:2px solid transparent; border-radius:8px;
  background-image:linear-gradient(var(--fc), var(--fc)), linear-gradient(var(--face), var(--face)), linear-gradient(var(--ec), var(--ec));
  background-origin:border-box, padding-box, border-box; background-clip:border-box, padding-box, border-box;
  background-repeat:no-repeat; background-position:0 0; background-size:0% 100%, 100% 100%, 100% 100%;
  font-weight:500; font-size:max(14px, calc(var(--d) * 25)); line-height:1.1; letter-spacing:-.04em; color:var(--ink);
  transition:background-size .5s var(--ease), --fc .22s linear, --ec .15s linear, color .25s .1s;
}
.lst-tile img{ flex:none; width:max(20px, calc(var(--d) * 39)); height:auto; transition:filter .25s .1s; }
.lst-nb{ white-space:nowrap; }
.lst-tile--red{
  --face:var(--red); --ec:var(--red); color:#fff;
  padding-left:calc(var(--d) * 43); padding-right:calc(var(--d) * 40); justify-content:space-between;
}
.lst-tile-arrow{ flex:none; margin-left:auto; width:max(13px, calc(var(--d) * 16)); height:auto; opacity:0; transform:translateX(-8px); transition:opacity .25s, transform .3s var(--ease); }
.lst-tile--red .lst-tile-arrow{ opacity:1; transform:none; }
.lst-tile--outline{ --ec:var(--red); color:var(--red); }
@media (hover:hover){
  .lst-tile:hover{ background-size:100% 100%, 100% 100%, 100% 100%; --fc:var(--ink); --ec:var(--face); color:#fff; }
  .lst-tile:hover img{ filter:brightness(0) invert(1); }
  .lst-tile:hover .lst-tile-arrow{ opacity:1; transform:translateX(4px); }
}
@media (max-width:1024px){
  .lst{ padding-block:80px; }
  .lst-grid{ grid-template-columns:1fr; grid-template-areas:"head" "acc" "side"; grid-template-rows:auto; }
  .lst-side{ margin-top:48px; }
  .lst-title{ margin-top:18px; font-size:44px; line-height:1.05; max-width:760px; }
  .lst-intro{ margin-top:24px; font-size:17px; max-width:620px; }
  .lst-acc{ margin-top:40px; }
  .lst-item{ padding-block:28px; }
  .lst-toggle{ --num-col:72px; }
  .lst-num{ font-size:20px; gap:10px; }
  .lst-name, .lst-item.is-open .lst-name{ font-size:24px; line-height:1.1; }
  .lst-item.is-open .lst-name{ font-size:28px; }
  .lst-desc{ margin-top:12px; margin-left:72px; max-width:520px; font-size:16px; }
  .lst-panel-inner{ padding-left:72px; }
  .lst-checks{ margin-top:22px; grid-template-columns:repeat(2, max-content); column-gap:32px; row-gap:12px; }
  .lst-checks li{ font-size:16px; }
  .lst-actions{ margin-top:28px; }
  .lst-case{ height:min(620px, 80vw); }
  .lst-case-top{ top:28px; left:28px; right:28px; }
  .lst-stat{ left:28px; right:28px; bottom:76px; }
  .lst-stat strong{ font-size:72px; }
  .lst-stat > span{ margin-top:12px; font-size:26px; max-width:440px; }
  .lst-dots{ left:23px; bottom:23px; }
  .lst-dot::before{ width:12px; height:12px; }
  .lst-tiles{ margin-top:20px; column-gap:16px; row-gap:16px; }
  .lst-tile{ min-height:76px; padding:12px 22px; font-size:17px; gap:14px; }
  .lst-tile img{ width:28px; }
  .lst-tile--red{ padding-inline:24px; }
}
@media (max-width:640px){
  .lst{ padding-block:64px; }
  .lst-title{ font-size:34px; }
  .lst-intro{ font-size:16px; }
  .lst-acc{ margin-top:32px; }
  .lst-item{ padding-block:22px; }
  .lst-toggle{ --num-col:48px; align-items:flex-start; }
  .lst-num{ font-size:17px; padding-top:3px; gap:8px; }
  .lst-name{ font-size:20px; }
  .lst-item.is-open .lst-name{ font-size:22px; }
  .lst-desc{ margin-left:48px; font-size:15px; min-width:0; }
  .lst-panel-inner{ padding-left:48px; }
  .lst-checks{ grid-template-columns:1fr; row-gap:10px; }
  .lst-checks li{ font-size:15px; line-height:1.2; }
  .lst-actions{ flex-direction:column; align-items:stretch; margin-top:22px; gap:10px; }
  .lst-actions .btn{ justify-content:center; }
  .lst-actions .lst-more{ padding-right:8px; padding-left:22px; justify-content:space-between; }
  .lst-side{ margin-top:36px; }
  .lst-case{ height:460px; }
  .lst-case-top{ top:22px; left:22px; right:22px; }
  .lst-case-top .eyebrow{ font-size:15px; }
  .lst-stat{ left:22px; right:22px; bottom:62px; }
  .lst-stat strong{ font-size:60px; }
  .lst-stat > span{ font-size:21px; }
  .lst-dots{ left:17px; bottom:17px; }
  .lst-dot{ padding:8px 5px; }
  .lst-tiles{ grid-template-columns:1fr; row-gap:10px; }
  .lst-tile{ min-height:64px; font-size:16px; }
}
@media (prefers-reduced-motion:reduce){
  .lst-slide-img, .lst-slide.is-active .lst-slide-img{ transform:none; }
  .lst-slide-img--flip, .lst-slide.is-active .lst-slide-img--flip{ transform:scaleX(-1); }
}
.lst-more.is-measure{ gap:max(20px, calc(var(--d) * 36)); padding-left:max(26px, calc(var(--d) * 50)); }   
.usp{ padding-block:calc(var(--d) * 151) calc(var(--d) * 131); background:var(--paper); }
.usp-inner{ width:100%; max-width:2560px; margin:0 auto; padding-inline:calc(var(--d) * 111); }
.usp-head{ display:flex; align-items:center; justify-content:space-between; gap:20px; }
.usp-title{
  font-weight:700; font-size:calc(var(--d) * 75); line-height:1.227; letter-spacing:-.04em; color:var(--ink);
}
.usp-more{ min-width:calc(var(--d) * 359); padding-inline:max(20px, calc(var(--d) * 41)); }
.usp-more img{ width:max(14px, calc(var(--d) * 17)); height:auto; transition:filter .25s var(--ease); }
.usp-more:hover img{ filter:brightness(0) invert(1); }
.usp-cards{
  margin-top:calc(var(--d) * 56);
  display:grid; grid-template-columns:701fr 507fr 1029fr; column-gap:calc(var(--d) * 50);
}
.usp-card{
  position:relative; overflow:hidden; isolation:isolate; border-radius:8px;
  height:calc(var(--d) * 598); background:#f3f3f3;
}
.usp-card-img{
  position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:cover;
  transition:transform 1.1s var(--ease);
}
.usp-card:hover .usp-card-img{ transform:scale(1.05); }
.usp-card--flug{ padding:calc(var(--d) * 72) calc(var(--d) * 44) calc(var(--d) * 73) calc(var(--d) * 45); }
.usp-card--flug .usp-card-img{ object-position:50% 0; }
.usp-flug-box{
  height:100%; background:#fff; border-radius:8px; overflow:hidden;
  display:flex; flex-direction:column;
  padding:calc(var(--d) * 61) calc(var(--d) * 46) 0 calc(var(--d) * 50);
}
.usp-flug-title{
  max-width:calc(var(--d) * 438);
  font-weight:700; font-size:max(22px, calc(var(--d) * 55)); line-height:.964; letter-spacing:-.04em; color:var(--ink);
}
.usp-stretch::after{ content:""; position:absolute; inset:0; z-index:1; border-radius:8px; }
.usp-flug-row{
  margin-top:calc(var(--d) * 56);
  display:flex; align-items:flex-end; justify-content:space-between; gap:16px;
}
.usp-flug-text{
  max-width:max(calc(var(--d) * 328), 200px);
  font-weight:500; font-size:max(15px, calc(var(--d) * 22)); line-height:1.136; letter-spacing:-.03em; color:rgba(0,0,0,.5);
}
.usp-flug-arrow{
  flex:none; width:max(28px, calc(var(--d) * 36)); height:max(28px, calc(var(--d) * 36)); color:var(--red);
  transition:transform .35s var(--ease), color .25s;
}
.usp-flug-arrow svg{ width:100%; height:100%; }
.usp-card--flug:hover .usp-flug-arrow{ transform:translate(3px, -3px); color:var(--red-dark); }
.usp-flug-muster{
  display:block; flex:none; margin-top:auto; margin-inline:calc(var(--d) * -50) calc(var(--d) * -46);
  height:calc(var(--d) * 105);
  background:url("assets/images/usp-muster-weiss.svg") calc(var(--d) * -161) 0 / calc(var(--d) * 1209) calc(var(--d) * 515) no-repeat;
}
.usp-card--daten{
  background:var(--red); color:#fff;
  display:flex; flex-direction:column;
  padding:calc(var(--d) * 67) calc(var(--d) * 36) calc(var(--d) * 38) calc(var(--d) * 37);
}
.usp-card--daten::before{
  content:""; position:absolute; inset:0; z-index:-1;
  background:url("assets/images/usp-muster-rot.svg") calc(var(--d) * -928) calc(var(--d) * -199) / calc(var(--d) * 2337) calc(var(--d) * 996) no-repeat;
  transition:transform 1.1s var(--ease);
}
.usp-card--daten:hover::before{ transform:scale(1.05); }
.usp-daten-title{
  margin-left:calc(var(--d) * 16);
  font-weight:700; font-size:max(20px, calc(var(--d) * 47)); line-height:.894; letter-spacing:-.04em;
}
.usp-daten-list{
  margin-top:calc(var(--d) * 42); flex:1;
  background:#fff; border-radius:8px; padding:calc(var(--d) * 33) calc(var(--d) * 29) calc(var(--d) * 32) calc(var(--d) * 28);
  display:flex; flex-direction:column; gap:calc(var(--d) * 10);
}
.usp-daten-list li{
  flex:1; min-height:max(40px, calc(var(--d) * 68));
  display:flex; align-items:center; gap:max(10px, calc(var(--d) * 16));
  padding-inline:max(12px, calc(var(--d) * 28)); background:#f9f9f9; border-radius:8px;
  font-size:max(13px, calc(var(--d) * 20)); line-height:1.25; letter-spacing:-.03em; color:rgba(0,0,0,.5);
}
.usp-daten-list img{ flex:none; width:max(16px, calc(var(--d) * 24)); height:max(16px, calc(var(--d) * 24)); object-fit:contain; }
.usp-daten-list b{ font-weight:500; color:#000; }
.usp-daten-list i{ font-weight:500; font-style:italic; }
.usp-card--team{
  display:flex; flex-direction:column; justify-content:space-between; color:#fff;
  padding:calc(var(--d) * 106) calc(var(--d) * 99) calc(var(--d) * 89);
}
.usp-card--team .usp-card-img{ object-position:50% 29%; }
.usp-card--team::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    linear-gradient(to bottom, rgba(0,0,0,.9) 0%, rgba(0,0,0,0) 60%),
    linear-gradient(to top, rgba(0,0,0,.9) 0%, rgba(0,0,0,0) 48%),
    rgba(0,0,0,.3);
}
.usp-team-title{
  max-width:calc(var(--d) * 727);
  font-weight:700; font-size:max(28px, calc(var(--d) * 85)); line-height:.79; letter-spacing:-.04em;
}
.usp-team-text{
  max-width:calc(var(--d) * 722);
  font-weight:500; font-size:max(16px, calc(var(--d) * 35)); line-height:1.057; letter-spacing:-.04em;
}
@media (hover:hover){
  .usp-team-text{ opacity:0; transform:translateY(14px); transition:opacity .35s var(--ease), transform .45s var(--ease); }
  .usp-card--team:hover .usp-team-text{ opacity:1; transform:none; }
  .usp-card--team:hover .usp-card-img{ transform:scale(1.03); }
}
.usp-stats{
  margin:calc(var(--d) * 155) 0 0; padding-left:calc(var(--d) * 8);
  display:grid; grid-template-columns:repeat(3, calc(var(--d) * 613)); column-gap:calc(var(--d) * 206);
}
.usp-stat dt{
  display:flex; align-items:center; gap:max(8px, calc(var(--d) * 13));
  padding-bottom:calc(var(--d) * 13); border-bottom:1px solid rgba(0,0,0,.1);
  font-weight:700; font-size:max(15px, calc(var(--d) * 25)); line-height:1.6; letter-spacing:-.04em; color:var(--ink);
}
.usp-stat dt::before{
  content:""; flex:none; width:max(11px, calc(var(--d) * 16)); height:max(15px, calc(var(--d) * 22));
  background:url("assets/icons/usp-bogen.svg") center / contain no-repeat;
}
.usp-stat dd{
  margin:calc(var(--d) * 31) 0 0;
  font-weight:700; font-size:max(44px, calc(var(--d) * 127)); line-height:1; letter-spacing:-.04em; color:var(--red);
  font-variant-numeric:tabular-nums; white-space:nowrap;
}
@media (max-width:1024px){
  .usp{ padding-block:80px; }
  .usp-inner{ padding-inline:var(--gutter); }
  .usp-head{ flex-wrap:wrap; align-items:flex-end; }
  .usp-title{ font-size:44px; line-height:1.05; }
  .usp-more{ min-width:0; }
  .usp-cards{ margin-top:36px; grid-template-columns:1.25fr 1fr; gap:20px; }
  .usp-card{ height:auto; min-height:420px; }
  .usp-card--team{ grid-column:1 / -1; min-height:420px; padding:48px 40px 40px; }
  .usp-card--flug{ padding:36px 28px; }
  .usp-flug-box{ padding:36px 28px 0 32px; }
  .usp-flug-title{ font-size:32px; line-height:1; max-width:360px; }
  .usp-card--team::before{ background:linear-gradient(to bottom, rgba(0,0,0,.85) 0%, rgba(0,0,0,0) 55%), linear-gradient(to top, rgba(0,0,0,.9) 0%, rgba(0,0,0,0) 50%), rgba(0,0,0,.4); }
  .usp-flug-row{ margin-top:22px; }
  .usp-flug-text{ font-size:16px; }
  .usp-flug-muster{ height:80px; margin-top:28px; margin-inline:-32px -28px; background-position:-90px 0; background-size:640px 273px; }
  .usp-card--daten{ padding:36px 24px 24px; }
  .usp-card--daten::before{ background-position:-480px -100px; background-size:1230px 524px; }
  .usp-daten-title{ margin-left:10px; font-size:30px; line-height:.95; }
  .usp-daten-list{ margin-top:24px; padding:16px; gap:8px; flex:none; }
  .usp-daten-list li{ min-height:52px; font-size:15px; padding-inline:16px; }
  .usp-team-title{ font-size:48px; line-height:.9; max-width:480px; }
  .usp-team-text{ margin-top:48px; font-size:20px; max-width:520px; }
  .usp-stats{ margin-top:64px; padding-left:0; grid-template-columns:repeat(3, 1fr); column-gap:24px; }
  .usp-stat dt{ font-size:16px; line-height:1.3; padding-bottom:12px; min-height:3.2em; align-items:flex-end; }
  .usp-stat dt::before{ margin-bottom:2px; }
  .usp-stat dd{ margin-top:18px; font-size:56px; }
}
@media (max-width:640px){
  .usp{ padding-block:64px; }
  .usp-title{ font-size:34px; }
  .usp-cards{ grid-template-columns:1fr; gap:14px; margin-top:28px; }
  .usp-card{ min-height:0; }
  .usp-card--flug{ padding:28px 18px; }
  .usp-flug-box{ padding:28px 20px 0 22px; }
  .usp-flug-title{ font-size:28px; }
  .usp-flug-muster{ margin-inline:-22px -20px; height:64px; }
  .usp-card--daten{ padding:30px 18px 18px; }
  .usp-daten-title{ font-size:28px; }
  .usp-card--team{ min-height:400px; padding:36px 24px 28px; }
  .usp-team-title{ font-size:36px; }
  .usp-team-text{ font-size:18px; }
  .usp-stats{ grid-template-columns:1fr; row-gap:36px; margin-top:48px; }
  .usp-stat dt{ min-height:0; }
  .usp-stat dd{ font-size:64px; margin-top:14px; }
}
@media (prefers-reduced-motion:reduce){
  .usp-card:hover .usp-card-img, .usp-card--daten:hover::before{ transform:none; }
}
.ablauf{
  --u:var(--d);                          
  padding:calc(var(--d) * 327) 0 calc(var(--d) * 234);
  overflow:hidden;
}
.ablauf-wrap{ max-width:2560px; margin:0 auto; padding-inline:calc(var(--d) * 242); }
.ablauf-head{ display:flex; justify-content:space-between; align-items:flex-start; gap:calc(var(--d) * 60); }
.ablauf-head-left{ padding-top:calc(var(--d) * 12); }
.ablauf-eyebrow{ color:rgba(33,33,33,.5); }
.ablauf-title{
  margin-top:calc(var(--d) * 26);
  font-weight:700; font-size:max(20px, calc(var(--d) * 45)); line-height:.978; letter-spacing:-.04em; color:var(--ink);
}
.ablauf-head-right{ display:flex; flex-direction:column; align-items:flex-end; text-align:right; }
.ablauf-btn{ min-width:calc(var(--d) * 334); }
.ablauf-lead{
  margin-top:calc(var(--d) * 46);
  font-size:max(15px, calc(var(--d) * 25)); line-height:1.16; letter-spacing:-.02em; color:rgba(0,0,0,.5);
}
.ablauf-line{
  margin:calc(var(--d) * 65) 0 calc(var(--d) * 59); border:0; height:2px; border-radius:2px; background:rgba(0,0,0,.2);
}
.ablauf-steps{ display:grid; grid-template-columns:repeat(4, 1fr); gap:calc(var(--d) * 38); }
.ablauf-card{
  position:relative; display:flex; flex-direction:column;
  min-height:calc(var(--d) * 540);
  padding:calc(var(--d) * 50) calc(var(--d) * 40) calc(var(--d) * 38) calc(var(--d) * 50);
  border-radius:8px; background:rgba(0,0,0,.02); color:var(--ink);
  outline-offset:4px; cursor:default;
  transition:background-color .35s var(--ease), color .35s var(--ease);
}
.ablauf-card--corner::after{            
  content:""; position:absolute; top:0; right:0;
  width:max(12px, calc(var(--d) * 27)); height:max(12px, calc(var(--d) * 27));
  border-radius:4px; background:var(--red); transition:opacity .35s var(--ease);
}
.ablauf-card-title{
  font-weight:700; font-size:max(22px, calc(var(--d) * 48)); line-height:.958; letter-spacing:-.04em;
}
.ablauf-card-text{
  margin-top:calc(var(--d) * 41); max-width:max(calc(var(--d) * 328), 14em);
  font-weight:500; font-size:max(15px, calc(var(--d) * 22)); line-height:1.14; letter-spacing:-.02em;
  color:rgba(0,0,0,.3); transition:color .35s var(--ease);
}
.ablauf-card-foot{
  margin-top:auto; padding-top:calc(var(--d) * 30);
  display:flex; align-items:flex-end; justify-content:space-between; gap:12px;
}
.ablauf-num{
  margin-left:calc(var(--d) * -17); margin-bottom:calc(var(--d) * -2);
  font-weight:700; font-size:max(40px, calc(var(--d) * 90)); line-height:.733; letter-spacing:-.04em;
}
.ablauf-pill{
  display:inline-flex; align-items:center; gap:max(5px, calc(var(--d) * 8));
  height:max(30px, calc(var(--d) * 46)); padding-inline:max(12px, calc(var(--d) * 26));
  border-radius:999px; background:var(--red); color:#fff; white-space:nowrap;
  font-size:max(13px, calc(var(--d) * 16)); letter-spacing:-.03em;
  transition:background-color .35s var(--ease), color .35s var(--ease);
}
.ablauf-pill svg{ width:max(12px, calc(var(--d) * 15)); height:auto; flex:none; }
.ablauf-card.is-active{ background:var(--red); color:#fff; }
.ablauf-card.is-active::after{ opacity:0; }
.ablauf-card.is-active .ablauf-card-text{ color:rgba(255,255,255,.5); }
.ablauf-card.is-active .ablauf-pill{ background:#fff; color:#000; }
.ablauf-card:focus-visible{ outline:2px solid var(--red); }
.ablauf-marquee{
  width:calc(var(--d) * 1204); margin:calc(var(--d) * 251) auto 0; overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 19.7%, #000 80.3%, transparent);
          mask-image:linear-gradient(90deg, transparent, #000 19.7%, #000 80.3%, transparent);
}
.ablauf-marquee-track{ display:flex; width:max-content; animation:ablauf-marquee 28s linear infinite; }
.ablauf-marquee:hover .ablauf-marquee-track{ animation-play-state:paused; }
.ablauf-marquee-group{
  display:flex; align-items:center; flex:none;
  gap:calc(var(--u) * 80); padding-right:calc(var(--u) * 80);
  height:calc(var(--u) * 140);
}
.ablauf-logo{ width:auto; opacity:.5; }
.ablauf-logo--falco{ height:calc(var(--u) * 99); }
.ablauf-logo--kraken{ height:calc(var(--u) * 57.3); }
.ablauf-logo--kafka{ height:calc(var(--u) * 73.8); }
.ablauf-logo--kubernetes{ height:calc(var(--u) * 62.5); }
.ablauf-logo--helm{ height:calc(var(--u) * 98.6); }
@keyframes ablauf-marquee{ to{ transform:translateX(-50%); } }
@media (prefers-reduced-motion:reduce){
  .ablauf-marquee-track{ animation:none; }
}
@media (max-width:1024px){
  .ablauf{ --u:.55px; padding:96px 0 80px; }
  .ablauf-wrap{ padding-inline:var(--gutter); }
  .ablauf-head{ flex-direction:column; gap:28px; }
  .ablauf-head-left{ padding-top:0; }
  .ablauf-title{ margin-top:16px; font-size:38px; line-height:1.02; }
  .ablauf-head-right{ align-items:flex-start; text-align:left; flex-direction:column-reverse; gap:24px; }
  .ablauf-lead{ margin-top:0; font-size:17px; line-height:1.35; }
  .ablauf-br{ display:none; }
  .ablauf-line{ margin:36px 0; }
  .ablauf-steps{ grid-template-columns:repeat(2, 1fr); gap:16px; }
  .ablauf-card{ min-height:320px; padding:32px 26px 26px 30px; }
  .ablauf-card-title{ font-size:28px; }
  .ablauf-card-text{ margin-top:20px; font-size:16px; line-height:1.3; max-width:none; }
  .ablauf-num{ margin-left:-4px; font-size:56px; }
  .ablauf-pill{ height:34px; padding-inline:14px; font-size:14px; }
  .ablauf-marquee{ width:100%; margin-top:72px; }
}
@media (max-width:640px){
  .ablauf{ --u:.42px; padding:72px 0 64px; }
  .ablauf-title{ font-size:34px; }
  .ablauf-btn{ min-width:0; }
  .ablauf-steps{
    display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory;
    margin-inline:calc(var(--gutter) * -1); padding:6px var(--gutter) 10px; scroll-padding-inline:var(--gutter);
    scrollbar-width:none;
  }
  .ablauf-steps::-webkit-scrollbar{ display:none; }
  .ablauf-card{ flex:0 0 82%; min-height:300px; scroll-snap-align:start; }
  .ablauf-card-title{ font-size:26px; }
  .ablauf-marquee{ margin-top:56px; }
}
.ablauf-tl{
  margin-top:calc(var(--d) * 70); padding:calc(var(--d) * 56) calc(var(--d) * 50) calc(var(--d) * 50);
  border-radius:8px; background:rgba(0,0,0,.02);
  display:grid; grid-template-columns:calc(var(--d) * 520) minmax(0, 1fr); column-gap:calc(var(--d) * 80); align-items:center;
}
.ablauf-tl-k{ font-weight:500; font-size:max(13px, calc(var(--d) * 21)); letter-spacing:-.01em; color:rgba(0,0,0,.5); }
.ablauf-tl-total{ margin-top:calc(var(--d) * 14); font-weight:700; font-size:max(28px, calc(var(--d) * 64)); line-height:1; letter-spacing:-.045em; color:var(--ink); }
.ablauf-tl-total b{ color:var(--red); font-weight:700; font-size:1.5em; }
.ablauf-tl-sub{ margin-top:calc(var(--d) * 18); max-width:26ch; font-size:max(14px, calc(var(--d) * 21)); line-height:1.35; color:rgba(0,0,0,.45); }
.ablauf-tl-bar{ position:relative; padding-bottom:calc(var(--d) * 64); }
.ablauf-tl-track{ display:flex; gap:max(4px, calc(var(--d) * 8)); list-style:none; margin:0; padding:0; }
.ablauf-tl-seg{ position:relative; flex:var(--w) 1 0; min-width:0; display:flex; flex-direction:column; gap:6px; padding-top:calc(var(--d) * 92); cursor:default; }
.ablauf-tl-fill{
  position:absolute; left:0; right:0; top:0; height:calc(var(--d) * 70); min-height:30px; border-radius:6px;
  background:rgba(0,0,0,.08); overflow:hidden;
}
.ablauf-tl-fill::after{                       
  content:""; position:absolute; inset:0; border-radius:inherit; background:var(--ink);
  transform:scaleX(0); transform-origin:left; transition:transform .9s cubic-bezier(.16, 1, .3, 1), background-color .35s var(--ease);
}
.ablauf-tl-seg--open .ablauf-tl-fill::after{   
  background:linear-gradient(90deg, var(--ink) 0 55%, rgba(33,33,33,0));
}
.ablauf-tl-seg.is-active .ablauf-tl-fill::after{ background:var(--red); }
.ablauf-tl-seg--open.is-active .ablauf-tl-fill::after{ background:linear-gradient(90deg, var(--red) 0 55%, rgba(177,32,37,0)); }
.ablauf-tl.is-in .ablauf-tl-fill::after{ transform:none; }
.ablauf-tl.is-in .ablauf-tl-seg:nth-child(2) .ablauf-tl-fill::after{ transition-delay:.25s, 0s; }
.ablauf-tl.is-in .ablauf-tl-seg:nth-child(3) .ablauf-tl-fill::after{ transition-delay:.5s, 0s; }
.ablauf-tl.is-in .ablauf-tl-seg:nth-child(4) .ablauf-tl-fill::after{ transition-delay:1.1s, 0s; }
.ablauf-tl-name{ font-weight:700; font-size:max(14px, calc(var(--d) * 23)); letter-spacing:-.03em; color:var(--ink); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ablauf-tl-name b{ color:var(--red); margin-right:4px; font-variant-numeric:tabular-nums; }
.ablauf-tl-dur{ font-size:max(12px, calc(var(--d) * 19)); color:rgba(0,0,0,.45); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ablauf-tl-seg.is-active .ablauf-tl-dur{ color:var(--red); }
.ablauf-tl-mark{
  position:absolute; left:0; bottom:calc(var(--d) * -64); white-space:nowrap;
  font-size:max(11px, calc(var(--d) * 17)); color:rgba(0,0,0,.4); font-variant-numeric:tabular-nums;
}
.ablauf-tl-mark::before{
  content:""; position:absolute; left:calc(max(4px, var(--d) * 8) / -2 - 1px); bottom:0; width:1px;
  height:calc(var(--d) * 260); background:rgba(0,0,0,.12);
}
.ablauf-tl-seg:first-child .ablauf-tl-mark::before{ left:0; }
.ablauf-tl-mark.is-key{ color:var(--red); font-weight:700; }
.ablauf-tl-mark.is-key::before{ width:2px; background:var(--red); }
.ablauf-tl-seg .ablauf-tl-mark{ padding-left:8px; }
@media (max-width:1024px){
  .ablauf-tl{ grid-template-columns:1fr; row-gap:28px; padding:28px 22px 24px; margin-top:28px; }
  .ablauf-tl-seg{ padding-top:44px; }
  .ablauf-tl-fill{ height:30px; }
  .ablauf-tl-bar{ padding-bottom:30px; }
  .ablauf-tl-mark{ bottom:-30px; }
  .ablauf-tl-mark::before{ height:110px; }
}
@media (max-width:640px){
  .ablauf-tl-track{ flex-direction:column; gap:14px; }
  .ablauf-tl-seg{ flex:none; padding:0 0 0 0; display:grid; grid-template-columns:1fr auto; gap:4px 12px; }
  .ablauf-tl-fill{ position:relative; grid-column:1 / -1; width:calc(var(--w) * 1% + 18%); height:14px; min-height:0; }
  .ablauf-tl-name, .ablauf-tl-dur{ white-space:normal; }
  .ablauf-tl-mark{ display:none; }
  .ablauf-tl-bar{ padding-bottom:0; }
}
@media (prefers-reduced-motion:reduce){ .ablauf-tl-fill::after{ transition:none; transform:none; } }
.toolstack{ padding:calc(var(--d) * 15) 0 calc(var(--d) * 96); }
.toolstack-wrap{
  max-width:2560px; margin:0 auto; padding:0 calc(var(--d) * 319) 0 calc(var(--d) * 409);
  display:grid; grid-template-columns:calc(var(--d) * 846) minmax(0, 1fr) calc(var(--d) * 666);
  grid-template-areas:"head head head" "grid . quote";
}
.toolstack-head{ grid-area:head; }
.toolstack-title{
  margin-top:calc(var(--d) * 41); width:calc(var(--d) * 1033); max-width:100%;
  font-weight:700; font-size:max(30px, calc(var(--d) * 75)); line-height:.96; letter-spacing:-.04em;
  background:linear-gradient(90deg, #202020 39.4%, #6a6a6a); -webkit-background-clip:text; background-clip:text;
  color:transparent; -webkit-text-fill-color:transparent;
}
.toolstack-title-red{ color:var(--red); -webkit-text-fill-color:var(--red); }
.toolstack-grid{
  grid-area:grid; align-self:start; margin-top:calc(var(--d) * 71);
  display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:calc(var(--d) * 30);
}
.toolstack-tile{
  position:relative; aspect-ratio:1; display:grid; place-items:center;
  border:2px solid rgba(33,33,33,.1); border-radius:8px; background:#fff;
  transition:border-color .3s var(--ease);
}
.toolstack-logo{
  height:auto; opacity:.38; mix-blend-mode:multiply;
  transition:opacity .3s var(--ease), transform .3s var(--ease);
}
.toolstack-tile{ transition:border-color .3s var(--ease), transform .3s var(--ease), box-shadow .3s var(--ease); }
@media (hover:hover){
  .toolstack-tile:hover{ transform:translateY(-3px); box-shadow:0 14px 22px -16px rgba(0,0,0,.5); }
  .toolstack-tile:hover .toolstack-logo{ opacity:1; }
}
.toolstack-logo--kubernetes{ width:76%; }
.toolstack-logo--keycloak{ width:68%; }
.toolstack-logo--grafana{ width:44%; }
.toolstack-logo--istio{ width:56%; }
.toolstack-logo--flux{ width:47%; }
.toolstack-logo--kraken{ width:58%; }
.toolstack-logo--kafka{ width:47%; }
.toolstack-more{ position:absolute; inset:0; display:grid; place-items:center; border-radius:6px; }
.toolstack-plus{
  position:relative; width:30%; aspect-ratio:1; border-radius:50%;
  border:2px solid rgba(33,33,33,.3); transition:border-color .3s var(--ease), background-color .3s var(--ease);
}
.toolstack-plus::before, .toolstack-plus::after{
  content:""; position:absolute; left:50%; top:50%; width:32%; height:1.5px; background:rgba(33,33,33,.4);
  transform:translate(-50%,-50%); transition:background-color .3s var(--ease);
}
.toolstack-plus::after{ transform:translate(-50%,-50%) rotate(90deg); }
.toolstack-more:hover .toolstack-plus, .toolstack-more:focus-visible .toolstack-plus{ border-color:var(--red); background:var(--red); }
.toolstack-more:hover .toolstack-plus::before, .toolstack-more:hover .toolstack-plus::after,
.toolstack-more:focus-visible .toolstack-plus::before, .toolstack-more:focus-visible .toolstack-plus::after{ background:#fff; }
.toolstack-quote{
  grid-area:quote; margin:calc(var(--d) * 322) 0 0;
  font-weight:500; font-size:max(20px, calc(var(--d) * 55)); line-height:1.2; letter-spacing:-.04em; color:var(--ink);
}
.toolstack-quote span{ color:rgba(33,33,33,.5); }
@media (max-width:1024px){
  .toolstack{ padding:80px 0; }
  .toolstack-wrap{
    padding-inline:var(--gutter);
    grid-template-columns:minmax(0, 1fr); grid-template-areas:"head" "grid" "quote";
  }
  .toolstack-title{ margin-top:16px; width:auto; font-size:44px; }
  .toolstack-grid{ margin-top:40px; gap:14px; max-width:640px; }
  .toolstack-quote{ margin-top:48px; font-size:32px; max-width:640px; }
}
@media (max-width:640px){
  .toolstack{ padding:64px 0; }
  .toolstack-title{ font-size:36px; }
  .toolstack-title br{ display:none; }
  .toolstack-grid{ margin-top:32px; gap:8px; }
  .toolstack-tile{ border-width:1.5px; }
  .toolstack-quote{ margin-top:40px; font-size:26px; }
}
.bereit{ padding:calc(var(--d) * 144) 0 calc(var(--d) * 51); }
.bereit-band{
  --fc:rgba(33,33,33,0);
  position:relative; overflow:hidden; background:var(--red) linear-gradient(var(--fc), var(--fc)) 0 0 / 0% 100% no-repeat; color:#fff; cursor:pointer;
  transition:background-size .55s var(--ease), --fc .22s linear;
}
.bereit-band::before{
  content:""; position:absolute; inset:0 auto 0 0; width:100%;
  background:url("assets/images/pattern-arcs-red.svg") left top / auto 100% no-repeat;
  pointer-events:none; transform-origin:0 100%; transition:transform 1.2s var(--ease), opacity .45s var(--ease);
}
.bereit-band::after{
  content:""; position:absolute; inset:0 auto 0 0; width:100%; opacity:0;
  background:url("assets/images/pattern-arcs-white.svg") left top / auto 100% no-repeat;
  pointer-events:none; transform-origin:0 100%; transition:transform 1.2s var(--ease), opacity .45s var(--ease);
}
.bereit-pre{ transition:color .35s var(--ease); }
.bereit-inner{
  position:relative; z-index:1; max-width:2560px; margin:0 auto;
  padding:calc(var(--d) * 143) calc(var(--d) * 196) calc(var(--d) * 175) calc(var(--d) * 197);
  display:grid; grid-template-columns:calc(var(--d) * 1038) 1fr; align-items:start;
}
.bereit-title{ font-weight:700; letter-spacing:-.04em; }
.bereit-pre{
  display:block; font-weight:500; font-size:max(22px, calc(var(--d) * 70)); line-height:1.63; color:#d88f92;
}
.bereit-main{
  display:block; max-width:calc(var(--d) * 921);
  font-size:max(34px, calc(var(--d) * 113)); line-height:.92; color:#fff;   
}
.bereit-nowrap{ white-space:nowrap; }
.bereit-side{ display:flex; flex-direction:column; padding-top:calc(var(--d) * 3); }
.bereit-brand{
  align-self:flex-end; margin-right:calc(var(--d) * 29);
  font-weight:500; font-size:max(14px, calc(var(--d) * 30)); line-height:1.43; letter-spacing:-.04em; color:rgba(255,255,255,.5);
}
.bereit-arc{ width:calc(var(--d) * 124); height:auto; margin-top:calc(var(--d) * 27); }
.bereit-cta{
  display:flex; align-items:center; justify-content:space-between; gap:calc(var(--d) * 40);
  margin-top:calc(var(--d) * 63);
}
.bereit-text{
  max-width:calc(var(--d) * 743);
  font-weight:500; font-size:max(16px, calc(var(--d) * 40)); line-height:1.075; letter-spacing:-.04em;
}
.bereit-go{
  flex:none; display:grid; place-items:center;
  width:max(56px, calc(var(--d) * 96)); height:max(56px, calc(var(--d) * 96)); border-radius:50%;
  background:#fff; color:var(--red); border:1px solid var(--red);
  box-shadow:inset 0 4px 11.6px rgba(0,0,0,.25);
  transition:transform .35s var(--ease), border-color .15s linear;
}
.bereit-go::after{ content:""; position:absolute; inset:0; }   
.bereit-go svg{ width:max(20px, calc(var(--d) * 34)); height:auto; transition:transform .35s var(--ease); }
@media (hover:hover){
  .bereit-band:hover{ background-size:100% 100%; --fc:var(--ink); }
  .bereit-band:hover::before{ transform:scale(1.25); opacity:0; }
  .bereit-band:hover::after{ transform:scale(1.25); opacity:.12; }
  .bereit-band:hover .bereit-pre{ color:var(--red); }
  .bereit-band:hover .bereit-go{ transform:scale(1.08); border-color:#fff; }
}
.bereit-go:focus-visible{ outline:3px solid #fff; outline-offset:4px; }
@media (max-width:1024px){
  .bereit{ padding:64px 0 32px; }
  .bereit-inner{ grid-template-columns:1fr; padding:64px var(--gutter) 64px; gap:40px; }
  .bereit-pre{ font-size:30px; line-height:1.3; }
  .bereit-main{ max-width:none; font-size:56px; line-height:.95; }
  .bereit-side{ padding-top:0; }
  .bereit-brand{ position:absolute; top:24px; right:var(--gutter); margin:0; font-size:14px; }
  .bereit-arc{ width:64px; margin-top:0; }
  .bereit-cta{ margin-top:28px; gap:24px; }
  .bereit-text{ max-width:560px; font-size:22px; line-height:1.25; }
  .bereit-go{ width:72px; height:72px; }
  .bereit-go svg{ width:26px; }
}
@media (max-width:640px){
  .bereit{ padding:48px 0 24px; }
  .bereit-inner{ padding:64px var(--gutter) 48px; gap:32px; }
  .bereit-pre{ font-size:24px; }
  .bereit-main{ font-size:38px; }
  .bereit-arc{ width:48px; }
  .bereit-cta{ margin-top:20px; gap:16px; align-items:flex-end; }
  .bereit-text{ font-size:18px; }
  .bereit-go{ width:56px; height:56px; }
  .bereit-go svg{ width:22px; }
}
.produkte{ padding:calc(var(--d) * 253) 0 calc(var(--d) * 322); background:var(--paper); overflow:hidden; }
.produkte-head{ max-width:2560px; margin:0 auto; padding-left:calc(var(--d) * 565); padding-right:var(--gutter); }
.produkte-title{
  margin-top:calc(var(--d) * 53); max-width:calc(var(--d) * 1055);
  font-weight:700; font-size:calc(var(--d) * 75); line-height:1; letter-spacing:-.04em; color:var(--ink);
}
.produkte-grid{
  max-width:2560px; margin:calc(var(--d) * 139) auto 0; padding-left:calc(var(--d) * 392);
  display:grid; grid-template-columns:calc(var(--d) * 696) calc(var(--d) * 976); column-gap:calc(var(--d) * 69);
  grid-template-rows:calc(var(--d) * 230) calc(var(--d) * 457) calc(var(--d) * 36) calc(var(--d) * 26)
                     calc(var(--d) * 51) calc(var(--d) * 540) calc(var(--d) * 176);
}
.produkte-intro{
  grid-column:2; grid-row:1; align-self:start;
  margin:calc(var(--d) * 18) 0 0 calc(var(--d) * 127); max-width:calc(var(--d) * 652);
  font-size:max(15px, calc(var(--d) * 25)); line-height:1.12; letter-spacing:-.03em; color:rgba(0,0,0,.5);
}
.produkte-card--ravis{ grid-column:1; grid-row:1 / 4; }
.produkte-card--protectron{ grid-column:2; grid-row:2 / 5; }
.produkte-card--datrex{ grid-column:1; grid-row:5 / 8; width:calc(var(--d) * 573); justify-self:end; }
.produkte-card--parteiportal{ grid-column:2; grid-row:6 / 7; width:calc(var(--d) * 791); justify-self:start; }
.produkte-card{
  --top-a:0; --top-end:0%; --bot-start:46%; --bot-a:.58; --name:115; --name-gap:74; --pad-b:66;
  position:relative; overflow:hidden; isolation:isolate; border-radius:max(6px, calc(var(--d) * 8));
  background:#f3f3f3; color:#fff; display:flex;
}
.produkte-card--ravis{ --top-a:.45; --top-end:34%; --bot-start:46%; --bot-a:.58; --name:95; --name-gap:52; --pad-b:89; }
.produkte-card--protectron{ --bot-start:64%; --bot-a:.27; --name-gap:74; --pad-b:63; }
.produkte-card--datrex{ --bot-start:41%; --bot-a:.68; --name-gap:42; --pad-b:92; }
.produkte-card--parteiportal{ --top-a:.45; --top-end:44%; --bot-start:58%; --bot-a:.35; --name-gap:70; --pad-b:67; }
.produkte-card__img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:-2;
  transition:transform 1s var(--ease);
}
.produkte-card::before{
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:
    linear-gradient(to bottom, rgba(0,0,0,var(--top-a)) 0%, rgba(0,0,0,0) var(--top-end)),
    linear-gradient(to bottom, rgba(0,0,0,0) var(--bot-start), rgba(0,0,0,var(--bot-a)) 100%);
}
.produkte-card__body{
  flex:1; display:flex; flex-direction:column; align-items:flex-start;
  padding:calc(var(--d) * 66) calc(var(--d) * 48) calc(var(--d) * var(--pad-b)) calc(var(--d) * 63);
}
.produkte-card__name{
  margin-top:calc(var(--d) * var(--name-gap));
  font-weight:700; font-size:calc(var(--d) * var(--name)); line-height:1; letter-spacing:-.04em; white-space:nowrap;
}
.produkte-card__text{
  margin-top:calc(var(--d) * 65); max-width:calc(var(--d) * 534);
  font-weight:500; font-size:max(15px, calc(var(--d) * 35)); line-height:1.06; letter-spacing:-.04em;
}
@property --bot-a{ syntax:"<number>"; inherits:true; initial-value:0; }
.produkte-card{ transition:--bot-a .45s var(--ease); }
.produkte-card.is-active{ --bot-a:.68; }
@media (hover:hover){
  .produkte-card .produkte-card__text{
    display:grid; grid-template-rows:0fr; margin-top:0; opacity:0; transform:translateY(14px);
    transition:grid-template-rows .45s var(--ease), margin-top .45s var(--ease), opacity .3s var(--ease), transform .45s var(--ease);
  }
  .produkte-card__text > span{ overflow:hidden; min-height:0; }
  .produkte-card.is-active .produkte-card__text{ grid-template-rows:1fr; margin-top:calc(var(--d) * 65); opacity:1; transform:none; transition-delay:0s, 0s, .08s, 0s; }
}
.produkte-card__link{
  margin-top:auto; padding-top:calc(var(--d) * 24);
  display:inline-flex; align-items:center; gap:calc(var(--d) * 20);
  font-weight:500; font-size:max(15px, calc(var(--d) * 35)); line-height:1.06; letter-spacing:-.04em;
}
.produkte-card__link::after{ content:""; position:absolute; inset:0; z-index:1; }   
.produkte-card__link:focus-visible{ outline:none; }
.produkte-card__link:focus-visible::after{ outline:2px solid #fff; outline-offset:-6px; border-radius:inherit; }
.produkte-card__arrow{
  flex:none; display:grid; place-items:center;
  width:max(36px, calc(var(--d) * 53)); height:max(36px, calc(var(--d) * 53));
  border:2px solid #fff; border-radius:3px; background:#fff; color:#c11d22;
  transition:transform .35s var(--ease), background-color .25s, color .25s;
}
.produkte-card__arrow svg{ width:100%; height:100%; }
.produkte-card__arrow--outline{ background:transparent; color:#fff; }
.produkte-card__body{ transition:transform .45s var(--ease); }
.produkte-card__name{ transform-origin:0 100%; transition:transform .45s var(--ease); }
@media (hover:hover){
  .produkte-card:hover .produkte-card__img{ transform:scale(1.02); }
  .produkte-card:hover .produkte-card__body{ transform:translateY(-12px); }
  .produkte-card:hover .produkte-card__name{ transform:scale(1.06); }
  .produkte-card:hover .produkte-card__arrow{ background:#fff; color:#c11d22; transform:translateX(6px) scale(1.18); }
}
@media (max-width:1024px){
  .produkte{ padding:96px 0 120px; }
  .produkte-head{ padding-inline:var(--gutter); }
  .produkte-title{ margin-top:20px; max-width:none; font-size:44px; }
  .produkte-grid{
    margin-top:28px; padding-inline:var(--gutter);
    grid-template-columns:1fr 1fr; grid-template-rows:none; gap:20px; padding-bottom:56px;
  }
  .produkte-intro{ grid-column:1 / -1; grid-row:auto; margin:0 0 20px; max-width:560px; font-size:17px; line-height:1.4; }
  .produkte-card--ravis, .produkte-card--protectron, .produkte-card--datrex, .produkte-card--parteiportal{
    grid-column:auto; grid-row:auto; width:auto; justify-self:stretch; min-height:380px;
  }
  .produkte-card--protectron, .produkte-card--parteiportal{ translate:0 56px; }
  .produkte-card__body{ padding:28px 28px 30px; }
  .produkte-card__name{ margin-top:34px; font-size:52px; white-space:normal; overflow-wrap:anywhere; }
  .produkte-card__text{ margin-top:20px; max-width:none; font-size:17px; line-height:1.3; letter-spacing:-.02em; }
  .produkte-card__link{ font-size:18px; gap:14px; padding-top:24px; letter-spacing:-.02em; }
  .produkte-card__arrow{ width:44px; height:44px; }
}
@media (max-width:640px){
  .produkte{ padding:72px 0 80px; }
  .produkte-title{ font-size:36px; }
  .produkte-grid{ grid-template-columns:1fr; gap:16px; padding-bottom:0; }
  .produkte-intro{ margin-bottom:12px; font-size:16px; }
  .produkte-card--ravis, .produkte-card--protectron, .produkte-card--datrex, .produkte-card--parteiportal{ min-height:300px; }
  .produkte-card--protectron, .produkte-card--parteiportal{ translate:none; }
  .produkte-card__body{ padding:24px 22px 26px; }
  .produkte-card__name{ margin-top:26px; font-size:44px; }
}
@media (prefers-reduced-motion:reduce){
  .produkte-card:hover .produkte-card__img{ transform:none; }
}
@media (hover:hover) and (min-width:1025px){
  .produkte-card__name{ transition:transform .45s var(--ease), margin-top .45s var(--ease); }
  .produkte-card--protectron.is-active, .produkte-card--parteiportal.is-active{ --name-gap:22; }
  .produkte-card--protectron.is-active .produkte-card__text,
  .produkte-card--parteiportal.is-active .produkte-card__text{ margin-top:calc(var(--d) * 28); }
}
@media (min-width:1025px){
  .produkte-card--protectron .produkte-card__text{ max-width:calc(var(--d) * 780); }
  .produkte-card--parteiportal .produkte-card__text{ max-width:calc(var(--d) * 660); }
}
.ref{ position:relative; overflow:hidden; background:var(--paper); }
.ref-muster{   
  position:absolute; left:calc(var(--d) * 1552); top:calc(var(--d) * -85);
  width:calc(var(--d) * 2963); height:calc(var(--d) * 1402); max-width:none;
  transform:rotate(180deg); pointer-events:none; user-select:none;
}
.ref-inner{
  position:relative; max-width:2560px; margin:0 auto;
  padding:calc(var(--d) * 200) calc(var(--d) * 295) calc(var(--d) * 167) calc(var(--d) * 264);
  display:grid; grid-template-columns:calc(var(--d) * 557) 1fr; column-gap:calc(var(--d) * 291);
  grid-template-rows:auto auto 1fr;
  grid-template-areas:"head quote" "btns quote" "dots quote";
}
.ref-head{ grid-area:head; }
.ref-title{ font-weight:500; font-size:calc(var(--d) * 80); line-height:.96; letter-spacing:-.04em; color:var(--red); }
.ref-text{
  margin-top:calc(var(--d) * 55);
  font-weight:500; font-size:max(15px, calc(var(--d) * 25)); line-height:1.52; letter-spacing:-.03em;
}
.ref-text p + p{ margin-top:calc(var(--d) * 38); }
.ref-text p:last-child{ margin-top:calc(var(--d) * 28); line-height:1.28; }
.ref-text__dark{ color:#000; }
.ref-text__mute{ color:rgba(0,0,0,.5); }
.ref-btns{ grid-area:btns; margin-top:calc(var(--d) * 124); display:flex; flex-direction:column; align-items:flex-start; gap:calc(var(--d) * 33); }
.ref-btn .ref-plus{ stroke:#fff; transition:stroke .25s; }
.ref-btn:hover .ref-plus{ stroke:var(--red); }
.ref-quote{
  grid-area:quote; margin-top:calc(var(--d) * 150);
  display:grid; grid-template-columns:calc(var(--d) * 94) 1fr; grid-template-rows:1fr auto; column-gap:calc(var(--d) * 48);
}
.ref-mark{ grid-column:1; grid-row:1; width:calc(var(--d) * 94); height:auto; color:var(--red); }
.ref-slides{ grid-column:2; grid-row:1 / 3; display:grid; touch-action:pan-y; }
.ref-slide{
  grid-area:1 / 1; display:flex; flex-direction:column;
  opacity:0; visibility:hidden; transition:opacity .6s var(--ease), visibility 0s linear .6s;
}
.ref-slide.is-active{ opacity:1; visibility:visible; transition:opacity .6s var(--ease), visibility 0s; }
.ref-slide__text{ margin:0; padding-top:calc(var(--d) * 16); }
.ref-slide__text p{
  font-weight:700; font-size:calc(var(--d) * 61); line-height:1.164; letter-spacing:-.04em; color:var(--ink);
  text-align:justify; hyphens:manual;
}
.ref-slide__who{
  margin-top:auto; padding-top:calc(var(--d) * 236); max-width:calc(100% - var(--d) * 180);
  display:flex; flex-direction:column; margin-left:calc(var(--d) * -5);
}
.ref-slide__anon{ font-size:max(15px, calc(var(--d) * 30)); line-height:1.27; letter-spacing:-.03em; color:rgba(0,0,0,.5); }
.ref-slide__role{ font-weight:500; font-size:max(15px, calc(var(--d) * 25)); line-height:1.52; letter-spacing:-.03em; color:#000; }
.ref-arrows{ grid-column:2; grid-row:2; justify-self:end; align-self:end; position:relative; display:flex; gap:calc(var(--d) * 16); margin-bottom:calc(var(--d) * 10); }
.ref-arrow{ border-width:2px; background:rgba(255,255,255,.7); }
.ref-arrow svg{ width:38%; }
.ref-dots{ grid-area:dots; align-self:end; display:flex; margin-bottom:calc(var(--d) * 10); }
.ref-dot{ width:calc(var(--d) * 26); height:max(10px, calc(var(--d) * 16)); display:grid; place-items:center start; }
.ref-dot::before{
  content:""; width:max(10px, calc(var(--d) * 16)); height:max(10px, calc(var(--d) * 16));
  background:var(--line); transition:background-color .3s, transform .3s var(--ease);
}
@media (hover:hover){ .ref-dot:hover::before{ background:var(--ink-mute); transform:scale(1.35); } }   
.ref-dot.is-active::before{ background:var(--ink); }
@media (max-width:1024px){
  .ref-muster{ left:28%; top:0; width:2100px; height:994px; }
  .ref-inner{
    padding:96px var(--gutter) 88px;
    grid-template-columns:1fr; grid-template-rows:none; row-gap:0;
    grid-template-areas:"head" "quote" "dots" "btns";
  }
  .ref-title{ font-size:44px; }
  .ref-text{ margin-top:20px; max-width:620px; font-size:17px; line-height:1.5; }
  .ref-text p + p, .ref-text p:last-child{ margin-top:14px; line-height:1.5; }
  .ref-quote{ margin-top:48px; grid-template-columns:56px 1fr; column-gap:20px; }
  .ref-mark{ width:56px; }
  .ref-slide__text{ padding-top:4px; }
  .ref-slide__text p{ font-size:30px; line-height:1.2; letter-spacing:-.03em; text-align:left; }
  .ref-slide__who{ margin-left:0; padding-top:28px; max-width:calc(100% - 110px); }
  .ref-slide__anon{ font-size:16px; }
  .ref-slide__role{ font-size:16px; line-height:1.4; }
  .ref-arrows{ gap:10px; margin-bottom:0; }
  .ref-arrow{ width:44px; height:44px; }
  .ref-dots{ margin:20px 0 0; justify-self:start; }
  .ref-dot{ width:28px; height:44px; }
  .ref-dot::before{ width:12px; height:12px; }
  .ref-btns{ margin-top:28px; flex-direction:row; flex-wrap:wrap; gap:12px; }
}
@media (max-width:640px){
  .ref-muster{ left:5%; width:2400px; height:1136px; }
  .ref-inner{ padding:72px var(--gutter) 72px; }
  .ref-title{ font-size:40px; }
  .ref-text{ font-size:16px; }
  .ref-quote{ margin-top:40px; grid-template-columns:1fr; grid-template-rows:auto 1fr auto; }
  .ref-mark{ width:44px; margin-bottom:16px; }
  .ref-slides{ grid-column:1; grid-row:2 / 4; }
  .ref-arrows{ grid-column:1; grid-row:3; }
  .ref-slide__text{ padding-top:0; }
  .ref-slide__text p{ font-size:24px; line-height:1.25; }
  .ref-slide__who{ padding-top:24px; }
  .ref-btns{ flex-direction:column; align-items:stretch; }
  .ref-btn{ width:100%; }
}
.ref-title{ font-weight:700; color:var(--ink); max-width:calc(var(--d) * 760); }
.ref-title-mute{ color:var(--red); }
.ref-text p:only-child{ margin-top:0; }
.unternehmen{ padding-top:calc(var(--d) * 253); background:var(--paper); }
.unternehmen-stage{ position:relative; overflow:hidden; isolation:isolate; background:#111; color:#fff; }
.unternehmen-photo{   
  position:absolute; left:0; top:-17.85%; width:100%; height:126.3%; max-width:none;
  object-fit:cover; object-position:50% 50%; z-index:-2; will-change:transform;
}
.unternehmen-shade{   
  position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:linear-gradient(213.88deg, rgba(0,0,0,0) 38%, rgba(0,0,0,1) 100%), rgba(0,0,0,.12);
}
.unternehmen-arc{
  position:absolute; top:calc(var(--d) * 129); right:calc(var(--d) * 240);
  width:calc(var(--d) * 127); height:auto; pointer-events:none;
}
.unternehmen-inner{
  position:relative; max-width:2560px; margin:0 auto; min-height:calc(var(--d) * 1429);
  padding:calc(var(--d) * 103) calc(var(--d) * 240) calc(var(--d) * 388 + min(70vw, 1792px) * 9 / 32) calc(var(--d) * 163);
}   
.unternehmen-label{ font-weight:500; font-size:max(15px, calc(var(--d) * 40)); line-height:2.1; letter-spacing:-.04em; }
.unternehmen-quote{
  margin-top:calc(var(--d) * 395); max-width:calc(var(--d) * 1363);
  font-weight:700; font-size:calc(var(--d) * 88); line-height:1; letter-spacing:-.04em; color:#fff;
}
.unternehmen-foot{ margin-top:calc(var(--d) * 4); display:flex; justify-content:space-between; align-items:flex-start; gap:24px; }
.unternehmen-team{
  margin-top:calc(var(--d) * 19);
  font-weight:500; font-size:max(15px, calc(var(--d) * 30)); line-height:2.8; letter-spacing:-.04em; color:rgba(255,255,255,.5);
}
.unternehmen-btn{
  --h:max(44px, calc(var(--d) * 72));
  min-width:calc(var(--d) * 439); padding-inline:max(20px, calc(var(--d) * 47));
  font-size:max(14px, calc(var(--d) * 24)); gap:max(10px, calc(var(--d) * 22));
}
.unternehmen-btn svg{ width:max(16px, calc(var(--d) * 23)); }
.unternehmen-plus{ stroke:#212121; transition:stroke .2s .05s; }
@media (hover:hover){ .unternehmen-btn:hover .unternehmen-plus{ stroke:#fff; } }   
@media (max-width:1024px){
  .unternehmen{ padding-top:64px; }
  .unternehmen-photo{ object-position:62% 50%; }
  .unternehmen-shade{ background:linear-gradient(213.88deg, rgba(0,0,0,.15) 20%, rgba(0,0,0,.9) 100%); }
  .unternehmen-arc{ top:36px; right:var(--gutter); width:56px; }
  .unternehmen-inner{ min-height:600px; padding:40px var(--gutter) calc(56px + (100vw - 2 * var(--gutter)) * 9 / 32); display:flex; flex-direction:column; }
  .unternehmen-label{ font-size:18px; line-height:1.4; }
  .unternehmen-quote{ margin-top:auto; padding-top:140px; max-width:760px; font-size:44px; line-height:1.05; }
  .unternehmen-foot{ margin-top:28px; align-items:center; flex-wrap:wrap; }
  .unternehmen-team{ margin-top:0; font-size:17px; line-height:1.4; }
  .unternehmen-btn{ min-width:0; font-size:16px; }
}
@media (max-width:640px){
  .unternehmen{ padding-top:40px; }
  .unternehmen-arc{ top:28px; width:40px; }
  .unternehmen-inner{ min-height:560px; padding:32px var(--gutter) calc(40px + (100vw - 2 * var(--gutter)) * 9 / 32); }
  .unternehmen-quote{ padding-top:110px; font-size:34px; line-height:1.08; }
  .unternehmen-foot{ flex-direction:column; align-items:flex-start; gap:18px; margin-top:18px; }
  .unternehmen-btn{ width:100%; }
}
.unternehmen-inner{ padding-bottom:calc(var(--d) * 388); }
@media (max-width:1024px){ .unternehmen-inner{ padding-bottom:56px; } }
@media (max-width:640px){ .unternehmen-inner{ padding-bottom:40px; } }
.faq{ background:#fff; color:var(--ink); }
.faq-inner{
  max-width:2560px; margin:0 auto;
  padding:calc(var(--d) * 320 + min(70vw, 1792px) * 9 / 32 + max(80px, calc(var(--d) * 140))) calc(var(--d) * 430) calc(var(--d) * 350);   
}
.faq-eyebrow{ margin-left:0; }
.faq-title{
  margin-top:calc(var(--d) * 46);
  font-weight:700; font-size:calc(var(--d) * 75); line-height:calc(73 / 75); letter-spacing:-.04em;
}
.faq-grid{
  margin-top:calc(var(--d) * 91);
  display:grid; grid-template-columns:1fr 1fr; gap:calc(var(--d) * 40);
}
.faq-item{
  --fc:rgba(177,32,37,0); --ec:rgba(33,33,33,.1);
  display:grid; grid-template-areas:"stack";
  min-height:calc(var(--d) * 233);
  border:2px solid transparent; border-radius:8px;
  background-image:linear-gradient(var(--fc), var(--fc)), linear-gradient(#fff, #fff), linear-gradient(var(--ec), var(--ec));
  background-origin:border-box, padding-box, border-box; background-clip:border-box, padding-box, border-box;
  background-repeat:no-repeat; background-position:0 100%, 0 0, 0 0; background-size:100% 0%, 100% 100%, 100% 100%;
  position:relative; overflow:hidden;
  transition:background-size .5s var(--ease), --fc .22s linear, --ec .15s linear;
}
.faq-q{ grid-area:stack; margin:0; font:inherit; display:flex; }
.faq-btn{
  flex:1; display:flex; align-items:flex-end; text-align:left;
  padding:calc(var(--d) * 60) calc(var(--d) * 180) calc(var(--d) * 58) calc(var(--d) * 61);
  position:relative; border-radius:6px;
}
.faq-btn:focus-visible{ outline-offset:-4px; outline-color:currentColor; }
.faq-q-text{
  display:block; max-width:calc(var(--d) * 520);
  font-weight:700; font-size:max(17px, calc(var(--d) * 31)); line-height:1.1; letter-spacing:-.04em;
  transition:opacity .3s var(--ease), transform .35s var(--ease);
}
.faq-btn{ transition:color .25s .08s; }
@media (hover:hover){
  .faq-item:hover{ background-size:100% 100%, 100% 100%, 100% 100%; --fc:var(--red); --ec:#fff; }
  .faq-item:hover .faq-btn{ color:#fff; }
  .faq-item:not(.is-open):hover .faq-icon{ transform:rotate(90deg); }
  .faq-item:hover .faq-q-text{ transform:translateX(6px); }
}
.faq-q-text--wide{ max-width:calc(var(--d) * 640); }
.faq-q-text--narrow{ max-width:calc(var(--d) * 450); }
.faq-icon{
  position:absolute; top:calc(var(--d) * 42); right:calc(var(--d) * 55);
  width:max(20px, calc(var(--d) * 36)); height:max(20px, calc(var(--d) * 36));
  transition:transform .35s var(--ease), color .35s var(--ease);
}
.faq-icon::before,.faq-icon::after{
  content:""; position:absolute; left:0; right:0; top:50%; height:2px; margin-top:-1px; background:currentColor;
}
.faq-icon::after{ transform:rotate(90deg); }
.faq-a{
  grid-area:stack; pointer-events:none; align-self:start;
  padding:calc(var(--d) * 51) calc(var(--d) * 180) calc(var(--d) * 50) calc(var(--d) * 61);
  color:#fff; opacity:0; visibility:hidden;
  transition:opacity .3s var(--ease), visibility 0s linear .3s;
}
.faq-a p{
  max-width:calc(var(--d) * 600);
  font-weight:500; font-size:max(15px, calc(var(--d) * 22)); line-height:1.45; letter-spacing:-.04em;
}
.faq-item.is-open{ background-size:100% 100%, 100% 100%, 100% 100%; --fc:var(--red); --ec:#fff; }
.faq-item.is-open .faq-btn{ color:#fff; }
.faq-item.is-open .faq-q-text{ opacity:0; }
.faq-item.is-open .faq-icon{ transform:rotate(45deg); }
.faq-item.is-open .faq-a{ opacity:1; visibility:visible; transition:opacity .35s var(--ease) .1s, visibility 0s; }
.faq-more{
  margin-top:calc(var(--d) * 156);
  display:flex; justify-content:space-between; align-items:flex-start; gap:40px;
}
.faq-more-title{
  max-width:calc(var(--d) * 670);
  font-weight:500; font-size:max(26px, calc(var(--d) * 55)); line-height:calc(60 / 55); letter-spacing:-.04em;
}
.faq-more-text{
  margin-top:calc(var(--d) * 10); max-width:calc(var(--d) * 720); text-align:right;
  font-size:max(15px, calc(var(--d) * 25)); line-height:calc(29 / 25); letter-spacing:-.03em; color:rgba(0,0,0,.5);
}
.faq-cta{
  margin-top:calc(var(--d) * 66);
  display:flex; align-items:center; flex-wrap:wrap; gap:max(16px, calc(var(--d) * 32));
}
.faq-experts{ display:flex; align-items:center; gap:max(12px, calc(var(--d) * 45)); }
.faq-experts-label{ font-weight:500; font-size:max(15px, calc(var(--d) * 25)); letter-spacing:-.03em; color:#000; }
.faq-avatars{ display:flex; }
.faq-avatar{
  --s:max(38px, calc(var(--d) * 50));
  width:var(--s); height:var(--s); border-radius:50%; overflow:hidden; flex:none;
  background:var(--red); border:3px solid #fff; position:relative;
}
.faq-avatar + .faq-avatar{ margin-left:calc(var(--s) * -.34); }
.faq-avatar img{ position:absolute; left:0; top:10%; width:108%; max-width:none; height:auto; }
.faq-avatar--michael img{ left:-8%; top:2%; width:114%; }
.faq-avatar--sven img{ left:-12%; top:4%; width:128%; }
.faq-avatar--more{
  display:grid; place-items:center; color:#fff; font-weight:500;
  font-size:max(13px, calc(var(--d) * 20)); letter-spacing:-.03em;
}
.faq-sep{ width:2px; height:max(34px, calc(var(--d) * 50)); background:rgba(0,0,0,.1); }
.faq-cta-btn{ padding-inline:max(22px, calc(var(--d) * 35)) max(22px, calc(var(--d) * 42)); }
.faq-cta-btn svg{ width:max(14px, calc(var(--d) * 19)); }
@media (max-width:1024px){
  .faq-inner{ padding:calc(96px + (100vw - 2 * var(--gutter)) * 9 / 32 + 70px) var(--gutter) 104px; }
  .faq-title{ margin-top:20px; font-size:40px; line-height:1.05; }
  .faq-grid{ margin-top:40px; gap:16px; }
  .faq-item{ min-height:170px; }
  .faq-btn{ padding:28px 64px 26px 26px; }
  .faq-q-text,.faq-q-text--wide,.faq-q-text--narrow{ max-width:none; font-size:19px; line-height:1.2; }
  .faq-icon{ top:24px; right:24px; width:22px; height:22px; }
  .faq-a{ padding:26px 64px 26px 26px; }
  .faq-a p{ max-width:none; font-size:15px; line-height:1.5; }
  .faq-more{ margin-top:64px; flex-direction:column; gap:14px; }
  .faq-more-title{ max-width:none; font-size:30px; }
  .faq-more-text{ margin-top:0; max-width:560px; text-align:left; font-size:16px; line-height:1.45; }
  .faq-cta{ margin-top:28px; }
}
@media (max-width:640px){
  .faq-inner{ padding:calc(56px + (100vw - 2 * var(--gutter)) * 9 / 32 + 70px) var(--gutter) 80px; }
  .faq-title{ font-size:34px; }
  .faq-br{ display:none; }
  .faq-grid{ grid-template-columns:1fr; gap:12px; margin-top:32px; }
  .faq-item{ min-height:132px; }
  .faq-btn{ padding:24px 60px 22px 22px; }
  .faq-q-text,.faq-q-text--wide,.faq-q-text--narrow{ font-size:18px; }
  .faq-icon{ top:22px; right:20px; }
  .faq-a{ padding:22px 60px 22px 22px; }
  .faq-more-title{ font-size:28px; }
  .faq-cta{ flex-direction:column; align-items:flex-start; gap:20px; }
  .faq-sep{ display:none; }
  .faq-cta-btn{ width:100%; }
}
.faq-grid{ align-items:start; }
.faq-item{ display:flex; flex-direction:column; justify-content:flex-end; }
.faq-q{ flex:none; }
.faq-a{
  display:grid; grid-template-rows:0fr; padding:0 calc(var(--d) * 180) 0 calc(var(--d) * 61);
  opacity:0; visibility:visible; pointer-events:none;
  transition:grid-template-rows .55s cubic-bezier(.22,1,.36,1), opacity .3s ease;
}
.faq-a p{ overflow:hidden; min-height:0; padding-bottom:0; transition:padding .55s cubic-bezier(.22,1,.36,1); }
.faq-btn{ transition:color .25s .08s, padding .55s cubic-bezier(.22,1,.36,1); }
.faq-item.is-open .faq-q-text{ opacity:1; }
.faq-item.is-open .faq-btn{ padding-bottom:calc(var(--d) * 22); }
.faq-item.is-open .faq-a{ grid-template-rows:1fr; opacity:1; pointer-events:auto; transition:grid-template-rows .55s cubic-bezier(.22,1,.36,1), opacity .4s ease .12s; }
.faq-item.is-open .faq-a p{ padding-bottom:calc(var(--d) * 56); }
@media (max-width:1024px){
  .faq-a{ padding:0 64px 0 26px; }
  .faq-item.is-open .faq-btn{ padding-bottom:10px; }
  .faq-item.is-open .faq-a p{ padding-bottom:26px; }
}
@media (max-width:640px){ .faq-a{ padding:0 60px 0 22px; } }
.faq-inner{ padding-top:calc(var(--d) * 320); }
@media (max-width:1024px){ .faq-inner{ padding-top:96px; } }
@media (max-width:640px){ .faq-inner{ padding-top:56px; } }
.karriere{
  position:relative; overflow:hidden; isolation:isolate;
  min-height:calc(var(--d) * 1045); background:#2a2622; color:#fff;
  display:flex; align-items:flex-start;
}
.karriere-photo{
  position:absolute; z-index:-2; left:0; top:calc(var(--d) * -143);
  width:max(100%, calc(var(--d) * 2941)); max-width:none; height:auto;
}
.karriere-shade{
  position:absolute; inset:0; z-index:-1;
  background:
    linear-gradient(96deg, rgba(0,0,0,.62) 0%, rgba(0,0,0,.42) 26%, rgba(0,0,0,.12) 50%, rgba(0,0,0,0) 62%),
    linear-gradient(0deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 35%);
}
.karriere-arc{
  position:absolute; left:calc(var(--d) * 2250); top:calc(var(--d) * 604);
  width:calc(var(--d) * 100); height:auto;
}
.karriere-inner{
  width:100%; max-width:2560px; margin:0 auto;
  padding:calc(var(--d) * 229) calc(var(--d) * 268) calc(var(--d) * 240);
}
.karriere-eyebrow{ margin-left:calc(var(--d) * 9); }
.karriere-title{
  margin-top:calc(var(--d) * 44); max-width:calc(var(--d) * 1216);
  font-weight:700; font-size:calc(var(--d) * 74); line-height:calc(84 / 74); letter-spacing:-.04em;
}
.karriere-actions{ margin-top:calc(var(--d) * 113); display:flex; flex-wrap:wrap; gap:calc(var(--d) * 34); }
.karriere-btn{
  --h:max(46px, calc(var(--d) * 72));
  font-size:max(15px, calc(var(--d) * 24)); padding-inline:max(22px, calc(var(--d) * 47));
}
.karriere-btn--apply{ color:var(--ink); min-width:calc(var(--d) * 288); }
.karriere-btn svg{ width:max(16px, calc(var(--d) * 23)); }
.karriere-btn:hover .karriere-plus{ stroke:#fff; }
@media (max-width:1024px){
  .karriere{ min-height:560px; align-items:flex-end; }
  .karriere-photo{ top:0; width:100%; height:100%; object-fit:cover; object-position:72% 30%; }
  .karriere-shade{
    background:
      linear-gradient(90deg, rgba(0,0,0,.7) 0%, rgba(0,0,0,.45) 45%, rgba(0,0,0,.05) 75%),
      linear-gradient(0deg, rgba(0,0,0,.55) 0%, rgba(0,0,0,0) 55%);
  }
  .karriere-arc{ left:auto; right:var(--gutter); top:32px; width:44px; }
  .karriere-inner{ padding:120px var(--gutter) calc(56px + min(72vw, 560px) * 9 / 32); }   
  .karriere-eyebrow{ margin-left:0; }
  .karriere-title{ margin-top:18px; max-width:600px; font-size:40px; line-height:1.12; }
  .karriere-actions{ margin-top:32px; gap:12px; }
}
@media (max-width:640px){
  .karriere{ min-height:780px; }
  .karriere-photo{ object-position:68% 0%; }
  .karriere-shade{
    background:
      linear-gradient(0deg, rgba(0,0,0,.88) 0%, rgba(0,0,0,.72) 42%, rgba(0,0,0,.15) 68%, rgba(0,0,0,0) 80%),
      linear-gradient(90deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,0) 70%);
  }
  .karriere-inner{ padding:260px var(--gutter) calc(44px + min(72vw, 560px) * 9 / 32); }
  .karriere-title{ font-size:34px; line-height:1.14; }
  .karriere-actions{ flex-direction:column; }
  .karriere-btn{ width:100%; }
}
.footer{ position:relative; overflow:hidden; isolation:isolate; background:var(--red); color:#fff; }
.footer-pattern{
  position:absolute; z-index:-1; top:0; right:0; left:auto;
  width:calc(var(--d) * 1280); height:calc(var(--d) * 1140); max-width:none; pointer-events:none;
}
.footer-inner{
  max-width:2560px; margin:0 auto;
  padding:calc(var(--d) * 168) calc(var(--d) * 212) calc(var(--d) * 117) calc(var(--d) * 224);
}
.footer-top{
  max-width:calc(var(--d) * 1646);
  display:flex; justify-content:space-between; align-items:flex-end; gap:32px;
  padding-bottom:calc(var(--d) * 70); border-bottom:1px solid #fff;
}
.footer-title{ font-weight:700; font-size:calc(var(--d) * 90); line-height:calc(86 / 90); letter-spacing:-.04em; }
.footer-sub{
  margin-top:calc(var(--d) * 69);
  font-weight:500; font-size:max(16px, calc(var(--d) * 35)); line-height:calc(43 / 35); letter-spacing:-.04em;
  color:rgba(255,255,255,.5);
}
.footer-btn{ flex:none; min-width:calc(var(--d) * 334); }
.footer-mid{
  padding:calc(var(--d) * 91) 0 calc(var(--d) * 97);
  display:grid; grid-template-columns:calc(var(--d) * 836) 1fr; align-items:start;
}
.footer-logo{ display:inline-block; width:max(150px, calc(var(--d) * 292)); }
.footer-logo img{ width:100%; height:auto; }
.footer-nav{ display:grid; grid-template-columns:calc(var(--d) * 298) calc(var(--d) * 293) auto; }
.footer-col{ display:grid; align-content:start; gap:calc(var(--d) * 21); }
.footer-link{
  position:relative; display:inline-block; width:fit-content;   
  font-size:max(15px, calc(var(--d) * 25)); line-height:calc(29 / 25); letter-spacing:-.03em; color:#fff;
  transition:opacity .25s var(--ease);
}
.footer-link::after{
  content:""; position:absolute; left:calc(100% + 5px); top:50%; width:.42em; height:.42em; margin-top:-.21em;   
  background:currentColor; opacity:0; transform:translate(-4px, 4px); transition:opacity .25s, transform .3s var(--ease);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M2 8L8 2M3.5 2H8v4.5'/%3E%3C/svg%3E") center / contain no-repeat;
          mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 10' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round'%3E%3Cpath d='M2 8L8 2M3.5 2H8v4.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
@media (hover:hover){
  .footer-link:hover::after{ opacity:1; transform:none; }
  .footer-col:has(.footer-link:hover) .footer-link:not(:hover){ opacity:.45; }
}
.footer-bottom{
  border-top:1px solid #fff; padding-top:calc(var(--d) * 53);
  display:flex; justify-content:space-between; align-items:center; gap:24px;
}
.footer-copy{
  display:flex; flex-wrap:wrap; column-gap:calc(var(--d) * 40);
  font-size:max(14px, calc(var(--d) * 25)); line-height:calc(29 / 25); letter-spacing:-.03em;
}
.footer-meta{ display:flex; align-items:center; gap:calc(var(--d) * 90); }
.footer-contact{ padding-top:calc(var(--d) * 10); }
.footer-social{ display:block; width:max(30px, calc(var(--d) * 38)); transition:opacity .2s; }
.footer-social:hover{ opacity:.8; }
.footer-social svg{ width:100%; height:auto; }
@media (max-width:1024px){
  .footer-pattern{ width:640px; height:570px; opacity:.8; }
  .footer-inner{ padding:calc(48px + min(72vw, 560px) * 9 / 32 + 70px) var(--gutter) 40px; }   
  .footer-top{ max-width:none; padding-bottom:48px; }
  .footer-title{ font-size:44px; line-height:1.02; }
  .footer-sub{ margin-top:24px; font-size:18px; line-height:1.35; }
  .footer-mid{ padding:48px 0; grid-template-columns:1fr 2fr; gap:32px; }
  .footer-nav{ grid-template-columns:repeat(3, auto); justify-content:space-between; gap:24px; }
  .footer-col{ gap:12px; }
  .footer-link{ font-size:16px; }
  .footer-bottom{ padding-top:28px; }
  .footer-meta{ gap:28px; }
  .footer-contact{ padding-top:0; min-height:44px; }
  .footer-social{ width:32px; }
}
@media (max-width:640px){
  .footer-pattern{ width:390px; height:347px; opacity:.6; }
  .footer-inner{ padding:calc(40px + min(72vw, 560px) * 9 / 32 + 70px) var(--gutter) 32px; }
  .footer-top{ flex-direction:column; align-items:flex-start; gap:28px; padding-bottom:40px; }
  .footer-title{ font-size:38px; }
  .footer-sub{ font-size:17px; }
  .footer-br{ display:none; }
  .footer-btn{ width:100%; min-width:0; }
  .footer-mid{ grid-template-columns:1fr; gap:36px; padding:40px 0; }
  .footer-nav{ grid-template-columns:1fr 1fr; justify-content:stretch; row-gap:12px; column-gap:16px; }
  .footer-col{ gap:0; }
  .footer-col .footer-link{ display:inline-flex; align-items:center; min-height:40px; }
  .footer-bottom{ flex-direction:column-reverse; align-items:flex-start; gap:12px; }
  .footer-copy{ flex-direction:column; font-size:14px; color:rgba(255,255,255,.85); }
}
@media (max-width:1024px){ .footer-inner{ padding-top:48px; } }
@media (max-width:640px){ .footer-inner{ padding-top:40px; } }
.funnel-dialog{
  border:0; padding:0; margin:auto; background:transparent; color:var(--ink);
  width:min(92vw, max(640px, calc(var(--d) * 1180)));
  max-width:none; max-height:90vh; max-height:90dvh;
  overflow:visible;
}
.funnel-dialog::backdrop{
  background:rgba(255,255,255,.55);
  backdrop-filter:blur(2px);
  -webkit-backdrop-filter:blur(2px);
}
.funnel-dialog[open]{ animation:funnelIn .42s var(--ease) .12s backwards; }
.funnel-dialog[open]::backdrop{ animation:funnelFade .42s ease; }
@keyframes funnelIn{ from{ opacity:0; transform:translateY(18px) scale(.98); } }
@keyframes funnelFade{ from{ opacity:0; } }
.funnel-box{
  position:relative;
  display:flex; flex-direction:column; gap:max(16px, calc(var(--d) * 32));
  padding:max(24px, calc(var(--d) * 64));
  max-height:90vh; max-height:90dvh; overflow-y:auto; overscroll-behavior:contain;
  background:var(--paper);
  border:1px solid var(--line); border-radius:4px;
  box-shadow:0 30px 90px rgba(33,33,33,.16), 0 2px 8px rgba(33,33,33,.06);
  transition:height .42s var(--ease);
}
.funnel-box.is-resizing{ overflow:hidden; }
.funnel-box > *{ flex-shrink:0; }
.funnel-top{ display:flex; align-items:center; justify-content:space-between; gap:16px; }
.funnel-step{
  display:inline-flex; align-items:center; gap:max(8px, calc(var(--d) * 14));
  font-weight:700; font-size:max(13px, calc(var(--d) * 24)); letter-spacing:-.02em; color:var(--ink-soft);
}
.funnel-step::before{
  content:""; width:max(8px, calc(var(--d) * 14)); height:max(8px, calc(var(--d) * 14));
  border-radius:2px; background:var(--red); flex:none;
}
.funnel-close{
  flex:none; width:44px; height:44px;
  display:grid; place-items:center;
  border:1px solid var(--line); border-radius:4px; color:var(--ink);
  transition:background-color .2s, color .2s, border-color .2s;
}
.funnel-close svg{ width:18px; height:18px; }
.funnel-close:hover{ background:var(--ink); border-color:var(--ink); color:#fff; }
.funnel-bar{ height:2px; background:var(--line); }
.funnel-bar i{
  display:block; height:100%; width:25%; background:var(--red);
  transition:width .42s var(--ease);
}
.funnel-title{
  font-weight:500; font-size:max(26px, calc(var(--d) * 64)); line-height:1.05; letter-spacing:-.04em;
}
.funnel-stage{
  display:flex; flex-direction:column; gap:max(12px, calc(var(--d) * 22));
  transition:opacity .28s ease, transform .28s ease;
}
.funnel-stage[hidden]{ display:none; }
.funnel-stage.is-entering{ opacity:0; transform:translateY(8px); }
.funnel-q{
  font-weight:700; font-size:max(17px, calc(var(--d) * 34)); letter-spacing:-.03em; line-height:1.2;
}
.funnel-q:focus{ outline:none; }
.funnel-opts{ display:flex; flex-direction:column; gap:max(8px, calc(var(--d) * 14)); }
.funnel-opts--grid{ display:grid; grid-template-columns:repeat(2, minmax(0,1fr)); }
.funnel-opt{
  display:flex; align-items:center; gap:max(12px, calc(var(--d) * 20));
  width:100%; min-height:max(56px, calc(var(--d) * 92));
  padding:max(12px, calc(var(--d) * 22)) max(16px, calc(var(--d) * 28));
  text-align:left; background:var(--paper);
  border:1px solid var(--line); border-radius:4px;
  font-size:max(15px, calc(var(--d) * 27)); line-height:1.25; letter-spacing:-.02em; color:var(--ink);
  transition:border-color .2s, box-shadow .2s, background-color .2s;
}
@media (hover:hover){ .funnel-opt:hover{ border-color:var(--ink); } }
.funnel-opt-mark{
  flex:none; width:max(12px, calc(var(--d) * 18)); height:max(12px, calc(var(--d) * 18));
  border:1px solid var(--ink-mute); border-radius:2px;
  transition:background-color .2s, border-color .2s;
}
.funnel-opt-label{ flex:1; min-width:0; }
.funnel-opt-sub{
  display:block; margin-top:3px;
  font-size:max(13px, calc(var(--d) * 21)); color:var(--red);
}
.funnel-opt.is-selected{ border-color:var(--red); box-shadow:inset 0 0 0 1px var(--red); }
.funnel-opt.is-selected .funnel-opt-mark{ background:var(--red); border-color:var(--red); }
.funnel-summary{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr));
  border:1px solid var(--line); border-radius:4px; background:var(--wash);
}
.funnel-summary li + li{ border-left:1px solid var(--line); }
.funnel-summary button{
  width:100%; height:100%; text-align:left;
  display:flex; flex-direction:column; gap:4px;
  padding:max(10px, calc(var(--d) * 18)) max(14px, calc(var(--d) * 24));
  min-height:44px;
}
.funnel-summary .k{
  display:flex; justify-content:space-between; gap:8px;
  font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-soft);
}
.funnel-summary .k em{ font-style:normal; color:var(--red); }
.funnel-summary .v{ font-size:max(14px, calc(var(--d) * 24)); font-weight:500; letter-spacing:-.02em; line-height:1.25; }
@media (hover:hover){ .funnel-summary button:hover .v{ color:var(--red); } }
.funnel-hint{
  padding:max(10px, calc(var(--d) * 18)) max(14px, calc(var(--d) * 24));
  border-left:3px solid var(--red); background:var(--wash);
  font-size:max(14px, calc(var(--d) * 23)); line-height:1.4;
}
.funnel-hint[hidden]{ display:none; }
.funnel-fields{
  display:grid; grid-template-columns:repeat(2, minmax(0,1fr));
  gap:max(12px, calc(var(--d) * 22)) max(14px, calc(var(--d) * 24));
}
.funnel-field{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.funnel-field--wide{ grid-column:1 / -1; }
.funnel-label{ font-size:max(13px, calc(var(--d) * 21)); font-weight:500; color:var(--ink); }
.funnel-req{ color:var(--red); }
.funnel-opt-note{ font-weight:400; color:var(--ink-soft); }
.funnel-input{
  width:100%; min-height:48px;
  padding:10px 14px;
  font:inherit; font-size:max(16px, calc(var(--d) * 25)); color:var(--ink);
  background:var(--paper); border:1px solid var(--line); border-radius:4px;
  transition:border-color .2s, box-shadow .2s;
}
.funnel-input:hover{ border-color:var(--ink-mute); }
.funnel-input:focus{ outline:none; border-color:var(--ink); box-shadow:inset 0 0 0 1px var(--ink); }
.funnel-input[aria-invalid="true"]{ border-color:var(--red); box-shadow:inset 0 0 0 1px var(--red); }
.funnel-textarea{ min-height:96px; resize:vertical; line-height:1.4; }
.funnel-check{
  position:relative; display:flex; align-items:flex-start; gap:12px;
  min-height:44px; padding-top:4px; cursor:pointer;
  font-size:max(14px, calc(var(--d) * 22)); line-height:1.45; color:var(--ink-soft);
}
.funnel-check input{ position:absolute; opacity:0; width:22px; height:22px; margin:0; top:4px; left:0; }
.funnel-check-box{
  flex:none; width:22px; height:22px; margin-top:1px;
  border:1px solid var(--ink-mute); border-radius:2px; background:var(--paper);
  display:grid; place-items:center;
  transition:background-color .2s, border-color .2s;
}
.funnel-check-box::after{
  content:""; width:10px; height:6px; margin-top:-3px;
  border:solid #fff; border-width:0 0 2px 2px; transform:rotate(-45deg); opacity:0;
}
.funnel-check input:checked + .funnel-check-box{ background:var(--red); border-color:var(--red); }
.funnel-check input:checked + .funnel-check-box::after{ opacity:1; }
.funnel-check input:focus-visible + .funnel-check-box{ outline:2px solid var(--red); outline-offset:3px; }
.funnel-check input[aria-invalid="true"] + .funnel-check-box{ border-color:var(--red); box-shadow:inset 0 0 0 1px var(--red); }
.funnel-check a{ color:var(--ink); text-decoration:underline; text-underline-offset:2px; }
.funnel-check a:hover{ color:var(--red); }
.funnel-error{
  display:flex; align-items:flex-start; gap:6px;
  font-size:max(13px, calc(var(--d) * 20)); color:var(--red); font-weight:500;
}
.funnel-error::before{ content:"!"; flex:none; width:16px; height:16px; border-radius:2px; background:var(--red); color:#fff; font-size:11px; font-weight:700; display:grid; place-items:center; margin-top:1px; }
.funnel-error[hidden]{ display:none; }
.funnel-actions{ display:flex; flex-wrap:wrap; gap:12px; }
.funnel-actions--center{ justify-content:center; }
.funnel-submit[disabled]{ opacity:.6; cursor:progress; transform:none; }
.funnel-note{ font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-soft); }
.funnel-success{ align-items:center; text-align:center; padding-block:max(12px, calc(var(--d) * 30)); }
.funnel-success-icon{ width:max(64px, calc(var(--d) * 110)); color:var(--red); }
.funnel-success-icon svg{ width:100%; height:auto; }
.funnel-success-ring{ stroke-dasharray:270; stroke-dashoffset:270; animation:funnelDraw .72s cubic-bezier(.3,0,.2,1) forwards; }
.funnel-success-check{ stroke-dasharray:52; stroke-dashoffset:52; animation:funnelDraw .42s cubic-bezier(.5,0,.3,1) .48s forwards; }
@keyframes funnelDraw{ to{ stroke-dashoffset:0; } }
.funnel-success-title{
  max-width:22ch; font-weight:500; font-size:max(24px, calc(var(--d) * 52)); line-height:1.1; letter-spacing:-.04em;
  animation:funnelUp .5s ease .3s backwards;
}
.funnel-success-title:focus{ outline:none; }
.funnel-success-text{ font-size:max(15px, calc(var(--d) * 26)); color:var(--ink-soft); animation:funnelUp .5s ease .42s backwards; }
.funnel-success .funnel-actions{ animation:funnelUp .5s ease .56s backwards; }
@keyframes funnelUp{ from{ opacity:0; transform:translateY(10px); } }
.funnel-foot{
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  padding-top:max(12px, calc(var(--d) * 20)); border-top:1px solid var(--line);
}
.funnel-back, .funnel-cancel{
  display:inline-flex; align-items:center; gap:8px; min-height:44px;
  font-size:max(14px, calc(var(--d) * 22)); color:var(--ink-soft);
  transition:color .2s;
}
.funnel-back svg{ width:16px; height:auto; }
.funnel-back:hover, .funnel-cancel:hover{ color:var(--red); }
.funnel-back[hidden], .funnel-foot[hidden]{ display:none; }
.funnel-cancel{ margin-left:auto; }
.funnel-dismiss{
  transition:filter .48s ease, opacity .42s ease, transform .6s cubic-bezier(.3,0,.2,1);
  will-change:filter, opacity, transform;
}
.funnel-dismissed{ filter:blur(14px) !important; opacity:0 !important; transform:scale(1.035) !important; pointer-events:none; }
.funnel-dialog{ transition:width .42s var(--ease); }
.funnel-dialog.is-wide{ width:min(94vw, max(1000px, calc(var(--d) * 2050))); }
.funnel-split{ display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.5fr); gap:max(24px, calc(var(--d) * 70)); align-items:start; }
.funnel-split-side{ display:flex; flex-direction:column; gap:max(12px, calc(var(--d) * 22)); }
.funnel-split-main{ display:flex; flex-direction:column; gap:max(12px, calc(var(--d) * 22)); }
.funnel-split .funnel-summary{ grid-template-columns:1fr; }
.funnel-split .funnel-summary li + li{ border-left:0; border-top:1px solid var(--line); }
.funnel-split .funnel-summary button{ flex-direction:row; align-items:baseline; justify-content:space-between; gap:12px; }
.funnel-split .funnel-summary .k{ flex:none; gap:12px; }
.funnel-split .funnel-summary .v{ text-align:right; }
.funnel-split .funnel-textarea{ min-height:72px; }
.funnel-split .funnel-textarea--short{ min-height:56px; height:56px; }
.funnel-split .funnel-actions .funnel-submit{ min-width:min(100%, 320px); justify-content:center; }
.funnel-next{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:max(10px, calc(var(--d) * 18)); counter-reset:fnext; }
.funnel-next li{ position:relative; padding-left:max(30px, calc(var(--d) * 50)); counter-increment:fnext; display:flex; flex-direction:column; gap:2px; }
.funnel-next li::before{
  content:counter(fnext, decimal); position:absolute; left:0; top:1px;
  font-weight:700; font-size:max(12px, calc(var(--d) * 19)); color:var(--red); font-variant-numeric:tabular-nums;
}
.funnel-next b{ font-weight:700; font-size:max(14px, calc(var(--d) * 23)); letter-spacing:-.02em; }
.funnel-next span{ font-size:max(13px, calc(var(--d) * 21)); color:var(--ink-soft); line-height:1.4; }
.funnel-file{
  position:relative; display:flex; align-items:center; gap:12px; min-height:56px; padding:10px 16px; cursor:pointer;
  border:1px dashed var(--ink-mute); border-radius:4px; background:var(--wash);
  font-size:max(14px, calc(var(--d) * 23)); color:var(--ink-soft); transition:border-color .2s, background-color .2s, color .2s;
}
.funnel-file input{ position:absolute; inset:0; opacity:0; cursor:pointer; }
.funnel-file svg{ flex:none; width:20px; height:20px; color:var(--red); }
.funnel-file-text{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.funnel-file:hover, .funnel-file.is-over{ border-color:var(--ink); color:var(--ink); }
.funnel-file.has-file{ border-style:solid; border-color:var(--red); color:var(--ink); background:var(--paper); }
.funnel-file:focus-within{ outline:2px solid var(--red); outline-offset:3px; }
.funnel-file:has(input[aria-invalid="true"]){ border-color:var(--red); }
@media (max-width:1024px){
  .funnel-dialog.is-wide{ width:min(94vw, 920px); }
}
@media (max-width:640px){
  .funnel-dialog.is-wide{ width:100%; }
  .funnel-split{ grid-template-columns:1fr; gap:16px; }
}
@media (max-width:1024px){
  .funnel-dialog{ width:min(92vw, 720px); }
}
@media (max-width:640px){
  .funnel-dialog{
    width:100%; height:100%; max-width:100%; max-height:100%;
    margin:0; inset:0;
  }
  .funnel-dialog[open]{ animation-name:funnelSheet; }
  @keyframes funnelSheet{ from{ opacity:0; transform:translateY(40px); } }
  .funnel-box{
    height:100%; max-height:none; min-height:100%;
    padding:16px 20px calc(12px + env(safe-area-inset-bottom));
    gap:16px; border:0; border-radius:0; box-shadow:none;
  }
  .funnel-box.is-resizing{ overflow-y:auto; }
  .funnel-title{ font-size:28px; }
  .funnel-q{ font-size:19px; }
  .funnel-opts--grid{ grid-template-columns:1fr; }
  .funnel-opt{ min-height:52px; font-size:16px; }
  .funnel-summary{ grid-template-columns:1fr; }
  .funnel-summary li + li{ border-left:0; border-top:1px solid var(--line); }
  .funnel-summary button{ flex-direction:row; align-items:baseline; justify-content:space-between; gap:12px; }
  .funnel-summary .k{ flex:none; }
  .funnel-summary .v{ text-align:right; }
  .funnel-fields{ grid-template-columns:1fr; }
  .funnel-submit{ width:100%; white-space:normal; height:auto; min-height:48px; }
  .funnel-foot{
    margin-top:auto; position:sticky; bottom:calc(-12px - env(safe-area-inset-bottom));
    background:var(--paper); padding-bottom:4px;
  }
}
@media (prefers-reduced-motion:reduce){
  .funnel-dialog[open], .funnel-dialog[open]::backdrop{ animation:none; }
  .funnel-bar i, .funnel-box, .funnel-stage, .funnel-dismiss{ transition:none; }
  .funnel-dismissed{ transform:none !important; filter:none !important; }
  .funnel-success-ring, .funnel-success-check{ animation:none; stroke-dashoffset:0; }
  .funnel-success-title, .funnel-success-text, .funnel-success .funnel-actions{ animation:none; }
}
.funnel-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.au-wait .ln-i{ transform:translateY(112%) rotate(2.5deg); }
.au-in .ln-i{ animation:intro-line 1s var(--in-ease) calc(var(--au-d, 0s) + var(--n, 0) * .08s) backwards; }
.eyebrow.au-wait::before{ transform:scale(0); }
.eyebrow.au-in::before{ animation:intro-pop .5s var(--in-ease) calc(var(--au-d, 0s) + .12s) backwards; }
.btn.au-wait{ clip-path:inset(100% 0 0 0); }
.btn.au-in{ animation:intro-btn .75s var(--in-ease) var(--au-d, 0s) backwards; }
.btn.au-in .roll-t{ animation:intro-roll .75s var(--in-ease) calc(var(--au-d, 0s) + .08s) backwards; }
.btn.au-in > svg{ animation:intro-pop .6s var(--in-ease) calc(var(--au-d, 0s) + .14s) backwards; }
.au-b{ opacity:0; translate:0 36px; }
.au-b.au-b-in{ opacity:1; translate:0 0; transition:opacity .9s ease var(--au-d, 0s), translate 1.1s cubic-bezier(.16,1,.3,1) var(--au-d, 0s); }
.ap{
  --ap-red:var(--red, #b12025); --ap-ink:#212121; --ap-soft:#6f6f6f; --ap-mute:#a6a6a6; --ap-line:#e6e6e6;
  --ap-card:#fff; --ap-cardb:#ececec; --ap-wash:#f3f3f3; --ap-track:#e7e7e7; --ap-wire:#d6d6d6; --ap-ra:#a5a5a5;
  --ap-redbg:#fbeaea; --ap-redmid:#e8b8b9; --ap-ok:#2d7a4b; --ap-okbg:#e8f4ec; --ap-okline:#6fb68b;
  --ap-housel:#f6f2f2; --ap-glass:rgba(255,255,255,.4); --ap-dot:#dcdcdc;
  --ap-scene:linear-gradient(160deg,#f8f8f8,#f1f0f0 60%,#f5eded);
  --ap-spring:cubic-bezier(.34,1.56,.64,1);
  color:var(--ap-ink); letter-spacing:-.01em; -webkit-font-smoothing:antialiased;
}
.theme-dark .ap, .ap.ap--dark{
  --ap-red:#e0353b; --ap-ink:#f5f5f5; --ap-soft:rgba(255,255,255,.62); --ap-mute:rgba(255,255,255,.4); --ap-line:rgba(255,255,255,.1);
  --ap-card:#17171a; --ap-cardb:rgba(255,255,255,.09); --ap-wash:#202024; --ap-track:#26262b; --ap-wire:#34343a; --ap-ra:#5d5d64;
  --ap-redbg:rgba(224,53,59,.16); --ap-redmid:rgba(224,53,59,.5); --ap-ok:#6fd497; --ap-okbg:rgba(111,212,151,.13); --ap-okline:#55b97c;
  --ap-housel:#1d1415; --ap-glass:rgba(255,255,255,.025); --ap-dot:#2a2a30;
  --ap-scene:linear-gradient(160deg,#121214,#111113 60%,#161011);
}
.theme-dark .ap .card{ box-shadow:0 1px 2px rgba(0,0,0,.3), 0 10px 30px rgba(0,0,0,.35); }
.theme-dark .ap .rail li.at{ box-shadow:0 8px 24px rgba(0,0,0,.4); }
.ap, .ap *{ box-sizing:border-box; }
.ap button:not(.btn){ font:inherit; color:inherit; }
.ap p, .ap h3, .ap h4, .ap h5, .ap ol, .ap ul, .ap dl, .ap dd, .ap figure{ margin:0; padding:0; }
.ap figure.story{ margin:0; }
@media (min-width:1800px){ .ap{ zoom:1.2; } }
@media (min-width:2300px){ .ap{ zoom:1.45; } }
.ap .story{position:relative}
.ap .scene{position:relative;border-radius:24px;border:1px solid var(--ap-cardb);background:var(--ap-scene);padding:40px 32px;overflow:hidden}
.ap .scene::before{content:"";position:absolute;inset:0;background-image:radial-gradient(var(--ap-dot) 1px,transparent 1px);background-size:22px 22px;opacity:.5;pointer-events:none;-webkit-mask-image:linear-gradient(#000,transparent 85%);mask-image:linear-gradient(#000,transparent 85%)}
@keyframes ap-drift{to{background-position:22px 22px}}
.ap .scene>*{position:relative;z-index:1}
.ap .scene>.wires,.ap .scene>.glow{position:absolute;z-index:0}
.ap .glow{width:520px;height:520px;left:0;top:0;margin:-260px 0 0 -260px;border-radius:50%;background:radial-gradient(closest-side,rgba(177,32,37,.13),rgba(177,32,37,0));pointer-events:none;transition:transform 1s cubic-bezier(.6,0,.2,1),opacity .6s;opacity:0;will-change:transform}
.ap .glow.on{opacity:1}
.ap .wires{inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.ap .wires path{fill:none;stroke-width:2;stroke-linecap:round}
.ap .wires path.b{stroke:var(--ap-wire);transition:opacity .3s}
.ap .wires .off path.b{opacity:0}
.ap .wires path.a{stroke:var(--ap-red)}
.ap .wires .fr path.b{stroke:none}
.ap .wires .fr path.a{stroke:rgba(177,32,37,.6);stroke-width:1.5}
.ap .wires .bad path.a{stroke-dasharray:6 6!important;animation:ap-march .5s linear infinite}
@keyframes ap-march{to{stroke-dashoffset:-12}}
.ap .wires .pk{fill:var(--ap-red);stroke:rgba(177,32,37,.22);stroke-width:7}
.ap .wires .pk.w{fill:var(--ap-card);stroke:var(--ap-red);stroke-width:2}
.ap .rail{list-style:none;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:10px;margin-top:14px;align-items:stretch}
.ap .rail li{position:relative;border-radius:16px;padding:14px 16px 16px;cursor:pointer;transition:background .3s,opacity .3s;opacity:.55;border:1px solid transparent}
.ap .rail li:hover{opacity:.85}
.ap .rail li.at{opacity:1;background:var(--ap-card);border-color:var(--ap-cardb);box-shadow:0 8px 24px rgba(0,0,0,.05)}
.ap .rail li.past{opacity:.8}
.ap .rail .num{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--ap-wire);font-size:12px;font-weight:500;margin-bottom:10px;color:var(--ap-soft);transition:all .3s}
.ap .rail li.at .num,.ap .rail li.past .num{background:var(--ap-red);border-color:var(--ap-red);color:#fff}
.ap .rail li.at .num{animation:ap-ring 1.1s ease-out}
.ap .rail b{display:block;font-size:15px;font-weight:500;margin-bottom:4px}
.ap .rail p{font-size:13.5px;line-height:1.42;color:var(--ap-soft)}
.ap .rail li::after{content:"";position:absolute;left:16px;right:16px;bottom:8px;height:2px;border-radius:2px;background:var(--ap-red);transform:scaleX(0);transform-origin:left}
.ap .rail li.at.run::after{animation:ap-prog var(--dur,3s) linear forwards}
@keyframes ap-prog{to{transform:scaleX(1)}}
.ap .ctl{display:flex;justify-content:flex-end;margin-top:8px}
.ap .ctl button{border:0;background:none;font-size:13px;color:var(--ap-mute);cursor:pointer;display:flex;align-items:center;gap:6px;padding:4px 6px}
.ap .ctl button:hover{color:var(--ap-ink)}
.ap .mrail{display:flex;align-items:flex-start;gap:12px;margin-top:14px;min-height:42px}
.ap .mrail .dots{display:flex;gap:5px;padding-top:6px;flex:none}
.ap .mrail .dots button{width:7px;height:7px;border-radius:99px;border:0;background:var(--ap-wire);cursor:pointer;transition:all .3s;padding:0}
.ap .mrail .dots button.at{width:20px;background:var(--ap-red)}
.ap .mrail p{font-size:14px;line-height:1.42;color:var(--ap-soft)}
.ap .mrail p b{color:var(--ap-ink);font-weight:500}
.ap .card{background:var(--ap-card);border-radius:14px;border:1px solid var(--ap-cardb);box-shadow:0 1px 2px rgba(0,0,0,.04),0 10px 30px rgba(0,0,0,.06);transition:opacity .45s,transform .45s,border-color .35s,box-shadow .35s,background .35s}
.ap .ico{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:var(--ap-wash);flex:none;color:var(--ap-ink);transition:background .3s,color .3s}
.ap .ico svg{width:17px;height:17px}
.ap .red .ico,.ap .ico.r{background:var(--ap-redbg);color:var(--ap-red)}
.ap .chip{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;padding:5px 10px;border-radius:99px;background:var(--ap-wash);color:var(--ap-ink);white-space:nowrap;transition:background .3s,color .3s}
.ap .chip.r{background:var(--ap-redbg);color:var(--ap-red)}
.ap .chip.ok{background:var(--ap-okbg);color:var(--ap-ok)}
.ap .dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}
.ap .lbl{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-mute);margin-bottom:10px;display:flex;align-items:center;gap:8px}
.ap .lbl span{color:var(--ap-red)}
.ap .lbl .cnt{margin-left:auto;letter-spacing:0;text-transform:none;font-size:12px;color:var(--ap-soft)}
.ap .sub{display:block;font-weight:400;font-size:12.5px;color:var(--ap-soft);margin-top:2px}
.ap .pin{position:absolute;top:-11px;right:12px;z-index:3;font-style:normal;letter-spacing:0;word-spacing:.08em;font-size:12px;font-weight:500;background:var(--ap-red);color:#fff;padding:4px 10px;border-radius:99px;white-space:nowrap;opacity:0;transform:translateY(6px) scale(.8);transition:opacity .3s,transform .45s var(--ap-spring);pointer-events:none;box-shadow:0 6px 16px rgba(177,32,37,.3)}
.ap .pin.at{opacity:1;transform:none}
.ap .pin.l{right:auto;left:12px}
.ap [data-in]{opacity:0;transform:translateY(10px) scale(.97)}
.ap [data-in].in{opacity:1;transform:none}
.ap [data-in]:not(.card){transition:opacity .45s,transform .55s var(--ap-spring)}
.ap .card[data-in]{transition:opacity .45s,transform .6s var(--ap-spring),border-color .35s,box-shadow .35s}
.ap .ring{animation:ap-ring 1s ease-out}
@keyframes ap-ring{0%{box-shadow:0 0 0 0 rgba(177,32,37,.45)}100%{box-shadow:0 0 0 18px rgba(177,32,37,0)}}
.ap .pop{animation:ap-pop .55s var(--ap-spring) both}
@keyframes ap-pop{from{opacity:0;transform:scale(.5)}}
.ap .ghost{box-shadow:0 20px 40px rgba(177,32,37,.18)!important;border-color:var(--ap-red)!important}
.ap .caret::after{content:"";display:inline-block;width:1.5px;height:1em;background:var(--ap-red);margin-left:2px;vertical-align:-2px;animation:ap-blink .7s steps(1) infinite}
@keyframes ap-blink{50%{opacity:0}}
.ap .wire{position:relative;height:2px;background:var(--ap-wire);border-radius:2px;align-self:center}
.ap .wire::after{content:"";position:absolute;top:50%;left:0;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--ap-red);box-shadow:0 0 0 5px rgba(177,32,37,.15);opacity:0}
.ap .wire.at{background:linear-gradient(90deg,var(--ap-red),var(--ap-redmid))}
.ap .wire.at::after{animation:ap-wire 1.2s cubic-bezier(.5,0,.3,1) forwards}
@keyframes ap-wire{0%{left:0;opacity:0}15%{opacity:1}100%{left:100%;opacity:1}}
@keyframes ap-wirev{0%{top:0;left:50%;opacity:0}15%{opacity:1}100%{top:100%;left:50%;opacity:1}}
.ap .house{border-radius:20px;padding:30px 22px 22px;position:relative;transition:background .6s}
.ap .house.at{background:var(--ap-glass)}
.ap .house-l{position:absolute;top:-13px;left:22px;display:flex;align-items:center;gap:7px;font-size:12.5px;font-weight:500;color:var(--ap-red);background:var(--ap-housel);padding:4px 10px;border-radius:99px;opacity:0;transform:translateY(6px) scale(.85);transition:opacity .35s .5s,transform .5s .5s var(--ap-spring)}
.ap .house-l svg{width:13px;height:13px}
.ap .house.at .house-l{opacity:1;transform:none}
.ap .local{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:22px}
.ap .local .chip{background:var(--ap-card);border:1px solid var(--ap-cardb)}
.ap .local .chip svg{width:13px;height:13px;color:var(--ap-red)}
.ap .local>[data-in]:nth-child(2){transition-delay:.9s}
.ap .local>[data-in]:nth-child(3){transition-delay:1.05s}
.ap .local>[data-in]:nth-child(1){transition-delay:.75s}
.ap .kflow{display:grid;grid-template-columns:1fr 76px 1.25fr 76px 1fr;align-items:start}
.ap .col{display:flex;flex-direction:column;gap:9px;min-width:0}
.ap .item{position:relative;display:flex;align-items:center;gap:11px;padding:11px 13px;font-size:14px;font-weight:500;min-width:0}
.ap .item .tx{min-width:0;flex:1}
.ap .item .tx>span:first-child{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ap .q.cur{border-color:var(--ap-red)}
.ap .q.old{opacity:.6}
.ap .q.old .sub{color:var(--ap-ok)}
.ap .stack{display:grid}
.ap .stack>*{grid-area:1/1}
.ap .slot{border:1.5px dashed var(--ap-wire);border-radius:14px;display:grid;place-items:center;font-size:13px;color:var(--ap-mute);min-height:230px;transition:opacity .3s}
.ap .slot span{animation:ap-breathe 1.6s ease-in-out infinite}
@keyframes ap-breathe{50%{opacity:.35}}
.ap .mid{position:relative;padding:18px;display:flex;flex-direction:column;gap:12px}
.ap .mid.in{border-color:var(--ap-redbg)}
.ap .mid-h{display:flex;align-items:center;gap:11px;font-size:15px;font-weight:500;line-height:1.25}
.ap .mid-h .chip{margin-left:auto}
.ap .pv{position:relative;display:grid;gap:6px;padding:12px;border-radius:10px;background:var(--ap-wash);border:1px solid var(--ap-cardb);overflow:hidden}
.ap .pv i{height:5px;border-radius:3px;background:var(--ap-track);transition:background .4s}
.ap .pv i:nth-child(1){width:62%}
.ap .pv i:nth-child(2){width:88%}
.ap .pv i:nth-child(3){width:74%}
.ap .pv i:nth-child(4){width:40%}
.ap .pv::after{content:"";position:absolute;left:0;right:0;top:-30%;height:30%;background:linear-gradient(transparent,rgba(177,32,37,.16));border-bottom:2px solid var(--ap-red);opacity:0}
.ap .mid.scan .pv::after{animation:ap-scan 1.1s cubic-bezier(.5,0,.5,1) 2 both}
.ap .mid.scan .pv i{animation:ap-hl 2.2s steps(1) both}
.ap .mid.read .pv i{background:var(--ap-redbg)}
@keyframes ap-scan{0%{top:-30%;opacity:0}12%{opacity:1}88%{opacity:1}100%{top:100%;opacity:0}}
.ap .fields{display:grid;grid-template-columns:auto 1fr auto;gap:9px 12px;font-size:13px;align-items:center}
.ap .fields dt{color:var(--ap-mute);white-space:nowrap}
.ap .fields dd{font-weight:500;text-align:right;white-space:nowrap;min-width:0}
.ap .fields dd.warn{color:var(--ap-red)}
.ap .fields dd.good{color:var(--ap-ok)}
.ap .fields .cf{height:4px;border-radius:3px;background:var(--ap-cardb);overflow:hidden}
.ap .fields .cf i{display:block;height:100%;width:0;background:var(--ap-red);border-radius:3px;transition:width .9s cubic-bezier(.2,.7,.2,1)}
.ap .fields .cf.lo i{background:var(--ap-redmid)}
.ap .fields .cf.ok i{background:var(--ap-okline)}
.ap .mid-f{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap;border-top:1px solid var(--ap-cardb);padding-top:12px;min-height:44px}
.ap .route{font-size:13px;color:var(--ap-soft)}
.ap .route b{color:var(--ap-ink);font-weight:500}
.ap .pbar{height:4px;border-radius:3px;background:var(--ap-redbg);overflow:hidden;flex:1 1 100%}
.ap .stepc .pbar{flex:none;width:100%}
.ap .pbar i{display:block;height:100%;width:0;background:var(--ap-red)}
.ap .pbar.run i{animation:ap-fill var(--pd,1.8s) cubic-bezier(.4,0,.2,1) forwards}
@keyframes ap-fill{to{width:100%}}
.ap .dest{position:relative;padding:11px 13px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:11px}
.ap .dest .n{font-size:12px;color:var(--ap-mute);font-weight:400;white-space:nowrap;font-variant-numeric:tabular-nums}
.ap .dest .tag{position:absolute;top:-10px;right:10px;opacity:0;transform:scale(.6);transition:opacity .25s,transform .45s var(--ap-spring);box-shadow:0 4px 12px rgba(0,0,0,.08)}
.ap .dest.hit{border-color:var(--ap-red)}
.ap .dest.hit .tag{opacity:1;transform:none}
.ap .dest.dim{opacity:.45}
.ap .dest.hit .ico{background:var(--ap-redbg);color:var(--ap-red)}
.ap .who{position:absolute;left:-12px;top:50%;width:26px;height:26px;margin-top:-13px;border-radius:50%;background:var(--ap-red);color:#fff;display:grid;place-items:center;opacity:0;transform:scale(.4);transition:opacity .25s,transform .45s var(--ap-spring);box-shadow:0 0 0 4px var(--ap-card)}
.ap .who svg{width:14px;height:14px}
.ap .dest.human .who{opacity:1;transform:none}
.ap .env{position:relative;padding:12px 13px;display:flex;flex-direction:column;gap:9px}
.ap .env-h{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500}
.ap .env-h small{margin-left:auto;font-size:12px;color:var(--ap-mute);font-weight:400;font-variant-numeric:tabular-nums;display:inline-block}
.ap .env-h small.flip{animation:ap-flip .5s ease}
@keyframes ap-flip{0%{transform:rotateX(0)}50%{transform:rotateX(90deg);opacity:.2}100%{transform:none}}
.ap .health{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}
.ap .health i{height:5px;border-radius:3px;background:var(--ap-okline);transition:background .3s}
.ap .env.scan{overflow:hidden}
.ap .env.scan::after{content:"";position:absolute;top:0;bottom:0;width:40%;left:-40%;background:linear-gradient(90deg,transparent,rgba(177,32,37,.08),transparent);animation:ap-sweep 1.2s ease-in-out 2}
@keyframes ap-sweep{to{left:100%}}
.ap .env.bad{border-color:var(--ap-red)}
.ap .env.bad .health i:last-child{background:var(--ap-red)}
.ap .env.fix .health i:last-child{background:var(--ap-okline);animation:ap-blink .5s steps(1) infinite}
.ap .env.dim{opacity:.5}
.ap .cases{display:grid;grid-template-columns:1.25fr 1fr;gap:28px;align-items:start}
.ap .tree{max-width:600px;margin:0 auto;display:flex;flex-direction:column;align-items:center}
.ap .node{padding:12px 16px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:11px;min-width:250px;max-width:100%}
.ap .gv{height:64px}
.ap .stepc{flex-direction:column;align-items:stretch;gap:10px;min-width:300px}
.ap .stepc .hd{display:flex;align-items:center;gap:11px}
.ap .schips{display:flex;gap:6px;flex-wrap:wrap}
.ap .schips .chip{opacity:0;transform:scale(.6);transition:opacity .25s,transform .45s var(--ap-spring)}
.ap .stepc.in .schips .chip{opacity:1;transform:none}
.ap .stepc.in .schips .chip:nth-child(1){transition-delay:.5s}
.ap .stepc.in .schips .chip:nth-child(2){transition-delay:.9s}
.ap .stepc.in .schips .chip:nth-child(3){transition-delay:1.3s}
.ap .stepc.in .schips .chip:nth-child(4){transition-delay:1.7s}
.ap .leaves{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;width:100%}
.ap .leaf{position:relative;padding:13px;font-size:14px;font-weight:500;line-height:1.25;display:flex;flex-direction:column;gap:6px}
.ap .leaf.in:nth-child(1){transition-delay:.35s}
.ap .leaf.in:nth-child(2){transition-delay:.55s}
.ap .leaf.in:nth-child(3){transition-delay:.75s}
.ap .leaf.hum.at{border-color:var(--ap-red)}
.ap .leaf.hum.at .ico{background:var(--ap-red);color:#fff}
.ap .leaf .ico{width:26px;height:26px;border-radius:8px}
.ap .leaf .ico svg{width:14px;height:14px}
.ap .tabs{display:flex;flex-direction:column;border-top:1px solid var(--ap-line)}
.ap .tab{border:0;border-bottom:1px solid var(--ap-line);background:none;text-align:left;padding:18px 4px 18px 18px;cursor:pointer;position:relative}
.ap .tab::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:2px;background:var(--ap-red);transform:scaleY(0);transform-origin:top;transition:transform .5s cubic-bezier(.6,0,.2,1)}
.ap .tab.on::before{transform:none}
.ap .tab h4{font-size:19px;font-weight:500;letter-spacing:-.025em;color:var(--ap-mute);transition:color .3s}
.ap .tab.on h4{color:var(--ap-ink)}
.ap .tab .more{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.6,0,.2,1)}
.ap .tab.on .more{grid-template-rows:1fr}
.ap .tab .more>div{overflow:hidden}
.ap .tab .more p{font-size:14px;line-height:1.5;color:var(--ap-soft);padding-top:10px}
.ap .kpi{display:flex;gap:22px;margin-top:12px;flex-wrap:wrap}
.ap .kpi b{display:block;font-size:26px;font-weight:700;letter-spacing:-.04em;color:var(--ap-red);font-variant-numeric:tabular-nums}
.ap .kpi span{font-size:12px;color:var(--ap-soft)}
.ap .src{font-size:11.5px!important;color:var(--ap-mute)!important;padding-top:8px!important}
.ap .share{display:grid;grid-template-columns:1fr 260px;gap:32px;align-items:center;max-width:980px;margin:0 auto}
.ap .legend{display:flex;gap:18px;font-size:13px;color:var(--ap-soft);margin-bottom:14px}
.ap .legend span{display:flex;align-items:center;gap:7px}
.ap .legend span::before{content:"";width:10px;height:10px;border-radius:3px;background:var(--ap-ra)}
.ap .legend span.r::before{background:var(--ap-red)}
.ap .srow{display:grid;grid-template-columns:130px 1fr;gap:16px;align-items:center;font-size:14px;font-weight:500;padding:11px 0;transition:opacity .4s}
.ap .srow:not(.in){opacity:.25}
.ap .srow>span:first-child{transition:color .3s}
.ap .srow.at>span:first-child{color:var(--ap-red)}
.ap .split{position:relative;height:14px}
.ap .track{display:flex;height:100%;border-radius:99px;overflow:hidden;background:var(--ap-track)}
.ap .track i{height:100%;width:0;transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
.ap .track .ra{background:var(--ap-ra)}
.ap .track .me{background-color:var(--ap-red);background-repeat:no-repeat}
.ap .srow.in .ra{width:var(--a)}
.ap .srow.in .me{width:calc(100% - var(--a))}
.ap .srow.at .me{background-image:linear-gradient(90deg,transparent,rgba(255,255,255,.45),transparent);background-size:80px 100%;animation:ap-shim 1.3s linear infinite}
@keyframes ap-shim{from{background-position:-80px 0}to{background-position:900px 0}}
.ap .knob{position:absolute;top:50%;left:0;width:22px;height:22px;margin:-11px 0 0 -11px;border-radius:50%;background:var(--ap-card);border:2px solid var(--ap-red);box-shadow:0 4px 10px rgba(0,0,0,.12);opacity:0;transition:left 1.1s cubic-bezier(.2,.7,.2,1),opacity .3s}
.ap .srow.at .knob{opacity:1;left:var(--a);animation:ap-ring 1.2s ease-out .9s}
.ap .big{padding:24px;text-align:left}
.ap .big small{font-size:13px;color:var(--ap-soft)}
.ap .big b{display:block;font-size:64px;font-weight:700;letter-spacing:-.05em;line-height:1;margin:8px 0 6px;color:var(--ap-red);font-variant-numeric:tabular-nums}
.ap .big p{font-size:14px;color:var(--ap-soft);line-height:1.45;min-height:40px}
.ap .team{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin-top:14px}
.ap .team i{aspect-ratio:1;border-radius:50%;background:var(--ap-track);transition:background .3s,transform .45s var(--ap-spring)}
.ap .team i.on{background:var(--ap-red);transform:scale(1.12)}
.ap .note{font-size:12.5px;color:var(--ap-mute);margin-top:12px}
.ap .bento{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ap .tile{display:flex;flex-direction:column}
.ap .tile.w2{grid-column:span 2}
.ap .tile .scene{padding:26px 22px;flex:1;display:flex;flex-direction:column;justify-content:center;min-height:260px}
.ap .tile h3{font-size:19px;font-weight:500;letter-spacing:-.025em;margin-top:16px;order:2}
.ap .tile .mrail{order:3;margin-top:6px}
.ap .spark{position:relative;display:grid;grid-template-columns:70px 1fr auto;gap:14px;align-items:center;padding:12px 14px;font-size:14px;font-weight:500}
.ap .spark+.spark{margin-top:9px}
.ap .spark svg{width:100%;height:28px;display:block;overflow:visible}
.ap .spark polyline{fill:none;stroke:var(--ap-okline);stroke-width:2;vector-effect:non-scaling-stroke;transition:opacity .4s}
.ap .spark .alt{stroke:var(--ap-red);opacity:0;clip-path:inset(0 100% 0 0)}
.ap .spark.bad .alt{opacity:1;animation:ap-draw 1.1s ease forwards}
.ap .spark.bad .norm{opacity:0}
.ap .spark.bad{border-color:var(--ap-red)}
@keyframes ap-draw{to{clip-path:inset(0 0 0 0)}}
.ap .diff{width:100%;border-collapse:separate;border-spacing:0 7px;font-size:14px}
.ap .diff th{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-mute);font-weight:400;text-align:left;padding:0 12px}
.ap .diff td{background:var(--ap-card);border-top:1px solid var(--ap-cardb);border-bottom:1px solid var(--ap-cardb);padding:11px 12px;font-family:ui-monospace,Menlo,monospace;font-size:13px;transition:background .3s,color .3s}
.ap .diff td:first-child{border-left:1px solid var(--ap-cardb);border-radius:10px 0 0 10px;color:var(--ap-soft)}
.ap .diff td:last-child{border-right:1px solid var(--ap-cardb);border-radius:0 10px 10px 0;text-align:right;font-family:inherit}
.ap .diff tr.bad td{border-color:rgba(177,32,37,.5);color:var(--ap-red);background:var(--ap-redbg)}
.ap .diff tr.good td:last-child{color:var(--ap-ok)}
.ap .diff .v2,.ap .diff .v3{display:none}
.ap .diff tr.bad .v1,.ap .diff tr.good .v1{display:none}
.ap .diff tr.bad .v2{display:inline-block;animation:ap-pop .45s var(--ap-spring)}
.ap .diff tr.good .v3{display:inline-block;animation:ap-pop .45s var(--ap-spring)}
.ap .rb{display:flex;flex-direction:column;gap:8px}
.ap .rb div{display:flex;align-items:center;gap:12px;padding:11px 13px;font-size:14px;font-weight:500}
.ap .rb .mk{width:20px;height:20px;border-radius:50%;border:2px solid var(--ap-wire);flex:none;display:grid;place-items:center;transition:all .3s}
.ap .rb .mk svg{width:12px;height:12px;opacity:0;transform:scale(.4);transition:opacity .2s,transform .4s var(--ap-spring)}
.ap .rb div.done .mk{background:var(--ap-red);border-color:var(--ap-red)}
.ap .rb div.done .mk svg{opacity:1;color:#fff;transform:none}
.ap .rb div.run{border-color:var(--ap-red);transform:translateX(4px)}
.ap .rb div.run .mk{border-color:var(--ap-red);border-top-color:transparent;animation:ap-spin .8s linear infinite}
.ap .rb div.todo{opacity:.45}
@keyframes ap-spin{to{transform:rotate(360deg)}}
.ap .gantt{display:grid;grid-template-columns:56px repeat(5,1fr);gap:7px 6px;align-items:center;font-size:13px}
.ap .gantt .d{font-size:11.5px;color:var(--ap-mute);text-align:center}
.ap .gantt .e{font-weight:500}
.ap .gantt .b{height:30px;border-radius:8px;background:var(--ap-card);border:1px solid var(--ap-cardb);display:grid;place-items:center;font-size:12px;color:var(--ap-soft);transition:all .35s;position:relative;transform-origin:left}
.ap .gantt .b.at{background:var(--ap-redbg);border-color:var(--ap-red);color:var(--ap-red);animation:ap-grow .6s cubic-bezier(.2,.7,.2,1)}
@keyframes ap-grow{from{transform:scaleX(.2);opacity:.3}}
.ap .gantt .b .pin{top:-26px;right:auto;left:50%;transform:translateX(-50%) translateY(4px)}
.ap .gantt .b .pin.at{transform:translateX(-50%)}
.ap .know{display:grid;gap:12px}
.ap .know .card{padding:14px 16px;display:flex;flex-direction:column;gap:8px;position:relative}
.ap .know .card.at{border-color:var(--ap-red);transform:translateX(4px)}
.ap .know .card:not(.at){opacity:.5}
.ap .know h5{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-mute);font-weight:400}
.ap .know p{font-size:15px;font-weight:500}
.ap .know .row{display:flex;gap:6px;flex-wrap:wrap}
.ap .svc{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.ap .svc b{font-family:ui-monospace,Menlo,monospace;font-size:14px;font-weight:500}
.ap .stops{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;position:relative;margin-bottom:18px}
.ap .stops::before,.ap .stops .fill{content:"";position:absolute;left:12.5%;top:20px;height:2px;background:var(--ap-wire)}
.ap .stops::before{right:12.5%}
.ap .stops .fill{background:var(--ap-red);width:0;transition:width .9s cubic-bezier(.6,0,.2,1)}
.ap .stop{position:relative;border:0;background:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--ap-mute);padding:0 4px}
.ap .stop i{width:14px;height:14px;border-radius:50%;background:var(--ap-card);border:2px solid var(--ap-wire);margin-top:14px;transition:all .3s;z-index:1}
.ap .stop b{font-size:13px;font-weight:500}
.ap .stop span{font-size:15px;font-weight:500;color:var(--ap-soft);text-align:center}
.ap .stop.at i{background:var(--ap-red);border-color:var(--ap-red);box-shadow:0 0 0 6px rgba(177,32,37,.15)}
.ap .stop.at span,.ap .stop.at b{color:var(--ap-ink)}
.ap .stop.past i{background:var(--ap-redmid);border-color:var(--ap-redmid)}
.ap .cmp{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ap .cmp .card{padding:20px 22px;min-height:148px;display:flex;flex-direction:column;gap:10px}
.ap .cmp .card.fx{animation:ap-fin .55s var(--ap-spring) both}
.ap .cmp .with.fx{animation-delay:.25s}
.ap .cmp h5{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:400;color:var(--ap-mute)}
.ap .cmp .without{background:var(--ap-wash);box-shadow:none}
.ap .cmp .without p{font-size:17px;line-height:1.4;color:var(--ap-soft)}
.ap .cmp .with{border-color:rgba(177,32,37,.5)}
.ap .cmp .with h5{color:var(--ap-red)}
.ap .cmp .with p{font-size:21px;line-height:1.3;font-weight:500;letter-spacing:-.02em}
@keyframes ap-fin{from{opacity:0;transform:translateY(12px) scale(.97)}}
.ap .modes{display:flex;gap:8px;justify-content:center;margin-bottom:26px;flex-wrap:wrap}
.ap .modes button{border:1px solid var(--ap-line);background:var(--ap-card);color:var(--ap-soft);border-radius:99px;padding:9px 16px;font-size:14px;cursor:pointer;transition:all .3s}
.ap .modes button.at{background:var(--ap-red);border-color:var(--ap-red);color:#fff}
.ap .zones{display:grid;grid-template-columns:auto 60px 1fr;align-items:center;max-width:880px;margin:0 auto}
.ap .zones.two{grid-template-columns:auto 60px 1fr 60px 1fr}
.ap .zones .srcc{padding:15px 16px;display:flex;gap:10px;align-items:center;font-size:14px;font-weight:500}
.ap .zone{border:1.5px dashed var(--ap-wire);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:9px;background:var(--ap-glass)}
.ap .zone.mine{border-color:rgba(177,32,37,.6)}
.ap .zone .card{padding:11px 12px;display:flex;align-items:center;gap:10px;font-size:14px;font-weight:500;animation:ap-fin .5s var(--ap-spring) both}
.ap .zone .card:nth-child(3){animation-delay:.12s}
.ap .zone .card:nth-child(4){animation-delay:.24s}
.ap .zone .card small{display:block;font-weight:400;font-size:12px;color:var(--ap-red)}
.ap .zones.fx{animation:ap-fin .5s ease both}
.ap .zones .wire.at::after{animation-iteration-count:infinite;animation-duration:1.4s}
.ap .runcap{text-align:center;margin-top:20px;font-size:16px;color:var(--ap-soft)}
.ap .runcap b{color:var(--ap-ink);font-weight:500}
@media (max-width:980px){.ap .cases{grid-template-columns:1fr}
.ap .bento{grid-template-columns:1fr 1fr}
.ap .tile.w2{grid-column:1/-1}
}
@media (max-width:760px){.ap .sec-h{grid-template-columns:1fr}
.ap .scene{padding:28px 16px}
.ap .house{padding:30px 12px 16px}
.ap .rail{grid-auto-flow:row;grid-auto-columns:auto}
.ap .rail li{display:grid;grid-template-columns:32px 1fr;column-gap:10px;padding:12px 14px 14px}
.ap .rail .num{margin:0;grid-row:span 2}
.ap .kflow{grid-template-columns:1fr;row-gap:44px}
.ap .kflow>.gap{display:none}
.ap .slot{min-height:0;height:100%}
.ap .node,.ap .stepc{min-width:0;width:100%}
.ap .leaves{grid-template-columns:1fr;gap:10px}
.ap .share{grid-template-columns:1fr}
.ap .srow{grid-template-columns:90px 1fr}
.ap .bento{grid-template-columns:1fr}
.ap .stop span{font-size:12.5px}
.ap .cmp{grid-template-columns:1fr}
.ap .zones,.ap .zones.two{grid-template-columns:1fr}
.ap .zones>.wire{margin:0 auto;width:2px;height:24px}
.ap .zones>.wire.at::after{animation-name:ap-wirev}
.ap .gantt{grid-template-columns:44px repeat(5,1fr);font-size:11px}
.ap .gantt .b{font-size:10.5px}
}
@media (prefers-reduced-motion:reduce){.ap *,.ap *::before,.ap *::after{animation:none!important;transition:none!important}}
[data-ap-seq] .ap-step{ transition:opacity .45s, translate .6s cubic-bezier(.34,1.56,.64,1), box-shadow .4s, border-color .4s, background-color .4s; }
[data-ap-seq].ap-live .ap-step:not(.ap-at){ opacity:.42; }
[data-ap-seq].ap-live .ap-step.ap-past{ opacity:.72; }
[data-ap-seq].ap-live .ap-step.ap-at{ translate:0 -6px; }
.ap-bar{ position:absolute; left:0; right:0; bottom:-1px; height:2px; border-radius:2px; background:var(--red, #b12025); transform:scaleX(0); transform-origin:left; pointer-events:none; opacity:0; }
[data-ap-seq].ap-live .ap-at > .ap-bar{ opacity:1; animation:ap-prog var(--ap-dur, 3s) linear forwards; }
[data-ap-seq].ap-hold .ap-at > .ap-bar{ animation:none; transform:scaleX(1); }
.svc-ring-wrap[data-ap-seq] .ap-step.ap-at{ translate:none; }
.svc-ring-wrap[data-ap-seq] .ap-bar{ display:none; }
.ap-pin{
  position:absolute; top:-12px; right:12px; z-index:3; font-style:normal; letter-spacing:0; font-size:12px; font-weight:500; line-height:1.2;
  background:var(--red, #b12025); color:#fff; padding:4px 10px; border-radius:99px; white-space:nowrap; pointer-events:none;
  opacity:0; transform:translateY(6px) scale(.8); transition:opacity .3s, transform .45s cubic-bezier(.34,1.56,.64,1);
  box-shadow:0 6px 16px rgba(177,32,37,.3);
}
.ap-at > .ap-pin{ opacity:1; transform:none; }
.ap-dots-row{ display:flex; align-items:flex-start; gap:12px; margin-top:22px; min-height:42px; }
.ap-dots{ display:flex; gap:5px; padding-top:7px; flex:none; }
.ap-dots button{ width:7px; height:7px; border-radius:99px; border:0; background:#d0d0d0; cursor:pointer; transition:all .3s; padding:0; }
.ap-dots button.ap-at{ width:20px; background:var(--red, #b12025); }
.ap-dots-row p{ font-size:max(14px, calc(var(--d) * 22)); line-height:1.42; color:#6f6f6f; margin:0; }
.ap-dots-row p b{ color:var(--ink, #212121); font-weight:500; }
.theme-dark .ap-dots button{ background:#3a3a40; }
.theme-dark .ap-dots-row p{ color:rgba(255,255,255,.62); }
.theme-dark .ap-dots-row p b{ color:#fff; }
@keyframes ap-prog{ to{ transform:scaleX(1); } }
@media (prefers-reduced-motion:reduce){
  [data-ap-seq] .ap-step, [data-ap-seq] .ap-step::after, .ap-pin{ transition:none !important; animation:none !important; }
}
.ap .scene{ background:transparent; isolation:isolate; }
.ap .scene::after{ content:""; position:absolute; inset:0; z-index:-1; background:var(--ap-scene); pointer-events:none; transform:translateZ(0); }
.ap .scene::before{ z-index:0; transform:translateZ(0); }
.ap .scene > .wires{ will-change:transform; transform:translateZ(0); }
.ap .scene > .glow{ will-change:transform; }
.ap .card[data-in], .ap .pin{ backface-visibility:hidden; }
[data-ap-all].ap-all-wait .ap-one{ opacity:0; translate:0 24px; }
[data-ap-all] .ap-one{ transition:opacity .55s var(--ease, ease) calc(var(--ap-i, 0) * 90ms), translate .7s cubic-bezier(.22,1,.36,1) calc(var(--ap-i, 0) * 90ms); }
[data-ap-all].ap-all-in .ap-one{ opacity:1; translate:none; }
[data-ap-all] .ap-one > .ap-pin{ position:absolute; opacity:0; transform:translateY(6px) scale(.8); transition-delay:calc(var(--ap-i, 0) * 90ms + .35s); }
[data-ap-all].ap-all-in .ap-one > .ap-pin{ opacity:1; transform:none; }
[data-ap-all] .ap-one{ cursor:default; }
@media (prefers-reduced-motion:reduce){ [data-ap-all] .ap-one, [data-ap-all] .ap-pin{ transition:none !important; opacity:1 !important; translate:none !important; transform:none !important; } }
.ap-intro{
  display:grid; grid-template-columns:minmax(0, .62fr) minmax(0, 1.38fr); column-gap:calc(var(--d) * 80); align-items:start;
  padding-top:calc(var(--d) * 50); margin-bottom:calc(var(--d) * 70); border-top:1px solid var(--line, #e5e5e5);
}
.ap-intro-tag{
  justify-self:start; display:inline-flex; align-items:center; gap:10px; padding:7px 14px 7px 10px; border-radius:999px;
  background:rgba(177,32,37,.08); color:var(--red, #b12025);
  font-weight:500; font-size:max(13px, calc(var(--d) * 20)); letter-spacing:-.01em; white-space:nowrap;
}
.ap-intro-tag svg{ width:max(16px, calc(var(--d) * 22)); height:auto; }
.ap-intro-title{ font-weight:700; font-size:max(24px, calc(var(--d) * 60)); line-height:1.05; letter-spacing:-.04em; color:var(--ink, #212121); text-wrap:balance; }
.ap-intro-title span{ color:var(--ink-mute, #9b9b9b); }
.ap-intro-text{ margin-top:calc(var(--d) * 26); max-width:calc(var(--d) * 1250); font-size:max(15px, calc(var(--d) * 26)); line-height:1.45; letter-spacing:-.015em; color:var(--ink-soft, #5c5c5c); }
.ap-intro-text b{ font-weight:500; color:var(--ink, #212121); }
.ap-intro-how{ display:flex; flex-wrap:wrap; gap:8px 22px; margin-top:calc(var(--d) * 26); font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-mute, #9b9b9b); }
.ap-intro-how span{ display:inline-flex; align-items:center; gap:8px; }
.ap-intro-how span::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--red, #b12025); }
.theme-dark .ap-intro{ border-top-color:rgba(255,255,255,.12); }
.theme-dark .ap-intro-tag{ background:rgba(229,57,53,.16); color:#ff8f92; }
.theme-dark .ap-intro-title{ color:#fff; }
.theme-dark .ap-intro-title span{ color:rgba(255,255,255,.42); }
.theme-dark .ap-intro-text{ color:rgba(255,255,255,.66); }
.theme-dark .ap-intro-text b{ color:#fff; }
.theme-dark .ap-intro-how{ color:rgba(255,255,255,.45); }
@media (max-width:1024px){
  .ap-intro{ grid-template-columns:1fr; row-gap:16px; padding-top:28px; margin-bottom:28px; }
  .ap-intro-title{ font-size:28px; }
  .ap-intro-text{ margin-top:12px; max-width:none; }
  .ap-intro-how{ margin-top:14px; }
}
.svc-pk[data-ap-seq]::before{ background:var(--line, #e5e5e5); }
.svc-pk[data-ap-seq] .svc-pk-item > .ap-bar{
  top:calc(var(--d) * 12); bottom:auto; left:calc(var(--d) * 26); right:0; height:2px; border-radius:0; z-index:1;
}
.svc-pk[data-ap-seq].ap-live .svc-pk-item.ap-past > .ap-bar{ opacity:1; transform:scaleX(1); animation:none; }
.svc-pk[data-ap-seq].ap-live .ap-step.ap-at{ translate:none; }
.svc-pk[data-ap-seq] .svc-pk-item::before{ transition:background-color .35s, box-shadow .35s; z-index:2; }
.svc-pk[data-ap-seq].ap-live .svc-pk-item.ap-past::before, .svc-pk[data-ap-seq].ap-live .svc-pk-item.ap-at::before{ background:var(--red); }
.svc-pk[data-ap-seq].ap-live .svc-pk-item.ap-at::before{ box-shadow:0 0 0 6px rgba(177,32,37,.14); }
.svc-pk[data-ap-seq] .svc-pk-item > .ap-pin{ top:calc(var(--d) * 12 - 36px); right:auto; left:0; z-index:3; }
@media (max-width:1024px){
  .svc-pk[data-ap-seq] .svc-pk-item > .ap-bar{ top:14px; bottom:-48px; left:6px; right:auto; width:2px; height:auto; transform:scaleY(0); transform-origin:top; }
  .svc-pk[data-ap-seq].ap-live .svc-pk-item.ap-past > .ap-bar{ transform:scaleY(1); }
  .svc-pk[data-ap-seq].ap-live .ap-at > .ap-bar{ animation-name:ap-progy; }
  .svc-pk[data-ap-seq] .svc-pk-item:last-child > .ap-bar{ display:none; }
  .svc-pk[data-ap-seq] .svc-pk-item > .ap-pin{ top:-3px; left:auto; right:0; }
}
@keyframes ap-progy{ to{ transform:scaleY(1); } }
.svc-ring-wrap[data-ap-seq].ap-live .ap-step:not(.ap-at), .svc-ring-wrap[data-ap-seq].ap-live .ap-step.ap-past{ opacity:1; }
.svc-ring-wrap[data-ap-seq] .svc-ring-q > .ap-pin{ display:none; }
.ap .tile .tile-d{ order:2; margin-top:6px; max-width:60ch; font-size:15px; line-height:1.48; color:var(--ap-soft); }
.ap .tile .mrail{ order:3; margin-top:12px; }
.cs-grid{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(16px, calc(var(--d) * 36)); }
.cs-card{ display:flex; flex-direction:column; min-width:0; color:var(--ink); }
.cs-card[hidden]{ display:none; }
.cs-card-media{
  position:relative; display:block; aspect-ratio:4 / 3; overflow:hidden; background:#111; color:#fff;
  border-radius:max(8px, calc(var(--d) * 12));
}
.cs-card-media img, .cs-hero-card img, .cs-feat-media img{
  position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover; object-position:var(--pos, 50% 50%);
  transition:transform 1s var(--ease), filter .6s var(--ease);
}
.cs-card:hover .cs-card-media img, .cs-card:focus-visible .cs-card-media img{ transform:scale(1.05); }
.cs-card-shade{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.52) 0%, rgba(0,0,0,.08) 42%, rgba(0,0,0,.62) 100%); }
.cs-card-num{
  position:absolute; left:max(16px, calc(var(--d) * 32)); top:max(12px, calc(var(--d) * 26));
  font-weight:700; font-size:max(40px, calc(var(--d) * 104)); line-height:1; letter-spacing:-.05em; white-space:nowrap;
}
.cs-card-numlabel{
  position:absolute; left:max(16px, calc(var(--d) * 32)); right:max(16px, calc(var(--d) * 32)); bottom:max(14px, calc(var(--d) * 28));
  font-weight:600; font-size:max(15px, calc(var(--d) * 26)); line-height:1.15; letter-spacing:-.03em; max-width:calc(var(--d) * 520);
}
.cs-card-body{ display:flex; flex-direction:column; flex:1; padding-top:max(14px, calc(var(--d) * 28)); }
.cs-card-who{ font-weight:500; font-size:max(13px, calc(var(--d) * 19)); color:var(--red); letter-spacing:-.01em; }
.cs-card-title{
  margin-top:max(6px, calc(var(--d) * 12)); font-weight:700; font-size:max(20px, calc(var(--d) * 38)); line-height:1.08; letter-spacing:-.04em;
  text-wrap:balance;
}
.cs-card-meta{
  display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:auto; padding-top:max(14px, calc(var(--d) * 24));
  font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-soft);
}
.cs-card-go{
  flex:none; display:grid; place-items:center; width:max(36px, calc(var(--d) * 52)); height:max(36px, calc(var(--d) * 52));
  border-radius:50%; background:var(--wash); color:var(--ink); transition:background-color .35s var(--ease), color .35s var(--ease);
}
.cs-card-go svg{ width:42%; transition:transform .35s var(--ease); }
.cs-card:hover .cs-card-go{ background:var(--red); color:#fff; }
.cs-card:hover .cs-card-go svg{ transform:translateX(3px); }
.cs-list-sec{ padding-top:0; }
.cs-feat{
  display:grid; grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr); overflow:hidden;
  background:var(--black); color:#fff; border-radius:max(14px, calc(var(--d) * 24));
}
.cs-feat-media{ position:relative; display:block; min-height:max(280px, calc(var(--d) * 860)); overflow:hidden; }
.cs-feat:hover .cs-feat-media img{ transform:scale(1.03); }
.cs-feat-num{
  position:absolute; left:max(20px, calc(var(--d) * 64)); bottom:max(16px, calc(var(--d) * 50));
  font-weight:700; font-size:max(64px, calc(var(--d) * 260)); line-height:.9; letter-spacing:-.06em;
}
.cs-feat-body{ display:flex; flex-direction:column; padding:max(24px, calc(var(--d) * 90)) max(22px, calc(var(--d) * 84)); }
.cs-feat-kicker{ font-weight:500; font-size:max(13px, calc(var(--d) * 20)); color:rgba(255,255,255,.62); }
.cs-feat-kicker::before{ content:""; display:inline-block; width:8px; height:8px; margin-right:10px; background:var(--red); border-radius:1px; vertical-align:middle; }
.cs-feat-title{ margin-top:max(14px, calc(var(--d) * 40)); font-weight:700; font-size:max(28px, calc(var(--d) * 80)); line-height:1; letter-spacing:-.05em; text-wrap:balance; }
.cs-feat-text{ margin-top:max(14px, calc(var(--d) * 36)); font-size:max(15px, calc(var(--d) * 26)); line-height:1.45; color:rgba(255,255,255,.72); max-width:calc(var(--d) * 760); }
.cs-feat-meta{
  display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:14px; margin-top:auto; padding-top:max(24px, calc(var(--d) * 60));
  font-size:max(13px, calc(var(--d) * 19)); color:rgba(255,255,255,.6);
}
.cs-feat-go{
  display:inline-flex; align-items:center; gap:10px; height:max(44px, calc(var(--d) * 60)); padding-inline:max(18px, calc(var(--d) * 30));
  border-radius:999px; background:#fff; color:var(--ink); font-size:max(14px, calc(var(--d) * 20));
}
.cs-feat-go svg{ width:14px; transition:transform .35s var(--ease); }
.cs-feat:hover .cs-feat-go svg{ transform:translateX(4px); }
.cs-list-head{
  display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:24px 40px;
  margin:calc(var(--d) * 200) 0 calc(var(--d) * 80); padding-top:calc(var(--d) * 36); border-top:1px solid var(--line);
}
.cs-list-head .svc-title{ flex-basis:100%; }
.cs-filters{ display:flex; flex-direction:column; align-items:flex-start; gap:10px; min-width:0; }
.cs-filter{ display:flex; flex-wrap:wrap; gap:6px; }
.cs-filter button{
  min-height:max(38px, calc(var(--d) * 52)); padding-inline:max(14px, calc(var(--d) * 26)); border-radius:999px;
  background:var(--wash); color:var(--ink-soft); font-weight:500; font-size:max(13px, calc(var(--d) * 19)); letter-spacing:-.02em; white-space:nowrap;
  transition:background-color .3s var(--ease), color .3s var(--ease);
}
.cs-filter button:hover{ color:var(--ink); background:#eee; }
.cs-filter button[aria-pressed="true"]{ background:var(--ink); color:#fff; }
.cs-filter--chips button[aria-pressed="true"]{ background:var(--red); }
.cs-grid .cs-card.is-enter{ animation:cs-in .55s var(--ease) both; animation-delay:calc(var(--k, 0) * 60ms); }
@keyframes cs-in{ from{ opacity:0; transform:translateY(16px); } to{ opacity:1; transform:none; } }
.cs-empty{ margin-top:24px; color:var(--ink-soft); }
.cs-empty button{ color:var(--red); text-decoration:underline; text-underline-offset:3px; }
.cs-kpis{ background:#fff; padding-bottom:calc(var(--d) * 60); }
.cs-kpi-row{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(16px, calc(var(--d) * 40)); }
.cs-kpi-row--hero{ grid-template-columns:repeat(4, minmax(0, 1fr)); margin-top:calc(var(--d) * 150); }
.cs-kpi{ position:relative; padding-top:max(16px, calc(var(--d) * 36)); }
.cs-kpi::before{ content:""; position:absolute; left:0; right:0; top:0; height:1px; background:var(--line); }
.cs-kpi::after{
  content:""; position:absolute; left:0; top:0; height:2px; width:100%; background:var(--red);
  transform:scaleX(0); transform-origin:left; transition:transform 1.1s var(--ease); transition-delay:calc(var(--k, 0) * 120ms);
}
.cs-kpi.is-on::after{ transform:none; }
.cs-kpi b{ display:block; font-weight:700; font-size:max(40px, calc(var(--d) * 120)); line-height:1; letter-spacing:-.055em; color:var(--ink); white-space:nowrap; font-variant-numeric:tabular-nums; }
.cs-kpi span{ display:block; margin-top:max(8px, calc(var(--d) * 18)); font-size:max(14px, calc(var(--d) * 22)); line-height:1.35; color:var(--ink-soft); max-width:calc(var(--d) * 460); }
.cs-kpi-row--hero b{ font-size:max(34px, calc(var(--d) * 96)); }
[data-cs-in].cs-js > *{ opacity:0; transform:translateY(18px); transition:opacity .7s var(--ease), transform .7s var(--ease); transition-delay:calc(var(--k, 0) * 110ms); }
[data-cs-in].cs-js > .is-on{ opacity:1; transform:none; }
.cs-hero-grid{
  margin-top:calc(var(--d) * 80); display:grid; grid-template-columns:minmax(0, 1.15fr) minmax(0, 1fr);
  column-gap:calc(var(--d) * 140); align-items:center;
}
.cs-hero-eyebrow{ margin-bottom:calc(var(--d) * 44); }
.cs-h1{ font-weight:700; font-size:calc(var(--d) * 112); line-height:.98; letter-spacing:-.05em; color:var(--ink); text-wrap:balance; }
.cs-hero-sub{ margin-top:calc(var(--d) * 56); max-width:calc(var(--d) * 1100); font-size:max(17px, calc(var(--d) * 31)); line-height:1.4; letter-spacing:-.02em; color:var(--ink-soft); }
.cs-hero-text .svc-actions{ margin-top:calc(var(--d) * 64); }
.cs-hero-test{ margin-top:calc(var(--d) * 40); }
.cs-hero-card{
  position:relative; aspect-ratio:4 / 4.3; overflow:hidden; border-radius:max(10px, calc(var(--d) * 16)); background:#111; color:#fff;
  animation:cs-card-in 1.1s var(--ease) both .15s;
}
.cs-hero-card img{ animation:cs-zoom 2.4s var(--ease) both; }
@keyframes cs-card-in{ from{ opacity:0; transform:translateY(30px) scale(.98); } to{ opacity:1; transform:none; } }
@keyframes cs-zoom{ from{ transform:scale(1.12); } to{ transform:none; } }
.cs-hero-card figcaption{ position:absolute; inset:0; display:flex; flex-direction:column; justify-content:space-between; padding:max(20px, calc(var(--d) * 48)); }
.cs-hero-num{ font-weight:700; font-size:max(64px, calc(var(--d) * 220)); line-height:.9; letter-spacing:-.06em; white-space:nowrap; font-variant-numeric:tabular-nums; }
.cs-hero-numlabel{ font-weight:600; font-size:max(18px, calc(var(--d) * 40)); line-height:1.1; letter-spacing:-.035em; max-width:calc(var(--d) * 640); }
.cs-hero-sq{ position:absolute; right:0; bottom:0; width:max(14px, calc(var(--d) * 26)); height:max(14px, calc(var(--d) * 26)); background:var(--red); }
.cs-facts{
  margin:calc(var(--d) * 140) 0 0; display:grid; grid-template-columns:repeat(auto-fit, minmax(max(150px, calc(var(--d) * 300)), 1fr));
  border-top:1px solid var(--line);
}
.cs-facts > div{ padding:max(14px, calc(var(--d) * 30)) max(14px, calc(var(--d) * 30)) max(14px, calc(var(--d) * 30)) 0; }
.cs-facts dt{ font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); letter-spacing:.02em; }
.cs-facts dd{ margin:6px 0 0; font-weight:500; font-size:max(15px, calc(var(--d) * 23)); line-height:1.3; letter-spacing:-.02em; color:var(--ink); }
.cs-facts dd a{ text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(177,32,37,.4); transition:color .2s; }
.cs-facts dd a:hover{ color:var(--red); }
.cs-probs{ margin-top:calc(var(--d) * 80); display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(12px, calc(var(--d) * 24)); }
.cs-prob{
  display:flex; flex-direction:column; gap:max(14px, calc(var(--d) * 40)); padding:max(18px, calc(var(--d) * 40));
  border-radius:max(10px, calc(var(--d) * 16)); background:var(--wash);
  font-weight:600; font-size:max(17px, calc(var(--d) * 32)); line-height:1.15; letter-spacing:-.035em;
}
.cs-prob-x{ position:relative; width:max(28px, calc(var(--d) * 44)); height:max(28px, calc(var(--d) * 44)); border-radius:50%; background:#fff; border:1.5px solid var(--red); }
.cs-prob-x::before, .cs-prob-x::after{ content:""; position:absolute; left:50%; top:50%; width:44%; height:1.5px; background:var(--red); transform:translate(-50%, -50%) rotate(45deg); }
.cs-prob-x::after{ transform:translate(-50%, -50%) rotate(-45deg); }
.cs-steps-wrap{ position:relative; }
.cs-steps{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:max(16px, calc(var(--d) * 40)); }
.cs-steps-line{ position:absolute; left:0; right:0; top:max(7px, calc(var(--d) * 11)); height:2px; background:var(--line); }
.cs-steps-line i{ position:absolute; inset:0; background:var(--red); transform:scaleX(var(--p, 1)); transform-origin:left; transition:transform .5s linear; }
.cs-step{ position:relative; padding-top:max(36px, calc(var(--d) * 70)); }
.cs-step-dot{
  position:absolute; left:0; top:0; width:max(16px, calc(var(--d) * 24)); height:max(16px, calc(var(--d) * 24)); border-radius:50%;
  background:#fff; border:2px solid var(--line); transition:border-color .4s var(--ease), background-color .4s var(--ease), transform .4s var(--ease);
}
.cs-step.is-on .cs-step-dot{ border-color:var(--red); background:var(--red); transform:scale(1.15); box-shadow:0 0 0 6px rgba(177,32,37,.12); }
.cs-step-num{ font-weight:700; font-size:max(14px, calc(var(--d) * 22)); color:var(--red); font-variant-numeric:tabular-nums; }
.cs-step-num span{ font-weight:500; color:var(--ink-soft); }
.cs-step-title{ margin-top:max(8px, calc(var(--d) * 18)); font-weight:700; font-size:max(20px, calc(var(--d) * 40)); line-height:1.05; letter-spacing:-.04em; }
.cs-step-text{ margin-top:max(8px, calc(var(--d) * 18)); font-size:max(15px, calc(var(--d) * 23)); line-height:1.45; color:var(--ink-soft); letter-spacing:-.01em; }
.cs-js .cs-step{ opacity:.35; transition:opacity .5s var(--ease); }
.cs-js .cs-step.is-on{ opacity:1; }
.cs-vn-head, .cs-vn-row{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) max(28px, calc(var(--d) * 60)) minmax(0, 1.2fr); align-items:center; column-gap:max(12px, calc(var(--d) * 30)); }
.cs-vn-head{ padding-bottom:max(10px, calc(var(--d) * 20)); font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); letter-spacing:.02em; }
.cs-vn-row{ padding-block:max(16px, calc(var(--d) * 36)); border-top:1px solid var(--line); }
.cs-vn-row:last-child{ border-bottom:1px solid var(--line); }
.cs-vn-label{ font-weight:500; font-size:max(15px, calc(var(--d) * 24)); color:var(--ink); }
.cs-vn-before{ position:relative; justify-self:start; font-size:max(16px, calc(var(--d) * 28)); color:var(--ink-mute); letter-spacing:-.02em; }
.cs-vn-before::after{ content:""; position:absolute; left:0; right:0; top:55%; height:1.5px; background:var(--ink-mute); transform:scaleX(0); transform-origin:left; transition:transform .6s var(--ease) .35s; }
.cs-vn-arrow{ color:var(--red); opacity:0; transform:translateX(-8px); transition:opacity .5s var(--ease) .6s, transform .5s var(--ease) .6s; }
.cs-vn-arrow svg{ width:max(16px, calc(var(--d) * 26)); }
.cs-vn-after{ font-weight:700; font-size:max(19px, calc(var(--d) * 40)); line-height:1.1; letter-spacing:-.04em; color:var(--red); opacity:0; transform:translateX(-10px); transition:opacity .6s var(--ease) .8s, transform .6s var(--ease) .8s; }
.cs-vn-row.is-on .cs-vn-before::after{ transform:none; }
.cs-vn-row.is-on .cs-vn-arrow, .cs-vn-row.is-on .cs-vn-after{ opacity:1; transform:none; }
[data-cs-in]:not(.cs-js) .cs-vn-before::after{ transform:none; }
[data-cs-in]:not(.cs-js) .cs-vn-arrow, [data-cs-in]:not(.cs-js) .cs-vn-after{ opacity:1; transform:none; }
.cs-quote{ background:var(--black); color:#fff; padding-block:calc(var(--d) * 220); overflow:hidden; position:relative; }
.cs-quote::before{ content:""; position:absolute; right:-6%; top:-20%; width:46%; aspect-ratio:1; border-radius:50%; border:calc(var(--d) * 70) solid rgba(177,32,37,.22); }
.cs-quote-in{ position:relative; display:grid; grid-template-columns:calc(var(--d) * 520) minmax(0, 1fr); column-gap:calc(var(--d) * 80); }
.cs-quote-mark{ width:max(44px, calc(var(--d) * 110)); color:var(--red); }
.cs-quote blockquote{ margin:0; }
.cs-quote blockquote p{ font-weight:700; font-size:max(26px, calc(var(--d) * 84)); line-height:1.08; letter-spacing:-.045em; text-wrap:balance; max-width:calc(var(--d) * 1600); }
.cs-quote figcaption{ grid-column:2; margin-top:calc(var(--d) * 70); display:flex; flex-direction:column; gap:4px; font-size:max(14px, calc(var(--d) * 22)); }
.cs-quote figcaption b{ font-weight:600; }
.cs-quote figcaption span{ color:rgba(255,255,255,.55); }
.cs-tools{ margin-top:calc(var(--d) * 70); display:flex; flex-wrap:wrap; gap:max(10px, calc(var(--d) * 18)); }
.cs-tool{
  display:inline-flex; align-items:center; gap:12px; height:max(52px, calc(var(--d) * 84)); padding:0 max(18px, calc(var(--d) * 32)) 0 max(10px, calc(var(--d) * 16));
  border:1px solid var(--line); border-radius:999px; font-weight:500; font-size:max(15px, calc(var(--d) * 24)); letter-spacing:-.02em;
}
.cs-tool img{ width:max(30px, calc(var(--d) * 50)); height:max(30px, calc(var(--d) * 50)); object-fit:contain; filter:grayscale(1); opacity:.85; transition:filter .3s, opacity .3s; }
.cs-tool:hover img{ filter:none; opacity:1; }
.cs-tool-mono{
  display:grid; place-items:center; width:max(30px, calc(var(--d) * 50)); height:max(30px, calc(var(--d) * 50)); border-radius:50%;
  background:var(--wash); font-weight:700; font-size:max(11px, calc(var(--d) * 17)); text-transform:uppercase; color:var(--ink-soft);
}
.cs-more-head{ display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:20px; padding-top:calc(var(--d) * 36); border-top:1px solid var(--line); margin-bottom:calc(var(--d) * 90); }
.cs-voices{ columns:3; column-gap:max(16px, calc(var(--d) * 32)); }
.cs-voice{
  break-inside:avoid; margin:0 0 max(16px, calc(var(--d) * 32)); padding:max(22px, calc(var(--d) * 56));
  background:#fff; border-radius:max(12px, calc(var(--d) * 20)); box-shadow:0 1px 2px rgba(0,0,0,.04), 0 18px 40px -26px rgba(0,0,0,.2);
}
.cs-voice blockquote{ margin:0; }
.cs-voice blockquote p{ font-weight:600; font-size:max(17px, calc(var(--d) * 32)); line-height:1.25; letter-spacing:-.03em; }
.cs-voice blockquote p::before{ content:"„"; color:var(--red); }
.cs-voice blockquote p::after{ content:"“"; color:var(--red); }
.cs-voice figcaption{ margin-top:max(16px, calc(var(--d) * 40)); display:flex; flex-direction:column; gap:2px; font-size:max(13px, calc(var(--d) * 19)); }
.cs-voice figcaption span{ color:var(--ink-mute); }
.cs-voice figcaption b{ font-weight:500; }
.cs-hit{ position:absolute; inset:0; z-index:4; border-radius:inherit; }
.cs-hit:focus-visible{ outline:2px solid #fff; outline-offset:-4px; }
.aus-card:has(.cs-hit){ cursor:pointer; }
.aus-card:has(.cs-hit) .aus-card-bg{ transition:transform .9s var(--ease); }
.aus-card:has(.cs-hit:hover) .aus-card-bg{ transform:scale(1.04); }
.cs-hit-label{
  position:absolute; right:max(10px, calc(var(--d) * 22)); bottom:max(10px, calc(var(--d) * 22)); z-index:3;
  display:inline-flex; align-items:center; gap:6px; padding:5px 10px; border-radius:999px; background:#fff; color:var(--ink);
  font-weight:500; font-size:max(12px, calc(var(--d) * 17)); opacity:0; transform:translateY(6px); transition:opacity .35s var(--ease), transform .35s var(--ease);
  pointer-events:none;
}
.cs-hit-label svg{ width:11px; }
.aus-card:hover .cs-hit-label, .aus-card:focus-within .cs-hit-label{ opacity:1; transform:none; }
.lst-slide .cs-hit{ z-index:1; }
.lst-slide:has(.cs-hit) .lst-stat{ pointer-events:none; }
@media (max-width:1024px){
  .cs-kpi span, .cs-hero-sub, .cs-card-numlabel, .cs-feat-text, .cs-hero-numlabel, .cs-quote blockquote p, .cs-step-text{ max-width:none; }
  .cs-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .cs-feat{ grid-template-columns:1fr; }
  .cs-feat-media{ min-height:260px; }
  .cs-list-head{ margin:56px 0 28px; padding-top:18px; }
  .cs-kpi-row--hero{ grid-template-columns:repeat(2, minmax(0, 1fr)); margin-top:48px; row-gap:28px; }
  .cs-hero-grid{ grid-template-columns:1fr; row-gap:36px; margin-top:32px; }
  .cs-h1{ font-size:52px; }
  .cs-hero-card{ aspect-ratio:4 / 3; }
  .cs-facts{ margin-top:40px; }
  .cs-probs{ grid-template-columns:1fr; margin-top:28px; }
  .cs-steps{ grid-template-columns:repeat(2, minmax(0, 1fr)); row-gap:36px; }
  .cs-steps-line{ display:none; }
  .cs-quote{ padding-block:72px; }
  .cs-quote-in{ grid-template-columns:1fr; row-gap:20px; }
  .cs-quote figcaption{ grid-column:1; margin-top:24px; }
  .cs-voices{ columns:2; }
  .cs-more-head{ margin-bottom:28px; padding-top:18px; }
  .cs-tools{ margin-top:24px; }
}
@media (max-width:640px){
  .cs-grid{ grid-template-columns:1fr; }
  .cs-filter{ flex-wrap:nowrap; overflow-x:auto; max-width:calc(100vw - 2 * var(--gutter)); padding-bottom:4px; scrollbar-width:none; }
  .cs-filter::-webkit-scrollbar{ display:none; }
  .cs-filters{ width:100%; }
  .cs-kpi-row{ grid-template-columns:1fr; gap:20px; }
  .cs-h1{ font-size:38px; line-height:1.02; }
  .cs-steps{ grid-template-columns:1fr; }
  .cs-vn-head{ display:none; }
  .cs-vn-row{ grid-template-columns:minmax(0, 1fr) 24px minmax(0, 1.2fr); row-gap:6px; }
  .cs-vn-label{ grid-column:1 / -1; font-size:13px; color:var(--ink-mute); }
  .cs-voices{ columns:1; }
  .cs-feat-num{ font-size:72px; }
}
@media (prefers-reduced-motion:reduce){
  .cs-hero-card, .cs-hero-card img{ animation:none; }
  .cs-kpi::after, .cs-steps-line i{ transition:none; }
}
.svc-hero{ isolation:isolate; }
.svc-hero > .wrap{ position:relative; z-index:1; }
.svc-art{
  position:absolute; right:0; top:max(76px, calc(var(--d) * 190)); width:62%; height:var(--ha-h, 70%);
  z-index:0; pointer-events:none; overflow:hidden; opacity:0; transition:opacity 1.2s var(--ease);
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 34%), linear-gradient(0deg, transparent 0, #000 16%);
          mask-image:linear-gradient(90deg, transparent 0, #000 34%), linear-gradient(0deg, transparent 0, #000 16%);
  -webkit-mask-composite:source-in; mask-composite:intersect;
}
.svc-art.is-on{ opacity:1; }
.svc-art canvas{ display:block; width:100%; height:100%; }
@media (max-width:640px){ .svc-art{ width:100%; top:56px; } .svc-art.is-on{ opacity:.7; } }
.pdx-sec{ padding:calc(var(--d) * 220) 0 calc(var(--d) * 230); border-top:1px solid var(--prd-line); }
.pdx-sec.prd-light{ border-top:0; }
.pdx-sec--alt{ background:var(--prd-bg-2); }
.pdx-sub{
  margin:calc(var(--d) * 150) 0 calc(var(--d) * 60);
  font-weight:700; font-size:max(22px, calc(var(--d) * 56)); line-height:1.05; letter-spacing:-.04em; color:#fff;
}
.pdx-sub em{ font-style:normal; color:var(--prd-faint); }
.prd-light .pdx-sub{ color:var(--ink); }
.prd-light .pdx-sub em{ color:var(--ink-mute); }
.pdx-note{ margin-top:calc(var(--d) * 60); font-size:max(13px, calc(var(--d) * 20)); line-height:1.45; color:var(--prd-faint); max-width:90ch; }
.prd-light .pdx-note{ color:var(--ink-soft); }
.pdx-note a{ text-decoration:underline; text-underline-offset:2px; }
.pdx-def{ display:grid; grid-template-columns:minmax(0, 1.25fr) minmax(0, 1fr); gap:calc(var(--d) * 120); align-items:start; }
.pdx-def-text{ font-weight:500; font-size:max(19px, calc(var(--d) * 44)); line-height:1.28; letter-spacing:-.03em; color:#fff; }
.pdx-def-text p + p{ margin-top:.8em; }
.pdx-def-text b{ font-weight:700; }
.pdx-def-text .pdx-mute{ color:var(--prd-mute); }
.pdx-pic{
  position:relative; padding:max(22px, calc(var(--d) * 56)); border-radius:var(--prd-radius);
  background:var(--prd-card); border:1px solid var(--prd-line-2);
}
.pdx-pic::before{ content:""; position:absolute; left:0; top:max(22px, calc(var(--d) * 56)); bottom:max(22px, calc(var(--d) * 56)); width:3px; background:var(--red); border-radius:2px; }
.pdx-pic-tag{ font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#ff8f92; }
.pdx-pic p{ margin-top:max(10px, calc(var(--d) * 22)); font-size:max(16px, calc(var(--d) * 30)); line-height:1.42; letter-spacing:-.015em; color:var(--prd-mute); }
.pdx-pic p b{ font-weight:500; color:#fff; }
.pdx-is{ display:grid; grid-template-columns:minmax(0, 1.6fr) minmax(0, 1fr); gap:max(14px, calc(var(--d) * 28)); margin-top:calc(var(--d) * 140); }
.pdx-is-col{ padding:max(20px, calc(var(--d) * 50)); border-radius:var(--prd-radius); background:var(--prd-card); border:1px solid var(--prd-line); }
.pdx-is-col--not{ background:transparent; border-style:dashed; border-color:var(--prd-line-2); }
.pdx-is-col h3{ font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--prd-faint); }
.pdx-is-col ul{ display:grid; gap:max(14px, calc(var(--d) * 30)); margin-top:max(16px, calc(var(--d) * 36)); }
.pdx-is-col li{ position:relative; padding-left:max(26px, calc(var(--d) * 46)); font-size:max(15px, calc(var(--d) * 25)); line-height:1.42; letter-spacing:-.01em; color:var(--prd-mute); }
.pdx-is-col li b{ display:block; margin-bottom:2px; font-weight:700; font-size:max(16px, calc(var(--d) * 29)); letter-spacing:-.025em; color:#fff; }
.pdx-is-col li::before{ 
  content:""; position:absolute; left:0; top:.3em; width:max(14px, calc(var(--d) * 22)); height:max(8px, calc(var(--d) * 12));
  border-left:2px solid var(--red); border-bottom:2px solid var(--red); transform:rotate(-45deg);
}
.pdx-is-col--not li::before{ 
  width:max(14px, calc(var(--d) * 22)); height:2px; top:.7em; border:0; background:var(--prd-faint); transform:rotate(45deg);
  box-shadow:none;
}
.pdx-is-col--not li::after{ content:""; position:absolute; left:0; top:.7em; width:max(14px, calc(var(--d) * 22)); height:2px; background:var(--prd-faint); transform:rotate(-45deg); }
.pdx-ex{ display:flex; flex-direction:column; gap:max(10px, calc(var(--d) * 18)); }
.pdx-ex-q{
  align-self:flex-end; max-width:92%; padding:max(10px, calc(var(--d) * 18)) max(14px, calc(var(--d) * 24));
  border-radius:max(12px, calc(var(--d) * 22)) max(12px, calc(var(--d) * 22)) 4px max(12px, calc(var(--d) * 22));
  background:#fff; color:var(--ink); font-size:max(14px, calc(var(--d) * 22)); line-height:1.35; letter-spacing:-.01em;
}
.pdx-ex-a{
  align-self:flex-start; max-width:96%; padding:max(10px, calc(var(--d) * 18)) max(14px, calc(var(--d) * 24));
  border-radius:max(12px, calc(var(--d) * 22)) max(12px, calc(var(--d) * 22)) max(12px, calc(var(--d) * 22)) 4px;
  background:rgba(255,255,255,.07); border:1px solid var(--prd-line-2);
  color:#fff; font-size:max(14px, calc(var(--d) * 22)); line-height:1.38; letter-spacing:-.01em;
}
.pdx-ex-src{ display:flex; flex-wrap:wrap; gap:6px; margin-top:max(8px, calc(var(--d) * 12)); }
.pdx-cross{
  display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap:max(12px, calc(var(--d) * 24));
  margin-top:calc(var(--d) * 70); padding-top:calc(var(--d) * 70); border-top:1px solid var(--prd-line);
}
.pdx-cross li{ font-size:max(14px, calc(var(--d) * 23)); line-height:1.4; letter-spacing:-.01em; color:var(--prd-mute); }
.pdx-cross li b{ display:block; margin-bottom:4px; font-weight:700; color:#fff; letter-spacing:-.02em; }
.pdx-cross-h{ margin-top:calc(var(--d) * 110); font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--prd-faint); }
.pdx-cases{ border-top:1px solid var(--prd-line-2); }
.pdx-case{
  display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.3fr) minmax(0, 1.2fr) minmax(0, .9fr); gap:calc(var(--d) * 60);
  align-items:baseline; padding:max(18px, calc(var(--d) * 40)) 0; border-bottom:1px solid var(--prd-line);
}
.pdx-case-who{ font-size:max(12px, calc(var(--d) * 19)); font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:#ff8f92; }
.pdx-case-what{ font-weight:700; font-size:max(17px, calc(var(--d) * 32)); line-height:1.2; letter-spacing:-.03em; color:#fff; }
.pdx-case-gain{ font-size:max(15px, calc(var(--d) * 26)); line-height:1.38; letter-spacing:-.01em; color:var(--prd-mute); }
.pdx-case-ref{ font-size:max(13px, calc(var(--d) * 20)); color:var(--prd-faint); }
.pdx-case-ref a{ color:var(--prd-mute); text-decoration:underline; text-underline-offset:3px; }
.pdx-case-ref a:hover{ color:#fff; }
.pdx-arch{
  padding:max(18px, calc(var(--d) * 56)); border-radius:var(--prd-radius);
  background:var(--prd-card); border:1px solid var(--prd-line);
}
.pdx-arch-label{ font-size:max(11px, calc(var(--d) * 17)); font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--prd-faint); }
.pdx-arch-uses{ display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:max(10px, calc(var(--d) * 24)); margin-top:max(10px, calc(var(--d) * 18)); }
.pdx-arch-use{
  position:relative; padding:max(12px, calc(var(--d) * 26)); border-radius:max(10px, calc(var(--d) * 18));
  border:1px solid var(--prd-line-2); background:var(--prd-card-2); text-align:center;
}
.pdx-arch-use b{ display:block; font-size:max(14px, calc(var(--d) * 26)); letter-spacing:-.02em; color:#fff; }
.pdx-arch-use span{ display:block; margin-top:3px; font-size:max(12px, calc(var(--d) * 19)); color:var(--prd-faint); }
.pdx-arch-use::after{ 
  content:""; position:absolute; left:50%; bottom:calc(-1 * max(17px, calc(var(--d) * 38))); width:2px; height:max(14px, calc(var(--d) * 32)); background:var(--prd-line-2);
}
.pdx-arch-engine{
  margin-top:max(18px, calc(var(--d) * 40)); padding:max(14px, calc(var(--d) * 40));
  border:2px solid var(--red); border-radius:max(12px, calc(var(--d) * 22)); background:rgba(177,32,37,.08);
}
.pdx-arch-engine > b{ display:block; font-size:max(16px, calc(var(--d) * 32)); letter-spacing:-.025em; color:#fff; }
.pdx-arch-engine > b span{ font-weight:500; color:var(--prd-mute); }
.pdx-arch-layer{ margin-top:max(12px, calc(var(--d) * 30)); }
.pdx-arch-row{ display:grid; grid-template-columns:repeat(var(--n, 4), minmax(0, 1fr)); gap:max(8px, calc(var(--d) * 20)); margin-top:max(6px, calc(var(--d) * 12)); }
.pdx-arch-row span{
  display:flex; align-items:center; justify-content:center; min-height:max(40px, calc(var(--d) * 74)); padding:6px 10px; text-align:center;
  border-radius:max(8px, calc(var(--d) * 14)); border:1px solid var(--prd-line-2); background:var(--prd-bg);
  font-size:max(13px, calc(var(--d) * 22)); line-height:1.2; color:#fff;
}
.pdx-arch-row--core span{ background:rgba(255,255,255,.06); }
.pdx-arch-env{
  margin-top:max(18px, calc(var(--d) * 40)); padding:max(14px, calc(var(--d) * 28)); text-align:center;
  border:1.5px dashed var(--prd-line-2); border-radius:max(10px, calc(var(--d) * 18));
  font-size:max(14px, calc(var(--d) * 23)); color:#fff;
}
.pdx-arch-env small{ display:block; margin-top:4px; font-size:max(12px, calc(var(--d) * 18)); color:var(--prd-faint); }
.pdx-blocks{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 28)); }
.pdx-blocks > div{ padding:max(20px, calc(var(--d) * 50)); border-radius:var(--prd-radius); background:var(--prd-card); border:1px solid var(--prd-line); }
.pdx-blocks h4{ font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#ff8f92; }
.pdx-blocks dl{ display:grid; gap:max(14px, calc(var(--d) * 30)); margin-top:max(14px, calc(var(--d) * 30)); }
.pdx-blocks dt{ font-weight:700; font-size:max(16px, calc(var(--d) * 29)); letter-spacing:-.025em; color:#fff; }
.pdx-blocks dd{ margin:4px 0 0; font-size:max(14px, calc(var(--d) * 24)); line-height:1.45; letter-spacing:-.01em; color:var(--prd-mute); }
.pdx-steps{ display:grid; grid-template-columns:repeat(var(--cols, 4), minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 28)); counter-reset:pdx; }
.pdx-steps li{
  counter-increment:pdx; position:relative; padding:max(18px, calc(var(--d) * 40)); padding-top:max(52px, calc(var(--d) * 110));
  border-radius:var(--prd-radius); background:var(--prd-card); border:1px solid var(--prd-line);
}
.pdx-steps li::before{
  content:counter(pdx); position:absolute; left:max(18px, calc(var(--d) * 40)); top:max(16px, calc(var(--d) * 36));
  display:grid; place-items:center; width:max(26px, calc(var(--d) * 50)); height:max(26px, calc(var(--d) * 50)); border-radius:50%;
  background:var(--red); color:#fff; font-weight:700; font-size:max(13px, calc(var(--d) * 21));
}
.pdx-steps li.pdx-step--human::before{ background:#fff; color:var(--ink); }
.pdx-steps b{ display:block; font-weight:700; font-size:max(16px, calc(var(--d) * 29)); letter-spacing:-.025em; color:#fff; }
.pdx-steps p{ margin-top:6px; font-size:max(14px, calc(var(--d) * 23)); line-height:1.42; letter-spacing:-.01em; color:var(--prd-mute); }
.pdx-steps-legend{ display:flex; flex-wrap:wrap; gap:18px; margin-top:max(14px, calc(var(--d) * 30)); font-size:max(13px, calc(var(--d) * 19)); color:var(--prd-faint); }
.pdx-steps-legend span::before{ content:""; display:inline-block; width:10px; height:10px; margin-right:8px; border-radius:50%; background:var(--red); vertical-align:0; }
.pdx-steps-legend span + span::before{ background:#fff; }
.pdx-split{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 28)); margin-top:calc(var(--d) * 110); }
.pdx-split > div{ padding-top:max(14px, calc(var(--d) * 30)); border-top:1px solid var(--prd-line-2); }
.pdx-split h3{ font-weight:700; font-size:max(18px, calc(var(--d) * 36)); letter-spacing:-.03em; color:#fff; }
.pdx-split ul{ display:grid; gap:max(10px, calc(var(--d) * 18)); margin-top:max(12px, calc(var(--d) * 26)); }
.pdx-split li{ position:relative; padding-left:22px; font-size:max(15px, calc(var(--d) * 25)); line-height:1.45; letter-spacing:-.01em; color:var(--prd-mute); }
.pdx-split li::before{ content:""; position:absolute; left:0; top:.6em; width:8px; height:8px; border-radius:2px; background:var(--red); }
.pdx-split p{ margin-top:max(12px, calc(var(--d) * 26)); font-size:max(15px, calc(var(--d) * 25)); line-height:1.45; color:var(--prd-mute); }
.prd-marks.prd-marks--5{ grid-template-columns:repeat(5, minmax(0, 1fr)); }
.prd-mark--key .prd-mark-kicker{ color:#fff; background:var(--red); padding:3px 10px; border-radius:999px; }
.pdx-key{
  margin-top:calc(var(--d) * 120); padding:max(22px, calc(var(--d) * 64)); border-radius:var(--prd-radius);
  background:var(--ink); color:#fff; display:grid; grid-template-columns:auto minmax(0, 1fr); gap:max(16px, calc(var(--d) * 50)); align-items:center;
}
.pdx-key svg{ width:max(44px, calc(var(--d) * 110)); height:auto; color:var(--red); }
.pdx-key p{ font-weight:500; font-size:max(17px, calc(var(--d) * 36)); line-height:1.3; letter-spacing:-.025em; }
.pdx-key p b{ font-weight:700; }
.pdx-key p span{ color:rgba(255,255,255,.66); }
.prd-stage .prd-tags li.pdx-tag-key{ background:var(--red); border-color:var(--red); color:#fff; }
.prd-stage .prd-tags li.pdx-tag-key::before{ background:#fff; }
.pdx-story{ max-width:calc(var(--d) * 1500); margin-top:calc(var(--d) * 50); font-size:max(16px, calc(var(--d) * 29)); line-height:1.45; letter-spacing:-.015em; color:var(--prd-mute); }
.pdx-story b{ font-weight:500; color:#fff; }
.prd-day-line.pdx-day7{ grid-template-columns:repeat(4, minmax(0, 1fr)); }
.pdx-day7 .prd-day-time{ text-transform:none; }
.pdx-faq{ padding:calc(var(--d) * 220) 0 calc(var(--d) * 230); }
.pdx-faq .svc-faq-aside .prd-h2{ margin-top:calc(var(--d) * 40); font-size:calc(var(--d) * 90); }
.pdx-faq .svc-faq-aside .prd-intro{ margin-top:calc(var(--d) * 40); font-size:max(15px, calc(var(--d) * 26)); }
@media (max-width:1024px){
  .pdx-sec, .pdx-faq{ padding:96px 0; }
  .pdx-sub{ margin:64px 0 28px; font-size:28px; }
  .pdx-def{ grid-template-columns:1fr; gap:32px; }
  .pdx-def-text{ font-size:22px; }
  .pdx-is{ grid-template-columns:1fr; margin-top:48px; }
  .pdx-cross{ grid-template-columns:repeat(2, minmax(0, 1fr)); margin-top:36px; padding-top:36px; }
  .pdx-cross-h{ margin-top:48px; }
  .pdx-case{ grid-template-columns:minmax(0, 1fr) minmax(0, 1.4fr); gap:6px 24px; }
  .pdx-case-gain{ grid-column:2; }
  .pdx-case-ref{ grid-column:2; }
  .pdx-arch-uses{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .pdx-arch-use::after{ display:none; }
  .pdx-blocks{ grid-template-columns:1fr; }
  .pdx-steps{ --cols:2 !important; }
  .pdx-split{ grid-template-columns:1fr; margin-top:48px; gap:32px; }
  .prd-marks.prd-marks--5{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
  .pdx-key{ margin-top:48px; }
  .pdx-story{ margin-top:22px; }
  .prd-day-line.pdx-day7{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .pdx-faq .svc-faq-aside .prd-h2{ font-size:40px; }
}
@media (max-width:640px){
  .pdx-sec, .pdx-faq{ padding:72px 0; }
  .pdx-def-text{ font-size:19px; }
  .pdx-cross{ grid-template-columns:1fr; }
  .pdx-case{ grid-template-columns:1fr; gap:6px; }
  .pdx-case-gain, .pdx-case-ref{ grid-column:auto; }
  .pdx-arch{ padding:14px; }
  .pdx-arch-uses{ grid-template-columns:1fr 1fr; }
  .pdx-arch-row{ grid-template-columns:1fr 1fr !important; }
  .pdx-steps{ --cols:1 !important; }
  .prd-marks.prd-marks--5{ grid-template-columns:1fr 1fr; }
  .pdx-key{ grid-template-columns:1fr; }
  .prd-day-line.pdx-day7{ grid-template-columns:1fr; }
  .pdx-faq .svc-faq-aside .prd-h2{ font-size:32px; }
}
body.theme-dark{
  --prd-bg:#0a0a0b;
  --prd-bg-2:#101012;
  --prd-card:#141416;
  --prd-card-2:#1a1a1d;
  --prd-line:rgba(255,255,255,.09);
  --prd-line-2:rgba(255,255,255,.16);
  --prd-text:#f5f5f5;
  --prd-mute:rgba(255,255,255,.6);
  --prd-faint:rgba(255,255,255,.38);
  --prd-ok:#e9f1ea;
  --prd-radius:max(14px, calc(var(--d) * 28));
  background:var(--prd-bg);
}
.theme-dark .hdr-logo img{ transition:filter .35s var(--ease); }
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-logo img{ filter:brightness(0) invert(1); }
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-link{ color:#fff; }
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-link:hover,
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-item.is-open .hdr-link{ color:rgba(255,255,255,.66); }
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-actions .btn--outline{ --fill:#fff; border-color:rgba(255,255,255,.75); color:#fff; }
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-actions .btn--outline:hover{ border-color:#fff; color:var(--ink); }   
.theme-dark .hdr:not(.is-stuck):not(.is-menu) .hdr-burger span{ background:#fff; }
.prd-sec{ position:relative; background:var(--prd-bg); color:var(--prd-text); }
.prd-light{ background:#f4f4f2; color:var(--ink); }
.prd-h2{
  font-weight:700; font-size:calc(var(--d) * 110); line-height:.98; letter-spacing:-.045em;
}
.prd-h2 em{ font-style:normal; color:var(--prd-faint); }
.prd-light .prd-h2 em{ color:var(--ink-mute); }
.prd-intro{
  font-weight:500; font-size:max(16px, calc(var(--d) * 32)); line-height:1.3; letter-spacing:-.025em; color:var(--prd-mute);
}
.prd-light .prd-intro{ color:var(--ink-soft); }
.prd-head{
  display:grid; grid-template-columns:minmax(0, 1.5fr) minmax(0, 1fr); gap:calc(var(--d) * 140); align-items:end;
}
.prd-head .eyebrow{ margin-bottom:calc(var(--d) * 44); }
.prd-src{ font-size:13px; color:var(--prd-faint); }
.prd-src a{ text-decoration:underline; text-underline-offset:2px; }
.prd-src a:hover{ color:#fff; }
.prd-stage{
  position:relative; overflow:hidden; isolation:isolate;
  padding-top:calc(var(--d) * 270); padding-bottom:calc(var(--d) * 200);
  background:var(--prd-bg); color:var(--prd-text);
}
.prd-stage-art{ position:absolute; inset:0; z-index:-1; pointer-events:none; }
.prd-stage-art::before{
  content:""; position:absolute; right:calc(var(--d) * -500); top:calc(var(--d) * 300);
  width:calc(var(--d) * 2000); height:calc(var(--d) * 1700);
  background:radial-gradient(closest-side, rgba(177,32,37,.30), rgba(177,32,37,0));
}
.prd-stage-art::after{ 
  content:""; position:absolute; inset:0;
  background-image:linear-gradient(var(--prd-line) 1px, transparent 1px), linear-gradient(90deg, var(--prd-line) 1px, transparent 1px);
  background-size:calc(var(--d) * 160) calc(var(--d) * 160);
  -webkit-mask-image:radial-gradient(ellipse 70% 60% at 70% 55%, #000, transparent 75%);
          mask-image:radial-gradient(ellipse 70% 60% at 70% 55%, #000, transparent 75%);
  opacity:.45;
}
.prd-rings{
  position:absolute; right:calc(var(--d) * -260); top:calc(var(--d) * 420);
  width:calc(var(--d) * 1900); height:calc(var(--d) * 1900); max-width:none; overflow:visible;
}
.prd-rings circle{ fill:none; stroke:rgba(255,255,255,.07); stroke-width:1; vector-effect:non-scaling-stroke; }
.prd-rings .prd-rings-arc{ stroke:var(--red); stroke-width:2; stroke-linecap:round; opacity:.9; transform-origin:50% 50%; animation:prd-spin 24s linear infinite; }
@keyframes prd-spin{ to{ transform:rotate(360deg); } }
.prd-stage-inner{ position:relative; }
.prd-crumbs ol{ display:flex; flex-wrap:wrap; gap:6px 10px; font-size:max(13px, calc(var(--d) * 22)); color:var(--prd-faint); letter-spacing:-.01em; }
.prd-crumbs li + li::before{ content:"/"; margin-right:10px; color:var(--prd-line-2); }
.prd-crumbs a:hover{ color:#fff; }
.prd-crumbs [aria-current]{ color:var(--prd-mute); }
.prd-kicker{ margin-top:calc(var(--d) * 64); }
.prd-name{
  margin-top:calc(var(--d) * 26); margin-left:calc(var(--d) * -10);
  font-weight:700; font-size:calc(var(--d) * 280); line-height:.88; letter-spacing:-.055em; color:#fff;
  overflow-wrap:anywhere;
}
.prd-name em{ font-style:normal; color:var(--red); }
.prd-stage-grid{
  display:grid; grid-template-columns:calc(var(--d) * 800) minmax(0, 1fr); gap:calc(var(--d) * 150);
  align-items:start; margin-top:calc(var(--d) * 110);
}
.prd-lead{
  font-weight:500; font-size:calc(var(--d) * 50); line-height:1.1; letter-spacing:-.035em; color:#fff;
}
.prd-lead span{ color:var(--prd-mute); }
.prd-ctas{ display:flex; flex-wrap:wrap; gap:calc(var(--d) * 22); margin-top:calc(var(--d) * 64); }
.prd-ctas .btn svg{ width:max(12px, calc(var(--d) * 18)); }
.prd-tags{ display:flex; flex-wrap:wrap; gap:10px; margin-top:calc(var(--d) * 90); }
.prd-tags li{
  display:inline-flex; align-items:center; gap:8px; min-height:max(30px, calc(var(--d) * 46)); padding:0 max(12px, calc(var(--d) * 20));
  border:1px solid var(--prd-line-2); border-radius:999px;
  font-size:max(13px, calc(var(--d) * 21)); color:var(--prd-mute); letter-spacing:-.01em;
}
.prd-tags li::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--red); }
.prd-in{ animation:prd-up .9s var(--ease) both; }
.prd-name.prd-in{ animation-delay:.05s; }
.prd-stage-copy.prd-in{ animation-delay:.18s; }
.prd-demo.prd-in{ animation-delay:.3s; }
@keyframes prd-up{ from{ opacity:0; transform:translateY(30px); } to{ opacity:1; transform:none; } }
.prd-demo{ position:relative; min-width:0; }
.prd-demo:not(.is-playing) *, .prd-demo:not(.is-playing) *::before, .prd-demo:not(.is-playing) *::after{ animation-play-state:paused !important; }
.prd-screen{
  position:relative; overflow:hidden;
  border:1px solid var(--prd-line-2); border-radius:var(--prd-radius);
  background:linear-gradient(180deg, #19191c, #0f0f11 70%);
  box-shadow:0 calc(var(--d) * 60) calc(var(--d) * 140) rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.06);
}
.prd-screen-bar{
  display:flex; align-items:center; gap:max(10px, calc(var(--d) * 18));
  min-height:max(44px, calc(var(--d) * 72)); padding:0 max(14px, calc(var(--d) * 28));
  border-bottom:1px solid var(--prd-line);
}
.prd-screen-dots{ display:flex; gap:6px; }
.prd-screen-dots i{ width:max(8px, calc(var(--d) * 13)); height:max(8px, calc(var(--d) * 13)); border-radius:50%; background:rgba(255,255,255,.14); }
.prd-screen-title{ flex:1; min-width:0; font-size:max(13px, calc(var(--d) * 21)); color:var(--prd-faint); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.prd-live{
  display:inline-flex; align-items:center; gap:7px;
  font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--prd-mute);
}
.prd-live::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--red); box-shadow:0 0 0 0 rgba(177,32,37,.6); }
.prd-demo.is-playing .prd-live::before{ animation:prd-pulse 1.6s ease-out infinite; }
@keyframes prd-pulse{ 0%{ box-shadow:0 0 0 0 rgba(229,57,53,.55); } 100%{ box-shadow:0 0 0 8px rgba(229,57,53,0); } }
.prd-demo-toggle{
  display:inline-grid; place-items:center; width:max(44px, calc(var(--d) * 56)); height:max(44px, calc(var(--d) * 56));
  flex:none; border-radius:50%; border:1px solid var(--prd-line-2); color:#fff;
  transition:background-color .2s, border-color .2s;
}
.prd-demo-toggle:hover{ background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.4); }
.prd-demo-toggle svg{ width:40%; height:auto; }
.prd-demo-toggle .prd-ico-play{ display:none; }
.prd-demo-toggle[aria-pressed="true"] .prd-ico-play{ display:block; }
.prd-demo-toggle[aria-pressed="true"] .prd-ico-pause{ display:none; }
.prd-screen-body{ padding:max(16px, calc(var(--d) * 40)); }
.prd-demo-foot{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:max(10px, calc(var(--d) * 20)); padding-inline:4px; }
.prd-demo-note{ font-size:13px; color:var(--prd-faint); }
.prd-problem{ padding:calc(var(--d) * 250) 0 calc(var(--d) * 230); border-top:1px solid var(--prd-line); }
.prd-problem-line{
  max-width:calc(var(--d) * 2050);
  font-weight:700; font-size:calc(var(--d) * 150); line-height:.98; letter-spacing:-.05em; color:#fff;
}
.prd-problem-line em{ font-style:normal; color:var(--red); }
.prd-problem-line span{ color:var(--prd-faint); }
.prd-who{
  display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:calc(var(--d) * 60);
  margin-top:calc(var(--d) * 170);
}
.prd-who li{ padding-top:calc(var(--d) * 40); border-top:1px solid var(--prd-line-2); display:flex; flex-direction:column; gap:max(10px, calc(var(--d) * 18)); }
.prd-who h3{ font-weight:700; font-size:max(18px, calc(var(--d) * 38)); line-height:1.1; letter-spacing:-.035em; color:#fff; }
.prd-who h3::before{ content:""; display:inline-block; width:max(8px, calc(var(--d) * 14)); height:max(8px, calc(var(--d) * 14)); margin-right:max(8px, calc(var(--d) * 16)); border-radius:2px; background:var(--red); vertical-align:.12em; }
.prd-who p{ font-size:max(15px, calc(var(--d) * 26)); line-height:1.4; color:var(--prd-mute); letter-spacing:-.01em; }
.prd-who .prd-src{ margin-top:auto; }
.prd-bento{ padding:calc(var(--d) * 220) 0 calc(var(--d) * 240); background:var(--prd-bg-2); }
.prd-grid{
  display:grid; grid-template-columns:repeat(6, minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 28));
  margin-top:calc(var(--d) * 120);
}
.prd-tile{
  grid-column:span 2; display:flex; flex-direction:column; min-width:0;
  padding:max(14px, calc(var(--d) * 34));
  background:var(--prd-card); border:1px solid var(--prd-line); border-radius:var(--prd-radius);
  transition:border-color .3s var(--ease), transform .3s var(--ease);
}
.prd-tile:hover{ border-color:var(--prd-line-2); }
.prd-tile--wide{ grid-column:span 4; }
.prd-tile--half{ grid-column:span 3; }
.prd-tile-screen{
  position:relative; overflow:hidden; flex:1;
  min-height:calc(var(--d) * 440); padding:max(14px, calc(var(--d) * 30));
  background:var(--prd-card-2); border:1px solid var(--prd-line); border-radius:max(10px, calc(var(--d) * 18));
  display:flex; flex-direction:column; justify-content:center;
}
.prd-tile-body{ padding:max(18px, calc(var(--d) * 44)) max(4px, calc(var(--d) * 12)) max(4px, calc(var(--d) * 8)); }
.prd-tile h3{ font-weight:700; font-size:max(19px, calc(var(--d) * 40)); line-height:1.1; letter-spacing:-.035em; color:#fff; }
.prd-tile p{ margin-top:max(8px, calc(var(--d) * 14)); font-size:max(15px, calc(var(--d) * 25)); line-height:1.42; color:var(--prd-mute); letter-spacing:-.01em; max-width:48ch; }
.prd-mini-head{ display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:max(12px, calc(var(--d) * 22)); }
.prd-mini-title{ font-weight:700; font-size:max(13px, calc(var(--d) * 22)); color:#fff; letter-spacing:-.01em; }
.prd-mini-sub{ font-size:max(12px, calc(var(--d) * 17)); color:var(--prd-faint); }
.prd-chip{
  display:inline-flex; align-items:center; gap:6px; min-height:max(24px, calc(var(--d) * 36)); padding:0 max(10px, calc(var(--d) * 16));
  border-radius:999px; background:rgba(255,255,255,.08); font-size:max(12px, calc(var(--d) * 18)); color:var(--prd-mute); white-space:nowrap;
}
.prd-chip--red{ background:rgba(177,32,37,.22); color:#ff9a9c; }
.prd-run{ padding:calc(var(--d) * 230) 0 calc(var(--d) * 240); border-top:1px solid var(--prd-line); }
.prd-seg{
  display:inline-flex; flex-wrap:wrap; gap:4px; margin-top:calc(var(--d) * 110); padding:5px;
  border:1px solid var(--prd-line-2); border-radius:999px; background:rgba(255,255,255,.03);
}
.prd-seg [role="tab"]{
  min-height:max(44px, calc(var(--d) * 64)); padding:0 max(18px, calc(var(--d) * 36)); border-radius:999px;
  font-size:max(15px, calc(var(--d) * 23)); color:var(--prd-mute); letter-spacing:-.02em;
  transition:background-color .25s var(--ease), color .25s var(--ease);
}
.prd-seg [role="tab"]:hover{ color:#fff; }
.prd-seg [role="tab"][aria-selected="true"]{ background:#fff; color:var(--ink); }
.prd-run-panel{
  display:grid; grid-template-columns:minmax(0, 1.45fr) minmax(0, 1fr); gap:calc(var(--d) * 110); align-items:center;
  margin-top:calc(var(--d) * 70);
}
.prd-run-panel[hidden]{ display:none; }
.prd-run-panel:not([hidden]){ animation:prd-fade .45s var(--ease) both; }
@keyframes prd-fade{ from{ opacity:0; transform:translateY(10px); } to{ opacity:1; transform:none; } }
.prd-run-facts{ display:grid; gap:0; }
.prd-run-facts div{ padding:max(14px, calc(var(--d) * 30)) 0; border-bottom:1px solid var(--prd-line); }
.prd-run-facts div:first-child{ border-top:1px solid var(--prd-line); }
.prd-run-facts dt{ font-size:max(13px, calc(var(--d) * 20)); font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--prd-faint); }
.prd-run-facts dd{ margin:6px 0 0; font-size:max(16px, calc(var(--d) * 30)); line-height:1.3; letter-spacing:-.02em; color:#fff; }
.prd-run-promise{
  display:flex; align-items:center; gap:max(12px, calc(var(--d) * 22)); margin-top:calc(var(--d) * 90);
  font-weight:700; font-size:max(20px, calc(var(--d) * 52)); line-height:1.1; letter-spacing:-.04em; color:#fff;
}
.prd-run-promise svg{ flex:none; width:max(28px, calc(var(--d) * 60)); height:auto; color:var(--red); }
.prd-map{
  position:relative; display:flex; align-items:stretch; gap:max(12px, calc(var(--d) * 26));
  padding:max(16px, calc(var(--d) * 40)); border-radius:var(--prd-radius);
  background:var(--prd-card); border:1px solid var(--prd-line);
}
.prd-map-src{
  flex:none; align-self:center; width:max(88px, calc(var(--d) * 190)); text-align:center;
  font-size:max(13px, calc(var(--d) * 20)); line-height:1.3; color:var(--prd-mute);
}
.prd-map-src svg{ width:max(26px, calc(var(--d) * 48)); height:auto; margin:0 auto 8px; color:#fff; }
.prd-map-arrow{ flex:none; align-self:center; width:max(18px, calc(var(--d) * 40)); height:2px; background:var(--prd-line-2); position:relative; }
.prd-map-arrow::after{ content:""; position:absolute; right:-1px; top:-4px; border:5px solid transparent; border-left-color:var(--prd-line-2); border-right:0; }
.prd-map-arrow--label{ width:max(60px, calc(var(--d) * 120)); }
.prd-map-arrow span{ position:absolute; left:50%; bottom:8px; transform:translateX(-50%); white-space:nowrap; font-size:12px; color:var(--prd-faint); }
.prd-zones{ flex:1; min-width:0; display:flex; gap:max(12px, calc(var(--d) * 24)); align-items:stretch; }
.prd-zone{
  flex:1; min-width:0; position:relative;
  padding:max(30px, calc(var(--d) * 64)) max(12px, calc(var(--d) * 26)) max(14px, calc(var(--d) * 30));
  border:1.5px dashed rgba(177,32,37,.8); border-radius:max(10px, calc(var(--d) * 20));
  background:rgba(177,32,37,.05);
}
.prd-zone--plain{ border-color:var(--prd-line-2); background:transparent; }
.prd-zone-label{
  position:absolute; left:max(12px, calc(var(--d) * 26)); top:max(9px, calc(var(--d) * 20));
  font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:#ff8f92;
}
.prd-zone--plain .prd-zone-label{ color:var(--prd-faint); }
.prd-flow{ display:flex; flex-direction:column; gap:max(16px, calc(var(--d) * 30)); }
.prd-node{
  position:relative; display:flex; align-items:center; gap:10px;
  min-height:max(44px, calc(var(--d) * 76)); padding:0 max(12px, calc(var(--d) * 22));
  border-radius:max(8px, calc(var(--d) * 14)); background:var(--prd-card-2); border:1px solid var(--prd-line-2);
  font-size:max(14px, calc(var(--d) * 22)); color:#fff; letter-spacing:-.01em;
}
.prd-flow .prd-node + .prd-node::before{ 
  content:""; position:absolute; left:max(22px, calc(var(--d) * 40)); top:calc(-1 * max(16px, calc(var(--d) * 30)));
  width:2px; height:max(16px, calc(var(--d) * 30)); background:var(--prd-line-2);
}
.prd-node small{ margin-left:auto; font-size:12px; color:var(--prd-faint); white-space:nowrap; }
.prd-node--key{ background:var(--red); border-color:var(--red); font-weight:700; }
.prd-node--key small{ color:rgba(255,255,255,.75); }
.prd-trust{ padding:calc(var(--d) * 220) 0 calc(var(--d) * 170); }
.prd-trust .prd-head{ align-items:start; }
.prd-trust-text p + p{ margin-top:1em; }
.prd-marks{
  display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:calc(var(--d) * 40);
  margin-top:calc(var(--d) * 170); padding-top:calc(var(--d) * 100); border-top:1px solid var(--line);
}
.prd-mark{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:max(10px, calc(var(--d) * 22)); }
.prd-mark svg{ width:max(72px, calc(var(--d) * 170)); height:auto; color:var(--ink); }
.prd-mark h3{ font-weight:700; font-size:max(17px, calc(var(--d) * 34)); letter-spacing:-.03em; }
.prd-mark p{ max-width:26ch; font-size:max(14px, calc(var(--d) * 22)); line-height:1.4; color:var(--ink-soft); }
.prd-mark-kicker{ font-size:max(12px, calc(var(--d) * 17)); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--red); }
.prd-trust-note{ margin-top:calc(var(--d) * 110); font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-soft); text-align:center; }
.prd-facts{ padding:calc(var(--d) * 120) 0 calc(var(--d) * 240); }
.prd-facts-grid{ display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.4fr); gap:calc(var(--d) * 140); padding-top:calc(var(--d) * 150); border-top:1px solid var(--line); }
.prd-facts-aside .prd-h2{ margin-top:calc(var(--d) * 44); }
.prd-facts-aside .prd-intro{ margin-top:calc(var(--d) * 40); }
.prd-table{ display:grid; }
.prd-table div{
  display:grid; grid-template-columns:minmax(0, .7fr) minmax(0, 1.3fr); gap:24px;
  padding:max(16px, calc(var(--d) * 34)) 0; border-bottom:1px solid var(--line);
}
.prd-table div:first-child{ border-top:1px solid var(--ink); }
.prd-table dt{ font-weight:700; font-size:max(15px, calc(var(--d) * 26)); letter-spacing:-.02em; }
.prd-table dd{ margin:0; font-size:max(15px, calc(var(--d) * 26)); line-height:1.4; color:var(--ink-soft); letter-spacing:-.01em; }
.prd-ask{ 
  display:inline-block; margin-left:6px; padding:1px 9px; border-radius:999px; border:1px solid var(--line);
  font-size:13px; color:var(--ink-soft); white-space:nowrap; vertical-align:.1em;
}
.prd-ask--solo{ margin-left:0; }
.prd-choice{ padding:calc(var(--d) * 230) 0 calc(var(--d) * 250); }
.prd-choice .eyebrow{ margin-bottom:calc(var(--d) * 44); }
.prd-choice .prd-h2{ max-width:calc(var(--d) * 1500); }
.prd-ways{ display:grid; grid-template-columns:minmax(0, 1.2fr) minmax(0, 1fr); gap:max(14px, calc(var(--d) * 28)); margin-top:calc(var(--d) * 110); }
.prd-way{
  position:relative; overflow:hidden; isolation:isolate; display:flex; flex-direction:column; gap:max(14px, calc(var(--d) * 26));
  min-height:calc(var(--d) * 680); padding:max(24px, calc(var(--d) * 64));
  border-radius:var(--prd-radius); border:1px solid var(--prd-line-2); background:var(--prd-card);
}
.prd-way--main{ border-color:transparent; background:var(--red); }
.prd-way-bg{ position:absolute; inset:0; z-index:-3; width:100%; height:100%; object-fit:cover; opacity:.55; mix-blend-mode:luminosity; }
.prd-way--main::before{ 
  content:""; position:absolute; z-index:-1; right:calc(var(--d) * -380); top:50%;
  width:calc(var(--d) * 900); height:calc(var(--d) * 900); margin-top:calc(var(--d) * -450);
  border-radius:50%; border:calc(var(--d) * 90) solid rgba(255,255,255,.13);
}
.prd-way--main::after{ content:""; position:absolute; inset:0; z-index:-2; background:linear-gradient(160deg, rgba(177,32,37,.1), rgba(120,14,18,.85)); }
.prd-way-tag{ font-size:max(13px, calc(var(--d) * 20)); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.72); }
.prd-way h3{ max-width:18ch; font-weight:700; font-size:max(28px, calc(var(--d) * 76)); line-height:1; letter-spacing:-.045em; color:#fff; }
.prd-way p{ max-width:40ch; font-size:max(15px, calc(var(--d) * 27)); line-height:1.4; color:rgba(255,255,255,.78); }
.prd-way .btn{ margin-top:auto; align-self:flex-start; }
.prd-way .btn svg{ width:max(12px, calc(var(--d) * 18)); }
@media (max-width:1024px){
  .prd-h2{ font-size:44px; }
  .prd-head{ grid-template-columns:1fr; gap:22px; align-items:start; }
  .prd-head .eyebrow{ margin-bottom:22px; }
  .prd-intro{ max-width:60ch; letter-spacing:-.015em; }
  .prd-facts-aside .prd-h2{ margin-top:22px; }
  .prd-facts-aside .prd-intro{ margin-top:18px; }
  .prd-choice .eyebrow{ margin-bottom:22px; }
  .prd-stage{ padding-top:calc(72px + 56px); padding-bottom:72px; }
  .prd-rings{ --s:900px; width:var(--s); height:var(--s); right:-360px; top:auto; bottom:-260px; }
  .prd-stage-art::before{ width:900px; height:900px; right:-300px; top:auto; bottom:-200px; }
  .prd-stage-art::after{ background-size:80px 80px; }
  .prd-kicker{ margin-top:30px; }
  .prd-name{ margin-top:14px; margin-left:-3px; font-size:112px; }
  .prd-stage-grid{ grid-template-columns:1fr; gap:48px; margin-top:32px; }
  .prd-lead{ max-width:30ch; font-size:26px; }
  .prd-ctas{ gap:12px; margin-top:30px; }
  .prd-tags{ margin-top:30px; }
  .prd-problem{ padding:96px 0 88px; }
  .prd-problem-line{ font-size:56px; max-width:none; }
  .prd-who{ gap:24px; margin-top:56px; }
  .prd-who li{ padding-top:22px; }
  .prd-bento, .prd-run, .prd-choice{ padding:96px 0; }
  .prd-grid{ grid-template-columns:repeat(2, minmax(0, 1fr)); margin-top:48px; }
  .prd-tile, .prd-tile--half{ grid-column:span 1; }
  .prd-tile--wide{ grid-column:span 2; }
  .prd-tile-screen{ min-height:230px; }
  .prd-seg{ margin-top:40px; }
  .prd-run-panel{ grid-template-columns:1fr; gap:36px; margin-top:32px; }
  .prd-run-promise{ margin-top:48px; }
  .prd-trust{ padding:96px 0 64px; }
  .prd-marks{ grid-template-columns:repeat(2, minmax(0, 1fr)); gap:48px 24px; margin-top:56px; padding-top:48px; }
  .prd-trust-note{ margin-top:48px; }
  .prd-facts{ padding:40px 0 96px; }
  .prd-facts-grid{ grid-template-columns:1fr; gap:32px; padding-top:56px; }
  .prd-ways{ grid-template-columns:1fr; margin-top:44px; }
  .prd-way{ min-height:340px; }
  .prd-way--main::before{ width:460px; height:460px; margin-top:-230px; right:-300px; border-width:46px; }
}
@media (max-width:640px){
  .prd-h2{ font-size:36px; line-height:1.02; }
  .prd-stage{ padding-top:calc(72px + 32px); padding-bottom:56px; }
  .prd-name{ font-size:14.2vw; letter-spacing:-.05em; }
  .prd-intro{ letter-spacing:-.005em; }
  .prd-who{ grid-template-columns:1fr; }
  .prd-mark-kicker{ letter-spacing:.03em; }
  .prd-lead{ font-size:21px; line-height:1.18; }
  .prd-ctas{ flex-direction:column; align-items:stretch; }
  .prd-ctas .btn{ --h:52px; font-size:16px; }
  .prd-tags li{ font-size:13px; }
  .prd-rings{ --s:620px; right:-330px; bottom:-120px; }
  .prd-problem{ padding:72px 0 64px; }
  .prd-problem-line{ font-size:38px; line-height:1.02; }
  .prd-bento, .prd-run, .prd-choice{ padding:72px 0; }
  .prd-grid{ grid-template-columns:1fr; }
  .prd-tile, .prd-tile--wide, .prd-tile--half{ grid-column:auto; }
  .prd-seg{ display:flex; width:100%; }
  .prd-seg [role="tab"]{ flex:1 1 auto; padding:0 12px; font-size:15px; }
  .prd-map{ flex-direction:column; }
  .prd-map-src{ width:auto; display:flex; align-items:center; gap:10px; text-align:left; }
  .prd-map-src svg{ margin:0; }
  .prd-map-arrow{ width:2px; height:22px; margin-left:24px; align-self:flex-start; }
  .prd-map-arrow::after{ right:-4px; top:auto; bottom:-1px; border:5px solid transparent; border-top-color:var(--prd-line-2); border-bottom:0; }
  .prd-map-arrow--label{ height:34px; }
  .prd-map-arrow span{ left:14px; bottom:auto; top:50%; transform:translateY(-50%); }
  .prd-zones{ flex-direction:column; }
  .prd-run-promise{ font-size:22px; }
  .prd-marks{ grid-template-columns:1fr 1fr; gap:40px 16px; }
  .prd-mark svg{ width:72px; }
  .prd-table div{ grid-template-columns:1fr; gap:6px; }
  .prd-way{ min-height:0; padding:26px 22px; }
  .prd-way .btn{ --h:52px; align-self:stretch; font-size:16px; }
}
@media (prefers-reduced-motion:reduce){
  .prd-rings .prd-rings-arc{ animation:none; }
  .prd-in{ animation:none; }
}
.prd-stage-grid--vid{ grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); align-items:start; }
.prd-stage-vid{ min-width:0; }
.prd-stage-vid .vid--wide{ max-width:calc(var(--d) * 1100); margin-left:auto; }
.prd-stage-inner > .ap-intro{ margin-top:calc(var(--d) * 200); }
.prd-head{ grid-template-columns:minmax(0, 1fr); gap:calc(var(--d) * 50); align-items:start; margin-bottom:calc(var(--d) * 110); }
.prd-head .prd-h2{ max-width:none; }
.prd-head .prd-intro{ max-width:calc(var(--d) * 1300); }
.prd-trust .prd-head{ margin-bottom:0; }
.prd-who > li > .ap-pin{ display:none; }
.prd-marks .prd-mark > .ap-pin{ top:-18px; left:50%; right:auto; translate:-50% 0; }
.prd-marks .prd-mark{ cursor:default; }
.prd-facts-grid{ grid-template-columns:minmax(0, 1fr); gap:calc(var(--d) * 100); }
.prd-facts-aside{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); column-gap:calc(var(--d) * 140); align-items:end; }
.prd-facts-aside .eyebrow{ grid-column:1 / -1; }
.prd-facts-aside .prd-intro{ margin-top:0; }
.prd-table{ grid-template-columns:repeat(4, minmax(0, 1fr)); gap:max(12px, calc(var(--d) * 24)); }
.prd-table div, .prd-table div:first-child{
  display:flex; flex-direction:column; gap:max(8px, calc(var(--d) * 16)); min-height:calc(var(--d) * 260);
  padding:max(18px, calc(var(--d) * 40)); border:1px solid var(--line); border-radius:max(10px, calc(var(--d) * 18)); background:#fff;
}
.prd-table div:first-child{ background:var(--ink); border-color:var(--ink); }
.prd-table div:first-child dt, .prd-table div:first-child dd{ color:#fff; }
.prd-table dt{ font-size:max(12px, calc(var(--d) * 18)); font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--red); }
.prd-table dd{ font-size:max(15px, calc(var(--d) * 28)); line-height:1.35; color:var(--ink); letter-spacing:-.02em; }
.prd-table .prd-ask{ margin-left:0; margin-top:6px; }
@media (max-width:1024px){
  .prd-stage-grid--vid{ grid-template-columns:1fr; gap:36px; }
  .prd-stage-vid .vid--wide{ margin-left:0; max-width:640px; }
  .prd-stage-inner > .ap-intro{ margin-top:64px; }
  .prd-head{ margin-bottom:40px; gap:18px; }
  .prd-facts-aside{ grid-template-columns:1fr; row-gap:18px; }
  .prd-table{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .prd-table div, .prd-table div:first-child{ min-height:0; }
}
@media (max-width:640px){
  .prd-table{ grid-template-columns:1fr; }
}
.prd-modes{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 28)); margin-top:calc(var(--d) * 80); }
.prd-modes div{ padding-top:max(14px, calc(var(--d) * 30)); border-top:1px solid var(--prd-line-2); }
.prd-modes dt{ display:flex; align-items:baseline; gap:12px; font-weight:700; font-size:max(18px, calc(var(--d) * 36)); letter-spacing:-.03em; color:#fff; }
.prd-modes dt span{ font-weight:500; font-size:max(12px, calc(var(--d) * 18)); letter-spacing:0; color:#ff8f92; }
.prd-modes dd{ margin:max(8px, calc(var(--d) * 16)) 0 0; max-width:44ch; font-size:max(15px, calc(var(--d) * 25)); line-height:1.45; letter-spacing:-.01em; color:var(--prd-mute); }
.prd-modes-who{ margin-top:max(14px, calc(var(--d) * 30)); font-size:max(13px, calc(var(--d) * 20)); color:var(--prd-faint); }
.prd-run > .wrap > .prd-run-promise{ justify-content:center; text-align:center; margin-top:calc(var(--d) * 140); padding-top:calc(var(--d) * 110); border-top:1px solid var(--prd-line); }
@media (max-width:1024px){ .prd-modes{ grid-template-columns:1fr; } .prd-run > .wrap > .prd-run-promise{ margin-top:56px; padding-top:44px; } }
.prd-day{ padding:calc(var(--d) * 230) 0 calc(var(--d) * 220); border-top:1px solid var(--prd-line); overflow:hidden; }
.prd-day-head{ display:grid; grid-template-columns:minmax(0, 1fr) calc(var(--d) * 420); gap:calc(var(--d) * 160); align-items:end; }
.prd-day-copy .eyebrow{ margin-bottom:calc(var(--d) * 44); }
.prd-day-copy .prd-h2{ max-width:calc(var(--d) * 1500); }
.prd-day-copy .prd-intro{ max-width:calc(var(--d) * 1200); margin-top:calc(var(--d) * 50); }
.prd-day-vid{ min-width:0; }
.prd-day-line{
  --dot:max(14px, calc(var(--d) * 24));
  position:relative; display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:max(16px, calc(var(--d) * 50));
  margin-top:calc(var(--d) * 140); padding-top:calc(var(--dot) + max(22px, calc(var(--d) * 44)));
}
.prd-day-line::before{ content:""; position:absolute; left:0; right:0; top:calc(var(--dot) / 2 - 1px); height:2px; background:linear-gradient(90deg, var(--red), #ff5a5f); }
.prd-day-stop{ position:relative; display:flex; flex-direction:column; gap:max(8px, calc(var(--d) * 16)); min-width:0; }
@supports (grid-template-rows:subgrid){ 
  @media (min-width:1025px){ .prd-day-stop{ display:grid; grid-row:span 4; grid-template-rows:subgrid; row-gap:max(8px, calc(var(--d) * 16)); } }
}
.prd-day-stop::before{
  content:""; position:absolute; left:0; top:calc(-1 * (var(--dot) + max(22px, calc(var(--d) * 44))));
  width:var(--dot); height:var(--dot); border-radius:50%; background:#fff; border:2px solid #fff; box-sizing:border-box;
}
.prd-day-time{ font-family:ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size:max(13px, calc(var(--d) * 20)); color:var(--prd-faint); }
.prd-day-stop h3{ font-weight:700; font-size:max(19px, calc(var(--d) * 40)); line-height:1.08; letter-spacing:-.035em; color:#fff; }
.prd-day-wo, .prd-day-wi{ display:flex; flex-direction:column; gap:6px; padding:max(14px, calc(var(--d) * 28)); border-radius:var(--prd-radius); }
.prd-day-wo{ margin-top:max(6px, calc(var(--d) * 12)); border:1px solid var(--prd-line); }
.prd-day-wi{ flex:1 1 auto; background:var(--prd-card); border:1px solid var(--prd-line-2); }
.prd-day-wo b, .prd-day-wi b{ font-size:max(12px, calc(var(--d) * 18)); font-weight:500; letter-spacing:.02em; color:var(--prd-faint); }
.prd-day-wi b{ display:flex; align-items:center; gap:8px; color:#fff; }
.prd-day-wi b::before{ content:""; width:8px; height:8px; border-radius:50%; background:var(--red); }
.prd-day-wo p{ font-size:max(15px, calc(var(--d) * 24)); line-height:1.42; color:var(--prd-faint); letter-spacing:-.01em; }
.prd-day-wi p{ font-size:max(15px, calc(var(--d) * 25)); line-height:1.42; color:#fff; letter-spacing:-.01em; }
@media (max-width:1024px){
  .prd-day{ padding:96px 0; }
  .prd-day-head{ grid-template-columns:minmax(0, 1fr) 220px; gap:32px; align-items:start; }
  .prd-day-copy .eyebrow{ margin-bottom:22px; }
  .prd-day-copy .prd-intro{ margin-top:22px; }
  .prd-day-copy .prd-h2, .prd-day-copy .prd-intro{ max-width:none; }
  .prd-day-line{ grid-template-columns:1fr; gap:34px; margin-top:56px; padding-top:0; padding-left:44px; }
  .prd-day-line::before{ left:calc(var(--dot) / 2 - 1px); right:auto; top:6px; width:2px; height:calc(100% - 12px); background:linear-gradient(180deg, var(--red), #ff5a5f); }
  .prd-day-stop::before{ left:-44px; top:2px; }
}
@media (max-width:640px){
  .prd-day{ padding:72px 0; }
  .prd-day-head{ grid-template-columns:1fr; }
  .prd-day-vid{ max-width:240px; }
}
.prd-stage-grid--solo{ grid-template-columns:minmax(0, 1fr); }
.prd-stage-grid--solo .prd-stage-copy{ max-width:calc(var(--d) * 1500); }
.prd-day-head--solo{ grid-template-columns:minmax(0, 1fr); }
[data-sector][hidden]{ display:none !important; }
.svc-swap-in{ animation:svc-fade .55s var(--ease) both; }
@keyframes svc-fade{ from{ opacity:0; transform:translateY(8px); } to{ opacity:1; transform:none; } }
.svc-sec{ padding-block:calc(var(--d) * 220); background:#fff; position:relative; }
.svc-sec--wash{ background:var(--wash); }
.svc-sec--tight{ padding-top:calc(var(--d) * 120); }
.svc-head{
  display:grid; grid-template-columns:calc(var(--d) * 520) minmax(0, 1fr); column-gap:calc(var(--d) * 80);
  padding-top:calc(var(--d) * 36); border-top:1px solid var(--line);
  margin-bottom:calc(var(--d) * 120);
}
.svc-index{
  display:flex; align-items:baseline; gap:max(10px, calc(var(--d) * 18));
  font-weight:500; font-size:max(14px, calc(var(--d) * 24)); letter-spacing:-.02em; color:var(--ink-soft);
}
.svc-index b{ font-weight:700; color:var(--red); font-variant-numeric:tabular-nums; }
.svc-title{
  font-weight:700; font-size:calc(var(--d) * 84); line-height:1.02; letter-spacing:-.045em; color:var(--ink);
  max-width:calc(var(--d) * 1500); text-wrap:balance;
}
.svc-mute{ color:var(--ink-mute); }
.svc-lead{
  margin-top:calc(var(--d) * 44); max-width:calc(var(--d) * 1080);
  font-size:max(17px, calc(var(--d) * 32)); line-height:1.4; letter-spacing:-.02em; color:var(--ink-soft);
}
.svc-lead--flush{ margin-top:0; }
.svc-head-tools{ margin-top:calc(var(--d) * 56); display:flex; flex-wrap:wrap; align-items:center; gap:14px 28px; }
.svc-src{ font-size:max(13px, calc(var(--d) * 19)); line-height:1.4; color:var(--ink-mute); letter-spacing:-.01em; }
.svc-src a{ text-decoration:underline; text-underline-offset:2px; text-decoration-color:rgba(0,0,0,.25); transition:color .2s; }
.svc-src a:hover{ color:var(--red); }
.svc-ph{
  display:inline-flex; align-items:center; gap:6px; padding:3px 10px; border:1px dashed var(--red); border-radius:999px;
  font-size:max(12px, calc(var(--d) * 17)); font-weight:500; letter-spacing:.02em; color:var(--red); background:#fff;
  vertical-align:middle; white-space:nowrap;
}
.svc-ph::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--red); }
.svc-switch-wrap{ display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; }
.svc-switch-label{ font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-mute); letter-spacing:-.01em; }
.svc-switch{
  display:inline-flex; padding:4px; gap:2px; border-radius:999px; background:var(--wash); border:1px solid var(--line);
}
.svc-switch button{
  min-height:max(40px, calc(var(--d) * 56)); padding-inline:max(16px, calc(var(--d) * 30));
  border-radius:999px; font-weight:500; font-size:max(14px, calc(var(--d) * 20)); letter-spacing:-.02em;
  color:var(--ink-soft); white-space:nowrap;
  transition:background-color .3s var(--ease), color .3s var(--ease), box-shadow .3s var(--ease);
}
.svc-switch button:hover{ color:var(--ink); }
.svc-switch button[aria-pressed="true"]{
  background:#fff; color:var(--ink); box-shadow:0 1px 2px rgba(0,0,0,.08), 0 6px 18px rgba(0,0,0,.06);
}
.svc-hero{ position:relative; background:#fff; padding-top:max(108px, calc(var(--d) * 290)); padding-bottom:calc(var(--d) * 140); }
.svc-crumbs{
  display:flex; flex-wrap:wrap; align-items:center; gap:4px 10px;
  font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-mute); letter-spacing:-.01em;
}
.svc-crumbs li{ display:inline-flex; align-items:center; gap:10px; }
.svc-crumbs li + li::before{ content:""; width:5px; height:5px; border-top:1.5px solid currentColor; border-right:1.5px solid currentColor; transform:rotate(45deg); opacity:.7; }
.svc-crumbs a:hover{ color:var(--red); }
.svc-crumbs [aria-current]{ color:var(--ink); }
.svc-hero-grid{
  margin-top:calc(var(--d) * 80);
  display:grid; grid-template-columns:minmax(0, 1.5fr) minmax(0, 1fr); column-gap:calc(var(--d) * 160); align-items:end;
}
.svc-hero-eyebrow{ margin-bottom:calc(var(--d) * 44); }
.svc-h1{
  font-weight:700; font-size:calc(var(--d) * 132); line-height:.97; letter-spacing:-.05em; color:var(--ink); text-wrap:balance;
}
.svc-hero-side{ display:flex; flex-direction:column; gap:calc(var(--d) * 48); padding-bottom:calc(var(--d) * 12); }
.svc-hero-sub{ font-size:max(17px, calc(var(--d) * 31)); line-height:1.4; letter-spacing:-.02em; color:var(--ink-soft); }
.svc-hero-sub b{ font-weight:500; color:var(--ink); }
.svc-actions{ display:flex; flex-wrap:wrap; gap:max(10px, calc(var(--d) * 16)); }
.svc-hero-stage{ margin-top:calc(var(--d) * 120); }
.svc-hero-grid--vid{ grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); row-gap:calc(var(--d) * 110); align-items:center; }
.svc-hero-grid--vid > :first-child{ grid-column:1 / -1; }
.svc-hero-grid--vid .svc-h1{ max-width:calc(var(--d) * 2100); }
.svc-hero-vid{ min-width:0; }
.svc-hero-vid .vid--wide{ max-width:calc(var(--d) * 1100); margin-left:auto; }
.svc-hero-grid--vid + .svc-hero-stage, .svc-hero-grid--vid ~ .svc-hero-stage{ margin-top:calc(var(--d) * 200); }
.svc-dl{ padding-block:calc(var(--d) * 150) calc(var(--d) * 170); background:var(--wash); }
.svc-dl-head{ display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:12px 40px; }
.svc-dl-title{ font-weight:700; font-size:calc(var(--d) * 56); letter-spacing:-.04em; line-height:1.05; }
.svc-dl-note{ max-width:calc(var(--d) * 760); }
.svc-dl-chart{ position:relative; height:calc(var(--d) * 560); margin-top:calc(var(--d) * 70); }
.svc-dl-axis{ position:absolute; left:0; right:0; top:50%; height:2px; background:repeating-linear-gradient(90deg, var(--ink-mute) 0 6px, transparent 6px 12px); }
.svc-dl-axis-past{ position:absolute; left:0; top:0; height:2px; width:calc(var(--now, 0) * 100%); background:var(--ink); }
.svc-dl-year{
  position:absolute; top:12px; left:calc(var(--x) * 100%); transform:translateX(-50%);
  font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); font-variant-numeric:tabular-nums;
}
.svc-dl-year::before{ content:""; position:absolute; left:50%; top:-16px; width:1px; height:8px; background:var(--ink-mute); }
.svc-dl-list{ position:absolute; inset:0; }
.svc-dl-item{
  position:absolute; left:calc(var(--x, 0) * 100%); bottom:50%;
  width:calc(var(--d) * 400); padding:0 0 calc(var(--d) * 70) calc(var(--d) * 26);
  border-left:1px solid var(--line);
}
.svc-dl-item:nth-child(even){ bottom:auto; top:50%; padding:calc(var(--d) * 70) 0 0 calc(var(--d) * 26); }
.svc-dl-item::after{ 
  content:""; position:absolute; left:-7px; bottom:-7px; width:13px; height:13px; border-radius:50%;
  background:#fff; border:2px solid var(--red);
}
.svc-dl-item:nth-child(even)::after{ bottom:auto; top:-6px; }
.svc-dl-item.is-past::after{ background:var(--ink); border-color:var(--ink); }
.svc-dl-item.is-end{ transform:translateX(-100%); border-left:0; border-right:1px solid var(--line); padding-left:0; padding-right:calc(var(--d) * 26); text-align:right; }
.svc-dl-item.is-end::after{ left:auto; right:-7px; }
.svc-dl-date{ display:block; font-weight:500; font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-soft); font-variant-numeric:tabular-nums; }
.svc-dl-name{ display:block; margin-top:6px; font-weight:700; font-size:max(17px, calc(var(--d) * 34)); letter-spacing:-.035em; line-height:1.1; }
.svc-dl-text{ display:block; margin-top:6px; font-size:max(14px, calc(var(--d) * 21)); line-height:1.35; color:var(--ink-soft); letter-spacing:-.01em; }
.svc-dl-until{
  display:inline-block; margin-top:10px; padding:3px 10px; border-radius:999px;
  font-style:normal; font-weight:500; font-size:max(12px, calc(var(--d) * 17)); letter-spacing:0;
  background:rgba(177,32,37,.08); color:var(--red);
}
.svc-dl-item.is-past .svc-dl-until{ background:rgba(33,33,33,.07); color:var(--ink-soft); }
.svc-dl-now{ 
  position:absolute; left:calc(var(--x, 0) * 100%); top:calc(50% - calc(var(--d) * 70)); height:calc(var(--d) * 140);
  width:0; border-left:2px solid var(--red); pointer-events:none; z-index:2;
}
.svc-dl-now span{
  position:absolute; top:50%; left:0; transform:translate(-50%, -50%);
  padding:5px 12px; border-radius:999px; background:var(--red); color:#fff; white-space:nowrap;
  font-weight:500; font-size:max(12px, calc(var(--d) * 17));
  box-shadow:0 0 0 0 rgba(177,32,37,.45); animation:svc-ping 2.6s var(--ease) infinite;
}
@keyframes svc-ping{ 0%{ box-shadow:0 0 0 0 rgba(177,32,37,.45); } 70%,100%{ box-shadow:0 0 0 14px rgba(177,32,37,0); } }
.svc-finding-top{
  display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);
  border-top:1px solid var(--line);
}
.svc-finding-top > *{ padding-top:calc(var(--d) * 36); }
.svc-finding-top > :last-child{ border-left:1px solid var(--line); padding-left:calc(var(--d) * 80); padding-bottom:calc(var(--d) * 120); }
.svc-finding-top .svc-title{ margin-top:calc(var(--d) * 60); font-size:calc(var(--d) * 90); max-width:calc(var(--d) * 1000); }
.svc-finding-text{
  margin-top:calc(var(--d) * 84); max-width:calc(var(--d) * 900);
  font-size:max(18px, calc(var(--d) * 38)); line-height:1.35; letter-spacing:-.03em; color:var(--ink-mute);
}
.svc-finding-text b{ font-weight:500; color:var(--ink); }
.svc-stats{
  display:grid; grid-template-columns:repeat(4, minmax(0, 1fr));
  border:1px solid var(--line); border-radius:10px; overflow:hidden; background:#fff;
}
.svc-stat{
  display:flex; flex-direction:column; align-items:center; text-align:center; gap:calc(var(--d) * 30);
  padding:calc(var(--d) * 56) calc(var(--d) * 44) calc(var(--d) * 50);
  border-left:1px solid var(--line); position:relative;
}
.svc-stat:first-child{ border-left:0; }
.svc-stat.is-key{ background:linear-gradient(180deg, #faf3f3, #fff 85%); }
.svc-stat.is-key::before{ content:""; position:absolute; left:0; right:0; top:0; height:3px; background:var(--red); }
.svc-stat-label{ min-height:2.7em; font-weight:500; font-size:max(15px, calc(var(--d) * 24)); line-height:1.35; letter-spacing:-.02em; color:var(--ink); max-width:calc(var(--d) * 380); }
.svc-stat-num{
  font-weight:500; font-size:calc(var(--d) * 124); line-height:1; letter-spacing:-.055em; color:var(--ink-mute);
  font-variant-numeric:tabular-nums; white-space:nowrap;
}
.svc-stat.is-key .svc-stat-num{ color:var(--ink); }
.svc-stat-num small{ font-size:.5em; letter-spacing:-.03em; }
.svc-stat .svc-src{ margin-top:auto; }
.svc-cases-grid{
  display:grid; grid-template-columns:minmax(0, 1.08fr) minmax(0, 1fr);
  border-top:1px solid var(--line); border-bottom:1px solid var(--line);
}
.svc-cases-stage{ padding:calc(var(--d) * 56) calc(var(--d) * 56) calc(var(--d) * 56) 0; border-right:1px solid var(--line); }
.svc-case-panel{ height:100%; display:flex; flex-direction:column; gap:14px; }
.svc-case-panel[hidden]{ display:none; }
.svc-case-panel .svc-src{ padding-left:4px; }
.svc-cases-side{ display:flex; flex-direction:column; }
.svc-case-tab{
  display:block; width:100%; text-align:left; position:relative;
  padding:calc(var(--d) * 50) calc(var(--d) * 60) calc(var(--d) * 50) calc(var(--d) * 64);
  border-bottom:1px solid var(--line);
  transition:background-color .4s var(--ease);
}
.svc-case-tab::before{ content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--red); transform:scaleY(0); transform-origin:top; transition:transform .5s var(--ease); }
.svc-case-tab:hover .svc-case-name{ color:var(--ink); }
.svc-case-tab[aria-selected="true"]{ background:linear-gradient(90deg, #faf4f4, #fcfbfb); }
.svc-case-tab[aria-selected="true"]::before{ transform:scaleY(1); }
.svc-case-name{
  display:block; font-weight:500; font-size:max(20px, calc(var(--d) * 44)); line-height:1.1; letter-spacing:-.04em; color:var(--ink-mute);
  transition:color .3s var(--ease);
}
.svc-case-tab[aria-selected="true"] .svc-case-name{ color:var(--ink); }
.svc-case-more{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .5s var(--ease); }
.svc-case-tab[aria-selected="true"] .svc-case-more{ grid-template-rows:1fr; }
.svc-case-more > span{ overflow:hidden; display:block; }
.svc-case-desc{
  display:block; padding-top:calc(var(--d) * 22); max-width:calc(var(--d) * 760);
  font-size:max(15px, calc(var(--d) * 24)); line-height:1.45; letter-spacing:-.015em; color:var(--ink-soft);
}
.svc-case-kpi{ display:flex; flex-wrap:wrap; gap:8px 26px; padding-top:calc(var(--d) * 26); }
.svc-case-kpi span{ display:flex; flex-direction:column; }
.svc-case-kpi b{ font-weight:700; font-size:max(22px, calc(var(--d) * 50)); letter-spacing:-.04em; line-height:1; color:var(--red); }
.svc-case-kpi small{ margin-top:4px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-soft); }
.svc-case-kpi em{ font-style:normal; font-size:max(12px, calc(var(--d) * 16)); color:var(--ink-mute); }
.svc-case-src{ display:block; margin-top:10px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); }
.svc-case-note{ display:block; margin-top:calc(var(--d) * 22); padding-left:12px; border-left:2px solid var(--red); font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-soft); }
.svc-cases-actions{ margin-top:auto; padding:calc(var(--d) * 50) 0 0 calc(var(--d) * 64); display:flex; flex-wrap:wrap; gap:12px; }
.svc-flow{
  position:relative; flex:1; min-height:calc(var(--d) * 760);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:calc(var(--d) * 70) calc(var(--d) * 40);
  border-radius:12px; overflow:hidden; isolation:isolate;
  background:
    radial-gradient(120% 70% at 100% 100%, rgba(177,32,37,.10), transparent 60%),
    radial-gradient(80% 60% at 0% 0%, #fff, transparent 70%),
    #f1efef;
}
.svc-flow::before{ 
  content:""; position:absolute; inset:0; z-index:-1; opacity:.55;
  background-image:linear-gradient(rgba(0,0,0,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(0,0,0,.05) 1px, transparent 1px);
  background-size:calc(var(--d) * 64) calc(var(--d) * 64);
  -webkit-mask-image:radial-gradient(ellipse at center, #000 30%, transparent 80%); mask-image:radial-gradient(ellipse at center, #000 30%, transparent 80%);
}
.svc-flow-node{
  position:relative; background:rgba(255,255,255,.92); border:1px solid rgba(0,0,0,.06); border-radius:10px;
  box-shadow:0 1px 2px rgba(0,0,0,.05), 0 10px 30px rgba(0,0,0,.06);
  transition:border-color .4s var(--ease), box-shadow .4s var(--ease), transform .4s var(--ease), opacity .4s var(--ease);
}
.svc-flow-node.is-run{ border-color:rgba(177,32,37,.45); box-shadow:0 0 0 4px rgba(177,32,37,.08), 0 14px 34px rgba(0,0,0,.08); }
.svc-flow-root{
  display:inline-flex; align-items:center; gap:10px; padding:10px 16px 10px 10px;
  font-weight:500; font-size:max(13px, calc(var(--d) * 20)); letter-spacing:-.01em;
}
.svc-flow-ico{
  display:grid; place-items:center; flex:none; width:max(32px, calc(var(--d) * 56)); height:max(32px, calc(var(--d) * 56));
  border-radius:8px; background:var(--ink); color:#fff;
}
.svc-flow-ico svg{ width:55%; height:auto; }
.svc-flow-step{
  display:flex; align-items:center; gap:14px; padding:14px 22px 14px 14px;
  width:min(100%, calc(var(--d) * 620)); min-width:min(100%, 260px);
}
.svc-flow-step .svc-flow-ico{ background:rgba(177,32,37,.1); color:var(--red); }
.svc-flow-step b, .svc-flow-leaf b{ display:block; font-weight:700; font-size:max(14px, calc(var(--d) * 24)); letter-spacing:-.03em; line-height:1.15; }
.svc-flow-step small, .svc-flow-leaf small{ display:block; margin-top:3px; font-size:max(12px, calc(var(--d) * 18)); line-height:1.35; color:var(--ink-soft); }
.svc-flow-link{ width:2px; height:calc(var(--d) * 70); min-height:22px; background:rgba(0,0,0,.14); position:relative; overflow:hidden; }
.svc-flow-link::after{ content:""; position:absolute; inset:0; background:var(--red); transform:scaleY(0); transform-origin:top; transition:transform .5s var(--ease); }
.svc-flow-link.is-on::after{ transform:scaleY(1); }
.svc-flow-leaves{
  display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:calc(var(--d) * 28); width:100%;
  position:relative; padding-top:calc(var(--d) * 70);
}
.svc-flow-leaves::before{ 
  content:""; position:absolute; top:0; left:16.66%; right:16.66%; height:2px; background:rgba(0,0,0,.14);
  box-shadow:inset 0 0 0 0 var(--red); transition:box-shadow .5s var(--ease);
}
.svc-flow-leaves.is-on::before{ box-shadow:inset 0 0 0 2px var(--red); }
.svc-flow-leaf{ padding:calc(var(--d) * 26) calc(var(--d) * 24); display:flex; flex-direction:column; min-height:calc(var(--d) * 190); }
.svc-flow-leaf::before{ 
  content:""; position:absolute; left:50%; bottom:100%; width:2px; height:calc(var(--d) * 70); background:rgba(0,0,0,.14); transition:background-color .4s var(--ease);
}
.svc-flow-leaf.is-run::before, .svc-flow-leaf.is-done::before{ background:var(--red); }
.svc-flow-status{
  margin-top:auto; align-self:flex-start; display:inline-flex; align-items:center; gap:6px;
  margin-top:max(10px, calc(var(--d) * 20)); padding:3px 9px 3px 7px; border-radius:6px;
  font-size:max(12px, calc(var(--d) * 16)); font-weight:500; background:rgba(0,0,0,.05); color:var(--ink-soft);
}
.svc-flow-status::before{ content:""; width:8px; height:8px; border-radius:50%; border:1.5px solid currentColor; box-sizing:border-box; }
.is-run > .svc-flow-status{ background:rgba(177,32,37,.08); color:var(--red); }
.is-run > .svc-flow-status::before{ border-color:currentColor transparent currentColor currentColor; animation:svc-spin .9s linear infinite; }
.is-done > .svc-flow-status{ background:rgba(33,33,33,.9); color:#fff; }
.is-done > .svc-flow-status::before{ border:0; background:#fff; width:6px; height:6px; }
@keyframes svc-spin{ to{ transform:rotate(360deg); } }
.svc-ring-wrap{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); column-gap:calc(var(--d) * 160); align-items:center; }
.svc-ring{ position:relative; width:min(100%, calc(var(--d) * 1060)); aspect-ratio:1; margin-inline:auto; padding:calc(var(--d) * 110); }
.svc-ring-dial{ position:relative; width:100%; height:100%; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:1fr 1fr; }
.svc-ring-dial::after{ 
  content:""; position:absolute; inset:0; border-radius:50%; border:1px solid #cfcfcf; pointer-events:none;
  background:linear-gradient(#cfcfcf, #cfcfcf) center/1px 100% no-repeat, linear-gradient(#cfcfcf, #cfcfcf) center/100% 1px no-repeat;
}
.svc-ring-q{
  position:relative; background:#fff; transition:background-color .45s var(--ease), color .45s var(--ease);
}
.svc-ring-q:nth-child(1){ grid-area:1 / 1; border-top-left-radius:100%; }
.svc-ring-q:nth-child(2){ grid-area:1 / 2; border-top-right-radius:100%; }
.svc-ring-q:nth-child(3){ grid-area:2 / 2; border-bottom-right-radius:100%; }
.svc-ring-q:nth-child(4){ grid-area:2 / 1; border-bottom-left-radius:100%; }
.svc-ring-q:hover{ background:#f6f6f6; }
.svc-ring-q[aria-selected="true"]{ background:var(--red); color:#fff; }
.svc-ring-q:focus-visible{ outline-offset:-6px; }
.svc-ring-mark{ 
  position:absolute; display:flex; flex-direction:column; align-items:center; gap:10px; width:max-content; max-width:60%;
  text-align:center; transform:translate(-50%, -50%);
}
.svc-ring-q:nth-child(1) .svc-ring-mark{ left:55%; top:55%; }
.svc-ring-q:nth-child(2) .svc-ring-mark{ left:45%; top:55%; }
.svc-ring-q:nth-child(3) .svc-ring-mark{ left:45%; top:45%; }
.svc-ring-q:nth-child(4) .svc-ring-mark{ left:55%; top:45%; }
.svc-ring-num{
  display:grid; place-items:center; width:max(38px, calc(var(--d) * 70)); height:max(38px, calc(var(--d) * 70)); border-radius:50%;
  border:1px solid #cfcfcf; background:#fff; color:var(--ink-mute);
  font-weight:500; font-size:max(14px, calc(var(--d) * 24)); font-variant-numeric:tabular-nums;
  transition:color .4s, border-color .4s;
}
.svc-ring-q[aria-selected="true"] .svc-ring-num{ color:var(--red); border-color:#fff; }
.svc-ring-name{ font-weight:500; font-size:max(14px, calc(var(--d) * 24)); letter-spacing:-.02em; line-height:1.15; }
.svc-ring-core{
  position:absolute; left:50%; top:50%; transform:translate(-50%, -50%); z-index:2; pointer-events:none;
  display:grid; place-items:center; text-align:center;
  width:calc(var(--d) * 290); height:calc(var(--d) * 290); min-width:112px; min-height:112px; padding:14px; border-radius:50%;
  background:#fff; border:1px solid #cfcfcf;
  font-weight:500; font-size:max(13px, calc(var(--d) * 24)); line-height:1.25; letter-spacing:-.02em;
}
.svc-ring-core b{ font-weight:500; }
.svc-ring-core i{ font-style:normal; color:var(--ink-mute); }
.svc-ring-core img{ width:34%; height:auto; margin-left:6%; }
.svc-ring-photo{
  position:absolute; width:calc(var(--d) * 170); height:calc(var(--d) * 170); min-width:56px; min-height:56px; border-radius:50%; overflow:hidden;
  border:4px solid #fff; box-shadow:0 10px 30px rgba(0,0,0,.12); pointer-events:none;
  transition:transform .6s var(--ease), filter .6s var(--ease); filter:grayscale(1) contrast(.95);
}
.svc-ring-photo{ overflow:visible; }
.svc-ring-photo img{ width:100%; height:100%; object-fit:cover; border-radius:50%; }
.svc-ring-tag{
  position:absolute; left:50%; top:calc(100% + 12px); transform:translate(-50%, 6px) scale(.85); z-index:3;
  padding:5px 12px; border-radius:999px; background:var(--red); color:#fff; white-space:nowrap;
  font-style:normal; font-weight:500; font-size:max(12px, calc(var(--d) * 18)); letter-spacing:0; line-height:1.2;
  box-shadow:0 6px 16px rgba(177,32,37,.28); opacity:0; transition:opacity .3s, transform .45s cubic-bezier(.34,1.56,.64,1);
}
.svc-ring-photo.is-on .svc-ring-tag{ opacity:1; transform:translate(-50%, 0) scale(calc(1 / 1.08)); }
.svc-ring-photo:nth-of-type(1){ left:4%; top:4%; }
.svc-ring-photo:nth-of-type(2){ right:4%; top:4%; }
.svc-ring-photo:nth-of-type(3){ right:4%; bottom:4%; }
.svc-ring-photo:nth-of-type(4){ left:4%; bottom:4%; }
.svc-ring-photo.is-on{ filter:none; transform:scale(1.08); }
.svc-ring-panel[hidden]{ display:none; }
.svc-ring-step{ font-weight:500; font-size:max(14px, calc(var(--d) * 22)); color:var(--red); letter-spacing:-.01em; }
.svc-ring-title{ margin-top:calc(var(--d) * 20); font-weight:700; font-size:calc(var(--d) * 72); line-height:1.02; letter-spacing:-.045em; }
.svc-ring-text{ margin-top:calc(var(--d) * 30); max-width:calc(var(--d) * 860); font-size:max(16px, calc(var(--d) * 28)); line-height:1.45; letter-spacing:-.015em; color:var(--ink-soft); }
.svc-hand{ margin-top:calc(var(--d) * 60); padding-top:calc(var(--d) * 36); border-top:1px solid var(--line); max-width:calc(var(--d) * 860); }
.svc-hand-label{ font-weight:700; font-size:max(14px, calc(var(--d) * 22)); letter-spacing:-.02em; }
.svc-hand ul{ margin-top:calc(var(--d) * 24); display:grid; gap:calc(var(--d) * 18); }
.svc-hand li{ display:flex; gap:12px; align-items:flex-start; font-size:max(15px, calc(var(--d) * 25)); line-height:1.4; letter-spacing:-.015em; }
.svc-hand li::before{
  content:""; flex:none; margin-top:.28em; width:max(16px, calc(var(--d) * 24)); height:max(16px, calc(var(--d) * 24)); border-radius:50%;
  background:var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.3 2.2 4.7-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat;
}
.svc-ring-nav{ margin-top:calc(var(--d) * 60); display:flex; gap:10px; }
.svc-pk{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); position:relative; }
.svc-pk::before{ content:""; position:absolute; left:0; right:0; top:calc(var(--d) * 12); height:2px; background:linear-gradient(90deg, var(--red), var(--red) 20%, var(--line) 20%); }
.svc-pk-item{ position:relative; padding:calc(var(--d) * 80) calc(var(--d) * 80) 0 0; display:flex; flex-direction:column; }
.svc-pk-item::before{ content:""; position:absolute; left:0; top:0; width:calc(var(--d) * 26); height:calc(var(--d) * 26); min-width:14px; min-height:14px; border-radius:50%; background:#fff; border:2px solid var(--red); box-sizing:border-box; }
.svc-pk-item:first-child::before{ background:var(--red); }
.svc-pk-step{ font-weight:500; font-size:max(14px, calc(var(--d) * 22)); color:var(--red); letter-spacing:-.01em; }
.svc-pk-name{ margin-top:calc(var(--d) * 18); font-weight:700; font-size:calc(var(--d) * 64); line-height:1.02; letter-spacing:-.045em; }
.svc-pk-facts{ margin-top:calc(var(--d) * 44); display:grid; gap:calc(var(--d) * 22); }
.svc-pk-facts div{ display:grid; grid-template-columns:calc(var(--d) * 170) 1fr; gap:14px; padding-bottom:calc(var(--d) * 22); border-bottom:1px solid var(--line); }
.svc-pk-facts dt{ font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-mute); padding-top:.15em; }
.svc-pk-facts dd{ margin:0; font-size:max(15px, calc(var(--d) * 25)); line-height:1.4; letter-spacing:-.015em; }
.svc-pk-facts dd b{ font-weight:700; }
.svc-pk-item .btn{ margin-top:calc(var(--d) * 50); align-self:flex-start; }
.svc-buy{
  margin-top:calc(var(--d) * 160); border-radius:14px; background:var(--black); color:#fff;
  display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1.6fr); gap:calc(var(--d) * 120);
  padding:calc(var(--d) * 100); position:relative; overflow:hidden;
}
.svc-buy::after{ 
  content:""; position:absolute; right:calc(var(--d) * -180); top:calc(var(--d) * -180); width:calc(var(--d) * 520); height:calc(var(--d) * 520);
  border-radius:50%; border:calc(var(--d) * 60) solid rgba(177,32,37,.55); border-left-color:transparent; border-bottom-color:transparent; transform:rotate(10deg);
  pointer-events:none;
}
.svc-buy-title{ font-weight:700; font-size:calc(var(--d) * 60); letter-spacing:-.04em; line-height:1.05; }
.svc-buy-text{ margin-top:calc(var(--d) * 30); font-size:max(15px, calc(var(--d) * 25)); line-height:1.45; color:rgba(255,255,255,.7); max-width:calc(var(--d) * 640); }
.svc-buy-list{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:calc(var(--d) * 50); position:relative; z-index:1; }
.svc-buy-list li{ padding-top:calc(var(--d) * 30); border-top:1px solid rgba(255,255,255,.2); }
.svc-buy-list b{ display:block; font-weight:700; font-size:max(17px, calc(var(--d) * 32)); letter-spacing:-.035em; line-height:1.15; }
.svc-buy-list span{ display:block; margin-top:12px; font-size:max(14px, calc(var(--d) * 22)); line-height:1.45; color:rgba(255,255,255,.68); }
.svc-buy .svc-src{ color:rgba(255,255,255,.5); margin-top:calc(var(--d) * 40); }
.svc-shift{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:calc(var(--d) * 160); align-items:start; }
.svc-shift-points{ margin-top:calc(var(--d) * 70); display:grid; gap:0; }
.svc-shift-points li{ display:grid; grid-template-columns:calc(var(--d) * 90) 1fr; gap:10px; padding:calc(var(--d) * 32) 0; border-top:1px solid var(--line); }
.svc-shift-points li > span{ font-weight:500; color:var(--red); font-size:max(14px, calc(var(--d) * 22)); font-variant-numeric:tabular-nums; padding-top:.2em; }
.svc-shift-points b{ display:block; font-weight:700; font-size:max(18px, calc(var(--d) * 34)); letter-spacing:-.035em; }
.svc-shift-points p{ margin-top:8px; font-size:max(15px, calc(var(--d) * 24)); line-height:1.45; color:var(--ink-soft); }
.svc-shift-chart{ margin:0; padding:calc(var(--d) * 70); border-radius:14px; background:var(--wash); }
.svc-shift-legend{ display:flex; flex-wrap:wrap; gap:8px 24px; font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-soft); }
.svc-shift-legend span{ display:inline-flex; align-items:center; gap:8px; }
.svc-shift-legend span::before{ content:""; width:12px; height:12px; border-radius:3px; background:var(--red); }
.svc-shift-legend span + span::before{ background:var(--ink); }
.svc-shift-rows{ margin-top:calc(var(--d) * 50); display:grid; gap:calc(var(--d) * 40); }
.svc-shift-row p{ display:flex; justify-content:space-between; gap:10px; font-weight:500; font-size:max(14px, calc(var(--d) * 22)); letter-spacing:-.02em; }
.svc-shift-row p small{ font-weight:400; font-size:inherit; color:var(--ink-mute); }
.svc-shift-bar{ margin-top:12px; height:calc(var(--d) * 46); min-height:18px; border-radius:6px; background:var(--ink); overflow:hidden; display:flex; }
.svc-shift-bar i{ display:block; height:100%; width:0; background:var(--red); transition:width 1.3s var(--ease); }
.is-in .svc-shift-bar i{ width:calc(var(--ours) * 1%); }
.svc-shift-row:nth-child(2) i{ transition-delay:.15s; } .svc-shift-row:nth-child(3) i{ transition-delay:.3s; } .svc-shift-row:nth-child(4) i{ transition-delay:.45s; }
.svc-shift-chart .svc-src{ margin-top:calc(var(--d) * 44); }
.svc-proof{ display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.6fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.svc-proof-quote{ padding:calc(var(--d) * 70) calc(var(--d) * 80) calc(var(--d) * 70) 0; border-right:1px solid var(--line); display:flex; flex-direction:column; gap:calc(var(--d) * 40); }
.svc-proof-quote blockquote{ margin:0; font-weight:500; font-size:max(18px, calc(var(--d) * 36)); line-height:1.35; letter-spacing:-.03em; color:var(--ink-mute); }
.svc-proof-quote blockquote b{ font-weight:500; color:var(--ink); }
.svc-proof-who{ font-size:max(14px, calc(var(--d) * 21)); color:var(--ink-soft); }
.svc-proof-cards{ padding:calc(var(--d) * 70) 0 calc(var(--d) * 70) calc(var(--d) * 80); display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:calc(var(--d) * 30); }
.svc-proof-photo{ position:relative; border-radius:12px; overflow:hidden; min-height:calc(var(--d) * 520); background:#ddd; }
.svc-proof-photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(.2); }
.svc-proof-card{
  border-radius:12px; padding:calc(var(--d) * 44); display:flex; flex-direction:column; justify-content:space-between; gap:20px;
  background:linear-gradient(180deg, #f8eeee, #faf8f8 70%);
}
.svc-proof-card + .svc-proof-card{ background:linear-gradient(180deg, #f3f3f3, #fafafa 70%); }
.svc-proof-card svg{ width:max(18px, calc(var(--d) * 30)); height:auto; color:var(--red); }
.svc-proof-card p{ font-size:max(14px, calc(var(--d) * 21)); color:var(--ink-soft); }
.svc-proof-card b{ display:block; margin-top:8px; font-weight:500; font-size:calc(var(--d) * 120); line-height:1; letter-spacing:-.05em; color:var(--ink); }
.svc-faq{ display:grid; grid-template-columns:minmax(0, .85fr) minmax(0, 1.4fr); gap:calc(var(--d) * 160); align-items:start; }
.svc-faq-aside{ position:sticky; top:calc(var(--d) * 160); }
.svc-faq-aside .svc-title{ margin-top:calc(var(--d) * 40); font-size:calc(var(--d) * 76); }
.svc-person{
  margin-top:calc(var(--d) * 80); padding:calc(var(--d) * 44); border-radius:14px; border:1px solid var(--line);
  display:grid; grid-template-columns:auto 1fr; gap:calc(var(--d) * 30) calc(var(--d) * 32); align-items:center;
}
.svc-person img{ width:max(64px, calc(var(--d) * 120)); height:max(64px, calc(var(--d) * 120)); border-radius:50%; object-fit:cover; background:var(--wash); }
.svc-person-name{ font-weight:700; font-size:max(17px, calc(var(--d) * 30)); letter-spacing:-.03em; }
.svc-person-role{ margin-top:4px; font-size:max(14px, calc(var(--d) * 21)); color:var(--ink-soft); }
.svc-person-meta{ margin-top:8px; }
.svc-person-text{ grid-column:1 / -1; font-size:max(15px, calc(var(--d) * 23)); line-height:1.45; color:var(--ink-soft); }
.svc-person-actions{ grid-column:1 / -1; display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; }
.svc-person-actions a{ font-size:max(14px, calc(var(--d) * 21)); text-decoration:underline; text-underline-offset:3px; text-decoration-color:rgba(0,0,0,.25); }
.svc-person-actions a:hover{ color:var(--red); }
.svc-acc{ border-top:1px solid var(--ink); }
.svc-acc-item{ border-bottom:1px solid var(--line); }
.svc-acc-btn{
  width:100%; display:grid; grid-template-columns:calc(var(--d) * 90) 1fr auto; gap:14px; align-items:center; text-align:left;
  padding:calc(var(--d) * 44) 0;
}
.svc-acc-num{ font-weight:500; font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-mute); font-variant-numeric:tabular-nums; }
.svc-acc-q{ font-weight:700; font-size:max(18px, calc(var(--d) * 40)); line-height:1.15; letter-spacing:-.04em; transition:color .25s; }
.svc-acc-btn:hover .svc-acc-q{ color:var(--red); }
.svc-acc-icon{
  width:max(36px, calc(var(--d) * 56)); height:max(36px, calc(var(--d) * 56)); border-radius:50%; border:1px solid var(--line);
  display:grid; place-items:center; transition:background-color .3s var(--ease), border-color .3s var(--ease), transform .4s var(--ease);
}
.svc-acc-icon::before, .svc-acc-icon::after{ content:""; grid-area:1 / 1; width:38%; height:1.5px; background:currentColor; border-radius:1px; transition:transform .4s var(--ease); }
.svc-acc-icon::after{ transform:rotate(90deg); }
.svc-acc-btn[aria-expanded="true"] .svc-acc-icon{ background:var(--red); border-color:var(--red); color:#fff; transform:rotate(180deg); }
.svc-acc-btn[aria-expanded="true"] .svc-acc-icon::after{ transform:rotate(0deg); }
.svc-acc-btn[aria-expanded="true"] .svc-acc-num{ color:var(--red); }
.svc-acc-panel{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .45s var(--ease); }
.svc-acc-panel.is-open{ grid-template-rows:1fr; }
.svc-acc-panel > div{ overflow:hidden; }
.svc-acc-panel[hidden]{ display:none; }
.svc-acc-a{ padding:0 calc(var(--d) * 90) calc(var(--d) * 50) calc(var(--d) * 104); display:grid; gap:12px; max-width:calc(var(--d) * 1200); }
.svc-acc-a p{ font-size:max(15px, calc(var(--d) * 25)); line-height:1.5; letter-spacing:-.01em; color:var(--ink-soft); }
.svc-acc-a b{ font-weight:500; color:var(--ink); }
.svc-next{ display:grid; grid-template-columns:minmax(0, 1.7fr) minmax(0, 1fr); gap:calc(var(--d) * 30); }
.svc-next-card{
  position:relative; display:flex; flex-direction:column; justify-content:space-between; gap:40px;
  min-height:calc(var(--d) * 620); padding:calc(var(--d) * 70); border-radius:14px; overflow:hidden; isolation:isolate;
  background:var(--wash); transition:background-color .4s var(--ease);
}
.svc-next-card:hover{ background:#f0eded; }
.svc-next-kicker{ font-weight:500; font-size:max(14px, calc(var(--d) * 22)); color:var(--red); }
.svc-next-title{ margin-top:calc(var(--d) * 22); font-weight:700; font-size:calc(var(--d) * 96); line-height:1; letter-spacing:-.05em; max-width:calc(var(--d) * 1100); }
.svc-next-text{ margin-top:calc(var(--d) * 30); font-size:max(15px, calc(var(--d) * 26)); line-height:1.45; color:var(--ink-soft); max-width:calc(var(--d) * 760); }
.svc-next-go{
  align-self:flex-end; width:max(52px, calc(var(--d) * 110)); height:max(52px, calc(var(--d) * 110)); border-radius:50%;
  display:grid; place-items:center; background:var(--red); color:#fff; transition:transform .45s var(--ease);
}
.svc-next-go svg{ width:36%; height:auto; }
.svc-next-card:hover .svc-next-go{ transform:translateX(8px); }
.svc-next-card--dark{ background:var(--black); color:#fff; }
.svc-next-card--dark:hover{ background:#1b1b1b; }
.svc-next-card--dark .svc-next-title{ font-size:calc(var(--d) * 80); }
.svc-next-card--dark .svc-next-text{ color:rgba(255,255,255,.65); }
.svc-next-card--dark .svc-next-go{ background:#fff; color:var(--ink); }
.svc-next-bg{ position:absolute; inset:0; z-index:-1; opacity:.28; }
.svc-next-bg img{ width:100%; height:100%; object-fit:cover; }
.svc-next-card--dark::before{ content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(13,13,13,.2), rgba(13,13,13,.9)); }
.svc-next-all{ margin-top:calc(var(--d) * 50); }
@media (max-width:1024px){
  .svc-title, .svc-finding-top .svc-title, .svc-next-title, .svc-stat-label{ max-width:none; }
  .svc-lead, .svc-finding-text, .svc-case-desc, .svc-ring-text, .svc-hand, .svc-buy-text, .svc-next-text, .svc-acc-a, .svc-dl-note{ max-width:40rem; }
  .svc-sec{ padding-block:96px; }
  .svc-head{ grid-template-columns:1fr; row-gap:18px; padding-top:18px; margin-bottom:48px; }
  .svc-title{ font-size:44px; }
  .svc-lead{ margin-top:18px; }
  .svc-head-tools{ margin-top:24px; }
  .svc-hero{ padding-top:120px; padding-bottom:64px; }
  .svc-hero-grid{ margin-top:32px; grid-template-columns:1fr; row-gap:28px; }
  .svc-hero-eyebrow{ margin-bottom:18px; }
  .svc-h1{ font-size:60px; }
  .svc-hero-side{ gap:24px; }
  .svc-hero-stage{ margin-top:48px; }
  .svc-hero-grid--vid{ grid-template-columns:1fr; row-gap:28px; }
  .svc-hero-vid .vid--wide{ margin-left:0; max-width:640px; }
  .svc-hero-grid--vid ~ .svc-hero-stage{ margin-top:64px; }
  .svc-dl{ padding-block:72px; }
  .svc-dl-title{ font-size:32px; }
  .svc-dl-chart{ height:auto; margin-top:36px; padding-left:28px; }
  .svc-dl-axis{ left:6px; right:auto; top:0; bottom:0; width:2px; height:auto; background:repeating-linear-gradient(180deg, var(--ink-mute) 0 6px, transparent 6px 12px); }
  .svc-dl-axis-past{ width:2px; height:calc(var(--nowv, 0) * 100%); }
  .svc-dl-year{ display:none; }
  .svc-dl-list{ position:static; display:flex; flex-direction:column; gap:28px; }
  .svc-dl-item, .svc-dl-item:nth-child(even), .svc-dl-item.is-end{
    position:relative; left:auto; top:auto; bottom:auto; width:auto; transform:none; text-align:left;
    padding:0 0 0 8px; border:0;
  }
  .svc-dl-item::after, .svc-dl-item:nth-child(even)::after, .svc-dl-item.is-end::after{ left:-29px; right:auto; top:4px; bottom:auto; }
  .svc-dl-now{ position:relative; left:auto; top:auto; height:auto; border:0; padding-left:8px; }
  .svc-dl-now span{ position:static; transform:none; display:inline-block; animation:none; }
  .svc-dl-now::after{ content:""; position:absolute; left:-29px; top:calc(50% - 6px); width:12px; height:12px; border-radius:50%; background:var(--red); }
  .svc-finding-top{ grid-template-columns:1fr; }
  .svc-finding-top > :last-child{ border-left:0; padding-left:0; padding-top:0; padding-bottom:48px; }
  .svc-finding-top .svc-title{ margin-top:18px; font-size:44px; }
  .svc-finding-text{ margin-top:22px; font-size:22px; }
  .svc-stats{ grid-template-columns:1fr 1fr; }
  .svc-stat{ padding:28px 20px; gap:16px; }
  .svc-stat:nth-child(3){ border-left:0; }
  .svc-stat:nth-child(n+3){ border-top:1px solid var(--line); }
  .svc-stat-num{ font-size:60px; }
  .svc-cases-grid{ grid-template-columns:1fr; border-bottom:0; }
  .svc-cases-stage{ order:2; padding:24px 0 0; border-right:0; }
  .svc-cases-side{ display:contents; }
  .svc-cases-side > [role="tablist"]{ order:1; }
  .svc-case-tab{ padding:22px 20px 22px 24px; }
  .svc-case-name{ font-size:24px; }
  .svc-cases-actions{ padding:24px 0 0; order:3; }
  .svc-flow{ min-height:0; padding:36px 20px; }
  .svc-flow-link, .svc-flow-leaf::before{ height:28px; }
  .svc-flow-leaves{ padding-top:28px; gap:12px; }
  .svc-flow-leaf{ min-height:0; padding:14px; }
  .svc-ring-wrap{ grid-template-columns:1fr; row-gap:40px; }
  .svc-ring{ width:min(100%, 560px); padding:52px; }
  .svc-ring-title{ font-size:36px; margin-top:10px; }
  .svc-ring-text{ margin-top:14px; }
  .svc-hand{ margin-top:28px; padding-top:20px; }
  .svc-hand ul{ margin-top:14px; gap:10px; }
  .svc-pk{ grid-template-columns:1fr; gap:48px; }
  .svc-pk::before{ left:6px; right:auto; top:0; bottom:0; width:2px; height:auto; background:linear-gradient(180deg, var(--red) 0 20%, var(--line) 20%); }
  .svc-pk-item{ padding:0 0 0 40px; }
  .svc-pk-name{ font-size:34px; margin-top:6px; }
  .svc-pk-facts{ margin-top:20px; gap:12px; }
  .svc-pk-facts div{ grid-template-columns:110px 1fr; padding-bottom:12px; }
  .svc-pk-item .btn{ margin-top:22px; }
  .svc-buy{ margin-top:64px; grid-template-columns:1fr; gap:32px; padding:40px 28px; }
  .svc-buy-title{ font-size:30px; }
  .svc-buy-text{ margin-top:14px; }
  .svc-buy-list{ grid-template-columns:1fr; gap:22px; }
  .svc-buy-list li{ padding-top:18px; }
  .svc-buy::after{ width:220px; height:220px; right:-90px; top:-90px; border-width:30px; }
  .svc-shift{ grid-template-columns:1fr; gap:48px; }
  .svc-shift-points{ margin-top:32px; }
  .svc-shift-points li{ grid-template-columns:44px 1fr; padding:18px 0; }
  .svc-shift-chart{ padding:28px 22px; }
  .svc-shift-rows{ margin-top:22px; gap:20px; }
  .svc-proof{ grid-template-columns:1fr; }
  .svc-proof-quote{ padding:32px 0; border-right:0; border-bottom:1px solid var(--line); gap:18px; }
  .svc-proof-cards{ padding:24px 0 32px; gap:12px; }
  .svc-proof-photo{ min-height:220px; }
  .svc-proof-card{ padding:18px; }
  .svc-proof-card b{ font-size:44px; }
  .svc-faq{ grid-template-columns:1fr; gap:40px; }
  .svc-faq-aside{ position:static; }
  .svc-faq-aside .svc-title{ font-size:40px; }
  .svc-person{ margin-top:32px; padding:22px; gap:16px 18px; }
  .svc-acc-btn{ grid-template-columns:40px 1fr auto; padding:22px 0; }
  .svc-acc-a{ padding:0 0 26px 54px; }
  .svc-next{ grid-template-columns:1fr; gap:14px; }
  .svc-next-card{ min-height:300px; padding:32px 28px; gap:28px; }
  .svc-next-title{ font-size:44px; margin-top:10px; }
  .svc-next-card--dark .svc-next-title{ font-size:40px; }
  .svc-next-text{ margin-top:14px; }
  .svc-next-all{ margin-top:28px; }
}
@media (max-width:640px){
  .svc-sec{ padding-block:72px; }
  .svc-title{ font-size:34px; line-height:1.05; }
  .svc-hero{ padding-top:104px; }
  .svc-h1{ font-size:40px; line-height:1.02; }
  .svc-actions .btn{ flex:1 1 auto; }
  .svc-switch{ width:100%; }
  .svc-switch button{ flex:1; min-height:44px; padding-inline:12px; }
  .svc-dl-title{ font-size:28px; }
  .svc-finding-top .svc-title{ font-size:34px; }
  .svc-finding-text{ font-size:19px; }
  .svc-stats{ grid-template-columns:1fr; }
  .svc-stat{ border-left:0 !important; }
  .svc-stat + .svc-stat{ border-top:1px solid var(--line); }
  .svc-stat-label{ min-height:0; }
  .svc-stat-num{ font-size:52px; }
  .svc-case-name{ font-size:21px; }
  .svc-flow{ padding:28px 12px; }
  .svc-flow-leaves{ grid-template-columns:1fr; gap:10px; padding-top:0; }
  .svc-flow-leaves::before{ display:none; }
  .svc-flow-leaf::before{ display:none; }
  .svc-flow-leaf{ flex-direction:row; flex-wrap:wrap; align-items:center; gap:4px 10px; }
  .svc-flow-leaf > span:first-child{ flex:1 1 60%; }
  .svc-flow-status{ margin-top:0; }
  .svc-ring{ padding:34px; }
  .svc-ring-mark{ gap:6px; }
  .svc-ring-name{ font-size:13px; }
  .svc-ring-core{ font-size:12px; min-width:96px; min-height:96px; width:96px; height:96px; padding:10px; }
  .svc-ring-photo{ min-width:44px; min-height:44px; width:44px; height:44px; border-width:2px; }
  .svc-ring-title{ font-size:30px; }
  .svc-pk-name{ font-size:30px; }
  .svc-pk-facts div{ grid-template-columns:1fr; gap:4px; }
  .svc-proof-cards{ grid-template-columns:1fr 1fr; }
  .svc-proof-photo{ grid-column:1 / -1; }
  .svc-faq-aside .svc-title{ font-size:32px; }
  .svc-acc-btn{ grid-template-columns:30px 1fr auto; gap:10px; }
  .svc-acc-a{ padding-left:40px; }
  .svc-next-title{ font-size:34px; }
  .svc-next-card--dark .svc-next-title{ font-size:32px; }
}
.svc-ring-photo:nth-of-type(2) .svc-ring-tag, .svc-ring-photo:nth-of-type(3) .svc-ring-tag{ left:auto; right:0; transform:translateY(6px) scale(.85); transform-origin:right top; }
.svc-ring-photo:nth-of-type(1) .svc-ring-tag, .svc-ring-photo:nth-of-type(4) .svc-ring-tag{ left:0; transform:translateY(6px) scale(.85); transform-origin:left top; }
.svc-ring-photo.is-on:nth-of-type(n) .svc-ring-tag{ transform:scale(calc(1 / 1.08)); }
.svc-cs-grid{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(16px, calc(var(--d) * 30)); }
.svc-cs-grid--4{ grid-template-columns:repeat(4, minmax(0, 1fr)); }
.svc-cs{ display:flex; flex-direction:column; min-width:0; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:#fff; }
.svc-cs-photo{ position:relative; aspect-ratio:16 / 10; overflow:hidden; background:#ddd; }
.svc-cs-photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(.95); transition:filter .5s var(--ease), transform .8s var(--ease); }
.svc-cs:hover .svc-cs-photo img{ filter:none; transform:scale(1.03); }
.svc-cs-who{
  position:absolute; left:12px; bottom:12px; padding:5px 11px; border-radius:999px; background:rgba(255,255,255,.94); color:var(--ink);
  font-weight:500; font-size:max(12px, calc(var(--d) * 18)); letter-spacing:-.01em;
}
.svc-cs-body{ flex:1; display:flex; flex-direction:column; padding:max(18px, calc(var(--d) * 40)); }
.svc-cs-title{ font-weight:700; font-size:max(19px, calc(var(--d) * 36)); line-height:1.1; letter-spacing:-.035em; }
.svc-cs-story{ margin-top:max(12px, calc(var(--d) * 26)); display:grid; gap:max(10px, calc(var(--d) * 18)); }
.svc-cs-story dt{ font-weight:500; font-size:max(12px, calc(var(--d) * 17)); color:var(--red); letter-spacing:0; }
.svc-cs-story dd{ margin:3px 0 0; font-size:max(14px, calc(var(--d) * 21)); line-height:1.45; color:var(--ink-soft); letter-spacing:-.01em; }
.svc-cs-kpi{ display:flex; flex-wrap:wrap; gap:10px 28px; margin-top:auto; padding-top:max(16px, calc(var(--d) * 34)); }
.svc-cs-kpi span{ display:flex; flex-direction:column; min-width:0; }
.svc-cs-kpi b{ font-weight:700; font-size:max(24px, calc(var(--d) * 48)); line-height:1; letter-spacing:-.04em; color:var(--red); white-space:nowrap; }
.svc-cs-kpi small{ margin-top:5px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-soft); }
.svc-cs-foot{ display:flex; flex-direction:column; gap:4px; margin-top:max(14px, calc(var(--d) * 28)); padding-top:max(12px, calc(var(--d) * 22)); border-top:1px solid var(--line); font-size:max(12px, calc(var(--d) * 17)); color:var(--ink); }
.svc-cs-foot .svc-src{ margin:0; }
@media (max-width:1280px){ .svc-cs-grid--4{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width:1024px){ .svc-cs-grid, .svc-cs-grid--4{ grid-template-columns:repeat(2, minmax(0, 1fr)); } }
@media (max-width:640px){ .svc-cs-grid, .svc-cs-grid--4{ grid-template-columns:1fr; } }
.svc-values{ list-style:none; margin:calc(var(--d) * 90) 0 0; padding:0; display:grid; grid-template-columns:repeat(3, 1fr); gap:calc(var(--d) * 32); }
.svc-value{ position:relative; background:#fff; border-radius:max(14px, calc(var(--d) * 22)); padding:calc(var(--d) * 60) calc(var(--d) * 56) calc(var(--d) * 64); box-shadow:0 1px 2px rgba(0,0,0,.04), 0 18px 40px -24px rgba(0,0,0,.18); }
.svc-value-num{ font-weight:500; font-size:max(13px, calc(var(--d) * 20)); color:var(--red); }
.svc-value-name{ margin-top:calc(var(--d) * 70); font-weight:700; font-size:max(30px, calc(var(--d) * 72)); line-height:1; letter-spacing:-.045em; }
.svc-value-text{ margin-top:calc(var(--d) * 26); max-width:calc(var(--d) * 520); font-size:max(15px, calc(var(--d) * 24)); line-height:1.4; letter-spacing:-.02em; color:var(--ink-soft); }
.svc-tools{ list-style:none; margin:calc(var(--d) * 80) 0 0; padding:0; display:grid; grid-template-columns:repeat(auto-fill, minmax(max(140px, calc(var(--d) * 300)), 1fr)); gap:calc(var(--d) * 20); }
.svc-tool{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; aspect-ratio:16 / 9; border:1px solid var(--line); border-radius:max(10px, calc(var(--d) * 16)); padding:16px; text-align:center; font-weight:500; font-size:max(14px, calc(var(--d) * 22)); letter-spacing:-.02em; }
.svc-tool img{ max-width:60%; max-height:40%; width:auto; height:auto; object-fit:contain; filter:grayscale(1); opacity:.85; }
@media (max-width:1024px){ .svc-values{ grid-template-columns:1fr; gap:16px; margin-top:32px; } .svc-value{ padding:28px 24px 30px; } .svc-value-name{ margin-top:28px; } .svc-tools{ margin-top:28px; } }
.ap-intro--plain{ grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); align-items:end; }
.ap-intro--plain .ap-intro-text{ margin-top:0; }
.svc-vt .ap .tile h3{ order:-2; margin:0 0 4px; font-weight:700; font-size:max(22px, calc(var(--d) * 44)); line-height:1.05; letter-spacing:-.04em; color:var(--ink); }
.svc-vt .ap .tile .mrail{ order:-1; margin:0 0 calc(var(--d) * 30); min-height:0; }
.svc-vt .ap .tile .mrail p{ font-size:max(15px, calc(var(--d) * 22)); }
.svc-vt .ap .bento{ row-gap:calc(var(--d) * 90); }
.svc-cta-sec{ padding-bottom:calc(var(--d) * 160); }
.svc-cta{
  position:relative; overflow:hidden; background:var(--red); color:#fff; border-radius:max(16px, calc(var(--d) * 28));
  padding:calc(var(--d) * 130) calc(var(--d) * 120); display:grid; grid-template-columns:minmax(0, 1.3fr) minmax(0, 1fr); column-gap:calc(var(--d) * 120); row-gap:calc(var(--d) * 50); align-items:end;
}
.svc-cta-title{ grid-row:span 2; font-weight:700; font-size:max(32px, calc(var(--d) * 96)); line-height:1; letter-spacing:-.05em; text-wrap:balance; }
.svc-cta-title span{ color:rgba(255,255,255,.62); }
.svc-cta-text{ font-size:max(16px, calc(var(--d) * 28)); line-height:1.4; letter-spacing:-.02em; color:rgba(255,255,255,.86); }
@media (max-width:1024px){
  .ap-intro--plain{ grid-template-columns:1fr; }
  .ap-intro--plain .ap-intro-text{ max-width:none; }
  .svc-vt .ap .bento{ row-gap:40px; }
  .svc-cta{ grid-template-columns:1fr; padding:40px 24px 32px; row-gap:20px; }
  .svc-cta-title{ grid-row:auto; }
}
.vid{
  --vid-radius:max(12px, calc(var(--d) * 22));
  --vid-icon:max(56px, calc(var(--d) * 120));
  position:relative; min-width:0; color:inherit;
}
.vid-play{
  position:relative; display:block; width:100%; aspect-ratio:16 / 9; overflow:hidden; isolation:isolate;
  border-radius:var(--vid-radius); background:#1a1a1d; color:#fff;
  box-shadow:0 1px 0 rgba(255,255,255,.04) inset, 0 18px 40px -24px rgba(0,0,0,.45);
}
.vid-play .vid-poster{
  position:absolute; inset:0; width:100%; height:100%; max-width:none; object-fit:cover;
  transition:transform .8s var(--ease), filter .5s var(--ease);
}
.vid-play::after{
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.5) 100%),
    linear-gradient(200deg, rgba(177,32,37,.22) 0%, rgba(177,32,37,0) 40%);
}
.vid-icon{
  position:absolute; left:50%; top:50%; z-index:2; width:var(--vid-icon); height:var(--vid-icon);
  transform:translate(-50%, -50%); border-radius:50%; display:grid; place-items:center;
  background:#fff; color:var(--red);
  box-shadow:0 10px 30px -8px rgba(0,0,0,.45), 0 0 0 max(6px, calc(var(--d) * 12)) rgba(255,255,255,.18);
  transition:transform .35s var(--ease), background-color .25s var(--ease), color .25s var(--ease), box-shadow .35s var(--ease);
}
.vid-icon svg{ width:34%; height:auto; margin-left:6%; }
.vid-play:hover .vid-poster, .vid-play:focus-visible .vid-poster{ transform:scale(1.045); }
.vid-play:hover .vid-icon, .vid-play:focus-visible .vid-icon{
  transform:translate(-50%, -50%) scale(1.12); background:var(--red); color:#fff;
  box-shadow:0 12px 34px -8px rgba(177,32,37,.6), 0 0 0 max(8px, calc(var(--d) * 16)) rgba(255,255,255,.22);
}
.vid-play:focus-visible{ outline:2px solid var(--red); outline-offset:4px; }
.vid-cap{ display:flex; flex-direction:column; gap:max(4px, calc(var(--d) * 8)); margin-top:max(12px, calc(var(--d) * 24)); }
.vid-title{
  font-weight:700; font-size:max(16px, calc(var(--d) * 30)); line-height:1.2; letter-spacing:-.03em; color:inherit;
}
.vid-meta{ font-size:max(13px, calc(var(--d) * 20)); line-height:1.35; letter-spacing:-.005em; opacity:.62; }
.vid-len{ font-variant-numeric:tabular-nums; }
.vid-badge{
  position:absolute; z-index:3; left:max(12px, calc(var(--d) * 24)); top:max(12px, calc(var(--d) * 24));
  display:inline-flex; align-items:center; gap:7px; padding:5px 11px 5px 9px; border-radius:999px;
  background:rgba(12,12,14,.62); color:#fff; backdrop-filter:blur(6px); -webkit-backdrop-filter:blur(6px);
  font-weight:500; font-size:13px; line-height:1.2; letter-spacing:-.005em; white-space:nowrap;
  border:1px solid rgba(255,255,255,.16);
}
.vid-badge::before{ content:""; width:6px; height:6px; border-radius:50%; background:var(--red); box-shadow:0 0 0 3px rgba(177,32,37,.3); }
.vid.is-pending .vid-poster{ filter:saturate(.75); }
.vid.is-pending .vid-icon{ opacity:.62; background:rgba(255,255,255,.88); box-shadow:0 8px 22px -10px rgba(0,0,0,.4); }
.vid.is-pending .vid-play:hover .vid-icon, .vid.is-pending .vid-play:focus-visible .vid-icon{
  opacity:.8; background:#fff; color:var(--red); transform:translate(-50%, -50%) scale(1.06);
}
.vid-note{
  position:absolute; z-index:4; left:50%; bottom:max(12px, calc(var(--d) * 26));
  transform:translate(-50%, 8px); opacity:0; pointer-events:none;
  padding:8px 14px; border-radius:999px; background:#fff; color:var(--ink);
  font-weight:500; font-size:14px; line-height:1.2; white-space:nowrap;
  box-shadow:0 10px 30px -10px rgba(0,0,0,.5);
  transition:opacity .3s var(--ease), transform .3s var(--ease);
}
.vid-note b{ color:var(--red); font-weight:700; }
.vid.is-noted .vid-note{ opacity:1; transform:translate(-50%, 0); }
.vid--portrait{ --vid-icon:max(52px, calc(var(--d) * 96)); width:100%; max-width:max(220px, calc(var(--d) * 420)); }
.vid--portrait .vid-play{ aspect-ratio:9 / 16; }
.vid--portrait .vid-note{ white-space:normal; width:max-content; max-width:88%; text-align:center; }
.vid--portrait.vid--side{ max-width:none; display:grid; grid-template-columns:max(150px, calc(var(--d) * 300)) minmax(0, 1fr); gap:max(16px, calc(var(--d) * 36)); align-items:end; }
.vid--side .vid-cap{ margin-top:0; }
.vid--bubble{
  --vid-size:96px; --vid-icon:36px;
  display:inline-flex; align-items:center; gap:max(14px, calc(var(--d) * 24)); max-width:100%;
}
.vid.vid--bubble .vid-play{
  flex:none; width:var(--vid-size); height:var(--vid-size); aspect-ratio:1; border-radius:50%; overflow:visible;
  background:transparent; box-shadow:none;
}
.vid.vid--bubble .vid-poster{
  width:100%; height:100%; border-radius:50%; object-fit:cover; background:#e9e9e9;
}
.vid--bubble .vid-play::after{ border-radius:50%; background:linear-gradient(180deg, rgba(0,0,0,0) 35%, rgba(0,0,0,.42) 100%); }
.vid--bubble .vid-play::before{
  content:""; position:absolute; inset:-5px; z-index:2; border-radius:50%; pointer-events:none;
  border:2px solid var(--red); border-right-color:transparent; border-bottom-color:transparent;
  transform:rotate(-20deg); transition:transform .6s var(--ease);
}
.vid--bubble .vid-play:hover::before, .vid--bubble .vid-play:focus-visible::before{ transform:rotate(70deg); }
.vid--bubble .vid-icon{ box-shadow:0 6px 16px -6px rgba(0,0,0,.5); }
.vid--bubble .vid-play:hover .vid-poster{ transform:none; }
.vid--bubble .vid-play:focus-visible{ outline-offset:8px; border-radius:50%; }
.vid--bubble .vid-cap{ margin-top:0; min-width:0; }
.vid--bubble .vid-title{ font-size:max(15px, calc(var(--d) * 24)); }
.vid--bubble .vid-badge{ position:static; align-self:flex-start; margin-bottom:2px; padding:3px 9px 3px 8px; font-size:12px;
  background:rgba(127,127,127,.14); color:inherit; border-color:rgba(127,127,127,.28); backdrop-filter:none; }
.vid--bubble .vid-note{ left:calc(var(--vid-size) / 2); bottom:auto; top:calc(100% + 10px); }
.vid--bubble.is-noted .vid-note{ transform:translate(-50%, 0); }
.vid--bubble.vid--tip .vid-note{ left:50%; }
.vid--tip{ display:inline-block; }
.vid--tip .vid-cap{
  position:absolute; z-index:5; left:50%; bottom:calc(100% + 14px); width:max-content; max-width:240px;
  padding:10px 14px; border-radius:10px; background:var(--ink); color:#fff; text-align:left;
  box-shadow:0 12px 30px -12px rgba(0,0,0,.55);
  opacity:0; visibility:hidden; transform:translate(-50%, 6px);
  transition:opacity .25s var(--ease), transform .25s var(--ease), visibility .25s;
}
.vid--tip .vid-cap::after{ content:""; position:absolute; left:50%; top:100%; margin-left:-6px; border:6px solid transparent; border-top-color:var(--ink); }
.vid--tip:hover .vid-cap, .vid--tip:focus-within .vid-cap{ opacity:1; visibility:visible; transform:translate(-50%, 0); }
.vid--tip .vid-badge{ background:rgba(255,255,255,.14); border-color:rgba(255,255,255,.2); }
.theme-dark .vid--tip .vid-cap{ background:#fff; color:var(--ink); }
.theme-dark .vid--tip .vid-cap::after{ border-top-color:#fff; }
.vid-dlg{
  width:min(92vw, 1280px); max-width:none; max-height:none; margin:auto; padding:0; border:0;
  background:transparent; color:#fff; overflow:visible;
}
.vid-dlg::backdrop{ background:rgba(6,6,8,.9); backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px); }
.vid-dlg[open]{ animation:vid-in .35s var(--ease) both; }
.vid-dlg[open]::backdrop{ animation:vid-fade .35s ease both; }
@keyframes vid-in{ from{ opacity:0; transform:translateY(14px) scale(.98); } to{ opacity:1; transform:none; } }
@keyframes vid-fade{ from{ opacity:0; } to{ opacity:1; } }
.vid-dlg-box{ position:relative; display:flex; flex-direction:column; align-items:center; gap:14px; }
.vid-dlg-video{
  display:block; width:100%; max-height:calc(100vh - 150px); max-height:calc(100dvh - 150px); aspect-ratio:16 / 9;
  background:#000; border-radius:14px; box-shadow:0 30px 80px -20px rgba(0,0,0,.8);
}
.vid-dlg.is-portrait{ width:auto; }
.vid-dlg.is-portrait .vid-dlg-video{ width:auto; height:min(calc(100vh - 150px), calc(92vw * 16 / 9)); height:min(calc(100dvh - 150px), calc(92vw * 16 / 9)); max-width:92vw; aspect-ratio:9 / 16; object-fit:contain; }
.vid-dlg-head{ width:100%; display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.vid-dlg-title{ font-weight:700; font-size:18px; line-height:1.25; letter-spacing:-.02em; }
.vid-dlg-meta{ display:block; margin-top:3px; font-weight:400; font-size:14px; color:rgba(255,255,255,.62); }
.vid-dlg-close{
  flex:none; width:44px; height:44px; border-radius:50%; display:grid; place-items:center;
  background:rgba(255,255,255,.12); color:#fff; border:1px solid rgba(255,255,255,.2);
  transition:background-color .2s, transform .2s;
}
.vid-dlg-close:hover{ background:var(--red); border-color:var(--red); }
.vid-dlg-close svg{ width:18px; height:18px; }
.vid-dlg.is-portrait .vid-dlg-head{ max-width:92vw; }
.vid-aside{ display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:calc(var(--d) * 140); align-items:end; }
.vid-aside > .vid--portrait{ width:max(200px, calc(var(--d) * 400)); }
.svc-finding-top .vid--wide{ margin-top:calc(var(--d) * 72); max-width:calc(var(--d) * 900); }
.svc-shift .vid--side{ margin-top:calc(var(--d) * 80); max-width:calc(var(--d) * 900); }
.prd-stage-copy .vid--wide{ margin-top:calc(var(--d) * 80); }
.vid-bridge{ position:relative; z-index:5; height:0; }
.vid-bridge > .vid{ position:absolute; top:calc(var(--bw) * -9 / 32); width:var(--bw); max-width:none; }
.vid-bridge--mitte{ --bw:min(70vw, 1792px); }
.vid-bridge--mitte > .vid{ left:50%; translate:-50% 0; color:var(--ink); }
.vid-bridge--rechts{ --bw:calc(var(--d) * 900); }
.vid-bridge--rechts > .vid{ right:max(var(--gutter), calc(var(--d) * 212)); color:#fff; }
.vid-bridge--rechts .vid-cap{ margin-top:max(10px, calc(var(--d) * 18)); }
@media (max-width:1024px){
  .vid-aside{ grid-template-columns:1fr; gap:40px; }
  .vid-aside > .vid--portrait{ width:240px; }
  .svc-finding-top .vid--wide{ margin-top:32px; max-width:640px; }
  .svc-shift .vid--side{ margin-top:36px; max-width:560px; }
  .prd-stage-copy .vid--wide{ margin-top:36px; max-width:520px; }
  .vid-bridge--mitte{ --bw:calc(100vw - 2 * var(--gutter)); }
  .vid-bridge--rechts{ --bw:min(72vw, 560px); }
}
@media (max-width:640px){
  .vid--portrait.vid--side{ grid-template-columns:132px minmax(0, 1fr); gap:16px; }
  .vid-aside > .vid--portrait{ width:200px; }
  .vid-dlg-video{ border-radius:10px; }
}
@media (prefers-reduced-motion:reduce){
  .vid-play .vid-poster, .vid-icon, .vid--bubble .vid-play::before{ transition:none; }
  .vid-play:hover .vid-poster, .vid-play:focus-visible .vid-poster{ transform:none; }
  .vid-play:hover .vid-icon, .vid-play:focus-visible .vid-icon{ transform:translate(-50%, -50%); }
  .vid--bubble .vid-play:hover::before{ transform:rotate(-20deg); }
  .vid-dlg[open], .vid-dlg[open]::backdrop{ animation:none; }
}
.vid.is-pending .vid-cap{ display:none; }
.vid.is-pending.vid--side{ display:block; }
.vid.is-pending .vid-play{ cursor:default; }
.vid.is-pending .vid-play:hover .vid-poster{ transform:none; }
.vid.is-pending .vid-poster{ filter:saturate(.6) brightness(.82); }
.vid.is-pending.vid--bubble .vid-play:hover::before{ transform:rotate(-20deg); }
.vid-wip{
  position:absolute; left:50%; top:50%; z-index:3; transform:translate(-50%, -50%);
  display:flex; flex-direction:column; align-items:center; gap:2px; padding:10px 16px; border-radius:14px;
  background:rgba(12,12,14,.58); color:#fff; text-align:center; white-space:nowrap; pointer-events:none;
  border:1px solid rgba(255,255,255,.16);
}
.vid-wip b{ font-weight:600; font-size:max(14px, calc(var(--d) * 22)); letter-spacing:-.02em; line-height:1.15; }
.vid-wip small{ font-size:max(11px, calc(var(--d) * 15)); opacity:.7; letter-spacing:.02em; text-transform:uppercase; }
.vid--bubble .vid-wip{ padding:5px 8px; border-radius:9px; gap:0; }
.vid--bubble .vid-wip b{ font-size:11px; }
.vid--bubble .vid-wip small{ font-size:9px; }
.bi-v-note{ margin-top:14px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); }
.ap.bi-v .tile .scene{ min-height:300px; }
.ap .bi-two{ display:grid; grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr); gap:56px; align-items:center; }
.ap .bi-row{ position:relative; display:flex; align-items:center; gap:11px; padding:10px 12px; font-size:14px; font-weight:500; min-width:0;
  max-height:60px; transition:opacity .45s, transform .45s, border-color .35s, background .35s, max-height .5s, margin .5s, padding .5s; }
.ap .bi-row + .bi-row{ margin-top:8px; }
.ap .bi-row .tx{ flex:none; white-space:nowrap; }
.ap .bi-row .ico{ width:28px; height:28px; }
.ap .bi-row .ico svg{ width:15px; height:15px; }
.ap.bi-v .chip svg{ width:13px; height:13px; }
.ap .bi-row.on{ border-color:var(--ap-redmid); }
.ap .bi-row.on .ico{ background:var(--ap-redbg); color:var(--ap-red); }
.ap .bi-row.bad{ border:1.5px dashed var(--ap-red); background:var(--ap-redbg); }
.ap .bi-row.gone{ opacity:0; max-height:0; margin-top:0; padding-block:0; border-width:0; transform:scale(.96); overflow:hidden; }
.ap .bi-row .chip{ margin-left:auto; }
.ap .bi-row .chip:empty{ display:none; }
.ap .bi-ph{ flex:1; min-width:30px; height:8px; border-radius:4px; background:var(--ap-wash); overflow:hidden; }
.ap .bi-ph i{ display:block; height:100%; width:var(--w); border-radius:4px; background:var(--ap-wire); transition:width .6s; }
.ap .bi-row.hole .bi-ph i{ width:0; }
.ap .bi-srcs{ display:flex; flex-direction:column; gap:14px; max-width:260px; }
.ap .bi-srcs .bi-row + .bi-row{ margin-top:0; }
.ap .bi-box{ position:relative; padding:16px 18px 18px; transition:border-color .35s, box-shadow .35s; }
.ap .bi-box.at{ border-color:var(--ap-red); }
.ap .bi-kpis{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:10px; }
.ap .bi-kpi{ position:relative; height:86px; border-radius:10px; border:1.5px dashed var(--ap-wire); background:transparent; overflow:hidden; transition:border-color .3s, background .3s; }
.ap .bi-kpi i{ position:absolute; left:12px; right:12px; bottom:0; height:0; border-radius:5px 5px 0 0; background:var(--ap-red); transition:height .8s cubic-bezier(.2,.7,.2,1); }
.ap .bi-kpi.on{ border:1.5px solid transparent; background:var(--ap-wash); }
.ap .bi-kpi.on i{ height:var(--h); }
.ap .bi-doc-h{ display:flex; align-items:center; gap:10px; font-size:14px; margin-bottom:16px; }
.ap .bi-doc-h b{ font-weight:500; }
.ap .bi-doc-h .chip{ margin-left:auto; }
.ap .bi-doc-h .ico{ width:28px; height:28px; }
.ap .bi-doc-h .ico svg{ width:15px; height:15px; }
.ap .bi-lines{ display:flex; flex-direction:column; gap:9px; }
.ap .bi-lines i{ display:block; height:8px; border-radius:4px; background:var(--ap-wash); position:relative; overflow:hidden; }
.ap .bi-lines i::after{ content:""; position:absolute; left:0; top:0; bottom:0; width:0; border-radius:4px; background:var(--ap-wire); transition:width .7s cubic-bezier(.2,.7,.2,1); }
.ap .bi-bars{ display:flex; align-items:flex-end; gap:8px; height:70px; margin-top:16px; padding-top:4px; border-bottom:1px solid var(--ap-line); }
.ap .bi-bars i{ flex:1; height:0; border-radius:4px 4px 0 0; background:var(--ap-red); transition:height .7s cubic-bezier(.2,.7,.2,1); }
.ap .bi-doc.fill .bi-lines i::after{ width:var(--w); }
.ap .bi-doc.fill .bi-lines i:nth-child(2)::after{ transition-delay:.25s; }
.ap .bi-doc.fill .bi-lines i:nth-child(3)::after{ transition-delay:.5s; }
.ap .bi-doc.fill .bi-bars i{ height:var(--h); }
.ap .bi-doc.fill .bi-bars i:nth-child(2){ transition-delay:.7s; } .ap .bi-doc.fill .bi-bars i:nth-child(3){ transition-delay:.8s; }
.ap .bi-doc.fill .bi-bars i:nth-child(4){ transition-delay:.9s; } .ap .bi-doc.fill .bi-bars i:nth-child(5){ transition-delay:1s; }
.ap .bi-doc.fill .bi-bars i:nth-child(1){ transition-delay:.6s; }
.ap .bi-chart{ position:relative; height:130px; margin-top:6px; }
.ap .bi-chart svg{ position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.ap .bi-chart path{ fill:none; vector-effect:non-scaling-stroke; }
.ap .bi-chart .g{ stroke:var(--ap-line); stroke-width:1; }
.ap .bi-chart .ist{ stroke:var(--ap-ink); stroke-width:2; stroke-linejoin:round; }
.ap .bi-chart .fc{ stroke:var(--ap-red); stroke-width:2; stroke-dasharray:5 4; }
.ap .bi-chart .band{ fill:rgba(177,32,37,.12); stroke:none; }
.ap .bi-c1, .ap .bi-c2{ clip-path:inset(-10px 100% -10px 59%); transition:clip-path 1.2s cubic-bezier(.4,0,.2,1); }
.ap .bi-chart.fc .bi-c2, .ap .bi-chart.band .bi-c1{ clip-path:inset(-10px -10px -10px 59%); }
.ap .bi-now{ position:absolute; left:60%; top:0; bottom:0; border-left:1.5px dashed var(--ap-wire); }
.ap .bi-chart .pin{ top:-14px; right:0; }
.ap .bi-base{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:4px; padding:24px 18px; }
.ap .bi-base .ico{ width:48px; height:48px; border-radius:14px; margin-bottom:8px; }
.ap .bi-base .ico svg{ width:24px; height:24px; }
.ap .bi-base .lbl{ margin-bottom:6px; }
.ap .bi-base.ok{ border-color:var(--ap-okline); }
.ap .bi-base.ok .ico{ background:var(--ap-okbg); color:var(--ap-ok); }
@media (max-width:760px){
  .ap .bi-two{ grid-template-columns:1fr; gap:44px; }
  .ap.bi-v .tile .scene{ min-height:0; }
  .ap .bi-srcs{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:8px; max-width:none; }
  .ap .bi-srcs .bi-row{ flex-direction:column; gap:6px; padding:10px 6px; font-size:12.5px; text-align:center; }
  .ap .bi-kpi{ height:64px; }
  .ap .bi-row .tx{ font-size:13px; }
}
.bi-find{ display:grid; grid-template-columns:minmax(0, 1fr) calc(var(--d) * 560); gap:calc(var(--d) * 60); align-items:stretch; }
.bi-find-chart{
  margin:0; padding:calc(var(--d) * 70) calc(var(--d) * 80) calc(var(--d) * 60); border-radius:16px; background:var(--wash);
  display:flex; flex-direction:column; gap:calc(var(--d) * 50);
}
.bi-find-cap{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:baseline; gap:6px 24px; }
.bi-find-cap b{ font-weight:700; font-size:max(18px, calc(var(--d) * 36)); letter-spacing:-.035em; }
.bi-find-cap span{ font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-mute); }
.bi-find-plot{ --lab:calc(var(--d) * 560); position:relative; flex:1; display:flex; flex-direction:column; }
.bi-find-scale{ position:relative; height:24px; margin-left:calc(var(--lab) + calc(var(--d) * 40)); margin-right:calc(var(--d) * 110); }
.bi-find-scale span{
  position:absolute; left:calc(var(--x) * 1%); top:0; transform:translateX(-50%);
  font-size:max(12px, calc(var(--d) * 16)); color:var(--ink-mute); font-variant-numeric:tabular-nums; white-space:nowrap;
}
.bi-find-scale span:last-child{ transform:translateX(-70%); }
.bi-find-rows{ position:relative; display:grid; gap:calc(var(--d) * 28); padding-top:calc(var(--d) * 20); flex:1; align-content:space-around; }
.bi-find-rows::before{ 
  content:""; position:absolute; top:0; bottom:0; left:calc(var(--lab) + calc(var(--d) * 40)); right:calc(var(--d) * 110); pointer-events:none;
  background:repeating-linear-gradient(90deg, rgba(0,0,0,.09) 0 1px, transparent 1px 25%); border-right:1px solid rgba(0,0,0,.09);
}
.bi-find-row{
  position:relative; display:grid; grid-template-columns:var(--lab) minmax(0, 1fr); column-gap:calc(var(--d) * 40); align-items:center;
}
.bi-find-label{ font-weight:500; font-size:max(15px, calc(var(--d) * 25)); line-height:1.25; letter-spacing:-.02em; color:var(--ink); text-align:right; }
.bi-find-track{ position:relative; display:flex; align-items:center; gap:14px; margin-right:calc(var(--d) * 110); height:calc(var(--d) * 58); min-height:22px; }
.bi-find-track i{
  display:block; height:100%; width:0; border-radius:0 6px 6px 0; background:var(--ink);
  transition:width 1.4s var(--ease);
}
.bi-find-track b{
  position:absolute; left:calc(var(--v) * 1% + 14px); white-space:nowrap;
  font-weight:500; font-size:max(16px, calc(var(--d) * 30)); letter-spacing:-.04em; font-variant-numeric:tabular-nums;
  opacity:0; transition:opacity .5s var(--ease) 1.1s;
}
.bi-find-src{ grid-column:2; margin-top:6px; font-size:max(12px, calc(var(--d) * 16)); color:var(--ink-mute); }
.bi-find-row.is-key .bi-find-track{ height:calc(var(--d) * 110); min-height:40px; }
.bi-find-row.is-key .bi-find-track i{ background:var(--red); }
.bi-find-row.is-key .bi-find-track b{ font-size:max(26px, calc(var(--d) * 72)); color:var(--red); }
.bi-find-row.is-key .bi-find-label{ font-size:max(17px, calc(var(--d) * 32)); }
.is-in .bi-find-track i{ width:calc(var(--v) * 1%); }
.is-in .bi-find-track b{ opacity:1; }
.bi-find-row:nth-child(2) i{ transition-delay:.12s; } .bi-find-row:nth-child(3) i{ transition-delay:.24s; }
.bi-find-row:nth-child(4) i{ transition-delay:.36s; } .bi-find-row:nth-child(5) i{ transition-delay:.48s; }
.bi-find-aside{ display:flex; flex-direction:column; gap:calc(var(--d) * 40); }
.bi-find-note{ padding:calc(var(--d) * 50); border-radius:16px; background:var(--black); color:#fff; position:relative; overflow:hidden; }
.bi-find-note::after{ 
  content:""; position:absolute; right:calc(var(--d) * -150); bottom:calc(var(--d) * -150); width:calc(var(--d) * 280); height:calc(var(--d) * 280);
  border-radius:50%; border:calc(var(--d) * 36) solid rgba(177,32,37,.6); border-right-color:transparent; border-bottom-color:transparent;
}
.bi-find-note-num{ font-weight:500; font-size:max(40px, calc(var(--d) * 110)); line-height:1; letter-spacing:-.055em; font-variant-numeric:tabular-nums; }
.bi-find-note-text{ max-width:82%; margin-top:calc(var(--d) * 24); font-size:max(15px, calc(var(--d) * 23)); line-height:1.45; color:rgba(255,255,255,.72); }
.bi-find-note .svc-src{ margin-top:calc(var(--d) * 24); color:rgba(255,255,255,.5); }
.bi-find-note .svc-src a{ text-decoration-color:rgba(255,255,255,.3); }
.bi-find:has(> .bi-find-aside[hidden]){ grid-template-columns:minmax(0, 1fr); }
@media (max-width:1024px){
  .bi-find{ grid-template-columns:1fr; gap:24px; }
  .bi-find-chart{ padding:28px 22px; gap:24px; }
  .bi-find-plot{ --lab:0px; }
  .bi-find-scale{ margin-left:0; margin-right:64px; }
  .bi-find-rows{ gap:18px; padding-top:12px; }
  .bi-find-rows::before{ left:0; right:64px; }
  .bi-find-row{ grid-template-columns:1fr; row-gap:6px; }
  .bi-find-label{ text-align:left; position:relative; z-index:1; }
  .bi-find-track{ margin-right:64px; }
  .bi-find-src{ grid-column:1; margin-top:0; }
  .bi-find-note{ padding:24px; }
}
@media (max-width:640px){
  .bi-find-row.is-key .bi-find-track b{ font-size:26px; }
}
.ap .bi-tree{ max-width:640px; }
.ap .bi-tree > .lbl{ align-self:flex-start; }
.ap .bi-srow{ display:grid; grid-template-columns:repeat(var(--n, 3), minmax(0, 1fr)); gap:12px; width:100%; }
.ap .bi-sc{ position:relative; display:flex; align-items:center; gap:10px; padding:11px 12px; font-size:13.5px; font-weight:500; line-height:1.25; min-width:0; }
.ap .bi-sc > span:last-child{ min-width:0; }
.ap .bi-sc .ico{ width:28px; height:28px; border-radius:8px; }
.ap .bi-sc .ico svg{ width:15px; height:15px; }
.ap .bi-tree .stepc{ width:100%; max-width:420px; }
.ap .bi-tree .schips .chip.off{ background:transparent; border:1px dashed var(--ap-wire); color:var(--ap-mute); }
.ap .bi-tree .gv{ height:56px; }
@media (max-width:760px){
  .ap .bi-srow{ grid-template-columns:1fr; gap:8px; }
  .ap .bi-sc .sub{ display:none; }
}
.bi-vs{
  margin-top:calc(var(--d) * 160); padding-top:calc(var(--d) * 70); border-top:1px solid var(--line);
  display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.6fr); gap:calc(var(--d) * 50) calc(var(--d) * 120);
}
.bi-vs-title{ font-weight:700; font-size:calc(var(--d) * 64); line-height:1.02; letter-spacing:-.045em; }
.bi-vs-title span{ color:var(--ink-mute); }
.bi-vs-grid{ margin:0; display:grid; }
.bi-vs-grid > div{ display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1fr) minmax(0, 1fr); gap:20px; padding:calc(var(--d) * 24) 0; border-bottom:1px solid var(--line); }
.bi-vs-grid dt{ font-weight:500; font-size:max(14px, calc(var(--d) * 22)); }
.bi-vs-grid dd{ margin:0; font-size:max(14px, calc(var(--d) * 22)); line-height:1.4; color:var(--ink-soft); }
.bi-vs-grid dd + dd{ color:var(--ink); padding-left:18px; border-left:2px solid var(--red); }
.bi-vs-grid .bi-vs-head dd{ font-size:max(12px, calc(var(--d) * 17)); letter-spacing:.04em; text-transform:uppercase; color:var(--ink-mute); }
.bi-vs-grid .bi-vs-head dd + dd{ color:var(--red); }
.bi-vs-actions{ grid-column:2; display:flex; flex-wrap:wrap; gap:12px; }
@media (max-width:1024px){
  .bi-vs{ grid-template-columns:1fr; margin-top:72px; padding-top:36px; gap:24px; }
  .bi-vs-title{ font-size:36px; }
  .bi-vs-actions{ grid-column:1; }
}
@media (max-width:640px){
  .bi-vs-title{ font-size:30px; }
  .bi-vs-grid > div{ grid-template-columns:1fr 1fr; gap:6px 14px; padding:14px 0; }
  .bi-vs-grid dt{ grid-column:1 / -1; }
  .bi-vs-grid .bi-vs-head dt{ display:none; }
}
.ap .bi-tree .leaf .pin{ top:auto; bottom:-11px; }
.bi-person .vid{ margin:0; }
.prd-stage-grid.dx-solo{ grid-template-columns:minmax(0, 1fr); }
.prd-stage-grid.dx-solo .prd-stage-copy{ max-width:calc(var(--d) * 1500); }
.dx-aplus{ margin-top:calc(var(--d) * 110); }
.dx-aplus .prd-demo-note{ margin-top:12px; }
@media (max-width:1024px){ .dx-aplus{ margin-top:48px; } }
.ap .pv .dx-stamp{
  position:absolute; right:12px; top:50%; z-index:2; margin-top:-14px;
  padding:4px 10px; border:2px solid var(--ap-red); border-radius:6px; color:var(--ap-red); background:var(--ap-card);
  font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; line-height:1.2;
  transform:rotate(-7deg) scale(1.6); opacity:0; transition:opacity .25s, transform .5s var(--ap-spring);
}
.ap .pv .dx-stamp.on{ opacity:1; transform:rotate(-7deg); }
[data-story="dx-stage"] .mid .mid-f .chip.r{ opacity:0; transform:scale(.7); transition:opacity .25s, transform .45s var(--ap-spring); }
[data-story="dx-stage"] .mid.dx-cat .mid-f .chip.r{ opacity:1; transform:none; }
[data-story="dx-stage"] .mid .mid-f .route{ opacity:0; transition:opacity .4s .3s; }
[data-story="dx-stage"] .mid.dx-cat .mid-f .route{ opacity:1; }
.ap .dx-findrow{ display:grid; grid-template-columns:1fr 76px 1.25fr 76px 1fr; margin-top:56px; }
.ap .dx-find{ grid-column:3 / 6; padding:14px 16px; display:flex; flex-direction:column; gap:16px; opacity:.55; }
.ap .dx-find.on{ opacity:1; border-color:var(--ap-red); }
.ap .dx-find-q{ display:flex; align-items:center; gap:11px; min-height:32px; padding:0 0 12px; border-bottom:1px solid var(--ap-cardb); font-size:15px; font-weight:500; }
.ap .dx-q{ flex:1; min-width:0; white-space:nowrap; overflow:hidden; }
.ap .dx-q:empty::before{ content:"Name, Aktenzeichen, Thema …"; color:var(--ap-mute); font-weight:400; }
.ap .dx-q.caret:empty::before{ content:none; }
.ap .dx-rows{ list-style:none; display:flex; flex-direction:column; gap:8px; }
.ap .dx-rows li{
  position:relative; display:grid; grid-template-columns:auto minmax(0, 1fr) auto; align-items:center; gap:12px;
  padding:9px 12px; border-radius:10px; background:var(--ap-wash); border:1px solid transparent; font-size:13.5px;
  transition:opacity .35s, border-color .35s, background .35s;
}
.ap .dx-rows li.hit{ order:-1; border-color:var(--ap-red); background:var(--ap-redbg); }
.ap .dx-rows li.miss{ opacity:.4; }
.ap .dx-rows .chip{ font-size:11.5px; padding:3px 9px; background:var(--ap-card); }
.ap .dx-rows li.hit .chip{ background:var(--ap-red); color:#fff; }
.ap .dx-rn{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ap .dx-az{ font-family:ui-monospace, Menlo, monospace; font-size:12.5px; color:var(--ap-soft); }
@media (max-width:760px){
  .ap .dx-findrow{ grid-template-columns:1fr; margin-top:44px; }
  .ap .dx-find{ grid-column:1; }
  .ap .dx-az{ display:none; }
  .ap .dx-rows li{ grid-template-columns:auto minmax(0, 1fr); }
}
.ap .dxt-house{ padding:44px 28px 30px; }
.ap .dxt-row{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:clamp(48px, 6vw, 120px); align-items:stretch; }
.ap .dxt-card{ position:relative; display:flex; flex-direction:column; gap:18px; padding:22px 22px 24px; min-height:190px; cursor:pointer; }
.ap .dxt-card:not(.at):not(.past){ opacity:.42; }
.ap .dxt-card.at{ border-color:var(--ap-redmid); transform:translateY(-6px); }
.ap .dxt-n{ font-size:12px; letter-spacing:.08em; color:var(--ap-red); }
.ap .dxt-head{ display:flex; align-items:center; gap:12px; }
.ap .dxt-head b{ font-size:19px; font-weight:500; line-height:1.2; letter-spacing:-.02em; }
.ap .dxt-toks{ display:flex; gap:10px; margin-top:auto; }
.ap .dxt-tok{ width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:var(--ap-wash); color:var(--ap-soft); opacity:.35; transform:scale(.85); transition:opacity .4s, transform .5s var(--ap-spring), background .4s, color .4s; }
.ap .dxt-tok svg{ width:20px; height:20px; }
.ap .dxt-card.past .dxt-tok{ opacity:.8; transform:none; }
.ap .dxt-card.at .dxt-tok{ opacity:1; transform:none; background:var(--ap-redbg); color:var(--ap-red); }
.ap .dxt-card.at .dxt-tok:nth-child(2){ transition-delay:.15s; }
.ap .dxt-card.at .dxt-tok:nth-child(3){ transition-delay:.3s; }
.ap .dxt-say{ margin-top:28px; text-align:center; font-size:17px; line-height:1.5; color:var(--ap-soft); text-wrap:balance; }
.ap .dxt-say span{ border-radius:4px; transition:background .35s, color .35s, box-shadow .35s; }
.ap .dxt-say span.at{ background:var(--ap-redbg); box-shadow:0 0 0 3px var(--ap-redbg); color:var(--ap-ink); }
@media (max-width:760px){
  .ap .dxt-house{ padding:36px 12px 16px; }
  .ap .dxt-row{ grid-template-columns:1fr; gap:44px; }
  .ap .dxt-card{ min-height:0; }
  .ap .dxt-card.at{ transform:none; }
  .ap .dxt-say{ font-size:15px; text-align:left; }
}
@media (min-width:1025px){
  .dx-marks{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
}
@media (max-width:640px){
  .dx-marks{ grid-template-columns:1fr; }
}
.dx-marks + .prd-trust-note a{ text-decoration:underline; text-underline-offset:2px; }
.ap .eg-v-flow{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:56px; align-items:center; }
.ap .eg-v-flow .bi-row + .bi-row{ margin-top:0; }
.ap.eg-v .ki-grid{ grid-template-columns:repeat(9, minmax(0, 1fr)); }
.ap.eg-v .ki-row .ico svg{ width:15px; height:15px; }
@media (max-width:760px){ .ap .eg-v-flow{ grid-template-columns:1fr; gap:28px; } }
.svc-stat-num.eg-stat-word{ font-size:calc(var(--d) * 84); letter-spacing:-.045em; white-space:normal; line-height:1.02; }
@media (max-width:1024px){ .svc-stat-num.eg-stat-word{ font-size:40px; } }
@media (max-width:640px){ .svc-stat-num.eg-stat-word{ font-size:36px; } }
.svc-stats .ap-pin{ top:10px; right:10px; }
.eg-cases-cta{ margin-top:28px; }
@media (min-width:761px){ .ap [data-story="eg-cases"] .leaf .pin{ top:auto; bottom:-11px; } }
.eg-buy-way{
  position:relative; z-index:1; margin-top:calc(var(--d) * 44); padding:calc(var(--d) * 24) calc(var(--d) * 30);
  border-radius:10px; background:rgba(255,255,255,.07); border-left:3px solid var(--red);
  font-size:max(14px, calc(var(--d) * 22)); line-height:1.45; color:rgba(255,255,255,.82);
}
@media (max-width:1024px){ .eg-buy-way{ margin-top:22px; padding:14px 16px; } }
.svc-pk-item .ap-pin{ top:calc(var(--d) * 40); right:0; }
.svc-person .eg-faq-vid{ grid-column:1 / -1; }
.page-legal .legal-hero{ padding-bottom:calc(var(--d) * 60); }
.page-legal .legal-hero .svc-hero-eyebrow{ margin-top:max(22px, calc(var(--d) * 50)); }
.page-legal .legal-hero .svc-h1{ margin-top:max(12px, calc(var(--d) * 24)); hyphens:manual; }
.page-legal .legal{ background:#fff; padding-bottom:calc(var(--d) * 220); }
.legal-body{ max-width:860px; border-top:1px solid var(--line); padding-top:max(28px, calc(var(--d) * 60)); }
.legal-body h2{ margin-top:max(36px, calc(var(--d) * 70)); font-weight:700; font-size:max(19px, calc(var(--d) * 34)); line-height:1.2; letter-spacing:-.03em; color:var(--ink); }
.legal-body h2:first-child{ margin-top:0; }
.legal-body p{ margin-top:14px; font-size:max(15px, calc(var(--d) * 24)); line-height:1.6; letter-spacing:-.01em; color:var(--ink-soft); overflow-wrap:anywhere; }
.legal-body a{ color:var(--red); text-decoration:underline; text-underline-offset:3px; }
.legal-body .legal-lead{ margin-top:0; font-size:max(17px, calc(var(--d) * 30)); line-height:1.5; color:var(--ink); }
.legal-body .legal-date{ margin-top:calc(var(--d) * 80); font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-mute); }
.ap.ior-v .ior-v-eff{ margin-top:14px; }
.ap.ior-v .ki-grid{ grid-template-columns:repeat(12, minmax(0, 1fr)); }
.ap .ior-v-hub{ display:flex; flex-direction:column; align-items:center; gap:10px; padding:26px 18px; text-align:center; }
.ap .ior-v-hub .ico{ width:40px; height:40px; }
.ap .ior-v-hub.at{ border-color:var(--ap-red); }
.ap.ior-v [data-new]{ transition:opacity .4s, border-color .35s, background .35s; }
.ap .ior-cases{ grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:44px; }
.ap .ior-cases .scene{ padding:28px 24px 28px; }
.ap .ior-xs{ position:relative; z-index:auto; }
.ap .ior-cases .scene>.wires{ z-index:2; }
.ap .ior-xs-svg{ display:block; width:100%; height:auto; border-radius:14px; border:1px solid var(--ap-cardb); }
.ap .ior-c-sky{ fill:#fbf8f8; }
.ap .ior-c-sun{ fill:rgba(177,32,37,.12); }
.ap .ior-c-bld rect, .ior-c-bld path{ fill:#e7e1e1; }
.ap .ior-c-bld2{ fill:#dcd4d4; }
.ap .ior-c-win rect, .ior-c-win circle, .ior-c-bld .ior-c-win{ fill:#fff; }
.ap .ior-c-door{ fill:#cfc6c6; }
.ap .ior-c-dark{ fill:#3a3a3a; }
.ap .ior-c-screen{ fill:#fff; }
.ap .ior-c-glass{ fill:rgba(255,255,255,.7); stroke:#cfc6c6; }
.ap .ior-c-pole{ fill:none; stroke:#3a3a3a; stroke-width:5; stroke-linecap:round; }
.ap .ior-c-beam{ fill:rgba(177,32,37,.1); }
.ap .ior-c-red{ fill:var(--red); }
.ap .ior-c-bolt{ fill:none; stroke:var(--red); stroke-width:2.5; stroke-linecap:round; stroke-linejoin:round; }
.ap .ior-c-tree{ fill:#e2d6d6; }
.ap .ior-c-rack rect{ fill:#2b2b2b; }
.ap .ior-c-leds circle{ fill:#ff6b6f; animation:ior-led 1.6s steps(2) infinite; }
.ap .ior-c-leds circle:nth-child(2){ animation-delay:.4s; } .ior-c-leds circle:nth-child(3){ animation-delay:.8s; } .ior-c-leds circle:nth-child(4){ animation-delay:1.2s; }
@keyframes ior-led{ 50%{ fill:#5a1013; } }
.ap .ior-c-walk{ fill:#d9d1d1; }
.ap .ior-c-road{ fill:#4a4a4a; }
.ap .ior-c-lane{ stroke:#fff; stroke-width:2; stroke-dasharray:16 14; }
.ap .ior-c-soil{ fill:#f1ebeb; }
.ap .ior-c-pipe{ fill:none; stroke-width:8; stroke-linecap:round; }
.ap .ior-c-pipe--water{ stroke:#c9bfbf; }
.ap .ior-c-pipe--power{ stroke:#3a3a3a; stroke-width:5; }
.ap .ior-c-pipe--heat{ stroke:rgba(177,32,37,.35); stroke-width:6; }
.ap .ior-c-drop{ fill:none; stroke:#bdb3b3; stroke-width:2; stroke-dasharray:3 4; }
.ap .ior-spot{ position:absolute; left:var(--x); top:var(--y); z-index:3; width:0; height:0; cursor:pointer; }
.ap .ior-spot i{
  position:absolute; left:-14px; top:-14px; width:28px; height:28px; border-radius:50%; display:grid; place-items:center;
  background:var(--ap-card); border:2px solid var(--ap-ink); color:var(--ap-ink); font-style:normal; font-weight:700; font-size:11.5px;
  font-variant-numeric:tabular-nums; box-shadow:0 4px 14px rgba(0,0,0,.14); transition:background .3s, color .3s, border-color .3s, transform .45s var(--ap-spring);
}
.ap .ior-spot:hover i{ border-color:var(--ap-red); }
.ap .ior-spot.past i{ border-color:var(--ap-redmid); }
.ap .ior-spot.at i{ background:var(--ap-red); border-color:var(--ap-red); color:#fff; transform:scale(1.15); }
.ap .ior-spot b{
  position:absolute; bottom:22px; left:0; transform:translate(-50%, 6px) scale(.85); white-space:nowrap; font-size:12px; font-weight:500;
  background:var(--ap-ink); color:#fff; padding:4px 10px; border-radius:99px; opacity:0; pointer-events:none;
  transition:opacity .3s, transform .45s var(--ap-spring); box-shadow:0 6px 16px rgba(0,0,0,.18);
}
.ap .ior-spot.r b{ left:14px; transform:translate(-100%, 6px) scale(.85); }
.ap .ior-spot.l b{ left:-14px; transform:translate(0, 6px) scale(.85); }
.ap .ior-spot.at b{ opacity:1; transform:translate(-50%, 0); }
.ap .ior-spot.r.at b{ transform:translate(-100%, 0); }
.ap .ior-spot.l.at b{ transform:none; }
.ap .ior-outs{ margin-top:56px; }
.ap .ior-out{ position:relative; padding:18px 18px 20px; display:flex; flex-direction:column; gap:12px; opacity:0; visibility:hidden; transform:translateY(12px) scale(.97); transition:opacity .45s, transform .6s var(--ap-spring), visibility 0s .45s, border-color .35s; }
.ap .ior-out.on{ opacity:1; visibility:visible; transform:none; transition:opacity .45s .25s, transform .6s .25s var(--ap-spring), visibility 0s, border-color .35s; }
.ap .ior-out.done{ border-color:var(--ap-red); }
.ap .ior-out-h{ display:flex; gap:12px; align-items:flex-start; }
.ap .ior-out-h small{ display:block; font-size:12px; color:var(--ap-red); font-weight:500; margin-bottom:3px; }
.ap .ior-out-h b{ display:block; font-size:18px; font-weight:600; letter-spacing:-.025em; line-height:1.2; }
.ap .ior-out .lbl{ margin:4px 0 0; }
.ap .ior-hand{ list-style:none; display:grid; gap:9px; }
.ap .ior-hand li{ display:flex; gap:10px; align-items:flex-start; font-size:14px; line-height:1.35; opacity:.35; transform:translateX(-6px); transition:opacity .4s, transform .5s var(--ap-spring); }
.ap .ior-ck{ flex:none; width:20px; height:20px; border-radius:50%; border:1.5px solid var(--ap-wire); display:grid; place-items:center; transition:background .3s, border-color .3s; }
.ap .ior-ck svg{ width:12px; height:12px; color:#fff; opacity:0; transform:scale(.4); transition:opacity .2s, transform .4s var(--ap-spring); }
.ap .ior-out.done .ior-hand li{ opacity:1; transform:none; }
.ap .ior-out.done .ior-ck{ background:var(--ap-red); border-color:var(--ap-red); }
.ap .ior-out.done .ior-ck svg{ opacity:1; transform:none; }
.ap .ior-out.done .ior-hand li:nth-child(1), .ap .ior-out.done .ior-hand li:nth-child(1) *{ transition-delay:.2s; }
.ap .ior-out.done .ior-hand li:nth-child(2), .ap .ior-out.done .ior-hand li:nth-child(2) *{ transition-delay:.9s; }
.ap .ior-out.done .ior-hand li:nth-child(3), .ap .ior-out.done .ior-hand li:nth-child(3) *{ transition-delay:1.6s; }
.ap .ior-bricks{ display:flex; flex-wrap:wrap; gap:6px; border-top:1px solid var(--ap-cardb); padding-top:12px; }
.ap .ior-bricks .chip{ opacity:0; transform:scale(.6); transition:opacity .25s, transform .45s var(--ap-spring); }
.ap .ior-out.done .ior-bricks .chip{ opacity:1; transform:none; }
.ap .ior-out.done .ior-bricks .chip:nth-child(1){ transition-delay:2.2s; }
.ap .ior-out.done .ior-bricks .chip:nth-child(2){ transition-delay:2.4s; }
.ap .ior-out.done .ior-bricks .chip:nth-child(3){ transition-delay:2.6s; }
.ap .ior-out.done .ior-bricks .chip:nth-child(4){ transition-delay:2.8s; }
.ap .ior-out .pin{ top:auto; bottom:-11px; }
.ap .ior-out.done .pin{ opacity:1; transform:none; transition-delay:2.9s; }
.ior-cut-cap{ margin-top:12px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); }
.ap .ior-tabs .tab{ cursor:default; padding:0; }
.ap .ior-tab-h{ margin:0; font:inherit; }
.ap .ior-tab-h button{
  width:100%; border:0; background:none; cursor:pointer; text-align:left; padding:16px 4px 16px 18px;
  display:grid; grid-template-columns:30px minmax(0,1fr) auto; gap:10px; align-items:center;
}
.ap .ior-tab-num{ font-size:12.5px; font-weight:500; color:var(--ap-mute); font-variant-numeric:tabular-nums; }
.ap .ior-tab-name{ font-size:19px; font-weight:500; letter-spacing:-.025em; line-height:1.2; color:var(--ap-mute); transition:color .3s; }
.ap .ior-tab-hint{ font-size:12px; padding:3px 10px; border-radius:99px; border:1px solid var(--ap-line); color:var(--ap-soft); white-space:nowrap; transition:all .3s; }
.ap .ior-tab-h button:hover .ior-tab-name{ color:var(--ap-ink); }
.ap .ior-tabs .tab.on .ior-tab-name{ color:var(--ap-ink); }
.ap .ior-tabs .tab.on .ior-tab-num{ color:var(--ap-red); }
.ap .ior-tabs .tab.on .ior-tab-hint{ background:var(--ap-red); border-color:var(--ap-red); color:#fff; }
.ap .ior-tabs .tab .more>div{ padding:0 4px 0 58px; }
.ap .ior-tabs .tab.on .more>div{ padding-bottom:18px; }
.ap .ior-tabs .tab .more p{ padding-top:0; }
.ap .ior-tabs .tab .more .src{ padding-top:8px!important; }
.ap .ior-tabs .tab .more .src a{ color:inherit; }
.ap .ior-cases-actions{ margin-top:28px; }
@media (max-width:980px){
  .ap .ior-cases{ grid-template-columns:1fr; gap:24px; }
}
@media (max-width:760px){
  .ap .ior-cases .scene{ padding:16px 12px 20px; }
  .ap .ior-spot i{ width:24px; height:24px; left:-12px; top:-12px; font-size:10.5px; }
  .ap .ior-spot b{ font-size:11px; padding:3px 8px; bottom:18px; }
  .ap .ior-outs{ margin-top:44px; }
  .ap .ior-out{ padding:16px 14px 18px; }
  .ap .ior-out-h b{ font-size:16px; }
  .ap .ior-tab-h button{ grid-template-columns:26px minmax(0,1fr); padding:14px 4px 14px 14px; }
  .ap .ior-tab-hint{ display:none; }
  .ap .ior-tab-name{ font-size:17px; }
  .ap .ior-tabs .tab .more>div{ padding-left:44px; }
  .ap .ior-cases-actions .btn{ flex:1 1 auto; }
}
@media (prefers-reduced-motion:reduce){ .ap .ior-c-leds circle{ animation:none; } }
#pakete[aria-labelledby="ior-pakete-title"] .svc-pk-item > .ap-pin{ top:calc(var(--d) * 80 - 3px); left:auto; right:calc(var(--d) * 80); }
@media (max-width:760px){
  #pakete[aria-labelledby="ior-pakete-title"] .svc-pk-item > .ap-pin{ top:-3px; right:0; }
}
.ka-facts{ display:flex; flex-wrap:wrap; gap:max(18px, calc(var(--d) * 60)); list-style:none; margin:0; padding:0; }
.ka-facts li{ display:flex; flex-direction:column; gap:4px; }
.ka-facts b{ font-weight:700; font-size:max(26px, calc(var(--d) * 64)); line-height:1; letter-spacing:-.045em; color:var(--ink); }
.ka-facts span{ font-size:max(13px, calc(var(--d) * 21)); color:var(--ink-soft); }
.ka-photo{ position:relative; margin:0 0 0 auto; max-width:calc(var(--d) * 1100); aspect-ratio:16 / 10; border-radius:max(10px, calc(var(--d) * 18)); overflow:hidden; }
.ka-photo img:first-child{ width:100%; height:100%; object-fit:cover; display:block; }
.ka-photo-arc{ position:absolute; right:6%; bottom:0; height:46%; width:auto; }
.ka-filter{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:calc(var(--d) * 50); }
.ka-filter button{
  min-height:max(40px, calc(var(--d) * 56)); padding-inline:max(16px, calc(var(--d) * 30)); border-radius:999px;
  border:1px solid var(--line); font-weight:500; font-size:max(14px, calc(var(--d) * 21)); color:var(--ink-soft);
  transition:background-color .25s, color .25s, border-color .25s;
}
.ka-filter button:hover{ color:var(--ink); border-color:var(--ink-mute); }
.ka-filter button[aria-pressed="true"]{ background:var(--ink); border-color:var(--ink); color:#fff; }
.ka-jobs{ border-top:1px solid var(--ink); }
.ka-job{ border-bottom:1px solid var(--line); }
.ka-job[hidden]{ display:none; }
.ka-job-sum{
  list-style:none; cursor:pointer; display:grid; grid-template-columns:minmax(0, 1fr) auto auto; align-items:center;
  gap:max(16px, calc(var(--d) * 50)); padding-block:max(20px, calc(var(--d) * 44));
}
.ka-job-sum::-webkit-details-marker{ display:none; }
.ka-job-main{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.ka-job-title{ font-weight:700; font-size:max(20px, calc(var(--d) * 46)); line-height:1.1; letter-spacing:-.04em; color:var(--ink); transition:color .25s; }
.ka-job-mwd{ font-weight:500; color:var(--ink-mute); font-size:.6em; letter-spacing:-.01em; }
.ka-job-team{ font-size:max(14px, calc(var(--d) * 22)); color:var(--ink-soft); }
.ka-job-tags{ display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.ka-job-tags span{ padding:6px 12px; border-radius:999px; background:var(--wash); font-size:max(12px, calc(var(--d) * 19)); color:var(--ink-soft); white-space:nowrap; }
.ka-job-icon{ position:relative; width:max(36px, calc(var(--d) * 56)); height:max(36px, calc(var(--d) * 56)); border-radius:50%; border:1px solid var(--line); transition:background-color .25s, border-color .25s; }
.ka-job-icon::before, .ka-job-icon::after{ content:""; position:absolute; left:50%; top:50%; width:38%; height:1.6px; background:var(--ink); translate:-50% -50%; transition:rotate .3s var(--ease), background-color .25s; }
.ka-job-icon::after{ rotate:90deg; }
.ka-job[open] .ka-job-icon{ background:var(--red); border-color:var(--red); }
.ka-job[open] .ka-job-icon::before, .ka-job[open] .ka-job-icon::after{ background:#fff; }
.ka-job[open] .ka-job-icon::after{ rotate:0deg; }
@media (hover:hover){ .ka-job-sum:hover .ka-job-title{ color:var(--red); } }
.ka-job-body{ padding-bottom:max(28px, calc(var(--d) * 70)); display:flex; flex-direction:column; align-items:flex-start; gap:max(18px, calc(var(--d) * 40)); }
.ka-job[open] .ka-job-body{ animation:ka-open .4s var(--ease); }
@keyframes ka-open{ from{ opacity:0; translate:0 -8px; } }
.ka-job-text{ max-width:calc(var(--d) * 1300); font-size:max(16px, calc(var(--d) * 28)); line-height:1.45; letter-spacing:-.02em; color:var(--ink-soft); }
.ka-job-cols{ display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:max(18px, calc(var(--d) * 60)); width:100%; max-width:calc(var(--d) * 1700); }
.ka-job-cols h4{ font-weight:700; font-size:max(15px, calc(var(--d) * 24)); margin-bottom:10px; }
.ka-job-cols ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.ka-job-cols li{ position:relative; padding-left:20px; font-size:max(14px, calc(var(--d) * 23)); line-height:1.4; color:var(--ink-soft); }
.ka-job-cols li::before{ content:""; position:absolute; left:0; top:.55em; width:8px; height:8px; border-radius:2px; background:var(--red); }
.ka-perks{ list-style:none; margin:calc(var(--d) * 60) 0 0; padding:0; display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:calc(var(--d) * 32); }
.ka-perks li{ display:flex; flex-direction:column; gap:8px; padding-top:calc(var(--d) * 28); border-top:2px solid var(--red); }
.ka-perks b{ font-weight:700; font-size:max(17px, calc(var(--d) * 30)); letter-spacing:-.03em; }
.ka-perks span{ font-size:max(14px, calc(var(--d) * 22)); line-height:1.45; color:var(--ink-soft); }
.ka-steps{ list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:calc(var(--d) * 32); counter-reset:none; }
.ka-steps li{ position:relative; display:flex; flex-direction:column; gap:10px; padding-top:calc(var(--d) * 50); }
.ka-steps li::before{ content:""; position:absolute; left:0; right:calc(var(--d) * -32); top:calc(var(--d) * 14); height:1px; background:var(--line); }
.ka-steps li:last-child::before{ right:0; }
.ka-steps li::after{ content:""; position:absolute; left:0; top:calc(var(--d) * 14 - 6px); width:13px; height:13px; border-radius:50%; background:#fff; border:2px solid var(--red); }
.ka-step-num{ font-weight:700; font-size:max(13px, calc(var(--d) * 20)); color:var(--red); font-variant-numeric:tabular-nums; }
.ka-steps b{ font-weight:700; font-size:max(20px, calc(var(--d) * 40)); letter-spacing:-.04em; }
.ka-steps span:not(.ka-step-num){ font-size:max(14px, calc(var(--d) * 23)); line-height:1.45; color:var(--ink-soft); }
@media (max-width:1024px){
  .ka-job-sum{ grid-template-columns:minmax(0, 1fr) auto; }
  .ka-job-tags{ grid-column:1; grid-row:2; justify-content:flex-start; }
  .ka-job-icon{ grid-column:2; grid-row:1 / span 2; }
  .ka-job-cols{ grid-template-columns:1fr; max-width:none; }
  .ka-job-text{ max-width:none; }
  .ka-perks{ grid-template-columns:1fr 1fr; gap:24px; margin-top:32px; }
  .ka-steps{ grid-template-columns:1fr; gap:24px; }
  .ka-steps li{ padding:0 0 0 32px; }
  .ka-steps li::before{ left:6px; right:auto; top:14px; bottom:-24px; width:1px; height:auto; }
  .ka-steps li:last-child::before{ display:none; }
  .ka-steps li::after{ top:2px; }
  .ka-photo{ max-width:none; }
}
@media (max-width:640px){
  .ka-perks{ grid-template-columns:1fr; }
  .ka-job-apply{ width:100%; justify-content:center; }
}
.ka-init-actions{ margin-top:calc(var(--d) * 90); }
@media (max-width:1024px){ .ka-init-actions{ margin-top:36px; } }
.ki-v-note{ margin-top:14px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); }
.ap.ki-v .tile .scene{ min-height:300px; }
.ap .ki-two{ display:grid; grid-template-columns:minmax(0, 1.4fr) minmax(0, 1fr); gap:28px; align-items:center; }
.ap .ki-row{ position:relative; display:flex; align-items:center; gap:11px; padding:10px 12px; font-size:14px; font-weight:500; min-width:0; }
.ap .ki-row + .ki-row{ margin-top:8px; }
.ap .ki-row .tx{ flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ap .ki-row .ico{ width:28px; height:28px; }
.ap .ki-row .ico svg{ width:15px; height:15px; }
.ap.ki-v .chip svg{ width:13px; height:13px; }
.ap .ki-row.auto{ border-color:var(--ap-redmid); }
.ap .ki-row.auto .ico{ background:var(--ap-redbg); color:var(--ap-red); }
.ap .ki-row.bad{ border:1.5px dashed var(--ap-red); background:var(--ap-redbg); }
.ap .ki-row.chk::after{
  content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none;
  background:linear-gradient(90deg, transparent 30%, rgba(177,32,37,.13) 50%, transparent 70%) 100% 0 / 260% 100% no-repeat;
  animation:ki-sweep .9s ease-in-out;
}
@keyframes ki-sweep{ to{ background-position:0 0; } }
.ap .ki-box{ position:relative; padding:16px 18px 18px; transition:border-color .35s, box-shadow .35s; }
.ap .ki-box.at{ border-color:var(--ap-red); }
.ap .ki-meter{ height:12px; border-radius:99px; background:var(--ap-wash); overflow:hidden; }
.ap .ki-meter i{ display:block; height:100%; width:100%; border-radius:99px; background:var(--ap-red); transition:width .8s cubic-bezier(.2,.7,.2,1); }
.ap .ki-flow{ display:flex; flex-direction:column; }
.ap .ki-flow .ki-row + .ki-gap, .ap .ki-flow .ki-gap + .ki-row{ margin-top:0; }
.ap .ki-gap{ height:40px; display:flex; align-items:center; justify-content:flex-end; padding-right:4px; }
.ap .ki-gap .chip{ font-style:normal; opacity:0; transform:scale(.85); transition:opacity .3s, transform .4s var(--ap-spring); }
.ap .ki-gap .chip.at{ opacity:1; transform:none; }
.ap .ki-flow .chip.ok{ margin-left:auto; }
.ap .ki-ph{ flex:1; height:8px; border-radius:4px; background:var(--ap-wash); overflow:hidden; }
.ap .ki-ph i{ display:block; height:100%; width:var(--w); border-radius:4px; background:var(--ap-wire); }
.ap .ki-row.bad .ki-ph i{ background:var(--ap-redmid); }
.ap .ki-mk{ width:22px; height:22px; border-radius:50%; border:2px solid var(--ap-wire); flex:none; display:grid; place-items:center; transition:all .3s; }
.ap .ki-mk svg{ width:12px; height:12px; }
.ap .ki-mk.x{ background:var(--ap-red); border-color:var(--ap-red); color:#fff; }
.ap .ki-mk.ok{ background:var(--ap-okbg); border-color:var(--ap-okline); color:var(--ap-ok); animation:ap-pop .45s var(--ap-spring); }
.ap .ki-grid{ display:grid; grid-template-columns:repeat(12, minmax(0, 1fr)); gap:6px; }
.ap .ki-grid i{ aspect-ratio:1; border-radius:4px; background:var(--ap-wash); transition:background .3s, transform .45s var(--ap-spring); }
.ap .ki-grid i.on{ background:var(--ap-red); }
@media (max-width:760px){
  .ap .ki-two{ grid-template-columns:1fr; gap:22px; }
  .ap.ki-v .tile .scene{ min-height:0; }
  .ap .ki-grid{ gap:5px; }
}
section[aria-labelledby="ki-befund-title"] .svc-stats[data-sector="finanz"]{ grid-template-columns:repeat(3, minmax(0, 1fr)); }
@media (max-width:1024px) and (min-width:641px){
  section[aria-labelledby="ki-befund-title"] .svc-stats[data-sector="finanz"]{ grid-template-columns:1fr 1fr; }
  section[aria-labelledby="ki-befund-title"] .svc-stats[data-sector="finanz"] .svc-stat:nth-child(3){ grid-column:1 / -1; }
}
@media (max-width:640px){
  section[aria-labelledby="ki-befund-title"] .svc-stats[data-sector="finanz"]{ grid-template-columns:1fr; }
}
.prd-stage-grid.pp-solo{ grid-template-columns:minmax(0, 1fr); }
.prd-stage-grid.pp-solo .prd-stage-copy{ max-width:calc(var(--d) * 1500); }
.pp-aplus{ margin-top:calc(var(--d) * 110); }
.pp-aplus .prd-demo-note{ margin-top:12px; }
@media (max-width:1024px){ .pp-aplus{ margin-top:48px; } }
.ap .pp-f{ display:grid; grid-template-columns:auto 1fr; gap:8px 14px; font-size:13px; align-items:center; }
.ap .pp-f dt{ color:var(--ap-mute); white-space:nowrap; }
.ap .pp-f dd{ font-weight:500; text-align:right; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; min-height:1.3em; min-width:0; }
.ap .pp-tags{ display:flex; gap:6px; flex-wrap:wrap; min-height:27px; }
.ap .pp-tags .chip{ opacity:0; transform:scale(.6); transition:opacity .25s, transform .45s var(--ap-spring); }
.ap .pp-tags.in .chip{ opacity:1; transform:none; }
.ap .pp-tags.in .chip:nth-child(2){ transition-delay:.25s; }
.ap .pp-pick{ display:flex; align-items:center; gap:6px; }
.ap .pp-pkl{ font-size:12px; color:var(--ap-mute); margin-right:auto; }
.ap .pp-pk{ width:30px; height:30px; border-radius:50%; display:grid; place-items:center; font-size:11px; font-weight:500;
  background:var(--ap-wash); color:var(--ap-soft); border:1.5px solid transparent; transition:all .3s; }
.ap .pp-pk.on{ border-color:var(--ap-ok); color:var(--ap-ink); background:var(--ap-okbg); }
.ap .pp-pk.bad{ border-color:var(--ap-red); color:var(--ap-red); background:var(--ap-redbg); }
.ap .pp-p{ position:relative; display:flex; align-items:center; gap:11px; padding:10px 13px; }
.ap .pp-av{ width:32px; height:32px; border-radius:50%; display:grid; place-items:center; flex:none; font-size:11.5px; font-weight:500;
  background:var(--ap-wash); color:var(--ap-ink); transition:background .3s, color .3s; }
.ap .pp-pn{ flex:1; min-width:0; display:flex; flex-direction:column; gap:7px; }
.ap .pp-pl{ display:flex; align-items:baseline; gap:8px; font-size:14px; }
.ap .pp-pl b{ font-weight:500; }
.ap .pp-pl small{ margin-left:auto; font-size:12px; color:var(--ap-mute); font-variant-numeric:tabular-nums; white-space:nowrap; transition:color .3s; }
.ap .pp-bar{ position:relative; height:6px; border-radius:4px; background:var(--ap-track); }
.ap .pp-bar i{ position:absolute; left:0; top:0; bottom:0; width:0; border-radius:4px; background:var(--ap-okline); transition:width .9s cubic-bezier(.2,.7,.2,1), background .3s; }
.ap .pp-bar s{ position:absolute; left:80%; top:-4px; bottom:-4px; width:2px; border-radius:1px; background:var(--ap-ra); text-decoration:none; }
.ap .pp-p.bad{ border-color:var(--ap-red); }
.ap .pp-p.bad .pp-bar i{ background:var(--ap-red); }
.ap .pp-p.bad .pp-av{ background:var(--ap-redbg); color:var(--ap-red); }
.ap .pp-p.bad small{ color:var(--ap-red); }
.ap .pp-p.ok small{ color:var(--ap-ok); }
.ap .pp-p.dim{ opacity:.5; }
.ap .pp-kflow .col[data-col="2"]{ gap:8px; }
.ap.pp-aplus .mid .mid-f .route, .ap.pp-aplus .mid .mid-f .chip.r{ opacity:1; transform:none; }
.ap .ppt-house{ padding:44px 28px 30px; }
.ap .ppt-row{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:clamp(48px, 6vw, 120px); align-items:stretch; }
.ap .ppt-card{ position:relative; display:flex; flex-direction:column; gap:18px; padding:22px 22px 24px; min-height:190px; cursor:pointer; }
.ap .ppt-card:not(.at):not(.past){ opacity:.42; }
.ap .ppt-card.at{ border-color:var(--ap-redmid); transform:translateY(-6px); }
.ap .ppt-n{ font-size:12px; letter-spacing:.08em; color:var(--ap-red); }
.ap .ppt-head{ display:flex; align-items:center; gap:12px; }
.ap .ppt-head b{ font-size:19px; font-weight:500; line-height:1.2; letter-spacing:-.02em; }
.ap .ppt-toks{ display:flex; gap:10px; margin-top:auto; }
.ap .ppt-tok{ width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:var(--ap-wash); color:var(--ap-soft); opacity:.35; transform:scale(.85); transition:opacity .4s, transform .5s var(--ap-spring), background .4s, color .4s; }
.ap .ppt-tok svg{ width:20px; height:20px; }
.ap .ppt-card.past .ppt-tok{ opacity:.8; transform:none; }
.ap .ppt-card.at .ppt-tok{ opacity:1; transform:none; background:var(--ap-redbg); color:var(--ap-red); }
.ap .ppt-card.at .ppt-tok:nth-child(2){ transition-delay:.15s; }
.ap .ppt-card.at .ppt-tok:nth-child(3){ transition-delay:.3s; }
.ap .ppt-say{ margin-top:28px; text-align:center; font-size:17px; line-height:1.5; color:var(--ap-soft); text-wrap:balance; }
.ap .ppt-say span{ border-radius:4px; transition:background .35s, color .35s, box-shadow .35s; }
.ap .ppt-say span.at{ background:var(--ap-redbg); box-shadow:0 0 0 3px var(--ap-redbg); color:var(--ap-ink); }
@media (max-width:760px){
  .ap .ppt-house{ padding:36px 12px 16px; }
  .ap .ppt-row{ grid-template-columns:1fr; gap:44px; }
  .ap .ppt-card{ min-height:0; }
  .ap .ppt-card.at{ transform:none; }
  .ap .ppt-say{ font-size:15px; text-align:left; }
}
.pp-way-hello{ max-width:max(280px, calc(var(--d) * 560)); margin-top:max(4px, calc(var(--d) * 10)); color:#fff; }
.prd-stage-grid.pc-grid{ align-items:start; } 
.pc-stage-vid{ min-width:0; }
.pc-stage-vid .vid--wide{ max-width:calc(var(--d) * 1100); margin-left:auto; }
.pc-aplus{ margin-top:calc(var(--d) * 110); }
.pc-aplus .prd-demo-note{ margin-top:12px; }
.ap .pc-drop{ display:flex; align-items:center; gap:11px; padding:10px 13px; border:1.5px dashed var(--ap-wire); border-radius:14px; font-size:13px; color:var(--ap-soft); }
.ap .pc-drop .ico{ width:28px; height:28px; background:transparent; color:var(--ap-red); }
.ap .pc-drop.pc-hit{ animation:pc-drop .8s ease-out; }
@keyframes pc-drop{ 0%{ border-color:var(--ap-red); background:var(--ap-redbg); } 100%{ border-color:var(--ap-wire); background:transparent; } }
.ap .ico.pc-ext{ font-size:10.5px; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.ap .q .sub.pc-bad{ color:var(--ap-red); }
.ap .pc-mt{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ap .mid-h .ico svg{ width:17px; height:17px; }
.ap .dest .pin.pc-off{ display:none; }
.ap .dest .who svg{ width:14px; height:14px; }
.ap .wires .pc-ok path.a{ stroke:var(--ap-okline); }
.ap .wires .pc-ok .pk{ fill:var(--ap-okline); stroke:rgba(85,185,124,.25); }
@media (max-width:1024px){
  .pc-aplus{ margin-top:48px; }
  .pc-stage-vid .vid--wide{ margin-left:0; max-width:520px; }
}
.ap .dest .pc-tx{ flex:1; min-width:0; }
.ap.pc-aplus .mid .mid-f .route, .ap.pc-aplus .mid .mid-f .chip.r{ opacity:1; transform:none; }
.ap .pct-house{ padding:44px 28px 30px; }
.ap .pct-row{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:clamp(48px, 6vw, 120px); align-items:stretch; }
.ap .pct-card{ position:relative; display:flex; flex-direction:column; gap:18px; padding:22px 22px 24px; min-height:190px; cursor:pointer; }
.ap .pct-card:not(.at):not(.past){ opacity:.42; }
.ap .pct-card.at{ border-color:var(--ap-redmid); transform:translateY(-6px); }
.ap .pct-n{ font-size:12px; letter-spacing:.08em; color:var(--ap-red); }
.ap .pct-head{ display:flex; align-items:center; gap:12px; }
.ap .pct-head b{ font-size:19px; font-weight:500; line-height:1.2; letter-spacing:-.02em; }
.ap .pct-toks{ display:flex; gap:10px; margin-top:auto; }
.ap .pct-tok{ width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:var(--ap-wash); color:var(--ap-soft); opacity:.35; transform:scale(.85); transition:opacity .4s, transform .5s var(--ap-spring), background .4s, color .4s; }
.ap .pct-tok svg{ width:20px; height:20px; }
.ap .pct-card.past .pct-tok{ opacity:.8; transform:none; }
.ap .pct-card.at .pct-tok{ opacity:1; transform:none; background:var(--ap-redbg); color:var(--ap-red); }
.ap .pct-card.at .pct-tok:nth-child(2){ transition-delay:.15s; }
.ap .pct-card.at .pct-tok:nth-child(3){ transition-delay:.3s; }
.ap .pct-say{ margin-top:28px; text-align:center; font-size:17px; line-height:1.5; color:var(--ap-soft); text-wrap:balance; }
.ap .pct-say span{ border-radius:4px; transition:background .35s, color .35s, box-shadow .35s; }
.ap .pct-say span.at{ background:var(--ap-redbg); box-shadow:0 0 0 3px var(--ap-redbg); color:var(--ap-ink); }
@media (max-width:760px){
  .ap .pct-house{ padding:36px 12px 16px; }
  .ap .pct-row{ grid-template-columns:1fr; gap:44px; }
  .ap .pct-card{ min-height:0; }
  .ap .pct-card.at{ transform:none; }
  .ap .pct-say{ font-size:15px; text-align:left; }
}
#anfrage .prd-ways > .prd-way > .ap-pin{ top:max(14px, calc(var(--d) * 28)); right:max(14px, calc(var(--d) * 28)); }
.prd-stage-grid.rv-solo{ grid-template-columns:minmax(0, 1fr); }
.prd-stage-grid.rv-solo .prd-stage-copy{ max-width:calc(var(--d) * 1500); }
.rv-aplus{ margin-top:calc(var(--d) * 110); }
.rv-aplus .prd-demo-note{ margin-top:12px; }
@media (max-width:1024px){ .rv-aplus{ margin-top:48px; } }
.ap .rvt-house{ padding:44px 28px 30px; }
.ap .rvt-row{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:clamp(48px, 6vw, 120px); align-items:stretch; }
.ap .rvt-card{ position:relative; display:flex; flex-direction:column; gap:18px; padding:22px 22px 24px; min-height:190px; cursor:pointer; }
.ap .rvt-card:not(.at):not(.past){ opacity:.42; }
.ap .rvt-card.at{ border-color:var(--ap-redmid); transform:translateY(-6px); }
.ap .rvt-n{ font-size:12px; letter-spacing:.08em; color:var(--ap-red); }
.ap .rvt-head{ display:flex; align-items:center; gap:12px; }
.ap .rvt-head b{ font-size:19px; font-weight:500; line-height:1.2; letter-spacing:-.02em; }
.ap .rvt-toks{ display:flex; gap:10px; margin-top:auto; }
.ap .rvt-tok{ width:44px; height:44px; border-radius:12px; display:grid; place-items:center; background:var(--ap-wash); color:var(--ap-soft); opacity:.35; transform:scale(.85); transition:opacity .4s, transform .5s var(--ap-spring), background .4s, color .4s; }
.ap .rvt-tok svg{ width:20px; height:20px; }
.ap .rvt-card.past .rvt-tok{ opacity:.8; transform:none; }
.ap .rvt-card.at .rvt-tok{ opacity:1; transform:none; background:var(--ap-redbg); color:var(--ap-red); }
.ap .rvt-card.at .rvt-tok:nth-child(2){ transition-delay:.15s; }
.ap .rvt-card.at .rvt-tok:nth-child(3){ transition-delay:.3s; }
.ap .rvt-say{ margin-top:28px; text-align:center; font-size:17px; line-height:1.5; color:var(--ap-soft); text-wrap:balance; }
.ap .rvt-say span{ border-radius:4px; transition:background .35s, color .35s, box-shadow .35s; }
.ap .rvt-say span.at{ background:var(--ap-redbg); box-shadow:0 0 0 3px var(--ap-redbg); color:var(--ap-ink); }
@media (max-width:760px){
  .ap .rvt-house{ padding:36px 12px 16px; }
  .ap .rvt-row{ grid-template-columns:1fr; gap:44px; }
  .ap .rvt-card{ min-height:0; }
  .ap .rvt-card.at{ transform:none; }
  .ap .rvt-say{ font-size:15px; text-align:left; }
}
.dev-v-note{ margin-top:14px; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); }
.ap.dev-v .tile .scene{ min-height:300px; }
.ap .dev-two{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:72px; align-items:start; }
.ap .dev-col{ display:flex; flex-direction:column; gap:12px; min-width:0; }
.ap .dev-col .lbl{ margin-bottom:0; }
.ap .dev-row{ position:relative; display:flex; align-items:center; gap:11px; padding:10px 12px; font-size:14px; font-weight:500; min-width:0; }
.ap .dev-row .tx{ flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.ap .dev-row .ico{ width:28px; height:28px; }
.ap .dev-row .ico svg{ width:15px; height:15px; }
.ap .dev-row.on{ border-color:var(--ap-redmid); }
.ap .dev-row.on .ico{ background:var(--ap-redbg); color:var(--ap-red); }
.ap .dev-slot{ border:1.5px dashed var(--ap-wire); background:transparent; box-shadow:none; }
.ap .dev-slot > *{ opacity:0; transition:opacity .35s; }
.ap .dev-slot.on{ border:1px solid var(--ap-redmid); background:var(--ap-card); box-shadow:0 1px 2px rgba(0,0,0,.04), 0 10px 30px rgba(0,0,0,.06); }
.ap .dev-slot.on > *{ opacity:1; }
.ap .dev-mk{ width:22px; height:22px; border-radius:50%; border:2px solid var(--ap-wire); flex:none; display:grid; place-items:center; transition:all .3s; }
.ap .dev-mk svg{ width:12px; height:12px; }
.ap .dev-mk.ok{ background:var(--ap-red); border-color:var(--ap-red); color:#fff; animation:ap-pop .45s var(--ap-spring); }
.ap .dev-stages{ display:flex; flex-direction:column; gap:40px; }
.ap .dev-ver{ opacity:0; transform:scale(.8); transition:opacity .3s, transform .45s var(--ap-spring); }
.ap .dev-ver.at{ opacity:1; transform:none; }
.ap .dev-row.here{ border-color:var(--ap-red); }
.ap .dev-row.here .ico{ background:var(--ap-redbg); color:var(--ap-red); }
.ap.dev-v .rb .tx{ flex:1; }
.ap.dev-v .rb div.bad{ border:1.5px dashed var(--ap-red); background:var(--ap-redbg); }
.ap.dev-v .rb div.bad .mk{ background:var(--ap-red); border-color:var(--ap-red); animation:none; }
.ap .dev-find{ opacity:0; transform:scale(.8); transition:opacity .3s, transform .45s var(--ap-spring); }
.ap .dev-find.at{ opacity:1; transform:none; }
.ap .dev-srv{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:14px; }
.ap .dev-srv .chip{ opacity:0; transform:scale(.8); transition:opacity .3s, transform .45s var(--ap-spring), background .3s, color .3s; }
.ap .dev-srv .chip.at{ opacity:1; transform:none; }
.ap.dev-v .house{ padding:34px 22px 24px; }
@media (max-width:760px){
  .ap.dev-v .tile .scene{ min-height:0; }
  .ap .dev-two{ gap:36px; }
  .ap .dev-row{ padding:9px 10px; gap:8px; font-size:13px; }
  .ap .dev-row .ico{ width:24px; height:24px; }
  .ap .dev-two .dev-row .ico{ display:none; }
  .ap .dev-srv{ grid-template-columns:1fr; gap:10px; }
  .ap .dev-stages{ gap:32px; }
}
.dev-probs{ margin-bottom:calc(var(--d) * 90); }
.dev-befund-note{ margin-top:calc(var(--d) * 36); max-width:calc(var(--d) * 1300); }
@media (max-width:1024px){
  .dev-probs{ margin-bottom:40px; }
  .dev-befund-note{ margin-top:18px; max-width:40rem; }
}
section[aria-labelledby="dev-dl-title"] .svc-dl-item > .ap-pin{ top:-4px; bottom:auto; right:0; left:auto; }
@media (min-width:1025px){ 
  section[aria-labelledby="dev-dl-title"] .svc-dl-item > .ap-pin{ display:none; }
}
.dev-layers{
  display:grid; grid-template-columns:minmax(0, .9fr) minmax(0, 1.1fr); gap:calc(var(--d) * 120); align-items:start;
}
.dev-layers-art{ position:sticky; top:calc(var(--d) * 170); min-width:0; }
.dev-layers-cap{ margin-top:calc(var(--d) * 20); }
.ap .dev-lys{ display:flex; flex-direction:column; gap:28px; }
.ap .dev-ly{ position:relative; display:grid; grid-template-columns:auto minmax(0, 1fr); gap:10px 12px; align-items:center; padding:13px 15px; }
.ap .dev-ly:not(.at) > *:not(.pin){ opacity:.5; transition:opacity .4s; } 
.ap .dev-ly.past > *:not(.pin){ opacity:.78; }
.ap .dev-ly.at{ border-color:var(--ap-red); transform:translateX(10px); }
.ap .dev-ly.at .ico{ background:var(--ap-red); color:#fff; }
.ap .dev-ly.past .ico{ background:var(--ap-redbg); color:var(--ap-red); }
.ap .dev-ly-t{ min-width:0; }
.ap .dev-ly-t small{ display:block; font-size:11.5px; letter-spacing:.08em; text-transform:uppercase; color:var(--ap-mute); }
.ap .dev-ly-t small b{ color:var(--ap-red); font-weight:500; margin-right:4px; }
.ap .dev-ly-t > span:nth-child(2){ display:block; margin-top:2px; font-size:15px; font-weight:500; line-height:1.25; }
.ap .dev-ly-t .sub{ font-size:13px; }
.ap .dev-ly.at .dev-ly-t .sub{ color:var(--ap-red); }
.ap .dev-ly-tools{ grid-column:1 / -1; display:flex; flex-wrap:wrap; gap:6px; }
.ap .dev-ly-tools .chip{ padding:3px 9px; font-size:11.5px; font-family:ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-weight:400; }
.ap .dev-ly.at .dev-ly-tools .chip{ background:var(--ap-redbg); color:var(--ap-red); }
.ap .dev-ly-tools.pop .chip{ animation:ap-pop .5s var(--ap-spring) both; }
.ap .dev-ly-tools.pop .chip:nth-child(2){ animation-delay:.12s; }
.ap .dev-ly-tools.pop .chip:nth-child(3){ animation-delay:.24s; }
.ap .dev-ly-tools.pop .chip:nth-child(4){ animation-delay:.36s; }
.ap .dev-ly-tools.pop .chip:nth-child(5){ animation-delay:.48s; }
.dev-layer-list{ border-top:1px solid var(--ink); }
.dev-layer{ border-bottom:1px solid var(--line); }
.dev-layer-btn{
  width:100%; display:grid; grid-template-columns:calc(var(--d) * 90) minmax(0, 1fr) auto; gap:14px; align-items:center; text-align:left;
  padding:calc(var(--d) * 42) 0;
}
.dev-layer-num{ font-weight:500; font-size:max(13px, calc(var(--d) * 20)); color:var(--ink-mute); font-variant-numeric:tabular-nums; transition:color .3s; }
.dev-layer-head small{ display:block; font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-mute); letter-spacing:.02em; text-transform:uppercase; }
.dev-layer-head > span{ display:block; margin-top:4px; font-weight:700; font-size:max(20px, calc(var(--d) * 44)); line-height:1.1; letter-spacing:-.04em; color:var(--ink-soft); transition:color .3s; }
.dev-layer-btn:hover .dev-layer-head > span{ color:var(--red); }
.dev-layer-btn[aria-expanded="true"] .dev-layer-head > span{ color:var(--ink); }
.dev-layer-btn[aria-expanded="true"] .dev-layer-num{ color:var(--red); }
.dev-layer-icon{ 
  width:max(36px, calc(var(--d) * 56)); height:max(36px, calc(var(--d) * 56)); border-radius:50%; border:1px solid var(--line);
  display:grid; place-items:center; transition:background-color .3s var(--ease), border-color .3s var(--ease);
}
.dev-layer-icon::before{
  content:""; width:30%; height:30%; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor;
  transform:translateY(-20%) rotate(45deg); transition:transform .4s var(--ease);
}
.dev-layer-btn[aria-expanded="true"] .dev-layer-icon{ background:var(--red); border-color:var(--red); color:#fff; }
.dev-layer-btn[aria-expanded="true"] .dev-layer-icon::before{ transform:translateY(20%) rotate(225deg); }
.dev-layer-panel{ display:grid; grid-template-rows:0fr; transition:grid-template-rows .5s var(--ease); }
.dev-layer-panel.is-open{ grid-template-rows:1fr; }
.dev-layer-panel > div{ overflow:hidden; }
.dev-layer-panel[hidden]{ display:none; }
.dev-layer-body{ padding:0 0 calc(var(--d) * 56) calc(var(--d) * 104); display:grid; gap:calc(var(--d) * 30); max-width:calc(var(--d) * 1150); }
.dev-layer-body > p:first-child{ font-size:max(15px, calc(var(--d) * 26)); line-height:1.5; letter-spacing:-.015em; color:var(--ink-soft); }
.dev-layer-body b{ font-weight:500; color:var(--ink); }
.dev-layer-get{ display:grid; gap:calc(var(--d) * 14); }
.dev-layer-get li{ display:flex; gap:12px; align-items:flex-start; font-size:max(15px, calc(var(--d) * 24)); line-height:1.4; letter-spacing:-.015em; }
.dev-layer-get li::before{
  content:""; flex:none; margin-top:.28em; width:max(16px, calc(var(--d) * 24)); height:max(16px, calc(var(--d) * 24)); border-radius:50%;
  background:var(--red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.3l2.3 2.2 4.7-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat;
}
.dev-layer-tools{ display:flex; flex-wrap:wrap; gap:8px; }
.dev-layer-tools span{
  padding:4px 12px; border-radius:6px; background:var(--wash); border:1px solid var(--line);
  font-family:ui-monospace, "SF Mono", Menlo, Consolas, monospace; font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-soft);
}
.dev-layers-actions{ margin-top:calc(var(--d) * 80); display:flex; flex-wrap:wrap; gap:12px; }
@media (max-width:1024px){
  .dev-layers{ grid-template-columns:1fr; gap:32px; }
  .dev-layers-art{ position:static; }
  .dev-layers-cap{ margin-top:10px; }
  .dev-layer-btn{ grid-template-columns:40px minmax(0, 1fr) auto; padding:20px 0; }
  .dev-layer-head > span{ font-size:24px; }
  .dev-layer-body{ padding:0 0 28px 54px; gap:16px; max-width:40rem; }
  .dev-layers-actions{ margin-top:36px; }
}
@media (max-width:640px){
  .ap .dev-lys{ gap:20px; }
  .ap .dev-ly{ padding:16px 12px 11px; }
  .ap .dev-ly.at{ transform:translateX(4px); }
  .dev-layer-btn{ grid-template-columns:30px minmax(0, 1fr) auto; gap:10px; }
  .dev-layer-head > span{ font-size:20px; }
  .dev-layer-body{ padding-left:0; }
  .dev-layers-actions .btn{ flex:1 1 auto; }
}
.un-h1{ font-size:calc(var(--d) * 170); }
.un-stage{ position:relative; margin-top:calc(var(--d) * 140); height:calc(var(--d) * 1250); min-height:420px; overflow:hidden; background:#222; color:#fff; isolation:isolate; }
.un-stage-photo{ position:absolute; inset:0; width:100%; height:120%; max-width:none; object-fit:cover; object-position:50% 40%; z-index:-2; will-change:transform; }
.un-stage-shade{ position:absolute; inset:0; z-index:-1; background:linear-gradient(90deg, rgba(0,0,0,.66) 0%, rgba(0,0,0,.3) 45%, rgba(0,0,0,.05) 70%), linear-gradient(0deg, rgba(0,0,0,.45), rgba(0,0,0,0) 45%); }
.un-stage-arc{ position:absolute; right:calc(var(--d) * 150); top:calc(var(--d) * 130); width:calc(var(--d) * 127); min-width:48px; height:auto; }
.un-stage-quote{
  position:absolute; left:var(--gutter); bottom:calc(var(--d) * 130); max-width:calc(var(--d) * 1250);
  font-weight:700; font-size:max(22px, calc(var(--d) * 70)); line-height:1.06; letter-spacing:-.045em;
}
.un-stage-quote span{ display:block; margin-top:calc(var(--d) * 36); font-weight:500; font-size:max(14px, calc(var(--d) * 24)); letter-spacing:-.02em; color:rgba(255,255,255,.7); }
.un-stage-vid{ position:absolute; right:var(--gutter); bottom:calc(var(--d) * 130); width:calc(var(--d) * 760); color:#fff; }
.un-hero .cs-kpi-row--hero{ margin-top:calc(var(--d) * 130); }
.un-hero .cs-kpi-row--hero b{ font-size:max(34px, calc(var(--d) * 110)); }
.un-cols{ margin-top:calc(var(--d) * 70); display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:calc(var(--d) * 80); }
.un-cols p{ font-size:max(16px, calc(var(--d) * 27)); line-height:1.5; letter-spacing:-.015em; color:var(--ink-soft); }
.un-impact{ margin-top:calc(var(--d) * 100); display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); border-top:1px solid var(--line); }
.un-impact li{ padding:max(14px, calc(var(--d) * 30)) max(12px, calc(var(--d) * 24)) 0 0; font-weight:600; font-size:max(17px, calc(var(--d) * 32)); line-height:1.15; letter-spacing:-.035em; }
.un-impact span{ display:block; margin-bottom:max(8px, calc(var(--d) * 16)); font-weight:700; font-size:max(13px, calc(var(--d) * 20)); color:var(--red); letter-spacing:0; }
.un-vision{ position:relative; overflow:hidden; background:var(--black); color:#fff; padding-block:calc(var(--d) * 240); }
.un-vision::after{ content:""; position:absolute; left:-12%; bottom:-55%; width:60%; aspect-ratio:1; border-radius:50%; border:calc(var(--d) * 80) solid rgba(177,32,37,.18); pointer-events:none; }
.un-vision-title{ margin-top:calc(var(--d) * 60); max-width:calc(var(--d) * 2000); font-weight:700; font-size:calc(var(--d) * 118); line-height:1; letter-spacing:-.05em; text-wrap:balance; }
.un-vision-title span{ color:rgba(255,255,255,.45); }
.un-cycle{ position:relative; z-index:1; margin-top:calc(var(--d) * 170); display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:calc(var(--d) * 40); }
.un-cycle-line{ position:absolute; left:calc(var(--d) * 40); right:calc(var(--d) * 40); top:calc(var(--d) * 40); height:2px; background:rgba(255,255,255,.18); }
.un-cycle-line i{ position:absolute; inset:0; background:var(--red); transform-origin:left; transform:scaleX(var(--p, 1)); transition:transform 1.4s var(--ease); }
.un-cycle-line b{
  position:absolute; top:50%; left:0; width:max(10px, calc(var(--d) * 18)); height:max(10px, calc(var(--d) * 18)); margin:calc(max(10px, calc(var(--d) * 18)) / -2) 0 0 calc(max(10px, calc(var(--d) * 18)) / -2);
  border-radius:50%; background:#fff; box-shadow:0 0 0 6px rgba(255,255,255,.12); opacity:0;
}
.un-cycle.is-run .un-cycle-line b{ opacity:1; animation:un-run 6s linear infinite; }
@keyframes un-run{ from{ left:0; } to{ left:100%; } }
.un-cycle-node{ position:relative; display:flex; flex-direction:column; }
.un-cycle-num{
  display:grid; place-items:center; width:max(44px, calc(var(--d) * 80)); height:max(44px, calc(var(--d) * 80)); border-radius:50%;
  background:var(--black); border:2px solid rgba(255,255,255,.25); font-weight:700; font-size:max(13px, calc(var(--d) * 22));
  transition:background-color .5s var(--ease), border-color .5s var(--ease);
}
.un-cycle-node.is-on .un-cycle-num{ background:var(--red); border-color:var(--red); }
.un-cycle-name{ margin-top:calc(var(--d) * 50); font-weight:700; font-size:max(28px, calc(var(--d) * 84)); line-height:1; letter-spacing:-.05em; }
.un-cycle-sub{ margin-top:calc(var(--d) * 22); max-width:calc(var(--d) * 560); font-size:max(15px, calc(var(--d) * 24)); line-height:1.4; color:rgba(255,255,255,.65); }
.un-cycle.un-js .un-cycle-node{ opacity:.3; transform:translateY(14px); transition:opacity .7s var(--ease), transform .7s var(--ease); }
.un-cycle.un-js .un-cycle-node.is-on{ opacity:1; transform:none; }
.un-vision-foot{ position:relative; z-index:1; margin-top:calc(var(--d) * 170); padding-top:calc(var(--d) * 50); border-top:1px solid rgba(255,255,255,.18); display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1fr); gap:calc(var(--d) * 80); align-items:end; }
.un-vision-text{ max-width:calc(var(--d) * 1000); font-size:max(16px, calc(var(--d) * 28)); line-height:1.45; color:rgba(255,255,255,.72); }
.un-vision-claim{ justify-self:end; text-align:right; font-weight:700; font-size:max(26px, calc(var(--d) * 72)); line-height:1; letter-spacing:-.045em; }
.un-vision-claim span{ color:var(--red); }
.un-values{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 30)); }
.un-value{
  display:flex; flex-direction:column; min-height:calc(var(--d) * 760); padding:max(22px, calc(var(--d) * 60)); border-radius:max(14px, calc(var(--d) * 22));
  background:var(--wash); color:var(--ink); transition:background-color .5s var(--ease), color .5s var(--ease);
}
.un-value:hover{ background:var(--red); color:#fff; }
.un-value-num{ font-weight:700; font-size:max(13px, calc(var(--d) * 22)); color:var(--red); transition:color .5s var(--ease); }
.un-value:hover .un-value-num{ color:#fff; }
.un-value-name{ margin-top:auto; padding-top:calc(var(--d) * 120); font-weight:700; font-size:max(40px, calc(var(--d) * 130)); line-height:.95; letter-spacing:-.055em; }
.un-value-lead{ margin-top:calc(var(--d) * 32); font-weight:500; font-size:max(17px, calc(var(--d) * 30)); line-height:1.3; letter-spacing:-.025em; }
.un-value-list{ margin-top:calc(var(--d) * 30); display:grid; gap:8px; }
.un-value-list li{ position:relative; padding-left:18px; font-size:max(15px, calc(var(--d) * 23)); line-height:1.4; color:var(--ink-soft); transition:color .5s var(--ease); }
.un-value-list li::before{ content:""; position:absolute; left:0; top:.6em; width:7px; height:7px; border-radius:1px; background:var(--red); transition:background-color .5s var(--ease); }
.un-value:hover .un-value-list li{ color:rgba(255,255,255,.85); }
.un-value:hover .un-value-list li::before{ background:#fff; }
.un-ways{ margin-top:calc(var(--d) * 120); display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:max(14px, calc(var(--d) * 30)); }
.un-ways li{ display:flex; flex-direction:column; gap:8px; padding-top:max(14px, calc(var(--d) * 30)); border-top:2px solid var(--ink); }
.un-ways b{ font-weight:700; font-size:max(19px, calc(var(--d) * 38)); line-height:1.1; letter-spacing:-.04em; }
.un-ways span{ font-size:max(15px, calc(var(--d) * 23)); line-height:1.45; color:var(--ink-soft); }
.un-team{ display:grid; grid-template-columns:repeat(auto-fill, minmax(max(130px, calc(var(--d) * 300)), 1fr)); gap:max(14px, calc(var(--d) * 30)) max(12px, calc(var(--d) * 24)); }
.un-person{ display:flex; flex-direction:column; min-width:0; }
.un-person a{ display:contents; }
.un-person-pic{ position:relative; display:block; aspect-ratio:1 / 1.05; border-radius:max(10px, calc(var(--d) * 18)); overflow:hidden; background:#fff; }
.un-person-pic img{ position:absolute; left:6%; right:6%; bottom:0; width:88%; height:auto; max-width:none; filter:grayscale(1); transform-origin:50% 100%; transition:filter .5s var(--ease), transform .6s var(--ease); }
.un-person:hover .un-person-pic img{ filter:none; transform:scale(1.05); }
.un-person b{ margin-top:max(8px, calc(var(--d) * 16)); font-weight:600; font-size:max(15px, calc(var(--d) * 26)); letter-spacing:-.025em; }
.un-person > span:not(.un-person-pic), .un-person a > span:not(.un-person-pic){ font-size:max(13px, calc(var(--d) * 19)); color:var(--ink-soft); }
.un-person--lead .un-person-pic{ background:var(--red); }
.un-person--you .un-person-pic{ background:var(--ink); }
.un-person--you .un-person-pic img{ opacity:.35; }
.un-person--you i{ position:absolute; inset:0; display:grid; place-items:center; font-style:normal; font-weight:300; font-size:max(44px, calc(var(--d) * 110)); color:#fff; transition:transform .5s var(--ease); }
.un-person--you:hover i{ transform:rotate(90deg); }
.un-person--you b{ color:var(--red); }
.un-steps .cs-steps{ grid-template-columns:repeat(5, minmax(0, 1fr)); }
.un-steps .cs-step-num{ font-size:max(26px, calc(var(--d) * 64)); letter-spacing:-.05em; line-height:1; }
.un-steps .cs-step:last-child .cs-step-num{ color:var(--ink-mute); }
.un-place{ display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.2fr); gap:max(16px, calc(var(--d) * 40)); }
.un-place-card{ display:flex; flex-direction:column; padding:max(24px, calc(var(--d) * 70)); background:#fff; border-radius:max(14px, calc(var(--d) * 22)); }
.un-place-label{ font-weight:500; font-size:max(13px, calc(var(--d) * 20)); color:var(--red); }
.un-place-addr{ margin-top:calc(var(--d) * 30); font-style:normal; font-weight:700; font-size:max(22px, calc(var(--d) * 50)); line-height:1.12; letter-spacing:-.04em; }
.un-place-contact{ margin-top:calc(var(--d) * 50); display:grid; gap:10px; }
.un-place-contact li{ display:flex; flex-wrap:wrap; gap:4px 16px; font-size:max(15px, calc(var(--d) * 24)); }
.un-place-contact span{ min-width:80px; color:var(--ink-mute); }
.un-place-contact a{ transition:color .2s; }
.un-place-contact a:hover{ color:var(--red); }
.un-place-reg{ margin:auto 0 0; padding-top:calc(var(--d) * 70); display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:12px; }
.un-place-reg > div{ padding-top:12px; border-top:1px solid var(--line); }
.un-place-reg dt{ font-size:max(12px, calc(var(--d) * 17)); color:var(--ink-mute); }
.un-place-reg dd{ margin:4px 0 0; font-size:max(14px, calc(var(--d) * 21)); font-weight:500; }
.un-map{ border-radius:max(14px, calc(var(--d) * 22)); background:var(--black); color:#fff; overflow:hidden; min-height:300px; display:grid; place-items:center; }
.un-map-svg{ width:100%; height:100%; }
.un-map-svg text{ fill:rgba(255,255,255,.7); font:500 14px var(--sans); letter-spacing:-.01em; }
.un-map-svg .un-map-here{ fill:#fff; font-weight:700; font-size:17px; }
.un-map-road{ fill:none; stroke:rgba(255,255,255,.22); stroke-width:2; stroke-dasharray:6 7; }
.un-map-city{ fill:rgba(255,255,255,.6); }
.un-map-pin{ fill:var(--red); }
.un-map-ring{ fill:none; stroke:var(--red); stroke-width:2; transform-origin:250px 200px; animation:un-ping 2.8s var(--ease) infinite; }
.un-map-ring--2{ animation-delay:1.4s; }
@keyframes un-ping{ from{ transform:scale(.2); opacity:.9; } to{ transform:scale(1.6); opacity:0; } }
.un-karriere{ margin-top:0; }
@media (max-width:1024px){
  .un-h1{ font-size:64px; }
  .un-cycle-sub, .un-vision-text, .un-stage-quote, .un-value-text, .un-vision-title{ max-width:none; }
  .un-stage{ margin-top:40px; height:auto; min-height:0; padding:220px var(--gutter) 28px; display:flex; flex-direction:column; gap:24px; }
  .un-stage-quote, .un-stage-vid{ position:relative; left:auto; right:auto; bottom:auto; }
  .un-stage-vid{ width:100%; max-width:520px; }
  .un-stage-arc{ top:24px; right:24px; }
  .un-cols{ grid-template-columns:1fr; gap:16px; margin-top:24px; }
  .un-impact{ grid-template-columns:repeat(2, minmax(0, 1fr)); row-gap:22px; margin-top:36px; }
  .un-vision{ padding-block:72px; }
  .un-vision-title{ font-size:40px; }
  .un-cycle{ grid-template-columns:1fr; row-gap:28px; margin-top:44px; }
  .un-cycle-line{ display:none; }
  .un-cycle-name{ margin-top:14px; }
  .un-vision-foot{ grid-template-columns:1fr; margin-top:44px; padding-top:22px; gap:18px; }
  .un-vision-claim{ justify-self:start; text-align:left; }
  .un-values, .un-ways{ grid-template-columns:1fr; }
  .un-value{ min-height:0; }
  .un-value-name{ padding-top:36px; }
  .un-ways{ margin-top:40px; }
  .un-steps .cs-steps{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
  .un-place{ grid-template-columns:1fr; }
}
@media (max-width:640px){
  .un-h1{ font-size:48px; }
  .un-stage{ padding-top:180px; }
  .un-vision-title{ font-size:32px; line-height:1.04; }
  .un-steps .cs-steps{ grid-template-columns:1fr; }
  .un-place-reg{ grid-template-columns:1fr; }
}
@media (prefers-reduced-motion:reduce){
  .un-map-ring{ animation:none; opacity:.5; }
  .un-cycle.is-run .un-cycle-line b{ animation:none; opacity:0; }
}
