@font-face {
  font-family: "Barlow Condensed";
  src: url("../fonts/barlow-condensed/BarlowCondensed-Bold.ttf") format("truetype");
  font-style: normal;
  font-weight: 700 800;
  font-display: swap;
}
@font-face {
  font-family: "Barlow Condensed";
  src: url("../fonts/barlow-condensed/BarlowCondensed-Black.ttf") format("truetype");
  font-style: normal;
  font-weight: 900;
  font-display: swap;
}
@font-face {
  font-family: "Barlow Condensed";
  src: url("../fonts/barlow-condensed/BarlowCondensed-BoldItalic.ttf") format("truetype");
  font-style: italic;
  font-weight: 700 900;
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  src: url("../fonts/manrope/Manrope-Variable.ttf") format("truetype");
  font-style: normal;
  font-weight: 200 800;
  font-display: swap;
}

:root {
      --ink: #050506;
      --ink-2: #0a0a0c;
      --panel: #101014;
      --panel-2: #15151a;
      --white: #f7f7f4;
      --muted: #a8a8b0;
      --silver: #c8c9ce;
      --line: rgba(255,255,255,.12);
      --pink: #ff0a61;
      --pink-2: #ff3e8e;
      --red: #e40d38;
      --green: #22c55e;
      --radius: 28px;
      --container: min(1240px, calc(100vw - 48px));
      --ease: cubic-bezier(.22,1,.36,1);
      --shadow: 0 30px 90px rgba(0,0,0,.45);
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; background: var(--ink); }
    body {
      margin: 0;
      color: var(--white);
      background:
        radial-gradient(circle at 18% -10%, rgba(255,10,97,.14), transparent 31rem),
        radial-gradient(circle at 90% 20%, rgba(255,255,255,.04), transparent 28rem),
        var(--ink);
      font-family: "Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      overflow-x: hidden;
      min-height: 100vh;
      text-rendering: optimizeLegibility;
    }
    body.menu-open { overflow: hidden; }
    ::selection { background: var(--pink); color: white; }
    a { color: inherit; text-decoration: none; }
    button, input, select, textarea { font: inherit; }
    button { color: inherit; }
    img, video, svg { display: block; max-width: 100%; }
    [hidden] { display: none !important; }

    .noise {
      position: fixed;
      inset: 0;
      pointer-events: none;
      z-index: 1000;
      opacity: .055;
      background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");
      mix-blend-mode: soft-light;
    }

    .scroll-progress {
      position: fixed;
      top: 0;
      left: 0;
      height: 3px;
      width: 0;
      z-index: 1200;
      background: linear-gradient(90deg, var(--pink), var(--pink-2), #fff);
      box-shadow: 0 0 24px rgba(255,10,97,.8);
    }

    .preloader {
      position: fixed;
      inset: 0;
      z-index: 2000;
      display: grid;
      place-items: center;
      background: #030304;
      transition: opacity .7s var(--ease), visibility .7s;
    }
    .preloader.is-done { opacity: 0; visibility: hidden; }
    .preloader-inner { width: min(560px, calc(100vw - 48px)); }
    .preloader-mark { margin-bottom: 30px; }
    .preloader-logo { display:block; width:min(100%,500px); height:auto; filter:drop-shadow(0 24px 44px rgba(0,0,0,.42)); }
    .preloader-status { display:flex; justify-content:space-between; gap:24px; color:var(--muted); font-size:12px; text-transform:uppercase; letter-spacing:.18em; margin-bottom:10px; }
    .preloader-bar { height: 5px; background: rgba(255,255,255,.1); overflow:hidden; border-radius:999px; }
    .preloader-bar span { display:block; height:100%; width:0; background:linear-gradient(90deg,var(--pink),#fff); box-shadow:0 0 18px var(--pink); }

    .site-header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 900;
      padding: 16px 0;
      transition: background .35s ease, padding .35s ease, border-color .35s ease;
      border-bottom: 1px solid transparent;
    }
    .site-header.scrolled {
      padding: 10px 0;
      background: rgba(5,5,6,.78);
      backdrop-filter: blur(18px) saturate(140%);
      border-color: rgba(255,255,255,.08);
    }
    .nav {
      width: var(--container);
      margin: 0 auto;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 28px;
    }
    .brand { display:flex; align-items:center; min-width:max-content; }
    .brand-logo { display:block; width:clamp(178px,16vw,224px); height:auto; filter:drop-shadow(0 12px 24px rgba(0,0,0,.3)); }
    .nav-links { display:flex; align-items:center; gap:28px; color:#d7d7dc; font-size:13px; font-weight:700; }
    .nav-links a { position:relative; padding:10px 0; }
    .nav-links a::after { content:""; position:absolute; left:0; bottom:3px; width:100%; height:2px; background:var(--pink); transform:scaleX(0); transform-origin:right; transition:transform .35s var(--ease); }
    .nav-links a:hover::after, .nav-links a.active::after { transform:scaleX(1); transform-origin:left; }
    .nav-cta { display:flex; align-items:center; gap:10px; }
    .menu-btn { display:none; width:46px; height:46px; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.04); border-radius:14px; cursor:pointer; place-items:center; }
    .menu-btn span, .menu-btn span::before, .menu-btn span::after { content:""; display:block; width:19px; height:2px; background:white; transition:.3s; }
    .menu-btn span { position:relative; }
    .menu-btn span::before { position:absolute; top:-6px; }
    .menu-btn span::after { position:absolute; top:6px; }
    .menu-open .menu-btn span { background:transparent; }
    .menu-open .menu-btn span::before { transform:translateY(6px) rotate(45deg); }
    .menu-open .menu-btn span::after { transform:translateY(-6px) rotate(-45deg); }

    .btn {
      --btn-bg: var(--pink);
      min-height: 52px;
      padding: 0 22px;
      border-radius: 999px;
      border: 1px solid transparent;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      background: var(--btn-bg);
      color: white;
      font-size: 13px;
      font-weight: 800;
      cursor: pointer;
      position: relative;
      overflow: hidden;
      transform: translateZ(0);
      box-shadow: 0 15px 35px rgba(255,10,97,.22);
      transition: transform .3s var(--ease), box-shadow .3s ease, border-color .3s ease;
    }
    .btn::before { content:""; position:absolute; inset:-120% -35%; background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.45) 48%,transparent 61%); transform:translateX(-75%); transition:transform .7s var(--ease); }
    .btn:hover::before { transform:translateX(75%); }
    .btn:hover { transform: translateY(-3px); box-shadow:0 22px 50px rgba(255,10,97,.34); }
    .btn svg { width:18px; height:18px; position:relative; z-index:1; }
    .btn span { position:relative; z-index:1; }
    .btn-secondary { --btn-bg:rgba(255,255,255,.055); border-color:rgba(255,255,255,.18); box-shadow:none; backdrop-filter:blur(12px); }
    .btn-secondary:hover { border-color:rgba(255,255,255,.42); box-shadow:0 16px 40px rgba(0,0,0,.25); }
    .btn-dark { --btn-bg:#08080a; border-color:rgba(255,255,255,.15); box-shadow:none; }
    .btn-small { min-height:44px; padding:0 17px; font-size:12px; }

    .section { position:relative; padding:110px 0; }
    .container { width:var(--container); margin:0 auto; }
    .eyebrow { display:flex; align-items:center; gap:10px; color:var(--pink-2); text-transform:uppercase; letter-spacing:.18em; font-size:11px; font-weight:800; }
    .eyebrow::before { content:""; width:32px; height:1px; background:currentColor; box-shadow:0 0 12px currentColor; }
    .display {
      margin: 18px 0 0;
      font-family: "Barlow Condensed", sans-serif;
      text-transform: uppercase;
      font-weight: 900;
      letter-spacing: -.045em;
      line-height: 1.02;
      font-size: clamp(54px, 7.4vw, 112px);
    }
    .display .accent { color:var(--pink); font-style:italic; }
    .section-title {
      margin: 18px 0 0;
      font-family:"Barlow Condensed", sans-serif;
      text-transform:uppercase;
      font-weight:900;
      letter-spacing:-.035em;
      line-height:1.03;
      font-size:clamp(42px,5.2vw,74px);
    }
    .lead { max-width:680px; margin:22px 0 0; color:#c5c5cc; font-size:clamp(15px,1.4vw,18px); line-height:1.72; }
    .micro { color:var(--muted); font-size:12px; line-height:1.65; }

    .hero {
      min-height: 92svh;
      position: relative;
      display: flex;
      align-items: flex-end;
      padding: 136px 0 64px;
      overflow: hidden;
      isolation: isolate;
    }
    .hero-media { position:absolute; inset:0; z-index:-5; background:#08080a center/cover no-repeat; }
    .hero-media::after { content:""; position:absolute; inset:0; background:
      linear-gradient(90deg,rgba(5,5,6,.98) 0%,rgba(5,5,6,.72) 45%,rgba(5,5,6,.24) 75%,rgba(5,5,6,.7) 100%),
      linear-gradient(0deg,#050506 0%,transparent 26%,rgba(0,0,0,.25) 100%); }
    .hero-bg { width:100%; height:100%; object-fit:cover; opacity:.78; filter:saturate(.62) contrast(1.16); transform:scale(1.06); }
    .hero-scan {
      position:absolute;
      inset:0;
      z-index:-3;
      background:repeating-linear-gradient(to bottom,transparent 0,transparent 9px,rgba(255,255,255,.027) 10px);
      mix-blend-mode:overlay;
      pointer-events:none;
    }
    .hero-glow { position:absolute; width:48vw; aspect-ratio:1; right:-15vw; top:-18vw; border-radius:50%; background:radial-gradient(circle,rgba(255,10,97,.25),rgba(255,10,97,0) 67%); filter:blur(10px); z-index:-2; }
    .hero-outline {
      position:absolute;
      right:-.04em;
      bottom:-.18em;
      z-index:-1;
      font-family:"Barlow Condensed",sans-serif;
      font-size:min(37vw,610px);
      font-weight:900;
      line-height:.72;
      letter-spacing:-.09em;
      color:transparent;
      -webkit-text-stroke:1px rgba(255,255,255,.08);
      transform:skewX(-10deg);
      user-select:none;
    }
    .hero-grid { display:grid; grid-template-columns:minmax(0,1.12fr) minmax(300px,.58fr); gap:56px; align-items:end; }
    .hero-copy { max-width:760px; }
    .hero-kicker { display:inline-flex; align-items:center; gap:10px; border:1px solid rgba(255,255,255,.14); background:rgba(5,5,6,.44); backdrop-filter:blur(14px); border-radius:999px; padding:9px 13px; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
    .pulse { width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 0 rgba(34,197,94,.5); animation:pulse 2s infinite; }
    @keyframes pulse { 70% { box-shadow:0 0 0 9px rgba(34,197,94,0); } 100% { box-shadow:0 0 0 0 rgba(34,197,94,0); } }
    .hero h1 { margin:22px 0 0; font-family:"Barlow Condensed",sans-serif; font-weight:900; text-transform:uppercase; font-size:clamp(66px,8.4vw,132px); line-height:1.02; letter-spacing:-.025em; max-width:800px; }
    .hero h1 .line { display:block; }
    .hero h1 .pink { color:var(--pink); font-style:italic; text-shadow:0 0 40px rgba(255,10,97,.24); }
    .hero-sub { max-width:620px; margin:26px 0 0; color:#d3d3d8; font-size:clamp(15px,1.35vw,18px); line-height:1.7; }
    .hero-disclaimer { max-width:660px; margin:18px 0 0; padding:11px 14px; border-left:2px solid var(--pink); border-radius:0 12px 12px 0; background:rgba(5,5,6,.58); color:#d0d0d6; font-size:12px; line-height:1.55; backdrop-filter:blur(10px); }
    .hero-disclaimer strong { color:#fff; font-size:10.5px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
    .hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; }
    .trust-row { display:flex; flex-wrap:wrap; gap:12px 22px; margin-top:32px; color:#bebec5; font-size:12px; font-weight:700; }
    .trust-row span { display:flex; align-items:center; gap:8px; }
    .trust-row svg { width:16px; height:16px; color:var(--pink-2); }

    .hero-reel { width:min(100%,360px); justify-self:end; position:relative; transform:translateY(14px); }
    .reel-shell {
      position:relative;
      padding:8px;
      border-radius:34px;
      background:linear-gradient(145deg,rgba(255,255,255,.38),rgba(255,255,255,.06) 23%,rgba(255,10,97,.44) 74%,rgba(255,255,255,.15));
      box-shadow:0 40px 120px rgba(0,0,0,.62), 0 0 70px rgba(255,10,97,.14);
      transform:rotate(2.2deg);
      transition:transform .7s var(--ease);
    }
    .hero-reel:hover .reel-shell { transform:rotate(0) translateY(-7px); }
    .reel-video-wrap { aspect-ratio:9/13.5; overflow:hidden; border-radius:27px; background:#111; position:relative; }
    .reel-video-wrap video { width:100%; height:100%; object-fit:cover; }
    .reel-video-wrap::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.78),transparent 40%); pointer-events:none; }
    .reel-top { position:absolute; left:18px; right:18px; top:18px; display:flex; justify-content:space-between; align-items:center; z-index:3; }
    .reel-live { background:var(--pink); border-radius:999px; padding:7px 10px; font-size:10px; letter-spacing:.1em; font-weight:900; text-transform:uppercase; }
    .reel-sound { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; border:1px solid rgba(255,255,255,.25); background:rgba(5,5,6,.55); backdrop-filter:blur(12px); cursor:pointer; }
    .reel-sound svg { width:18px; }
    .reel-caption { position:absolute; left:22px; right:22px; bottom:22px; z-index:3; }
    .reel-caption strong { display:block; font-family:"Barlow Condensed",sans-serif; font-size:30px; line-height:.95; text-transform:uppercase; }
    .reel-caption span { display:block; margin-top:8px; color:#e1e1e4; font-size:12px; }
    .reel-orbit { position:absolute; width:130px; height:130px; border:1px dashed rgba(255,255,255,.22); border-radius:50%; right:-54px; top:16%; animation:spin 16s linear infinite; }
    .reel-orbit::before { content:"PDR"; position:absolute; top:-10px; left:50%; transform:translateX(-50%); background:var(--ink); color:var(--pink); padding:0 8px; font:800 12px "Barlow Condensed"; letter-spacing:.18em; }
    @keyframes spin { to { transform:rotate(360deg); } }
    .scroll-cue { position:absolute; left:50%; bottom:24px; transform:translateX(-50%); display:flex; flex-direction:column; align-items:center; gap:8px; color:rgba(255,255,255,.55); font-size:9px; letter-spacing:.2em; text-transform:uppercase; }
    .scroll-cue i { width:1px; height:34px; background:linear-gradient(var(--pink),transparent); animation:scrollLine 1.9s ease-in-out infinite; }
    @keyframes scrollLine { 0%{transform:scaleY(.2);transform-origin:top;opacity:.2} 50%{transform:scaleY(1);opacity:1} 100%{transform:scaleY(.2);transform-origin:bottom;opacity:.2} }

    .proof-strip { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:rgba(255,255,255,.018); overflow:hidden; }
    .marquee { display:flex; width:max-content; animation:marquee 26s linear infinite; }
    .marquee-group { display:flex; align-items:center; gap:36px; padding:18px 18px; white-space:nowrap; color:#c8c8ce; font-family:"Barlow Condensed",sans-serif; font-size:18px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
    .marquee-group b { color:var(--pink); font-size:12px; }
    @keyframes marquee { to { transform:translateX(-50%); } }

    .story { min-height:215vh; padding:0; }
    .story-sticky { position:sticky; top:0; min-height:100svh; display:grid; align-items:center; overflow:hidden; }
    .story-sticky::before { content:""; position:absolute; inset:0; background:radial-gradient(circle at 70% 50%,rgba(255,10,97,.11),transparent 32rem); }
    .story-grid { display:grid; grid-template-columns:.82fr 1.18fr; align-items:center; gap:56px; position:relative; z-index:2; }
    .story-copy { min-height:380px; display:flex; flex-direction:column; justify-content:center; }
    .story-line { position:absolute; opacity:0; transform:translateY(30px); transition:opacity .4s ease, transform .6s var(--ease); pointer-events:none; max-width:510px; }
    .story-line.active { opacity:1; transform:translateY(0); pointer-events:auto; }
    .story-line .n { display:inline-flex; align-items:center; gap:10px; font-family:"Barlow Condensed",sans-serif; font-size:14px; letter-spacing:.16em; color:var(--pink); font-weight:800; text-transform:uppercase; }
    .story-line .n::before { content:""; width:34px; height:2px; background:linear-gradient(90deg,var(--pink),transparent); box-shadow:0 0 14px rgba(255,10,97,.55); }
    .story-line h2 { margin:16px 0 0; font-family:"Barlow Condensed",sans-serif; text-transform:uppercase; font-size:clamp(46px,5.2vw,74px); line-height:1.04; letter-spacing:-.015em; }
    .story-line p { color:#bdbdc5; font-size:16px; line-height:1.72; margin:20px 0 0; }
    .story-surface { position:relative; aspect-ratio:1.08/1; border-radius:34px; overflow:hidden; border:1px solid rgba(255,255,255,.14); background:#141419; box-shadow:var(--shadow); perspective:1200px; }
    .story-surface::before { content:""; position:absolute; inset:0; background:linear-gradient(120deg,rgba(255,255,255,.13),transparent 18%,transparent 64%,rgba(255,255,255,.05)); pointer-events:none; z-index:4; }
    .case-section { overflow:hidden; }
    .case-heading { display:grid; grid-template-columns:1fr .62fr; gap:48px; align-items:end; }
    .case-heading .lead { margin-left:auto; }
    .case-grid { margin-top:52px; display:grid; grid-template-columns:minmax(0,1.22fr) minmax(300px,.58fr); gap:24px; }
    .compare-card { position:relative; min-height:610px; border-radius:32px; overflow:hidden; border:1px solid rgba(255,255,255,.13); background:#111; box-shadow:var(--shadow); user-select:none; touch-action:pan-y; }
    .compare-layer { position:absolute; inset:0; overflow:hidden; }
    .compare-layer img { width:100%; height:100%; object-fit:cover; object-position:center 43%; max-width:none; }
    .compare-card--mini .compare-before img { object-position:center 48%; }
    .compare-card--mini .compare-result img { object-position:center 46%; }
    .compare-before { width:50%; z-index:2; border-right:1px solid rgba(255,255,255,.8); box-shadow:16px 0 34px rgba(0,0,0,.25); }
    .compare-handle { position:absolute; z-index:5; left:50%; top:50%; width:64px; height:64px; transform:translate(-50%,-50%); border-radius:50%; background:rgba(5,5,6,.76); backdrop-filter:blur(14px); border:1px solid rgba(255,255,255,.38); display:grid; place-items:center; box-shadow:0 0 0 8px rgba(255,255,255,.06),0 18px 50px rgba(0,0,0,.45); pointer-events:none; }
    .compare-handle svg { width:26px; }
    .compare-range { position:absolute; inset:0; z-index:6; width:100%; height:100%; opacity:0; cursor:ew-resize; }
    .compare-label { position:absolute; top:22px; z-index:7; padding:9px 12px; border-radius:999px; background:rgba(5,5,6,.68); border:1px solid rgba(255,255,255,.16); backdrop-filter:blur(12px); text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:900; pointer-events:none; }
    .compare-label.before { left:22px; }
    .compare-label.after { right:22px; color:var(--pink-2); }
    .case-note { position:absolute; left:24px; bottom:24px; z-index:7; padding:12px 14px; border-radius:16px; background:rgba(5,5,6,.72); border:1px solid rgba(255,255,255,.14); backdrop-filter:blur(14px); font-size:11px; color:#d7d7dc; pointer-events:none; }
    .case-panel { border-radius:32px; padding:30px; background:linear-gradient(160deg,rgba(255,10,97,.16),rgba(255,255,255,.035) 35%,rgba(255,255,255,.018)); border:1px solid rgba(255,255,255,.13); display:flex; flex-direction:column; min-height:610px; }
    .case-panel .tag { align-self:flex-start; color:var(--pink-2); font-size:10px; letter-spacing:.15em; text-transform:uppercase; font-weight:900; }
    .case-panel h3 { margin:22px 0 0; font-family:"Barlow Condensed",sans-serif; text-transform:uppercase; font-size:clamp(38px,4.2vw,56px); line-height:1.04; letter-spacing:-.012em; }
    .case-panel p { margin:22px 0 0; color:#bbbcc3; line-height:1.7; font-size:15px; }
    .case-specs { margin:30px 0 0; border-top:1px solid rgba(255,255,255,.12); }
    .case-spec { display:flex; justify-content:space-between; gap:20px; padding:16px 0; border-bottom:1px solid rgba(255,255,255,.1); font-size:12px; }
    .case-spec span { color:var(--muted); }
    .case-spec strong { text-align:right; }
    .case-panel .btn { margin-top:auto; width:100%; }

    .services { background:linear-gradient(180deg,transparent,rgba(255,255,255,.018),transparent); }
    .services-head { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; }
    .services-head .lead { max-width:520px; }
    .service-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; margin-top:52px; }
    .service-card { position:relative; min-height:360px; border-radius:28px; overflow:hidden; border:1px solid rgba(255,255,255,.12); background:var(--panel); padding:26px; display:flex; flex-direction:column; isolation:isolate; transition:transform .5s var(--ease), border-color .4s ease; }
    .service-card:hover { transform:translateY(-8px); border-color:rgba(255,10,97,.5); }
    .service-card:nth-child(1), .service-card:nth-child(4) { grid-column:span 7; }
    .service-card:nth-child(2), .service-card:nth-child(3) { grid-column:span 5; }
    .service-card:nth-child(5) { grid-column:span 12; min-height:340px; }
    .service-card::before { content:""; position:absolute; inset:0; z-index:-2; background:radial-gradient(circle at 80% 20%,rgba(255,10,97,.18),transparent 18rem); opacity:.55; transition:opacity .4s ease; }
    .service-card:hover::before { opacity:1; }
    .service-card .index { font-family:"Barlow Condensed",sans-serif; font-size:14px; font-weight:800; letter-spacing:.14em; color:var(--pink); text-transform:uppercase; }
    .service-icon { margin-top:auto; width:80px; height:80px; border-radius:24px; display:grid; place-items:center; background:rgba(255,255,255,.045); border:1px solid rgba(255,255,255,.11); }
    .service-icon svg { width:44px; height:44px; color:var(--pink-2); }
    .service-card h3 { margin:22px 0 0; font-family:"Barlow Condensed",sans-serif; font-size:38px; line-height:1.04; text-transform:uppercase; }
    .service-card p { color:#aaaab2; max-width:520px; line-height:1.65; margin:15px 0 0; font-size:14px; }
    .service-card .arrow { position:absolute; right:26px; top:26px; width:48px; height:48px; border-radius:50%; border:1px solid rgba(255,255,255,.14); display:grid; place-items:center; transform:rotate(-45deg); transition:transform .4s var(--ease), background .4s ease; }
    .service-card:hover .arrow { transform:rotate(0); background:var(--pink); }
    .service-card .arrow svg { width:18px; }
    .service-card.wide-visual { padding-right:46%; }
    .service-card--polish .service-card-media video { object-position:center 56%; }
    .real-work { padding-top:70px; }
    .work-stage { min-height:680px; border-radius:34px; border:1px solid rgba(255,255,255,.13); overflow:hidden; position:relative; background:#09090b; box-shadow:var(--shadow); display:grid; grid-template-columns:.73fr 1.27fr; }
    .work-phone { padding:36px; display:flex; align-items:center; justify-content:center; background:radial-gradient(circle at 50% 46%,rgba(255,10,97,.18),transparent 22rem); }
    .phone-frame { width:min(100%,335px); aspect-ratio:9/16; padding:8px; border-radius:34px; background:linear-gradient(140deg,#f2f2f2,#313136 18%,#070709 54%,#ff0a61); box-shadow:0 40px 90px rgba(0,0,0,.55); position:relative; }
    .phone-frame::before { content:""; position:absolute; top:15px; left:50%; transform:translateX(-50%); width:82px; height:20px; border-radius:999px; background:#050506; z-index:4; }
    .phone-frame video { width:100%; height:100%; object-fit:cover; border-radius:31px; background:#111; }
    .work-content { padding:56px; display:flex; flex-direction:column; justify-content:center; position:relative; overflow:hidden; }
    .work-content::before { content:"ECHTE ARBEIT"; position:absolute; right:-.05em; bottom:-.12em; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.05); font:900 min(12vw,180px)/.75 "Barlow Condensed"; transform:rotate(-90deg) translateX(50%); transform-origin:right bottom; white-space:nowrap; }
    .work-content h2 { margin:18px 0 0; font-family:"Barlow Condensed",sans-serif; text-transform:uppercase; font-size:clamp(48px,5.6vw,78px); line-height:1.04; letter-spacing:-.012em; position:relative; z-index:2; }
    .work-content h2 span { color:var(--pink); font-style:italic; }
    .work-content p { max-width:620px; color:#b9b9c1; font-size:16px; line-height:1.72; margin:22px 0 0; position:relative; z-index:2; }
    .work-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:32px; position:relative; z-index:2; }
    .sound-state { display:inline-flex; align-items:center; gap:8px; margin-top:22px; color:var(--muted); font-size:11px; position:relative; z-index:2; }
    .sound-state i { width:7px; height:7px; background:var(--pink); border-radius:50%; box-shadow:0 0 12px var(--pink); }

    .process { min-height:225vh; padding:0; }
    .process-sticky { position:sticky; top:0; min-height:100svh; overflow:hidden; display:flex; align-items:center; }
    .process-head { position:absolute; z-index:5; left:max(24px,calc((100vw - min(1240px, calc(100vw - 48px)))/2)); top:clamp(95px,13vh,135px); pointer-events:none; }
    .process-head h2 { margin:12px 0 0; font-family:"Barlow Condensed",sans-serif; text-transform:uppercase; font-size:clamp(42px,4.6vw,64px); line-height:1.04; letter-spacing:-.012em; }
    .process-head h2 > span { color:inherit; }
    .process-head h2 .headline-line { display:block; line-height:1.09; padding-top:.04em; }
    .process-head h2 .headline-line + .headline-line { margin-top:.12em; }
    .process-head h2 .headline-line--accent { color:var(--pink); }
    .process-track { display:flex; gap:20px; padding-left:max(24px,calc((100vw - min(1240px, calc(100vw - 48px)))/2)); padding-right:24px; transform:translateX(calc(var(--process,0) * -1px)); will-change:transform; margin-top:190px; }
    .process-card { flex:0 0 min(420px,74vw); height:min(46vh,420px); border-radius:30px; position:relative; overflow:hidden; background:linear-gradient(150deg,#17171c,#09090b); border:1px solid rgba(255,255,255,.13); padding:28px; display:flex; flex-direction:column; }
    .process-card:nth-child(2) { background:linear-gradient(150deg,rgba(255,10,97,.24),#111 43%); }
    .process-card .process-glyph { position:absolute; right:26px; top:24px; width:78px; height:78px; padding:18px; border-radius:24px; color:rgba(255,255,255,.22); border:1px solid rgba(255,255,255,.09); background:rgba(255,255,255,.025); }
    .process-card .step { color:var(--pink-2); font-size:10px; letter-spacing:.16em; text-transform:uppercase; font-weight:900; }
    .process-card h3 { margin:auto 0 0; font:900 46px/1.04 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-.012em; }
    .process-card p { margin:18px 0 0; color:#aaaab3; max-width:390px; line-height:1.7; font-size:14px; }
    .process-card .mini-ui { margin-top:26px; display:flex; gap:9px; flex-wrap:wrap; }
    .mini-pill { border:1px solid rgba(255,255,255,.14); border-radius:999px; padding:8px 10px; color:#c4c4ca; font-size:10px; }
    .process-card--media { padding:0; isolation:isolate; background:#09090b; }
    .process-card--media .process-media { position:absolute; z-index:0; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.82) contrast(1.08); transform:scale(1.01); }
    .process-card--media::before { content:""; position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,rgba(5,5,6,.58),transparent 36%); pointer-events:none; }
    .process-card--media::after { content:""; position:absolute; z-index:2; inset:0; background:linear-gradient(0deg,rgba(5,5,6,.97) 0%,rgba(5,5,6,.79) 34%,rgba(5,5,6,.1) 78%); pointer-events:none; }
    .process-card--media .process-copy { position:absolute; z-index:3; left:34px; right:34px; bottom:34px; }
    .process-card--media .process-copy h3 { margin:12px 0 0; font-size:44px; }
    .process-card--media .process-copy p { color:#d0d0d6; }
    .process-card--media .process-glyph { z-index:4; color:rgba(255,255,255,.66); background:rgba(5,5,6,.42); backdrop-filter:blur(12px); }
    .process-card--media .mini-pill { color:#ededf1; background:rgba(5,5,6,.48); backdrop-filter:blur(10px); }
    .process-card--photo-angle .process-media { object-position:center 56%; }
    .process-card--photo-detail .process-media { object-position:center 46%; }
    .process-card--mini-video .process-media { object-position:center 48%; }
    .process-card--work-video .process-media { object-position:center 45%; }
    .process-card.video-card { padding:0; }
    .process-card.video-card video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.7) contrast(1.1); }
    .process-card.video-card::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.92),transparent 62%); }
    .process-card.video-card .video-copy { position:absolute; z-index:3; left:34px; right:34px; bottom:34px; }
    .process-card.video-card h3 { font-size:44px; }
    .process-progress { position:absolute; left:max(24px,calc((100vw - min(1240px, calc(100vw - 48px)))/2)); right:max(24px,calc((100vw - min(1240px, calc(100vw - 48px)))/2)); bottom:34px; height:3px; background:rgba(255,255,255,.1); }
    .process-progress span { display:block; height:100%; width:calc(var(--process-pct,0)*100%); background:linear-gradient(90deg,var(--pink),#fff); }

    .benefits { overflow:hidden; }
    .benefit-grid { display:grid; grid-template-columns:.72fr 1.28fr; gap:56px; align-items:start; }
    .benefit-sticky { position:sticky; top:120px; }
    .benefit-list { border-top:1px solid rgba(255,255,255,.13); }
    .benefit-item { display:grid; grid-template-columns:60px 1fr auto; gap:20px; align-items:center; padding:24px 0; border-bottom:1px solid rgba(255,255,255,.13); transition:padding .4s var(--ease), background .4s ease; }
    .benefit-item:hover { padding-left:20px; padding-right:20px; background:linear-gradient(90deg,rgba(255,10,97,.08),transparent); }
    .benefit-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:17px; color:var(--pink-2); background:linear-gradient(145deg,rgba(255,10,97,.16),rgba(255,255,255,.035)); border:1px solid rgba(255,255,255,.12); }
    .benefit-icon svg { width:28px; height:28px; }
    .benefit-item h3 { margin:0; font:900 clamp(28px,3.3vw,44px)/1.04 "Barlow Condensed"; text-transform:uppercase; }
    .benefit-item p { margin:10px 0 0; color:#a8a8b0; line-height:1.6; font-size:13px; max-width:600px; }
    .benefit-item .check { width:44px; height:44px; border-radius:50%; border:1px solid rgba(255,255,255,.16); display:grid; place-items:center; color:var(--pink-2); }
    .benefit-item .check svg { width:18px; }
    .service-area { margin-top:64px; border-radius:34px; overflow:hidden; min-height:460px; display:grid; grid-template-columns:.82fr 1.18fr; border:1px solid rgba(255,255,255,.13); background:#0b0b0e; }
    .area-copy { padding:48px; display:flex; flex-direction:column; justify-content:center; }
    .area-copy h3 { font:900 clamp(42px,5vw,66px)/1.04 "Barlow Condensed"; text-transform:uppercase; margin:18px 0 0; }
    .area-copy p { color:#b2b2b9; line-height:1.7; }
    .map-legend { position:absolute; left:24px; bottom:24px; right:24px; padding:15px; border-radius:18px; border:1px solid rgba(255,255,255,.13); background:rgba(5,5,6,.58); backdrop-filter:blur(14px); color:#b8b8bf; font-size:11px; }

    .finish-cinema { position:relative; min-height:64vh; display:flex; align-items:center; overflow:hidden; border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); }
    .finish-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:saturate(.35) contrast(1.18); }
    .finish-cinema::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,5,6,.97),rgba(5,5,6,.65) 50%,rgba(5,5,6,.42)),linear-gradient(0deg,#050506,transparent 25%,transparent 75%,#050506); }
    .finish-copy { position:relative; z-index:2; width:var(--container); margin:0 auto; }
    .finish-copy h2 { margin:18px 0 0; max-width:850px; font:900 clamp(54px,7vw,94px)/1.03 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-.012em; }
    .finish-copy h2 span { color:var(--pink); font-style:italic; }
    .finish-copy p { max-width:590px; color:#d0d0d5; font-size:16px; line-height:1.7; }

    .faq-grid { display:grid; grid-template-columns:.7fr 1.3fr; gap:56px; align-items:start; }
    .faq-intro { position:sticky; top:120px; }
    .faq-list { border-top:1px solid rgba(255,255,255,.14); }
    .faq-item { border-bottom:1px solid rgba(255,255,255,.14); }
    .faq-q { width:100%; background:none; border:0; padding:22px 0; text-align:left; display:grid; grid-template-columns:1fr 40px; gap:18px; align-items:center; cursor:pointer; }
    .faq-q span { font:800 clamp(20px,2.35vw,30px)/1.14 "Barlow Condensed"; text-transform:uppercase; padding-top:.04em; }
    .faq-plus { width:38px; height:38px; border-radius:50%; border:1px solid rgba(255,255,255,.15); display:grid; place-items:center; font-size:22px; transition:transform .4s var(--ease), background .4s ease; }
    .faq-item.open .faq-plus { transform:rotate(45deg); background:var(--pink); }
    .faq-a { max-height:0; overflow:hidden; transition:max-height .55s var(--ease); }
    .faq-a p { margin:0; padding:0 70px 28px 0; color:#a9a9b1; line-height:1.75; }

    .contact { padding-top:80px; }
    .contact-shell { border-radius:40px; overflow:hidden; background:linear-gradient(140deg,rgba(255,10,97,.24),rgba(255,255,255,.045) 34%,#0a0a0d 72%); border:1px solid rgba(255,255,255,.15); box-shadow:var(--shadow); display:grid; grid-template-columns:.9fr 1.1fr; min-height:660px; position:relative; }
    .contact-copy { padding:56px; position:relative; overflow:hidden; }
    .contact-copy::before { content:""; position:absolute; width:440px; aspect-ratio:1; left:-220px; bottom:-220px; border-radius:50%; border:1px solid rgba(255,255,255,.09); box-shadow:0 0 0 55px rgba(255,255,255,.02),0 0 0 110px rgba(255,255,255,.018); }
    .contact-copy h2 { margin:18px 0 0; font:900 clamp(52px,5.8vw,82px)/1.03 "Barlow Condensed"; text-transform:uppercase; letter-spacing:-.012em; }
    .contact-copy h2 span { color:var(--pink); font-style:italic; }
    .contact-copy p { max-width:520px; color:#c0c0c7; line-height:1.75; font-size:16px; }
    .contact-direct { margin-top:40px; display:grid; gap:14px; position:relative; z-index:2; }
    .contact-line { display:flex; align-items:center; gap:14px; font-size:13px; }
    .contact-line i { width:44px; height:44px; border-radius:14px; display:grid; place-items:center; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.13); color:var(--pink-2); }
    .contact-line svg { width:20px; }
    .contact-line strong { display:block; font-size:14px; }
    .contact-line small { display:block; color:var(--muted); margin-top:3px; }
    .contact-form-wrap { margin:18px; border-radius:30px; padding:36px; background:rgba(5,5,6,.78); border:1px solid rgba(255,255,255,.11); backdrop-filter:blur(18px); position:relative; z-index:2; }
    .contact-form-wrap h3 { margin:0; font:900 36px/1.05 "Barlow Condensed"; text-transform:uppercase; }
    .contact-form-wrap > p { color:var(--muted); font-size:12px; line-height:1.6; }
    .choice-label { display:block; margin:25px 0 10px; color:#d7d7dc; font-size:11px; text-transform:uppercase; letter-spacing:.12em; font-weight:800; }
    .choice-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:9px; }
    .choice-grid .choice:last-child:nth-child(odd) { grid-column:1 / -1; }
    .choice { position:relative; }
    .choice input { position:absolute; opacity:0; pointer-events:none; }
    .choice span { min-height:48px; border:1px solid rgba(255,255,255,.13); border-radius:14px; display:flex; align-items:center; justify-content:center; text-align:center; padding:10px; color:#b9b9c0; font-size:12px; cursor:pointer; transition:.3s; }
    .choice input:checked + span { color:white; background:rgba(255,10,97,.15); border-color:var(--pink); box-shadow:0 0 0 3px rgba(255,10,97,.08); }
    .field-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
    .field { margin-top:12px; }
    .field input, .field select, .field textarea { width:100%; border:1px solid rgba(255,255,255,.13); background:#0d0d11; color:white; border-radius:15px; padding:15px 16px; outline:none; transition:.3s; }
    .field input:focus, .field select:focus, .field textarea:focus { border-color:var(--pink); box-shadow:0 0 0 3px rgba(255,10,97,.1); }
    .field textarea { min-height:100px; resize:vertical; }
    .contact-form .btn { width:100%; margin-top:16px; min-height:58px; }
    .form-note { color:#888892; font-size:10px; line-height:1.55; margin-top:12px; }

    .footer { padding:36px 0 120px; }
    .footer-grid { display:flex; align-items:flex-end; justify-content:space-between; gap:40px; padding-top:34px; border-top:1px solid rgba(255,255,255,.12); }
    .footer .brand { min-width:0; }
    .footer .brand-logo { width:min(100%,360px); }
    .footer p { color:#888892; font-size:11px; line-height:1.65; max-width:590px; }
    .footer-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:14px 22px; font-size:11px; color:#aaaab2; }
    .footer-links a:hover { color:white; }
    .footer-credit { width:100%; color:#6f6f78; }
    .footer-credit a { color:#aaaab2; }

    .mobile-bar { display:none; position:fixed; left:12px; right:12px; bottom:12px; z-index:850; padding:8px; border:1px solid rgba(255,255,255,.14); border-radius:20px; background:rgba(5,5,6,.82); backdrop-filter:blur(18px); box-shadow:0 20px 60px rgba(0,0,0,.45); grid-template-columns:1fr 1.4fr; gap:8px; }
    .mobile-bar .btn { min-height:48px; padding:0 13px; font-size:11px; }

    .mobile-menu { position:fixed; inset:0; z-index:880; padding:110px 24px 100px; background:rgba(5,5,6,.96); backdrop-filter:blur(22px); opacity:0; visibility:hidden; transition:.4s; }
    .menu-open .mobile-menu { opacity:1; visibility:visible; }
    .mobile-menu nav { display:grid; gap:8px; }
    .mobile-menu a { padding:14px 0; border-bottom:1px solid rgba(255,255,255,.1); font:900 40px/.95 "Barlow Condensed"; text-transform:uppercase; }
    .mobile-menu a span { color:var(--pink); font-size:13px; margin-right:10px; }
    .mobile-menu .btn { margin-top:24px; width:100%; }

    .reveal { opacity:0; transform:translateY(36px); transition:opacity .85s var(--ease), transform .85s var(--ease); }
    .reveal.in { opacity:1; transform:translateY(0); }
    .stagger > * { opacity:0; transform:translateY(25px); transition:opacity .7s var(--ease), transform .7s var(--ease); }
    .stagger.in > * { opacity:1; transform:none; }
    .stagger.in > *:nth-child(2) { transition-delay:.08s; }
    .stagger.in > *:nth-child(3) { transition-delay:.16s; }
    .stagger.in > *:nth-child(4) { transition-delay:.24s; }
    .stagger.in > *:nth-child(5) { transition-delay:.32s; }

    .cursor-dot, .cursor-ring { position:fixed; top:0; left:0; pointer-events:none; border-radius:50%; z-index:1500; opacity:0; }
    .cursor-dot { width:7px; height:7px; background:var(--pink); box-shadow:0 0 18px var(--pink); }
    .cursor-ring { width:36px; height:36px; border:1px solid rgba(255,255,255,.55); transition:width .25s,height .25s,border-color .25s,background .25s; }
    .cursor-ring.hover { width:58px; height:58px; border-color:var(--pink); background:rgba(255,10,97,.08); }

    @media (max-width: 1050px) {
      :root { --container:min(100% - 32px, 920px); }
      .nav-links, .nav-cta > .btn { display:none; }
      .menu-btn { display:grid; }
      .hero-grid { grid-template-columns:1fr .48fr; gap:30px; }
      .hero-reel { width:300px; }
      .story-grid { grid-template-columns:.82fr 1fr; gap:30px; }
      .case-heading, .benefit-grid, .faq-grid { grid-template-columns:1fr; }
      .case-heading .lead { margin-left:0; }
      .benefit-sticky, .faq-intro { position:static; }
      .work-stage { grid-template-columns:.8fr 1.2fr; }
      .work-content { padding:50px; }
      .contact-shell { grid-template-columns:1fr; }
      .contact-copy { padding-bottom:30px; }
      .contact-form-wrap { margin-top:0; }
      .service-area { grid-template-columns:1fr 1fr; }
    }

    @media (min-width:761px) and (max-height:820px) {
      .hero { padding:112px 0 38px; }
      .hero h1 { margin-top:16px; font-size:clamp(62px,7vw,98px); }
      .hero-sub { margin-top:16px; font-size:15px; line-height:1.58; }
      .hero-disclaimer { margin-top:12px; }
      .hero-actions { margin-top:18px; }
      .trust-row { margin-top:18px; }
      .hero-reel { width:min(100%,320px); }
    }

    @media (max-width: 760px) {
      :root { --container:calc(100vw - 28px); --radius:22px; }
      .site-header { padding:10px 0; }
      .site-header .brand-logo { width:165px; }
      .menu-btn { width:42px; height:42px; }
      .section { padding:74px 0; }
      .hero { padding:112px 0 64px; min-height:auto; }
      .hero-media::after { background:linear-gradient(0deg,#050506 0%,rgba(5,5,6,.65) 55%,rgba(5,5,6,.58) 100%); }
      .hero-bg { opacity:.46; object-position:60% center; }
      .hero-grid { grid-template-columns:1fr; gap:30px; }
      .hero h1 { font-size:clamp(56px,18vw,82px); max-width:100%; }
      .hero-sub { margin-top:22px; }
      .hero-disclaimer { margin-top:16px; padding:10px 12px; }
      .hero-actions { flex-direction:column; }
      .hero-actions .btn { width:100%; }
      .trust-row { gap:10px 16px; }
      .hero-reel { width:min(80vw,300px); justify-self:center; }
      .reel-shell { transform:rotate(1deg); }
      .reel-orbit { display:none; }
      .scroll-cue { display:none; }
      .hero-outline { font-size:70vw; opacity:.5; }
      .proof-strip { margin-top:0; }
      .story { min-height:auto; padding:74px 0; }
      .story-sticky { position:relative; min-height:auto; }
      .story-grid { grid-template-columns:1fr; gap:30px; }
      .story-copy { min-height:auto; display:grid; gap:28px; }
      .story-line { position:relative; opacity:1; transform:none; display:block; padding-bottom:26px; border-bottom:1px solid rgba(255,255,255,.12); }
      .story-line:last-child { padding-bottom:0; border-bottom:0; }
      .story-surface { border-radius:26px; aspect-ratio:1/1; --dent:.65; --scroll:.55; }
      .case-heading { gap:18px; }
      .case-grid { grid-template-columns:1fr; margin-top:42px; }
      .compare-card { min-height:480px; border-radius:25px; }
      .case-panel { min-height:auto; border-radius:27px; }
      .case-panel .btn { margin-top:30px; }
      .services-head { display:block; }
      .service-grid { display:grid; grid-template-columns:1fr; margin-top:42px; }
      .service-card, .service-card:nth-child(n) { grid-column:auto; min-height:310px; border-radius:24px; }
      .service-card.wide-visual { padding-right:30px; }
      .service-card:nth-child(5) { min-height:340px; }
      .work-stage { grid-template-columns:1fr; min-height:auto; border-radius:28px; }
      .work-phone { padding:34px 22px; }
      .phone-frame { width:min(78vw,330px); }
      .work-content { padding:38px 24px 44px; }
      .work-content::before { display:none; }
      .process { min-height:auto; padding:74px 0; }
      .process-sticky { position:relative; min-height:auto; display:block; overflow:visible; }
      .process-head { position:relative; left:auto; top:auto; width:var(--container); margin:0 auto 38px; }
      .process-track { display:grid; gap:14px; padding:0; width:var(--container); margin:0 auto; transform:none !important; }
      .process-card { width:100%; height:auto; min-height:340px; flex:none; }
      .process-card--media { min-height:400px; }
      .process-card--media .process-copy { left:24px; right:24px; bottom:26px; }
      .process-card--media .process-copy h3 { font-size:clamp(38px,10.5vw,46px); }
      .process-progress { display:none; }
      .benefit-grid { gap:32px; }
      .benefit-item { grid-template-columns:54px 1fr; gap:14px; }
      .benefit-item .check { display:none; }
      .service-area { grid-template-columns:1fr; min-height:auto; border-radius:28px; }
      .area-copy { padding:34px 24px; }
      .finish-cinema { min-height:60vh; }
      .finish-copy h2 { font-size:clamp(52px,15vw,76px); }
      .faq-grid { gap:36px; }
      .faq-a p { padding-right:0; }
      .contact-shell { border-radius:28px; min-height:auto; }
      .contact-copy { padding:38px 24px 26px; }
      .contact-form-wrap { margin:10px; border-radius:24px; padding:24px 18px; }
      .choice-grid, .field-grid { grid-template-columns:1fr; }
      .choice-grid .choice:last-child:nth-child(odd) { grid-column:auto; }
      .footer-grid { display:grid; align-items:start; }
      .footer .brand-logo { width:min(100%,320px); }
      .footer-links { justify-content:flex-start; }
      .mobile-bar { display:grid; }
      .cursor-dot, .cursor-ring { display:none; }
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; }
      .hero-bg, .finish-video { display:none; }
      .reveal, .stagger > * { opacity:1 !important; transform:none !important; }
    }

    .preloader { display:none; }
    .js .preloader { display:grid; }

    .skip-link {
      position:fixed;
      left:16px;
      top:12px;
      z-index:3000;
      padding:12px 16px;
      border-radius:12px;
      background:var(--white);
      color:var(--ink);
      font-weight:800;
      transform:translateY(-160%);
      transition:transform .2s ease;
    }
    .skip-link:focus { transform:translateY(0); }
    .sr-only {
      position:absolute;
      width:1px;
      height:1px;
      padding:0;
      margin:-1px;
      overflow:hidden;
      clip:rect(0,0,0,0);
      white-space:nowrap;
      border:0;
    }
    :focus-visible {
      outline:3px solid var(--pink-2);
      outline-offset:4px;
    }
    .nav-links a[aria-current="page"]::after { transform:scaleX(1); transform-origin:left; }
    section[id] { scroll-margin-top:90px; }
    .service-card:focus-visible { border-color:var(--pink); }
    .phone-frame img { width:100%; height:100%; object-fit:cover; border-radius:31px; background:#111; }
    .finish-backdrop {
      position:absolute;
      inset:0;
      background:#0a0a0c url("../posters/stock/pexels-polishing-car-6161632.webp") center/cover no-repeat;
      filter:saturate(.35) contrast(1.18);
      transform:scale(1.015);
    }

    .surface-teaser { padding:36px 0 14px; }
    .surface-teaser-link {
      min-height:380px;
      display:grid;
      grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);
      align-items:stretch;
      overflow:hidden;
      border-block:1px solid rgba(255,255,255,.14);
      background:linear-gradient(110deg,rgba(255,10,97,.12),transparent 38%);
    }
    .surface-teaser-media { margin:0; min-height:380px; overflow:hidden; clip-path:polygon(0 0,100% 0,82% 100%,0 100%); }
    .surface-teaser-media img {
      width:100%;
      height:100%;
      object-fit:cover;
      object-position:center 34%;
      filter:saturate(.65) contrast(1.12);
      transition:transform .8s var(--ease), filter .5s ease;
    }
    .surface-teaser-copy { padding:50px clamp(24px,5vw,62px); display:flex; flex-direction:column; justify-content:center; }
    .surface-teaser-copy h2 { margin:18px 0 0; max-width:760px; font:900 clamp(42px,5vw,68px)/1.04 "Barlow Condensed",sans-serif; letter-spacing:-.012em; text-transform:uppercase; }
    .text-link { display:inline-flex; align-items:center; gap:10px; margin-top:30px; color:var(--pink-2); font-size:13px; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
    .surface-teaser-link:hover .surface-teaser-media img { transform:scale(1.035); filter:saturate(.85) contrast(1.08); }

    .media-dialog {
      width:min(92vw,1040px);
      max-width:none;
      border:0;
      padding:0;
      overflow:visible;
      color:var(--white);
      background:transparent;
    }
    .media-dialog-portrait { width:min(92vw,540px); }
    .media-dialog::backdrop { background:rgba(0,0,0,.86); backdrop-filter:blur(12px); }
    .media-dialog-shell {
      position:relative;
      padding:8px;
      border-radius:32px;
      background:linear-gradient(145deg,#fff,#24242a 18%,#050506 65%,#ff0a61);
      box-shadow:0 40px 120px rgba(0,0,0,.75);
    }
    .media-dialog video { width:100%; max-height:86vh; border-radius:26px; background:#000; }
    .dialog-close {
      position:absolute;
      right:-12px;
      top:-12px;
      z-index:3;
      width:48px;
      height:48px;
      border-radius:50%;
      border:1px solid rgba(255,255,255,.3);
      background:#050506;
      color:white;
      font-size:25px;
      line-height:1;
      cursor:pointer;
    }
    body.legal-page .mobile-bar { display:none !important; }

    .cta-panel { position:relative; overflow:hidden; min-height:460px; display:grid; grid-template-columns:minmax(0,.85fr) minmax(320px,1.15fr); border:1px solid rgba(255,255,255,.14); border-radius:36px; background:#0a0a0d; box-shadow:var(--shadow); }
    .cta-panel-copy { padding:clamp(32px,5vw,60px); display:flex; flex-direction:column; justify-content:center; position:relative; z-index:2; }
    .cta-panel-copy h2 { margin:18px 0 0; font:900 clamp(48px,5.6vw,78px)/1.04 "Barlow Condensed",sans-serif; letter-spacing:-.012em; text-transform:uppercase; }
    .cta-panel-copy h2 em { color:var(--pink); font-style:italic; }
    .cta-panel-copy p { max-width:590px; color:#bcbcc4; line-height:1.75; }
    .cta-panel-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
    .cta-panel-media { position:relative; min-height:460px; overflow:hidden; }
    .cta-panel-media img { width:100%; height:100%; object-fit:cover; object-position:center 42%; filter:saturate(.64) contrast(1.12); }
    .cta-panel-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#0a0a0d 0%,transparent 45%),linear-gradient(0deg,rgba(5,5,6,.58),transparent 50%); }
    .cta-panel-proof { position:absolute; right:24px; bottom:24px; z-index:2; max-width:300px; padding:16px 18px; border:1px solid rgba(255,255,255,.16); border-radius:18px; background:rgba(5,5,6,.72); backdrop-filter:blur(15px); font-size:11px; line-height:1.6; color:#d2d2d8; }
    .faq-teaser-action { margin-top:30px; }

    /* Calibrated display typography: restrained scale and safe room for German diacritics. */
    :is(
      .hero h1,
      .display,
      .section-title,
      .story-line h2,
      .case-panel h3,
      .work-content h2,
      .process-head h2,
      .process-card h3,
      .area-copy h3,
      .finish-copy h2,
      .surface-teaser-copy h2,
      .cta-panel-copy h2,
      .contact-copy h2,
      .subhero h1,
      .chapter-copy h2,
      .feasibility-copy h2,
      .before-after-copy h2,
      .conversion-copy h2,
      .contact-page-copy h1,
      .legal-hero h1
    ) {
      line-height:1.04;
      letter-spacing:-.008em;
      font-kerning:normal;
      font-variant-ligatures:none;
      text-wrap:balance;
      padding-block:.055em .02em;
    }
    :is(.hero h1, .section-title, .story-line h2, .work-content h2, .process-head h2, .area-copy h3, .finish-copy h2, .cta-panel-copy h2, .contact-page-copy h1) em,
    :is(.hero h1, .section-title, .story-line h2, .work-content h2, .process-head h2, .area-copy h3, .finish-copy h2, .cta-panel-copy h2, .contact-page-copy h1) span {
      padding-right:.025em;
    }
    :is(.hero h1, .section-title, .story-line h2, .work-content h2, .area-copy h3, .finish-copy h2, .cta-panel-copy h2, .contact-page-copy h1) > br + :is(span,em) {
      display:inline-block;
      margin-top:.14em;
    }
    .hero h1 .line,
    .process-head h2 .headline-line,
    .faq-page-title > span { line-height:1.09; padding-top:.045em; }

    .story-film { margin:0; background:#0a0a0d; }
    .story-film::before { z-index:2; background:linear-gradient(180deg,rgba(5,5,6,.08),rgba(5,5,6,.7)); }
    .story-film video { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.46) contrast(1.16); transform:scale(1.02); }
    .story-film figcaption { position:absolute; z-index:4; left:24px; right:24px; bottom:22px; display:flex; justify-content:space-between; gap:20px; align-items:flex-end; color:#d7d7dc; font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
    .story-film figcaption strong { max-width:240px; color:#fff; font-size:12px; text-align:right; }

    .service-card.wide-visual .service-card-media { position:absolute; z-index:-1; inset:0 0 0 48%; overflow:hidden; }
    .service-card-media video { width:100%; height:100%; object-fit:cover; object-position:center; filter:saturate(.48) contrast(1.17); transition:transform .8s var(--ease), filter .5s ease; }
    .service-card-media-portrait video { object-position:center 58%; }
    .service-card.wide-visual .service-card-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#111116 0%,rgba(17,17,22,.92) 15%,rgba(17,17,22,.2) 72%),linear-gradient(0deg,rgba(5,5,6,.74),transparent 58%); }
    .service-card:hover .service-card-media video { transform:scale(1.035); filter:saturate(.7) contrast(1.12); }
    .service-card.wide-visual > :not(.service-card-media) { position:relative; z-index:2; }

    .area-film { position:relative; min-height:540px; overflow:hidden; background:#0a0a0c; }
    .area-film video { width:100%; height:100%; object-fit:cover; object-position:center 58%; filter:saturate(.5) contrast(1.15); }
    .area-film::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,5,6,.18),rgba(5,5,6,.02)),linear-gradient(0deg,rgba(5,5,6,.84),transparent 60%); pointer-events:none; }
    .area-locations { position:absolute; z-index:3; top:24px; left:24px; right:24px; display:flex; flex-wrap:wrap; gap:8px; }
    .area-locations span { padding:9px 12px; border:1px solid rgba(255,255,255,.2); border-radius:999px; background:rgba(5,5,6,.68); backdrop-filter:blur(12px); font-size:10px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
    .area-film .map-legend { z-index:3; }

    .finish-backdrop { width:100%; height:100%; object-fit:cover; background:#0a0a0c; }

    .form-actions { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:18px; }
    .form-actions .btn { width:100%; margin:0; }
    .form-status { min-height:22px; margin:14px 0 0; color:#c9c9d0; font-size:12px; line-height:1.55; }
    .form-status.is-success { color:#79e29b; }
    .form-status.is-error { color:#ff8caf; }
    .privacy-check { display:grid; grid-template-columns:18px 1fr; gap:10px; align-items:start; margin-top:16px; color:#a9a9b1; font-size:11px; line-height:1.55; }
    .privacy-check input { width:16px; height:16px; margin:1px 0 0; accent-color:var(--pink); }
    .privacy-check a { color:#fff; text-decoration:underline; text-decoration-color:rgba(255,10,97,.65); text-underline-offset:3px; }
    .form-honeypot { position:absolute !important; left:-10000px !important; width:1px !important; height:1px !important; overflow:hidden !important; }
    .btn[disabled] { opacity:.58; cursor:wait; transform:none; }
    .redirect-note { min-height:100svh; display:grid; place-content:center; gap:22px; width:min(100% - 32px,640px); margin:auto; text-align:center; }
    .redirect-logo { display:block; width:min(100%,520px); height:auto; margin:0 auto; filter:drop-shadow(0 18px 42px rgba(0,0,0,.42)); }
    .redirect-note p { color:#c6c6cd; font-size:18px; line-height:1.65; }
    .redirect-note .btn { justify-self:center; }

    @media (max-width:760px) {
      .surface-teaser { padding-top:20px; }
      .surface-teaser-link { grid-template-columns:1fr; min-height:0; }
      .surface-teaser-media { min-height:280px; clip-path:polygon(0 0,100% 0,100% 88%,0 100%); }
      .surface-teaser-copy { padding:30px 20px 40px; }
      .surface-teaser-copy h2 { font-size:clamp(38px,11vw,56px); }
      .dialog-close { right:-4px; top:-54px; }
      .cta-panel { grid-template-columns:1fr; min-height:0; border-radius:28px; }
      .cta-panel-copy { padding:36px 22px; }
      .cta-panel-media { min-height:300px; order:-1; }
      .cta-panel-media::after { background:linear-gradient(0deg,#0a0a0d 0%,transparent 58%); }
      .cta-panel-actions { flex-direction:column; }
      .cta-panel-actions .btn { width:100%; }
      .story-film { aspect-ratio:4/5; }
      .story-film figcaption { display:grid; }
      .story-film figcaption strong { text-align:left; }
      .service-card.wide-visual .service-card-media { inset:0; }
      .service-card.wide-visual .service-card-media::after { background:linear-gradient(0deg,#111116 0%,rgba(17,17,22,.82) 56%,rgba(17,17,22,.18)); }
      .service-card.wide-visual { padding-top:190px; }
      .area-film { min-height:400px; }
      .form-actions { grid-template-columns:1fr; }
    }
