
:root{
  --ink:#172421; --green:#0F665B; --blue:#37697B; --gold:#A58B57;
  --canvas:#F4F1E9; --mint:#DDEBE7; --white:#ffffff;
  --line:rgba(23,36,33,.105); --muted:rgba(23,36,33,.64);
  --max:1540px; --signal-x:50%; --progress:0%;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:#fff}
body{
  margin:0;background:#fff;color:var(--ink);
  font-family:"Source Sans 3", Aptos, Arial, sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
body.menu-open{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
::selection{background:var(--mint);color:var(--ink)}
section[id], main[id], footer[id], div[id]{scroll-margin-top:86px}
img{max-width:100%;height:auto;display:block}
.shell{max-width:var(--max);margin:auto;padding-left:clamp(24px,5.5vw,90px);padding-right:clamp(24px,5.5vw,90px)}
.kicker{
  display:flex;align-items:center;gap:12px;
  font-size:9px;letter-spacing:.21em;text-transform:uppercase;
  color:var(--green);font-weight:650
}
.kicker:before{content:"";width:30px;height:1px;background:currentColor}
.serif{font-family:"Source Serif 4", Georgia, serif;font-weight:500}
.muted{color:var(--muted)}
.visually-hidden{
  position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0
}

/* Header */
.header{
  position:fixed;z-index:1000;inset:0 0 auto 0;height:78px;
  background:rgba(255,255,255,.95);backdrop-filter:blur(16px) saturate(1.08);
  border-bottom:1px solid rgba(23,36,33,.075);transition:height .25s,box-shadow .25s
}
.header:after{
  content:"";position:absolute;left:0;bottom:-1px;height:1px;width:var(--progress);
  background:var(--green);opacity:.75
}
.header.scrolled{height:66px;box-shadow:0 10px 28px rgba(23,36,33,.035)}
.header-inner{
  height:100%;max-width:var(--max);margin:auto;
  padding:0 clamp(24px,5.5vw,90px);display:flex;align-items:center;justify-content:space-between
}
.brand img{display:block;width:clamp(144px,10.8vw,174px);transition:width .25s ease}
.header.scrolled .brand img{width:134px}
.nav{display:flex;gap:clamp(17px,2.2vw,35px);align-items:center;font-size:12.5px;font-weight:500}
.nav a{position:relative}
.nav a:not(.nav-cta):after{
  content:"";position:absolute;left:0;bottom:-8px;width:100%;height:1px;background:var(--green);
  transform:scaleX(0);transform-origin:right;transition:transform .24s
}
.nav a:hover:after{transform:scaleX(1);transform-origin:left}
.nav-cta{border:1px solid rgba(23,36,33,.52);padding:10px 14px;font-weight:600;transition:.22s}
.nav-cta:hover{background:var(--ink);color:#fff;border-color:var(--ink)}
.lang{display:flex;gap:6px;color:rgba(23,36,33,.44)}
.menu-btn{display:none;border:0;background:transparent;padding:9px;margin-right:-9px;cursor:pointer}
.menu-btn span{display:block;width:22px;height:1px;background:var(--ink);margin:5px 0;transition:.25s}
.menu-btn.open span:first-child{transform:translateY(3px) rotate(45deg)}
.menu-btn.open span:last-child{transform:translateY(-3px) rotate(-45deg)}
.mobile-menu{
  position:fixed;z-index:900;inset:70px 0 0;background:var(--ink);color:#fff;
  padding:42px 24px 36px;opacity:0;visibility:hidden;transform:translateY(-10px);
  transition:opacity .28s,transform .28s,visibility .28s
}
.mobile-menu.open{opacity:1;visibility:visible;transform:none}
.mobile-menu nav{display:flex;flex-direction:column}
.mobile-menu a{
  font-family:"Source Serif 4", Georgia, serif;font-size:34px;line-height:1.1;
  padding:17px 0;border-bottom:1px solid rgba(255,255,255,.13)
}
.mobile-menu .mobile-contact{margin-top:30px;font-family:"Source Sans 3";font-size:13px;border:1px solid rgba(255,255,255,.55);padding:14px 16px;align-self:flex-start}
.mobile-menu small{display:block;margin-top:44px;color:rgba(255,255,255,.42);font-size:9px;letter-spacing:.17em;text-transform:uppercase}

/* Home */
.hero{padding-top:78px;background:#fff}
.hero-inner{
  max-width:var(--max);margin:auto;min-height:calc(100vh - 78px);
  display:grid;grid-template-columns:minmax(0,1.2fr) minmax(390px,.8fr)
}
.hero-copy{
  display:flex;flex-direction:column;justify-content:center;
  padding:clamp(88px,10vh,130px) clamp(40px,6.5vw,104px) clamp(60px,7vw,100px) clamp(24px,5.5vw,90px);
  border-right:1px solid var(--line)
}
.hero-copy .kicker{margin-bottom:29px}
.hero h1{
  margin:0;max-width:1010px;font-size:clamp(59px,6.7vw,108px);
  line-height:.9;letter-spacing:-.058em;font-weight:650
}
.hero h1 span{display:block}
.hero h1 .serif{color:var(--green);margin-top:5px;letter-spacing:-.06em}
.hero-deck{
  margin-top:43px;padding-top:28px;border-top:1px solid rgba(23,36,33,.16);
  display:grid;grid-template-columns:minmax(0,680px) auto;gap:40px;align-items:end
}
.hero-deck p{margin:0;font-size:clamp(15.5px,1.25vw,18.5px);line-height:1.64;color:rgba(23,36,33,.69)}
.hero-actions{display:flex;align-items:center;gap:17px;white-space:nowrap}
.btn{
  display:inline-flex;align-items:center;gap:16px;padding:13px 17px;
  border:1px solid var(--ink);background:var(--ink);color:#fff;
  font-size:12.5px;font-weight:600;transition:transform .22s,background .22s,border-color .22s
}
.btn:hover{transform:translateY(-2px);background:var(--green);border-color:var(--green)}
.btn-secondary{
  display:inline-flex;align-items:center;gap:12px;padding:12px 16px;
  border:1px solid rgba(23,36,33,.18);background:#fff;color:var(--ink);
  font-size:12.5px;font-weight:600;transition:transform .22s,background .22s,border-color .22s
}
.btn-secondary:hover{transform:translateY(-2px);background:var(--canvas);border-color:rgba(23,36,33,.35)}
.text-link{font-size:12.5px;font-weight:600;border-bottom:1px solid rgba(23,36,33,.48);padding-bottom:3px}
.decision-field{
  position:relative;background:var(--ink);color:#fff;padding:clamp(47px,5vw,78px);
  display:flex;flex-direction:column;justify-content:space-between;overflow:hidden
}
.decision-field:before{
  content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 24.94%,rgba(255,255,255,.1) 25%,transparent 25.06%,
      transparent 49.94%,rgba(255,255,255,.1) 50%,transparent 50.06%,
      transparent 74.94%,rgba(255,255,255,.1) 75%,transparent 75.06%),
    linear-gradient(180deg,transparent 0 32.94%,rgba(255,255,255,.07) 33%,transparent 33.06%,
      transparent 65.94%,rgba(255,255,255,.07) 66%,transparent 66.06%)
}
.decision-field:after{
  content:"";position:absolute;top:0;bottom:0;left:var(--signal-x);width:1px;
  background:linear-gradient(180deg,transparent 5%,var(--gold) 25%,var(--gold) 75%,transparent 95%);
  opacity:.7;transition:left .08s linear
}
.field-top,.field-core,.field-steps{position:relative;z-index:2}
.field-top{display:flex;justify-content:space-between;gap:20px}
.field-top strong{font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--mint);font-weight:650}
.field-top span{font-size:8px;letter-spacing:.17em;text-transform:uppercase;color:rgba(255,255,255,.33)}
.field-core{margin:7vh 0}
.field-core small{display:block;font-size:8px;letter-spacing:.2em;text-transform:uppercase;color:var(--gold);font-weight:650;margin-bottom:19px}
.field-core h2{
  margin:0;max-width:580px;font-family:"Source Serif 4",Georgia,serif;
  font-size:clamp(40px,4.4vw,68px);line-height:.98;letter-spacing:-.043em;font-weight:500
}
.field-core p{margin:23px 0 0;max-width:470px;font-size:14px;line-height:1.62;color:rgba(255,255,255,.63)}
.field-steps{border-top:1px solid rgba(255,255,255,.16)}
.field-step{
  display:grid;grid-template-columns:26px 130px 1fr;gap:10px;align-items:center;
  min-height:59px;border-bottom:1px solid rgba(255,255,255,.1)
}
.field-step b{font-size:8px;letter-spacing:.16em;color:var(--gold)}
.field-step strong{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase}
.field-step span{font-size:11px;line-height:1.4;color:rgba(255,255,255,.48)}
.field-mark{
  position:absolute;z-index:2;right:14px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%);
  font-size:6px;letter-spacing:.24em;text-transform:uppercase;color:rgba(255,255,255,.18)
}

.credential-rail{background:#fff;border-bottom:1px solid var(--line);padding:0}
.credential-inner{max-width:var(--max);margin:auto;padding:0 clamp(24px,5.5vw,90px)}
.credential-shell{
  display:grid;grid-template-columns:minmax(260px,330px) 1fr;align-items:stretch;
  border-left:1px solid var(--line);border-right:1px solid var(--line)
}
.credential-label{
  position:relative;min-height:126px;padding:26px 28px 24px;border-right:1px solid var(--line);
  display:flex;flex-direction:column;justify-content:flex-end;
  background:linear-gradient(180deg, rgba(244,241,233,.62) 0%, rgba(255,255,255,0) 100%)
}
.credential-label:before{
  content:"Integrated perspective";display:block;font-size:8px;letter-spacing:.19em;
  text-transform:uppercase;color:var(--green);font-weight:650;margin-bottom:13px
}
.credential-label:after{
  content:"";position:absolute;left:0;right:0;top:0;height:1px;
  background:linear-gradient(90deg, var(--green) 0%, rgba(15,102,91,.25) 55%, transparent 100%)
}
.credential-label span{
  display:block;max-width:240px;font-family:"Source Serif 4",Georgia,serif;
  font-size:clamp(24px,2vw,31px);line-height:1.08;letter-spacing:-.028em;color:var(--ink)
}
.credential-items{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
.credential-item{
  position:relative;min-height:126px;padding:22px 18px 18px;border-right:1px solid var(--line);
  display:flex;flex-direction:column;justify-content:space-between;transition:background .22s ease
}
.credential-item:last-child{border-right:0}
.credential-item:hover{background:rgba(221,235,231,.18)}
.credential-item b{display:block;font-size:8px;line-height:1;letter-spacing:.18em;color:var(--gold);font-weight:650}
.credential-item strong{display:block;max-width:170px;font-size:13px;line-height:1.26;letter-spacing:-.01em;font-weight:650;color:var(--ink)}
.credential-item .cap-rule{width:26px;height:1px;background:rgba(23,36,33,.16)}

.perspective{padding:clamp(114px,11vw,176px) 0;background:#fff}
.two-col{display:grid;grid-template-columns:.49fr 1.51fr;gap:8vw}
.perspective h2,.audiences h2,.final-cta h2,.pathways-intro h2{
  margin:0;max-width:1040px;font-size:clamp(56px,6.15vw,95px);
  line-height:.94;letter-spacing:-.053em;font-weight:650
}
.perspective h2 .serif,.audiences h2 .serif,.final-cta h2 .serif{color:var(--green)}
.pathways-intro h2 .serif{color:var(--mint)}
.perspective-copy{max-width:730px;margin:34px 0 0;font-size:clamp(16px,1.3vw,19px);line-height:1.7;color:var(--muted)}
.domain-system{
  margin-top:78px;border-top:1px solid rgba(23,36,33,.18);
  display:grid;grid-template-columns:minmax(350px,.68fr) minmax(0,1.32fr)
}
.domain-list{border-right:1px solid var(--line)}
.domain-btn{
  width:100%;min-height:74px;border:0;border-bottom:1px solid var(--line);
  background:transparent;display:grid;grid-template-columns:42px 1fr auto;gap:14px;align-items:center;
  text-align:left;padding:0 24px 0 0;cursor:pointer;transition:background .22s,padding .22s
}
.domain-btn:hover,.domain-btn.active{background:rgba(221,235,231,.24);padding-left:11px}
.domain-n{font-size:8px;letter-spacing:.17em;color:var(--gold);font-weight:650}
.domain-name{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(21px,1.9vw,28px)}
.domain-arrow{font-size:16px;color:rgba(23,36,33,.42);transition:transform .2s,color .2s}
.domain-btn.active .domain-arrow{transform:translateX(3px);color:var(--green)}
.domain-panel{
  position:relative;min-height:380px;background:var(--canvas);
  padding:clamp(45px,5vw,76px);overflow:hidden
}
.domain-panel:after{
  content:"";position:absolute;right:-70px;bottom:-95px;width:310px;height:310px;border-radius:50%;
  border:1px solid rgba(55,105,123,.13);
  box-shadow:0 0 0 58px rgba(55,105,123,.024),0 0 0 116px rgba(55,105,123,.015)
}
.domain-panel small{display:block;font-size:8px;letter-spacing:.19em;text-transform:uppercase;color:var(--green);font-weight:650;margin-bottom:20px}
.domain-panel h3{
  margin:0;max-width:740px;font-family:"Source Serif 4",Georgia,serif;
  font-size:clamp(39px,4vw,62px);line-height:1;letter-spacing:-.04em;font-weight:500
}
.domain-panel p{max-width:710px;margin:25px 0 0;font-size:16px;line-height:1.67;color:rgba(23,36,33,.66)}
.panel-outcome{
  position:relative;z-index:2;margin-top:40px;padding-top:18px;border-top:1px solid rgba(23,36,33,.14);
  display:flex;gap:11px;align-items:center;font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(23,36,33,.55)
}
.panel-outcome:before{content:"";width:7px;height:7px;background:var(--gold);border-radius:50%}
.mantra{background:var(--mint);padding:0}
.mantra-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.mantra-item{padding:clamp(52px,5vw,76px) clamp(24px,4.6vw,72px);border-right:1px solid rgba(23,36,33,.12)}
.mantra-item:last-child{border-right:0}
.mantra-item small{display:block;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);font-weight:650;margin-bottom:17px}
.mantra-item h3{margin:0;font-size:clamp(28px,2.7vw,40px);letter-spacing:-.035em;font-weight:650}
.mantra-item p{margin:17px 0 0;max-width:430px;font-size:14px;line-height:1.58;color:rgba(23,36,33,.61)}
.pathways{background:var(--ink);color:#fff}
.pathways-intro{padding:clamp(94px,9vw,140px) 0 62px}
.pathways .kicker{color:var(--mint)}
.pathway{
  min-height:78vh;border-top:1px solid rgba(255,255,255,.15);
  display:grid;grid-template-columns:.42fr 1.58fr;transition:background .35s
}
.pathway:hover{background:rgba(255,255,255,.028)}
.pathway.market{background:var(--green)}
.pathway.market:hover{background:#0d6056}
.pathway-side{
  padding:49px clamp(24px,4.7vw,74px);border-right:1px solid rgba(255,255,255,.14);
  display:flex;flex-direction:column;justify-content:space-between
}
.pathway-no{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(64px,6vw,92px);line-height:1;color:var(--gold)}
.pathway-label{font-size:8.5px;letter-spacing:.19em;text-transform:uppercase;color:var(--mint);font-weight:650}
.market .pathway-label{color:#fff}
.pathway-main{padding:clamp(66px,6.5vw,104px) clamp(28px,7vw,112px);display:flex;flex-direction:column;justify-content:space-between}
.pathway h3{
  margin:0;max-width:1080px;font-size:clamp(54px,6vw,94px);
  line-height:.93;letter-spacing:-.055em;font-weight:650
}
.pathway h3 .serif{color:var(--mint)}
.market h3 .serif{color:#fff}
.pathway p{max-width:760px;margin:32px 0 0;font-size:16.5px;line-height:1.67;color:rgba(255,255,255,.68)}
.pathway-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-top:72px}
.pathway-link{display:inline-flex;align-items:center;gap:14px;font-size:12.5px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.8);padding-bottom:6px}
.pathway-scope{max-width:500px;text-align:right;font-size:8.8px;line-height:1.65;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.audiences{padding:clamp(108px,10vw,160px) 0;background:#fff}
.audience-list{margin-top:62px;border-top:1px solid rgba(23,36,33,.17)}
.audience{
  display:grid;grid-template-columns:48px .82fr 1.18fr;gap:25px;align-items:center;
  min-height:106px;border-bottom:1px solid var(--line)
}
.audience b{font-size:8px;letter-spacing:.18em;color:var(--gold)}
.audience strong{font-family:"Source Serif 4",Georgia,serif;font-size:clamp(21px,2vw,29px);font-weight:500;line-height:1.12}
.audience p{margin:0;font-size:14.5px;line-height:1.56;color:var(--muted)}
.final-cta{background:var(--canvas);padding:clamp(108px,10.5vw,166px) 0}
.final-cta h2 .serif{display:block}
.final-cta p{max-width:680px;margin:32px 0 37px;font-size:17px;line-height:1.66;color:var(--muted)}

/* Contact Hub */
.contact-page{padding-top:78px;background:#fff;min-height:100vh}
.contact-hero{
  max-width:1180px;margin:0 auto;padding:clamp(44px,6vw,80px) clamp(24px,5vw,48px) clamp(60px,8vw,90px);
}
.contact-card{
  background:#fff;border:1px solid rgba(23,36,33,.09);
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  min-height:calc(100vh - 180px);
}
.contact-panel-main{
  padding:clamp(34px,5vw,54px);
  display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)
}
.contact-panel-side{
  position:relative;background:var(--ink);color:#fff;padding:clamp(30px,4.5vw,44px);
  display:flex;flex-direction:column;justify-content:space-between;overflow:hidden
}
.contact-panel-side:before{
  content:"";position:absolute;inset:0;opacity:.16;pointer-events:none;
  background:
    linear-gradient(90deg,transparent 0 24.94%,rgba(255,255,255,.1) 25%,transparent 25.06%,
      transparent 49.94%,rgba(255,255,255,.1) 50%,transparent 50.06%,
      transparent 74.94%,rgba(255,255,255,.1) 75%,transparent 75.06%),
    linear-gradient(180deg,transparent 0 32.94%,rgba(255,255,255,.07) 33%,transparent 33.06%,
      transparent 65.94%,rgba(255,255,255,.07) 66%,transparent 66.06%)
}
.contact-panel-side > *{position:relative;z-index:2}
.contact-panel-main .kicker{margin-bottom:24px}
.contact-title{
  margin:0;font-size:clamp(42px,5vw,74px);line-height:.95;letter-spacing:-.05em;font-weight:650
}
.contact-title .serif{color:var(--green)}
.contact-intro{
  max-width:670px;margin:26px 0 0;font-size:clamp(15px,1.25vw,18px);line-height:1.65;color:var(--muted)
}
.contact-actions{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:36px
}
.contact-action{
  display:flex;align-items:center;justify-content:space-between;gap:12px;
  border:1px solid rgba(23,36,33,.12);padding:16px 16px;background:#fff;transition:.22s ease
}
.contact-action:hover{background:var(--canvas);border-color:rgba(23,36,33,.28);transform:translateY(-2px)}
.contact-action strong{font-size:13px;line-height:1.25}
.contact-action span{font-size:11.5px;color:rgba(23,36,33,.56)}
.contact-meta{
  margin-top:34px;border-top:1px solid rgba(23,36,33,.14)
}
.contact-row{
  display:grid;grid-template-columns:150px 1fr;gap:22px;min-height:62px;align-items:center;
  border-bottom:1px solid rgba(23,36,33,.1)
}
.contact-row b{
  font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold)
}
.contact-row a,.contact-row span{
  font-size:14px;line-height:1.5;color:var(--ink)
}
.side-top small{
  display:block;font-size:8px;letter-spacing:.19em;text-transform:uppercase;color:var(--mint);font-weight:650;margin-bottom:18px
}
.side-top h2{
  margin:0;max-width:430px;font-family:"Source Serif 4",Georgia,serif;
  font-size:clamp(34px,4.3vw,56px);line-height:1;letter-spacing:-.04em;font-weight:500
}
.side-top p{
  max-width:420px;margin:20px 0 0;font-size:14px;line-height:1.6;color:rgba(255,255,255,.66)
}
.side-quick{
  margin-top:28px;border-top:1px solid rgba(255,255,255,.14)
}
.side-quick-item{
  display:grid;grid-template-columns:22px 1fr;gap:12px;align-items:center;
  min-height:52px;border-bottom:1px solid rgba(255,255,255,.1)
}
.side-quick-item b{font-size:8px;letter-spacing:.16em;color:var(--gold)}
.side-quick-item span{font-size:11px;color:rgba(255,255,255,.54)}
.side-footer{
  display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:40px
}
.side-footer .note{
  font-size:8px;line-height:1.7;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.42);max-width:230px
}
.qr-thumb{
  width:92px;height:92px;background:#fff;padding:8px;border:1px solid rgba(255,255,255,.3)
}
.full-width{width:100%}
.contact-footer{
  background:var(--canvas);padding:22px 0 40px
}
.contact-footer .footer-inline{
  max-width:1180px;margin:0 auto;padding:0 clamp(24px,5vw,48px);
  display:flex;justify-content:space-between;gap:24px;align-items:center;color:rgba(23,36,33,.6);
  font-size:11px
}
.modal{
  position:fixed;inset:0;z-index:1200;background:rgba(23,36,33,.82);
  opacity:0;visibility:hidden;display:flex;align-items:center;justify-content:center;
  transition:opacity .22s,visibility .22s;padding:24px
}
.modal.open{opacity:1;visibility:visible}
.modal-card{
  width:min(94vw,760px);background:var(--ink);color:#fff;border:1px solid rgba(255,255,255,.18);
  padding:clamp(24px,5vw,40px);position:relative
}
.modal-close{
  position:absolute;right:18px;top:16px;border:0;background:transparent;color:#fff;
  font-size:22px;line-height:1;cursor:pointer
}
.modal-grid{
  display:grid;grid-template-columns:1fr 290px;gap:32px;align-items:center
}
.modal small{display:block;font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--mint);font-weight:650;margin-bottom:16px}
.modal h3{
  margin:0;font-family:"Source Serif 4",Georgia,serif;font-size:clamp(34px,4vw,52px);line-height:1;letter-spacing:-.038em;font-weight:500
}
.modal p{margin:18px 0 0;max-width:360px;font-size:14px;line-height:1.6;color:rgba(255,255,255,.66)}
.modal-qr{
  background:#fff;padding:16px;border:1px solid rgba(255,255,255,.25)
}
.modal-qr img{width:100%;height:auto}

/* Footer */
.footer{background:var(--ink);color:#fff;padding:46px 0}
.footer-grid{display:flex;justify-content:space-between;align-items:flex-end;gap:30px}
.footer-wordmark{font-family:"Source Serif 4",Georgia,serif;font-size:27px}
.footer-wordmark small{display:block;margin-top:7px;font-family:"Source Sans 3";font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:rgba(255,255,255,.42)}
.footer-meta{display:flex;gap:23px;flex-wrap:wrap;font-size:9.5px;color:rgba(255,255,255,.48)}

.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.reveal.in{opacity:1;transform:none}

@media(max-width:1080px){
  .nav a:not(.nav-cta),.lang{display:none}
  .menu-btn{display:block}
  .nav-cta{display:none}
  .hero-inner{grid-template-columns:1fr}
  .hero-copy{border-right:0;padding:90px 24px 66px}
  .hero h1{font-size:clamp(54px,10.4vw,86px)}
  .decision-field{min-height:610px;padding:50px 24px}
  .credential-inner{padding:0 24px}
  .credential-shell{grid-template-columns:1fr}
  .credential-label{min-height:0;padding:24px 22px 22px;border-right:0;border-bottom:1px solid var(--line)}
  .credential-items{grid-template-columns:repeat(3,1fr)}
  .two-col{grid-template-columns:1fr;gap:34px}
  .perspective,.audiences,.final-cta{padding-left:24px;padding-right:24px}
  .domain-system{grid-template-columns:1fr}
  .domain-list{border-right:0}
  .mantra-grid{grid-template-columns:1fr}
  .mantra-item{border-right:0;border-bottom:1px solid rgba(23,36,33,.12)}
  .pathways-intro{padding-left:24px;padding-right:24px}
  .pathway{grid-template-columns:1fr}
  .pathway-side{min-height:168px;padding:30px 24px;border-right:0;border-bottom:1px solid rgba(255,255,255,.14);flex-direction:row;align-items:flex-end}
  .pathway-main{padding:60px 24px 53px;min-height:575px}
  .footer{padding-left:24px;padding-right:24px}
  .contact-card{grid-template-columns:1fr}
  .contact-panel-main{border-right:0;border-bottom:1px solid var(--line)}
}
@media(max-width:720px){
  .header{height:70px}
  .header.scrolled{height:64px}
  .header.scrolled .brand img{width:128px}
  .header-inner{padding:0 20px}
  .brand img{width:142px}
  .hero,.contact-page{padding-top:70px}
  .hero-copy{padding:72px 22px 56px}
  .hero-copy .kicker{margin-bottom:20px}
  .hero h1{font-size:clamp(46px,13.8vw,63px);line-height:.93}
  .hero-deck{grid-template-columns:1fr;gap:26px;margin-top:32px;padding-top:22px}
  .hero-deck p{font-size:15px}
  .hero-actions .text-link{display:none}
  .decision-field{min-height:575px}
  .field-core{margin:55px 0}
  .field-core h2{font-size:44px}
  .field-step{grid-template-columns:24px 108px 1fr}
  .credential-items{grid-template-columns:1fr 1fr}
  .credential-item{min-height:104px;border-bottom:1px solid var(--line)}
  .credential-item:nth-child(even){border-right:0}
  .credential-item:last-child{grid-column:1/-1}
  .perspective{padding-top:90px;padding-bottom:90px}
  .perspective h2,.audiences h2,.final-cta h2,.pathways-intro h2{font-size:47px}
  .perspective-copy{font-size:15px}
  .domain-system{margin-top:56px}
  .domain-btn{grid-template-columns:32px 1fr auto;min-height:68px;padding-right:12px}
  .domain-panel{min-height:360px;padding:41px 22px}
  .domain-panel h3{font-size:40px}
  .domain-panel p{font-size:14.5px}
  .mantra-item{padding:48px 24px}
  .mantra-item h3{font-size:31px}
  .pathways-intro{padding-top:78px}
  .pathway-main{min-height:610px}
  .pathway h3{font-size:48px}
  .pathway p{font-size:15px}
  .pathway-foot{flex-direction:column;align-items:flex-start}
  .pathway-scope{text-align:left}
  .audiences{padding-top:88px;padding-bottom:88px}
  .audience{grid-template-columns:34px 1fr;gap:14px;padding:19px 0;min-height:0}
  .audience p{grid-column:2;font-size:13.5px;padding-bottom:5px}
  .final-cta{padding-top:88px;padding-bottom:88px}
  .final-cta p{font-size:15px}
  .footer-grid{flex-direction:column;align-items:flex-start}
  .contact-hero{padding:24px 16px 48px}
  .contact-card{min-height:auto}
  .contact-panel-main,.contact-panel-side{padding:24px 20px}
  .contact-title{font-size:44px}
  .contact-actions{grid-template-columns:1fr}
  .contact-row{grid-template-columns:1fr;gap:8px;min-height:0;padding:14px 0}
  .contact-footer .footer-inline{padding:0 16px;flex-direction:column;align-items:flex-start}
  .modal-grid{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{transition:none!important;animation:none!important}
  .reveal{opacity:1;transform:none}
}
