/* Portfolio 2.0: content-led editorial refinement. */
.editorial-site .portfolio-v2-section{position:relative;isolation:isolate}
.editorial-site .portfolio-v2-section:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,#fff 1px,transparent 1px);background-size:12.5% 100%;opacity:.022;pointer-events:none}

/* Selected work: a real documented project replaces abstract placeholders. */
.editorial-site .featured-project{display:grid;grid-template-columns:minmax(0,8fr) minmax(280px,3fr);gap:8.333%;align-items:end}
.editorial-site .featured-project-gallery{display:grid;grid-template-columns:minmax(0,7fr) minmax(170px,3fr);gap:clamp(14px,1.5vw,24px);align-items:end}
.editorial-site .project-shot{position:relative;margin:0;overflow:hidden;border:1px solid var(--editorial-line);background:#0b0c0a}
.editorial-site .project-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 68%,#050505b8);pointer-events:none}
.editorial-site .project-shot img{display:block;width:100%;height:100%;object-fit:cover;filter:brightness(.9) saturate(.96) contrast(1.02);transition:filter 520ms var(--motion-ease),transform 760ms var(--motion-ease)}
.editorial-site .project-shot:hover img{filter:brightness(1) saturate(1);transform:scale(1.012)}
.editorial-site .project-shot-wide{aspect-ratio:16/10}
.editorial-site .project-shot-wide img{object-position:center}
.editorial-site .project-shot-detail{aspect-ratio:3/4;transform:translateY(clamp(28px,4vw,62px))}
.editorial-site .project-shot-detail img{object-position:center 26%}
.editorial-site .project-shot figcaption{position:absolute;z-index:2;left:16px;bottom:14px;color:#d4d6cc;font:8px/1 Inter,system-ui,sans-serif;letter-spacing:.14em}
.editorial-site .featured-project-info{padding-bottom:4px}
.editorial-site .project-kicker{margin:0 0 26px;color:var(--color-accent);font:9px/1.4 Inter,system-ui,sans-serif;letter-spacing:.15em}
.editorial-site .featured-project-info h3{margin:0;font-size:clamp(52px,6vw,94px);font-weight:430;line-height:.85;letter-spacing:-.065em}
.editorial-site .featured-project-info h3 span{color:var(--color-accent)}
.editorial-site .project-summary{margin:32px 0 42px;color:#a2a59d;font-size:15px;line-height:1.75}
.editorial-site .project-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}
.editorial-site .project-title-row h3{margin:0}
.editorial-site .project-arrow{flex:none;margin-bottom:.7em;color:var(--color-accent);font-size:20px;transition:transform 360ms var(--motion-ease)}
.editorial-site .project-details{margin:0;border-top:1px solid var(--editorial-line);transition:transform 520ms var(--motion-ease)}
.editorial-site .project-details div{padding:17px 0;border-bottom:1px solid var(--editorial-line)}
.editorial-site .project-details dt{margin:0 0 8px;color:#686b64;font:8px/1.3 Inter,system-ui,sans-serif;letter-spacing:.15em}
.editorial-site .project-details dd{margin:0;color:#b0b2aa;font-size:12px;line-height:1.55}
.editorial-site .work-documentation-note{display:grid;grid-template-columns:2fr 9fr;gap:30px;margin:clamp(105px,14svh,165px) 0 0;padding-top:20px;border-top:1px solid var(--editorial-line);color:#777a72;font-size:12px;line-height:1.65}
.editorial-site .work-documentation-note span{color:#62655e;font:8px/1.5 Inter,system-ui,sans-serif;letter-spacing:.14em}
@media(hover:hover){.editorial-site .featured-project:hover .project-arrow{transform:translate(4px,-4px)}.editorial-site .featured-project:hover .project-details{transform:translateY(-3px)}}

/* Personal introduction. */
.editorial-site .about-v2{background:radial-gradient(ellipse 42% 48% at 17% 50%,#14160c 0%,transparent 74%),#050505!important}
.editorial-site .about-monogram{position:relative;isolation:isolate;display:block;border:1px solid var(--editorial-line);background:linear-gradient(150deg,#14160e,#070807 58%,#10120b)}
.editorial-site .about-monogram:before{background:linear-gradient(90deg,#fff 1px,transparent 1px),linear-gradient(#fff 1px,transparent 1px);background-size:25% 100%,100% 20%;opacity:.07}
.editorial-site .about-monogram:after{content:"";position:absolute;z-index:-1;width:64%;aspect-ratio:1;right:-10%;top:11%;border:1px solid #d32f384a;border-radius:50%}
.editorial-site .about-monogram b{position:absolute;right:-.065em;bottom:-.12em;color:#d32f381a;font-size:clamp(130px,20vw,330px);font-weight:600;line-height:.8;letter-spacing:-.12em}
.editorial-site .about-monogram-meta{position:absolute;z-index:2;left:24px;top:24px;padding:0;background:none;color:#989b91;font:8px/1.4 Inter,system-ui,sans-serif;letter-spacing:.15em}
.editorial-site .about-monogram i{position:absolute;left:24px;bottom:24px;width:42px;height:1px;background:var(--color-accent)}
.editorial-site .about-copy>p:not(.section-marker):not(.about-role){margin:0 0 16px}

/* Expertise as a clean editorial index. */
.editorial-site .expertise-v2{background:radial-gradient(ellipse 46% 38% at 86% 20%,#14160c 0%,transparent 74%),#050505!important}
.editorial-site .expertise-v2-heading{display:grid;grid-template-columns:minmax(0,8fr) minmax(250px,3fr);gap:8.333%;align-items:end;margin:48px 0 clamp(82px,11svh,128px)}
.editorial-site .expertise-v2-heading h2{margin:0;font-size:clamp(56px,7.8vw,118px);font-weight:430;line-height:.87;letter-spacing:-.066em}
.editorial-site .expertise-v2-heading h2 em{color:var(--color-accent);font-style:normal}
.editorial-site .expertise-v2-heading>p{margin:0;color:#777a72;font-size:13px;line-height:1.65}
.editorial-site .expertise-v2-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--editorial-line)}
.editorial-site .expertise-v2-list .service-item{display:grid;grid-template-columns:70px minmax(0,1fr) minmax(210px,3fr);gap:26px;min-height:clamp(92px,11svh,126px);padding:0;border-bottom:1px solid var(--editorial-line);color:#d7d8d2;transition:color 260ms var(--motion-ease),padding-left 340ms var(--motion-ease)}
.editorial-site .expertise-v2-list .service-item:hover{padding-left:8px;color:#fff}
.editorial-site .expertise-v2-list .service-item>span{color:#666960;font:9px/1 Inter,system-ui,sans-serif;letter-spacing:.12em}
.editorial-site .expertise-v2-list .service-item strong{font-size:clamp(27px,3.2vw,51px);font-weight:430;line-height:1;letter-spacing:-.05em}
.editorial-site .expertise-v2-list .service-item small{justify-self:end;color:#6f726b;font:8px/1.45 Inter,system-ui,sans-serif;letter-spacing:.13em;text-align:right}
.editorial-site .expertise-v2-list .service-item:hover>span{color:var(--color-accent)}

/* Real archive imagery is allowed to keep its color and detail. */
.editorial-site .archive-frame{opacity:.84;filter:brightness(.88) saturate(.98) contrast(1)}
.editorial-site .archive-frame:hover{filter:brightness(1.04) saturate(1.04) contrast(1)}

/* Compact process. */
.editorial-site .process-v2-title{width:min(1120px,90%);margin:48px 0 0;font-size:clamp(54px,7.7vw,116px);font-weight:430;line-height:.87;letter-spacing:-.066em}
.editorial-site .process-v2-title em{color:var(--color-accent);font-style:normal}
.editorial-site .process-v2-steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);margin:clamp(82px,11svh,130px) 0 0;padding:0;border-top:1px solid var(--editorial-line)}
.editorial-site .process-v2-steps .process-step{display:grid;grid-template-columns:40px 1fr;gap:18px;min-height:250px;padding:28px 28px 30px 0;border-bottom:1px solid var(--editorial-line)}
.editorial-site .process-v2-steps .process-step+li{padding-left:28px;border-left:1px solid var(--editorial-line)}
.editorial-site .process-v2-steps .process-step>span{color:var(--color-accent);font:9px/1.4 Inter,system-ui,sans-serif}
.editorial-site .process-v2-steps h3{margin:0 0 78px;font-size:clamp(27px,3vw,44px);font-weight:430;letter-spacing:-.045em}
.editorial-site .process-v2-steps p{margin:0;color:#7c7f77;font-size:13px;line-height:1.65}

/* Collaboration fit without sales-language carousel. */
.editorial-site .collaboration-v2{background:radial-gradient(ellipse 42% 42% at 12% 22%,#14160c 0%,transparent 76%),#050505!important}
.editorial-site .collaboration-heading{display:grid;grid-template-columns:minmax(0,8fr) minmax(250px,3fr);gap:8.333%;align-items:end;margin-top:48px}
.editorial-site .collaboration-heading .fit-title{margin:0;font-size:clamp(57px,7.8vw,118px);line-height:.87}
.editorial-site .collaboration-heading .fit-title em{color:var(--color-accent);font-style:normal}
.editorial-site .collaboration-heading .fit-support{width:auto;margin:0;color:#777a72;font-size:13px;line-height:1.65}
.editorial-site .collaboration-list{list-style:none;margin:clamp(82px,11svh,130px) 0 0;padding:0;border-top:1px solid var(--editorial-line)}
.editorial-site .collaboration-list .fit-criterion{display:grid;grid-template-columns:70px minmax(0,1fr);gap:25px;width:100%;padding:30px 0;border-bottom:1px solid var(--editorial-line)}
.editorial-site .collaboration-list .fit-criterion>span{color:#686b64;font:9px/1.5 Inter,system-ui,sans-serif}
.editorial-site .collaboration-list h3{margin:0 0 10px;font-size:clamp(27px,3vw,45px);font-weight:430;letter-spacing:-.045em}
.editorial-site .collaboration-list p{margin:0;color:#797c74;font-size:13px;line-height:1.65}

/* FAQ and contact intent. */
.editorial-site .faq-v2 .faq-layout{margin-top:48px}
.editorial-site .faq-v2 .faq-intro>p{max-width:320px;margin-top:34px}
.editorial-site .conversion-v2 .contact-intents{display:flex;align-items:center;justify-content:flex-end;gap:26px;flex-wrap:wrap}
.editorial-site .contact-intent{display:inline-flex;align-items:center;min-height:44px;padding:0 0 7px;border-bottom:1px solid var(--editorial-line);color:#898c84;font:9px/1.3 Inter,system-ui,sans-serif;letter-spacing:.12em}
.editorial-site .contact-intent-primary{border-bottom-color:#d32f3866;color:#d7d9d1}

/* Footer navigation replaces invented contact data. */
.editorial-site .footer-nav{display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.editorial-site .footer-nav>span{display:block;margin-bottom:9px;color:#62655d;font:9px Inter,system-ui,sans-serif;letter-spacing:.14em}
.editorial-site .footer-nav a{color:#85887f;font-size:12px;line-height:1.55}
.editorial-site .footer-nav a:hover{color:#f1f1ec}

@media(max-width:980px){
  .editorial-site .featured-project{grid-template-columns:1fr;gap:84px}
  .editorial-site .featured-project-info{display:grid;grid-template-columns:1fr 1fr;gap:0 8.333%}
  .editorial-site .featured-project-info h3,.editorial-site .project-kicker{grid-column:1}
  .editorial-site .project-summary{grid-column:1}
  .editorial-site .project-details{grid-column:2;grid-row:1/5}
}

@media(max-width:760px){
  .editorial-site .portfolio-v2-section:before{background-size:25% 100%}
  .editorial-site .featured-project-gallery{grid-template-columns:1fr 38%;gap:10px;align-items:end}
  .editorial-site .project-shot-wide{aspect-ratio:4/5}
  .editorial-site .project-shot-wide img{object-position:56% center}
  .editorial-site .project-shot-detail{aspect-ratio:3/5;transform:translateY(32px)}
  .editorial-site .project-shot figcaption{left:11px;bottom:10px;font-size:7px}
  .editorial-site .featured-project-info{display:block}
  .editorial-site .project-kicker{margin-bottom:22px}
  .editorial-site .featured-project-info h3{font-size:62px}
  .editorial-site .project-summary{margin:26px 0 34px;font-size:14px}
  .editorial-site .work-documentation-note{display:block;margin-top:84px}
  .editorial-site .work-documentation-note span{display:block;margin-bottom:14px}
  .editorial-site .about-v2 .about-layout{display:flex;flex-direction:column}
  .editorial-site .about-v2 .about-portrait{order:2;margin:70px 0 0}
  .editorial-site .about-v2 .about-copy{order:1}
  .editorial-site .about-monogram b{font-size:38vw}
  .editorial-site .expertise-v2-heading,.editorial-site .collaboration-heading{display:block;margin-top:42px}
  .editorial-site .expertise-v2-heading h2,.editorial-site .collaboration-heading .fit-title{font-size:clamp(48px,14vw,72px)}
  .editorial-site .expertise-v2-heading>p,.editorial-site .collaboration-heading .fit-support{margin-top:34px}
  .editorial-site .expertise-v2-list{margin-top:70px}
  .editorial-site .expertise-v2-list .service-item{grid-template-columns:34px minmax(0,1fr);gap:14px;min-height:102px}
  .editorial-site .expertise-v2-list .service-item strong{font-size:clamp(25px,7.7vw,38px)}
  .editorial-site .expertise-v2-list .service-item small{display:none}
  .editorial-site .archive-frame{opacity:.9;filter:brightness(.92) saturate(1)}
  .editorial-site .process-v2-title{width:100%;font-size:clamp(48px,14vw,72px)}
  .editorial-site .process-v2-steps{grid-template-columns:1fr;margin-top:70px}
  .editorial-site .process-v2-steps .process-step{min-height:0;padding:28px 0 34px}
  .editorial-site .process-v2-steps .process-step+li{padding-left:0;border-left:0}
  .editorial-site .process-v2-steps h3{margin-bottom:26px}
  .editorial-site .collaboration-list{margin-top:70px}
  .editorial-site .collaboration-list .fit-criterion{grid-template-columns:34px 1fr;gap:14px}
  .editorial-site .collaboration-list h3{font-size:clamp(26px,8vw,38px)}
  .editorial-site .faq-v2 .faq-layout{margin-top:42px}
  .editorial-site .conversion-v2 .contact-intents{justify-content:flex-start;align-items:flex-start;flex-direction:column;gap:17px}
  .editorial-site .contact-intent{min-height:34px}
}

@media(prefers-reduced-motion:reduce){
  .editorial-site .project-shot img,.editorial-site .expertise-v2-list .service-item{transition:none!important}
}

/* Portfolio 2.1: compact bilingual controls and language-safe layout. */
html.i18n-loading body{visibility:hidden}
.editorial-site .language-switcher{display:flex;align-items:center;gap:7px;flex:none;color:#5f625b;font:9px/1 Inter,system-ui,sans-serif;letter-spacing:.12em}
.editorial-site .language-switcher button{position:relative;padding:8px 2px;border:0;background:transparent;color:#696c65;font:inherit;letter-spacing:inherit;transition:color 180ms ease}
.editorial-site .language-switcher button[aria-pressed="true"]{color:var(--color-accent)}
.editorial-site .language-switcher button[aria-pressed="true"]:after{content:"";position:absolute;left:50%;bottom:1px;width:3px;height:3px;border-radius:50%;background:var(--color-accent);transform:translateX(-50%)}
.editorial-site .language-switcher button:hover{color:#fff}
.editorial-site .section-marker>b,.editorial-site .manifesto-marker>b,.editorial-site .capabilities-marker>b,.editorial-site .process-marker>b,.editorial-site .conversion-marker>b{font-weight:inherit}
.editorial-site .expertise-v2-heading{display:block}
.editorial-site .expertise-v2-heading h2{width:min(980px,86%)}
[data-language="en"] .editorial-site .manifesto-statement{width:min(1180px,90%)}
[data-language="en"] .editorial-site .project-summary{max-width:38ch}

/* Ambient motion stays independent from the approved scroll controller. */
.editorial-site .wave-field{transform:translate3d(var(--ambient-x,0),var(--ambient-y,0),0) scale(1.018);transform-origin:center;will-change:transform}
.editorial-site .wave-pointer-pass{opacity:calc(.08 + var(--ambient-energy,0)*.28)}
.editorial-site .manifesto-atmosphere{position:absolute;z-index:-1;inset:8% -8%;pointer-events:none;background:radial-gradient(ellipse 34% 22% at 74% 38%,#d32f3810 0%,transparent 76%);transform:translate3d(var(--ambient-line-x,0),var(--ambient-line-y,0),0);will-change:transform}
.editorial-site .conversion-atmosphere:after{content:"";position:absolute;inset:8% 4%;border:1px solid #d32f380b;border-radius:50%;transform:translate3d(var(--ambient-cta-x,0),var(--ambient-cta-y,0),0) rotate(-8deg);pointer-events:none;will-change:transform}

@media(max-width:1100px){
  .editorial-site .header-inner{gap:22px}
  .editorial-site .desktop-nav{gap:18px}
}

@media(max-width:760px){
  .editorial-site .language-switcher{margin-left:auto;margin-right:10px;gap:5px}
  .editorial-site .language-switcher button{min-width:30px;min-height:44px}
  .editorial-site .expertise-v2-heading h2{width:100%}
  [data-language="en"] .editorial-site .manifesto-statement{width:100%}
  .editorial-site .wave-field{transform:translate3d(var(--ambient-x,0),var(--ambient-y,0),0) scale(1.025)}
}

@media(max-width:359px){
  .editorial-site .header-inner{gap:8px}
  .editorial-site .menu-toggle{flex:none}
  .editorial-site .language-switcher{margin-right:4px;gap:2px}
  .editorial-site .wordmark{font-size:11px}
}

@media(prefers-reduced-motion:reduce){
  .editorial-site .wave-field,.editorial-site .manifesto-atmosphere,.editorial-site .conversion-atmosphere:after,.editorial-site .project-arrow,.editorial-site .project-details{transform:none!important;transition:none!important;will-change:auto!important}
  .editorial-site .wave-pointer-pass{display:none}
}
