:root {
  --ink: #090b0d;
  --ink-soft: #111418;
  --paper: #f3f4f2;
  --paper-warm: #e9ebe7;
  --muted: #9ba1a7;
  --muted-dark: #61666a;
  --line: rgba(255, 255, 255, 0.16);
  --line-dark: rgba(9, 11, 13, 0.18);
  --accent: #d7ff43;
  --display: "Arial Black", "Helvetica Neue", Helvetica, Arial, sans-serif;
  --sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
  --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
}

/* Shared multipage language: large type, sharp edges, editorial spacing. */
.eyebrow { font: 500 .875rem/1.5 var(--mono); letter-spacing: .075em; text-transform: uppercase; }
.page-hero { padding: 135px clamp(20px,5vw,76px) 90px; border-bottom: 1px solid var(--line); background: var(--ink); }
.breadcrumb { display:flex; flex-wrap:wrap; gap:12px; color:var(--muted); font-size:.875rem; margin-bottom:65px; }
.breadcrumb a:hover { color:var(--accent); }
.breadcrumb ol { margin:0; padding:0; display:flex; flex-wrap:wrap; gap:10px; list-style:none; }
.breadcrumb li { display:flex; gap:10px; }
.breadcrumb li + li::before { content:'/'; color:var(--muted); }
.h1-topic { display:block; color:var(--accent); font:600 clamp(1.1rem,2vw,1.65rem)/1.5 var(--sans); letter-spacing:0; margin-bottom:25px; }
.footer-services { padding:0 0 60px; margin-bottom:55px; border-bottom:1px solid var(--line); }
.footer-services h2 { font-size:1.5rem; margin:0 0 30px; }
.footer-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:35px; }
.footer-service-grid h3 { font-size:1rem; color:var(--accent); margin:0 0 18px; }
.footer-service-grid a { display:block; width:fit-content; font-size:.9rem; line-height:1.6; margin-bottom:9px; color:#bdc4ca; }
.footer-service-grid a:hover { color:var(--paper); text-decoration:underline; }
.topic-links { padding:35px clamp(20px,5vw,76px); border-top:1px solid var(--line); }
.topic-links h2 { font-size:1.25rem; margin:0 0 20px; }
.topic-links a { display:inline-block; font-size:1rem; margin:0 25px 15px 0; text-decoration:underline; text-underline-offset:5px; line-height:1.7; }
.article-byline { color:#5b6268; font-size:1rem; }
.article-related a { display:block; margin:16px 0; }
@media(max-width:680px){ .footer-service-grid { grid-template-columns:1fr; gap:28px; } }
.page-hero > .eyebrow { color:var(--accent); }
.page-hero h1 { font-size:clamp(2.8rem,7.5vw,7.6rem); line-height:1.03; letter-spacing:-.065em; margin:25px 0 30px; max-width:1150px; text-wrap:balance; }
.page-hero > p { max-width:760px; color:#bdc3c8; font-size:clamp(1.125rem,1.8vw,1.45rem); line-height:1.65; margin:0 0 35px; }
.button { display:inline-flex; align-items:center; justify-content:center; min-height:52px; padding:16px 23px; border:1px solid var(--accent); background:var(--accent); color:var(--ink); font:700 1rem/1.3 var(--sans); cursor:pointer; transition:background .2s,transform .2s; }
.button:hover { background:#e5ff86; transform:translateY(-2px); }
.button-dark { color:var(--paper); background:var(--ink); border-color:var(--ink); }
.button-dark:hover { background:#30363b; }
.content-section { padding:85px clamp(20px,5vw,76px); border-bottom:1px solid var(--line-dark); }
.content-heading { display:grid; grid-template-columns:1fr 2fr; gap:35px; margin-bottom:48px; align-items:start; }
.content-heading > .eyebrow { padding-top:12px; color:#62676b; }
.content-heading h2, .split-band h2 { margin:0; font:800 clamp(2rem,4vw,4rem)/1.08 var(--sans); letter-spacing:-.05em; max-width:820px; text-wrap:balance; }
.prose { max-width:790px; margin-left:0; font-size:1.125rem; line-height:1.8; color:#454b50; }
.content-section > .prose { margin-left:calc((100% + 70px) / 3); }
.prose p:first-child { margin-top:0; }
.detail-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid var(--line-dark); gap:0; }
.detail-card { padding:30px 30px 20px 0; }
.detail-card + .detail-card { padding-left:30px; border-left:1px solid var(--line-dark); }
.detail-card h3 { margin:40px 0 18px; font-size:clamp(1.4rem,2.2vw,2.1rem); line-height:1.2; letter-spacing:-.035em; }
.detail-card p { color:#50565b; line-height:1.75; font-size:1rem; margin:0; }
.detail-card:nth-child(4) { border-left:0; padding-left:0; border-top:1px solid var(--line-dark); }
.catalog { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:var(--line-dark); border:1px solid var(--line-dark); }
.catalog-card { display:flex; flex-direction:column; align-items:start; min-height:340px; padding:32px; background:var(--paper); color:var(--ink); transition:background .2s; }
.catalog-card:hover { background:#e0e4db; }
.catalog-card h3 { margin:32px 0 18px; font-size:clamp(1.6rem,2.4vw,2.5rem); line-height:1.12; letter-spacing:-.045em; }
.catalog-card p { color:#53595d; font-size:1rem; line-height:1.7; margin:0 0 32px; }
.card-link { margin-top:auto; padding-top:20px; font-weight:700; font-size:.95rem; }
.section-dark .catalog { background:var(--line); border-color:var(--line); }
.section-dark .catalog-card { background:var(--ink); color:var(--paper); }
.section-dark .catalog-card:hover { background:#1c2226; }
.section-dark .catalog-card > .eyebrow,.section-dark .card-link { color:var(--accent); }
.section-dark .catalog-card p { color:#b5bcc1; }
.catalog-intro { color:#b5bcc1; max-width:760px; line-height:1.7; font-size:1.125rem; margin:35px 0 55px; }
.services > .button { margin-top:35px; }
.split-band { display:grid; grid-template-columns:1.1fr 1fr; gap:70px; padding:90px clamp(20px,5vw,76px); background:var(--accent); color:var(--ink); }
.split-band .eyebrow { display:block; margin-bottom:30px; }
.split-band p { font-size:1.125rem; line-height:1.75; margin:0; }
.split-band .button { border-color:var(--ink); margin-top:30px; }
.closing { padding:100px clamp(20px,5vw,76px); background:var(--ink); }
.closing .eyebrow { color:var(--muted); }
.closing h2 { font:800 clamp(2.5rem,6vw,6rem)/1.07 var(--sans); letter-spacing:-.06em; margin:30px 0 40px; }
.closing em { font-style:normal; color:var(--accent); }
.team-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px 25px; }
.person-initials { aspect-ratio:1.35; display:flex; align-items:end; padding:26px; color:var(--accent); background:var(--ink); font:900 clamp(4rem,8vw,8rem)/1 var(--display); letter-spacing:-.07em; border-top:6px solid var(--accent); }
.person:nth-child(3n+2) .person-initials { background:var(--accent); color:var(--ink); border-color:var(--ink); }
.person:nth-child(3n) .person-initials { background:#d8dcd5; color:var(--ink); border-color:var(--ink); }
.person p { margin:22px 0 10px; color:#555d62; font-size:1rem; }
.person h3 { margin:0; font-size:2rem; letter-spacing:-.04em; }
.article-body { background:var(--paper); color:var(--ink); padding:75px max(20px,calc((100vw - 820px)/2)); font-size:1.125rem; line-height:1.85; }
.article-body section { margin-bottom:55px; }
.article-body h2 { font-size:clamp(1.75rem,3vw,2.5rem); line-height:1.2; letter-spacing:-.04em; margin:36px 0 20px; }
.article-body a:not(.text-link) { text-decoration:underline; }
.contact-layout { display:grid; grid-template-columns:1fr 1.2fr; gap:80px; }
.contact-layout h2 { font-size:clamp(1.7rem,3vw,2.6rem); line-height:1.1; letter-spacing:-.04em; margin:0 0 30px; }
.contact-layout p { line-height:1.7; }
.contact-address { display:block; width:fit-content; border-bottom:1px solid; margin:0 0 25px; font-size:clamp(1.1rem,2vw,1.6rem); }
#project-form { padding:35px; background:var(--ink); color:var(--paper); }
#project-form label { display:grid; gap:9px; margin:0 0 24px; font-size:1rem; }
#project-form input,#project-form select,#project-form textarea { width:100%; min-width:0; border:1px solid #51595e; border-radius:0; background:#161b1f; color:var(--paper); padding:13px; font:inherit; line-height:1.5; }
#project-form textarea { resize:vertical; }
#project-form .form-note { color:#b9c0c5; font-size:.875rem; }
.form-note a { text-decoration:underline; }
#form-status { font-size:1rem; color:var(--accent); }
.sitemap-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 35px; }
.sitemap-links a { padding:20px 0; border-bottom:1px solid var(--line-dark); line-height:1.5; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid #729018; outline-offset:5px; }
.desktop-nav a[aria-current="page"] { color:var(--accent); }
.mobile-menu nav a { display:block; padding:16px 0; font-size:clamp(1.6rem,7vw,2.4rem); }
.mobile-menu.is-open { overflow-y:auto; }
@media(max-width:980px){
 .catalog,.detail-grid,.team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .content-heading { grid-template-columns:1fr; gap:20px; }
 .content-section > .prose { margin-left:0; }
 .detail-card + .detail-card { padding-left:0; border-left:0; }
 .detail-card { border-bottom:1px solid var(--line-dark); }
 .split-band,.contact-layout { grid-template-columns:1fr; gap:40px; }
 .sitemap-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:680px){
 .page-hero { padding-top:115px; padding-bottom:55px; }
 .breadcrumb { margin-bottom:38px; }
 .page-hero h1 { font-size:clamp(2.5rem,10vw,4rem); margin-top:22px; line-height:1.08; letter-spacing:-.05em; }
 .content-section,.split-band,.closing { padding-top:55px; padding-bottom:55px; }
 .catalog,.detail-grid { grid-template-columns:1fr; }
 .catalog-card { padding:26px; min-height:300px; }
 .team-grid { gap:30px 15px; }
 .person-initials { padding:15px; font-size:3.8rem; }
 .person h3 { font-size:1.6rem; }
 .person p { font-size:.875rem; }
 #project-form { padding:24px 20px; }
 .sitemap-links { grid-template-columns:1fr; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  overflow-x: hidden;
  background: var(--ink);
  color: var(--paper);
  font-family: var(--sans);
  text-rendering: optimizeLegibility;
}
body.menu-open { overflow: hidden; }

::selection { background: var(--accent); color: var(--ink); }
a { color: inherit; text-decoration: none; }
button, summary { font: inherit; }
button { color: inherit; }
img, svg { display: block; max-width: 100%; }

.skip-link {
  position: fixed;
  left: 16px;
  top: -80px;
  z-index: 1000;
  padding: 12px 16px;
  background: var(--accent);
  color: var(--ink);
  font-weight: 700;
}
.skip-link:focus { top: 16px; }

.site-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  min-height: 88px;
  padding: 0 clamp(20px, 4vw, 64px);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 28px;
  border-bottom: 1px solid var(--line);
  transition: background .3s ease, transform .3s ease;
}
.site-header.is-fixed {
  position: fixed;
  min-height: 70px;
  background: rgba(9, 11, 13, .92);
  backdrop-filter: blur(18px);
}
.site-header.is-hidden { transform: translateY(-100%); }

.wordmark {
  width: fit-content;
  display: grid;
  font: 900 1rem/.82 var(--display);
  letter-spacing: -.065em;
}
.wordmark span:last-child { color: var(--accent); }

.desktop-nav {
  display: flex;
  gap: 30px;
  color: #c3c7ca;
  font-size: .88rem;
}
.desktop-nav a { position: relative; padding: 8px 0; }
.desktop-nav a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: 2px;
  height: 1px;
  background: var(--accent);
  transition: right .25s ease;
}
.desktop-nav a:hover::after,
.desktop-nav a:focus-visible::after { right: 0; }

.header-cta {
  justify-self: end;
  font-size: .88rem;
  font-weight: 700;
}
.header-cta span { color: var(--accent); margin-left: 5px; }
.menu-toggle, .mobile-menu { display: none; }

.hero {
  position: relative;
  min-height: 100svh;
  padding: clamp(124px, 16vh, 174px) clamp(20px, 4vw, 64px) 40px;
  overflow: hidden;
  isolation: isolate;
}
.hero::before {
  content: "";
  position: absolute;
  inset: -20%;
  z-index: -2;
  background:
    radial-gradient(circle at 79% 35%, rgba(215, 255, 67, .10), transparent 23%),
    linear-gradient(125deg, transparent 55%, rgba(255,255,255,.025));
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -3;
  opacity: .24;
  background-image:
    linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 72px 72px;
  mask-image: linear-gradient(to bottom, black, transparent 86%);
}

.hero-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  color: var(--muted);
  font: 500 .75rem/1.3 var(--mono);
  letter-spacing: .06em;
  text-transform: uppercase;
}
.status { display: flex; align-items: center; gap: 10px; }
.status i {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--accent);
  box-shadow: 0 0 18px var(--accent);
}

h1, h2, h3, p { overflow-wrap: anywhere; }
h1 {
  margin: clamp(56px, 9vh, 102px) 0 0;
  max-width: 1220px;
  font: 900 clamp(4.4rem, 12.4vw, 11.6rem)/.77 var(--display);
  letter-spacing: -.085em;
}
.hero-label {
  display: block;
  margin: 0 0 clamp(20px, 3vh, 34px) .45em;
  color: #c4c8cb;
  font: 500 clamp(.78rem, 1.1vw, 1rem)/1.2 var(--mono);
  letter-spacing: .11em;
  text-transform: uppercase;
}
.hero-line { display: block; }
.hero-line--accent { color: var(--accent); }

.hero-bottom {
  margin-top: clamp(44px, 8vh, 90px);
  display: grid;
  grid-template-columns: minmax(280px, 520px) auto;
  align-items: end;
  gap: 30px;
}
.hero-bottom p {
  margin: 0;
  color: #bec3c7;
  font-size: clamp(1rem, 1.55vw, 1.32rem);
  line-height: 1.58;
}
.round-link {
  width: 94px;
  aspect-ratio: 1;
  border: 1px solid #4d5358;
  border-radius: 50%;
  display: grid;
  place-content: center;
  justify-items: center;
  gap: 8px;
  font: 500 .75rem/1 var(--mono);
  text-transform: uppercase;
  transition: background .25s, color .25s, transform .25s;
}
.round-link strong { color: var(--accent); font-size: 1.2rem; }
.round-link:hover,
.round-link:focus-visible { background: var(--accent); color: var(--ink); transform: rotate(-4deg); }
.round-link:hover strong,
.round-link:focus-visible strong { color: var(--ink); }

.signal {
  position: absolute;
  right: -2%;
  bottom: 1%;
  z-index: -1;
  width: min(50vw, 720px);
  opacity: .72;
}
.signal-label {
  display: block;
  margin: 0 0 8px 8px;
  color: #686e74;
  font: 500 .75rem var(--mono);
  letter-spacing: .1em;
}
.signal svg { width: 100%; overflow: visible; }
.signal .gridline { fill: none; stroke: rgba(255,255,255,.07); stroke-width: 1; }
.signal .trend {
  fill: none;
  stroke: url(#trend-line);
  stroke-width: 2.3;
  stroke-dasharray: 920;
  stroke-dashoffset: 920;
  vector-effect: non-scaling-stroke;
  filter: drop-shadow(0 0 10px rgba(215,255,67,.35));
  animation: draw-line 2.4s .4s cubic-bezier(.19,1,.22,1) forwards;
}
.signal circle {
  fill: var(--accent);
  opacity: 0;
  animation: fade-in .4s 2.2s forwards;
}

.ticker {
  overflow: hidden;
  border-top: 1px solid var(--accent);
  border-bottom: 1px solid var(--accent);
  background: var(--accent);
  color: var(--ink);
}
.ticker-track {
  width: max-content;
  padding: 13px 0;
  display: flex;
  align-items: center;
  gap: 25px;
  font: 800 .82rem/1 var(--mono);
  letter-spacing: .07em;
  animation: ticker 26s linear infinite;
}
.ticker-track i { width: 5px; height: 5px; background: var(--ink); transform: rotate(45deg); }

.section-light { background: var(--paper); color: var(--ink); }
.section-dark { background: var(--ink); color: var(--paper); }
.manifesto, .services, .process, .reviews, .seo-copy, .faq, .contact {
  padding: clamp(86px, 12vw, 180px) clamp(20px, 4vw, 64px);
}
.section-tag {
  color: currentColor;
  opacity: .56;
  font: 500 .75rem/1.3 var(--mono);
  letter-spacing: .09em;
}
.manifesto-grid {
  margin-top: clamp(48px, 8vw, 110px);
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(280px, .55fr);
  gap: clamp(50px, 10vw, 150px);
  align-items: end;
}
.display-heading {
  margin: 0;
  font: 900 clamp(3.2rem, 7.8vw, 8.2rem)/.88 var(--display);
  letter-spacing: -.075em;
}
.manifesto-copy { max-width: 500px; }
.manifesto-copy .lead {
  margin: 0 0 28px;
  font-size: clamp(1.45rem, 2.3vw, 2.3rem);
  line-height: 1.18;
  letter-spacing: -.035em;
}
.manifesto-copy > p:not(.lead) {
  margin: 0;
  color: #4e5356;
  font-size: 1.05rem;
  line-height: 1.72;
}
.text-link {
  display: inline-flex;
  gap: 12px;
  margin-top: 36px;
  padding-bottom: 6px;
  border-bottom: 1px solid currentColor;
  font-weight: 700;
}
.text-link span { transition: transform .2s; }
.text-link:hover span { transform: translate(3px,-3px); }

.principles {
  margin-top: clamp(74px, 10vw, 145px);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid var(--line-dark);
  border-bottom: 1px solid var(--line-dark);
}
.principle {
  min-height: 285px;
  padding: 28px clamp(18px, 3vw, 42px) 34px 0;
}
.principle + .principle { padding-left: clamp(18px, 3vw, 42px); border-left: 1px solid var(--line-dark); }
.principle span { color: var(--muted-dark); font: 500 .75rem var(--mono); }
.principle h3 {
  margin: 77px 0 16px;
  font-size: clamp(1.8rem, 3vw, 3rem);
  letter-spacing: -.05em;
}
.principle p { margin: 0; max-width: 330px; color: #555a5e; line-height: 1.58; }

.section-heading-row {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 40px;
}
.section-intro { margin: 0; max-width: 430px; color: var(--muted); font-size: 1rem; line-height: 1.6; }
.services-title { margin-top: clamp(60px, 9vw, 128px); }
.services-title em { color: var(--accent); font-style: normal; }
.service-list { margin-top: clamp(70px, 9vw, 125px); border-top: 1px solid var(--line); }
.service-item { border-bottom: 1px solid var(--line); }
.service-item summary {
  min-height: 116px;
  display: grid;
  grid-template-columns: 70px minmax(260px, 1.1fr) minmax(200px, .8fr) 34px;
  align-items: center;
  gap: 24px;
  list-style: none;
  cursor: pointer;
}
.service-item summary::-webkit-details-marker { display: none; }
.service-item summary:focus-visible { outline: 2px solid var(--accent); outline-offset: -2px; }
.service-no { color: var(--muted); font: 500 .75rem var(--mono); }
.service-name { font-size: clamp(1.75rem, 3.3vw, 3.5rem); font-weight: 700; letter-spacing: -.045em; }
.service-tags { color: var(--muted); font: 500 .75rem/1.5 var(--mono); letter-spacing: .05em; text-align: right; }
.service-icon {
  justify-self: end;
  color: var(--accent);
  font-size: 1.5rem;
  font-weight: 300;
  transition: transform .3s ease;
}
.service-item[open] .service-icon { transform: rotate(45deg); }
.service-content {
  padding: 0 58px 50px 94px;
  display: grid;
  grid-template-columns: minmax(280px, 1fr) minmax(240px, .8fr);
  gap: 70px;
  color: #b7bcc0;
}
.service-content p { margin: 0; max-width: 620px; font-size: 1.12rem; line-height: 1.65; }
.service-content ul {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(120px, 1fr));
  gap: 12px 28px;
  list-style: none;
}
.service-content li { position: relative; padding-left: 16px; font-size: .9rem; line-height: 1.4; }
.service-content li::before { content: ""; position: absolute; left: 0; top: .52em; width: 5px; height: 5px; background: var(--accent); }

.statement {
  min-height: 88svh;
  padding: clamp(80px, 10vw, 150px) clamp(20px, 4vw, 64px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(230px, 30vw);
  align-items: center;
  gap: 60px;
  background: var(--accent);
  color: var(--ink);
}
.statement-copy span,
.statement-copy strong {
  display: block;
  font-family: var(--display);
  letter-spacing: -.07em;
}
.statement-copy span { margin: 13px 0 5px .35em; font-size: clamp(.85rem, 1.5vw, 1.35rem); letter-spacing: .06em; }
.statement-copy strong { font-size: clamp(4rem, 10.6vw, 11rem); line-height: .82; }
.statement-orbit { position: relative; display: grid; place-items: center; }
.statement-orbit svg { width: 100%; animation: rotate 18s linear infinite; }
.statement-orbit circle, .statement-orbit path { fill: none; stroke: var(--ink); stroke-width: 1; }
.statement-orbit path { stroke-width: 4; }
.statement-orbit div {
  position: absolute;
  text-align: center;
  font: 900 clamp(2rem, 5vw, 5rem)/.7 var(--display);
  letter-spacing: -.08em;
}
.statement-orbit small { font: 500 .75rem/1 var(--mono); letter-spacing: .08em; }
.statement-note {
  grid-column: 2;
  margin: -70px 0 0;
  max-width: 220px;
  font: 500 .76rem/1.5 var(--mono);
  text-transform: uppercase;
}

.process-grid {
  margin-top: clamp(60px, 9vw, 130px);
  display: grid;
  grid-template-columns: minmax(280px, .8fr) minmax(460px, 1.2fr);
  gap: clamp(60px, 10vw, 150px);
  align-items: start;
}
.process-lead { position: sticky; top: 110px; }
.process-lead h2 {
  margin: 0;
  font: 900 clamp(3rem, 6vw, 6.3rem)/.86 var(--display);
  letter-spacing: -.07em;
}
.process-lead p { max-width: 430px; margin: 35px 0 0; color: #555a5e; font-size: 1.05rem; line-height: 1.65; }
.process-steps { margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--line-dark); }
.process-steps li {
  min-height: 235px;
  padding: 27px 0 38px;
  display: grid;
  grid-template-columns: 140px 1fr;
  gap: 30px;
  border-bottom: 1px solid var(--line-dark);
}
.process-steps li > span { color: var(--muted-dark); font: 500 .75rem var(--mono); }
.process-steps h3 { margin: 56px 0 15px; font-size: clamp(2rem, 3.2vw, 3.5rem); letter-spacing: -.05em; }
.process-steps p { margin: 0; max-width: 450px; color: #555a5e; line-height: 1.6; }

.source-link {
  padding-bottom: 5px;
  border-bottom: 1px solid #555b60;
  color: #c5c9cc;
  font-size: .88rem;
}
.source-link span { color: var(--accent); }
.reviews-grid {
  margin-top: clamp(60px, 8vw, 115px);
  display: grid;
  grid-template-columns: .8fr 1.1fr 1.1fr;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.rating, .quote { min-height: 420px; margin: 0; padding: 40px clamp(24px, 3vw, 48px) 44px 0; }
.rating { display: flex; flex-direction: column; }
.quote { display: flex; flex-direction: column; justify-content: space-between; border-left: 1px solid var(--line); padding-left: clamp(24px, 3vw, 48px); }
.rating-stars { color: var(--accent); letter-spacing: .12em; font-size: .85rem; }
.rating strong { margin-top: auto; font: 900 clamp(5rem, 8vw, 8.5rem)/.8 var(--display); letter-spacing: -.09em; }
.rating p, .quote figcaption { margin: 22px 0 0; color: var(--muted); font: 500 .75rem/1.5 var(--mono); text-transform: uppercase; }
.quote blockquote { margin: auto 0; font-size: clamp(1.65rem, 2.8vw, 3rem); line-height: 1.14; letter-spacing: -.045em; }

.seo-copy { padding-bottom: clamp(80px, 9vw, 130px); }
.seo-copy-grid {
  margin-top: 52px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(50px, 10vw, 160px);
}
.seo-copy h2, .faq h2 {
  margin: 0;
  font: 900 clamp(2.7rem, 5.2vw, 5.6rem)/.9 var(--display);
  letter-spacing: -.065em;
}
.seo-copy-grid > div { max-width: 650px; }
.seo-copy p { margin: 0 0 22px; color: #4f5458; font-size: 1.02rem; line-height: 1.75; }

.faq { padding-top: 0; }
.faq-grid {
  margin-top: 52px;
  display: grid;
  grid-template-columns: .75fr 1.25fr;
  gap: clamp(60px, 10vw, 160px);
}
.faq-list { border-top: 1px solid var(--line-dark); }
.faq-item { border-bottom: 1px solid var(--line-dark); }
.faq-item summary {
  min-height: 92px;
  display: grid;
  grid-template-columns: 1fr 30px;
  align-items: center;
  gap: 20px;
  list-style: none;
  cursor: pointer;
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  font-weight: 600;
  letter-spacing: -.025em;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary span { justify-self: end; color: #6a7074; font-size: 1.3rem; transition: transform .25s; }
.faq-item[open] summary span { transform: rotate(45deg); }
.faq-item p { margin: -3px 50px 0 0; padding-bottom: 34px; color: #555a5e; line-height: 1.65; }

.contact {
  min-height: 92svh;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: var(--ink);
  color: var(--paper);
}
.contact-top { display: flex; justify-content: space-between; gap: 30px; }
.contact-place { color: var(--muted); font: 500 .75rem var(--mono); text-transform: uppercase; }
.contact h2 {
  margin: clamp(60px, 9vh, 120px) 0;
  font: 900 clamp(4.3rem, 13vw, 13rem)/.76 var(--display);
  letter-spacing: -.09em;
}
.contact h2 span { color: var(--accent); }
.contact-bottom {
  display: grid;
  grid-template-columns: minmax(240px, 430px) minmax(420px, 1fr);
  align-items: end;
  gap: 60px;
}
.contact-bottom p { margin: 0; color: var(--muted); font-size: 1.05rem; line-height: 1.6; }
.contact-mail {
  justify-self: end;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--accent);
  font-size: clamp(1.5rem, 3.5vw, 4rem);
  font-weight: 600;
  letter-spacing: -.05em;
}
.contact-mail span { color: var(--accent); }

.site-footer {
  padding: 70px clamp(20px, 4vw, 64px) 30px;
  background: #050607;
  border-top: 1px solid var(--line);
}
.footer-main {
  padding-bottom: 70px;
  display: grid;
  grid-template-columns: 1.3fr repeat(3, minmax(150px, .7fr));
  gap: 50px;
}
.footer-brand {
  align-self: start;
  display: grid;
  width: fit-content;
  font: 900 clamp(3rem, 6vw, 6rem)/.75 var(--display);
  letter-spacing: -.085em;
}
.footer-brand span:last-child { color: var(--accent); }
.footer-col { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; color: #c1c5c8; font-size: .9rem; line-height: 1.55; }
.footer-col p { margin: 0; }
.footer-label { margin-bottom: 10px; color: #8d9398; font: 500 .75rem var(--mono); text-transform: uppercase; letter-spacing: .08em; }
.footer-col a:hover { color: var(--accent); }
.footer-legal {
  padding-top: 24px;
  display: flex;
  align-items: center;
  gap: 25px;
  border-top: 1px solid var(--line);
  color: #8d9398;
  font: 500 .75rem/1.4 var(--mono);
  text-transform: uppercase;
  letter-spacing: .06em;
}
.footer-legal button { padding: 0; border: 0; background: none; cursor: pointer; text-transform: inherit; letter-spacing: inherit; font: inherit; }
.footer-legal button:hover { color: var(--paper); }
.footer-legal span:last-child { margin-left: auto; }

.legal-modal {
  width: min(720px, calc(100vw - 32px));
  max-height: min(760px, calc(100svh - 32px));
  padding: clamp(32px, 5vw, 64px);
  border: 1px solid #383e42;
  background: var(--ink-soft);
  color: var(--paper);
}
.legal-modal::backdrop { background: rgba(0,0,0,.8); backdrop-filter: blur(7px); }
.legal-modal h2 { margin: 35px 0; font-size: clamp(2.2rem, 5vw, 4.5rem); line-height: .9; letter-spacing: -.06em; }
.modal-close {
  position: absolute;
  top: 18px;
  right: 20px;
  width: 42px;
  height: 42px;
  border: 1px solid #444a4f;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  font-size: 1.6rem;
}
.legal-copy { color: #b8bdc1; line-height: 1.7; }
.legal-copy a { color: var(--accent); }

.js .reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .75s cubic-bezier(.19,1,.22,1), transform .75s cubic-bezier(.19,1,.22,1);
}
.js .reveal.is-visible { opacity: 1; transform: translateY(0); }

@keyframes draw-line { to { stroke-dashoffset: 0; } }
@keyframes fade-in { to { opacity: 1; } }
@keyframes ticker { to { transform: translateX(-50%); } }
@keyframes rotate { to { transform: rotate(360deg); } }

@media (max-width: 980px) {
  .site-header { grid-template-columns: 1fr auto; min-height: 76px; }
  .desktop-nav, .header-cta { display: none; }
  .menu-toggle {
    position: relative;
    z-index: 3;
    display: grid;
    gap: 6px;
    width: 46px;
    height: 46px;
    place-content: center;
    justify-self: end;
    border: 1px solid #3c4247;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
  }
  .menu-toggle span { display: block; width: 18px; height: 1px; background: var(--paper); transition: transform .25s; }
  .menu-toggle[aria-expanded="true"] span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .mobile-menu {
    position: fixed;
    inset: 0;
    z-index: 2;
    padding: 118px 24px 35px;
    display: flex;
    align-items: center;
    background: var(--ink);
    opacity: 0;
    visibility: hidden;
    transition: opacity .25s, visibility .25s;
  }
  .mobile-menu.is-open { opacity: 1; visibility: visible; }
  .mobile-menu nav { width: 100%; display: grid; border-top: 1px solid var(--line); }
  .mobile-menu a {
    padding: 18px 0;
    display: grid;
    grid-template-columns: 46px 1fr;
    align-items: center;
    border-bottom: 1px solid var(--line);
    font-size: clamp(1.8rem, 9vw, 3.2rem);
    font-weight: 700;
    letter-spacing: -.05em;
  }
  .mobile-menu a span { color: var(--accent); font: 500 .75rem var(--mono); }

  .manifesto-grid, .process-grid, .seo-copy-grid, .faq-grid { grid-template-columns: 1fr; }
  .manifesto-copy { margin-left: auto; }
  .process-lead { position: static; }
  .service-item summary { grid-template-columns: 54px 1fr 30px; }
  .service-tags { display: none; }
  .service-content { padding-left: 78px; grid-template-columns: 1fr; gap: 30px; }
  .reviews-grid { grid-template-columns: 1fr 1fr; }
  .rating { grid-column: 1 / -1; min-height: 260px; padding-right: 0; border-bottom: 1px solid var(--line); }
  .rating strong { margin-top: 70px; }
  .contact-bottom { grid-template-columns: 1fr; }
  .contact-mail { justify-self: start; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-brand { grid-column: 1 / -1; margin-bottom: 30px; }
}

@media (max-width: 680px) {
  .hero { min-height: 100svh; padding-top: 122px; }
  .hero-meta span:last-child { display: none; }
  h1 { margin-top: 14vh; font-size: clamp(4rem, 20vw, 7rem); }
  .hero-label { margin-left: .15em; font-size: .75rem; }
  .hero-bottom { margin-top: 7vh; grid-template-columns: 1fr auto; align-items: center; }
  .hero-bottom p { font-size: .98rem; }
  .round-link { width: 76px; }
  .signal { width: 94vw; right: -32%; bottom: 8%; opacity: .44; }

  .manifesto, .services, .process, .reviews, .seo-copy, .faq, .contact { padding-left: 20px; padding-right: 20px; }
  .manifesto-copy { margin: 0; }
  .principles { grid-template-columns: 1fr; }
  .principle { min-height: auto; padding: 24px 0 30px; }
  .principle + .principle { padding-left: 0; border-left: 0; border-top: 1px solid var(--line-dark); }
  .principle h3 { margin-top: 42px; }
  .section-heading-row { display: grid; }
  .services-title br { display: none; }
  .service-item summary { min-height: 96px; grid-template-columns: 34px 1fr 24px; gap: 12px; }
  .service-name { font-size: 1.58rem; }
  .service-content { padding: 0 0 34px 46px; }
  .service-content ul { grid-template-columns: 1fr; }

  .statement { min-height: 80svh; grid-template-columns: 1fr; }
  .statement-orbit { width: min(70vw, 300px); justify-self: end; opacity: .65; }
  .statement-note { grid-column: 1; margin: -38px 0 0; }
  .process-steps li { grid-template-columns: 1fr; gap: 0; min-height: 230px; }
  .process-steps h3 { margin-top: 52px; }

  .reviews-grid { grid-template-columns: 1fr; }
  .rating, .quote { grid-column: auto; min-height: 330px; padding: 32px 0; }
  .quote { border-left: 0; border-top: 1px solid var(--line); }
  .contact h2 { font-size: clamp(4rem, 21vw, 7rem); }
  .contact-mail { font-size: clamp(1.35rem, 6.4vw, 2.2rem); }

  .footer-main { grid-template-columns: 1fr; }
  .footer-brand { grid-column: auto; }
  .footer-legal { flex-wrap: wrap; }
  .footer-legal span:last-child { width: 100%; margin: 8px 0 0; }
}

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

/* PEAK / culture-first homepage */
.home-next { --pink:#ff65cf; --ice:#e8ece7; }
.catcher { position:relative; isolation:isolate; overflow:hidden; min-height:920px; min-height:100svh; padding:133px clamp(22px,4vw,64px) 48px; background:#090b0d; }
.catcher-art { position:absolute; z-index:-1; width:100%; height:100%; inset:0; object-fit:cover; object-position:72% center; opacity:.9; transform:translate(var(--art-x,0px),var(--art-y,0px)) scale(1.025); transition:transform .45s ease-out; }
.catcher::after { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,rgba(9,11,13,.7),transparent 75%),linear-gradient(0deg,#090b0d 0%,transparent 40%); }
.catcher-top { display:flex; justify-content:space-between; gap:20px; font:500 .875rem/1.5 var(--mono); color:#d2d7d9; }
.catcher h1 { max-width:1150px; margin:70px 0 48px; font:900 clamp(4rem,9.8vw,10rem)/.96 var(--display); letter-spacing:-.075em; }
.catcher h1 > span { display:block; }
.catcher h1 .catcher-label { margin:0 0 26px 4px; max-width:520px; font:500 1rem/1.5 var(--sans); letter-spacing:0; color:#c8cdd0; }
.catcher-lime { color:var(--accent); }
.catcher h1 i { font-family:Georgia,'Times New Roman',serif; font-weight:400; letter-spacing:-.08em; }
.catcher-note { position:absolute; right:7%; top:43%; padding:22px 25px; background:var(--pink); color:var(--ink); transform:rotate(9deg); font:800 1.1rem/1.2 var(--sans); letter-spacing:-.03em; box-shadow:7px 7px 0 rgba(0,0,0,.3); }
.catcher-bottom { display:flex; align-items:end; justify-content:space-between; gap:40px; position:relative; }
.catcher-bottom p { max-width:590px; margin:0; color:#c5cccf; font-size:1.125rem; line-height:1.7; }
.catcher-bottom strong { color:var(--paper); font-weight:600; }
.catcher-bottom > div { display:flex; flex-direction:column; align-items:start; gap:20px; flex-shrink:0; }
.catcher-secondary { font-size:.9rem; text-decoration:underline; text-underline-offset:6px; }
.home-next .button { border-radius:100px; padding:18px 28px; }
.culture-tape { display:flex; flex-wrap:wrap; justify-content:space-around; align-items:center; gap:18px; padding:21px 25px; color:var(--ink); background:var(--pink); font:800 clamp(.875rem,1.3vw,1.2rem)/1.3 var(--sans); letter-spacing:-.01em; }
.culture-tape > span:nth-child(even) { font-size:2rem; line-height:.8; }
.culture-intro { display:grid; grid-template-columns:.6fr 1.9fr .7fr; gap:50px; padding:110px clamp(22px,4vw,64px); background:var(--ice); color:var(--ink); align-items:start; }
.culture-intro > .eyebrow { padding-top:15px; color:#62686a; }
.culture-intro h2 { margin:0 0 35px; font:800 clamp(2.5rem,4.5vw,4.8rem)/1.09 var(--sans); letter-spacing:-.06em; }
.culture-intro h2 span { color:#6a7071; }
.culture-intro p { max-width:620px; font-size:1.125rem; line-height:1.75; }
.culture-stamp { margin-top:55px; aspect-ratio:1; border:1px solid var(--ink); border-radius:50%; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:16px; transform:rotate(-12deg); }
.culture-stamp span { font:.75rem var(--mono); }
.culture-stamp strong { font:900 clamp(2rem,4vw,4rem)/.86 var(--display); letter-spacing:-.07em; text-align:center; }
.home-capabilities { padding:110px clamp(22px,4vw,64px); }
.capabilities-heading { max-width:1000px; }
.capabilities-heading > .eyebrow { color:var(--pink); }
.capabilities-heading h2 { margin:28px 0; font:800 clamp(2.7rem,6vw,6.5rem)/1.05 var(--sans); letter-spacing:-.06em; }
.capabilities-heading em { font-style:normal; color:var(--accent); }
.capabilities-heading p { max-width:650px; color:#b8c0c5; font-size:1.125rem; line-height:1.7; }
.capability-index { display:flex; flex-wrap:wrap; gap:12px; margin:40px 0 60px; }
.capability-index a { padding:12px 18px; border:1px solid #555e63; border-radius:50px; font-size:.9rem; }
.capability-index a:hover { background:var(--paper); color:var(--ink); }
.capability-rows { border-top:1px solid var(--line); margin-bottom:45px; }
.capability-row { display:grid; grid-template-columns:50px 1.1fr 1fr 50px; gap:30px; align-items:center; padding:40px 0; border-bottom:1px solid var(--line); scroll-margin-top:100px; transition:color .2s; }
.capability-no { color:var(--pink); font:500 .875rem var(--mono); }
.capability-row h3 { margin:0; font-size:clamp(1.8rem,3.3vw,3.5rem); line-height:1.08; letter-spacing:-.05em; }
.capability-row .eyebrow { color:var(--muted); }
.capability-row p { color:#bdc4c9; font-size:1rem; line-height:1.6; margin:12px 0 0; max-width:430px; }
.capability-arrow { font-size:2.3rem; justify-self:end; transition:transform .2s; }
.capability-row:hover { color:var(--accent); }
.capability-row:hover .capability-arrow { transform:translate(4px,-4px); }
.home-ugc { background:var(--pink); color:var(--ink); display:grid; grid-template-columns:1.2fr 1fr; gap:70px; padding:95px clamp(22px,4vw,64px); align-items:center; overflow:hidden; }
.ugc-copy h2 { font:900 clamp(4rem,8vw,8rem)/.95 var(--display); letter-spacing:-.075em; margin:30px 0; }
.ugc-copy h2 em { font-family:Georgia,'Times New Roman',serif; font-weight:400; }
.ugc-copy p { font-size:1.125rem; line-height:1.7; max-width:540px; margin:0 0 32px; }
.ugc-manifesto { width:100%; max-width:440px; justify-self:center; min-height:560px; display:flex; flex-direction:column; justify-content:space-between; gap:35px; padding:35px; background:var(--ink); color:var(--paper); transform:rotate(5deg); box-shadow:14px 16px 0 #cf3fa1; }
.ugc-format { color:#b6bdc0; font:.875rem/1.5 var(--mono); }
.ugc-manifesto p { font:700 clamp(2.5rem,4vw,4rem)/1.05 var(--sans); letter-spacing:-.055em; margin:0; }
.ugc-manifesto strong { color:var(--accent); }
.ugc-manifesto a { font-size:.95rem; text-decoration:underline; text-underline-offset:5px; }
.ugc-films { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.ugc-films figure { margin:0; }
.ugc-films video { display:block; width:100%; aspect-ratio:9/16; object-fit:contain; background:#090b0d; border-radius:16px; }
.ugc-films figcaption { font-size:.875rem; line-height:1.5; padding-top:15px; }
.home-team { padding:110px clamp(22px,4vw,64px); display:grid; grid-template-columns:1.2fr 1fr; gap:90px; background:var(--ice); color:var(--ink); }
.home-team h2 { font:800 clamp(2.7rem,4.8vw,5rem)/1.07 var(--sans); letter-spacing:-.055em; margin:30px 0; }
.home-team h2 em { font-style:normal; color:#69716d; }
.home-team p { max-width:520px; font-size:1.125rem; line-height:1.7; }
.crew-list { border-top:1px solid var(--line-dark); }
.crew-person { display:flex; align-items:center; gap:22px; padding:20px 0; border-bottom:1px solid var(--line-dark); }
.crew-initials { display:grid; place-items:center; width:60px; height:60px; background:var(--ink); color:var(--accent); border-radius:50%; font-weight:800; font-size:1.1rem; flex-shrink:0; }
.crew-person:nth-child(2n) .crew-initials { background:var(--pink); color:var(--ink); }
.crew-person > div { display:grid; gap:7px; }
.crew-person strong { font-size:1.3rem; }
.crew-person > div > span { color:#545d5a; font-size:.95rem; }
.crew-more { display:inline-block; padding-top:25px; font-weight:600; }
.home-process { padding:100px clamp(22px,4vw,64px); }
.home-process > .eyebrow { color:var(--muted); }
.home-process h2 { margin:30px 0 65px; font:800 clamp(2.8rem,6vw,6.5rem)/1.05 var(--sans); letter-spacing:-.06em; }
.home-process h2 em { color:var(--pink); font-family:Georgia,serif; font-weight:400; }
.home-process-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:45px; }
.home-process-grid article { border-top:1px solid var(--line); padding-top:25px; }
.home-process-grid article > span { font:.875rem/1.5 var(--mono); color:var(--accent); }
.home-process-grid h3 { margin:45px 0 18px; font-size:2rem; letter-spacing:-.04em; }
.home-process-grid p { color:#b8c0c4; line-height:1.7; font-size:1rem; }
.home-proof { padding:75px clamp(22px,4vw,64px); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.home-proof h2 { font:700 clamp(2rem,4vw,4rem)/1.1 var(--sans); letter-spacing:-.05em; margin:25px 0 35px; }
.proof-source { display:inline-block; margin:20px 0 20px 25px; color:#bec5c9; text-decoration:underline; text-underline-offset:5px; }
.home-faq { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; padding:100px clamp(22px,4vw,64px); background:var(--ice); color:var(--ink); }
.home-faq h2 { font-size:clamp(2.7rem,4vw,4.5rem); letter-spacing:-.06em; margin:25px 0; }
.home-faq .faq-item p a { text-decoration:underline; }
.home-final { background:var(--accent); color:var(--ink); padding:80px clamp(22px,4vw,64px); }
.home-final h2 { font:900 clamp(4rem,11vw,11rem)/.96 var(--display); letter-spacing:-.075em; margin:45px 0; }
.home-final h2 > span { display:block; }
.home-final h2 i { font-family:Georgia,serif; font-weight:400; }
.home-final > div { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.home-final p { font-size:1.125rem; line-height:1.65; }
.final-mail { display:block; margin-top:45px; padding-top:25px; border-top:1px solid var(--line-dark); font-size:1.3rem; width:fit-content; }
.catcher h1 { animation:catcher-enter .7s ease-out both; }
@keyframes catcher-enter { from { transform:translateY(16px); opacity:.35; } to { transform:none; opacity:1; } }
@media(max-width:1050px){
 .catcher h1 { font-size:clamp(4rem,11vw,8rem); }
 .catcher-note { right:5%; top:47%; font-size:.9rem; }
 .culture-intro { grid-template-columns:1fr 3fr; gap:35px; }
 .culture-stamp { display:none; }
 .home-team { gap:45px; }
 .capability-row { grid-template-columns:30px 1fr 1fr 30px; gap:20px; }
 .home-ugc { gap:35px; }
 .ugc-manifesto { min-height:480px; padding:28px; }
}
@media(max-width:680px){
 .catcher { padding:110px 22px 40px; min-height:0; }
 .catcher-top { font-size:.75rem; max-width:300px; }
 .catcher-top > span:last-child { display:none; }
 .catcher h1 { font-size:clamp(3rem,12.8vw,5.5rem); margin:50px 0 38px; line-height:1.01; letter-spacing:-.07em; }
 .catcher h1 .catcher-label { max-width:260px; margin-bottom:22px; font-size:.875rem; }
 .catcher-art { object-position:65% 10%; opacity:.5; }
 .catcher-note { position:relative; top:auto; right:auto; width:fit-content; margin:0 0 32px auto; padding:13px 18px; font-size:.875rem; transform:rotate(6deg); }
 .catcher-bottom { flex-direction:column; align-items:start; gap:26px; }
 .catcher-bottom p { font-size:1rem; }
 .catcher-bottom > div { gap:20px; }
 .culture-tape { justify-content:center; font-size:.875rem; gap:15px; }
 .culture-tape span:nth-child(n+3) { display:none; }
 .culture-intro,.home-capabilities,.home-team,.home-process,.home-faq { padding:65px 22px; }
 .culture-intro,.home-team,.home-faq { grid-template-columns:1fr; gap:30px; }
 .culture-intro h2 { font-size:2.5rem; }
 .culture-intro p,.capabilities-heading p,.home-team p { font-size:1rem; }
 .capabilities-heading h2 { font-size:2.7rem; }
 .capability-index { margin-bottom:35px; gap:10px; }
 .capability-index a { font-size:.875rem; padding:10px 14px; }
 .capability-row { grid-template-columns:28px 1fr 28px; gap:15px; padding:30px 0; }
 .capability-row h3 { font-size:2rem; }
 .capability-row > div { grid-column:2; grid-row:2; }
 .capability-arrow { grid-column:3; grid-row:1; font-size:1.7rem; }
 .capability-row .eyebrow { font-size:.75rem; }
 .home-ugc { padding:65px 22px; grid-template-columns:1fr; gap:55px; }
 .ugc-copy h2 { font-size:clamp(3.7rem,16vw,6rem); }
 .ugc-manifesto { transform:rotate(3deg); max-width:340px; min-height:440px; }
 .ugc-manifesto p { font-size:3rem; }
 .ugc-films { gap:12px; }
 .home-process-grid { grid-template-columns:1fr; gap:25px; }
 .home-process h2 { margin-bottom:40px; }
 .home-process-grid h3 { margin-top:25px; }
 .home-proof { padding:55px 22px; }
 .proof-source { margin-left:0; display:block; }
 .home-final { padding:60px 22px; }
 .home-final h2 { font-size:clamp(3.5rem,14vw,6rem); }
 .home-final > div { flex-direction:column; align-items:start; gap:15px; }
}

/* Original transparent brand asset, white on dark navigation and footer. */
.brand-logo { display:block; width:100%; height:auto; filter:brightness(0) invert(1); }
.wordmark { width:156px; flex-shrink:0; }
.footer-brand { width:clamp(180px,20vw,290px); max-width:100%; }
@media(max-width:680px) { .wordmark { width:126px; } }

/* Real projects and founder entry points share the homepage's strong colour rhythm. */
.real-work,.founder-start,.home-account,.support-callout,.case-brand { padding:80px clamp(20px,5vw,76px); }
.real-work { background:#101316; color:#f4f5f3; }
.growth-heading h2,.founder-start h2,.home-account h2,.support-callout h2 { font-size:clamp(2rem,4.8vw,5rem); line-height:1.08; letter-spacing:-.045em; margin:20px 0; }
.growth-heading p,.founder-start p,.home-account p,.support-callout p { max-width:720px; font-size:1.125rem; line-height:1.7; }
.project-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px; margin:40px 0; }
.project-tile { display:block; border:1px solid #42464a; }
.project-visual { min-height:240px; display:flex; flex-direction:column; align-items:flex-start; justify-content:space-between; padding:36px; gap:35px; background:#e9eef4; color:#0b1f3d; }
.project-visual img { width:min(100%,430px); height:auto; margin:auto 0; }
.project-visual span { font:500 .875rem/1.5 var(--mono); }
.project-market .project-visual { background:#ccfa5f; color:#0c1115; }
.project-visual strong,.case-market strong { font-size:clamp(2rem,3.4vw,3.6rem); letter-spacing:-.055em; line-height:1.15; }
.project-text { padding:30px; }
.project-text h3 { font-size:clamp(1.6rem,2.6vw,2.6rem); line-height:1.15; margin:20px 0; }
.project-text p { color:#c9cdd0; font-size:1.0625rem; line-height:1.7; }
.project-text .eyebrow { font-size:.875rem; }
.project-tile:hover { border-color:var(--accent); }
.founder-start { background:#cafa5c; color:#0b1115; display:grid; grid-template-columns:1fr 1.8fr 1fr; gap:35px; }
.founder-start h2 { font-size:clamp(2.8rem,5.3vw,5.8rem); }
.founder-start h2 em { font-family:Georgia,serif; font-weight:400; }
.founder-steps { align-self:center; list-style:none; padding:0; margin:0; }
.founder-steps li { border-top:1px solid #749331; padding:20px 0; font-size:1.125rem; line-height:1.5; }
.founder-steps span { display:block; font:500 .875rem var(--mono); margin-bottom:10px; }
.home-account,.support-callout { background:#172237; color:#f6f7f8; }
.direct-actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin:28px 0; }
.direct-actions .button { max-width:100%; text-align:center; }
.support-note { font-size:.9375rem!important; color:#c7d0df; }
.case-brand { background:#edf1f5; color:#0b1f3d; }
.case-brand img { display:block; width:min(650px,100%); height:auto; }
.case-brand p { margin-top:28px; font-size:1rem; line-height:1.6; }
.case-market { background:#ccfa5f; }
.home-final .direct-actions .button { background:#0b1115; color:#f4f5f3; border-color:#0b1115; }
@media(max-width:1100px) { .desktop-nav { gap:18px; } .founder-start { grid-template-columns:1fr 2fr; } .founder-steps { grid-column:2; } }
@media(max-width:980px) { .founder-start { grid-template-columns:1fr; } .founder-steps { grid-column:auto; } }
@media(max-width:680px) { .project-pair { grid-template-columns:1fr; } .project-visual { min-height:190px; padding:26px; } .project-text { padding:26px; } .real-work,.founder-start,.home-account,.support-callout,.case-brand { padding-top:55px; padding-bottom:55px; } }

.tattoo-editorial { margin:36px 0; background:#101316; color:#d5dadd; }
.tattoo-editorial img { display:block; width:100%; height:auto; max-height:540px; object-fit:cover; }
.tattoo-editorial figcaption { font-size:.875rem; line-height:1.6; padding:14px 20px; }
main > .tattoo-editorial { margin:0; }
@media(max-width:680px) { .tattoo-editorial img { aspect-ratio:4/3; max-height:none; } }

/* Compact original portraits; grayscale is presentation only. */
.team-grid { grid-template-columns:repeat(4,minmax(0,1fr)); gap:36px 28px; }
.person-photo { display:block; aspect-ratio:1; max-width:220px; overflow:hidden; background:#202427; }
.person-photo img,.crew-photo img { width:100%; height:100%; display:block; object-fit:cover; object-position:50% 36%; filter:grayscale(1); }
.person-photo.portrait-koray img,.crew-photo.portrait-koray img { transform:scale(1.7); transform-origin:50% 40%; }
.crew-photo { display:block; width:80px; height:80px; border-radius:50%; overflow:hidden; flex-shrink:0; background:#202427; }
.person .portrait-note,.crew-person > div > .portrait-note { display:block; font-size:.8125rem; line-height:1.4; color:#68716c; margin-top:6px; }
.person .person-initials { max-width:220px; aspect-ratio:1; font-size:clamp(3rem,6vw,5rem); }
@media(max-width:980px) { .team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:480px) { .team-grid { gap:28px 16px; } .crew-photo { width:68px; height:68px; } .crew-person { gap:16px; } }

/* Personal voices with a compact, complete crew underneath. */
.home-team.team-editorial { display:block; background:#f0eff5; }
.crew-heading { max-width:1000px; margin-bottom:42px; }
.crew-heading p { max-width:640px; }
.crew-features { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px; }
.crew-feature { display:grid; grid-template-columns:minmax(130px,.85fr) 1fr; gap:26px; align-items:center; padding:24px; background:#e4e0f1; border-radius:22px; overflow:hidden; }
.crew-feature:nth-child(2) { background:#e4e7e0; }
.crew-feature .person-photo { width:100%; max-width:none; aspect-ratio:4/5; border-radius:14px; }
.crew-statement .eyebrow { font-size:.875rem; line-height:1.5; }
.crew-statement blockquote { font:500 clamp(1.4rem,2.15vw,2.3rem)/1.24 var(--sans); letter-spacing:-.035em; margin:22px 0; }
.crew-statement p { font-size:1rem; font-weight:750; }
.crew-rest-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:22px; border-top:1px solid #c7c9c2; margin-top:42px; padding-top:30px; }
.crew-rest-heading strong { font-size:1.4rem; }
.crew-rest { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:25px; margin-top:28px; }
.crew-mini { display:flex; gap:12px; align-items:center; }
.crew-mini .crew-photo,.crew-mini .crew-initials { width:48px; height:48px; }
.crew-mini > div { display:grid; gap:6px; }
.crew-mini strong { font-size:1rem; }
.crew-mini > div > span { font-size:.875rem; line-height:1.4; color:#555d58; }
@media(max-width:1100px) { .crew-feature { grid-template-columns:1fr; } .crew-feature .person-photo { max-width:280px; aspect-ratio:1; } }
@media(max-width:680px) { .crew-features { grid-template-columns:1fr; } .crew-feature { grid-template-columns:minmax(100px,.7fr) 1fr; padding:18px; gap:18px; } .crew-rest { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 14px; } .crew-statement blockquote { font-size:1.35rem; } }
@media(max-width:380px) { .crew-feature { grid-template-columns:1fr; } }

.platform-context { margin:26px 0; }
.platform-context > .eyebrow { font-size:.8125rem; line-height:1.5; display:block; margin-bottom:16px; }
.platform-logos { display:flex; flex-wrap:wrap; gap:20px 30px; }
.platform-logos > span { display:flex; align-items:center; gap:10px; font-size:.9375rem; }
.platform-logos img { width:28px; height:28px; }
.page-hero .platform-logos img,.account-brand img { filter:brightness(0) invert(1); }
.account-brand { display:flex; align-items:center; gap:14px; font-weight:700; font-size:1.125rem; margin-bottom:28px; }
.account-brand img { width:52px; height:52px; }
.home-account { background:linear-gradient(125deg,#181526,#20233a); }
.home-account .direct-actions .button { background:#efaff4; color:#12101b; border-color:#efaff4; }
.home-ugc .platform-context > .eyebrow { display:none; }

.project-market .project-visual { background:#fff; color:#142842; }
.project-visual .mediaport-logo,.case-brand .mediaport-logo { width:157px; height:157px; object-fit:contain; }
.case-market { background:#fff; color:#142842; }

.story-avatar { display:block; position:relative; width:52px; height:52px; flex-shrink:0; border-radius:50%; overflow:hidden; background:#292732; }
.story-avatar img { position:absolute; display:block; max-width:none; height:auto; }
.story-teaser { display:flex; align-items:center; gap:24px; margin:30px 0; }
.story-faces { display:flex; padding-left:10px; }
.story-faces .story-avatar { margin-left:-10px; outline:3px solid #272238; }
.story-teaser strong { font-size:1.25rem; }
.story-teaser p { margin:8px 0 12px; font-size:1rem; line-height:1.55; }
.account-testimonials { padding:35px clamp(20px,5vw,76px); background:#211d32; color:#fff; }
.reference-intro { font-size:1.125rem; line-height:1.75; max-width:800px; margin-bottom:35px; }
.story-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.story-card { padding:26px; border:1px solid #d2d0da; border-radius:18px; background:#faf9fc; }
.story-author { display:flex; gap:14px; align-items:center; overflow-wrap:anywhere; }
.story-author strong { font-size:1rem; }
.story-card blockquote { font-size:1.4rem; letter-spacing:-.025em; line-height:1.4; margin:26px 0; }
.story-card p { font-size:1rem; line-height:1.7; color:#545860; }
.story-card summary { font-weight:650; font-size:1rem; cursor:pointer; padding:15px 0; }
.story-card .story-evidence { display:block; max-width:100%; width:100%; height:auto; border-radius:10px; margin-top:12px; }
@media(max-width:980px) { .story-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:680px) { .story-grid { grid-template-columns:1fr; } .story-teaser { align-items:flex-start; flex-direction:column; } }

/* Bright editorial interiors balance PEAK's dark brand moments. */
.inner-page .page-hero { background:#f1f0f7; color:#11151b; border-color:#d7d5df; }
.inner-page .page-hero p { color:#4c5460; }
.inner-page .page-hero .eyebrow,.inner-page .h1-topic { color:#536022; }
.inner-page .breadcrumb { color:#535b65; }
.inner-page .site-header { color:#151b22; border-color:#d2d5df; }
.inner-page .site-header .brand-logo { filter:none; }
.inner-page .desktop-nav { color:#333c48; }
.inner-page .site-header.is-fixed { background:rgba(246,246,251,.96); }
.inner-page .menu-toggle span { background:#151b22; }
.inner-page .mobile-menu { background:#f1f0f7; color:#151b22; }
.inner-page .mobile-menu a { color:#151b22; }
.inner-page .page-hero .platform-logos img { filter:none; }
.inner-page .desktop-nav a[aria-current="page"] { color:#455315; }
.visual-hero { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:48px; align-items:center; }
.visual-hero h1 { font-size:clamp(2.7rem,5vw,5.7rem); max-width:850px; }
.visual-hero-copy > p { font-size:1.125rem; line-height:1.75; max-width:640px; margin-bottom:30px; }
.agency-art { position:relative; min-height:510px; background:#101214; border-radius:28px; overflow:hidden; }
.agency-chrome { position:absolute; width:100%; height:100%; object-fit:cover; object-position:68% 50%; }
.agency-portrait { position:absolute; width:155px; height:200px; left:28px; top:30px; transform:rotate(-6deg); background:#fff; border:8px solid #fff; border-bottom-width:32px; }
.agency-portrait img { width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
.agency-portrait span { display:block; color:#161a20; font-size:.8rem; text-align:center; padding:7px 0; }
.agency-art-label { position:absolute; left:30px; bottom:28px; font-size:clamp(2rem,4vw,4rem); font-weight:900; letter-spacing:-.05em; line-height:1; color:#d2ff65; }
.founder-editorial { padding:75px clamp(20px,5vw,76px); background:#fff; color:#131b24; display:grid; grid-template-columns:.85fr 1.5fr .6fr; gap:40px; align-items:center; }
.founder-editorial h2,.account-founder-section h2 { font-size:clamp(2rem,3.8vw,4rem); letter-spacing:-.045em; line-height:1.1; }
.founder-editorial p,.account-founder-section p { font-size:1.125rem; line-height:1.75; }
.founder-real-photo,.account-founder-image { overflow:hidden; border-radius:24px; }
.founder-real-photo img,.account-founder-image img { display:block; width:100%; aspect-ratio:4/5; object-fit:cover; object-position:50% 35%; }
.mike-editorial { margin:0; transform:rotate(4deg); align-self:end; }
.mike-editorial img { width:100%; height:auto; display:block; border-radius:15px; }
.mike-editorial figcaption { font-size:.875rem; line-height:1.5; margin-top:12px; }
.culture-gathering { padding:80px clamp(20px,5vw,76px); display:grid; grid-template-columns:1fr 1.2fr; gap:60px; background:#fae5f0; color:#241727; align-items:center; }
.culture-event-art { position:relative; min-height:400px; overflow:hidden; border-radius:26px; background:#121416; }
.culture-event-art img { position:absolute; width:100%; height:100%; object-fit:cover; opacity:.65; }
.culture-event-art > div { position:relative; padding:35px; display:flex; min-height:400px; flex-direction:column; justify-content:space-between; gap:30px; color:#fff; }
.culture-event-art strong { font-size:clamp(2.8rem,5vw,5rem); line-height:.98; letter-spacing:-.055em; }
.event-season { background:#d0fd69; color:#151b20; padding:14px 20px; width:fit-content; border-radius:30px; font-weight:750; font-size:1rem; }
.culture-event-copy h2 { font-size:clamp(2.4rem,4.6vw,4.8rem); letter-spacing:-.04em; line-height:1.05; }
.culture-event-copy h2 em { font-family:Georgia,serif; font-weight:400; }
.culture-event-copy p { font-size:1.125rem; line-height:1.7; }
.culture-event-copy .event-note { font-size:.9375rem; color:#655466; }
.inner-page .creator-hero { background:#eee8fa; }
.creator-platform { display:flex; align-items:center; gap:15px; font-size:.875rem; line-height:1.5; font-weight:650; }
.creator-platform img { width:36px; height:36px; }
.creator-availability { font-size:.875rem!important; margin-top:18px; }
.creator-story-art { position:relative; min-height:550px; border-radius:28px; background:#e7d1e0; overflow:hidden; }
.creator-proof-photo { position:absolute; width:65%; height:440px; top:25px; left:25px; margin:0; transform:rotate(-5deg); overflow:hidden; border:8px solid #fff; border-radius:18px; background:#111; }
.creator-proof-photo img { width:100%; height:100%; object-fit:cover; object-position:50% 40%; }
.creator-proof-photo figcaption { position:absolute; left:0; bottom:0; background:#fff; color:#24202c; font-size:.8125rem; padding:10px; width:100%; }
.creator-founder { position:absolute; right:20px; bottom:65px; width:160px; padding:9px 9px 14px; border-radius:18px; transform:rotate(6deg); background:#d1ff71; color:#192312; }
.creator-founder > div { height:180px; overflow:hidden; border-radius:12px; }
.creator-founder img { width:100%; height:100%; object-fit:cover; object-position:50% 35%; transform:scale(1.5); }
.creator-founder strong,.creator-founder span { display:block; margin-top:8px; font-size:.875rem; }
.creator-founder strong { font-size:1.25rem; }
.creator-proof-link { position:absolute; left:28px; bottom:20px; color:#241b2c; font-size:1rem; font-weight:700; text-decoration:underline; }
.account-founder-section { padding:70px clamp(20px,5vw,76px); display:grid; grid-template-columns:minmax(180px,.65fr) 1.4fr; gap:50px; align-items:center; background:#f7f5fb; color:#161f2b; }
.account-founder-image { max-width:330px; }
.mega-menu { position:static; }
.mega-menu > summary { list-style:none; cursor:pointer; padding:8px 0; display:flex; align-items:center; gap:7px; }
.mega-menu > summary::-webkit-details-marker { display:none; }
.mega-menu[open] > summary { color:#d1ff71; }
.inner-page .mega-menu[open] > summary { color:#526323; }
.mega-panel { position:absolute; top:100%; left:clamp(20px,4vw,64px); right:clamp(20px,4vw,64px); max-height:calc(100dvh - 110px); overflow-y:auto; padding:28px; background:#f7f7fa; color:#141b25; border-radius:0 0 20px 20px; border:1px solid #d3d6dd; box-shadow:0 20px 45px #0003; }
.mega-top,.mega-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:22px; padding-bottom:22px; }
.mega-top > a { font-size:1.25rem; font-weight:750; }
.mega-top > span { font-size:.9375rem; color:#5b636b; }
.mega-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; border-top:1px solid #d7dae0; padding:25px 0; }
.mega-grid h2 { font-size:1rem; margin:0 0 12px; }
.desktop-nav .mega-grid a { display:block; font-size:.9375rem; line-height:1.45; padding:6px 0; color:#4c5664; }
.desktop-nav .mega-panel a::after { display:none; }
.mega-panel a:hover { text-decoration:underline; color:#171c23; }
.mega-bottom { padding:20px 0 0; border-top:1px solid #d7dae0; font-weight:700; }
@media(max-width:980px) { .visual-hero { grid-template-columns:1fr; } .agency-art { min-height:420px; } .founder-editorial { grid-template-columns:1fr 1.4fr; } .mike-editorial { max-width:180px; grid-column:2; } .culture-gathering { gap:30px; } }
@media(max-width:680px) { .founder-editorial,.culture-gathering,.account-founder-section { grid-template-columns:1fr; gap:28px; padding-top:50px; padding-bottom:50px; } .founder-real-photo { max-width:300px; } .mike-editorial { grid-column:auto; max-width:200px; } .creator-story-art { min-height:490px; } .creator-proof-photo { height:390px; left:18px; } .creator-founder { width:135px; right:14px; } .creator-founder > div { height:145px; } }
