/* Single approved visual direction: Midnight Editorial / Steel. */
:root{ --bar-height:54px; }
@media screen{
:root{
  --paper:#f7f6f3;--white:#fffefa;--ink:#171717;--quiet:#52585a;--line:#c9cece;
  --aegean:#385d6a;--deep:#274956;--mist:#e4eaeb;
  --accent-light:#bdd0d7;--accent-dark:#385d6a;--dark:#0a0a0a;--dark-panel:#17191a;
  --dark-ink:#f7f6f3;--dark-muted:#b9bcbc;--dark-line:#434748;
  --hero-bg:var(--dark);--hero-ink:var(--dark-ink);--hero-muted:var(--dark-muted);--hero-line:var(--dark-line);--hero-accent:var(--accent-light);
  --work-bg:var(--dark);--work-ink:var(--dark-ink);--work-muted:var(--dark-muted);--work-line:var(--dark-line);--work-accent:var(--accent-light);--work-panel:var(--dark-panel);
  --practice-bg:var(--paper);--practice-ink:var(--ink);--practice-muted:var(--quiet);--practice-line:var(--line);--practice-accent:var(--accent-dark);
  --profile-bg:var(--dark);--profile-ink:var(--dark-ink);--profile-muted:var(--dark-muted);--profile-line:var(--dark-line);--profile-accent:var(--accent-light);
 }
html{scroll-padding-top:calc(var(--bar-height) + 22px)}
body{background:var(--paper)}
body::before{display:none}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid currentColor;outline-offset:4px}
.skip-link{position:fixed;z-index:200;}
.site-header{background:var(--hero-bg);color:var(--hero-ink)}
.masthead{min-height:88px;border-color:var(--hero-line)}
.main-nav a,.language-switch a{color:var(--hero-muted)}
.wordmark-dot,.main-nav a.is-active{color:var(--hero-accent)}
.main-nav a::after{background:var(--hero-accent)}
.hero.wrap,.practice-section.wrap{width:100%;max-width:none;padding-inline:max(var(--edge),calc((100% - var(--max))/2))}
.hero{background:var(--hero-bg);color:var(--hero-ink);padding-bottom:14px;--line:var(--hero-line)}
.hero-overline{margin-top:0;padding-top:22px;color:var(--hero-muted)}
.hero-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.88fr);gap:7%;align-items:center;padding:48px 0 46px;min-height:0}
.hero-copy{align-self:center;min-width:0}
.hero-name{font-size:11px;margin-bottom:26px;letter-spacing:.15em}
.hero-first,.hero-second{font-size:clamp(48px,5.7vw,90px);line-height:1.08;letter-spacing:-.046em}
.hero-second{color:var(--hero-accent);margin-left:0;margin-top:6px}
.hero-second::after{background:var(--hero-line);bottom:-16px;right:20%;animation:none}
.hero-intro{font-size:15px;max-width:510px;line-height:1.85;color:var(--hero-muted);margin-top:36px}
.hero-descriptor{font-size:11px;line-height:1.8;color:var(--hero-muted);max-width:520px}
.hero-actions{gap:24px;margin-top:28px}
.hero .button-ink{background:var(--hero-ink);color:var(--hero-bg);border-color:var(--hero-ink)}
.hero .button-ink:hover{background:var(--hero-accent);color:var(--hero-bg)}
.hero .button-text{color:var(--hero-ink);border-color:var(--hero-line)}
.hero-visual{--scene-x:0;--scene-y:0;min-height:0;height:auto;max-width:none;margin:0;padding:0;width:100%;isolation:isolate;position:relative;align-self:center}
.hero-portrait-main{position:relative;inset:auto;margin:0;width:100%;max-width:100%;height:clamp(420px,40vw,570px);border-radius:1px;box-shadow:none;transform:none;animation:none;overflow:hidden}
.hero-portrait-main::before{inset:12px;border-color:#ffffff40}
.hero-photo-main{position:static;display:block;inset:auto;width:100%;height:100%;object-fit:cover;object-position:50% 35%;background-image:none;filter:none;transform:none}
.hero-visual figcaption{position:relative;z-index:2;display:flex;justify-content:space-between;gap:14px;font:9px/1.6 var(--sans);text-transform:uppercase;letter-spacing:.14em;color:var(--hero-muted);padding-top:13px}
.hero-frame-one{right:-14px;left:auto;top:18px;bottom:44px;width:100%;height:auto;border-color:var(--hero-line);z-index:-1}
.hero-visual:hover .hero-portrait-main{box-shadow:none}
.hero-bottom{border-color:var(--hero-line);padding-block:18px;gap:20px}
.hero-bottom p{font-size:17px;color:var(--hero-ink)}
.begin-link{color:var(--hero-muted)}
.hero .scope-strip{border-color:var(--hero-line);padding-block:23px 17px}
.hero .metric-value{color:var(--hero-accent);font-size:45px}
.hero .metric dt{color:var(--hero-ink);font-size:12px}
.hero .metric-detail{color:var(--hero-muted);font-size:10px}
.hero .scope-strip .metric+.metric{border-color:var(--hero-line)}
.perspective-section{padding-block:102px}
.perspective-rail{min-width:0}
.side-portrait{margin-top:48px;max-width:220px}
.side-portrait img{display:block;width:100%;height:auto;aspect-ratio:3/4;object-fit:cover;filter:none}
.section-main h2,.contact-content h2{font-size:clamp(39px,4vw,64px);line-height:1.13}
.section-intro{font-size:15px}
.work-section{background:var(--work-bg);color:var(--work-ink);border-color:var(--work-line);padding-block:90px 64px;--ink:var(--work-ink);--quiet:var(--work-muted);--line:var(--work-line);--aegean:var(--work-accent);--deep:var(--work-accent);--mist:var(--work-panel)}
.work-section .micro-label,.work-section .feature-credit,.work-section .feature-description{color:var(--work-muted)}
.work-section .work-intro .micro-label,.work-section .section-label>span:first-child{color:var(--work-accent)}
.work-section .case-signal,.work-section .case-signal[data-case]{background:var(--work-panel);color:var(--work-accent);border:1px solid var(--work-line);border-radius:0;min-height:360px}
.work-section .case-signal::before{border-color:var(--work-line)}
.work-section .case-signal::after{display:none}
.feature{box-shadow:none!important;transform:none!important}
.feature:hover{border-color:var(--work-accent)}
.feature-copy h3{font-size:clamp(30px,3vw,46px)}
.feature-description{font-size:14px}
.feature-credit{font-size:11px}
.feature-result small{font-size:11px}
.work-section .feature-meta>span:first-child{color:var(--work-accent)}
.work-source{font-size:11px;line-height:1.8}
.practice-section{background:var(--practice-bg);color:var(--practice-ink);--ink:var(--practice-ink);--quiet:var(--practice-muted);--line:var(--practice-line);--aegean:var(--practice-accent);--deep:var(--practice-accent);padding-block:96px}
.practice-section .practice-item p:not(.micro-label){color:var(--practice-muted)}
.practice-portrait-row{margin-top:50px;display:flex;justify-content:flex-end}
.practice-portrait{width:36%;max-width:390px}
.practice-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:50% 32%}
.practice-spread{margin-top:-170px;align-items:end;gap:7%;position:relative}
.practice-statement{width:100%;min-height:380px;background:var(--practice-bg);color:var(--practice-ink);border:1px solid var(--practice-line);padding:44px 37px}
.practice-statement blockquote{color:var(--practice-ink);font-size:39px;line-height:1.18}
.practice-statement figcaption{color:var(--practice-muted)}
.practice-statement::after{display:none}
.practice-list{margin-top:190px}
.practice-item h3{font-size:29px}
.practice-item p:not(.micro-label){font-size:13px}
.agency-context{background:#000;color:#f7f7f4;padding-block:54px;border-block:1px solid #343434}
.agency-layout{display:grid;grid-template-columns:34% 1fr;gap:13%;align-items:center}
.agency-logo-panel img{display:block;width:100%;height:auto;max-width:350px}
.agency-copy>.micro-label{color:#bfc0ba}
.agency-copy h2{font:50px/1.2 var(--serif);letter-spacing:-.03em;margin-top:12px}
.agency-copy h2>span{color:var(--accent-light)}
.agency-copy>p:not(.micro-label){font-size:14px;line-height:1.9;color:#c3c3bd;max-width:620px;margin-top:18px}
.agency-cases{display:flex;gap:30px;flex-wrap:wrap;margin-top:22px}
.agency-cases .text-link{border-color:#5a5a55;color:#f7f7f4}
.profile-section{background:var(--profile-bg);color:var(--profile-ink);border-color:var(--profile-line);--ink:var(--profile-ink);--quiet:var(--profile-muted);--line:var(--profile-line);--aegean:var(--profile-accent);--deep:var(--profile-accent);padding-block:85px}
.profile-section .button-ink{background:var(--profile-ink);color:var(--profile-bg)}
.profile-section .button-outline{color:var(--profile-ink);border-color:var(--profile-line)}
.profile-section .button-outline:hover{background:var(--profile-line)}
.profile-section .capability p{color:var(--profile-muted);font-size:13px}
.capability h3{font-size:15px}
.contact-section{padding-block:84px 60px}
.contact-content>p{font-size:15px;line-height:1.9}
.contact-links a{font-size:14px;min-height:48px}
.site-footer{font-size:10px}
.case-hero.wrap{width:100%;max-width:none;padding:36px max(var(--edge),calc((100% - var(--max))/2)) 40px;background:var(--hero-bg);color:var(--hero-ink);--quiet:var(--hero-muted);--line:var(--hero-line);--aegean:var(--hero-accent)}
.case-hero>.text-link,.case-hero .case-lede{color:var(--hero-muted)}
.case-hero .case-overline>.micro-label{color:var(--hero-accent)}
.case-hero h1{max-width:1120px}
.case-hero .case-facts dt{color:var(--hero-muted)}
.case-agency-logo{display:block;width:210px;height:auto;margin-bottom:25px}
.profile-page .profile-tools .button{font-size:12px}
.profile-page{background:var(--paper)}
.profile-page .profile-heading h1{color:var(--ink)}
.profile-page .profile-art::after{display:none}
.profile-focus p{font-size:13px}
html[lang="el"] .hero-first,html[lang="el"] .hero-second{font-size:clamp(38px,4.55vw,71px);line-height:1.14;letter-spacing:-.048em}
html[lang="el"] .hero-descriptor{font-size:11px}
.practice-section{display:grid;grid-template-columns:1fr 1fr;column-gap:8%}
.practice-section>.section-grid{grid-column:1/-1}
.practice-portrait-row{grid-column:2;grid-row:2;margin-top:48px;justify-content:flex-end}
.practice-portrait{width:100%;max-width:390px}
.practice-spread{display:contents}
.practice-statement{grid-column:1;grid-row:2;align-self:center;margin-top:48px;min-height:310px}
.practice-list{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:44px}
.practice-item{border-top:1px solid var(--practice-line);border-bottom:0;align-items:start;padding-top:23px;grid-template-columns:22px 1fr;gap:14px}
.practice-item h3{font-size:27px}
.hero-photo,.hero-visual,.hero-first,.hero-second{will-change:auto}
[data-reveal]{transform:none;transition:none}
.is-ready .hero-first,.is-ready .hero-second,.is-ready .hero-intro,.is-ready .hero-descriptor,.is-ready .hero-actions{animation:none}
.hero-photo-main,.hero-portrait-main{animation:none}
html[data-motion="on"][data-reduced="false"] .hero-portrait-main{transform:translate3d(calc(var(--scene-x)*-12px),calc(var(--scene-y)*-10px),0);transition:transform .45s ease}
html[data-page-hidden="true"] *,html[data-page-hidden="true"] *::before,html[data-page-hidden="true"] *::after{animation-play-state:paused!important}
html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after,html[data-reduced="true"] *,html[data-reduced="true"] *::before,html[data-reduced="true"] *::after{animation:none!important;transition:none!important}
html[data-motion="off"],html[data-reduced="true"]{scroll-behavior:auto}
@media (max-width:1100px){
.masthead{gap:18px}
.wordmark{min-width:150px}
.main-nav{gap:18px}
.header-utilities{gap:12px}
.hero-layout,:root[data-edition] .hero-layout{grid-template-columns:minmax(0,1.07fr) minmax(0,.93fr);gap:5%}
.hero-first,.hero-second{font-size:clamp(44px,5.4vw,64px)}
.hero-portrait-main,:root[data-edition] .hero-portrait-main{height:470px}
.hero-actions{gap:18px}
.hero-actions .button{font-size:11px;padding-inline:16px}
.hero-actions .button-text{padding-inline:0}
.practice-statement blockquote{font-size:33px}
.agency-layout{gap:8%}
.agency-copy h2{font-size:42px}
html[lang="el"] .hero-first,html[lang="el"] .hero-second{font-size:clamp(32px,4.1vw,49px)}
.signal-brand{left:28px}
.signal-rule{left:28px;right:28px}
}
@media (max-width:800px){
.masthead{min-height:118px;flex-wrap:wrap;gap:5px 16px;padding-block:10px}
.wordmark{font-size:23px}
.main-nav{order:3;width:100%;justify-content:space-between;gap:12px;border-top:1px solid var(--hero-line);padding-top:5px}
.main-nav a{font-size:12px}
.header-utilities{margin-left:auto}
.hero-layout,:root[data-edition] .hero-layout{grid-template-columns:1fr 1fr;gap:5%;padding-block:32px}
.hero-portrait-main,:root[data-edition] .hero-portrait-main{height:390px}
.hero-frame-one{right:-8px}
.hero-first,.hero-second{font-size:clamp(31px,5.25vw,43px)}
.hero-name{font-size:10px;letter-spacing:.07em;margin-bottom:19px}
.hero-intro{font-size:13px;margin-top:27px}
.hero-descriptor{font-size:10px}
.hero-actions{gap:12px}
.hero-actions .button{font-size:10px;min-height:46px;padding:10px 13px}
.hero-actions .button-text{padding-inline:0}
.hero-bottom p{font-size:16px}
.begin-link{font-size:10px;gap:14px}
html[lang="el"] .hero-first,html[lang="el"] .hero-second{font-size:clamp(26px,3.85vw,35px)}
.practice-spread{margin-top:-100px;gap:5%}
.practice-list{margin-top:125px}
.practice-statement{padding:35px 25px}
.practice-statement blockquote{font-size:29px}
.section-main h2,.contact-content h2{font-size:42px}
.agency-copy h2{font-size:36px}
.practice-list{grid-template-columns:1fr;margin-top:32px;gap:0}
.practice-statement{padding:30px 24px;min-height:290px}
}
@media (max-width:600px){
:root{--edge:24px}
.hero-overline{font-size:9px;gap:18px;padding-top:18px}
.hero-overline>span:last-child{max-width:130px;text-align:right}
.hero-layout,:root[data-edition] .hero-layout{display:grid;grid-template-columns:1fr;row-gap:0;padding-block:27px 30px}
.hero-copy{display:contents}
.hero-copy>h1{grid-row:1;min-width:0}
.hero-visual{grid-row:2;width:100%;margin-top:30px;padding:0;min-height:0}
.hero-intro{grid-row:3;margin-top:25px;font-size:14px;line-height:1.85}
.hero-descriptor{grid-row:4;margin-top:13px;font-size:11px}
.hero-actions{grid-row:5;margin-top:24px;gap:20px}
.hero-name{font-size:10px;margin-bottom:20px;letter-spacing:.1em}
.hero-first,.hero-second{font-size:clamp(37px,9.75vw,57px);line-height:1.12;margin-left:0;margin-top:0;letter-spacing:-.043em}
.hero-second{margin-top:5px!important}
.hero-second::after{display:none}
.hero-portrait-main,:root[data-edition] .hero-portrait-main{height:auto;aspect-ratio:4/5;max-width:none;width:100%}
.hero-photo-main{height:100%;position:absolute;inset:0;object-position:center 32%}
.hero-visual figcaption{font-size:8px;padding-top:11px;letter-spacing:.1em}
.hero-frame-one{right:7px;top:14px;bottom:18px;width:100%}
.hero-actions .button{font-size:11px;min-height:48px;gap:18px}
.hero .button-text{font-size:10px}
.hero-bottom{display:flex;align-items:start;flex-direction:column;gap:8px}
.hero-bottom p{font-size:16px}
.begin-link{font-size:10px;min-height:44px}
.hero .scope-strip{gap:12px;padding-block:21px}
.hero .scope-strip .metric-value{font-size:35px}
.hero .scope-strip .metric dt{font-size:10px;line-height:1.65}
.hero .scope-strip .metric-detail{font-size:9px;line-height:1.7}
.hero .scope-strip .metric+.metric{padding-left:12px}
.section-grid{grid-template-columns:1fr;gap:25px}
.section-label{font-size:10px;gap:20px}
.section-main h2,.contact-content h2{font-size:clamp(34px,9vw,44px);line-height:1.16}
.perspective-section{padding-block:60px}
.perspective-rail{display:grid;grid-template-columns:1fr 85px;align-items:start;gap:20px}
.side-portrait{margin-top:0;max-width:85px;transform:none!important}
.side-portrait img{aspect-ratio:3/4}
.perspective-body{font-size:14px;line-height:1.95;margin-top:25px}
.organization-note{display:block;margin-top:26px;padding-top:23px}
.organization-note h3{margin-top:13px;font-size:26px}
.organization-note p{font-size:13px}
.work-section{padding-block:58px 38px}
.section-intro{font-size:14px;line-height:1.9}
.works{margin-top:34px}
.feature-body{grid-template-columns:1fr;gap:24px;padding-top:22px}
.feature{padding-block:19px 32px}
.feature-meta{gap:14px;flex-wrap:wrap}
.feature-meta .micro-label{font-size:9px}
.feature-meta .micro-label:nth-child(2){max-width:55%;margin-left:auto;text-align:right}
.feature-meta .micro-label:last-child{width:100%;margin-left:0}
.work-section .case-signal,.work-section .case-signal[data-case]{min-height:280px;padding:29px}
.signal-value{font-size:90px}
.signal-brand{font-size:10px;top:26px;left:29px}
.signal-rule{left:29px;right:29px;bottom:28px}
.signal-definition{font-size:12px}
.feature-copy h3{font-size:33px;line-height:1.18}
.feature-description{font-size:14px}
.feature-credit{font-size:11px}
.feature-result{font-size:12px}
.feature-result small{font-size:11px}
.project-index-row{grid-template-columns:18px 1fr 90px 20px;gap:10px}
.index-name{font-size:23px}
.index-name small,.index-result small{font-size:9px}
.index-result{font-size:25px}
.work-source{font-size:11px}
.practice-section{padding-block:61px;display:block}
.practice-portrait-row{margin-top:32px;justify-content:center}
.practice-portrait{width:100%;max-width:330px}
.practice-spread{display:block;margin-top:28px}
.practice-list{display:block;margin-top:24px}
.practice-statement{margin-top:0}
.practice-statement{padding:38px 26px;min-height:0}
.practice-statement blockquote{font-size:32px}
.practice-statement figcaption{font-size:10px;line-height:1.75}
.practice-item p:not(.micro-label){font-size:13px;line-height:1.9}
.agency-context{padding-block:36px}
.agency-layout{grid-template-columns:1fr;gap:20px}
.agency-logo-panel img{width:240px;margin:auto}
.agency-copy h2{font-size:35px}
.agency-copy>p:not(.micro-label){font-size:13px}
.agency-cases{gap:23px}
.profile-section{padding-block:58px}
.capabilities{grid-template-columns:1fr;gap:22px}
.capability h3{font-size:15px}
.profile-section .capability p{font-size:13px}
.profile-actions{gap:18px}
.profile-actions .button{font-size:11px;min-height:48px}
.contact-section{padding-block:60px 38px}
.contact-content>p{font-size:14px}
.contact-links a{font-size:13px}
.site-footer{font-size:9px;gap:13px}
.case-hero.wrap{padding-top:24px;padding-bottom:29px}
.case-hero h1{font-size:38px}
.case-lede{font-size:14px}
.case-body{padding-top:28px}
.case-narrative>section>p:not(.micro-label){font-size:14px}
.case-hero .case-facts dd{font-size:12px}
.case-agency-logo{width:180px}
html[lang="el"] .hero-first,html[lang="el"] .hero-second{font-size:clamp(28px,7.55vw,43px);line-height:1.19}
html[lang="el"] .hero-actions .button{font-size:10px;gap:12px}
.profile-page .profile-tools .button{font-size:10px}
}
@media (max-width:359px){
:root{--edge:20px}
.hero-first,.hero-second{font-size:35px}
html[lang="el"] .hero-first,html[lang="el"] .hero-second{font-size:26px}
.hero-actions{gap:15px}
.hero-actions .button{font-size:10px}
.hero .scope-strip .metric-value{font-size:31px}
.main-nav a,html[lang="el"] .main-nav a{font-size:10px}
.header-utilities{gap:4px}
.contact-top,html[lang="el"] .contact-top{font-size:10px;gap:5px}
.project-index-row{grid-template-columns:16px 1fr 78px 16px}
.index-name{font-size:21px}
.index-result{font-size:23px}
}
@media (prefers-reduced-motion:reduce){
html{scroll-behavior:auto}
*,*::before,*::after{animation:none!important;transition:none!important}
.hero-photo-main,.hero-portrait-main{transform:none!important}
}
}
@media print{
.side-portrait,.practice-portrait-row,.agency-context,.case-agency-logo{display:none!important}
*,*::before,*::after{animation:none!important;transition:none!important;transform:none!important}
body::before{display:none!important}
}
