/*
 * Kanzlei Caroline Kromer — Startseite
 * Production stylesheet
 * Black / white / gold editorial system
 */

:root{--paper:#ffffff;
      --paper-2:#f5f5f2;
      --taupe:#ffffff;
      --taupe-deep:#b08a4b;
      --ink:#0b0b0b;
      --dark:#080808;
      --cream:#ffffff;
      --gold:#b08a4b;
      --gold-soft:#d8c39a;
      --muted:#66635f;
      --soft:#d8d5d0;
      --line:rgba(11,11,11,.18);
      --pad:clamp(20px,4vw,68px);
      --max:1540px;}

*{box-sizing:border-box}

html{scroll-behavior:auto}

body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif;overflow-x:hidden}

img{display:block;width:100%;height:100%;object-fit:cover}

a{color:inherit;text-decoration:none}

strong{font-weight:600}

.sans{font-family:"Oswald",Impact,sans-serif;font-weight:700;text-transform:uppercase}

.serif{font-family:"Italiana",Georgia,serif;font-weight:400}

.eyebrow{font-size:10px;line-height:1.4;letter-spacing:.17em;text-transform:uppercase;font-weight:600;color:var(--gold)}

.container{width:min(var(--max),calc(100% - (2 * var(--pad))));margin-inline:auto}

h1,
h2,
h3,
p,
a,
li,
summary{hyphens:none;-webkit-hyphens:none;word-break:normal;overflow-wrap:break-word}

/* HEADER */

.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;
      padding:18px var(--pad);
      color:#fff;mix-blend-mode:difference;
      pointer-events:none}

.header-inner{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}

.header-brand,
.header-nav,
.menu-button{pointer-events:auto}

.header-brand{font-size:11px;letter-spacing:.17em;font-weight:600}

.header-center{font-size:10px;letter-spacing:.16em;text-transform:uppercase}

.header-nav{display:flex;justify-content:flex-end;gap:21px;font-size:10px;letter-spacing:.13em;text-transform:uppercase}

.menu-button{display:none;background:none;border:0;color:inherit;font:inherit;font-size:10px;letter-spacing:.12em;text-transform:uppercase}

/* HERO */

.hero{min-height:100svh;
      position:relative;
      overflow:hidden;
      padding:90px var(--pad) 30px;
      background:var(--dark);
      color:var(--cream);
      display:grid;
      grid-template-rows:auto 1fr auto;
      perspective:1400px;}

.hero-meta{display:flex;
      justify-content:space-between;
      gap:20px;
      position:relative;
      z-index:7;
      color:var(--gold);}

.hero-stage{position:relative;
      display:flex;
      align-items:center;
      justify-content:center;}

.hero-title{position:relative;
      z-index:5;
      width:100%;
      margin:0;
      perspective:1200px;}

.hero-row.r1{justify-content:flex-start}

.hero-row.r2{justify-content:center;margin-top:-.8vw}

.hero-row.r3{justify-content:flex-end;margin-top:-1vw}

.hero-bottom{border-top:1px solid rgba(176,138,75,.55);
      padding-top:15px;
      display:flex;
      justify-content:space-between;
      gap:30px;
      align-items:flex-end;
      position:relative;
      z-index:8;}

.hero-seo-copy{max-width:610px;
      font-size:13px;
      line-height:1.65;
      color:#c9c4bd;}

.hero-actions{display:flex;gap:20px;align-items:center}

.hero-call{font-size:10px;letter-spacing:.15em;text-transform:uppercase;
      border:1px solid var(--gold);padding:14px 18px;border-radius:100px;
      color:var(--cream)}

.hero-emergency{font-size:10px;letter-spacing:.15em;text-transform:uppercase;
      background:var(--gold);color:var(--dark);padding:15px 19px;border-radius:100px;
      border:1px solid var(--gold);font-weight:700}

.hero-vertical{position:absolute;right:13px;top:50%;
      transform:translateY(-50%) rotate(180deg);
      writing-mode:vertical-rl;font-size:9px;letter-spacing:.18em;text-transform:uppercase;
      z-index:8;color:var(--gold)}

.hero::after{content:"";
      position:absolute;
      inset:auto 0 0 0;
      height:2px;
      background:linear-gradient(90deg,var(--gold),transparent 80%);
      transform:scaleX(.15);
      transform-origin:left;
      opacity:.95;}

/* PORTRAIT IMPACT — separate from H1 */

/* PORTRAIT IMPACT — FACE STAYS COMPLETELY FREE */

.portrait-impact{min-height:120svh;background:#000;position:relative;overflow:hidden;color:#fff;isolation:isolate;}

.portrait-impact__image{position:absolute;inset:0;overflow:hidden;clip-path:inset(100% 0 0 0);z-index:0;}

.portrait-impact__image::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,0,0,.74) 0%,rgba(0,0,0,.32) 22%,rgba(0,0,0,0) 46%),linear-gradient(0deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,0) 30%);}

.portrait-impact__image img{width:100%;height:118%;object-fit:cover;object-position:center 24%;transform:translateY(-7%) scale(1.05);}

.portrait-impact__copy{position:relative;z-index:3;min-height:120svh;padding:105px var(--pad) 48px;display:grid;grid-template-rows:auto 1fr auto;}

.portrait-impact__eyebrow{color:var(--gold);max-width:420px}

.portrait-impact__footer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:35px;align-items:end;border-top:1px solid rgba(176,138,75,.56);padding-top:18px;}

.portrait-impact__footer p{margin:0;max-width:650px;font-size:13px;line-height:1.7;color:#ddd8d2}

/* INVESTIGATION IMPACT STORY */

.investigation{background:#fff;color:#000;position:relative;overflow:hidden}

.investigation-intro{min-height:105svh;position:relative;display:flex;align-items:center;padding:105px var(--pad);overflow:hidden;}

.investigation-intro__inner{position:relative;z-index:3;width:100%}

.investigation-intro h2{margin:0;font-size:clamp(78px,12.2vw,200px);line-height:.72;letter-spacing:-.062em;}

.investigation-intro .script{display:block;margin-left:16vw;font-size:.64em;line-height:.68;color:var(--gold);font-style:italic;text-transform:none;}

.investigation-intro__line{position:absolute;left:-15vw;top:54%;width:135vw;height:2px;background:var(--gold);transform:rotate(-7deg) scaleX(0);transform-origin:left;z-index:2;}

.investigation-step{min-height:100svh;position:relative;overflow:hidden;padding:100px var(--pad);display:grid;grid-template-columns:.18fr .82fr;gap:4vw;align-items:center;border-top:1px solid rgba(0,0,0,.14);}

.investigation-step:nth-child(even){background:#000;color:#fff}

.investigation-step:nth-child(odd){background:#fff;color:#000}

.investigation-step__no{align-self:start;padding-top:10px;color:var(--gold);font-size:10px;letter-spacing:.16em;text-transform:uppercase;}

.investigation-step__content{position:relative;z-index:3}

.investigation-step h3{margin:0;font-size:clamp(90px,15vw,245px);line-height:.68;letter-spacing:-.065em;}

.investigation-step .script{display:block;margin-left:12vw;margin-top:-.04em;font-size:.5em;color:var(--gold);font-style:italic;text-transform:none;}

.investigation-step p{max-width:800px;margin:34px 0 0;font-size:15px;line-height:1.72;color:var(--muted);}

.investigation-step:nth-child(even) p{color:#c7c1bb}

.investigation-step__links{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}

.investigation-step__links a{display:inline-block;border:1px solid var(--gold);border-radius:999px;padding:10px 13px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;}

.investigation-step:nth-child(even) .investigation-step__links a{color:#fff}

.investigation-step__ghost{position:absolute;right:-.04em;bottom:-.15em;font-size:clamp(160px,30vw,480px);line-height:.7;letter-spacing:-.08em;color:rgba(176,138,75,.055);white-space:nowrap;pointer-events:none;z-index:0;}

.impact{min-height:125svh;background:var(--dark);color:var(--cream);position:relative;overflow:hidden;padding:125px var(--pad)}

.impact .tiny{position:absolute;top:98px;left:var(--pad);color:#a59c92}

.impact-title{margin:0;position:relative;z-index:4}

.impact-title .a,
.impact-title .c{display:block;font-size:clamp(76px,11vw,182px);line-height:.76;letter-spacing:-.055em}

.impact-title .b{display:block;font-size:clamp(68px,9.5vw,155px);line-height:.70;margin-left:19vw;font-style:italic;text-transform:none;color:#b9aea4}

.impact-copy{position:absolute;right:var(--pad);bottom:10vh;width:min(390px,30vw);font-size:13px;line-height:1.75;color:#b0a69c}

.impact-copy a{border-bottom:1px solid #6f675f}

.emergency-progress__dot.is-active{background:var(--gold);
      transform:scale(1.55);}

/* Small impact stripe that is animated per panel */

/* PRACTICE */

.practice{background:var(--paper-2);padding:120px 0 0}

.practice-intro{display:grid;grid-template-columns:.26fr .74fr;gap:5vw;align-items:end;padding-bottom:85px}

.practice-intro h2{margin:0}

.practice-intro .p1{display:block;font-size:clamp(70px,10vw,165px);line-height:.8;letter-spacing:-.05em}

.practice-intro .p2{display:block;font-size:clamp(66px,8.5vw,140px);line-height:.70;margin-left:13vw;font-style:italic;text-transform:none}

.practice-row{border-top:1px solid var(--line);min-height:195px;padding:24px var(--pad);display:grid;grid-template-columns:72px 1fr minmax(230px,380px) 50px;gap:22px;align-items:center;position:relative;overflow:hidden;transition:color .35s}

.practice-row:last-child{border-bottom:1px solid var(--line)}

.practice-row::before{content:"";position:absolute;inset:0;background:var(--ink);transform:scaleY(0);transform-origin:bottom;transition:transform .42s cubic-bezier(.2,.8,.2,1)}

.practice-row:hover::before{transform:scaleY(1)}

.practice-row:hover{color:var(--paper)}

.practice-row>*{position:relative;z-index:2}

.practice-row h3{font-size:clamp(42px,5.8vw,96px);line-height:.86;letter-spacing:-.045em;margin:0;font-weight:400}

.practice-row .alt{font-size:.76em;font-style:italic;text-transform:none;margin-left:.08em}

.practice-desc{font-size:12px;line-height:1.6}

.practice-arrow{font-size:30px;text-align:right}

/* OFFICE COLLAGE */

.office{padding:130px var(--pad);position:relative;background:var(--paper);overflow:hidden}

.office-head{display:grid;grid-template-columns:.38fr .62fr;gap:6vw;align-items:end;margin-bottom:75px}

.office-copy{font-size:13px;line-height:1.75;color:var(--muted)}

.office h2{margin:0}

.office .o1{display:block;font-size:clamp(65px,9vw,145px);line-height:.79;letter-spacing:-.05em}

.office .o2{display:block;font-size:clamp(64px,8.3vw,134px);line-height:.70;margin-left:10vw;font-style:italic;text-transform:none}

.collage{display:grid;grid-template-columns:1.08fr .68fr .82fr;grid-template-rows:39vh 31vh;gap:16px;position:relative}

.frame{overflow:hidden;background:#c7beb3;position:relative}

.frame img{height:118%;transform:translateY(-8%) scale(1.04)}

.frame.one{grid-row:1/3}

.frame.two{grid-column:2;grid-row:1}

.frame.three{grid-column:3;grid-row:1/3}

.office-quote{grid-column:2;grid-row:2;display:flex;align-items:flex-end;font-size:clamp(27px,3vw,46px);line-height:.92;font-style:italic}

.office-ghost{position:absolute;left:-.02em;bottom:-.09em;font-size:clamp(150px,27vw,430px);letter-spacing:-.07em;color:rgba(18,16,14,.045);white-space:nowrap;pointer-events:none}

/* REVIEWS */

.reviews{background:var(--dark);color:var(--cream);padding:120px 0 100px;overflow:hidden}

.reviews-head{display:grid;grid-template-columns:.25fr .75fr;gap:5vw;align-items:end;margin-bottom:70px}

.reviews-head h2{margin:0}

.reviews-head .r1{display:block;font-size:clamp(70px,10vw,166px);line-height:.78;letter-spacing:-.05em}

.reviews-head .r2{display:block;font-size:clamp(62px,8vw,128px);line-height:.70;margin-left:12vw;color:#b8aea4;font-style:italic;text-transform:none}

.review-track{display:flex;width:max-content;gap:18px;padding:0 var(--pad);will-change:transform}

.review-card{width:min(72vw,720px);min-height:430px;border:1px solid rgba(176,138,75,.45);padding:40px;display:flex;flex-direction:column;justify-content:space-between}

.review-stars{letter-spacing:.14em;font-size:13px}

.review-card blockquote{margin:40px 0 30px}

.review-card .headline{font-size:clamp(28px,3vw,48px);line-height:1.03;margin:0 0 24px}

.review-card p{font-size:14px;line-height:1.7;color:#c4bbb1}

.review-card figcaption{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#9f968d}

.shock-line{position:fixed;
      z-index:90;
      left:0;
      top:0;
      width:100%;
      height:2px;
      background:linear-gradient(90deg,transparent,var(--gold),transparent);
      transform:scaleX(0);
      transform-origin:left;
      pointer-events:none;
      mix-blend-mode:difference;}

.hero::after{content:"";
      position:absolute;
      inset:auto 0 0 0;
      height:1px;
      background:var(--gold);
      transform:scaleX(.12);
      transform-origin:left;
      opacity:.8;}

.hero-title{perspective:1200px;}

.impact{isolation:isolate;}

.impact::before{content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(115deg,transparent 0 44%,rgba(176,138,75,.12) 44% 44.5%,transparent 44.5% 100%);
      pointer-events:none;
      z-index:0;
      transform:scaleX(1.6);}

.impact-title{mix-blend-mode:normal;}

.practice-row{perspective:1000px;}

.practice-row h3,
.practice-desc,
.practice-arrow{will-change:transform;}

.practice-row:hover h3{transform:translateX(1.2vw) skewX(-3deg);}

.practice-row:hover .practice-arrow{transform:translateX(8px) rotate(-8deg) scale(1.15);}

.frame{perspective:1000px;}

.frame::after{content:"";
      position:absolute;
      inset:0;
      border:1px solid rgba(176,138,75,.24);
      pointer-events:none;}

.reviews{position:relative;}

.reviews::before{content:"";
      position:absolute;
      top:0;
      left:var(--pad);
      right:var(--pad);
      height:1px;
      background:linear-gradient(90deg,var(--gold),transparent 70%);}

.review-card{transform-origin:center;
      will-change:transform;}

.gold-slash{position:absolute;
      z-index:2;
      width:160vw;
      height:1px;
      background:var(--gold);
      left:-30vw;
      top:50%;
      transform:rotate(-8deg) scaleX(0);
      transform-origin:left;
      pointer-events:none;
      opacity:.75;}

.boom-section{min-height:115svh;
      background:var(--cream);
      color:var(--ink);
      position:relative;
      overflow:hidden;
      display:flex;
      align-items:center;
      padding:120px var(--pad);
      isolation:isolate;}

.boom-section__eyebrow{position:absolute;
      top:90px;
      left:var(--pad);
      z-index:4;}

.boom-section__title{position:relative;
      z-index:4;
      width:100%;
      margin:0;}

.boom-section__title .boom-a,
.boom-section__title .boom-c{display:block;
      font-size:clamp(82px,13.7vw,225px);
      line-height:.72;
      letter-spacing:-.062em;}

.boom-section__title .boom-b{display:block;
      font-size:clamp(65px,9.3vw,150px);
      line-height:.68;
      margin-left:23vw;
      color:var(--gold);
      font-style:italic;
      text-transform:none;}

.boom-section__orb{position:absolute;
      width:min(33vw,500px);
      aspect-ratio:1;
      border-radius:50%;
      border:1px solid var(--gold);
      right:6vw;
      top:17%;
      opacity:.55;
      transform:scale(.5);}

.boom-section__orb::before,
.boom-section__orb::after{content:"";
      position:absolute;
      inset:12%;
      border-radius:50%;
      border:1px solid rgba(176,138,75,.45);}

.boom-section__orb::after{inset:27%}

.boom-section__micro{position:absolute;
      right:var(--pad);
      bottom:7vh;
      width:min(370px,28vw);
      font-size:12px;
      line-height:1.7;
      color:var(--muted);
      z-index:4;}

.velocity-word{position:absolute;
      left:-5vw;
      bottom:-.16em;
      font-size:clamp(170px,30vw,490px);
      line-height:.7;
      letter-spacing:-.075em;
      color:rgba(176,138,75,.055);
      white-space:nowrap;
      pointer-events:none;
      z-index:1;}

.flash-cut{position:fixed;
      inset:0;
      z-index:180;
      background:var(--cream);
      pointer-events:none;
      opacity:0;
      mix-blend-mode:difference;}

.chaos-grid__head .script{display:block;
      margin-left:17vw;
      color:var(--gold);
      font-size:.68em;
      font-style:italic;
      text-transform:none;}

.portrait-impact--brand-v2 .portrait-impact__image::after{background:
        linear-gradient(90deg,rgba(0,0,0,.82) 0%,rgba(0,0,0,.52) 22%,rgba(0,0,0,.08) 44%,rgba(0,0,0,0) 60%),
        linear-gradient(0deg,rgba(0,0,0,.42) 0%,rgba(0,0,0,0) 28%);}

.portrait-impact__copy--v2{grid-template-rows:auto 1fr auto}

.portrait-impact__footer--v2{grid-template-columns:1fr auto;}

/* KNOWLEDGE NETWORK */

.knowledge-network{min-height:170svh;
      background:#fff;
      color:#000;
      padding:130px var(--pad) 150px;
      position:relative;
      overflow:hidden;}

.knowledge-network__head{max-width:1250px;
      margin-bottom:85px;
      position:relative;
      z-index:3;}

.knowledge-network__head h2{margin:15px 0 25px;
      font-size:clamp(72px,10.7vw,175px);
      line-height:.72;
      letter-spacing:-.06em;}

.knowledge-network__head h2 .serif{display:block;
      margin-left:18vw;
      font-size:.68em;
      color:var(--gold);
      font-style:italic;
      text-transform:none;}

.knowledge-network__head p{max-width:760px;
      font-size:14px;
      line-height:1.75;
      color:#666;}

.knowledge-network__grid{display:grid;
      grid-template-columns:repeat(12,1fr);
      grid-auto-rows:11vh;
      gap:14px;
      min-height:110vh;
      position:relative;
      z-index:3;}

.knowledge-cluster{border:1px solid rgba(0,0,0,.16);
      background:#fff;
      padding:24px;
      position:relative;
      overflow:hidden;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      transition:background .3s ease,color .3s ease,transform .3s ease;}

.knowledge-cluster::before{content:"";position:absolute;inset:0;background:#000;
      transform:scaleY(0);transform-origin:bottom;
      transition:transform .4s cubic-bezier(.2,.8,.2,1);z-index:0;}

.knowledge-cluster:hover::before{transform:scaleY(1)}

.knowledge-cluster:hover{color:#fff;transform:translateY(-6px)}

.knowledge-cluster>*{position:relative;z-index:1}

.knowledge-cluster__meta{color:var(--gold);font-size:10px;letter-spacing:.14em;text-transform:uppercase}

.knowledge-cluster h3{margin:22px 0 0;font-size:clamp(42px,6vw,96px);line-height:.8;letter-spacing:-.05em}

.knowledge-cluster > p{margin:0 0 24px;font-size:clamp(28px,3.4vw,54px);line-height:.92;font-style:italic;color:var(--gold)}

.knowledge-cluster__links{display:flex;flex-direction:column;gap:8px}

.knowledge-cluster__links a{font-size:11px;line-height:1.35;border-top:1px solid rgba(176,138,75,.35);padding-top:8px}

.knowledge-cluster--huge{grid-column:1/7;grid-row:1/5}

.knowledge-cluster--tall{grid-column:8/13;grid-row:1/6}

.knowledge-cluster--wide{grid-column:1/8;grid-row:6/10}

.knowledge-cluster--medium{grid-column:8/13;grid-row:7/11}

.knowledge-cluster--small:nth-of-type(5){grid-column:2/7;grid-row:11/14}

.knowledge-cluster--small:nth-of-type(6){grid-column:8/12;grid-row:12/15}

.knowledge-network__all{margin-top:55px;position:relative;z-index:3;
      display:flex;justify-content:flex-end}

.knowledge-network__all a{border:1px solid var(--gold);border-radius:999px;padding:13px 17px;
      font-size:10px;letter-spacing:.13em;text-transform:uppercase}

.knowledge-network__ghost{position:absolute;left:-.04em;bottom:-.15em;
      font-size:clamp(170px,31vw,500px);line-height:.7;
      color:rgba(176,138,75,.055);letter-spacing:-.08em;white-space:nowrap;pointer-events:none}

/* CONTACT FINAL */

.contact-final{min-height:120svh;
      background:#000;color:#fff;
      padding:120px var(--pad) 42px;
      position:relative;overflow:hidden;
      display:flex;flex-direction:column;justify-content:space-between;}

.contact-final__top{position:relative;z-index:3}

.contact-final__title{margin:18px 0 0}

.contact-final__title .sans{display:block;font-size:clamp(110px,20vw,330px);
      line-height:.66;letter-spacing:-.075em;}

.contact-final__title .serif{display:block;margin-left:24vw;margin-top:-.02em;
      font-size:clamp(55px,7.8vw,125px);line-height:.72;
      font-style:italic;color:var(--gold);text-transform:none;}

.contact-final__numbers{position:relative;z-index:3;
      display:grid;grid-template-columns:1.1fr .9fr;
      border-top:1px solid rgba(176,138,75,.5);
      border-bottom:1px solid rgba(176,138,75,.5);}

.contact-final__numbers a{padding:28px 0 34px;
      display:block;}

.contact-final__numbers a + a{padding-left:38px;border-left:1px solid rgba(176,138,75,.5)}

.contact-final__label{display:block;color:var(--gold);font-size:10px;letter-spacing:.15em;text-transform:uppercase;margin-bottom:10px}

.contact-final__number{display:block;font-size:clamp(48px,7.2vw,116px);line-height:.8;letter-spacing:-.05em}

.contact-final__bottom{position:relative;z-index:3;
      display:flex;justify-content:space-between;gap:40px;align-items:flex-end;
      padding-top:28px}

.contact-final__meta,
.contact-final__actions{display:flex;flex-direction:column;gap:9px;font-size:11px;letter-spacing:.06em}

.contact-final__actions{text-align:right}

.contact-final__actions a,
.contact-final__meta a{color:var(--gold)}

.contact-final__ghost{position:absolute;left:-.04em;bottom:-.13em;
      font-size:clamp(180px,34vw,540px);line-height:.68;
      letter-spacing:-.08em;color:rgba(255,255,255,.025);white-space:nowrap;pointer-events:none}

.portrait-brand-v3{align-self:center;
      max-width:43vw;
      position:relative;
      z-index:5;}

.portrait-brand-v3__name{margin:0;
      font-size:clamp(74px,10.7vw,174px);
      line-height:.69;
      letter-spacing:-.064em;
      color:#fff;}

.portrait-brand-v3__name span{display:block}

.portrait-brand-v3__role{margin:26px 0 0;
      color:var(--gold);
      font-size:clamp(14px,1.35vw,21px);
      line-height:1;
      letter-spacing:.12em;
      white-space:nowrap;}

.portrait-brand-v3__statement{margin:42px 0 0;
      color:#fff;
      font-size:clamp(15px,1.28vw,20px);
      line-height:1.55;
      text-transform:uppercase;
      letter-spacing:.02em;
      font-weight:700;}

.portrait-brand-v3__rightword{position:absolute;
      z-index:2;
      right:-2.5vw;
      top:28%;
      transform:rotate(90deg);
      transform-origin:center;
      color:transparent;
      -webkit-text-stroke:1px rgba(176,138,75,.72);
      text-stroke:1px rgba(176,138,75,.72);
      font-size:clamp(74px,10.8vw,175px);
      line-height:.7;
      letter-spacing:-.055em;
      white-space:nowrap;
      pointer-events:none;
      opacity:.9;
      mix-blend-mode:multiply;}

.portrait-brand-v3__rightmeta{position:absolute;
      z-index:4;
      right:var(--pad);
      bottom:10vh;
      display:flex;
      flex-direction:column;
      align-items:flex-end;
      gap:6px;
      color:#161616;
      font-size:9px;
      line-height:1.25;
      letter-spacing:.17em;
      text-transform:uppercase;
      font-weight:700;
      pointer-events:none;}

.portrait-brand-v3__rightmeta::before{content:"";
      width:92px;
      height:1px;
      background:var(--gold);
      margin-bottom:9px;}

.investigation-stop{min-height:100svh;
      background:#000;
      color:#fff;
      display:grid;
      place-items:center;
      position:relative;
      overflow:hidden;
      padding:100px var(--pad);}

.investigation-stop__line{position:absolute;
      left:-15vw;
      top:50%;
      width:130vw;
      height:2px;
      background:var(--gold);
      transform:rotate(-7deg) scaleX(0);
      transform-origin:left;}

.investigation-stop__word{position:relative;
      z-index:2;
      font-size:clamp(145px,25vw,410px);
      line-height:.66;
      letter-spacing:-.08em;
      transform:scale(1.7);
      opacity:0;
      filter:blur(14px);}

.investigation-stop__sub{position:absolute;
      z-index:3;
      bottom:11vh;
      left:50%;
      transform:translateX(-50%);
      color:var(--gold);
      font-size:11px;
      letter-spacing:.17em;
      text-transform:uppercase;
      white-space:nowrap;
      opacity:0;}

.investigation-step--contact{background:#000!important;
      color:#fff!important;}

.investigation-step--contact p{color:#c7c1bb!important}

.investigation-contact-title{font-size:clamp(74px,12.3vw,200px)!important;
      line-height:.72!important;}

.investigation-contact-title .script{font-size:.48em!important;
      margin-left:12vw!important;}

.investigation-step__links--urgent a:first-child,
.investigation-step__links--urgent a:nth-child(2){background:var(--gold);
      color:#000!important;
      font-weight:700;}

@media (max-width:900px){.header-inner{grid-template-columns:1fr auto}

.header-center{display:none}

.header-nav{display:none}

.menu-button{display:block}

.hero{min-height:790px;padding-top:85px}

.hero-meta span:last-child{display:none}

.hero-bottom{flex-direction:column;align-items:flex-start}

.portrait-impact__image img{object-position:58% center}

.hero-seo-copy{max-width:100%}

.hero-vertical{display:none}

.practice-intro,
.office-head,
.reviews-head{grid-template-columns:1fr}

.impact{min-height:1050px}

.impact-copy{position:absolute;bottom:8vh;width:70vw}

.practice-row{grid-template-columns:45px 1fr 35px;min-height:165px}

.practice-desc{display:none}

.collage{grid-template-columns:1fr 1fr;grid-template-rows:48vh 28vh 44vh}

.frame.one{grid-column:1/3;grid-row:1}

.frame.two{grid-column:1;grid-row:2}

.office-quote{grid-column:2;grid-row:2}

.frame.three{grid-column:1/3;grid-row:3}

.deep-law__head{grid-template-columns:1fr}

.deep-law__grid{grid-template-columns:1fr}

.deep-law__card,
.deep-law__card:nth-child(even){padding:28px 0;border-left:0}

.review-card{width:84vw;padding:28px}

.boom-section__micro{position:static;width:auto;margin-top:55px}

.impact-wall__line.two{margin-left:8vw}

.boom-section__orb{width:55vw;right:-5vw;top:22%}

.cursor{display:none}}

@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}

.boom-section__micro{position:static;width:auto;margin-top:55px}

.impact-wall__line.two{margin-left:8vw}

.boom-section__orb{width:55vw;right:-5vw;top:22%}

.cursor{display:none}}

@media (max-width:900px){.portrait-impact__image img{object-position:62% center}

.portrait-impact__footer{grid-template-columns:1fr}

.investigation-step{grid-template-columns:1fr;padding-top:90px}

.investigation-step__no{padding-top:0}

.investigation-intro .script{margin-left:4vw}}

@media (max-width:900px){.knowledge-network__grid{grid-template-columns:1fr;grid-auto-rows:auto;min-height:auto}

.knowledge-cluster{grid-column:auto!important;grid-row:auto!important;min-height:320px}

.contact-final__numbers{grid-template-columns:1fr}

.contact-final__numbers a + a{padding-left:0;border-left:0;border-top:1px solid rgba(176,138,75,.5)}

.contact-final__bottom{flex-direction:column;align-items:flex-start}

.contact-final__actions{text-align:left}

.contact-final__title .serif{margin-left:4vw}}

.deep-law{background:#fff;
      color:#000;
      padding:140px var(--pad);
      position:relative;
      overflow:hidden;
      perspective:1400px;}

.deep-law::before{content:"";
      position:absolute;
      left:-20vw;
      top:25%;
      width:140vw;
      height:1px;
      background:var(--gold);
      transform:rotate(-7deg);
      opacity:.22;
      pointer-events:none;}

.deep-law__head{display:grid;
      grid-template-columns:.25fr .75fr;
      gap:5vw;
      align-items:start;
      margin-bottom:85px;
      position:relative;
      z-index:2;}

.deep-law__head h2{margin:0;
      font-size:clamp(68px,9.4vw,154px);
      line-height:.77;
      letter-spacing:-.056em;}

.deep-law__head .script{display:block;
      margin-left:13vw;
      color:var(--gold);
      font-size:.72em;
      font-style:italic;
      text-transform:none;
      line-height:.7;}

.deep-law__lead{max-width:920px;
      margin:30px 0 0;
      font-size:16px;
      line-height:1.78;
      color:#5d5b58;}

.deep-law__grid{display:grid;
      grid-template-columns:repeat(2,1fr);
      border-top:1px solid rgba(0,0,0,.16);
      position:relative;
      z-index:2;}

.deep-law__card{padding:38px 42px 52px 0;
      border-bottom:1px solid rgba(0,0,0,.16);
      position:relative;
      overflow:hidden;
      min-height:340px;
      transform-origin:center;}

.deep-law__card:nth-child(even){padding-left:42px;
      border-left:1px solid rgba(0,0,0,.16);}

.deep-law__card::before{content:"";
      position:absolute;
      inset:0;
      background:#000;
      transform:scaleY(0);
      transform-origin:bottom;
      transition:transform .42s cubic-bezier(.2,.8,.2,1);
      z-index:0;}

.deep-law__card:hover::before{transform:scaleY(1)}

.deep-law__card:hover{color:#fff}

.deep-law__card > *{position:relative;z-index:1}

.deep-law__card h3{margin:0 0 20px;
      font-size:clamp(30px,3.5vw,54px);
      line-height:.95;}

.deep-law__card p{margin:0 0 16px;
      font-size:13px;
      line-height:1.78;
      color:#64615d;
      transition:color .3s ease;}

.deep-law__card:hover p{color:#c8c2bb}

.deep-law__card a{border-bottom:1px solid var(--gold);
      font-size:12px;}

.deep-law__norm{display:block;
      margin-top:18px;
      color:var(--gold);
      font-size:10px;
      letter-spacing:.13em;
      text-transform:uppercase;}

.authority__right .script{display:block;
      margin-left:10vw;
      color:var(--gold);
      font-size:.72em;
      font-style:italic;
      text-transform:none;
      line-height:.7;}

@media (max-width:900px){.deep-law__head{grid-template-columns:1fr}

.deep-law__grid{grid-template-columns:1fr}

.deep-law__card,
.deep-law__card:nth-child(even){padding:30px 0 40px;
        border-left:0;
        min-height:unset;}}

@media (max-width:900px){.portrait-impact--brand-v2::after{display:none}}

@media (max-width:900px){.portrait-brand-v3{max-width:86vw}

.portrait-brand-v3__name{font-size:clamp(62px,18vw,118px)}

.portrait-brand-v3__role{font-size:11px;
        white-space:normal;
        line-height:1.35;}

.portrait-brand-v3__statement{font-size:14px;margin-top:30px}

.portrait-brand-v3__rightword{display:none}

.portrait-brand-v3__rightmeta{right:var(--pad);
        bottom:15vh;
        font-size:8px;}}

@media (max-width:900px){.investigation-stop__sub{white-space:normal;width:80%;text-align:center}

.investigation-contact-title{font-size:clamp(56px,16vw,100px)!important}

.investigation-contact-title .script{margin-left:2vw!important}}

.site-credits{background:#fff;
      color:#111;
      border-top:1px solid rgba(0,0,0,.10);
      padding:12px var(--pad) 13px;}

.site-credits__inner{display:flex;
      align-items:center;
      justify-content:space-between;
      gap:28px;
      width:100%;
      margin:0 auto;
      font-size:8px;
      line-height:1.2;
      letter-spacing:.10em;
      text-transform:uppercase;
      white-space:nowrap;}

.site-credits__memberships,
.site-credits__legal{display:flex;
      align-items:center;
      gap:7px;
      min-width:0;}

.site-credits__memberships{opacity:.62;
      overflow:hidden;
      text-overflow:ellipsis;}

.site-credits__legal{flex-shrink:0;
      opacity:.72;}

.site-credits__label{color:var(--gold);
      font-weight:700;
      margin-right:4px;}

.site-credits a{transition:opacity .2s ease,color .2s ease;}

.site-credits a:hover{color:var(--gold);
      opacity:1;}

@media (max-width:900px){.site-credits{padding:14px var(--pad);}

.site-credits__inner{flex-direction:column;
        align-items:flex-start;
        gap:8px;
        white-space:normal;
        font-size:7px;
        letter-spacing:.08em;}

.site-credits__memberships{display:flex;
        flex-wrap:wrap;
        gap:5px 7px;}

.site-credits__legal{gap:6px;}}

.ck-sos{position:relative;
      background:#fff;
      color:#000;
      overflow:visible;}

.ck-sos__layout{display:grid;
      grid-template-columns:34% 66%;
      align-items:start;
      position:relative;}

.ck-sos__rail{position:sticky;
      top:0;
      height:100svh;
      padding:105px var(--pad) 46px;
      border-right:1px solid rgba(0,0,0,.14);
      background:#fff;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      z-index:20;
      overflow:hidden;}

.ck-sos__kicker{color:var(--gold);}

.ck-sos__rail-title{margin:0;
      align-self:flex-start;}

.ck-sos__rail-heavy{display:block;
      font-size:clamp(54px,7vw,112px);
      line-height:.8;
      letter-spacing:-.047em;}

.ck-sos__rail-script{display:block;
      margin-left:2vw;
      font-size:clamp(52px,6.8vw,107px);
      line-height:.70;
      font-style:italic;
      text-transform:none;
      color:var(--gold);}

.ck-sos__rail-bottom{display:grid;
      grid-template-columns:1fr auto;
      grid-template-rows:auto auto;
      gap:13px 22px;
      align-items:end;
      position:relative;}

.ck-sos__rail-bottom > .eyebrow{grid-row:1/3;
      align-self:end;}

.ck-sos__dots{display:flex;
      gap:10px;
      align-items:center;
      justify-content:flex-end;}

.ck-sos__dot{display:block;
      width:7px;
      height:7px;
      border-radius:50%;
      border:1px solid var(--gold);
      background:#fff;
      transition:transform .25s ease,background .25s ease;}

.ck-sos__dot.is-active{background:var(--gold);
      transform:scale(1.5);}

.ck-sos__counter{color:var(--gold);
      font-size:9px;
      letter-spacing:.15em;
      text-transform:uppercase;
      text-align:right;}

.ck-sos__stories{position:relative;
      background:#fff;}

.ck-sos__story{position:relative;
      min-height:100svh;
      padding:105px var(--pad) 55px;
      display:flex;
      align-items:center;
      background:#fff;
      border-bottom:1px solid rgba(0,0,0,.11);
      overflow:hidden;
      opacity:1;
      visibility:visible;
      transform:none;
      clip-path:none;}

.ck-sos__story-inner{position:relative;
      z-index:5;
      width:100%;}

.ck-sos__meta{margin-bottom:22px;
      color:#69645f;
      font-size:11px;
      letter-spacing:.16em;
      text-transform:uppercase;}

.ck-sos__headline{margin:0;
      color:#000;
      font-size:clamp(72px,9.6vw,162px);
      line-height:.70;
      letter-spacing:-.06em;}

.ck-sos__italic{display:block;
      margin-left:8vw;
      margin-top:.02em;
      color:var(--gold);
      font-size:clamp(50px,6vw,92px);
      line-height:.75;
      font-style:italic;
      text-transform:none;
      letter-spacing:-.035em;}

.ck-sos__copy{max-width:690px;
      margin:38px 0 0;
      color:#5f5b56;
      font-size:14px;
      line-height:1.72;}

.ck-sos__copy a{border-bottom:1px solid var(--gold);
      padding-bottom:2px;}

.ck-sos__slash{position:absolute;
      z-index:2;
      left:-15vw;
      top:51%;
      width:130vw;
      height:2px;
      background:var(--gold);
      transform:rotate(-6deg) scaleX(0);
      transform-origin:left center;
      opacity:.8;
      pointer-events:none;}

.ck-sos__ghost{position:absolute;
      z-index:0;
      right:-.04em;
      bottom:-.15em;
      color:rgba(176,138,75,.052);
      font-size:clamp(170px,27vw,430px);
      line-height:.7;
      letter-spacing:-.08em;
      pointer-events:none;}

@media (max-width:900px){.ck-sos__layout{display:block}

.ck-sos__rail{position:relative;
        height:auto;
        min-height:72svh;
        border-right:0;
        border-bottom:1px solid rgba(0,0,0,.14);}

.ck-sos__story{min-height:92svh;
        padding:90px var(--pad);}

.ck-sos__dots,
.ck-sos__counter{display:none}}

.mandate-impact__title .sans{display:block;
      font-size:clamp(78px,12.3vw,202px);
      line-height:.69;
      letter-spacing:-.065em;}

.mandate-impact__title .serif{display:block;
      margin-left:18vw;
      margin-top:.02em;
      color:var(--gold);
      font-size:clamp(46px,6.6vw,105px);
      line-height:.76;
      font-style:italic;
      text-transform:none;
      max-width:900px;}

@media (max-width:900px){.mandate-impact__title .serif{margin-left:4vw}}

.defense-goals{position:relative;
      background:#fff;
      color:#000;
      overflow:hidden;}

.defense-goals__intro{min-height:105svh;
      padding:120px var(--pad);
      display:flex;
      flex-direction:column;
      justify-content:center;
      position:relative;
      overflow:hidden;
      background:#000;
      color:#fff;}

.defense-goals__intro-title{margin:18px 0 0;}

.defense-goals__intro-title .sans{display:block;
      font-size:clamp(76px,11.5vw,188px);
      line-height:.70;
      letter-spacing:-.063em;}

.defense-goals__intro-title .serif{display:block;
      margin-left:19vw;
      color:var(--gold);
      font-size:clamp(52px,6.8vw,108px);
      line-height:.74;
      font-style:italic;
      text-transform:none;}

.defense-goals__intro-copy{max-width:760px;
      margin:48px 0 0 auto;
      color:#c7c1ba;
      font-size:15px;
      line-height:1.78;}

.defense-goal{min-height:100svh;
      padding:105px var(--pad);
      display:grid;
      grid-template-columns:.18fr .82fr;
      gap:4vw;
      align-items:center;
      position:relative;
      overflow:hidden;
      border-top:1px solid rgba(0,0,0,.15);}

.defense-goal--light{background:#fff;
      color:#000;}

.defense-goal--dark{background:#000;
      color:#fff;}

.defense-goal--gold{background:var(--gold);
      color:#000;}

.defense-goal--freedom{background:#050505;
      color:#fff;}

.defense-goal__number{align-self:start;
      padding-top:8px;
      color:var(--gold);
      font-size:10px;
      letter-spacing:.16em;
      text-transform:uppercase;
      position:relative;
      z-index:4;}

.defense-goal--gold .defense-goal__number{color:#000;}

.defense-goal__body{position:relative;
      z-index:4;}

.defense-goal__body h3{margin:0;
      font-size:clamp(78px,12.4vw,202px);
      line-height:.68;
      letter-spacing:-.065em;}

.defense-goal__script{margin:12px 0 34px 11vw;
      color:var(--gold);
      font-size:clamp(38px,5.2vw,82px);
      line-height:.84;
      font-style:italic;}

.defense-goal--gold .defense-goal__script{color:#fff;}

.defense-goal__copy{max-width:820px;
      margin:0;
      color:#5f5b56;
      font-size:15px;
      line-height:1.8;}

.defense-goal--dark .defense-goal__copy,
.defense-goal--freedom .defense-goal__copy{color:#c7c1ba;}

.defense-goal--gold .defense-goal__copy{color:#191714;}

.defense-goal__link{display:inline-block;
      margin-top:30px;
      padding-bottom:3px;
      border-bottom:1px solid var(--gold);
      font-size:11px;
      letter-spacing:.08em;
      text-transform:uppercase;}

.defense-goal--dark .defense-goal__link,
.defense-goal--freedom .defense-goal__link{color:#fff;}

.defense-goal--gold .defense-goal__link{color:#000;
      border-color:#000;}

.defense-goal__ghost{position:absolute;
      right:-.04em;
      bottom:-.16em;
      z-index:0;
      color:rgba(176,138,75,.06);
      font-size:clamp(170px,30vw,490px);
      line-height:.7;
      letter-spacing:-.08em;
      white-space:nowrap;
      pointer-events:none;}

.defense-goal--gold .defense-goal__ghost{color:rgba(255,255,255,.16);}

.defense-goal--freedom .defense-goal__ghost{color:rgba(176,138,75,.075);}

@media (max-width:900px){.defense-goals__intro{min-height:90svh;
        padding:100px var(--pad);}

.defense-goals__intro-title .serif{margin-left:4vw;}

.defense-goals__intro-copy{margin-left:0;}

.defense-goal{grid-template-columns:1fr;
        min-height:92svh;
        padding:90px var(--pad);}

.defense-goal__number{padding-top:0;}

.defense-goal__script{margin-left:2vw;}}

.reviews{min-height:120svh;
      padding-top:0;
      position:relative;
      background:#050505;}

.reviews-head--boom{min-height:100svh;
      padding-top:120px;
      padding-bottom:90px;
      display:grid;
      grid-template-columns:.20fr .80fr;
      gap:4vw;
      align-items:center;
      margin-bottom:0;
      position:relative;
      overflow:hidden;
      max-width:none;}

.reviews-head__meta{align-self:start;
      padding-top:18px;
      position:relative;
      z-index:4;}

.reviews-head__index{margin-top:28px;
      color:transparent;
      -webkit-text-stroke:1px rgba(176,138,75,.55);
      text-stroke:1px rgba(176,138,75,.55);
      font-size:clamp(68px,8vw,130px);
      line-height:.8;
      letter-spacing:-.06em;
      opacity:.7;}

.reviews-head__main{position:relative;
      z-index:4;}

.reviews-head--boom h2{margin:0;}

.reviews-head--boom .r1{display:block;
      font-size:clamp(92px,14vw,230px);
      line-height:.66;
      letter-spacing:-.068em;
      color:#fff;}

.reviews-head--boom .r2{display:block;
      margin-left:12vw;
      margin-top:.02em;
      color:var(--gold);
      font-size:clamp(42px,5.8vw,92px);
      line-height:.78;
      font-style:italic;
      text-transform:none;
      max-width:1000px;}

.reviews-head--boom .r3{display:block;
      margin-top:.11em;
      font-size:clamp(64px,9.2vw,150px);
      line-height:.70;
      letter-spacing:-.058em;
      color:#fff;}

.reviews-head__seo{max-width:900px;
      margin:45px 0 0 18vw;
      color:#bdb5ad;
      font-size:13px;
      line-height:1.78;}

.reviews-head__seo strong{color:#fff;
      font-weight:600;}

.reviews-head__seo a{color:#ded7cf;
      border-bottom:1px solid rgba(176,138,75,.65);
      padding-bottom:1px;}

.reviews-head__slash{position:absolute;
      left:-15vw;
      top:54%;
      width:135vw;
      height:2px;
      background:var(--gold);
      transform:rotate(-6deg) scaleX(0);
      transform-origin:left;
      z-index:2;
      opacity:.8;}

.reviews-head__ghost{position:absolute;
      right:-.06em;
      bottom:-.16em;
      z-index:0;
      color:rgba(176,138,75,.045);
      font-size:clamp(190px,33vw,520px);
      line-height:.68;
      letter-spacing:-.08em;
      white-space:nowrap;
      pointer-events:none;}

.review-track{position:relative;
      z-index:5;
      padding-top:20px;
      padding-bottom:80px;}

.review-card{background:#070707;
      position:relative;
      overflow:hidden;
      transition:border-color .3s ease,transform .3s ease;}

.review-card::before{content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(125deg,transparent 0 63%,rgba(176,138,75,.07) 63% 64%,transparent 64% 100%);
      pointer-events:none;}

.review-card:hover{border-color:rgba(176,138,75,.95);}

.review-stars{color:var(--gold);}

@media (max-width:900px){.reviews-head--boom{min-height:auto;
        grid-template-columns:1fr;
        padding:100px var(--pad) 70px;}

.reviews-head__meta{display:flex;
        align-items:center;
        justify-content:space-between;
        gap:20px;}

.reviews-head__index{margin-top:0;
        font-size:56px;}

.reviews-head--boom .r2,
.reviews-head__seo{margin-left:2vw;}

.reviews-head__seo{font-size:12px;}}

.reviews{padding-bottom:0!important;
      overflow:visible!important;}

.reviews-stage{height:100svh;
      min-height:720px;
      position:relative;
      overflow:hidden;
      background:#050505;
      display:flex;
      align-items:center;
      padding-top:58px;
      padding-bottom:42px;}

.reviews-stage__topline{position:absolute;
      z-index:8;
      left:var(--pad);
      right:var(--pad);
      top:34px;
      display:flex;
      justify-content:space-between;
      align-items:center;
      color:var(--gold);
      pointer-events:none;}

.reviews-stage__hint{font-size:9px;
      letter-spacing:.16em;
      text-transform:uppercase;
      color:#8f857b;}

.reviews-stage .review-track{display:flex;
      align-items:center;
      gap:22px;
      width:max-content;
      padding:0 var(--pad);
      will-change:transform;
      height:auto;
      position:relative;
      z-index:5;}

.reviews-stage .review-card{flex:0 0 min(64vw,760px);
      width:min(64vw,760px);
      height:min(64vh,610px);
      min-height:430px;
      max-height:610px;
      padding:42px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
      overflow:hidden;
      box-sizing:border-box;
      transform-origin:center center;}

.reviews-stage .review-card blockquote{margin:26px 0;}

.reviews-stage .review-card .headline{font-size:clamp(30px,3.2vw,50px);
      line-height:1.03;
      margin:0 0 22px;}

.reviews-stage .review-card p:not(.headline){font-size:14px;
      line-height:1.68;}

.reviews-stage .review-card:first-child{margin-left:0;}

.reviews-stage .review-card:last-child{margin-right:var(--pad);}

@media (max-width:900px){.reviews{overflow:hidden!important;}

.reviews-stage{height:auto;
        min-height:0;
        overflow:visible;
        display:block;
        padding:70px var(--pad) 90px;}

.reviews-stage__topline{position:relative;
        left:auto;
        right:auto;
        top:auto;
        margin-bottom:28px;}

.reviews-stage__hint{display:none;}

.reviews-stage .review-track{width:100%;
        display:grid;
        grid-template-columns:1fr;
        gap:14px;
        padding:0;
        transform:none!important;}

.reviews-stage .review-card{width:100%;
        height:auto;
        min-height:360px;
        max-height:none;
        margin:0!important;
        padding:28px;}}

.impact--existence{min-height:125svh;}

.impact-existence__truth{position:absolute;
      left:var(--pad);
      bottom:11vh;
      z-index:5;
      max-width:58vw;}

.impact-existence__truth .sans{display:block;
      color:var(--gold);
      font-size:11px;
      letter-spacing:.16em;
      text-transform:uppercase;
      margin-bottom:10px;}

.impact-existence__truth .serif{display:block;
      color:#f1ece6;
      font-size:clamp(32px,4.2vw,68px);
      line-height:.88;
      font-style:italic;}

.impact-copy--strong{width:min(470px,32vw);
      bottom:8vh;}

.impact-copy--strong p{margin:0 0 18px;}

.impact-copy--strong strong{color:#f1ece6;
      font-weight:600;}

.impact-existence__stakes{position:absolute;
      left:0;
      right:0;
      top:64%;
      z-index:1;
      display:flex;
      gap:4.8vw;
      white-space:nowrap;
      transform:translateX(-6vw);
      color:transparent;
      -webkit-text-stroke:1px rgba(176,138,75,.22);
      text-stroke:1px rgba(176,138,75,.22);
      font-family:"Oswald",Impact,sans-serif;
      font-weight:700;
      font-size:clamp(64px,8vw,130px);
      letter-spacing:-.055em;
      pointer-events:none;
      overflow:hidden;}

@media (max-width:900px){.impact--existence{min-height:1250px}

.impact-existence__truth{left:var(--pad);
        right:var(--pad);
        bottom:33vh;
        max-width:none;}

.impact-copy--strong{width:78vw;
        bottom:6vh;}

.impact-existence__stakes{top:61%;
        font-size:58px;
        gap:28px;}}

.impact--existence{min-height:125svh;
      background:#050505;}

.impact--existence .impact-title{max-width:94vw;}

.impact-existence__stakes{top:58%;
      opacity:1;}

.impact-copy--strong{right:var(--pad);
      width:min(520px,34vw);
      bottom:7vh;}

.impact-existence__truth{bottom:13vh;
      max-width:55vw;}

@media (max-width:900px){.impact--existence{min-height:1180px}

.impact-existence__truth{bottom:36vh;}

.impact-copy--strong{width:82vw;
        right:var(--pad);
        bottom:6vh;}

.impact-existence__stakes{top:58%;}}

.investigation-intro--state{min-height:115svh;
      position:relative;
      overflow:hidden;
      display:flex;
      align-items:center;}

.investigation-intro--state .investigation-intro__inner{position:relative;
      z-index:4;
      width:100%;}

.investigation-state-title{margin:0;
      max-width:1450px;}

.investigation-state-title > .sans{display:block;
      font-size:clamp(76px,11.2vw,184px);
      line-height:.69;
      letter-spacing:-.065em;}

.investigation-state-title > .script{display:block;
      margin-left:19vw;
      margin-top:.02em;
      color:var(--gold);
      font-size:clamp(48px,6.4vw,102px);
      line-height:.76;
      font-style:italic;
      text-transform:none;}

.investigation-state-copy{max-width:860px;
      margin:54px 0 0 auto;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:28px 42px;
      font-size:14px;
      line-height:1.78;
      color:#5f5b56;
      position:relative;
      z-index:4;}

.investigation-state-copy p{margin:0;}

.investigation-state-copy strong{color:#111;
      font-weight:650;}

.investigation-state-copy__bridge{grid-column:1 / -1;
      padding-top:22px;
      border-top:1px solid rgba(176,138,75,.52);
      color:#27231f!important;
      font-size:15px;}

.investigation-state-copy__bridge strong{color:var(--gold);}

.investigation-state-ghost{position:absolute;
      z-index:0;
      right:-.04em;
      bottom:-.18em;
      color:rgba(176,138,75,.055);
      font-size:clamp(170px,30vw,485px);
      line-height:.58;
      letter-spacing:-.08em;
      text-align:right;
      pointer-events:none;}

@media (max-width:900px){.investigation-intro--state{min-height:auto;
        padding-top:100px;
        padding-bottom:100px;}

.investigation-state-title > .script{margin-left:3vw;}

.investigation-state-copy{grid-template-columns:1fr;
        margin-left:0;}

.investigation-state-copy__bridge{grid-column:auto;}}

.no-surrender-subline{margin:10px 0 0;
      color:var(--gold);
      font-family:"Cormorant Garamond",Georgia,serif;
      font-size:clamp(28px,3.4vw,54px);
      line-height:.9;
      font-style:italic;
      letter-spacing:-.02em;}

:focus-visible{outline:2px solid var(--gold);
      outline-offset:4px;}

img{max-width:100%;}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}

*,
*::before,
*::after{animation-duration:.01ms!important;
        animation-iteration-count:1!important;
        transition-duration:.01ms!important;}}

.header-inner{grid-template-columns:auto 1fr auto;gap:24px}

.header-brandgroup{display:flex;align-items:center;gap:18px;pointer-events:auto}

.header-phone{display:flex;align-items:baseline;gap:7px;padding:8px 11px;border:1px solid rgba(255,255,255,.55);font-size:8px;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}

.header-phone span{opacity:.72}

.header-phone strong{font-size:12px;letter-spacing:.08em}

.header-center{justify-self:center}

.hero--with-person{isolation:isolate}

.hero-person{position:absolute;z-index:2;right:6.5vw;top:12vh;width:min(34vw,530px);height:74vh;overflow:hidden;transform:rotate(1.2deg);box-shadow:0 25px 90px rgba(0,0,0,.35)}

.hero-person img{width:100%;height:100%;object-fit:cover;object-position:center 24%;filter:saturate(.88) contrast(1.04)}

.hero-person__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,15,16,.34),rgba(15,15,16,.06) 54%,rgba(15,15,16,.34)),linear-gradient(180deg,rgba(15,15,16,.06),rgba(15,15,16,.58))}

.hero-person__tag{position:absolute;left:18px;right:18px;bottom:16px;display:flex;justify-content:space-between;gap:10px;color:#fff;font-size:8px;letter-spacing:.14em;text-transform:uppercase;border-top:1px solid rgba(255,255,255,.55);padding-top:9px}

.hero-stage,
.hero-meta,
.hero-bottom,
.hero-vertical{position:relative;z-index:6}

.hero-title{z-index:7}

.hero-mail{font-size:10px;letter-spacing:.07em;border-bottom:1px solid var(--gold);padding-bottom:7px}

.contact-ribbon{min-height:84px;background:#090909;color:#fff;border-top:1px solid rgba(176,138,75,.45);border-bottom:1px solid rgba(176,138,75,.45);display:grid;grid-template-columns:.7fr 1fr 1.35fr 1fr;align-items:stretch;padding:0 var(--pad);position:relative;z-index:8}

.contact-ribbon__label{display:flex;align-items:center;color:var(--gold);font-size:9px;letter-spacing:.17em;text-transform:uppercase}

.contact-ribbon a{display:flex;flex-direction:column;justify-content:center;padding:13px 22px;border-left:1px solid #292929;transition:.22s ease}

.contact-ribbon a:hover{background:#151515}

.contact-ribbon small{font-size:7px;letter-spacing:.16em;color:#89847e;text-transform:uppercase;margin-bottom:4px}

.contact-ribbon strong{font-size:clamp(12px,1.2vw,18px);font-weight:500;letter-spacing:.03em;white-space:nowrap}

.contact-ribbon__urgent strong{color:var(--gold)}

@media (max-width:1100px){.header-phone span{display:none}

.header-phone strong{font-size:10px}

.hero-person{right:3vw;width:39vw;opacity:.8}

.contact-ribbon{grid-template-columns:auto 1fr 1.3fr 1fr}

.contact-ribbon__label{padding-right:18px}

.contact-ribbon a{padding-inline:14px}}

@media (max-width:900px){.header-inner{grid-template-columns:1fr auto}

.header-brandgroup{gap:9px}

.header-phone{padding:6px 8px}

.header-phone strong{font-size:9px}

.hero-person{right:-18vw;top:15vh;width:74vw;height:66vh;opacity:.58;transform:rotate(0)}

.hero-person__tag{display:none}

.hero-actions{flex-wrap:wrap}

.hero-mail{width:100%;order:3}

.contact-ribbon{grid-template-columns:1fr 1fr;padding:0}

.contact-ribbon__label{display:none}

.contact-ribbon a{padding:14px var(--pad);border-left:0;border-bottom:1px solid #292929}

.contact-ribbon__urgent{grid-column:1/-1}}

.hero--with-person{min-height:100svh;
  padding-top:94px;
  grid-template-rows:auto 1fr auto;}

/* portrait becomes a calm campaign panel */

.hero-person{right:4.2vw!important;
  top:11.5vh!important;
  width:min(35vw,560px)!important;
  height:76vh!important;
  transform:none!important;
  box-shadow:0 35px 110px rgba(0,0,0,.42)!important;
  border:1px solid rgba(176,138,75,.25);}

.hero-person img{object-position:center 24%!important;
  filter:saturate(.96) contrast(1.03)!important;}

.hero-person__shade{background:
    linear-gradient(90deg,rgba(8,8,8,.20),rgba(8,8,8,0) 45%,rgba(8,8,8,.16)),
    linear-gradient(180deg,rgba(8,8,8,.03),rgba(8,8,8,.34) 78%,rgba(8,8,8,.62))!important;}

.hero-person__tag{left:20px!important;
  right:20px!important;
  bottom:18px!important;
  font-size:7px!important;
  letter-spacing:.16em!important;}

.hero-stage{justify-content:flex-start!important;
  align-items:center!important;
  padding-top:1vh;}

.hero-meta{width:68vw;}

.hero-meta span:last-child{opacity:.52;}

.hero-bottom{display:grid!important;
  grid-template-columns:minmax(360px,1fr) auto!important;
  align-items:center!important;
  gap:34px!important;
  min-height:94px;
  padding-top:16px!important;}

.hero-seo-copy{max-width:660px!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.58!important;}

.hero-actions{gap:0!important;
  border:1px solid rgba(176,138,75,.5);}

.hero-actions a{border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--cream)!important;
  padding:14px 17px!important;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  white-space:nowrap;}

.hero-actions a + a{border-left:1px solid rgba(176,138,75,.38)!important;}

.hero-actions .hero-emergency{background:var(--gold)!important;
  color:var(--dark)!important;}

.hero-mail{border-bottom:0!important;
  font-size:9px!important;}

.hero-vertical{display:none!important;}

.hero--with-person:before{content:"";
  position:absolute;
  left:var(--pad);
  top:26%;
  width:1px;
  height:38%;
  background:linear-gradient(180deg,transparent,var(--gold),transparent);
  opacity:.45;
  z-index:1;}

@media (max-width:1150px){.hero-person{right:2.5vw!important;width:38vw!important}

.hero-bottom{grid-template-columns:1fr!important}

.hero-actions{width:max-content}}

@media (max-width:900px){.hero--with-person{min-height:920px;
    padding-top:86px;}

.hero-person{right:-13vw!important;
    top:17vh!important;
    width:75vw!important;
    height:61vh!important;
    opacity:.52!important;
    border:0!important;}

.hero-meta{width:100%;}

.hero-meta span:last-child{display:none;}

.hero-bottom{display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;}

.hero-actions{width:100%;
    display:grid!important;
    grid-template-columns:1fr 1fr;}

.hero-actions .hero-mail{grid-column:1/-1;
    order:3;
    border-left:0!important;
    border-top:1px solid rgba(176,138,75,.38)!important;}}

.hero-person{opacity:1!important;
  visibility:visible!important;}

.hero-person img{opacity:1!important;
  visibility:visible!important;
  display:block!important;}

.hero-person{overflow:hidden!important;}

.hero-person img{width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 22%!important;
  transform:scale(1.18)!important;
  transform-origin:center 34%!important;}

@media (max-width:1150px){.hero-person img{transform:scale(1.15)!important;
    object-position:center 24%!important;}}

@media (max-width:900px){.hero-person img{transform:scale(1.10)!important;
    object-position:center 27%!important;}}

.hero-person img{transform:scale(1.38)!important;
  transform-origin:center 31%!important;
  object-position:center 18%!important;}

@media (max-width:1150px){.hero-person img{transform:scale(1.32)!important;
    object-position:center 20%!important;}}

@media (max-width:900px){.hero-person img{transform:scale(1.20)!important;
    object-position:center 24%!important;}}

.hero-title--v45{position:relative;
  z-index:8;
  width:70vw!important;
  margin:0!important;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  line-height:.7;
  letter-spacing:-.065em;
  perspective:1000px;}

.hero-v45__prefix{display:block;
  margin:0 0 1.4vw .2vw;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:clamp(13px,1.15vw,19px);
  font-weight:600;
  line-height:1;
  letter-spacing:.22em;
  color:var(--gold);}

.hero-v45__main{display:block;
  font-size:clamp(102px,13.1vw,210px);
  line-height:.73;
  letter-spacing:-.073em;
  white-space:nowrap;
  color:var(--cream);}

.hero-v45__defense{display:block;
  margin-top:.08em;
  margin-left:13vw;
  font-size:clamp(52px,6.4vw,102px);
  line-height:.82;
  font-style:italic;
  color:var(--gold);
  letter-spacing:-.045em;
  white-space:nowrap;
  transform:rotate(-3deg);}

.hero-v45__place{display:flex;
  align-items:baseline;
  margin-top:1.25vw;
  margin-left:18vw;
  gap:clamp(9px,1vw,18px);}

.hero-v45__in{font-size:clamp(23px,2.25vw,37px);
  line-height:1;
  font-style:italic;
  color:var(--gold);
  letter-spacing:0;}

.hero-v45__munich{font-size:clamp(72px,8.8vw,145px);
  line-height:.78;
  letter-spacing:-.065em;
  color:var(--cream);
  white-space:nowrap;}

/* Let the typography just enter the portrait edge — controlled tension */

.hero-title--v45:after{content:"";
  position:absolute;
  left:-1px;
  top:18%;
  width:1px;
  height:68%;
  background:linear-gradient(180deg,transparent,var(--gold),transparent);
  opacity:.5;}

.hero-title--v45 .hero-row{display:none!important;}

/* portrait slightly more to the right to give STRAFRECHT room */

.hero-person{right:3.5vw!important;
  width:min(35vw,560px)!important;}

/* bottom becomes calmer because the hero itself is now stronger */

.hero-bottom{border-top:1px solid rgba(176,138,75,.45);}

@media (max-width:1200px){.hero-title--v45{width:71vw!important;}

.hero-v45__main{font-size:12.2vw;}

.hero-v45__defense{font-size:6vw;
    margin-left:10vw;}

.hero-v45__munich{font-size:8.4vw;}}

@media (max-width:900px){.hero-title--v45{width:100%!important;}

.hero-v45__prefix{font-size:9px;
    margin-bottom:14px;}

.hero-v45__main{font-size:17vw;
    white-space:normal;}

.hero-v45__defense{font-size:11vw;
    margin-left:5vw;
    margin-top:2vw;}

.hero-v45__place{margin-left:8vw;
    margin-top:4vw;}

.hero-v45__in{font-size:6vw;}

.hero-v45__munich{font-size:14.5vw;}}

.portrait-impact--brand-v2{position:relative;}

.portrait-brand-v3__name{position:relative;
  z-index:4;}

.portrait-brand-v3__name span:first-child{letter-spacing:-.07em;}

.portrait-brand-v3__name span:last-child{color:var(--cream);
  text-shadow:0 12px 50px rgba(0,0,0,.26);}

.portrait-brand-v3__role{color:var(--gold)!important;
  font-size:clamp(15px,1.4vw,23px)!important;
  letter-spacing:.11em!important;
  margin-top:10px!important;}

.portrait-brand-v3__statement{max-width:460px;
  font-size:clamp(24px,2.2vw,37px)!important;
  line-height:1.12!important;}

.portrait-brand-contact{position:absolute;
  z-index:8;
  left:4vw;
  right:4vw;
  bottom:7.5vh;
  display:grid;
  grid-template-columns:minmax(230px,.8fr) minmax(620px,1.8fr);
  gap:34px;
  align-items:stretch;
  border-top:1px solid rgba(176,138,75,.58);
  border-bottom:1px solid rgba(176,138,75,.35);
  background:rgba(5,5,5,.52);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);}

.portrait-brand-contact__identity{display:flex;
  flex-direction:column;
  justify-content:center;
  padding:18px 22px;
  border-right:1px solid rgba(176,138,75,.32);}

.portrait-brand-contact__label{color:var(--gold);
  font-size:9px;
  letter-spacing:.2em;
  margin-bottom:6px;}

.portrait-brand-contact__identity strong{color:#fff;
  font-family:"Oswald",Impact,sans-serif;
  font-size:clamp(17px,1.55vw,25px);
  line-height:1;
  letter-spacing:.035em;}

.portrait-brand-contact__links{display:grid;
  grid-template-columns:1fr 1.25fr 1fr;}

.portrait-brand-contact__links a{display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:80px;
  padding:16px 20px;
  border-right:1px solid rgba(176,138,75,.25);
  transition:background .25s ease,color .25s ease,transform .25s ease;}

.portrait-brand-contact__links a:last-child{border-right:0;}

.portrait-brand-contact__links a:hover{background:rgba(176,138,75,.10);
  transform:translateY(-2px);}

.portrait-brand-contact__links span{color:var(--gold);
  font-size:8px;
  letter-spacing:.16em;
  margin-bottom:6px;}

.portrait-brand-contact__links strong{color:#fff;
  font-size:clamp(11px,1.05vw,16px);
  letter-spacing:.02em;
  font-weight:600;
  white-space:nowrap;}

.portrait-brand-contact__emergency{background:var(--gold)!important;}

.portrait-brand-contact__emergency span,
.portrait-brand-contact__emergency strong{color:#0c0b0a!important;}

.portrait-impact__footer--v2{bottom:2.1vh!important;
  left:4vw!important;
  right:4vw!important;
  z-index:9!important;}

.portrait-impact__profilelink{font-weight:600;}

@media (max-width:1050px){.portrait-brand-contact{grid-template-columns:1fr;
    gap:0;}

.portrait-brand-contact__identity{border-right:0;
    border-bottom:1px solid rgba(176,138,75,.3);}}

@media (max-width:900px){.portrait-brand-contact{position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    margin:30px var(--pad) 0;}

.portrait-brand-contact__links{grid-template-columns:1fr;}

.portrait-brand-contact__links a{border-right:0;
    border-bottom:1px solid rgba(176,138,75,.22);}

.portrait-impact__footer--v2{position:relative!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    margin:20px var(--pad) 0!important;}}

.portrait-brand-v3__statement--defense{max-width:560px!important;
  font-family:"Italiana",Georgia,serif!important;
  font-size:clamp(34px,3.3vw,58px)!important;
  line-height:.98!important;
  font-style:italic;
  color:#fff;
  letter-spacing:-.025em;}

.portrait-brand-v3__statement--defense::first-line{color:#fff;}

.investigation-stop__contact{position:absolute;
  left:50%;
  bottom:6.5vh;
  transform:translateX(-50%);
  z-index:5;
  display:grid;
  grid-template-columns:auto auto auto;
  border:1px solid rgba(176,138,75,.52);
  background:rgba(5,5,5,.76);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);}

.investigation-stop__contact a{min-width:190px;
  padding:13px 18px 12px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border-right:1px solid rgba(176,138,75,.32);
  transition:background .22s ease,transform .22s ease;}

.investigation-stop__contact a:last-child{border-right:0;}

.investigation-stop__contact a:hover{background:rgba(176,138,75,.10);
  transform:translateY(-2px);}

.investigation-stop__contact span{font-size:7px;
  line-height:1;
  letter-spacing:.18em;
  color:var(--gold);
  margin-bottom:5px;}

.investigation-stop__contact strong{font-size:10px;
  line-height:1.1;
  letter-spacing:.07em;
  color:#fff;
  font-weight:600;
  white-space:nowrap;}

.investigation-stop__contact-emergency{background:var(--gold)!important;}

.investigation-stop__contact-emergency span,
.investigation-stop__contact-emergency strong{color:#0a0908!important;}

@media (max-width:900px){.investigation-stop__contact{left:var(--pad);
    right:var(--pad);
    bottom:5vh;
    transform:none;
    grid-template-columns:1fr;}

.investigation-stop__contact a{min-width:0;
    border-right:0;
    border-bottom:1px solid rgba(176,138,75,.28);}

.investigation-stop__contact a:last-child{border-bottom:0;}}

.investigation-stop__sub{position:absolute!important;
  left:50%!important;
  top:68%!important;
  bottom:auto!important;
  transform:translateX(-50%)!important;
  z-index:6!important;
  margin:0!important;
  white-space:nowrap;}

.investigation-stop__contact{bottom:5.8vh!important;}

@media (max-width:900px){.investigation-stop__sub{top:66%!important;
    white-space:normal;
    width:82vw;
    text-align:center;}

.investigation-stop__contact{bottom:4.5vh!important;}}

.investigation-stop__sub{top:72.5%!important;}

@media (max-width:900px){.investigation-stop__sub{top:70%!important;}}

.contact-ribbon{min-height:92px!important;
  background:#0b0b0b!important;
  border-top:1px solid rgba(176,138,75,.72)!important;
  border-bottom:1px solid rgba(176,138,75,.72)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);}

.contact-ribbon__label{color:var(--gold)!important;
  opacity:1!important;
  font-weight:700!important;
  font-size:9px!important;}

.contact-ribbon a{opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  background:rgba(255,255,255,.012);}

.contact-ribbon a:hover{background:rgba(176,138,75,.10)!important;}

.contact-ribbon small{color:#b6afa7!important;
  opacity:1!important;
  font-size:8px!important;}

.contact-ribbon strong{color:#fff!important;
  opacity:1!important;
  font-weight:650!important;
  font-size:clamp(13px,1.25vw,19px)!important;}

.contact-ribbon__urgent{background:var(--gold)!important;}

.contact-ribbon__urgent small,
.contact-ribbon__urgent strong{color:#0a0908!important;}

@media (max-width:900px){.contact-ribbon{min-height:auto!important;}}

.investigation-step--contact{background:#fff!important;
  color:#111!important;}

.investigation-step--contact .investigation-step__no{color:var(--gold)!important;}

.investigation-step--contact .investigation-step__content p{color:#4d4741!important;}

.investigation-step--contact .investigation-contact-title{color:#111!important;}

.investigation-step--contact .investigation-contact-title .script{color:var(--gold)!important;}

.investigation-step--contact .investigation-step__ghost{color:rgba(17,17,17,.035)!important;}

.investigation-step--contact .investigation-step__links--urgent a{background:#111!important;
  color:#fff!important;
  border-color:#111!important;}

.investigation-step--contact .investigation-step__links--urgent a:nth-child(2){background:var(--gold)!important;
  color:#111!important;
  border-color:var(--gold)!important;}

.investigation-step--contact .investigation-step__links--urgent a:nth-child(3){background:transparent!important;
  color:#111!important;
  border-color:#111!important;}

.investigation-step--contact .investigation-step__links--urgent a:hover{transform:translateY(-2px);}

.ck-sos__rail-contact{margin-top:clamp(28px,4vh,54px);
  padding-top:18px;
  border-top:1px solid rgba(176,138,75,.5);
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:5px;
  position:relative;
  z-index:4;}

.ck-sos__rail-contact-label{color:var(--gold);
  font-size:8px;
  font-weight:700;
  letter-spacing:.18em;}

.ck-sos__rail-contact > a:first-of-type{font-family:"Oswald",Impact,sans-serif;
  font-size:clamp(24px,2.2vw,36px);
  line-height:1;
  letter-spacing:-.02em;
  color:#111;}

.ck-sos__rail-contact-mail{font-size:9px;
  line-height:1.2;
  letter-spacing:.03em;
  color:#5d5650;
  border-bottom:1px solid rgba(176,138,75,.5);}

.ck-sos__story--festnahme .ck-sos__headline,
.ck-sos__story--freiheit .ck-sos__headline,
.ck-sos__story--anklage .ck-sos__headline{font-size:clamp(112px,11.3vw,190px)!important;
  line-height:.62!important;
  letter-spacing:-.07em!important;}

.ck-sos__story--festnahme .ck-sos__italic,
.ck-sos__story--freiheit .ck-sos__italic,
.ck-sos__story--anklage .ck-sos__italic{font-size:clamp(58px,6.1vw,100px)!important;
  line-height:.78!important;}

.ck-sos__secondary-link{display:block!important;
  width:max-content;
  max-width:100%;
  margin-top:10px!important;
  font-size:10px!important;
  font-weight:700!important;
  letter-spacing:.04em!important;
  color:var(--gold)!important;
  border-bottom:1px solid rgba(176,138,75,.55)!important;}

.ck-sos__secondary-link:hover{color:#111!important;}

@media (max-width:1100px){.ck-sos__story--festnahme .ck-sos__headline,
.ck-sos__story--freiheit .ck-sos__headline,
.ck-sos__story--anklage .ck-sos__headline{font-size:clamp(92px,10.5vw,150px)!important;}}

@media (max-width:900px){.ck-sos__rail-contact{margin-top:24px;}

.ck-sos__rail-contact > a:first-of-type{font-size:28px;}

.ck-sos__story--festnahme .ck-sos__headline,
.ck-sos__story--freiheit .ck-sos__headline,
.ck-sos__story--anklage .ck-sos__headline{font-size:22vw!important;}

.ck-sos__story--festnahme .ck-sos__italic,
.ck-sos__story--freiheit .ck-sos__italic,
.ck-sos__story--anklage .ck-sos__italic{font-size:12vw!important;}}

.ck-sos__headline--single{white-space:nowrap!important;
  font-size:clamp(88px,9.2vw,158px)!important;
  line-height:.7!important;
  letter-spacing:-.065em!important;}

.ck-sos__headline--single .ck-sos__italic{display:block!important;
  white-space:nowrap!important;
  margin-left:18%!important;
  margin-top:-.02em!important;
  font-size:clamp(52px,5.5vw,92px)!important;
  line-height:.8!important;}

@media (max-width:1200px){.ck-sos__headline--single{font-size:clamp(76px,8.5vw,126px)!important;}}

@media (max-width:900px){.ck-sos__headline--single{white-space:normal!important;
    font-size:17vw!important;}

.ck-sos__headline--single .ck-sos__italic{white-space:normal!important;
    margin-left:6%!important;
    font-size:11vw!important;}}

.no-surrender-subline--stacked{display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:0!important;
  line-height:.92!important;}

.no-surrender-subline--stacked span{display:block;}

.no-surrender-subline--stacked span:first-child{white-space:nowrap;}

.no-surrender-subline--stacked span:last-child{white-space:nowrap;}

.mandate-boom{position:relative;
  min-height:100svh;
  background:#080808;
  color:#fff;
  overflow:hidden;
  padding:clamp(72px,8vh,110px) var(--pad) 0;
  display:grid;
  grid-template-columns:minmax(310px,.78fr) minmax(650px,1.55fr);
  grid-template-rows:1fr auto;
  gap:clamp(28px,4vw,70px);}

.mandate-boom__head{position:relative;
  z-index:5;
  align-self:center;}

.mandate-boom__head h2{margin:22px 0 0;
  line-height:.72;
  letter-spacing:-.06em;}

.mandate-boom__head h2 span{display:block;}

.mandate-boom__head h2 .sans{font-size:clamp(68px,7.2vw,118px);}

.mandate-boom__head h2 .serif{margin-top:18px;
  max-width:540px;
  font-size:clamp(30px,3.5vw,58px);
  line-height:.95;
  color:var(--gold);
  font-style:italic;
  letter-spacing:-.035em;}

.mandate-boom__list{position:relative;
  z-index:6;
  align-self:center;
  border-top:1px solid rgba(176,138,75,.42);}

.mandate-boom__row{display:grid;
  grid-template-columns:42px minmax(230px,.72fr) 1fr;
  gap:18px;
  align-items:center;
  min-height:88px;
  padding:10px 0;
  border-bottom:1px solid rgba(255,255,255,.13);
  transform-origin:center;}

.mandate-boom__no{color:var(--gold);
  font-size:8px;
  font-weight:700;
  letter-spacing:.18em;}

.mandate-boom__row h3{margin:0;
  font-size:clamp(31px,3.3vw,54px);
  line-height:.88;
  letter-spacing:-.045em;
  white-space:nowrap;}

.mandate-boom__row p{margin:0;
  max-width:44ch;
  font-size:clamp(11px,.82vw,13px);
  line-height:1.48;
  color:#aaa39b;}

.mandate-boom__row--gold h3{color:var(--gold);}

.mandate-boom__row--gold p{color:#d5c5aa;}

.mandate-boom__ghost{position:absolute;
  z-index:1;
  left:22vw;
  bottom:7vh;
  font-size:clamp(150px,22vw,350px);
  line-height:.7;
  letter-spacing:-.075em;
  color:rgba(255,255,255,.018);
  pointer-events:none;
  white-space:nowrap;}

.mandate-boom__slash{position:absolute;
  z-index:2;
  height:1px;
  width:46vw;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:.5;
  transform:rotate(-10deg);
  pointer-events:none;}

.mandate-boom__slash--one{left:20vw;
  top:38%;}

.mandate-boom__slash--two{right:-5vw;
  top:70%;
  transform:rotate(8deg);}

.mandate-boom__contact{grid-column:1/-1;
  position:relative;
  z-index:8;
  display:grid;
  grid-template-columns:1.15fr .8fr 1.2fr .8fr;
  margin:0 calc(var(--pad) * -1);
  background:#0d0d0d;
  border-top:1px solid rgba(176,138,75,.62);}

.mandate-boom__contact > div,
.mandate-boom__contact > a{min-height:72px;
  padding:14px 18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid rgba(176,138,75,.26);}

.mandate-boom__contact > *:last-child{border-right:0;}

.mandate-boom__contact span{color:var(--gold);
  font-size:7px;
  letter-spacing:.17em;
  margin-bottom:5px;}

.mandate-boom__contact strong{color:#fff;
  font-size:clamp(10px,.95vw,14px);
  white-space:nowrap;}

.mandate-boom__emergency{background:var(--gold)!important;}

.mandate-boom__emergency span,
.mandate-boom__emergency strong{color:#0a0908!important;}

/* remove any leftover compact mandate contact duplicate immediately after this section */

.mandate-boom + .contact-ribbon{display:none!important;}

@media (max-width:1100px){.mandate-boom{grid-template-columns:1fr;
    grid-template-rows:auto auto auto;}

.mandate-boom__head{align-self:auto;}

.mandate-boom__head h2 .sans{font-size:clamp(58px,10vw,100px);}

.mandate-boom__list{align-self:auto;}}

@media (max-width:760px){.mandate-boom{min-height:auto;
    padding-top:80px;}

.mandate-boom__row{grid-template-columns:30px 1fr;
    gap:12px;
    min-height:auto;
    padding:18px 0;}

.mandate-boom__row h3{white-space:normal;
    font-size:11vw;}

.mandate-boom__row p{grid-column:2;}

.mandate-boom__contact{grid-template-columns:1fr;}

.mandate-boom__contact > div,
.mandate-boom__contact > a{border-right:0;
    border-bottom:1px solid rgba(176,138,75,.24);}}

.mandate-boom__row{grid-template-columns:42px minmax(320px,.92fr) minmax(300px,1fr)!important;
  column-gap:clamp(18px,2vw,34px)!important;}

.mandate-boom__row h3{max-width:100%;
  font-size:clamp(29px,2.85vw,47px)!important;}

.mandate-boom__row p{position:relative;
  z-index:3;
  max-width:42ch!important;
  padding-left:4px;}

.mandate-boom__row--long h3{font-size:clamp(27px,2.55vw,42px)!important;
  letter-spacing:-.04em!important;}

@media (max-width:1250px){.mandate-boom__row{grid-template-columns:36px minmax(270px,.9fr) minmax(260px,1fr)!important;}

.mandate-boom__row h3{font-size:clamp(27px,2.55vw,40px)!important;}

.mandate-boom__row--long h3{font-size:clamp(24px,2.25vw,36px)!important;}}

@media (max-width:1100px){.mandate-boom__row{grid-template-columns:34px minmax(245px,.9fr) minmax(240px,1fr)!important;}}

@media (max-width:760px){.mandate-boom__row{grid-template-columns:30px 1fr!important;}

.mandate-boom__row h3,
.mandate-boom__row--long h3{font-size:11vw!important;}}

.answer-boom{position:relative;
  background:#f6f3ed;
  color:#111;
  overflow:hidden;
  padding:clamp(80px,9vh,125px) var(--pad) 0;
  border-top:1px solid rgba(17,17,17,.16);}

.answer-boom__head{position:relative;
  z-index:4;
  display:grid;
  grid-template-columns:minmax(360px,.9fr) minmax(360px,.65fr);
  column-gap:clamp(45px,8vw,130px);
  align-items:end;
  padding-bottom:clamp(60px,7vh,95px);}

.answer-boom__head > .eyebrow{grid-column:1/-1;
  margin-bottom:22px;
  color:var(--gold);}

.answer-boom__head h2{margin:0;
  line-height:.69;
  letter-spacing:-.065em;}

.answer-boom__head h2 span{display:block;}

.answer-boom__head h2 .sans{font-size:clamp(72px,8.7vw,145px);}

.answer-boom__head h2 .serif{margin-top:.12em;
  margin-left:28%;
  font-size:clamp(56px,6vw,100px);
  line-height:.78;
  color:var(--gold);
  font-style:italic;}

.answer-boom__head > p{max-width:560px;
  margin:0 0 20px;
  font-size:clamp(14px,1.08vw,17px);
  line-height:1.65;
  color:#5f5953;}

.answer-boom__head-contact{grid-column:2;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:9px 16px;
  padding-top:16px;
  border-top:1px solid rgba(176,138,75,.48);}

.answer-boom__head-contact > span{width:100%;
  color:var(--gold);
  font-size:8px;
  font-weight:700;
  letter-spacing:.17em;}

.answer-boom__head-contact a{color:#111;
  font-size:11px;
  font-weight:650;
  border-bottom:1px solid rgba(176,138,75,.55);}

.answer-boom__list{position:relative;
  z-index:5;
  border-top:1px solid rgba(17,17,17,.22);}

.answer-boom__item{border-bottom:1px solid rgba(17,17,17,.18);}

.answer-boom__question{list-style:none;
  display:grid;
  grid-template-columns:54px 1fr 46px;
  gap:18px;
  align-items:center;
  min-height:clamp(104px,12vh,145px);
  padding:18px 0;
  cursor:pointer;
  user-select:none;}

.answer-boom__question::-webkit-details-marker{display:none;}

.answer-boom__no{color:var(--gold);
  font-size:9px;
  font-weight:700;
  letter-spacing:.16em;}

.answer-boom__qtext{font-family:"Italiana",Georgia,serif;
  font-size:clamp(36px,4.2vw,70px);
  line-height:.97;
  letter-spacing:-.035em;
  max-width:1100px;}

.answer-boom__plus{justify-self:end;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:32px;
  font-weight:300;
  transition:transform .32s ease,color .32s ease;}

.answer-boom__item[open] .answer-boom__plus{transform:rotate(45deg);
  color:var(--gold);}

.answer-boom__answer{margin-left:72px;
  max-width:820px;
  padding:0 0 36px;
  font-size:clamp(13px,1vw,16px);
  line-height:1.72;
  color:#56504a;}

.answer-boom__answer p{margin:0 0 13px;}

.answer-boom__answer a{color:#111;
  border-bottom:1px solid var(--gold);}

.answer-boom__ghost{position:absolute;
  z-index:1;
  right:-.035em;
  top:34vh;
  font-size:clamp(170px,25vw,410px);
  line-height:.7;
  color:rgba(17,17,17,.026);
  letter-spacing:-.08em;
  pointer-events:none;
  white-space:nowrap;}

.answer-boom__line{position:absolute;
  z-index:2;
  left:-8vw;
  top:48%;
  width:116vw;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  transform:rotate(-5deg) scaleX(.3);
  opacity:.46;
  pointer-events:none;}

.answer-boom__contact{position:relative;
  z-index:7;
  display:grid;
  grid-template-columns:1.15fr .8fr 1.2fr .8fr;
  margin:clamp(60px,7vh,100px) calc(var(--pad) * -1) 0;
  background:#090909;
  color:#fff;
  border-top:1px solid rgba(176,138,75,.65);}

.answer-boom__contact > div,
.answer-boom__contact > a{min-height:74px;
  padding:14px 18px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid rgba(176,138,75,.27);}

.answer-boom__contact > *:last-child{border-right:0;}

.answer-boom__contact span{color:var(--gold);
  font-size:7px;
  letter-spacing:.17em;
  margin-bottom:5px;}

.answer-boom__contact strong{color:#fff;
  font-size:clamp(10px,.95vw,14px);
  white-space:nowrap;}

.answer-boom__emergency{background:var(--gold)!important;}

.answer-boom__emergency span,
.answer-boom__emergency strong{color:#090909!important;}

@media (max-width:950px){.answer-boom__head{grid-template-columns:1fr;}

.answer-boom__head > p,
.answer-boom__head-contact{grid-column:1;
    margin-top:28px;}

.answer-boom__head h2 .sans{font-size:14vw;}

.answer-boom__head h2 .serif{font-size:10vw;
    margin-left:16%;}

.answer-boom__contact{grid-template-columns:1fr 1fr;}}

@media (max-width:650px){.answer-boom__question{grid-template-columns:30px 1fr 30px;
    gap:10px;
    min-height:96px;}

.answer-boom__qtext{font-size:8.8vw;}

.answer-boom__answer{margin-left:40px;}

.answer-boom__contact{grid-template-columns:1fr;}

.answer-boom__contact > div,
.answer-boom__contact > a{border-right:0;
    border-bottom:1px solid rgba(176,138,75,.25);}}

.answer-boom__head h2{line-height:.73!important;}

.answer-boom__head h2 .sans + .sans{margin-top:.055em!important;}

.answer-boom__head h2 .serif{margin-top:.17em!important;}

/* HERO */

.hero-title,
.hero-title--v45,
.hero-v45__main,
.hero-v45__munich{line-height:.76!important;}

.hero-v45__defense{margin-top:.14em!important;}

/* PORTRAIT / BRAND */

.portrait-brand-v3__name{line-height:.78!important;}

.portrait-brand-v3__name span + span{margin-top:.035em!important;}

.portrait-brand-v3__statement,
.portrait-brand-v3__statement--defense{line-height:1.03!important;}

/* INVESTIGATION */

.investigation-state-title{line-height:.77!important;}

.investigation-state-title > span + span{margin-top:.035em!important;}

.investigation-state-title .script,
.investigation-state-title .serif{margin-top:.10em!important;}

.investigation-step h3{line-height:.79!important;}

.investigation-step h3 .script,
.investigation-step h3 .serif{margin-top:.08em!important;}

/* IMPACT / EXISTENCE */

.impact-title{line-height:.76!important;}

.impact-title > span + span{margin-top:.045em!important;}

.boom-section__title{line-height:.76!important;}

.boom-section__title > span + span{margin-top:.045em!important;}

/* DEFENSE GOALS */

.defense-goals__intro-title{line-height:.76!important;}

.defense-goals__intro-title > span + span{margin-top:.05em!important;}

.defense-goal h3{line-height:.78!important;}

.defense-goal__script{margin-top:.10em!important;}

.ck-sos__rail-title{line-height:.78!important;}

.ck-sos__rail-title > span + span{margin-top:.045em!important;}

.ck-sos__headline{line-height:.72!important;}

.ck-sos__headline .ck-sos__italic{margin-top:.08em!important;}

/* PRACTICE AREA HEADLINES */

.practice-intro h2{line-height:.77!important;}

.practice-intro h2 > span + span{margin-top:.045em!important;}

.practice-row h3{line-height:.79!important;}

/* OFFICE / MUNICH */

.office h2{line-height:.77!important;}

.office h2 > span + span{margin-top:.055em!important;}

.office-quote{line-height:1.02!important;}

.no-surrender-subline{line-height:.98!important;}

.no-surrender-subline--stacked span + span{margin-top:.08em!important;}

/* WHAT I DO / MANDATE */

.mandate-boom__head h2{line-height:.76!important;}

.mandate-boom__head h2 > span + span{margin-top:.05em!important;}

.mandate-boom__head h2 .serif{margin-top:.14em!important;}

.mandate-boom__row h3{line-height:.94!important;}

/* REVIEWS */

.reviews-head h2{line-height:.77!important;}

.reviews-head h2 > span + span{margin-top:.05em!important;}

/* DEEP LAW */

.deep-law__head h2{line-height:.78!important;}

.deep-law__head h2 .script,
.deep-law__head h2 .serif{margin-top:.08em!important;}

/* ANSWERS / FAQ */

.answer-boom__head h2{line-height:.75!important;}

.answer-boom__head h2 .sans + .sans{margin-top:.07em!important;}

.answer-boom__head h2 .serif{margin-top:.18em!important;}

/* KNOWLEDGE */

.knowledge-network__head h2{line-height:.77!important;}

.knowledge-network__head h2 > span + span{margin-top:.055em!important;}

/* CONTACT FINALE */

.contact-final__title{line-height:.77!important;}

.contact-final__title > span + span{margin-top:.08em!important;}

@media (min-width:901px){.sans{text-rendering:geometricPrecision;}}

@media (max-width:900px){.hero-title,
.hero-title--v45,
.investigation-state-title,
.impact-title,
.boom-section__title,
.defense-goals__intro-title,
.practice-intro h2,
.office h2,
.mandate-boom__head h2,
.reviews-head h2,
.answer-boom__head h2,
.knowledge-network__head h2,
.contact-final__title{line-height:.80!important;}}

/* ==========================================================
   FINAL SEO/GEO POLISH — REVIEWS + KNOWLEDGE + ACCESSIBILITY
   ========================================================== */

.reviews-google-link{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:34px;
  width:min(100%,430px);
  margin-top:24px;
  padding:17px 19px 16px;
  border:1px solid rgba(176,138,75,.72);
  background:rgba(176,138,75,.035);
  color:#fff!important;
  font-size:10px;
  line-height:1;
  font-weight:700;
  letter-spacing:.15em;
  text-transform:uppercase;
  position:relative;
  overflow:hidden;
  transition:background .28s ease,color .28s ease,border-color .28s ease;
}

.reviews-google-link::before{
  content:"GOOGLE";
  color:var(--gold);
  font-size:8px;
  letter-spacing:.18em;
  font-weight:700;
  flex:0 0 auto;
}

.reviews-google-link::after{
  content:"↗";
  color:var(--gold);
  font-size:15px;
  line-height:1;
  margin-left:auto;
  transition:transform .28s ease,color .28s ease;
}

.reviews-google-link:hover{
  background:rgba(176,138,75,.12);
  border-color:var(--gold);
  color:#fff!important;
}

.reviews-google-link:hover::after{
  transform:translate(3px,-3px);
  color:#fff;
}

.reviews-stage__topline{
  gap:18px;
}

.reviews-stage__google{
  margin-left:auto;
  color:var(--gold);
  font-size:8px;
  font-weight:700;
  letter-spacing:.16em;
  white-space:nowrap;
}

.reviews-stage__google:hover{
  color:#fff;
}

.knowledge-cluster--offenses{
  grid-column:1 / 13;
  grid-row:15 / 19;
  min-height:clamp(330px,42vw,560px);
  background:#0a0a0a;
  color:#fff;
}

.knowledge-cluster--offenses .knowledge-cluster__meta{
  color:var(--gold);
}

.knowledge-cluster--offenses h3{
  font-size:clamp(68px,9vw,145px);
}

.knowledge-cluster--offenses > p{
  color:var(--gold);
}

.knowledge-cluster__links--offenses{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0 28px;
  width:100%;
  margin-top:auto;
}

.knowledge-cluster__links--offenses a{
  padding:11px 0;
  border-bottom:1px solid rgba(255,255,255,.18);
  color:#fff;
}

.knowledge-cluster__links--offenses a:hover{
  color:var(--gold);
}

/* Keyboard accessibility: visible focus without changing mouse design. */
a:focus-visible,
button:focus-visible,
summary:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:4px;
}

/* Prevent decorative animation layers from intercepting interaction. */
.shock-line,
.flash-cut,
.hero-person__shade,
.answer-boom__ghost,
.answer-boom__line,
.knowledge-network__ghost{
  pointer-events:none;
}

@media(max-width:900px){
  .knowledge-cluster--offenses{
    grid-column:auto;
    grid-row:auto;
    min-height:auto;
  }

  .knowledge-cluster__links--offenses{
    grid-template-columns:1fr 1fr;
    gap:0 18px;
  }

  .reviews-stage__topline{
    flex-wrap:wrap;
  }

  .reviews-stage__google{
    margin-left:0;
  }
}

@media(max-width:560px){
  .knowledge-cluster__links--offenses{
    grid-template-columns:1fr;
  }
}

/* ==========================================================
   FINAL UX FIX — STABLE CLICK TARGETS
   Hover may change appearance, never geometry/position.
   ========================================================== */

.knowledge-cluster:hover,
.review-card:hover,
.deep-law__card:hover,
.practice-row:hover,
.contact-ribbon a:hover,
.portrait-brand-contact__links a:hover,
.investigation-stop__contact a:hover,
.investigation-step--contact .investigation-step__links--urgent a:hover,
.reviews-google-link:hover,
.reviews-stage__google:hover,
.knowledge-cluster__links a:hover,
.answer-boom a:hover,
.knowledge-network a:hover{
  transform:none!important;
}

.practice-row:hover h3{
  transform:none!important;
}

.practice-row:hover .practice-arrow{
  transform:translateX(5px)!important;
}

.cursor{
  display:none!important;
}

a,
summary{
  cursor:pointer;
  -webkit-tap-highlight-color:rgba(176,138,75,.16);
}

a{
  touch-action:manipulation;
}

.review-card{
  box-sizing:border-box;
}

.knowledge-cluster,
.practice-row,
.deep-law__card,
.review-card{
  will-change:auto!important;
}

/* ==========================================================
   MOBILE MASTER PASS — <= 900px
   DESKTOP IS UNTOUCHED.
   ========================================================== */
@media (max-width:900px){

  :root{
    --pad:20px;
  }

  html,
  body{
    width:100%;
    max-width:100%;
    overflow-x:hidden!important;
  }

  body{
    -webkit-text-size-adjust:100%;
  }

  main,
  main > section,
  main > aside{
    max-width:100vw;
  }

  /* ---------- HEADER / REAL MOBILE MENU ---------- */
  .site-header{
    height:64px;
    background:rgba(7,7,7,.96);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }

  .header-inner{
    height:64px;
    min-height:64px;
    grid-template-columns:minmax(0,1fr) auto!important;
    padding:0 14px!important;
    gap:8px;
  }

  .header-brandgroup{
    min-width:0;
    gap:7px!important;
  }

  .header-brand{
    font-size:clamp(11px,3.25vw,14px)!important;
    letter-spacing:.055em!important;
    white-space:nowrap;
  }

  .header-phone{
    min-height:34px;
    padding:6px 7px!important;
    flex:0 0 auto;
  }

  .header-phone span{
    display:none!important;
  }

  .header-phone strong{
    font-size:8.5px!important;
    white-space:nowrap;
  }

  .menu-button{
    display:block!important;
    min-height:38px;
    min-width:62px;
    padding:0 8px!important;
    font-size:8px!important;
    letter-spacing:.10em!important;
    white-space:nowrap;
    position:relative;
    z-index:1003;
  }

  .header-nav{
    display:none!important;
  }

  .site-header.menu-open .header-nav{
    position:fixed!important;
    display:flex!important;
    z-index:1002;
    inset:64px 0 auto 0;
    width:100vw;
    min-height:calc(100svh - 64px);
    padding:34px 20px 44px;
    background:#080808;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    gap:0!important;
    border-top:1px solid rgba(176,138,75,.45);
    overflow-y:auto;
  }

  .site-header.menu-open .header-nav a{
    display:flex;
    align-items:center;
    min-height:66px;
    padding:0;
    border-bottom:1px solid rgba(255,255,255,.14);
    color:#fff;
    font-size:clamp(26px,8vw,38px)!important;
    line-height:1;
    letter-spacing:-.03em!important;
  }

  .site-header.menu-open .header-nav a:nth-child(2){
    color:var(--gold);
  }

  body.mobile-nav-open{
    overflow:hidden!important;
  }

  /* ---------- GLOBAL TYPOGRAPHY / SAFE WIDTH ---------- */
  .eyebrow{
    font-size:7px!important;
    line-height:1.45!important;
    letter-spacing:.14em!important;
    white-space:normal!important;
  }

  h1,h2,h3,
  .sans,.serif,.script{
    max-width:100%;
    overflow-wrap:normal;
    word-break:normal;
  }

  /* ---------- HERO ---------- */
  .hero--with-person{
    min-height:auto!important;
    height:auto!important;
    padding:94px var(--pad) 28px!important;
    display:block!important;
    overflow:hidden!important;
  }

  .hero-meta{
    position:relative!important;
    z-index:8;
    margin-bottom:44px!important;
  }

  .hero-stage{
    position:relative!important;
    z-index:8;
    min-height:390px!important;
    display:flex!important;
    align-items:flex-start!important;
  }

  .hero-title--v45{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .hero-v45__prefix{
    display:block!important;
    margin:0 0 8px!important;
    font-size:10px!important;
    letter-spacing:.14em!important;
  }

  .hero-v45__main{
    display:block!important;
    font-size:clamp(58px,18.4vw,78px)!important;
    line-height:.82!important;
    letter-spacing:-.055em!important;
    white-space:nowrap!important;
  }

  .hero-v45__defense{
    display:block!important;
    margin:.18em 0 0 10vw!important;
    font-size:clamp(42px,12.8vw,58px)!important;
    line-height:.90!important;
    transform:none!important;
    white-space:nowrap!important;
  }

  .hero-v45__place{
    display:flex!important;
    align-items:baseline!important;
    gap:8px!important;
    margin-top:.28em!important;
  }

  .hero-v45__in{
    font-size:clamp(30px,8vw,38px)!important;
  }

  .hero-v45__munich{
    font-size:clamp(49px,15.4vw,68px)!important;
    line-height:.84!important;
    white-space:nowrap!important;
  }

  .hero-person{
    top:132px!important;
    right:-31vw!important;
    width:104vw!important;
    height:500px!important;
    opacity:.42!important;
    transform:none!important;
  }

  .hero-person img{
    transform:scale(1.12)!important;
    object-position:center 20%!important;
  }

  .hero-bottom{
    position:relative!important;
    z-index:9;
    display:block!important;
    margin-top:20px!important;
  }

  .hero-seo-copy{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 20px!important;
    font-size:11px!important;
    line-height:1.62!important;
  }

  .hero-actions{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }

  .hero-actions a{
    width:100%!important;
    min-height:48px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    padding:12px 14px!important;
    border-left:0!important;
    border-top:1px solid rgba(176,138,75,.32)!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  /* ---------- PORTRAIT / PERSONAL BRAND ---------- */
  .portrait-impact{
    min-height:auto!important;
    height:auto!important;
    overflow:hidden!important;
  }

  .portrait-impact__image{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:64svh!important;
    min-height:480px!important;
    clip-path:none!important;
  }

  .portrait-impact__image img{
    transform:none!important;
    object-position:58% 20%!important;
  }

  .portrait-impact__copy{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:auto!important;
    padding:42px var(--pad) 0!important;
    background:#070707!important;
  }

  .portrait-brand-v3{
    width:100%!important;
    max-width:100%!important;
  }

  .portrait-brand-v3__name{
    font-size:clamp(60px,18vw,78px)!important;
    line-height:.84!important;
  }

  .portrait-brand-v3__role{
    margin-top:16px!important;
    font-size:10px!important;
    letter-spacing:.12em!important;
  }

  .portrait-brand-v3__statement{
    margin-top:32px!important;
    font-size:clamp(31px,9vw,42px)!important;
    line-height:1.03!important;
  }

  .portrait-brand-v3__rightword,
  .portrait-brand-v3__rightmeta{
    display:none!important;
  }

  .portrait-brand-contact{
    position:relative!important;
    inset:auto!important;
    width:calc(100% + (var(--pad) * 2))!important;
    margin:42px calc(var(--pad) * -1) 0!important;
    display:block!important;
    transform:none!important;
  }

  .portrait-brand-contact__identity{
    min-height:auto!important;
    padding:18px var(--pad)!important;
  }

  .portrait-brand-contact__links{
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .portrait-brand-contact__links a{
    min-height:58px!important;
    padding:13px var(--pad)!important;
    border-left:0!important;
    border-top:1px solid rgba(176,138,75,.27)!important;
    transform:none!important;
  }

  .portrait-impact__footer{
    padding:18px 0 22px!important;
    gap:12px!important;
  }

  /* ---------- INVESTIGATION ---------- */
  .investigation-intro--state{
    min-height:auto!important;
    padding:86px var(--pad) 72px!important;
    overflow:hidden!important;
  }

  .investigation-intro__inner{
    width:100%!important;
  }

  .investigation-state-title{
    width:100%!important;
    margin:0!important;
  }

  .investigation-state-title > .sans{
    display:block!important;
    font-size:clamp(48px,14vw,64px)!important;
    line-height:.85!important;
    white-space:normal!important;
  }

  .investigation-state-title > .script{
    display:block!important;
    margin:.22em 0 0 7vw!important;
    font-size:clamp(38px,10.8vw,50px)!important;
    line-height:.95!important;
  }

  .investigation-state-copy{
    width:100%!important;
    max-width:100%!important;
    margin:42px 0 0!important;
  }

  .investigation-state-copy p{
    font-size:13px!important;
    line-height:1.65!important;
  }

  .investigation-stop{
    min-height:700px!important;
    height:auto!important;
    padding:90px var(--pad) 0!important;
  }

  .investigation-stop__word{
    font-size:clamp(110px,35vw,150px)!important;
    line-height:.75!important;
    white-space:nowrap!important;
    transform:none;
  }

  .investigation-stop__sub{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    margin:32px 0 0!important;
    font-size:clamp(24px,7.5vw,34px)!important;
    line-height:1.02!important;
    transform:none!important;
  }

  .investigation-stop__contact{
    position:relative!important;
    inset:auto!important;
    width:calc(100% + (var(--pad) * 2))!important;
    margin:48px calc(var(--pad) * -1) 0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    transform:none!important;
  }

  .investigation-stop__contact > *{
    min-height:58px!important;
    padding:13px var(--pad)!important;
    border-left:0!important;
    border-top:1px solid rgba(176,138,75,.28)!important;
  }

  .investigation-step{
    min-height:auto!important;
    padding:74px var(--pad)!important;
    display:block!important;
    overflow:hidden!important;
  }

  .investigation-step__no{
    margin-bottom:24px!important;
  }

  .investigation-step h3{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(56px,17vw,76px)!important;
    line-height:.84!important;
    white-space:normal!important;
  }

  .investigation-step h3 .script,
  .investigation-contact-title .script{
    display:block!important;
    margin:.16em 0 0 7vw!important;
    font-size:.55em!important;
    line-height:1!important;
  }

  .investigation-step p{
    width:100%!important;
    max-width:100%!important;
    margin:30px 0 0!important;
    font-size:13px!important;
    line-height:1.65!important;
  }

  .investigation-step__links{
    width:100%!important;
    margin-top:30px!important;
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .investigation-step__links a{
    min-height:52px!important;
    padding:12px 14px!important;
    white-space:normal!important;
  }

  /* ---------- CONTACT RIBBONS ---------- */
  .contact-ribbon{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
  }

  .contact-ribbon__label{
    display:none!important;
  }

  .contact-ribbon a{
    min-height:54px!important;
    padding:12px var(--pad)!important;
    border-left:0!important;
    border-bottom:1px solid #292929!important;
    transform:none!important;
  }

  .contact-ribbon__urgent{
    grid-column:auto!important;
  }

  /* ---------- EXISTENCE / IMPACT ---------- */
  .impact--existence,
  .impact{
    min-height:auto!important;
    height:auto!important;
    padding:86px var(--pad)!important;
    overflow:hidden!important;
  }

  .impact-title{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
  }

  .impact-title span{
    display:block!important;
    font-size:clamp(58px,17vw,76px)!important;
    line-height:.84!important;
    white-space:normal!important;
  }

  .impact-existence__truth,
  .impact-copy,
  .impact-copy--strong{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:100%!important;
    margin:40px 0 0!important;
  }

  .impact-existence__truth .serif{
    font-size:clamp(34px,9.6vw,44px)!important;
    line-height:1!important;
  }

  .impact-existence__stakes{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    margin-top:42px!important;
    transform:none!important;
  }

  /* ---------- BOOM INTERLUDE ---------- */
  .boom-section{
    min-height:auto!important;
    height:auto!important;
    padding:96px var(--pad)!important;
    overflow:hidden!important;
  }

  .boom-section__title{
    width:100%!important;
  }

  .boom-section__title span{
    display:block!important;
    font-size:clamp(60px,17vw,78px)!important;
    line-height:.84!important;
  }

  .boom-section__title .boom-b,
  .boom-section__title .serif{
    margin-left:7vw!important;
    font-size:clamp(42px,11.8vw,54px)!important;
  }

  .boom-section__micro{
    width:100%!important;
    margin:40px 0 0!important;
    font-size:12px!important;
    line-height:1.6!important;
  }

  .velocity-word{
    font-size:31vw!important;
    opacity:.035!important;
    transform:none!important;
  }

  /* ---------- SOS ---------- */
  .ck-sos__layout{
    display:block!important;
  }

  .ck-sos__rail{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:auto!important;
    padding:82px var(--pad) 56px!important;
    border-right:0!important;
  }

  .ck-sos__rail-title{
    width:100%!important;
  }

  .ck-sos__rail-heavy{
    font-size:clamp(64px,18vw,80px)!important;
    line-height:.84!important;
  }

  .ck-sos__rail-script{
    margin-left:8vw!important;
    font-size:clamp(42px,12vw,55px)!important;
    line-height:.95!important;
  }

  .ck-sos__rail-contact{
    margin-top:32px!important;
  }

  .ck-sos__story{
    min-height:auto!important;
    height:auto!important;
    padding:76px var(--pad)!important;
    overflow:hidden!important;
  }

  .ck-sos__headline,
  .ck-sos__headline--single{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(58px,17vw,76px)!important;
    line-height:.84!important;
    white-space:normal!important;
  }

  .ck-sos__italic{
    display:block!important;
    margin:.16em 0 0 7vw!important;
    font-size:.58em!important;
    line-height:1!important;
  }

  .ck-sos__copy{
    width:100%!important;
    max-width:100%!important;
    margin-top:28px!important;
    font-size:13px!important;
    line-height:1.65!important;
  }

  .ck-sos__story a{
    white-space:normal!important;
  }

  /* ---------- DEFENSE GOALS ---------- */
  .defense-goals__intro{
    min-height:auto!important;
    padding:88px var(--pad)!important;
  }

  .defense-goals__intro-title .sans{
    font-size:clamp(58px,17vw,76px)!important;
    line-height:.84!important;
  }

  .defense-goals__intro-title .serif{
    margin:.18em 0 0 7vw!important;
    font-size:clamp(39px,11vw,50px)!important;
    line-height:.95!important;
  }

  .defense-goals__intro-copy{
    width:100%!important;
    max-width:100%!important;
    margin:38px 0 0!important;
  }

  .defense-goal{
    min-height:auto!important;
    padding:76px var(--pad)!important;
    overflow:hidden!important;
  }

  .defense-goal h3{
    font-size:clamp(58px,17vw,76px)!important;
    line-height:.84!important;
    white-space:normal!important;
  }

  .defense-goal__script{
    display:block!important;
    margin:.17em 0 0 7vw!important;
    font-size:clamp(35px,10vw,46px)!important;
    line-height:1!important;
  }

  .defense-goal__copy{
    width:100%!important;
    max-width:100%!important;
    margin-top:28px!important;
  }

  .defense-goal__link{
    display:inline-flex!important;
    margin-top:24px!important;
    white-space:normal!important;
  }

  /* ---------- PRACTICE AREAS ---------- */
  .practice-intro{
    padding:86px var(--pad) 52px!important;
  }

  .practice-intro h2{
    font-size:clamp(56px,16vw,74px)!important;
    line-height:.84!important;
  }

  .practice-intro h2 .serif{
    display:block!important;
    margin:.18em 0 0 6vw!important;
    font-size:.65em!important;
  }

  .practice-row{
    grid-template-columns:28px minmax(0,1fr) 28px!important;
    gap:10px!important;
    min-height:112px!important;
    padding:18px var(--pad)!important;
    transform:none!important;
  }

  .practice-row h3{
    min-width:0!important;
    font-size:clamp(29px,9vw,42px)!important;
    line-height:.94!important;
    white-space:normal!important;
    transform:none!important;
  }

  .practice-desc{
    display:none!important;
  }

  .practice-arrow{
    font-size:18px!important;
  }

  /* ---------- WHAT I DO ---------- */
  .mandate-boom{
    display:block!important;
    min-height:auto!important;
    padding:86px var(--pad) 0!important;
    overflow:hidden!important;
  }

  .mandate-boom__head h2 .sans{
    font-size:clamp(58px,17vw,76px)!important;
    line-height:.84!important;
  }

  .mandate-boom__head h2 .serif{
    margin:.20em 0 0 7vw!important;
    max-width:86%!important;
    font-size:clamp(38px,10.8vw,50px)!important;
    line-height:.98!important;
  }

  .mandate-boom__list{
    margin-top:52px!important;
  }

  .mandate-boom__row,
  .mandate-boom__row--long{
    grid-template-columns:28px minmax(0,1fr)!important;
    gap:10px 12px!important;
    min-height:auto!important;
    padding:22px 0!important;
    transform:none!important;
  }

  .mandate-boom__row h3,
  .mandate-boom__row--long h3{
    min-width:0!important;
    font-size:clamp(31px,9.5vw,44px)!important;
    line-height:.94!important;
    white-space:normal!important;
  }

  .mandate-boom__row p{
    grid-column:2!important;
    width:100%!important;
    max-width:100%!important;
    padding-left:0!important;
    font-size:11px!important;
    line-height:1.55!important;
  }

  .mandate-boom__contact{
    grid-template-columns:1fr!important;
    margin:54px calc(var(--pad) * -1) 0!important;
  }

  .mandate-boom__contact > div,
  .mandate-boom__contact > a{
    min-height:58px!important;
    padding:13px var(--pad)!important;
    border-right:0!important;
    border-bottom:1px solid rgba(176,138,75,.24)!important;
  }

  .mandate-boom__contact strong{
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  /* ---------- REVIEWS ---------- */
  .reviews-head--boom{
    min-height:auto!important;
    padding:86px var(--pad) 56px!important;
    display:block!important;
  }

  .reviews-head__meta{
    display:block!important;
  }

  .reviews-head__index{
    margin-top:18px!important;
    font-size:48px!important;
  }

  .reviews-head__main h2{
    width:100%!important;
    margin-top:28px!important;
  }

  .reviews-head__main h2 .sans,
  .reviews-head--boom .r1,
  .reviews-head--boom .r3{
    font-size:clamp(57px,16.5vw,74px)!important;
    line-height:.84!important;
  }

  .reviews-head--boom .r2{
    margin:.18em 0 0 7vw!important;
    font-size:clamp(37px,10.5vw,48px)!important;
    line-height:.96!important;
  }

  .reviews-head__seo{
    width:100%!important;
    max-width:100%!important;
    margin:34px 0 0!important;
    font-size:12px!important;
    line-height:1.6!important;
  }

  .reviews-stage{
    height:auto!important;
    min-height:0!important;
    padding:42px var(--pad) 78px!important;
    overflow:visible!important;
  }

  .reviews-stage__topline{
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:12px!important;
    margin-bottom:24px!important;
    pointer-events:auto!important;
  }

  .reviews-stage .review-track{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:14px!important;
    padding:0!important;
    transform:none!important;
  }

  .reviews-stage .review-card,
  .review-card{
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:auto!important;
    max-height:none!important;
    margin:0!important;
    padding:25px 22px!important;
    transform:none!important;
  }

  .reviews-stage .review-card .headline{
    font-size:clamp(28px,8.4vw,38px)!important;
    line-height:1.02!important;
  }

  .reviews-stage .review-card p:not(.headline){
    font-size:12px!important;
    line-height:1.62!important;
  }

  /* ---------- OFFICE / MUNICH ---------- */
  .office{
    overflow:hidden!important;
  }

  .office-head{
    padding:84px var(--pad) 50px!important;
    display:block!important;
  }

  .office-head h2,
  .office h2{
    font-size:clamp(57px,16.5vw,74px)!important;
    line-height:.84!important;
  }

  .collage{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-template-rows:auto!important;
    gap:0!important;
    height:auto!important;
  }

  .frame.one,
  .frame.two,
  .frame.three,
  .office-quote{
    grid-column:1!important;
    grid-row:auto!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:0!important;
    transform:none!important;
  }

  .frame.one{height:58svh!important;min-height:430px!important;}
  .frame.two{height:38svh!important;min-height:280px!important;}
  .frame.three{height:44svh!important;min-height:330px!important;}

  .frame img{
    transform:none!important;
  }

  .office-quote{
    padding:48px var(--pad)!important;
    min-height:auto!important;
  }

  .office-quote,
  .office-quote *{
    max-width:100%!important;
  }

  .no-surrender-subline--stacked span{
    white-space:normal!important;
  }

  /* ---------- DEEP LAW ---------- */
  .deep-law{
    padding:84px var(--pad)!important;
  }

  .deep-law__head{
    display:block!important;
    margin-bottom:48px!important;
  }

  .deep-law__head h2{
    font-size:clamp(55px,16vw,72px)!important;
    line-height:.84!important;
  }

  .deep-law__head h2 .serif,
  .deep-law__head h2 .script{
    display:block!important;
    margin:.16em 0 0 7vw!important;
    font-size:.66em!important;
  }

  .deep-law__grid{
    grid-template-columns:1fr!important;
  }

  .deep-law__card,
  .deep-law__card:nth-child(even){
    padding:30px 0!important;
    border-left:0!important;
  }

  /* ---------- ANSWERS / FAQ ---------- */
  .answer-boom{
    padding:84px var(--pad) 0!important;
    overflow:hidden!important;
  }

  .answer-boom__head{
    display:block!important;
    padding-bottom:52px!important;
  }

  .answer-boom__head h2 .sans{
    font-size:clamp(53px,15.5vw,70px)!important;
    line-height:.86!important;
  }

  .answer-boom__head h2 .serif{
    margin:.20em 0 0 7vw!important;
    font-size:clamp(39px,11.5vw,52px)!important;
    line-height:.96!important;
  }

  .answer-boom__head > p{
    width:100%!important;
    max-width:100%!important;
    margin:34px 0 0!important;
    font-size:12px!important;
    line-height:1.62!important;
  }

  .answer-boom__head-contact{
    margin-top:28px!important;
  }

  .answer-boom__question{
    grid-template-columns:26px minmax(0,1fr) 26px!important;
    gap:9px!important;
    min-height:92px!important;
    padding:16px 0!important;
  }

  .answer-boom__qtext{
    min-width:0!important;
    font-size:clamp(29px,8.5vw,40px)!important;
    line-height:1.02!important;
    overflow-wrap:anywhere;
  }

  .answer-boom__plus{
    font-size:26px!important;
  }

  .answer-boom__answer{
    width:auto!important;
    max-width:100%!important;
    margin-left:35px!important;
    padding:0 0 28px!important;
    font-size:12px!important;
    line-height:1.65!important;
  }

  .answer-boom__contact{
    grid-template-columns:1fr!important;
    margin-top:50px!important;
  }

  .answer-boom__contact > div,
  .answer-boom__contact > a{
    min-height:58px!important;
    padding:13px var(--pad)!important;
    border-right:0!important;
    border-bottom:1px solid rgba(176,138,75,.24)!important;
  }

  .answer-boom__contact strong{
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  /* ---------- KNOWLEDGE ---------- */
  .knowledge-network{
    padding:84px var(--pad)!important;
    overflow:hidden!important;
  }

  .knowledge-network__head{
    display:block!important;
    margin-bottom:46px!important;
  }

  .knowledge-network__head h2{
    font-size:clamp(54px,16vw,72px)!important;
    line-height:.84!important;
  }

  .knowledge-network__head h2 .serif,
  .knowledge-network__head h2 .script{
    display:block!important;
    margin:.18em 0 0 7vw!important;
    font-size:.66em!important;
  }

  .knowledge-network__grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:auto!important;
    gap:12px!important;
    min-height:0!important;
  }

  .knowledge-cluster,
  .knowledge-cluster--offenses{
    grid-column:auto!important;
    grid-row:auto!important;
    width:100%!important;
    min-width:0!important;
    min-height:auto!important;
    height:auto!important;
    padding:26px 22px!important;
    transform:none!important;
  }

  .knowledge-cluster h3,
  .knowledge-cluster--offenses h3{
    font-size:clamp(42px,12.5vw,56px)!important;
    line-height:.88!important;
    white-space:normal!important;
  }

  .knowledge-cluster > p{
    font-size:clamp(25px,7.5vw,34px)!important;
    line-height:1!important;
  }

  .knowledge-cluster__links,
  .knowledge-cluster__links--offenses{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
    margin-top:26px!important;
  }

  .knowledge-cluster__links a,
  .knowledge-cluster__links--offenses a{
    min-height:44px!important;
    display:flex!important;
    align-items:center!important;
    padding:9px 0!important;
    white-space:normal!important;
  }

  /* ---------- FINAL CONTACT ---------- */
  .contact-final{
    min-height:auto!important;
    padding:88px var(--pad) 54px!important;
    overflow:hidden!important;
  }

  .contact-final__title .sans{
    font-size:clamp(76px,23vw,98px)!important;
    line-height:.82!important;
  }

  .contact-final__title .serif{
    display:block!important;
    margin:.16em 0 0 5vw!important;
    max-width:90%!important;
    font-size:clamp(35px,10vw,46px)!important;
    line-height:1!important;
  }

  .contact-final__numbers{
    grid-template-columns:1fr!important;
    width:100%!important;
    margin-top:48px!important;
    transform:none!important;
  }

  .contact-final__numbers a{
    width:100%!important;
    min-width:0!important;
    padding:22px 0!important;
    border-left:0!important;
  }

  .contact-final__numbers a + a{
    padding-left:0!important;
    border-left:0!important;
    border-top:1px solid rgba(176,138,75,.5)!important;
  }

  .contact-final__numbers strong{
    font-size:clamp(28px,8.7vw,40px)!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  .contact-final__bottom{
    display:block!important;
    margin-top:42px!important;
  }

  .contact-final__actions{
    margin-top:22px!important;
    text-align:left!important;
  }

  /* ---------- FOOTER ---------- */
  .site-credits{
    display:block!important;
    padding:18px var(--pad)!important;
  }

  .site-credits__memberships,
  .site-credits__legal{
    width:100%!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:7px 11px!important;
  }

  .site-credits__legal{
    margin-top:12px!important;
  }

  /* ---------- DECORATIVE DESKTOP LAYERS ---------- */
  .shock-line{
    display:none!important;
  }

  .flash-cut{
    display:none!important;
  }

  .hero-vertical,
  .investigation-state-ghost,
  .investigation-step__ghost,
  .impact-existence__stakes--ghost,
  .defense-goal__ghost,
  .ck-sos__ghost,
  .mandate-boom__ghost,
  .answer-boom__ghost,
  .knowledge-network__ghost,
  .contact-final__ghost{
    pointer-events:none!important;
  }
}

/* Extra-small phones */
@media (max-width:480px){
  :root{--pad:17px;}

  .header-phone{
    display:none!important;
  }

  .header-inner{
    grid-template-columns:1fr auto!important;
  }

  .hero-v45__main{
    font-size:17.5vw!important;
  }

  .hero-v45__defense{
    font-size:12.3vw!important;
    margin-left:5vw!important;
  }

  .hero-v45__munich{
    font-size:14.8vw!important;
  }

  .hero-person{
    right:-37vw!important;
    width:112vw!important;
  }

  .portrait-brand-v3__name{
    font-size:17vw!important;
  }

  .investigation-state-title > .sans,
  .impact-title span,
  .boom-section__title span,
  .ck-sos__rail-heavy,
  .ck-sos__headline,
  .ck-sos__headline--single,
  .defense-goals__intro-title .sans,
  .defense-goal h3,
  .practice-intro h2,
  .mandate-boom__head h2 .sans,
  .reviews-head__main h2 .sans,
  .office-head h2,
  .deep-law__head h2,
  .knowledge-network__head h2{
    font-size:15.2vw!important;
  }

  .contact-final__title .sans{
    font-size:22vw!important;
  }
}

/* ==========================================================
   MOBILE REFINEMENT PASS — screenshot fixes only
   ========================================================== */
@media (max-width:900px){

  /* Sticky instead of fixed: header keeps its own space and no longer
     sits on top of section headlines while scrolling. */
  .site-header{
    position:sticky!important;
    top:0!important;
    left:auto!important;
    width:100%!important;
  }

  /* STOP: remove crossing gold line on mobile and restore strong contrast. */
  .investigation-stop__line{
    display:none!important;
  }

  .investigation-stop{
    min-height:auto!important;
    padding:96px var(--pad) 0!important;
  }

  .investigation-stop__word{
    margin:0 auto!important;
  }

  .investigation-stop__sub{
    margin:42px auto 0!important;
    max-width:310px!important;
    font-size:clamp(21px,6.8vw,29px)!important;
    line-height:1.04!important;
    letter-spacing:.10em!important;
  }

  .investigation-stop__contact{
    margin-top:56px!important;
    background:#0b0b0b!important;
    border-color:rgba(176,138,75,.62)!important;
  }

  .investigation-stop__contact a{
    background:#0b0b0b!important;
    opacity:1!important;
    visibility:visible!important;
  }

  .investigation-stop__contact span{
    color:var(--gold)!important;
    opacity:1!important;
  }

  .investigation-stop__contact strong{
    color:#fff!important;
    opacity:1!important;
  }

  .investigation-stop__contact-emergency{
    background:var(--gold)!important;
  }

  .investigation-stop__contact-emergency span,
  .investigation-stop__contact-emergency strong{
    color:#0a0908!important;
  }

  /* Investigation step 03: one of the few words too long for 402px. */
  .investigation-step--contact h3{
    font-size:clamp(43px,12.8vw,58px)!important;
    letter-spacing:-.055em!important;
  }

  .investigation-step--contact h3 .script{
    font-size:.62em!important;
    margin-left:7vw!important;
  }

  /* Freedom goal: long compound word gets its own mobile scale. */
  .defense-goal--freedom h3{
    font-size:clamp(42px,12.2vw,56px)!important;
    line-height:.88!important;
    letter-spacing:-.055em!important;
  }

  .defense-goal--freedom .defense-goal__script{
    font-size:clamp(31px,8.8vw,40px)!important;
    max-width:94%!important;
  }

  /* Practice headline: retain BOOM but fit AUSSCHLIESSLICH completely. */
  .practice-intro h2 .p1{
    font-size:clamp(47px,12.7vw,57px)!important;
    line-height:.88!important;
    letter-spacing:-.055em!important;
    white-space:nowrap!important;
  }

  .practice-intro h2 .p2{
    margin-left:7vw!important;
    font-size:clamp(37px,10.3vw,46px)!important;
  }

  /* Practice rows: allow the two typographic parts to wrap deliberately,
     never clip outside the viewport. */
  .practice-row{
    overflow:hidden!important;
  }

  .practice-row h3{
    display:flex!important;
    align-items:baseline!important;
    flex-wrap:wrap!important;
    column-gap:.08em!important;
    row-gap:0!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  .practice-row h3 .sans,
  .practice-row h3 .alt{
    max-width:100%!important;
  }

  .practice-row h3 .alt{
    margin-left:0!important;
  }

  /* Longest practice labels need individual mobile scales. */
  .practice-row[href*="drogenstrafrecht"] h3{
    font-size:clamp(25px,7.25vw,32px)!important;
    letter-spacing:-.045em!important;
  }

  .practice-row[href*="auslieferungsrecht"] h3{
    font-size:clamp(27px,7.8vw,35px)!important;
  }

  .practice-row[href*="allgemeines-strafrecht"] h3{
    font-size:clamp(27px,7.8vw,35px)!important;
  }

  .practice-row[href*="strafvollstreckung"] h3{
    font-size:clamp(28px,8.1vw,36px)!important;
  }

  .practice-row[href*="untersuchungshaft"] h3{
    font-size:clamp(28px,8.2vw,37px)!important;
  }

  /* Give every major section a little breathing room below sticky header. */
  .investigation-step,
  .defense-goal,
  .practice-intro,
  .mandate-boom,
  .reviews-head--boom,
  .office-head,
  .deep-law,
  .answer-boom,
  .knowledge-network,
  .contact-final{
    scroll-margin-top:76px!important;
  }
}

@media (max-width:480px){

  .investigation-step--contact h3{
    font-size:12.25vw!important;
  }

  .defense-goal--freedom h3{
    font-size:11.65vw!important;
  }

  .practice-intro h2 .p1{
    font-size:12.1vw!important;
  }

  .practice-row[href*="drogenstrafrecht"] h3{
    font-size:6.95vw!important;
  }
}

/* ==========================================================
   MOBILE V3 — REAL MOBILE COMPOSITION
   Hero is no longer a reduced desktop hero.
   ========================================================== */
@media (max-width:900px){

  /* Header remains dark and visually separate at every scroll state. */
  .site-header,
  .site-header.is-scrolled,
  .site-header.scrolled{
    position:sticky!important;
    top:0!important;
    height:64px!important;
    background:#080808!important;
    color:#fff!important;
    border-bottom:1px solid rgba(176,138,75,.24)!important;
  }

  .site-header .header-brand,
  .site-header .menu-button,
  .site-header .header-phone,
  .site-header .header-phone strong{
    color:#fff!important;
  }

  /* ---------- COMPLETELY RECOMPOSED MOBILE HERO ---------- */
  .hero--with-person{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    height:auto!important;
    padding:0!important;
    background:#070707!important;
    overflow:hidden!important;
  }

  .hero-meta{
    order:1!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    margin:0!important;
    padding:28px var(--pad) 20px!important;
    min-height:0!important;
    background:#070707!important;
  }

  .hero-meta span:first-child{
    display:block!important;
    color:var(--gold)!important;
  }

  .hero-meta span:last-child{
    display:none!important;
  }

  .hero-stage{
    order:2!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0 var(--pad) 30px!important;
    display:block!important;
    background:#070707!important;
    z-index:5!important;
  }

  .hero-title--v45{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }

  .hero-v45__prefix{
    display:block!important;
    margin:0 0 7px!important;
    font-size:10px!important;
    line-height:1!important;
    letter-spacing:.13em!important;
    color:var(--gold)!important;
  }

  .hero-v45__main{
    display:block!important;
    width:100%!important;
    font-size:clamp(58px,18.2vw,76px)!important;
    line-height:.86!important;
    letter-spacing:-.06em!important;
    white-space:nowrap!important;
    color:#fff!important;
  }

  .hero-v45__defense{
    display:block!important;
    width:max-content!important;
    max-width:96%!important;
    margin:.15em 0 0 5vw!important;
    font-size:clamp(41px,12.2vw,53px)!important;
    line-height:.94!important;
    white-space:nowrap!important;
    color:var(--gold)!important;
    transform:none!important;
  }

  .hero-v45__place{
    display:flex!important;
    align-items:baseline!important;
    justify-content:flex-start!important;
    gap:7px!important;
    width:100%!important;
    margin:.12em 0 0 8vw!important;
  }

  .hero-v45__in{
    flex:0 0 auto!important;
    font-size:clamp(30px,8.5vw,37px)!important;
    line-height:1!important;
    color:var(--gold)!important;
  }

  .hero-v45__munich{
    flex:0 0 auto!important;
    font-size:clamp(50px,14.8vw,63px)!important;
    line-height:.88!important;
    letter-spacing:-.055em!important;
    white-space:nowrap!important;
    color:#fff!important;
  }

  /* Portrait becomes its own editorial block — face fully visible. */
  .hero-person{
    order:3!important;
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    left:auto!important;
    width:100%!important;
    height:clamp(500px,135vw,600px)!important;
    margin:0!important;
    opacity:1!important;
    overflow:hidden!important;
    transform:none!important;
    z-index:4!important;
    background:#161616!important;
  }

  .hero-person img{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:56% 25%!important;
    transform:none!important;
    filter:none!important;
  }

  .hero-person__shade{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    background:
      linear-gradient(180deg,rgba(0,0,0,.04) 0%,rgba(0,0,0,0) 62%,rgba(0,0,0,.34) 100%)!important;
  }

  .hero-person__tag{
    display:none!important;
  }

  .hero-bottom{
    order:4!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    margin:0!important;
    padding:28px var(--pad) 0!important;
    background:#070707!important;
    z-index:5!important;
  }

  .hero-seo-copy{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 26px!important;
    color:#d7d4cf!important;
    font-size:11.5px!important;
    line-height:1.62!important;
  }

  .hero-actions{
    width:calc(100% + (var(--pad) * 2))!important;
    margin:0 calc(var(--pad) * -1)!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    background:#0d0d0d!important;
  }

  .hero-actions a{
    width:100%!important;
    min-height:58px!important;
    padding:14px var(--pad)!important;
    display:flex!important;
    align-items:center!important;
    border:0!important;
    border-top:1px solid rgba(176,138,75,.30)!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:.08em!important;
  }

  .hero-actions .hero-emergency{
    background:var(--gold)!important;
    color:#090909!important;
  }

  .hero-vertical{
    display:none!important;
  }

  /* The next section no longer repeats the exact same portrait on mobile. */
  .portrait-impact{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    background:#080808!important;
  }

  .portrait-impact__image{
    display:none!important;
  }

  .portrait-impact__copy{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    min-height:0!important;
    padding:72px var(--pad) 0!important;
    background:#080808!important;
  }

  .portrait-impact__eyebrow{
    margin-bottom:18px!important;
  }

  .portrait-brand-v3__name{
    font-size:clamp(60px,17.5vw,76px)!important;
    line-height:.86!important;
    letter-spacing:-.055em!important;
  }

  .portrait-brand-v3__role{
    margin-top:14px!important;
  }

  .portrait-brand-v3__statement{
    margin-top:38px!important;
    font-size:clamp(31px,9.4vw,41px)!important;
    line-height:1.04!important;
  }

  .portrait-impact__footer{
    padding-top:24px!important;
  }

  /* No giant blank lead-ins created by desktop min-heights. */
  .investigation,
  .investigation-intro--state,
  .impact,
  .boom-section,
  .defense-goals,
  .practice,
  .reviews,
  .office,
  .deep-law,
  .answer-boom,
  .knowledge-network{
    margin-top:0!important;
  }
}

@media (max-width:480px){

  .hero-v45__main{
    font-size:17.3vw!important;
  }

  .hero-v45__defense{
    font-size:11.7vw!important;
    margin-left:3vw!important;
  }

  .hero-v45__place{
    margin-left:5vw!important;
  }

  .hero-v45__munich{
    font-size:14.2vw!important;
  }

  .hero-person{
    height:132vw!important;
    min-height:500px!important;
    max-height:560px!important;
  }

  .hero-person img{
    object-position:56% 23%!important;
  }
}

/* ==========================================================
   MOBILE V4 — PORTRAIT / STOP / CONTACT CLEANUP
   ========================================================== */
@media (max-width:900px){

  /* 1) Hero portrait: deliberate close crop.
     Face + crossed arms become the visual focus. */
  .hero-person{
    height:clamp(470px,122vw,545px)!important;
  }

  .hero-person img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:55% 31%!important;
    transform:scale(1.34)!important;
    transform-origin:55% 34%!important;
  }

  /* 2) STOP: mobile owns its own clean state.
     No leftover desktop opacity / transforms / scrub geometry. */
  .investigation-stop{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:620px!important;
    height:auto!important;
    padding:88px var(--pad) 56px!important;
    background:#070707!important;
    overflow:hidden!important;
  }

  .investigation-stop__line{
    display:none!important;
  }

  .investigation-stop__word{
    position:relative!important;
    inset:auto!important;
    margin:0!important;
    padding:0!important;
    font-size:clamp(112px,34vw,148px)!important;
    line-height:.76!important;
    color:#fff!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
  }

  .investigation-stop__sub{
    position:relative!important;
    inset:auto!important;
    width:auto!important;
    max-width:320px!important;
    margin:48px auto 0!important;
    padding:0!important;
    text-align:center!important;
    font-size:clamp(20px,6.3vw,27px)!important;
    line-height:1.08!important;
    letter-spacing:.095em!important;
    color:var(--gold)!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
  }

  /* Contact information is intentionally removed from STOP on mobile.
     The next step contains the direct contact CTAs. */
  .investigation-stop__contact{
    display:none!important;
  }

  /* 3a) Remove only the contact ribbon immediately before
     "Ein Vorwurf. ... Existenz". Other ribbons remain available. */
  .investigation + .contact-ribbon{
    display:none!important;
  }

  /* 3b) "Wenn es sofort zählt" should start cleanly with the headline,
     not another contact block. */
  .ck-sos__rail-contact{
    display:none!important;
  }

  .ck-sos__rail{
    padding-bottom:64px!important;
  }

  .ck-sos__rail-bottom{
    margin-top:36px!important;
  }
}

@media (max-width:480px){
  .hero-person{
    height:118vw!important;
    min-height:455px!important;
    max-height:520px!important;
  }

  .hero-person img{
    object-position:55% 30%!important;
    transform:scale(1.38)!important;
  }

  .investigation-stop{
    min-height:590px!important;
  }

  .investigation-stop__word{
    font-size:33vw!important;
  }

  .investigation-stop__sub{
    font-size:6.1vw!important;
  }
}

/* ==========================================================
   MOBILE V5 — HERO CLOSE CROP + REAL BOOM ANIMATION
   ========================================================== */
@media (max-width:900px){

  /* HERO: tighter editorial portrait — face + crossed arms only. */
  .hero-person{
    height:clamp(430px,108vw,485px)!important;
    background:#111!important;
  }

  .hero-person img{
    object-fit:cover!important;
    object-position:56% 34%!important;
    transform:scale(1.58)!important;
    transform-origin:56% 36%!important;
  }

  .hero-person__shade{
    background:
      linear-gradient(180deg,rgba(0,0,0,.03) 0%,rgba(0,0,0,0) 58%,rgba(0,0,0,.25) 100%)!important;
  }

  /* Hero itself gets a kinetic entrance. */
  .mobile-motion .hero-v45__prefix,
  .mobile-motion .hero-v45__main,
  .mobile-motion .hero-v45__defense,
  .mobile-motion .hero-v45__place{
    opacity:0;
  }

  .mobile-motion .hero-v45__prefix{
    transform:translate3d(-54px,0,0);
  }

  .mobile-motion .hero-v45__main{
    transform:translate3d(-14vw,0,0) scale(1.10);
  }

  .mobile-motion .hero-v45__defense{
    transform:translate3d(16vw,0,0) rotate(5deg)!important;
  }

  .mobile-motion .hero-v45__place{
    transform:translate3d(-10vw,22px,0);
  }

  .mobile-motion .hero-person{
    clip-path:inset(0 0 100% 0);
  }

  .mobile-motion .mobile-hero-live .hero-v45__prefix{
    animation:mHeroPrefix .55s cubic-bezier(.18,.84,.22,1) .05s forwards;
  }

  .mobile-motion .mobile-hero-live .hero-v45__main{
    animation:mHeroMain .78s cubic-bezier(.16,.9,.19,1) .13s forwards;
  }

  .mobile-motion .mobile-hero-live .hero-v45__defense{
    animation:mHeroDefense .82s cubic-bezier(.16,.9,.19,1) .27s forwards;
  }

  .mobile-motion .mobile-hero-live .hero-v45__place{
    animation:mHeroPlace .68s cubic-bezier(.16,.9,.19,1) .39s forwards;
  }

  .mobile-motion .mobile-hero-live .hero-person{
    animation:mHeroImage 1.0s cubic-bezier(.18,.82,.16,1) .48s forwards;
  }

  /* Strong section entry states. */
  .mobile-motion .m-boom-left,
  .mobile-motion .m-boom-right,
  .mobile-motion .m-row-left,
  .mobile-motion .m-row-right,
  .mobile-motion .m-stop-boom,
  .mobile-motion .m-stop-sub,
  .mobile-motion .m-image-reveal{
    transition:
      transform .82s cubic-bezier(.16,.9,.19,1),
      opacity .72s ease,
      filter .82s ease,
      clip-path .95s cubic-bezier(.18,.82,.16,1);
  }

  .mobile-motion .m-boom-left{
    opacity:.04;
    transform:translate3d(-19vw,0,0) scale(1.08);
  }

  .mobile-motion .m-boom-right{
    opacity:.04;
    transform:translate3d(18vw,0,0) rotate(4deg);
  }

  .mobile-motion .m-row-left{
    opacity:.08;
    transform:translate3d(-11vw,0,0);
  }

  .mobile-motion .m-row-right{
    opacity:.08;
    transform:translate3d(11vw,0,0);
  }

  .mobile-motion .m-stop-boom{
    opacity:.02!important;
    filter:blur(18px)!important;
    transform:scale(.52)!important;
  }

  .mobile-motion .m-stop-sub{
    opacity:0!important;
    transform:translate3d(0,32px,0)!important;
  }

  .mobile-motion .m-image-reveal{
    clip-path:inset(0 0 100% 0);
  }

  .mobile-motion .m-boom-left.m-in,
  .mobile-motion .m-boom-right.m-in,
  .mobile-motion .m-row-left.m-in,
  .mobile-motion .m-row-right.m-in{
    opacity:1!important;
    transform:none!important;
  }

  .mobile-motion .m-stop-boom.m-in{
    opacity:1!important;
    filter:blur(0)!important;
    transform:scale(1)!important;
  }

  .mobile-motion .m-stop-sub.m-in{
    opacity:1!important;
    transform:none!important;
    transition-delay:.13s;
  }

  .mobile-motion .m-image-reveal.m-in{
    clip-path:inset(0 0 0 0);
  }

  /* Alternate row timing adds rhythm without pinning. */
  .mobile-motion .m-row-right{
    transition-delay:.04s;
  }

  /* Prevent older !important mobile transforms from killing reveal classes. */
  .mobile-motion .practice-row.m-row-left,
  .mobile-motion .practice-row.m-row-right,
  .mobile-motion .mandate-boom__row.m-row-left,
  .mobile-motion .mandate-boom__row.m-row-right,
  .mobile-motion .review-card.m-row-left,
  .mobile-motion .review-card.m-row-right,
  .mobile-motion .knowledge-cluster.m-row-left,
  .mobile-motion .knowledge-cluster.m-row-right{
    transform:translate3d(var(--m-row-x,0),0,0)!important;
  }

  .mobile-motion .practice-row.m-row-left,
  .mobile-motion .mandate-boom__row.m-row-left,
  .mobile-motion .review-card.m-row-left,
  .mobile-motion .knowledge-cluster.m-row-left{
    --m-row-x:-11vw;
  }

  .mobile-motion .practice-row.m-row-right,
  .mobile-motion .mandate-boom__row.m-row-right,
  .mobile-motion .review-card.m-row-right,
  .mobile-motion .knowledge-cluster.m-row-right{
    --m-row-x:11vw;
  }

  .mobile-motion .practice-row.m-in,
  .mobile-motion .mandate-boom__row.m-in,
  .mobile-motion .review-card.m-in,
  .mobile-motion .knowledge-cluster.m-in{
    --m-row-x:0px;
    opacity:1!important;
  }
}

@media (max-width:480px){
  .hero-person{
    height:108vw!important;
    min-height:425px!important;
    max-height:470px!important;
  }

  .hero-person img{
    object-position:56% 35%!important;
    transform:scale(1.62)!important;
  }
}

@keyframes mHeroPrefix{
  to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes mHeroMain{
  to{opacity:1;transform:translate3d(0,0,0) scale(1);}
}
@keyframes mHeroDefense{
  to{opacity:1;transform:translate3d(0,0,0) rotate(0deg);}
}
@keyframes mHeroPlace{
  to{opacity:1;transform:translate3d(0,0,0);}
}
@keyframes mHeroImage{
  to{clip-path:inset(0 0 0 0);}
}

/* ==========================================================
   MOBILE V6 — PORTRAIT CROP + REAL FULLSCREEN NAV
   ========================================================== */
@media (max-width:900px){

  /* Portrait: show complete face + complete crossed-arm pose.
     Slightly less zoom, more vertical room. */
  .hero-person{
    height:clamp(500px,132vw,570px)!important;
    overflow:hidden!important;
  }

  .hero-person img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:55% 29%!important;
    transform:scale(1.34)!important;
    transform-origin:55% 31%!important;
  }

  /* Mobile nav becomes its own viewport layer.
     Header itself owns the stacking context, so nothing can bleed through. */
  .site-header{
    z-index:99990!important;
    isolation:isolate!important;
  }

  .site-header.menu-open{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100svh!important;
    min-height:100svh!important;
    background:#080808!important;
    overflow:hidden!important;
    z-index:99999!important;
  }

  .site-header.menu-open .header-inner{
    position:relative!important;
    z-index:3!important;
    height:64px!important;
    min-height:64px!important;
    background:#080808!important;
    border-bottom:1px solid rgba(176,138,75,.38)!important;
  }

  .site-header.menu-open .header-brand{
    color:#fff!important;
  }

  .site-header.menu-open .menu-button{
    color:#fff!important;
    border-color:rgba(255,255,255,.24)!important;
    background:transparent!important;
  }

  .site-header.menu-open .header-nav{
    position:absolute!important;
    inset:64px 0 0 0!important;
    z-index:2!important;
    width:100%!important;
    height:calc(100svh - 64px)!important;
    min-height:0!important;
    margin:0!important;
    padding:26px var(--pad) 42px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    background:#080808!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch;
  }

  .site-header.menu-open .header-nav a{
    position:relative!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    width:100%!important;
    min-height:72px!important;
    height:auto!important;
    margin:0!important;
    padding:4px 0!important;
    border:0!important;
    border-bottom:1px solid rgba(255,255,255,.14)!important;
    background:transparent!important;
    color:#fff!important;
    font-family:"Anton",Arial,sans-serif!important;
    font-size:clamp(34px,10.5vw,46px)!important;
    font-weight:400!important;
    line-height:.94!important;
    letter-spacing:-.035em!important;
    text-transform:uppercase!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    white-space:normal!important;
  }

  .site-header.menu-open .header-nav a:nth-child(2){
    color:var(--gold)!important;
  }

  .site-header.menu-open .header-nav a:last-child{
    border-bottom:0!important;
  }

  /* Hide the page completely behind the open navigation. */
  body.mobile-nav-open main,
  body.mobile-nav-open footer{
    visibility:hidden!important;
    pointer-events:none!important;
  }

  body.mobile-nav-open{
    overflow:hidden!important;
    background:#080808!important;
  }
}

@media (max-width:480px){
  .hero-person{
    height:128vw!important;
    min-height:500px!important;
    max-height:545px!important;
  }

  .hero-person img{
    object-position:55% 28%!important;
    transform:scale(1.36)!important;
  }

  .site-header.menu-open .header-nav a{
    min-height:68px!important;
    font-size:10vw!important;
  }
}

/* ==========================================================
   MOBILE V7 — TWO STRATEGIC CONTACT RIBBONS
   ========================================================== */

/* These two are intentionally mobile-only. Desktop remains unchanged. */
.mobile-inserted-ribbon{
  display:none;
}

@media (max-width:900px){
  .mobile-inserted-ribbon{
    display:grid!important;
    grid-template-columns:1fr!important;
    width:100%!important;
    background:#0b0b0b!important;
    border-top:1px solid rgba(176,138,75,.72)!important;
    border-bottom:1px solid rgba(176,138,75,.45)!important;
  }

  .mobile-inserted-ribbon .contact-ribbon__label{
    display:block!important;
    min-height:auto!important;
    padding:16px var(--pad) 14px!important;
    background:#0b0b0b!important;
  }

  .mobile-inserted-ribbon .contact-ribbon__label span{
    display:block!important;
    margin-bottom:5px!important;
    color:var(--gold)!important;
    font-size:7px!important;
    letter-spacing:.17em!important;
  }

  .mobile-inserted-ribbon .contact-ribbon__label strong{
    color:#fff!important;
    font-size:11px!important;
    line-height:1.2!important;
  }

  .mobile-inserted-ribbon > a{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    min-height:58px!important;
    padding:12px var(--pad)!important;
    border:0!important;
    border-top:1px solid rgba(255,255,255,.12)!important;
    background:#0b0b0b!important;
    color:#fff!important;
    transform:none!important;
  }

  .mobile-inserted-ribbon > a span{
    margin-bottom:4px!important;
    color:var(--gold)!important;
    font-size:7px!important;
    letter-spacing:.16em!important;
  }

  .mobile-inserted-ribbon > a strong{
    color:#fff!important;
    font-size:14px!important;
    line-height:1.15!important;
    white-space:normal!important;
    overflow-wrap:anywhere;
  }

  .mobile-inserted-ribbon > a.contact-ribbon__urgent{
    background:var(--gold)!important;
  }

  .mobile-inserted-ribbon > a.contact-ribbon__urgent span,
  .mobile-inserted-ribbon > a.contact-ribbon__urgent strong{
    color:#090909!important;
  }
}

/* ==========================================================
   MOBILE V8 — HEADER REALLY FOLLOWS SCROLL
   ========================================================== */
@media (max-width:900px){

  /* Safari-safe: fixed header instead of sticky. */
  .site-header,
  .site-header.is-scrolled,
  .site-header.scrolled{
    position:fixed!important;
    top:0!important;
    left:0!important;
    right:0!important;
    width:100%!important;
    height:64px!important;
    min-height:64px!important;
    z-index:99990!important;
    background:#080808!important;
    color:#fff!important;
    border-bottom:1px solid rgba(176,138,75,.28)!important;
    transform:none!important;
  }

  /* Reserve exactly the space removed from normal document flow. */
  body{
    padding-top:64px!important;
  }

  .header-inner{
    height:64px!important;
    min-height:64px!important;
  }

  /* Open menu still takes the complete viewport. */
  .site-header.menu-open{
    position:fixed!important;
    inset:0!important;
    width:100vw!important;
    height:100svh!important;
    min-height:100svh!important;
    z-index:99999!important;
  }

  /* No double offset while the menu is open. */
  body.mobile-nav-open{
    padding-top:64px!important;
  }

  /* Anchor jumps should land below the fixed mobile header. */
  html{
    scroll-padding-top:76px!important;
  }
}

/* ==========================================================
   MOBILE V9 — HTML ROOT / CENTERED PORTRAIT / SOS BOOM
   ========================================================== */
@media (max-width:900px){

  /* Portrait genuinely centered horizontally. */
  .hero-person img{
    object-position:50% 29%!important;
    transform-origin:50% 31%!important;
  }

  /* Emergency stories participate in the mobile kinetic system. */
  .mobile-motion .ck-sos__story.m-row-left{
    opacity:.10;
    transform:translate3d(-12vw,0,0)!important;
  }

  .mobile-motion .ck-sos__story.m-row-right{
    opacity:.10;
    transform:translate3d(12vw,0,0)!important;
  }

  .mobile-motion .ck-sos__story.m-row-left.m-in,
  .mobile-motion .ck-sos__story.m-row-right.m-in{
    opacity:1!important;
    transform:none!important;
  }

  .mobile-motion .m-sos-title-left,
  .mobile-motion .m-sos-title-right,
  .mobile-motion .m-sos-copy,
  .mobile-motion .m-sos-meta{
    transition:
      transform .86s cubic-bezier(.16,.9,.19,1),
      opacity .72s ease,
      filter .80s ease!important;
  }

  .mobile-motion .m-sos-title-left{
    opacity:.02;
    transform:translate3d(-18vw,0,0) scale(1.08)!important;
    filter:blur(5px);
  }

  .mobile-motion .m-sos-title-right{
    opacity:.02;
    transform:translate3d(18vw,0,0) scale(1.08)!important;
    filter:blur(5px);
  }

  .mobile-motion .m-sos-copy{
    opacity:0;
    transform:translate3d(0,30px,0)!important;
  }

  .mobile-motion .m-sos-meta{
    opacity:0;
    transform:translate3d(-24px,0,0)!important;
  }

  .mobile-motion .m-sos-title-left.m-in,
  .mobile-motion .m-sos-title-right.m-in,
  .mobile-motion .m-sos-copy.m-in,
  .mobile-motion .m-sos-meta.m-in{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
  }

  .mobile-motion .m-sos-copy.m-in{
    transition-delay:.12s!important;
  }

  .mobile-motion .m-sos-meta.m-in{
    transition-delay:.05s!important;
  }

  /* Keep the SOS ghost subtle while the foreground moves. */
  .ck-sos__ghost{
    opacity:.035!important;
  }
}

@media (max-width:480px){
  .hero-person img{
    object-position:50% 28%!important;
    transform-origin:50% 30%!important;
  }
}





/* ==========================================================
   REVIEWS FINAL FIX
   11 vollständige Google-Bewertungen
   ========================================================== */

/* ----------------------------------------------------------
   1. BOOM-HEADLINE DARF WÄHREND DER GSAP-ANIMATION
      NICHT ABGESCHNITTEN WERDEN
   ---------------------------------------------------------- */

.reviews-head--boom{
  overflow:visible !important;
}

.reviews-head__main,
.reviews-head__main h2,
.reviews-head__main h2 span{
  overflow:visible !important;
}

/*
  Die gesamte Website bleibt trotzdem horizontal sauber,
  weil body bereits overflow-x:hidden besitzt.
*/
.reviews{
  overflow:visible !important;
}


/* ----------------------------------------------------------
   2. REVIEW-KARTEN:
      VOLLSTÄNDIGE ORIGINALTEXTE NICHT ABSCHNEIDEN
   ---------------------------------------------------------- */

.reviews-stage .review-card{
  height:auto !important;
  min-height:560px !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:stretch;
}

.reviews-stage .review-card blockquote{
  margin:26px 0 30px !important;
}

.reviews-stage .review-card p:not(.headline){
  overflow:visible !important;
  max-height:none !important;
}


/* ----------------------------------------------------------
   3. HORIZONTALE REVIEW-STAGE MUSS AUCH DIE LÄNGEREN
      KARTEN VOLLSTÄNDIG AUFNEHMEN
   ---------------------------------------------------------- */

@media (min-width:901px){

  .reviews-stage{
    height:auto !important;
    min-height:760px !important;
    padding-top:90px !important;
    padding-bottom:90px !important;
    overflow:hidden !important;
  }

  .reviews-stage .review-track{
    align-items:stretch !important;
  }

  .reviews-stage .review-card{
    flex:0 0 min(64vw,760px) !important;
    width:min(64vw,760px) !important;
  }

}


/* ----------------------------------------------------------
   4. MOBILE BLEIBT VERTIKAL UND VOLLSTÄNDIG
   ---------------------------------------------------------- */

@media (max-width:900px){

  .reviews{
    overflow:hidden !important;
  }

  .reviews-head--boom{
    overflow:hidden !important;
  }

  .reviews-head__main{
    overflow:visible !important;
  }

  .reviews-stage{
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }

  .reviews-stage .review-track{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    transform:none !important;
  }

  .reviews-stage .review-card{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    padding:25px 22px !important;
  }

}



/* ==========================================================
   REVIEWS FINAL FIX
   11 vollständige Google-Bewertungen
   ========================================================== */

/* ----------------------------------------------------------
   1. BOOM-HEADLINE DARF WÄHREND DER GSAP-ANIMATION
      NICHT ABGESCHNITTEN WERDEN
   ---------------------------------------------------------- */

.reviews-head--boom{
  overflow:visible !important;
}

.reviews-head__main,
.reviews-head__main h2,
.reviews-head__main h2 span{
  overflow:visible !important;
}

/*
  Die gesamte Website bleibt trotzdem horizontal sauber,
  weil body bereits overflow-x:hidden besitzt.
*/
.reviews{
  overflow:visible !important;
}


/* ----------------------------------------------------------
   2. REVIEW-KARTEN:
      VOLLSTÄNDIGE ORIGINALTEXTE NICHT ABSCHNEIDEN
   ---------------------------------------------------------- */

.reviews-stage .review-card{
  height:auto !important;
  min-height:560px !important;
  max-height:none !important;
  overflow:visible !important;
  align-self:stretch;
}

.reviews-stage .review-card blockquote{
  margin:26px 0 30px !important;
}

.reviews-stage .review-card p:not(.headline){
  overflow:visible !important;
  max-height:none !important;
}


/* ----------------------------------------------------------
   3. HORIZONTALE REVIEW-STAGE MUSS AUCH DIE LÄNGEREN
      KARTEN VOLLSTÄNDIG AUFNEHMEN
   ---------------------------------------------------------- */

@media (min-width:901px){

  .reviews-stage{
    height:auto !important;
    min-height:760px !important;
    padding-top:90px !important;
    padding-bottom:90px !important;
    overflow:hidden !important;
  }

  .reviews-stage .review-track{
    align-items:stretch !important;
  }

  .reviews-stage .review-card{
    flex:0 0 min(64vw,760px) !important;
    width:min(64vw,760px) !important;
  }

}


/* ----------------------------------------------------------
   4. MOBILE BLEIBT VERTIKAL UND VOLLSTÄNDIG
   ---------------------------------------------------------- */

@media (max-width:900px){

  .reviews{
    overflow:hidden !important;
  }

  .reviews-head--boom{
    overflow:hidden !important;
  }

  .reviews-head__main{
    overflow:visible !important;
  }

  .reviews-stage{
    height:auto !important;
    min-height:0 !important;
    overflow:visible !important;
  }

  .reviews-stage .review-track{
    width:100% !important;
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:14px !important;
    transform:none !important;
  }

  .reviews-stage .review-card{
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
    padding:25px 22px !important;
  }

}


/* ==========================================================
   REVIEWS — FINAL CARD WIDTH FIX
   Desktop horizontal / Mobile vertical
   ========================================================== */

@media (min-width:901px){

  /* Die gepinnte Scrollfläche muss immer die volle Viewportbreite haben */
  .reviews-stage{
    width:100vw !important;
    max-width:none !important;
    min-width:100vw !important;

  

    overflow:hidden !important;
  }

  /* Horizontaler Track darf sich über die gesamte benötigte Breite erstrecken */
  .reviews-stage .review-track{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;

    width:max-content !important;
    min-width:max-content !important;
    max-width:none !important;

    padding-left:var(--pad) !important;
    padding-right:var(--pad) !important;

    overflow:visible !important;
  }

  /* Jede Rezension bekommt eine feste, echte Kartenbreite.
     Kein Flex-Schrumpfen mehr. */
  .reviews-stage .review-card{
    flex:0 0 720px !important;

    width:720px !important;
    min-width:720px !important;
    max-width:720px !important;

    height:auto !important;
    min-height:600px !important;
    max-height:none !important;

    padding:42px !important;

    overflow:hidden !important;
  }

  /* Text MUSS innerhalb der Karte umbrechen */
  .reviews-stage .review-card blockquote{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .reviews-stage .review-card .headline,
  .reviews-stage .review-card blockquote p{
    width:100% !important;
    max-width:100% !important;

    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:break-word !important;

    overflow:visible !important;
  }

}


/* MOBILE BLEIBT EINFACH UNTEREINANDER */
@media (max-width:900px){

  .reviews-stage{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;

    margin:0 !important;
    overflow:visible !important;
  }

  .reviews-stage .review-track{
    width:100% !important;
    min-width:0 !important;

    display:grid !important;
    grid-template-columns:1fr !important;

    padding:0 !important;
    transform:none !important;
  }

  .reviews-stage .review-card{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;

    height:auto !important;
    min-height:0 !important;

    margin:0 !important;
    padding:25px 22px !important;
  }


}








/* ==========================================================
   FINAL HEADER
   EXAKT WIE STRAFRECHT-WISSEN
   ========================================================== */

.site-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;

  width:100% !important;
  height:76px !important;

  padding:0 !important;

  z-index:99990 !important;

  background:#080808 !important;
  color:#fff !important;

  border-bottom:1px solid rgba(255,255,255,.10) !important;

  mix-blend-mode:normal !important;

  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;

  pointer-events:auto !important;
}


.site-header.is-scrolled{
  background:#080808 !important;
}


/* ----------------------------------------------------------
   DESKTOP INNER
   ---------------------------------------------------------- */

.site-header .header-inner{
  width:100% !important;
  height:76px !important;

  padding:0 var(--pad) !important;

  display:grid !important;
  grid-template-columns:1fr auto 1fr !important;

  align-items:center !important;

  gap:22px !important;
}


/* ----------------------------------------------------------
   LEFT
   ---------------------------------------------------------- */

.site-header .header-left{
  display:flex !important;
  align-items:center !important;

  gap:22px !important;

  min-width:0 !important;
}


.site-header .header-brand{
  color:#fff !important;

  font-family:"DM Sans",Arial,sans-serif !important;

  font-size:12px !important;
  font-weight:700 !important;

  line-height:1 !important;

  letter-spacing:.13em !important;

  white-space:nowrap !important;

  pointer-events:auto !important;
}


.site-header .header-phone{
  display:flex !important;
  align-items:center !important;

  gap:10px !important;

  padding:10px 14px !important;

  border:1px solid rgba(255,255,255,.72) !important;

  background:transparent !important;

  color:#fff !important;

  white-space:nowrap !important;

  pointer-events:auto !important;
}


.site-header .header-phone span{
  display:inline !important;

  color:#fff !important;

  font-size:6px !important;
  line-height:1 !important;

  letter-spacing:.14em !important;

  text-transform:uppercase !important;
}


.site-header .header-phone strong{
  color:#fff !important;

  font-size:11px !important;
  line-height:1 !important;

  font-weight:700 !important;
}


/* ----------------------------------------------------------
   CENTER
   ---------------------------------------------------------- */

.site-header .header-center{
  display:block !important;

  justify-self:center !important;

  color:#fff !important;

  font-size:8px !important;
  line-height:1 !important;

  letter-spacing:.20em !important;

  text-transform:uppercase !important;

  white-space:nowrap !important;
}


/* ----------------------------------------------------------
   DESKTOP NAVIGATION
   ---------------------------------------------------------- */

.site-header .header-nav{
  position:static !important;

  display:flex !important;

  justify-content:flex-end !important;
  align-items:center !important;

  gap:20px !important;

  width:auto !important;
  height:auto !important;
  min-height:0 !important;

  padding:0 !important;
  margin:0 !important;

  background:transparent !important;

  opacity:1 !important;
  visibility:visible !important;

  transform:none !important;

  pointer-events:auto !important;

  overflow:visible !important;
}


.site-header .header-nav a{
  display:block !important;

  min-height:0 !important;

  padding:0 !important;
  margin:0 !important;

  border:0 !important;

  color:#fff !important;
  background:transparent !important;

  font-family:"DM Sans",Arial,sans-serif !important;

  font-size:8px !important;
  font-weight:600 !important;

  line-height:1 !important;

  letter-spacing:.10em !important;

  text-transform:uppercase !important;

  white-space:nowrap !important;
}


.site-header .header-menu-toggle{
  display:none !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width:900px){

  .site-header,
  .site-header.is-scrolled,
  .site-header.scrolled{
    position:fixed !important;

    top:0 !important;
    left:0 !important;
    right:0 !important;

    width:100% !important;
    height:68px !important;
    min-height:68px !important;

    padding:0 !important;

    background:#080808 !important;

    border-bottom:1px solid rgba(255,255,255,.10) !important;

    z-index:99990 !important;

    overflow:visible !important;
  }


  /* Exakt 68px reservieren.
     Dadurch überlappt der Header NICHT den Hero. */

  body{
    padding-top:68px !important;
  }


  html{
    scroll-padding-top:78px !important;
  }


  .site-header .header-inner{
    position:relative !important;

    width:100% !important;
    height:68px !important;
    min-height:68px !important;

    padding:0 12px !important;

    display:grid !important;

    grid-template-columns:minmax(0,1fr) auto !important;

    align-items:center !important;

    gap:8px !important;
  }


  .site-header .header-left{
    min-width:0 !important;

    display:flex !important;

    align-items:center !important;

    gap:8px !important;

    overflow:hidden !important;
  }


  .site-header .header-brand{
    flex:0 1 auto !important;

    min-width:0 !important;

    font-size:8.5px !important;

    line-height:1 !important;

    letter-spacing:.08em !important;

    white-space:nowrap !important;

    overflow:visible !important;
  }


  .site-header .header-phone{
    flex:0 0 auto !important;

    display:flex !important;

    min-height:0 !important;

    padding:7px 8px !important;

    border:1px solid rgba(255,255,255,.72) !important;
  }


  .site-header .header-phone span{
    display:none !important;
  }


  .site-header .header-phone strong{
    font-size:8px !important;

    line-height:1 !important;

    white-space:nowrap !important;
  }


  .site-header .header-center{
    display:none !important;
  }


  /* MENÜ + */

  .site-header .header-menu-toggle{
    display:flex !important;

    align-items:center !important;

    gap:5px !important;

    min-width:0 !important;
    min-height:0 !important;

    padding:0 !important;
    margin:0 !important;

    border:0 !important;

    background:transparent !important;

    color:#fff !important;

    font-family:"DM Sans",Arial,sans-serif !important;

    font-size:7px !important;

    font-weight:600 !important;

    line-height:1 !important;

    letter-spacing:.12em !important;

    text-transform:uppercase !important;

    white-space:nowrap !important;

    cursor:pointer !important;

    z-index:3 !important;
  }


  .site-header .header-menu-toggle span{
    display:inline-block !important;

    color:var(--gold) !important;

    font-size:13px !important;

    line-height:1 !important;

    transition:transform .22s ease !important;
  }


  .site-header .header-menu-toggle[aria-expanded="true"] span{
    transform:rotate(45deg) !important;
  }


  /* --------------------------------------------------------
     MOBILE DROPDOWN
     exakt unter dem 68px Header
     -------------------------------------------------------- */

  .site-header .header-nav{
    position:absolute !important;

    top:68px !important;
    left:0 !important;
    right:0 !important;

    width:100% !important;
    height:auto !important;
    min-height:0 !important;

    padding:8px 12px 14px !important;
    margin:0 !important;

    display:grid !important;

    grid-template-columns:1fr 1fr !important;

    gap:0 20px !important;

    background:#080808 !important;

    border-top:1px solid rgba(176,138,75,.26) !important;
    border-bottom:1px solid rgba(176,138,75,.30) !important;

    opacity:0 !important;
    visibility:hidden !important;

    transform:translateY(-8px) !important;

    pointer-events:none !important;

    transition:
      opacity .20s ease,
      visibility .20s ease,
      transform .20s ease !important;

    overflow:hidden !important;

    z-index:99991 !important;
  }


  .site-header .header-nav.is-open{
    opacity:1 !important;
    visibility:visible !important;

    transform:none !important;

    pointer-events:auto !important;
  }


  .site-header .header-nav a{
    display:flex !important;

    align-items:center !important;

    width:100% !important;

    min-height:42px !important;

    padding:10px 4px !important;

    border:0 !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;

    color:#fff !important;

    background:transparent !important;

    font-family:"DM Sans",Arial,sans-serif !important;

    font-size:7px !important;

    font-weight:600 !important;

    line-height:1.2 !important;

    letter-spacing:.10em !important;

    text-transform:uppercase !important;

    white-space:nowrap !important;

    opacity:1 !important;
    visibility:visible !important;

    transform:none !important;
  }


  /* Alte Startseiten-Menülogik neutralisieren */

  .site-header.menu-open{
    position:fixed !important;

    top:0 !important;
    left:0 !important;
    right:0 !important;

    width:100% !important;

    height:68px !important;
    min-height:68px !important;

    overflow:visible !important;

    background:#080808 !important;
  }


  .site-header.menu-open .header-nav{
    position:absolute !important;

    top:68px !important;
    bottom:auto !important;

    height:auto !important;
    min-height:0 !important;

    display:grid !important;

    grid-template-columns:1fr 1fr !important;

    padding:8px 12px 14px !important;
  }


  body.mobile-nav-open main,
  body.mobile-nav-open footer{
    visibility:visible !important;
    pointer-events:auto !important;
  }


  body.mobile-nav-open{
    overflow:auto !important;
    padding-top:68px !important;
  }

}


@media (max-width:480px){

  /* Auf der Wissensseite bleibt auch die Telefonnummer sichtbar.
     Deshalb alte V9-Regel ausdrücklich überschreiben. */

  .site-header .header-phone{
    display:flex !important;
  }


  .site-header .header-brand{
    font-size:8px !important;
  }


  .site-header .header-phone{
    padding:6px 7px !important;
  }


  .site-header .header-phone strong{
    font-size:7.5px !important;
  }

}



/* ==========================================================
   KNOWLEDGE / STRAFTATEN — STABLE CLICK TARGETS
   ========================================================== */

.knowledge-cluster{
  transform:none;
}

.knowledge-cluster::before{
  pointer-events:none;
}

.knowledge-cluster__links,
.knowledge-cluster__links a{
  position:relative;
  z-index:5;
  pointer-events:auto;
}

.knowledge-cluster__links a{
  transform:none!important;
  will-change:auto!important;
}

.knowledge-cluster--offenses{
  transform:none!important;
  will-change:auto!important;
}

.knowledge-cluster--offenses .knowledge-cluster__links--offenses a{
  transform:none!important;
  pointer-events:auto!important;
}






/* ==========================================================
   STARTSEITE READY — CTA FREQUENCY + KNOWLEDGE CARD DROP
   ========================================================== */

.knowledge-network__cta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:28px;
}

.knowledge-network__cta a{
  display:flex;
  align-items:baseline;
  gap:9px;
  border:1px solid rgba(0,0,0,.18);
  padding:12px 14px;
  font-size:9px;
  letter-spacing:.10em;
  text-transform:uppercase;
}

.knowledge-network__cta a span{
  color:var(--gold);
  font-size:8px;
}

.knowledge-network__cta a strong{
  font-size:11px;
  letter-spacing:.04em;
  text-transform:none;
}

.knowledge-network__cta .knowledge-network__cta-emergency{
  background:#0a0a0a;
  color:#fff;
  border-color:#0a0a0a;
}

.knowledge-network__all{
  gap:10px;
  flex-wrap:wrap;
}

.knowledge-cluster--offenses{
  transform:none;
}

@media (max-width:900px){
  .knowledge-network__cta{
    display:grid;
    grid-template-columns:1fr;
    width:100%;
    margin-top:22px;
  }

  .knowledge-network__cta a{
    width:100%;
    justify-content:space-between;
    min-height:46px;
  }

  .knowledge-network__all{
    justify-content:flex-start;
  }

  .mobile-motion .knowledge-cluster.m-card-drop{
    opacity:0!important;
    transform:translate3d(0,-78px,0) rotate(var(--m-card-rotate,0deg)) scale(.96)!important;
    transform-origin:50% 0%;
    transition:
      transform .82s cubic-bezier(.16,1,.3,1) var(--m-card-delay,0ms),
      opacity .58s ease var(--m-card-delay,0ms)!important;
  }

  .mobile-motion .knowledge-cluster.m-card-drop.m-in{
    opacity:1!important;
    transform:translate3d(0,0,0) rotate(0deg) scale(1)!important;
  }
}

@media (prefers-reduced-motion:reduce){
  .knowledge-cluster{
    opacity:1!important;
    transform:none!important;
    filter:none!important;
  }
}


/* ==========================================================
   INLINE CONTACT CTA — repeated conversion points
   ========================================================== */
.inline-contact-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px;position:relative;z-index:5}
.inline-contact-cta a{display:flex;align-items:baseline;gap:9px;border:1px solid rgba(0,0,0,.18);padding:12px 14px;font-size:9px;letter-spacing:.10em;text-transform:uppercase}
.inline-contact-cta a span{color:var(--gold);font-size:8px}
.inline-contact-cta a strong{font-size:11px;letter-spacing:.04em;text-transform:none}
.inline-contact-cta .inline-contact-cta__emergency{background:#0a0a0a;color:#fff;border-color:#0a0a0a}
.mandate-boom .inline-contact-cta a,.reviews .inline-contact-cta a{border-color:rgba(255,255,255,.24);color:#fff}
.mandate-boom .inline-contact-cta .inline-contact-cta__emergency,.reviews .inline-contact-cta .inline-contact-cta__emergency{background:var(--gold);border-color:var(--gold);color:#080808}
.mandate-boom .inline-contact-cta .inline-contact-cta__emergency span,.reviews .inline-contact-cta .inline-contact-cta__emergency span{color:#080808}
@media(max-width:900px){.inline-contact-cta{display:grid;grid-template-columns:1fr;width:100%;margin-top:22px}.inline-contact-cta a{width:100%;justify-content:space-between;min-height:46px}}

/* ==========================================================
   V4 MICRO ALIGNMENT — 14.09.2026
   Only the two requested gold-line adjustments.
   ========================================================== */

/* Portrait panel: remove the extra gold horizontal line below the contact bar. */
.portrait-impact__footer--v2{
  border-top:0!important;
}

/* Investigation intro: preserve the line exactly, only move it slightly lower. */
.investigation-intro--state .investigation-intro__line{
  top:55.5%!important;
}

/* ==========================================================
   V5 PORTRAIT FOOTER ALIGNMENT — 14.09.2026
   Keep left footer label fixed; lower only the profile link.
   ========================================================== */
@media (min-width:901px){
  .portrait-impact__footer--v2 .portrait-impact__profilelink{
    transform:translateY(26px)!important;
  }
}

/* ==========================================================
   V7 PORTRAIT FOOTER BALANCE — 14.09.2026
   Lower the left footer label by the same amount as the profile link.
   ========================================================== */
@media (min-width:901px){
  .portrait-impact__footer--v2 > .eyebrow{
    transform:translateY(26px)!important;
  }
}


/* ==========================================================
   V9 INVESTIGATION CTA — isolated, does not affect intro layout
   ========================================================== */
.investigation-state-contact{
  background:#fff;
  padding:0 var(--pad) 72px;
  position:relative;
  z-index:6;
}
.investigation-state-contact .inline-contact-cta{
  width:min(860px,100%);
  margin:0 0 0 auto;
}
@media(max-width:900px){
  .investigation-state-contact{padding:0 var(--pad) 54px;}
  .investigation-state-contact .inline-contact-cta{width:100%;margin:0;}
}

/* ==========================================================
   V10 INVESTIGATION CTA SPACING — 14.09.2026
   Keep the investigation intro geometry untouched; only close
   the visual gap before the isolated contact CTA on desktop.
   ========================================================== */
@media (min-width:901px){
  .investigation-state-contact{
    margin-top:-110px;
  }
}


/* V11 — CTA im Existenz-Impact */
.impact-copy--strong .impact-contact-button{
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  margin-top:10px;
  padding:14px 17px;
  border:1px solid var(--gold);
  border-bottom:1px solid var(--gold);
  color:#fff;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:10px;
  font-weight:700;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  transition:background .25s ease,color .25s ease;
}

.impact-copy--strong .impact-contact-button:hover{
  background:var(--gold);
  color:#050505;
}

.impact-copy--strong .impact-contact-button span{
  font-size:15px;
  line-height:1;
}

@media(max-width:900px){
  .impact-copy--strong .impact-contact-button{
    width:100%;
    margin-top:12px;
    padding:15px 16px;
    font-size:9px;
  }
}


/* V13 — Google Reviews CTA: restrained mobile layout */
@media (max-width:900px){
  .reviews-google-link{
    width:100%;
    max-width:430px;
    gap:16px;
    padding:15px 16px;
    font-size:9px;
  }
}


/* ==========================================================
   V14 — OFFICE CLAIM GROUP / DESKTOP CLEANUP
   Groups “Aufgeben ist keine Option.” with its subline.
   ========================================================== */
@media (min-width:901px){
  .office-claim{
    grid-column:2;
    grid-row:2;
    min-width:0;
    align-self:stretch;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:flex-start;
    gap:clamp(16px,1.6vw,26px);
    padding:clamp(18px,2vw,32px) 0;
    position:relative;
    z-index:3;
  }

  .office-claim .office-quote{
    grid-column:auto;
    grid-row:auto;
    display:block;
    align-items:initial;
    margin:0;
    max-width:100%;
    font-size:clamp(31px,3vw,48px);
    line-height:1.02!important;
  }

  .office-claim .no-surrender-subline{
    margin:0;
    max-width:100%;
    font-size:clamp(31px,3.15vw,50px);
    line-height:.92!important;
  }
}

@media (max-width:900px){
  .office-claim{
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    gap:16px!important;
    padding:48px var(--pad)!important;
  }

  .office-claim .office-quote{
    padding:0!important;
    width:100%!important;
  }

  .office-claim .no-surrender-subline{
    margin:0!important;
  }
}

/* ==========================================================
   V15 — OFFICE CLAIM: KEEP TEXT INSIDE CENTER COLUMN
   Desktop only. Prevents claim copy from overlapping imagery.
   ========================================================== */
@media (min-width:901px){
  .office-claim{
    width:100%;
    max-width:100%;
    padding-left:clamp(10px,1.1vw,18px);
    padding-right:clamp(18px,1.8vw,30px);
    overflow:visible;
  }

  .office-claim .office-quote{
    width:100%;
    max-width:100%;
    font-size:clamp(30px,2.65vw,44px);
  }

  .office-claim .no-surrender-subline{
    width:100%;
    max-width:100%;
    font-size:clamp(28px,2.45vw,40px);
    line-height:.96!important;
  }

  .office-claim .no-surrender-subline--stacked span,
  .office-claim .no-surrender-subline--stacked span:first-child,
  .office-claim .no-surrender-subline--stacked span:last-child{
    white-space:normal!important;
    max-width:100%;
    overflow-wrap:normal;
    word-break:normal;
  }
}


/* ==========================================================
   V16 — STRAFTAT-BLOCK: CLEAN LINKS ONLY
   Removes the two empty gold pill outlines without changing
   the knowledge section layout.
   ========================================================== */
.knowledge-network__all a{
  border:0!important;
  border-radius:0!important;
  padding:10px 0!important;
  border-bottom:1px solid var(--gold)!important;
}

.knowledge-cluster__links--offenses{
  align-content:end;
}

/* ==========================================================
   V18 — KNOWLEDGE FOOT LINKS BELOW OFFENSE BLOCK
   Keep all normal offense-link separators. Only prevent the
   two global knowledge links from overlapping the black card.
   ========================================================== */
@media (min-width:901px){
  .knowledge-network__grid{
    margin-bottom:64px;
  }

  .knowledge-network__all{
    margin-top:0!important;
    position:relative!important;
    z-index:4!important;
    justify-content:flex-end;
  }

  .knowledge-network__all a{
    border:1px solid var(--gold)!important;
    border-radius:999px!important;
    padding:13px 17px!important;
    color:#000!important;
    background:#fff!important;
  }
}

/* ==========================================================
   V19 — KNOWLEDGE FOOT BUTTONS: CENTERED + LOWER
   Only desktop placement of the two final knowledge buttons.
   ========================================================== */
@media (min-width:901px){
  .knowledge-network__grid{
    margin-bottom:96px!important;
  }

  .knowledge-network__all{
    margin-top:0!important;
    width:100%!important;
    display:flex!important;
    justify-content:center!important;
    align-items:center!important;
    gap:16px!important;
    flex-wrap:nowrap!important;
  }

  .knowledge-network__all a{
    min-height:48px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    white-space:nowrap!important;
    margin:0!important;
  }
}

/* ==========================================================
   V20 — KNOWLEDGE FOOT BUTTONS: RIGHT ALIGNED
   Keep vertical spacing from V19; align the two-button group
   flush to the right edge of the content area on desktop.
   ========================================================== */
@media (min-width:901px){
  .knowledge-network__all{
    justify-content:flex-end!important;
  }
}

/* ==========================================================
   V21 — STRAFTAT FOOT ACTIONS: STRUCTURAL ROW BELOW DELICTS
   Buttons live inside the black offense card, after all links.
   No overlap with the final delict rows.
   ========================================================== */
@media (min-width:901px){
  .knowledge-network__grid{
    margin-bottom:0!important;
  }

  .knowledge-cluster--offenses{
    grid-row:15 / 20!important;
    min-height:clamp(450px,48vw,650px)!important;
    height:auto!important;
  }

  .knowledge-cluster--offenses .knowledge-cluster__links--offenses{
    margin-top:auto!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses{
    width:100%!important;
    margin:30px 0 0!important;
    padding:0!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:14px!important;
    flex-wrap:nowrap!important;
    position:relative!important;
    z-index:6!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses a{
    min-height:48px!important;
    margin:0!important;
    padding:13px 18px!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid var(--gold)!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#080808!important;
    text-align:center!important;
    white-space:nowrap!important;
  }
}

@media (max-width:900px){
  .knowledge-cluster--offenses .knowledge-network__all--offenses{
    width:100%!important;
    margin:26px 0 0!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses a{
    width:100%!important;
    min-height:46px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    border:1px solid var(--gold)!important;
    border-radius:999px!important;
    background:#fff!important;
    color:#080808!important;
    text-align:center!important;
  }
}

/* ==========================================================
   V22 — STRAFTAT FOOT ACTIONS: COMPACT CLEAN FOOTER ROW
   Keep actions structurally below all delict links, but remove
   the oversized vertical gap from V21.
   ========================================================== */
@media (min-width:901px){
  .knowledge-cluster--offenses{
    grid-row:15 / 20!important;
    min-height:clamp(520px,55vh,590px)!important;
  }

  .knowledge-cluster--offenses .knowledge-cluster__links--offenses{
    margin-top:auto!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses{
    margin:12px 0 0!important;
    padding:0!important;
    justify-content:flex-end!important;
    gap:14px!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses a{
    min-height:46px!important;
    padding:12px 18px!important;
  }
}

/* ==========================================================
   DEFENSE GOALS — DESKTOP 2x2 GRID
   ONLY THIS SECTION IS CHANGED.
   ========================================================== */
@media (min-width:901px){
  .defense-goals{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .defense-goals__intro{
    grid-column:1 / -1!important;
  }

  .defense-goal{
    min-height:640px!important;
    padding:72px clamp(30px,4vw,68px)!important;
    grid-template-columns:1fr!important;
    gap:32px!important;
    align-content:center!important;
  }

  .defense-goal:nth-of-type(even){
    border-left:1px solid rgba(176,138,75,.22)!important;
  }

  .defense-goal__number{
    align-self:auto!important;
    padding-top:0!important;
  }

  .defense-goal__body h3{
    font-size:clamp(60px,6.5vw,108px)!important;
    line-height:.73!important;
  }

  .defense-goal__script{
    margin:12px 0 26px 2vw!important;
    font-size:clamp(32px,3.5vw,56px)!important;
  }

  .defense-goal__copy{
    font-size:13.5px!important;
    line-height:1.7!important;
  }

  .defense-goal__ghost{
    font-size:clamp(130px,16vw,260px)!important;
  }
}

/* Mobile remains the existing single-column layout. */
@media (max-width:900px){
  .defense-goals{
    display:block!important;
  }
}

/* ==========================================================
   SCHWERPUNKTE / PRACTICE — DESKTOP COMPACT SPACING
   ONLY spacing in this section is tightened.
   ========================================================== */
@media (min-width:901px){
  .practice{
    padding-top:72px!important;
  }

  .practice-intro{
    padding-bottom:46px!important;
  }

  .practice-row{
    min-height:150px!important;
    padding-top:18px!important;
    padding-bottom:18px!important;
  }
}


/* ==========================================================
   DEEP LAW + WISSEN — ONE COMBINED SECTION
   Only these two previously separate knowledge areas are joined.
   ========================================================== */
.deep-law .knowledge-network--joined{
  min-height:0!important;
  background:transparent!important;
  color:inherit!important;
  padding:72px 0 0!important;
  margin:0!important;
  overflow:visible!important;
  border-top:1px solid rgba(0,0,0,.16);
}

.deep-law .knowledge-network--joined .knowledge-network__head{
  max-width:none!important;
  margin:0 0 42px!important;
  padding-top:14px!important;
}

.deep-law .knowledge-network--joined .knowledge-network__head h2{
  margin:12px 0 18px!important;
  font-size:clamp(56px,7.4vw,118px)!important;
  line-height:.76!important;
}

.deep-law .knowledge-network--joined .knowledge-network__head h2 .serif{
  margin-left:12vw!important;
  font-size:.66em!important;
}

.deep-law .knowledge-network--joined .knowledge-network__head p{
  max-width:760px!important;
  margin:0!important;
}

.deep-law .knowledge-network--joined .knowledge-network__cta{
  display:none!important;
}

@media (min-width:901px){
  .deep-law .knowledge-network--joined .knowledge-network__grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    gap:14px!important;
    min-height:0!important;
  }

  .deep-law .knowledge-network--joined .knowledge-cluster{
    grid-column:auto!important;
    grid-row:auto!important;
    min-height:300px!important;
  }

  .deep-law .knowledge-network--joined .knowledge-cluster--huge,
  .deep-law .knowledge-network--joined .knowledge-cluster--tall,
  .deep-law .knowledge-network--joined .knowledge-cluster--wide,
  .deep-law .knowledge-network--joined .knowledge-cluster--medium,
  .deep-law .knowledge-network--joined .knowledge-cluster--small{
    grid-column:auto!important;
    grid-row:auto!important;
  }

  .deep-law .knowledge-network--joined .knowledge-cluster--offenses{
    grid-column:1 / -1!important;
    grid-row:auto!important;
    min-height:360px!important;
  }
}

.deep-law .knowledge-network--joined .knowledge-network__ghost{
  display:none!important;
}

@media (max-width:900px){
  .deep-law .knowledge-network--joined{
    padding-top:54px!important;
  }

  .deep-law .knowledge-network--joined .knowledge-network__head{
    margin-bottom:30px!important;
  }

  .deep-law .knowledge-network--joined .knowledge-network__head h2{
    font-size:15.2vw!important;
  }
}


/* ==========================================================
   PROCEDURE NETWORK — single merged section
   Uses the former WISSEN / knowledge-network visual system.
   ========================================================== */
.procedure-network{
  min-height:auto!important;
  padding-top:110px!important;
  padding-bottom:120px!important;
}
.procedure-network .knowledge-network__head{
  margin-bottom:64px!important;
}
.procedure-network .knowledge-network__head h2{
  max-width:1350px;
}
.procedure-network .knowledge-network__head h2 .serif{
  margin-left:20vw!important;
}
.procedure-network .knowledge-network__grid{
  min-height:0!important;
}
.procedure-network .knowledge-network__ghost{
  bottom:-.08em!important;
}

/* old deep-law block is no longer present; neutralize joined-only overrides */
.deep-law .knowledge-network--joined{all:unset;}

@media (max-width:900px){
  .procedure-network{
    padding-top:82px!important;
    padding-bottom:88px!important;
  }
  .procedure-network .knowledge-network__head{
    margin-bottom:42px!important;
  }
  .procedure-network .knowledge-network__head h2 .serif{
    margin-left:6vw!important;
  }
}

/* ==========================================================
   V10 DESKTOP PORTRAIT COMPACTION — 14.09.2026
   Only shortens the Caroline Kromer portrait section on desktop.
   Mobile and all following sections remain untouched.
   ========================================================== */
@media (min-width:901px){
  .portrait-impact{
    min-height:86svh!important;
  }

  .portrait-impact__copy{
    min-height:86svh!important;
    padding-top:78px!important;
    padding-bottom:36px!important;
  }

  .portrait-impact__image img{
    height:110%!important;
    transform:translateY(-4%) scale(1.035)!important;
  }

  .portrait-brand-contact{
    bottom:7vh!important;
  }
}

/* ==========================================================
   V11 THREE REQUESTED VISUAL FIXES — 14.09.2026
   1) portrait slogan clears contact bar
   2) defense-goals CTA aligns with right copy column
   3) FAQ remains complete but becomes visually lighter
   Desktop only. No content/structure changes.
   ========================================================== */
@media (min-width:901px){
  /* 1 — PORTRAIT: keep compact height, rescue the statement above the bar */
  .portrait-brand-v3__statement--defense{
    transform:translateY(-62px)!important;
    margin-top:28px!important;
    max-width:560px!important;
  }

  /* 2 — DEFENSE GOALS: CTA follows the exact right-hand copy column */
  .defense-goals__intro > .inline-contact-cta{
    width:min(760px,100%)!important;
    margin:24px 0 0 auto!important;
    justify-content:flex-start!important;
  }

  /* 3 — FAQ: same content, much less visual mass */
  .answer-boom{
    padding-top:clamp(58px,6.5vh,88px)!important;
  }

  .answer-boom__head{
    padding-bottom:clamp(40px,4.5vh,62px)!important;
    grid-template-columns:minmax(320px,.82fr) minmax(340px,.68fr)!important;
    column-gap:clamp(38px,6vw,95px)!important;
  }

  .answer-boom__head > .eyebrow{
    margin-bottom:16px!important;
  }

  .answer-boom__head h2 .sans{
    font-size:clamp(58px,7.1vw,116px)!important;
  }

  .answer-boom__head h2 .serif{
    font-size:clamp(45px,4.9vw,82px)!important;
    margin-left:24%!important;
  }

  .answer-boom__head > p{
    font-size:clamp(13px,.96vw,15px)!important;
    line-height:1.58!important;
    max-width:520px!important;
  }

  .answer-boom__question{
    grid-template-columns:44px 1fr 34px!important;
    gap:14px!important;
    min-height:clamp(78px,8.5vh,104px)!important;
    padding:10px 0!important;
  }

  .answer-boom__qtext{
    font-size:clamp(28px,3.15vw,52px)!important;
    line-height:1.00!important;
    max-width:1040px!important;
  }

  .answer-boom__no{
    font-size:8px!important;
  }

  .answer-boom__plus{
    font-size:25px!important;
  }

  .answer-boom__answer{
    margin-left:58px!important;
    max-width:800px!important;
    padding-bottom:28px!important;
    font-size:clamp(13px,.92vw,15px)!important;
  }

  .answer-boom__contact{
    margin-top:clamp(44px,5vh,70px)!important;
  }
}

/* ==========================================================
   V12 DESKTOP PORTRAIT REBALANCE — 14.09.2026
   Restore breathing room without returning to the old 120svh height.
   Keeps V11 FAQ + defense-goals alignment unchanged.
   ========================================================== */
@media (min-width:901px){
  .portrait-impact{
    min-height:102svh!important;
  }

  .portrait-impact__copy{
    min-height:102svh!important;
    padding-top:92px!important;
    padding-bottom:42px!important;
  }

  .portrait-impact__image img{
    height:116%!important;
    transform:translateY(-6%) scale(1.045)!important;
  }

  .portrait-brand-v3__statement--defense{
    transform:none!important;
    margin-top:30px!important;
    max-width:560px!important;
  }

  .portrait-brand-contact{
    bottom:7.2vh!important;
  }
}

/* ==========================================================
   V13 — MOBILE COMPACTION / CTA CLEANUP — 14.09.2026
   MOBILE ONLY. Desktop >= 901px remains completely untouched.
   ========================================================== */
@media (max-width:900px){

  /* ----------------------------------------------------------
     1) CTA BUTTONS — no pills on mobile
     ---------------------------------------------------------- */
  .investigation-step__links{
    gap:8px!important;
  }

  .investigation-step__links a,
  .investigation-step--contact .investigation-step__links--urgent a{
    border-radius:0!important;
    min-height:46px!important;
    padding:11px 13px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    font-size:9px!important;
    letter-spacing:.11em!important;
  }

  .knowledge-network__all a,
  .knowledge-cluster--offenses .knowledge-network__all--offenses a{
    border-radius:0!important;
  }

  /* ----------------------------------------------------------
     2) SOS INTRO — remove oversized lead-in whitespace
     ---------------------------------------------------------- */
  .ck-sos__rail{
    padding-top:38px!important;
    padding-bottom:42px!important;
  }

  .ck-sos__rail-contact{
    margin-top:24px!important;
  }

  /* ----------------------------------------------------------
     3) PRACTICE / AUSSCHLIESSLICH STRAFRECHT
        Remove double top spacing and make rows much tighter.
     ---------------------------------------------------------- */
  .practice{
    padding-top:0!important;
    margin-top:0!important;
  }

  .practice-intro{
    padding:42px var(--pad) 30px!important;
    margin-top:0!important;
  }

  .practice-intro h2{
    font-size:clamp(47px,13.2vw,60px)!important;
  }

  .practice-intro h2 .serif,
  .practice-intro h2 .p2{
    margin-top:.10em!important;
    margin-left:5vw!important;
    font-size:.62em!important;
  }

  .practice-row{
    min-height:84px!important;
    padding:13px var(--pad)!important;
    grid-template-columns:22px minmax(0,1fr) 22px!important;
    gap:8px!important;
  }

  .practice-row h3,
  .practice-row[href*="drogenstrafrecht"] h3,
  .practice-row[href*="auslieferungsrecht"] h3,
  .practice-row[href*="allgemeines-strafrecht"] h3,
  .practice-row[href*="strafvollstreckung"] h3,
  .practice-row[href*="untersuchungshaft"] h3{
    font-size:clamp(23px,6.6vw,30px)!important;
    line-height:.94!important;
    letter-spacing:-.045em!important;
  }

  .practice-row h3 .alt{
    font-size:.70em!important;
  }

  .practice-arrow{
    font-size:15px!important;
  }

  /* ----------------------------------------------------------
     4) OFFICE / MÜNCHEN — kill the inherited desktop padding
        that creates the huge blank area on mobile.
     ---------------------------------------------------------- */
  .office{
    padding:0!important;
    margin-top:0!important;
  }

  .office-head{
    padding:42px var(--pad) 32px!important;
    margin:0!important;
  }

  .office-head h2,
  .office h2{
    font-size:clamp(48px,13.5vw,62px)!important;
  }

  /* ----------------------------------------------------------
     5) PROCEDURE / KNOWLEDGE — compact mobile section rhythm
     ---------------------------------------------------------- */
  .procedure-network{
    padding-top:46px!important;
    padding-bottom:56px!important;
  }

  .procedure-network .knowledge-network__head{
    margin-bottom:28px!important;
  }

  /* ----------------------------------------------------------
     6) DELICTS — compact two-column directory instead of
        one endless vertical list. All links remain in HTML.
     ---------------------------------------------------------- */
  .knowledge-cluster--offenses{
    padding:24px 18px!important;
    min-height:auto!important;
  }

  .knowledge-cluster--offenses .knowledge-cluster__links--offenses{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0 16px!important;
    width:100%!important;
    margin-top:18px!important;
  }

  .knowledge-cluster--offenses .knowledge-cluster__links--offenses a{
    width:100%!important;
    min-width:0!important;
    padding:9px 0!important;
    margin:0!important;
    border:0!important;
    border-bottom:1px solid rgba(176,138,75,.34)!important;
    border-radius:0!important;
    font-size:9px!important;
    line-height:1.3!important;
    color:#fff!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses{
    margin-top:18px!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }

  .knowledge-cluster--offenses .knowledge-network__all--offenses a{
    min-height:42px!important;
    padding:9px 8px!important;
    border-radius:0!important;
    font-size:8px!important;
    line-height:1.25!important;
  }
}

@media (max-width:370px){
  .knowledge-cluster--offenses .knowledge-cluster__links--offenses{
    grid-template-columns:1fr!important;
  }
}

/* ==========================================================
   V14 — FINAL MOBILE MICRO-FIXES — 14.09.2026
   1) Google reviews CTA: stable 3-column alignment
   2) FAQ: smaller, lighter, more compact on mobile
   Desktop remains untouched.
   ========================================================== */
@media (max-width:900px){

  /* GOOGLE REVIEWS CTA */
  .reviews-google-link{
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    align-items:center!important;
    justify-content:stretch!important;
    column-gap:12px!important;
    width:100%!important;
    max-width:none!important;
    margin:18px 0 0!important;
    padding:14px 14px!important;
    text-align:left!important;
    white-space:normal!important;
  }

  .reviews-google-link::before{
    justify-self:start!important;
    margin:0!important;
  }

  .reviews-google-link::after{
    justify-self:end!important;
    margin:0!important;
  }

  /* FAQ — same content, less visual mass */
  .answer-boom{
    padding-top:46px!important;
  }

  .answer-boom__head{
    padding-bottom:32px!important;
  }

  .answer-boom__head > .eyebrow{
    margin-bottom:12px!important;
  }

  .answer-boom__head h2 .sans{
    font-size:clamp(42px,11.5vw,54px)!important;
  }

  .answer-boom__head h2 .serif{
    font-size:clamp(34px,9vw,44px)!important;
    margin-left:10%!important;
  }

  .answer-boom__head > p{
    margin-top:20px!important;
    font-size:12px!important;
    line-height:1.55!important;
  }

  .answer-boom__question{
    grid-template-columns:24px minmax(0,1fr) 22px!important;
    gap:8px!important;
    min-height:70px!important;
    padding:10px 0!important;
  }

  .answer-boom__qtext{
    font-size:clamp(24px,6.7vw,31px)!important;
    line-height:1.02!important;
    letter-spacing:-.03em!important;
  }

  .answer-boom__no{
    font-size:7px!important;
  }

  .answer-boom__plus{
    font-size:20px!important;
  }

  .answer-boom__answer{
    margin-left:32px!important;
    padding:0 0 24px!important;
    font-size:12px!important;
    line-height:1.62!important;
  }
}
