
@font-face{
  font-family:"Inter";
  src:url("../fonts/Inter-Variable.woff2") format("woff2");
  font-weight:100 900;
  font-style:normal;
  font-display:swap;
}
@font-face{
  font-family:"Inter";
  src:url("../fonts/Inter-Italic-Variable.woff2") format("woff2");
  font-weight:100 900;
  font-style:italic;
  font-display:swap;
}
:root{
  --ink:#080A0B;
  --gold:#A48852;
  --warm:#F5F3EE;
  --paper:#FFFFFF;
  --graphite:#5C5E60;
  --line:#D9D7D1;
  --soft:#ECE9E2;
  --max:1240px;
  --radius:22px;
  --shadow:0 16px 50px rgba(8,10,11,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--ink);
  background:var(--paper);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(var(--max),calc(100% - 48px));margin:0 auto}
.eyebrow{
  display:inline-flex;align-items:center;gap:.55rem;
  font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--gold)
}
.eyebrow::before{content:"";width:30px;height:1px;background:var(--gold)}
h1,h2,h3,p{margin-top:0}
h1{
  font-size:clamp(3.2rem,7vw,7.2rem);
  line-height:.92;letter-spacing:-.065em;
  font-weight:760;max-width:1000px;margin-bottom:2rem
}
h2{
  font-size:clamp(2.15rem,4.2vw,4.6rem);
  line-height:1;letter-spacing:-.05em;font-weight:720;margin-bottom:1.35rem
}
h3{font-size:1.2rem;line-height:1.2;letter-spacing:-.025em}
.lead{font-size:clamp(1.1rem,1.8vw,1.45rem);line-height:1.5;color:#333;max-width:820px}
.small{font-size:.88rem;color:var(--graphite)}
.muted{color:var(--graphite)}
.gold{color:var(--gold)}
.kicker{font-size:clamp(1.6rem,3vw,3rem);line-height:1.12;letter-spacing:-.04em;font-weight:650;max-width:900px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.6rem;
  min-height:52px;padding:0 1.3rem;border:1px solid var(--ink);
  border-radius:999px;font-weight:650;transition:.2s ease;background:var(--ink);color:white
}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(8,10,11,.12)}
.btn.secondary{background:transparent;color:var(--ink);border-color:var(--line)}
.btn.secondary:hover{border-color:var(--ink);box-shadow:none}
.btn.gold{background:var(--gold);border-color:var(--gold);color:white}
.inline-link{display:inline-flex;gap:.45rem;align-items:center;font-weight:650;border-bottom:1px solid var(--line);padding-bottom:.18rem}
.inline-link:hover{border-color:var(--gold);color:var(--gold)}
.section{padding:110px 0}
.section.compact{padding:76px 0}
.section.warm{background:var(--warm)}
.section.ink{background:var(--ink);color:white}
.section.ink .lead,.section.ink .muted,.section.ink .small{color:#c7c8c8}
.section.gold-field{background:var(--gold);color:white}
.grid{display:grid;gap:24px}
.grid.two{grid-template-columns:repeat(2,1fr)}
.grid.three{grid-template-columns:repeat(3,1fr)}
.grid.four{grid-template-columns:repeat(4,1fr)}
.card{
  border:1px solid var(--line);border-radius:var(--radius);padding:30px;
  background:white;position:relative;overflow:hidden
}
.card.warm{background:var(--warm);border-color:transparent}
.card.dark{background:#111415;color:white;border-color:#232627}
.card .num{font-size:.77rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);font-weight:700;margin-bottom:2rem}
.card p{color:var(--graphite);margin-bottom:0}
.card.dark p{color:#b7b9b9}
.card .star{position:absolute;top:22px;right:24px;color:var(--gold);font-size:1.55rem}
.rule{height:1px;background:var(--line);margin:34px 0}
.pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:1.4rem}
.pill{padding:.55rem .85rem;border:1px solid var(--line);border-radius:999px;font-size:.82rem;color:var(--graphite);background:white}
.stat{padding:26px 0;border-top:1px solid var(--line)}
.stat strong{display:block;font-size:2.2rem;letter-spacing:-.05em;margin-bottom:.25rem}
.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}
.section-head .lead{max-width:570px;font-size:1rem}
.quote{
  font-size:clamp(2rem,4.2vw,4.6rem);line-height:1.02;letter-spacing:-.055em;font-weight:670;max-width:1050px
}
.quote .accent{color:var(--gold)}
.note{border-left:2px solid var(--gold);padding-left:18px;color:var(--graphite);max-width:760px}
.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:start}
.list-clean{list-style:none;margin:0;padding:0}
.list-clean li{padding:18px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start}
.list-clean li:first-child{border-top:1px solid var(--line)}
.list-clean .mark{color:var(--gold);font-weight:800}
.logo-wall{display:flex;gap:30px;flex-wrap:wrap;align-items:center;color:var(--graphite);font-size:.9rem}
.breadcrumb{font-size:.8rem;color:var(--graphite);margin-bottom:2rem}
.hero{
  min-height:760px;padding:150px 0 90px;background:var(--warm);position:relative;overflow:hidden
}
.hero::after{content:none}
.hero .lead{max-width:750px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:2rem}
.hero-meta{margin-top:4.5rem;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:760px}
.hero-meta div{border-top:1px solid #c9c6be;padding-top:14px}
.hero-meta strong{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;margin-bottom:.4rem}
.hero-meta span{color:var(--graphite);font-size:.9rem}
.site-header{
  position:fixed;left:0;right:0;top:0;z-index:60;
  background:rgba(245,243,238,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(217,215,209,.7)
}
.header-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:176px;height:auto}
.nav{display:flex;align-items:center;gap:28px;font-size:.9rem;font-weight:560}
.nav a{position:relative}
.nav a:not(.btn)::after{
  content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:.2s ease
}
.nav a:hover::after,.nav a.active::after{right:0}
.nav .btn{min-height:42px;padding:0 1rem;color:white}
.menu-toggle{display:none;border:0;background:none;padding:10px;font-size:1.4rem}
.page-hero{padding:160px 0 86px;background:var(--warm)}
.page-hero h1{font-size:clamp(3.2rem,6vw,6.2rem);max-width:980px}
.page-hero .lead{max-width:780px}
.geo-switch{
  display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:white
}
.geo{
  padding:44px;min-height:390px;position:relative
}
.geo + .geo{border-left:1px solid var(--line)}
.geo .country{font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;color:var(--gold);font-weight:750}
.geo h3{font-size:2rem;margin:1.2rem 0}
.geo ul{margin:1.8rem 0 0;padding:0;list-style:none}
.geo li{padding:.72rem 0;border-top:1px solid var(--line)}
.geo .watermark{position:absolute;right:25px;bottom:-50px;font-size:9rem;color:var(--gold);opacity:.07;font-weight:800}
.sector-card{min-height:260px;display:flex;flex-direction:column;justify-content:space-between}
.sector-card .tag{font-size:.74rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);font-weight:700}
.method-step{
  display:grid;grid-template-columns:80px 1fr;gap:24px;padding:28px 0;border-top:1px solid var(--line)
}
.method-step:last-child{border-bottom:1px solid var(--line)}
.method-step .n{font-size:2.3rem;line-height:1;color:var(--gold);letter-spacing:-.06em}
.method-step h3{margin-bottom:.5rem}
.callout{
  background:var(--ink);color:white;border-radius:32px;padding:64px;position:relative;overflow:hidden
}
.callout::after{content:none}
.callout p{color:#c4c6c6;max-width:660px}
.callout .btn{background:white;color:var(--ink);border-color:white}
.footer{
  background:var(--ink);color:white;padding:70px 0 28px
}
.footer-top{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:60px}
.footer img{width:200px;filter:none}
.footer a{color:#c9caca}
.footer a:hover{color:white}
.footer h4{font-size:.78rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold)}
.footer ul{list-style:none;padding:0;margin:0}
.footer li{margin:.55rem 0}
.footer-bottom{border-top:1px solid #2b2e2f;margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:.78rem;color:#8f9292;flex-wrap:wrap}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}
.contact-block{padding:24px 0;border-top:1px solid var(--line)}
.contact-block:last-child{border-bottom:1px solid var(--line)}
form{display:grid;gap:18px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
label{display:block;font-size:.78rem;font-weight:650;margin-bottom:7px}
input,select,textarea{
  width:100%;border:1px solid var(--line);border-radius:14px;padding:14px 15px;background:white;color:var(--ink);outline:none
}
input:focus,select:focus,textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(164,136,82,.10)}
textarea{min-height:150px;resize:vertical}
.form-note{font-size:.74rem;color:var(--graphite)}
.form-success{display:none;border:1px solid #c7d9c7;background:#f2f8f2;padding:14px 16px;border-radius:12px;font-size:.9rem}
.table-like{border-top:1px solid var(--line)}
.row-like{display:grid;grid-template-columns:.72fr 1.28fr;gap:30px;padding:24px 0;border-bottom:1px solid var(--line)}
.row-like strong{font-size:1.05rem}
.row-like p{margin:0;color:var(--graphite)}
.badge{display:inline-flex;align-items:center;gap:.4rem;padding:.42rem .7rem;background:var(--warm);border-radius:999px;font-size:.75rem}
.case-line{font-size:clamp(1.4rem,2.4vw,2.3rem);line-height:1.15;letter-spacing:-.035em;max-width:980px}
@media(max-width:1000px){
  .nav{display:none;position:absolute;top:82px;left:0;right:0;background:var(--warm);padding:24px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}
  .nav.open{display:flex}.menu-toggle{display:block}
  .grid.three,.grid.four{grid-template-columns:repeat(2,1fr)}
  .split,.contact-grid{grid-template-columns:1fr;gap:44px}
  .geo-switch{grid-template-columns:1fr}.geo + .geo{border-left:0;border-top:1px solid var(--line)}
  .footer-top{grid-template-columns:1fr 1fr}.footer-top > :first-child{grid-column:1/-1}
}
@media(max-width:700px){
  .container{width:min(100% - 30px,var(--max))}
  .header-inner{height:72px}.brand img{width:150px}.nav{top:72px}
  .hero{padding-top:125px;min-height:auto}
  h1{font-size:clamp(3rem,15vw,5.3rem)}
  .hero-meta,.grid.two,.grid.three,.grid.four,.form-row{grid-template-columns:1fr}
  .section,.section.compact{padding:74px 0}
  .section-head{display:block}.section-head .lead{margin-top:1.2rem}
  .card{padding:24px}.callout{padding:38px 26px}
  .geo{padding:30px}.footer-top{grid-template-columns:1fr}.footer-top > :first-child{grid-column:auto}
  .row-like{grid-template-columns:1fr;gap:8px}
}


/* v4 — Founders, competitive advantage, technology and operating system */
.advantage-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.advantage{
  padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:white;
  min-height:260px;display:flex;flex-direction:column;justify-content:space-between
}
.advantage .icon{
  width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
  background:var(--warm);color:var(--gold);font-size:1.3rem;font-weight:800
}
.advantage h3{margin:1.4rem 0 .7rem}
.founders-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.founder-card{
  border:1px solid var(--line);border-radius:28px;padding:38px;background:white;position:relative;overflow:hidden
}
.founder-card::after{content:none}
.founder-role{font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold);font-weight:720}
.founder-name{font-size:2rem;letter-spacing:-.045em;margin:.65rem 0 .25rem}
.founder-focus{font-weight:650;margin-bottom:1.4rem}
.complement{
  margin-top:24px;padding:32px;border-radius:24px;background:var(--ink);color:white;
  font-size:clamp(1.3rem,2.5vw,2.2rem);line-height:1.2;letter-spacing:-.035em
}
.complement span{color:var(--gold)}
.tech-stack{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.tech-chip{
  padding:12px 16px;border-radius:999px;border:1px solid var(--line);background:white;
  font-weight:650;font-size:.92rem
}
.tech-principle{
  border-top:1px solid var(--line);padding:22px 0;display:grid;grid-template-columns:150px 1fr;gap:26px
}
.tech-principle:last-child{border-bottom:1px solid var(--line)}
.tech-principle strong{font-size:1rem}
.value-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:12px}
.value-card{
  min-height:235px;padding:24px 20px;border-radius:20px;background:var(--warm);
  display:flex;flex-direction:column;justify-content:space-between
}
.value-card .vnum{font-size:.72rem;color:var(--gold);font-weight:750;letter-spacing:.1em}
.value-card h3{font-size:1.05rem;margin:0}
.value-card p{font-size:.83rem;color:var(--graphite);margin:.8rem 0 0}
.os-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.os-card{
  border:1px solid #272b2c;border-radius:22px;padding:28px;background:#101314;min-height:250px
}
.os-card .os-num{color:var(--gold);font-weight:750;font-size:.76rem;letter-spacing:.1em}
.os-card h3{color:white;margin:1.6rem 0 .7rem}
.os-card p{color:#b9bbbb}
.brand-principle{
  display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:center;
  border-radius:32px;background:var(--gold);color:white;padding:54px
}
.brand-principle .big{
  font-size:clamp(2.2rem,4vw,4.7rem);line-height:.98;letter-spacing:-.055em;font-weight:720
}
.brand-principle p{color:rgba(255,255,255,.88)}
.disclaimer{
  font-size:.74rem;line-height:1.5;color:var(--graphite);border-top:1px solid var(--line);padding-top:16px;margin-top:24px
}
@media(max-width:1100px){
  .advantage-grid{grid-template-columns:repeat(2,1fr)}
  .value-grid{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:800px){
  .founders-grid,.brand-principle{grid-template-columns:1fr}
  .os-grid{grid-template-columns:1fr}
  .tech-principle{grid-template-columns:1fr;gap:6px}
}
@media(max-width:620px){
  .advantage-grid,.value-grid{grid-template-columns:1fr}
  .founder-card{padding:28px}
  .brand-principle{padding:34px 26px}
}

/* CERVISIA motion: visible entrances, stable layout and reduced-motion support. */
[id]{scroll-margin-top:100px}
.btn{transition:transform 220ms ease,box-shadow 220ms ease,border-color 220ms ease,background-color 220ms ease}
.inline-link{transition:color 220ms ease,border-color 220ms ease}
.card,.advantage,.founder-card,.os-card{transition:border-color 300ms ease}
@media(hover:hover) and (pointer:fine){
  .card:hover,.advantage:hover,.founder-card:hover,.os-card:hover{border-color:var(--gold)}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .btn,.inline-link,.nav a::after,.card,.advantage,.founder-card,.os-card{transition:none}
  .btn:hover{transform:none}
}
@media(hover:none){.btn:hover{transform:none;box-shadow:none}}
@media print{
  html{scroll-behavior:auto}
  .hero::after{animation:none}
}

/* Visual system — original CERVISIA star, connected diagrams and editorial imagery. */
.hero-visual-layout{padding:142px 0 56px;min-height:0}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:64px;align-items:center}
.hero-copy h1{font-size:clamp(3.7rem,6.1vw,5.9rem);line-height:.98;letter-spacing:-.065em;margin:24px 0}
.hero-copy .lead{font-size:1.15rem;max-width:620px}
.hero-visual-layout .hero-meta{max-width:none;margin-top:48px;gap:40px}
.hero-visual-layout .hero-meta strong{font-size:.875rem}
.cv-orbit{margin:0;padding:26px 26px 28px;background:var(--ink);color:white;border-radius:32px;overflow:hidden;box-shadow:0 28px 64px #080a0b16}
.orbit-head{display:flex;justify-content:space-between;color:#c9c1ad;font-size:.75rem;letter-spacing:.12em;gap:12px}
.orbit-head span:last-child{color:#96948d}
.orbit-stage{position:relative;aspect-ratio:480/430;width:100%;margin:10px auto 0}
.orbit-lines{position:absolute;width:100%;height:100%;inset:0;overflow:visible}
.orbit-track{stroke:#36342e;stroke-width:1;fill:none;stroke-dasharray:3 8}
.orbit-spokes{stroke:#635640;stroke-width:1;fill:none}
.diagram-line{stroke:var(--gold);stroke-width:2;fill:none;stroke-linecap:round}
.orbit-center{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:10px}
.brand-star{width:88px;height:88px;object-fit:contain;transform-origin:50% 50%;filter:drop-shadow(0 5px 18px #a4885220)}
.orbit-center span{font-size:.75rem;letter-spacing:.18em;color:#c9c1ad}
.orbit-label{position:absolute;text-align:center;padding:12px 16px;background:#151819;border:1px solid #444036;border-radius:16px;min-width:128px;box-shadow:0 8px 28px #0003}
.orbit-label b{display:block;font-size:1.1rem;line-height:1.3;font-weight:620;letter-spacing:-.025em}
.orbit-label span{display:block;color:#b9b8b2;font-size:.8125rem;margin-top:3px;white-space:nowrap}
.orbit-people{top:3%;left:50%;transform:translateX(-50%)}
.orbit-projects{top:66%;left:0}
.orbit-progress{top:66%;right:0}
.cv-orbit figcaption{border-top:1px solid #34342f;padding-top:20px;text-align:center;font-size:.875rem;color:#b9b8b2;line-height:1.6}
.cv-orbit figcaption strong{color:white;font-weight:500}
.page-hero{position:relative;overflow:hidden}
.page-hero .container{position:relative;z-index:1}
.page-star{position:absolute;top:100px;right:max(24px,calc((100vw - 1240px)/2));width:150px;height:150px;opacity:.12;pointer-events:none}
.editorial-section{padding:0 0 32px}
.cv-editorial{margin:0;position:relative;overflow:hidden;border-radius:32px;background:var(--ink);aspect-ratio:16/7;color:white}
.editorial-image{width:100%;height:100%;object-fit:cover;object-position:center;transform:scale(1.015)}
.cv-editorial:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080a0b80,transparent 72%);pointer-events:none}
.cv-editorial figcaption{position:absolute;left:5%;top:18%;max-width:48%;z-index:1}
.cv-editorial .eyebrow{color:#dbc294;font-size:.75rem}
.cv-editorial p{font-size:clamp(2rem,3.8vw,3.7rem);font-weight:620;letter-spacing:-.045em;line-height:1.06;margin:24px 0 0}
.cv-editorial p span{color:#cdb482}
.cv-flow{margin:0 0 34px;background:var(--warm);border:1px solid var(--line);border-radius:28px;padding:30px;overflow:hidden}
.flow-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;flex-wrap:wrap}
.flow-heading>span:last-child{font-size:.7rem;letter-spacing:.08em;color:var(--graphite)}
.flow-inputs,.flow-outputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;text-align:center}
.flow-inputs span{border:1px solid #d0c9bb;background:#fff9;border-radius:12px;padding:14px 8px;font-size:.95rem;font-weight:580}
.flow-connect{display:block;width:100%;height:64px}
.flow-core{display:flex;align-items:center;justify-content:center;gap:18px;max-width:410px;margin:auto;padding:22px;background:var(--ink);color:white;border-radius:18px}
.flow-core .brand-star{width:44px;height:44px;flex:none}
.flow-core strong{display:block;font-size:1.15rem;font-weight:580;letter-spacing:-.03em}
.flow-core span{display:block;font-size:.875rem;color:#c5c1b6;margin-top:4px}
.flow-outputs>div{padding:18px 8px;background:white;border:1px solid var(--line);border-radius:14px;display:grid;justify-items:center;gap:5px}
.flow-outputs>div>span{font-size:.75rem;color:var(--gold);letter-spacing:.08em}
.flow-outputs strong{font-size:1.15rem;font-weight:600}
.flow-outputs small{color:var(--graphite);font-size:.8125rem}
.cv-flow figcaption{font-size:.875rem;color:var(--graphite);text-align:center;margin-top:24px}
.table-like{margin-top:56px}
.cv-cycle{padding:26px 20px;margin:0;border:1px solid var(--line);border-radius:28px;background:var(--warm);overflow:hidden}
.cycle-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap;padding:0 6px}
.cycle-heading>span:last-child{font-size:.7rem;letter-spacing:.08em;color:var(--graphite)}
.cycle-canvas{position:relative;aspect-ratio:500/430;margin:18px 0;width:100%}
.cycle-canvas>svg{position:absolute;inset:0;width:100%;height:100%}
.cycle-track{stroke:#ddd5c5;stroke-width:1;fill:none}
.cycle-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;justify-items:center;gap:6px;text-align:center}
.cycle-center .brand-star{width:70px;height:70px}
.cycle-center strong{font-size:.85rem;font-weight:550;color:var(--graphite)}
.cycle-node{position:absolute;display:grid;gap:2px;justify-items:center;text-align:center;padding:10px 12px;background:white;border:1px solid #ddd5c5;border-radius:14px;width:148px}
.cycle-node>span{font-size:.75rem;color:#826931;letter-spacing:.08em}
.cycle-node>b{font-size:1rem;font-weight:620;letter-spacing:-.03em}
.cycle-node>small{font-size:.75rem;color:var(--graphite);white-space:nowrap}
.cycle-top{left:50%;top:0;transform:translateX(-50%)}
.cycle-right{right:0;top:50%;transform:translateY(-50%)}
.cycle-bottom{left:50%;bottom:0;transform:translateX(-50%)}
.cycle-left{left:0;top:50%;transform:translateY(-50%)}
.cv-cycle figcaption{font-size:.875rem;text-align:center;color:var(--graphite);margin-top:16px}
.brand-model-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;align-items:stretch}
.brand-model-layout .brand-principle{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:28px;padding:44px}
.pact-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:60px;align-items:center}
.pact-visual{aspect-ratio:1;position:relative;max-width:440px;width:100%;margin:auto}
.pact-ring{position:absolute;inset:8%;border:1px solid #7b6844;border-radius:50%}
.pact-ring:after{content:"";position:absolute;inset:15%;border:1px dashed #514733;border-radius:50%}
.pact-ring span{position:absolute;padding:10px 18px;background:#151819;border:1px solid #514733;border-radius:999px;font-size:1rem;z-index:1}
.pact-ring span:nth-child(1){left:50%;top:0;transform:translate(-50%,-50%)}
.pact-ring span:nth-child(2){bottom:12%;left:0;transform:translateX(-18%)}
.pact-ring span:nth-child(3){bottom:12%;right:0;transform:translateX(18%)}
.pact-center{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px}
.pact-center strong{font-size:1rem;font-weight:500;color:#cfc5af}
.motion-toggle{position:fixed;bottom:20px;left:20px;z-index:65;display:flex;align-items:center;gap:9px;min-height:42px;padding:8px 14px;border:1px solid #c7bcaa;border-radius:999px;background:#fffffff2;box-shadow:0 4px 20px #0000000c;color:#333;font-size:.8125rem;cursor:pointer;backdrop-filter:blur(10px)}
.motion-toggle[hidden]{display:none}
.motion-toggle:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.motion-control-icon{font-size:1rem;width:14px;text-align:center}
.cv-motion-ready .brand-star{animation:cv-star-turn 28s linear infinite;animation-play-state:paused}
.cv-motion-ready .is-active .brand-star{animation-play-state:running}
.cv-motion-ready .is-active .diagram-line{animation:cv-line-draw 2.2s cubic-bezier(.22,1,.36,1) both}
.cv-motion-ready .is-active .flow-outputs>div{animation:cv-object-in 950ms cubic-bezier(.22,1,.36,1) both}
.cv-motion-ready .is-active .flow-outputs>div:nth-child(2){animation-delay:160ms}
.cv-motion-ready .is-active .flow-outputs>div:nth-child(3){animation-delay:320ms}
.cv-motion-ready .is-active .editorial-image{animation:cv-photo-in 3s ease-out both}
@keyframes cv-star-turn{to{transform:rotate(360deg)}}
@keyframes cv-line-draw{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}
@keyframes cv-object-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes cv-photo-in{from{transform:scale(1.09)}to{transform:scale(1.015)}}
html[data-motion="paused"] *,html[data-motion="paused"] *:before,html[data-motion="paused"] *:after{animation-play-state:paused!important;scroll-behavior:auto!important}
html[data-motion="paused"] .diagram-line{animation:none!important;stroke-dasharray:none!important;stroke-dashoffset:0!important}
html[data-motion="paused"] .flow-outputs>div{animation:none!important}
@media(max-width:1100px){
 .hero-grid{gap:30px;grid-template-columns:1.1fr 1fr}
 .hero-copy h1{font-size:clamp(3.4rem,6vw,4.7rem)}
 .cv-orbit{padding:22px 18px}
 .orbit-label{min-width:112px;padding:10px}
 .orbit-label span{font-size:.75rem}
 .cycle-node{width:132px;padding:10px 8px}
 .cycle-node>small{font-size:.7rem}
}
@media(max-width:850px){
 .hero-grid{grid-template-columns:1fr;gap:38px}
 .hero-copy h1{font-size:clamp(3.2rem,8.5vw,5.4rem);max-width:740px}
 .hero-copy .lead{max-width:680px}
 .hero-grid .cv-orbit{max-width:560px;width:100%;justify-self:center}
 .hero-visual-layout .hero-meta{gap:20px;margin-top:36px}
 .brand-model-layout,.pact-layout{grid-template-columns:1fr}
 .brand-model-layout .cv-orbit{max-width:540px;width:100%;justify-self:center}
 .cv-editorial{aspect-ratio:16/9}
 .cv-editorial figcaption{top:16%;max-width:54%}
 .cv-editorial p{font-size:clamp(1.8rem,4.4vw,3rem)}
 .cv-editorial .eyebrow{font-size:.65rem;letter-spacing:.08em}
 .cv-editorial .eyebrow:before{width:18px}
}
@media(max-width:540px){
 .hero-visual-layout{padding:116px 0 42px}
 .hero-copy h1{font-size:clamp(3rem,12vw,4rem)}
 .hero-copy .lead{font-size:1.05rem}
 .hero-visual-layout .hero-meta{grid-template-columns:1fr;gap:14px}
 .hero-visual-layout .hero-meta>div{display:grid;grid-template-columns:85px 1fr;gap:10px;padding-top:12px}
 .hero-visual-layout .hero-meta strong{margin:0}
 .cv-orbit{border-radius:24px;padding:22px 16px}
 .orbit-label b{font-size:1rem}
 .orbit-label span{font-size:.75rem}
 .orbit-label{min-width:105px;padding:9px 8px;border-radius:12px}
 .orbit-center .brand-star{width:66px;height:66px}
 .orbit-center span{font-size:.75rem}
 .orbit-stage{margin-top:20px}
 .cv-editorial{aspect-ratio:4/5;border-radius:24px}
 .editorial-image{object-position:64% center}
 .cv-editorial:after{background:linear-gradient(180deg,#080a0bd9,transparent 65%)}
 .cv-editorial figcaption{top:8%;left:7%;max-width:86%}
 .cv-editorial p{font-size:2.1rem}
 .cv-editorial .eyebrow{font-size:.6875rem}
 .cv-flow{padding:24px 16px;border-radius:22px}
 .flow-heading{gap:12px}
 .flow-inputs,.flow-outputs{gap:8px}
 .flow-inputs span{font-size:.875rem;padding:12px 5px}
 .flow-core{padding:18px 14px;gap:12px}
 .flow-core strong{font-size:1rem}
 .flow-core span{font-size:.8125rem}
 .flow-outputs small{font-size:.75rem}
 .flow-outputs>div{padding:15px 4px}
 .flow-outputs strong{font-size:1rem}
 .cv-cycle{padding:24px 10px}
 .cycle-canvas{aspect-ratio:1/1.08;margin:24px 0}
 .cycle-node{width:112px;padding:10px 6px}
 .cycle-node>b{font-size:.875rem}
 .cycle-node>small{font-size:.75rem;white-space:normal;max-width:100px}
 .cycle-center .brand-star{width:52px;height:52px}
 .cycle-center strong{font-size:.75rem;max-width:72px}
 .cycle-heading{gap:10px}
 .cycle-heading>span:last-child{font-size:.75rem}
 .brand-model-layout .brand-principle{padding:32px 26px}
 .page-star{width:110px;height:110px;top:100px;right:8px;opacity:.09}
 .motion-toggle{left:12px;bottom:12px;font-size:.75rem;min-height:40px}
}
@media(prefers-reduced-motion:reduce){
 .visual-motion *,.page-star{animation:none!important;transition:none!important}
 .motion-toggle{display:none}
}
@media print{
 .visual-motion *,.page-star{animation:none!important}
 .motion-toggle{display:none}
}
html[data-motion="paused"] .btn{transition:none}
html[data-motion="paused"] .btn:hover{transform:none}
