/* Source: /deep-dive.css */
:root{--ink:#111312;--ink-soft:#1d211f;--green:#6bbd45;--green-dark:#4a8430;--green-pale:#e1efd8;--paper:#f4f4f1;--white:#fff;--line:#d5d8d3;--muted:#656b67}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
button{font:inherit}
[hidden]{display:none!important}
.detail-header{height:88px;position:absolute;inset:0 0 auto;z-index:10;display:flex;align-items:center;padding:0 5vw;border-bottom:1px solid rgba(255,255,255,.16);color:white}
.detail-logo{display:block;width:250px;height:auto}
.detail-header-actions{margin-left:auto;display:flex;align-items:center;gap:30px}
.back-link{font-size:11px;color:rgba(255,255,255,.72);padding:10px 0;border-bottom:1px solid rgba(255,255,255,.32)}
.language{display:flex;gap:6px;align-items:center;color:rgba(255,255,255,.4);font-size:10px}
.language button{border:0;background:none;color:rgba(255,255,255,.48);cursor:pointer;padding:5px}
.language button.active{color:white}
.detail-hero{min-height:720px;padding:160px 9vw 75px;background:linear-gradient(135deg,#0c0e0d 0%,#171a18 48%,#29302b 100%);color:white;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.detail-hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to right,black,transparent 82%)}
.detail-orbit{position:absolute;width:570px;height:570px;border-radius:50%;border:1px solid rgba(107,189,69,.22);right:-120px;top:125px;box-shadow:0 0 120px rgba(107,189,69,.08) inset}
.detail-orbit::after{content:"";position:absolute;width:62%;height:62%;border-radius:50%;border:1px solid rgba(107,189,69,.18);left:19%;top:19%}
.detail-hero-content{position:relative;z-index:2;width:min(920px,78%)}
.eyebrow,.kicker{text-transform:uppercase;font-size:10px;letter-spacing:.23em;font-weight:700;color:var(--green-dark);margin:0 0 30px}
.eyebrow{color:#b9dd9f;display:flex;align-items:center;gap:13px}.eyebrow::before{content:"";width:28px;height:1px;background:var(--green)}
.detail-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,6.5vw,92px);font-weight:400;line-height:1.01;letter-spacing:-.05em;margin:0 0 34px;max-width:1100px}
.hero-lead{font-size:17px;line-height:1.68;color:rgba(255,255,255,.7);max-width:720px;margin:0}
.hero-tags{position:relative;z-index:2;display:flex;flex-wrap:wrap;gap:9px;margin-top:45px}.hero-tags span{border:1px solid rgba(185,221,159,.28);padding:10px 14px;color:#cbe7b7;font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.topic-nav{display:grid;grid-template-columns:repeat(4,1fr);background:white;border-bottom:1px solid var(--line)}
.topic-nav a{padding:23px 5vw;border-right:1px solid var(--line);font-size:10px;letter-spacing:.06em;text-transform:uppercase;display:flex;justify-content:space-between;gap:16px;transition:background .2s,color .2s}
.topic-nav a:last-child{border-right:0}.topic-nav a:hover,.topic-nav a.active{background:linear-gradient(105deg,#e2f0db,#cce4c2);color:#17361b;box-shadow:inset 0 3px 0 var(--green)}.topic-nav b{font-weight:400;color:var(--green-dark)}
.content-section{padding:115px 8vw}
.section-head{display:grid;grid-template-columns:25% 1fr;gap:7%;margin-bottom:64px}.section-head h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5vw,70px);line-height:1.04;letter-spacing:-.04em;font-weight:400;margin:0;max-width:980px}.section-head p:not(.kicker){color:var(--muted);line-height:1.72;max-width:690px;margin:28px 0 0;font-size:14px}
.definition-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.definition-grid article{background:#fafaf7;padding:44px}.definition-grid h3,.opportunity-grid h3,.support-grid h3,.failure-grid h3{font-family:Georgia,serif;font-size:27px;line-height:1.18;font-weight:400;margin:0 0 21px}.definition-grid p{color:var(--muted);font-size:13px;line-height:1.75;margin:0}.definition-grid blockquote{margin:0;border-left:2px solid var(--green);padding:5px 0 5px 25px;font-family:Georgia,serif;font-size:22px;line-height:1.55;color:#354132}
.opportunity{background:var(--green-pale)}
.opportunity-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(74,132,48,.24)}
.opportunity-grid article{padding:38px 4vw 10px 0;border-right:1px solid rgba(74,132,48,.24);min-height:230px}.opportunity-grid article+article{padding-left:4vw}.opportunity-grid article:last-child{border-right:0}.opportunity-grid article::before{content:"";display:block;width:38px;height:2px;background:var(--green);margin-bottom:32px}.opportunity-grid p{color:#4c5b47;font-size:12px;line-height:1.7;margin:0}
.method{background:var(--ink);color:white}.method .kicker{color:#b9dd9f}.method .section-head p:not(.kicker){color:rgba(255,255,255,.58)}
.method-flow{display:grid;grid-template-columns:repeat(4,1fr);position:relative}.method-flow::before{content:"";position:absolute;height:1px;left:0;right:0;top:5px;background:rgba(255,255,255,.16)}
.method-flow article{position:relative;padding:0 36px 0 0}.method-flow article+article{padding-left:28px}.method-dot{width:10px;height:10px;background:var(--green);border-radius:50%;box-shadow:0 0 0 7px var(--ink);margin-bottom:38px;position:relative;z-index:2}.method-flow h3{font-family:Georgia,serif;font-size:24px;line-height:1.2;font-weight:400;margin:0 0 17px}.method-flow p{font-size:12px;line-height:1.68;color:rgba(255,255,255,.58);margin:0}
.failure-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);padding:1px}.failure-grid article{background:#f9f9f6;padding:38px;min-height:255px}.failure-grid small{display:block;color:var(--green-dark);font-size:8px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:34px}.failure-grid p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}
.context-band{background:#e9ece6}.context-list{border-top:1px solid #cbd0c8}.context-list article{display:grid;grid-template-columns:28% 1fr;gap:6%;padding:34px 0;border-bottom:1px solid #cbd0c8}.context-list h3{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:0}.context-list p{color:var(--muted);font-size:13px;line-height:1.7;margin:0}.context-list em{font-style:normal;color:var(--green-dark)}
.regulatory-landscape{background:#f5f5f2}.landscape-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);padding:1px}.landscape-card{background:white;padding:38px;min-height:330px}.landscape-card h3{font-family:Georgia,serif;font-size:27px;line-height:1.2;font-weight:400;margin:0 0 14px}.landscape-card>p{font-size:12px;line-height:1.68;color:var(--muted);margin:0 0 26px}.keyword-list{display:flex;flex-wrap:wrap;gap:7px}.keyword-list span{border:1px solid #cdd2ca;background:#f5f7f2;padding:9px 11px;color:#40513c;font-size:8px;letter-spacing:.06em;text-transform:uppercase}.audit-experience{margin-top:1px;background:var(--ink);color:white;padding:44px;display:grid;grid-template-columns:34% 1fr;gap:7%}.audit-experience .kicker{color:#b9dd9f;margin:0}.audit-experience h3{font-family:Georgia,serif;font-size:31px;line-height:1.22;font-weight:400;margin:0 0 18px}.audit-experience p{font-size:12px;line-height:1.75;color:rgba(255,255,255,.62);margin:0}.audit-experience strong{color:#b9dd9f;font-weight:400}
.support{background:white}.support-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);padding:1px}.support-grid article{background:#f8f8f5;padding:38px;min-height:245px;position:relative}.support-grid article::before{content:"";position:absolute;left:38px;top:0;width:52px;height:3px;background:var(--green)}.support-grid p{font-size:12px;line-height:1.7;color:var(--muted);margin:0}.support-note{margin:38px 0 0 auto;max-width:690px;border-left:2px solid var(--green);padding:4px 0 4px 22px;font-family:Georgia,serif;font-size:19px;line-height:1.55;color:#394138}
.sources{padding:70px 8vw;background:#eceeea}.sources h2{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:0 0 25px}.source-links{display:flex;flex-wrap:wrap;gap:10px}.source-links a{border:1px solid #c5cac3;background:#f8f8f5;padding:11px 14px;font-size:9px;letter-spacing:.04em;color:#495148}.source-links a:hover{border-color:var(--green-dark);color:var(--green-dark)}.source-note{font-size:9px;line-height:1.55;color:#7b817d;margin:22px 0 0;max-width:760px}
.detail-contact{background:linear-gradient(125deg,#3f7428,#4a8430);color:white;padding:95px 8vw;display:grid;grid-template-columns:58% 42%;gap:5%}.detail-contact h2{font-family:Georgia,serif;font-size:clamp(39px,5vw,66px);font-weight:400;letter-spacing:-.035em;line-height:1.05;margin:0}.detail-contact-copy{padding-top:28px}.detail-contact p{font-size:13px;line-height:1.7;color:rgba(255,255,255,.72);margin:0 0 25px}.detail-contact a{display:inline-flex;background:white;color:var(--ink);padding:16px 20px;min-width:210px;justify-content:space-between;font-size:11px}
.detail-footer{min-height:120px;background:#090b0a;color:rgba(255,255,255,.45);display:flex;align-items:center;padding:25px 5vw;gap:30px;font-size:9px;letter-spacing:.07em}.detail-footer img{width:220px}.detail-footer .legal{margin-left:auto;display:flex;gap:22px}.detail-footer .legal a{color:#b9dd9f}
@media(max-width:900px){.detail-hero{min-height:680px;padding:150px 7vw 75px}.detail-hero-content{width:100%}.topic-nav{grid-template-columns:1fr 1fr}.topic-nav a:nth-child(2){border-right:0}.topic-nav a:nth-child(-n+2){border-bottom:1px solid var(--line)}.content-section{padding:85px 7vw}.section-head{grid-template-columns:1fr;gap:18px}.section-head .kicker{margin-bottom:12px}.definition-grid{grid-template-columns:1fr}.opportunity-grid{grid-template-columns:1fr}.opportunity-grid article,.opportunity-grid article+article{border-right:0;border-bottom:1px solid rgba(74,132,48,.24);padding:32px 0;min-height:0}.method-flow{grid-template-columns:1fr 1fr;gap:46px 20px}.method-flow::before{display:none}.method-flow article,.method-flow article+article{padding:0}.method-dot{margin-bottom:22px}.failure-grid{grid-template-columns:1fr}.failure-grid article{min-height:0}.context-list article{grid-template-columns:1fr;gap:14px}.audit-experience{grid-template-columns:1fr;gap:22px}.detail-contact{grid-template-columns:1fr}.detail-contact-copy{padding-top:10px}}
@media(max-width:600px){.detail-header{height:74px;padding:0 6vw}.detail-logo{width:205px}.back-link{display:none}.detail-header-actions{gap:12px}.detail-hero{min-height:650px;padding:130px 7vw 65px}.detail-hero h1{font-size:49px}.hero-lead{font-size:15px}.detail-orbit{width:380px;height:380px;right:-200px;top:180px}.topic-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-nav a{min-height:72px;padding:16px 18px;align-items:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line)!important;font-size:9px;line-height:1.35}.topic-nav a:nth-child(2n){border-right:0}.topic-nav a:nth-last-child(-n+2){border-bottom:0!important}.topic-nav a.active{color:#17361b;background:linear-gradient(105deg,#dcefd5,#c6e1bc);box-shadow:inset 0 3px 0 var(--green)}.content-section{padding:75px 7vw}.section-head h2{font-size:42px}.definition-grid article{padding:30px 26px}.definition-grid blockquote{font-size:19px}.method-flow{grid-template-columns:1fr}.landscape-grid{grid-template-columns:1fr}.landscape-card{min-height:0;padding:30px 26px}.audit-experience{padding:32px 26px}.support-grid{grid-template-columns:1fr}.support-grid article{min-height:0;padding:32px 27px}.support-grid article::before{left:27px}.sources{padding:60px 7vw}.detail-contact{padding:75px 7vw}.detail-footer{flex-wrap:wrap;gap:18px 28px}.detail-footer>a{width:100%}.detail-footer .legal{margin-left:0;width:100%;flex-wrap:wrap}}

/* Dark theme: retain emphasis without a hard black insertion. */
.audit-experience {
  background:
    radial-gradient(circle at 84% 18%, rgba(107, 189, 69, 0.16), transparent 35%),
    linear-gradient(118deg, #14251a 0%, #1a2f21 54%, #213b29 100%);
  border: 1px solid rgba(107, 189, 69, 0.24);
  border-left: 5px solid #67b346;
  box-shadow: 0 22px 50px rgba(4, 12, 7, 0.18);
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Source: /homepage-overrides.css */
.kicker,
.eyebrow {
  font-size: clamp(14px, 1.25vw, 18px);
  line-height: 1.35;
  letter-spacing: 0.18em;
}

.kicker::after {
  content: "";
  display: block;
  width: 54px;
  height: 3px;
  margin-top: 20px;
  background: var(--bright, var(--green, #6bbd45));
}

.deep-dive-intro > span {
  padding-top: 8px;
  font-size: clamp(14px, 1.25vw, 18px);
  line-height: 1.35;
  letter-spacing: 0.18em;
}

.deep-dive-intro > span::after {
  content: "";
  display: block;
  width: 54px;
  height: 3px;
  margin-top: 20px;
  background: var(--bright, var(--green, #6bbd45));
}

:root {
  --display-font: "Iowan Old Style", "Baskerville", "Palatino Linotype", Georgia, serif;
  --ui-font: "Avenir Next", "Segoe UI", Arial, sans-serif;
  --premium-shadow: 0 24px 70px rgba(17, 19, 18, 0.09);
}

body {
  font-family: var(--ui-font);
  text-rendering: optimizeLegibility;
}

::selection {
  color: #111312;
  background: #b9dd9f;
}

:focus-visible {
  outline: 2px solid var(--bright, var(--green, #6bbd45));
  outline-offset: 4px;
}

h1,
h2,
h3,
.section-head h2,
.profile h2,
.contact h2,
.deep-dive-intro strong,
.service-card h3,
.mandate-list h3,
.tool-card h3,
.sector-list h3,
.detail-hero h1,
.definition-grid h3,
.opportunity-grid h3,
.support-grid h3,
.failure-grid h3,
.context-list h3,
.landscape-card h3,
.audit-experience h3,
.project-experience-grid h3,
.detail-contact h2 {
  font-family: var(--display-font);
}

.site-header,
.detail-header {
  background: linear-gradient(180deg, rgba(8, 10, 9, 0.42), rgba(8, 10, 9, 0));
}

.hero,
.detail-hero {
  background:
    radial-gradient(circle at 78% 26%, rgba(107, 189, 69, 0.16), transparent 30%),
    radial-gradient(circle at 92% 82%, rgba(74, 132, 48, 0.1), transparent 27%),
    linear-gradient(135deg, #090b0a 0%, #151916 50%, #29302b 100%);
}

.proof-strip {
  background: linear-gradient(90deg, #121613 0%, #1b211c 52%, #141915 100%);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom-color: rgba(107, 189, 69, 0.2);
}

.proof-strip div {
  color: #cad4cc;
  border-right-color: rgba(255, 255, 255, 0.12);
}

.hero h1,
.detail-hero h1,
.section-head h2,
.principle h2,
.contact h2,
.detail-contact h2 {
  text-wrap: balance;
}

.hero h1 {
  max-width: 980px;
  font-size: clamp(62px, 7vw, 104px);
  line-height: 0.97;
}

.detail-hero h1 {
  max-width: 1160px;
  font-size: clamp(58px, 7vw, 100px);
  line-height: 0.98;
}

.lead,
.hero-lead {
  font-size: clamp(17px, 1.45vw, 20px);
}

.button,
.detail-contact a {
  transition: transform 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.button span,
.detail-contact a span {
  transition: transform 180ms ease;
}

.button.primary,
.light-button,
.detail-contact a {
  box-shadow: 0 14px 36px rgba(0, 0, 0, 0.14);
}

.section-head h2,
.profile h2,
.contact h2 {
  font-size: clamp(46px, 5.3vw, 76px);
}

#root .principle,
#root .section-head {
  grid-template-columns: minmax(0, 1fr);
  row-gap: 30px;
}

#root .principle > .kicker,
#root .section-head > .kicker {
  margin: 0;
}

#root .principle > div,
#root .section-head > div {
  width: min(100%, 1120px);
}

.section-head > div > p,
.section-head p:not(.kicker) {
  font-size: clamp(14px, 1.2vw, 16px);
}

.section-head h2 + p {
  margin-top: 30px;
}

.service-grid,
.definition-grid,
.failure-grid,
.support-grid,
.landscape-grid {
  box-shadow: var(--premium-shadow);
}

.service-card,
.mandate-list article,
.tool-card,
.deep-dive-topic-grid a,
.definition-grid article,
.failure-grid article,
.support-grid article,
.landscape-card {
  transition: transform 220ms ease, background 220ms ease, box-shadow 220ms ease;
}

.service-card {
  position: relative;
  overflow: hidden;
}

.service-card::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--bright, #6bbd45) 0 22%, transparent 22%);
  transform: scaleX(0.58);
  transform-origin: left;
  transition: transform 220ms ease;
}

.deep-dive-links {
  padding-top: 10px;
}

.deep-dive-topic-grid {
  box-shadow: var(--premium-shadow);
}

.deep-dive-topic-grid a {
  min-height: 195px;
  padding: 34px 30px 30px;
  font-size: clamp(23px, 2.1vw, 31px);
}

.deep-dive-topic-grid b {
  font-size: 18px;
}

.mandate-list,
.tool-grid {
  box-shadow: var(--premium-shadow);
}

.profile-photo img {
  filter: grayscale(0.58) saturate(0.72) contrast(1.07);
}

.principle-mark {
  font-family: Arial, Helvetica, sans-serif;
  font-variant-emoji: text;
}

.contact-link span,
.deep-dive-topic-grid b,
.sector-list .arrow,
.light-button span,
.back-link,
.topic-nav b,
.detail-contact a span,
.source-links a {
  font-family: Arial, Helvetica, sans-serif;
  font-variant-emoji: text;
}

.theme-toggle {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 34px;
  padding: 7px 10px;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 999px;
  color: rgba(255, 255, 255, 0.78);
  background: rgba(8, 10, 9, 0.16);
  cursor: pointer;
  font: 600 9px/1 "Avenir Next", "Segoe UI", Arial, sans-serif;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  transition: border-color 180ms ease, color 180ms ease, background 180ms ease;
}

.theme-toggle:hover {
  color: #fff;
  border-color: rgba(185, 221, 159, 0.72);
  background: rgba(8, 10, 9, 0.30);
}

.theme-toggle-icon {
  position: relative;
  display: block;
  width: 14px;
  height: 14px;
  overflow: hidden;
  border: 1px solid currentColor;
  border-radius: 50%;
}

.theme-toggle-icon::before {
  content: "";
  position: absolute;
  inset: 0 50% 0 0;
  background: currentColor;
}

.theme-toggle[data-theme-state="light"] .theme-toggle-icon::before {
  inset: 2px;
  border-radius: 50%;
}

.theme-toggle[data-theme-state="dark"] .theme-toggle-icon::before {
  inset: 0 0 0 50%;
}

.evidence-grid {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 16%, rgba(107, 189, 69, 0.16), transparent 30%),
    linear-gradient(115deg, #eef5ea 0%, #f5f7f2 52%, #e4efde 100%);
  color: #111312;
  border-top: 1px solid rgba(74, 132, 48, 0.28);
  border-bottom: 1px solid rgba(74, 132, 48, 0.28);
  box-shadow: none;
}

.evidence-grid article {
  position: relative;
  min-height: 180px;
  padding: 35px 28px 32px;
  border-color: rgba(49, 94, 32, 0.16);
}

.evidence-grid strong {
  position: relative;
  color: #315e20;
  font-size: clamp(32px, 3.2vw, 48px);
  letter-spacing: -0.035em;
  line-height: 1.02;
  white-space: nowrap;
}

.evidence-grid p {
  position: relative;
  color: #566058;
  font-size: 11px;
  line-height: 1.6;
}

.sector-list article {
  grid-template-columns: 30% 1fr;
}

.sector-list .arrow {
  display: none;
}

.confidential {
  display: none;
}

.project-experience {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 88% 12%, rgba(107, 189, 69, 0.17), transparent 30%),
    radial-gradient(circle at 10% 92%, rgba(74, 132, 48, 0.09), transparent 25%),
    #111312;
  color: #fff;
}

.project-experience::after {
  content: "";
  position: absolute;
  right: -220px;
  bottom: -320px;
  width: 620px;
  height: 620px;
  border: 1px solid rgba(185, 221, 159, 0.12);
  border-radius: 50%;
  pointer-events: none;
}

.project-experience > * {
  position: relative;
  z-index: 1;
}

.project-experience .kicker {
  color: #b9dd9f;
}

.project-experience .section-head p:not(.kicker) {
  color: rgba(255, 255, 255, 0.66);
}

.project-experience-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border: 1px solid rgba(185, 221, 159, 0.18);
  box-shadow: 0 30px 75px rgba(0, 0, 0, 0.24);
}

.project-experience-grid article {
  position: relative;
  min-height: 260px;
  padding: 38px 32px 34px;
  border-right: 1px solid rgba(185, 221, 159, 0.16);
  border-bottom: 1px solid rgba(185, 221, 159, 0.16);
  background: rgba(255, 255, 255, 0.025);
  transition: background 220ms ease, transform 220ms ease;
}

.project-experience-grid article:nth-child(3n) {
  border-right: 0;
}

.project-experience-grid article:nth-last-child(-n + 3) {
  border-bottom: 0;
}

.project-experience-grid article::before {
  content: "";
  position: absolute;
  top: 0;
  left: 32px;
  width: 72px;
  height: 4px;
  background: var(--bright, var(--green, #6bbd45));
}

.project-experience-grid span {
  display: block;
  margin: 8px 0 36px;
  color: #b9dd9f;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.15em;
  line-height: 1.4;
  text-transform: uppercase;
}

.project-experience-grid h3 {
  margin: 0 0 17px;
  color: #fff;
  font-size: clamp(25px, 2.2vw, 33px);
  font-weight: 400;
  line-height: 1.1;
}

.project-experience-grid p {
  margin: 0;
  color: rgba(255, 255, 255, 0.62);
  font-size: 12px;
  line-height: 1.75;
}

.project-experience blockquote {
  max-width: 960px;
  margin: 68px 0 0;
  padding: 8px 0 8px 34px;
  border-left: 3px solid var(--bright, var(--green, #6bbd45));
  color: #d3e9c3;
  font-family: var(--display-font);
  font-size: clamp(25px, 3vw, 40px);
  font-weight: 400;
  letter-spacing: -0.025em;
  line-height: 1.18;
}

.contact,
.detail-contact {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 82% 25%, rgba(255, 255, 255, 0.14), transparent 26%),
    linear-gradient(125deg, #315e20, #4a8430 58%, #5aa63a);
}

.contact::after,
.detail-contact::after {
  content: "";
  position: absolute;
  width: 360px;
  height: 360px;
  right: -130px;
  bottom: -240px;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 50%;
  pointer-events: none;
}

.contact > *,
.detail-contact > * {
  position: relative;
  z-index: 1;
}

#kontakt {
  scroll-margin-top: 24px;
}

[data-contact-notice] {
  position: fixed;
  z-index: 100;
  right: 28px;
  bottom: 28px;
  max-width: min(420px, calc(100vw - 36px));
  padding: 16px 19px;
  color: #fff;
  background: #111312;
  border-left: 3px solid #6bbd45;
  box-shadow: 0 18px 48px rgba(17, 19, 18, 0.24);
  font-size: 12px;
  line-height: 1.5;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.2s ease, transform 0.2s ease;
}

[data-contact-notice].is-visible {
  opacity: 1;
  transform: translateY(0);
}

.privacy-notice {
  position: fixed;
  z-index: 120;
  right: 28px;
  bottom: 28px;
  width: min(470px, calc(100vw - 36px));
  padding: 24px 25px 22px;
  color: #fff;
  background: rgba(17, 19, 18, 0.98);
  border-top: 3px solid var(--bright, #6bbd45);
  box-shadow: 0 24px 70px rgba(8, 10, 9, 0.28);
}

.privacy-notice strong {
  display: block;
  margin-bottom: 10px;
  font-family: var(--display-font);
  font-size: 22px;
  font-weight: 400;
}

.privacy-notice p {
  margin: 0;
  color: rgba(255, 255, 255, 0.68);
  font-size: 11px;
  line-height: 1.65;
}

.privacy-notice-actions {
  display: flex;
  align-items: center;
  gap: 19px;
  margin-top: 19px;
}

.privacy-notice button {
  cursor: pointer;
  padding: 11px 16px;
  color: #111312;
  background: #fff;
  border: 0;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.privacy-notice a {
  padding-bottom: 4px;
  color: #b9dd9f;
  border-bottom: 1px solid rgba(185, 221, 159, 0.4);
  font-size: 10px;
  letter-spacing: 0.06em;
}

.hero-tags span {
  background: rgba(107, 189, 69, 0.08);
  border-color: rgba(185, 221, 159, 0.36);
  padding: 11px 15px;
  font-size: 10px;
}

.topic-nav {
  position: sticky;
  top: 0;
  z-index: 12;
  box-shadow: 0 10px 34px rgba(17, 19, 18, 0.08);
}

.topic-nav a {
  padding-top: 26px;
  padding-bottom: 26px;
  font-size: 11px;
}

.definition-grid article,
.failure-grid article,
.support-grid article,
.landscape-card {
  position: relative;
}

.definition-grid article::after,
.failure-grid article::after,
.landscape-card::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, var(--green, #6bbd45) 0 18%, transparent 18%);
  opacity: 0;
  transition: opacity 220ms ease;
}

.method-flow h3 {
  font-size: clamp(24px, 2vw, 30px);
}

.detail-contact h2 {
  max-width: 800px;
}

@media (hover: hover) {
  .button:hover,
  .detail-contact a:hover {
    transform: translateY(-3px);
    box-shadow: 0 20px 42px rgba(0, 0, 0, 0.2);
  }

  .button:hover span,
  .detail-contact a:hover span {
    transform: translateX(4px);
  }

  .service-card:hover,
  .mandate-list article:hover,
  .tool-card:hover,
  .deep-dive-topic-grid a:hover,
  .definition-grid article:hover,
  .failure-grid article:hover,
  .support-grid article:hover,
  .landscape-card:hover {
    z-index: 2;
    transform: translateY(-5px);
    background: #fff;
    box-shadow: 0 22px 52px rgba(17, 19, 18, 0.12);
  }

  .service-card:hover::after {
    transform: scaleX(1);
  }

  .definition-grid article:hover::after,
  .failure-grid article:hover::after,
  .landscape-card:hover::after {
    opacity: 1;
  }

  .project-experience-grid article:hover {
    z-index: 2;
    transform: translateY(-4px);
    background: rgba(255, 255, 255, 0.07);
  }
}

@media (max-width: 900px) {
  .topic-nav {
    position: static;
  }

  .deep-dive-topic-grid a {
    min-height: 160px;
  }

  .project-experience-grid {
    grid-template-columns: 1fr 1fr;
  }

  .evidence-grid article {
    border-color: rgba(49, 94, 32, 0.16);
  }

  .sector-list article {
    grid-template-columns: 34% 1fr;
  }

  .project-experience-grid article:nth-child(3n) {
    border-right: 1px solid rgba(185, 221, 159, 0.16);
  }

  .project-experience-grid article:nth-child(2n) {
    border-right: 0;
  }

  .project-experience-grid article:nth-last-child(-n + 3) {
    border-bottom: 1px solid rgba(185, 221, 159, 0.16);
  }

  .project-experience-grid article:nth-last-child(-n + 2) {
    border-bottom: 0;
  }
}

@media (max-width: 600px) {
  .site-header .brand-logo {
    width: 175px;
  }

  .site-header .header-actions {
    gap: 8px;
    margin-right: 4px;
  }

  .site-header .language {
    gap: 2px;
  }

  .theme-toggle {
    width: 36px;
    min-width: 36px;
    height: 36px;
    min-height: 36px;
    justify-content: center;
    padding: 0;
  }

  .theme-toggle-label {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
  }

  .deep-dive-topic-grid b,
  .topic-nav a:not(.active) b,
  .sector-list .arrow,
  .light-button span,
  .detail-contact a span {
    position: relative;
    display: block;
    width: 18px;
    min-width: 18px;
    height: 18px;
    color: transparent;
    font-size: 0;
    line-height: 0;
  }

  .deep-dive-topic-grid b::before,
  .topic-nav a:not(.active) b::before,
  .sector-list .arrow::before,
  .light-button span::before,
  .detail-contact a span::before {
    content: "";
    position: absolute;
    top: 9px;
    left: 2px;
    width: 15px;
    height: 1.5px;
    background: var(--green-dark, #4a8430);
    transform: rotate(-45deg);
    transform-origin: center;
  }

  .deep-dive-topic-grid b::after,
  .topic-nav a:not(.active) b::after,
  .sector-list .arrow::after,
  .light-button span::after,
  .detail-contact a span::after {
    content: "";
    position: absolute;
    top: 1px;
    right: 1px;
    width: 7px;
    height: 7px;
    border-top: 1.5px solid var(--green-dark, #4a8430);
    border-right: 1.5px solid var(--green-dark, #4a8430);
  }

  .principle-mark {
    display: none;
  }

  .profile-photo {
    width: min(360px, 100%);
  }

  [data-contact-notice] {
    right: 18px;
    bottom: 18px;
  }

  .privacy-notice {
    right: 18px;
    bottom: 18px;
    padding: 21px 20px 19px;
  }

  .kicker,
  .eyebrow,
  .deep-dive-intro > span {
    font-size: 13px;
  }

  .hero h1,
  .detail-hero h1 {
    font-size: clamp(48px, 13vw, 58px);
    line-height: 0.99;
  }

  .lead,
  .hero-lead {
    font-size: 15px;
  }

  .section-head h2,
  .profile h2,
  .contact h2,
  .detail-contact h2 {
    font-size: clamp(41px, 11vw, 50px);
  }

  .section-head h2 + p {
    margin-top: 22px;
  }

  #root .principle,
  #root .section-head {
    row-gap: 24px;
  }

  .proof-strip div {
    border-bottom-color: rgba(255, 255, 255, 0.12) !important;
  }

  .deep-dive-topic-grid a {
    min-height: 135px;
    font-size: 23px;
  }

  .evidence-grid article {
    min-height: 132px;
    padding-top: 30px;
    padding-bottom: 28px;
  }

  .evidence-grid strong {
    font-size: clamp(34px, 11vw, 44px);
  }

  .sector-list article {
    grid-template-columns: 1fr;
  }

  .sector-list > article > div {
    grid-column: auto;
  }

  .project-experience-grid {
    grid-template-columns: 1fr;
  }

  .project-experience-grid article,
  .project-experience-grid article:nth-child(2n),
  .project-experience-grid article:nth-child(3n),
  .project-experience-grid article:nth-last-child(-n + 2) {
    min-height: 0;
    border-right: 0;
    border-bottom: 1px solid rgba(185, 221, 159, 0.16);
  }

  .project-experience-grid article:last-child {
    border-bottom: 0;
  }

  .project-experience blockquote {
    margin-top: 48px;
    padding-left: 24px;
  }
}
