
:root{
  --ink:#0d0f10;
  --ink-2:#171a1c;
  --paper:#f2efe7;
  --paper-2:#e8e3d8;
  --gold:#b99b54;
  --gold-deep:#785f2b;
  --muted:#8b8e8f;
  --line:rgba(13,15,16,.14);
  --line-dark:rgba(255,255,255,.13);
  --max:1280px;
  --measure:1050px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--ink)}
body{
  margin:0;
  color:var(--ink);
  background:var(--paper);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.skip{
  position:fixed;left:16px;top:-60px;z-index:999;
  background:var(--paper);padding:10px 14px;border-radius:3px;
}
.skip:focus{top:16px}
.site-header{
  position:absolute;z-index:20;top:0;left:0;right:0;
  max-width:var(--max);margin:0 auto;padding:34px 40px;
  display:flex;align-items:center;justify-content:space-between;
  color:#fff;
}
.brand{
  display:flex;align-items:center;gap:13px;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:18px;font-weight:700;letter-spacing:.12em;
}
.brand i,.trimaverse-link i{
  width:7px;height:7px;border-radius:50%;background:var(--gold);display:inline-block;flex:none;
}
.site-header nav{display:flex;gap:24px;font-size:12px;letter-spacing:.12em;text-transform:uppercase}
.site-header nav a{opacity:.82}
.site-header nav a:hover,.site-header nav a:focus{opacity:1}

.hero{
  min-height:100svh;position:relative;display:flex;align-items:flex-end;
  background:var(--ink);color:#fff;overflow:hidden;
}
.hero-media,.hero-media img,.hero-shade{position:absolute;inset:0;width:100%;height:100%}
.hero-media img{object-fit:cover;object-position:center 48%}
.hero-shade{
  background:
    linear-gradient(90deg,rgba(6,7,8,.67) 0%,rgba(6,7,8,.36) 40%,rgba(6,7,8,.10) 72%,rgba(6,7,8,.17) 100%),
    linear-gradient(0deg,rgba(6,7,8,.50) 0%,transparent 48%);
}
.hero-content{
  position:relative;z-index:2;width:min(var(--max),100%);
  margin:0 auto;padding:0 40px 9vh;
}
.eyebrow,.kicker{
  margin:0 0 28px;font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
}
.eyebrow{color:#f4f0e6}
.hero h1{
  margin:0;max-width:900px;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(55px,7.5vw,126px);line-height:.92;font-weight:500;letter-spacing:-.045em;
}
.hero-de{
  margin:34px 0 0;font-size:clamp(20px,2vw,34px);line-height:1.2;font-weight:450;
}
.hero-question{
  margin-top:8vh;padding-top:24px;border-top:1px solid rgba(255,255,255,.34);
  width:min(760px,100%);display:flex;gap:30px;justify-content:space-between;align-items:baseline;
  font-size:16px;
}
.hero-question em{font-style:normal;color:#d0d1d1}
.scroll-mark{
  position:absolute;right:42px;bottom:10vh;z-index:3;width:1px;height:72px;background:rgba(255,255,255,.25)
}
.scroll-mark span{display:block;width:1px;height:24px;background:var(--gold)}

.section-light{background:var(--paper);color:var(--ink)}
.section-dark{background:var(--ink);color:#f3f0e9}
.section-gold{background:var(--gold);color:var(--ink)}
.wrap{width:min(var(--max),100%);margin:0 auto;padding:130px 40px}
.measure{width:min(var(--measure),100%);margin:0 auto;padding:150px 40px}
.measure.narrow{max-width:900px}
.kicker{color:#5f6262}.kicker.gold{color:var(--gold)}
.statement h2,.section-head h2,.profile h2,.network h2,.contact h2,.btm h2{
  margin:0;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-weight:500;letter-spacing:-.035em;
}
.statement h2{font-size:clamp(40px,5vw,76px);line-height:1.04}
.statement-grid{
  display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:80px;padding-top:28px;border-top:1px solid var(--line);
}
.statement-grid p{margin:0;font-size:19px;line-height:1.55}
.signature-line{
  margin:90px 0 0;font-size:clamp(24px,2.8vw,42px);line-height:1.25;
}
.signature-line span{display:block;margin-top:12px;color:#656868;font-size:.58em;letter-spacing:.03em}

.section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:end;margin-bottom:84px}
.section-head .kicker{grid-column:1/-1;margin-bottom:-18px}
.section-head h2{font-size:clamp(48px,6vw,88px);line-height:.98}
.section-head>p:last-child{font-size:19px;line-height:1.5;color:#b9bbbb;margin:0}
.scope-grid{
  display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)
}
.scope-grid article{padding:34px 26px 42px 0;min-height:320px;border-right:1px solid var(--line-dark)}
.scope-grid article+article{padding-left:26px}
.scope-grid article:last-child{border-right:0}
.scope-grid article>span{font-size:11px;color:var(--gold);letter-spacing:.14em}
.scope-grid h3{font-size:28px;line-height:1.1;font-weight:500;margin:52px 0 28px}
.scope-grid p{font-size:15px;line-height:1.65;color:#b7b9b9;margin:0}
.scope-end{margin:58px 0 0;text-align:right;font-size:20px}
.scope-end em{display:block;color:#a5a7a7;font-size:14px;margin-top:8px;font-style:normal}

.btm-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}
.btm h2{font-size:clamp(50px,6vw,90px);line-height:1}
.btm-copy{border-left:1px solid rgba(13,15,16,.28);padding-left:44px}
.btm-copy p{font-size:18px;line-height:1.55;margin:0 0 22px}
.btm-copy .large{font-size:clamp(27px,3vw,45px);line-height:1.12}
.en-note{font-size:13px!important;letter-spacing:.08em;text-transform:uppercase;opacity:.7;margin-top:40px!important}

.profile-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:90px;align-items:center}
.portrait-frame{background:var(--ink);overflow:hidden;aspect-ratio:1/1}
.portrait-frame img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.04)}
.profile h2{font-size:clamp(45px,5vw,72px);line-height:1.03}
.profile-copy>p:not(.kicker):not(.role):not(.profile-quote){font-size:18px;line-height:1.65;max-width:690px}
.role{color:var(--gold-deep);font-weight:700;letter-spacing:.06em;margin:24px 0 46px}
.profile-quote{
  margin:56px 0 0;padding:26px 0 0;border-top:1px solid var(--line);
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:27px;line-height:1.35
}

.thoughts{margin:70px 0 90px}
.thoughts p{
  margin:0;padding:26px 0;border-bottom:1px solid var(--line-dark);
  font-size:clamp(25px,3.2vw,44px);line-height:1.15
}
.perspective blockquote{
  margin:0;color:var(--gold);
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(38px,5.3vw,76px);line-height:1.04
}
.perspective blockquote span{
  display:block;margin-top:30px;color:#a8aaaa;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:13px;letter-spacing:.12em;text-transform:uppercase
}

.network-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.network h2,.contact h2{font-size:clamp(45px,5vw,72px);line-height:1.02}
.network-grid>div:last-child p{font-size:20px;line-height:1.55;margin:46px 0 0}
.dark-note{color:#6a6d6d}
.contact-intro{font-size:16px;color:#a9abab;line-height:1.5;margin-top:30px}
.contact address{font-style:normal;display:flex;flex-direction:column;gap:15px;padding-top:42px}
.contact address a{font-size:clamp(28px,3.6vw,53px);line-height:1.12}
.contact address a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
.contact address span{color:#a9abab;margin-top:12px}

.footer{
  width:min(var(--max),100%);margin:0 auto;padding:35px 40px 44px;
  border-top:1px solid var(--line-dark);display:flex;align-items:center;justify-content:space-between;
  color:#949797;font-size:12px
}
.footer-left{display:flex;gap:22px;flex-wrap:wrap}
.footer a:hover{color:#fff}
.trimaverse-link{display:flex;align-items:center;gap:12px;letter-spacing:.04em}
.trimaverse-link i{width:6px;height:6px}

.legal-page{min-height:100vh;background:var(--paper);color:var(--ink)}
.legal-header{padding:30px 40px;border-bottom:1px solid var(--line)}
.legal-header .brand{color:var(--ink)}
.legal-main{width:min(850px,100%);margin:0 auto;padding:110px 40px 140px}
.legal-main h1{
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-weight:500;font-size:clamp(50px,7vw,90px);letter-spacing:-.04em;margin:0 0 80px
}
.legal-main h2{font-size:18px;margin:44px 0 12px}
.legal-main p,.legal-main li{font-size:16px;line-height:1.65;color:#36393a}
.legal-main a{text-decoration:underline;text-underline-offset:3px}
.back{display:inline-block;margin-top:60px;font-size:13px;text-transform:uppercase;letter-spacing:.1em}

@media (max-width:900px){
  .site-header{padding:25px 22px}
  .site-header nav{display:none}
  .hero-content{padding:0 22px 8vh}
  .hero h1{font-size:clamp(52px,15vw,92px)}
  .hero-de{font-size:23px}
  .hero-question{display:block}
  .hero-question em{display:block;margin-top:9px}
  .scroll-mark{display:none}
  .wrap,.measure{padding:90px 22px}
  .statement-grid,.section-head,.btm-grid,.profile-grid,.network-grid,.contact-grid{grid-template-columns:1fr;gap:42px}
  .statement-grid{margin-top:54px}
  .section-head{margin-bottom:55px}
  .section-head .kicker{margin-bottom:0}
  .scope-grid{grid-template-columns:1fr 1fr}
  .scope-grid article:nth-child(2){border-right:0}
  .scope-grid article:nth-child(-n+2){border-bottom:1px solid var(--line-dark)}
  .scope-grid article:nth-child(3){padding-left:0}
  .scope-end{text-align:left}
  .btm-copy{border-left:0;border-top:1px solid rgba(13,15,16,.28);padding:30px 0 0}
  .profile-grid{gap:55px}
  .portrait-frame{max-width:620px}
  .contact address{padding-top:0}
  .footer{padding:30px 22px;display:block}
  .trimaverse-link{margin-top:24px}
}
@media (max-width:560px){
  .brand{font-size:15px}
  .hero h1{font-size:50px}
  .scope-grid{grid-template-columns:1fr}
  .scope-grid article,.scope-grid article+article{
    border-right:0;border-bottom:1px solid var(--line-dark);padding:30px 0;min-height:0
  }
  .scope-grid article:last-child{border-bottom:0}
  .scope-grid h3{margin:25px 0 16px}
  .contact address a{font-size:27px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}


/* ---------- V1.1 ---------- */
.network-origin{
  margin-top:100px;padding-top:34px;border-top:1px solid var(--line);
  display:grid;grid-template-columns:.34fr 1fr;gap:70px;
}
.network-origin h3{
  margin:0 0 26px;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(34px,4vw,58px);line-height:1.06;font-weight:500;letter-spacing:-.03em;
}
.network-origin>div>p:not(.en-note){font-size:18px;line-height:1.6;max-width:720px}

.btm-principle{padding-top:20px;border-top:1px solid rgba(13,15,16,.25)}
.btm-principle h3{
  margin:0;max-width:1050px;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(38px,5vw,72px);line-height:1.04;font-weight:500;letter-spacing:-.035em;
}
.btm-roles{
  display:grid;grid-template-columns:repeat(3,1fr);gap:38px;
  margin-top:66px;padding-top:30px;border-top:1px solid rgba(13,15,16,.28);
}
.btm-roles p{margin:0;font-size:16px;line-height:1.58}
.btm-roles strong{display:block;margin-bottom:8px}
.btm-conclusion{
  margin:70px 0 0;max-width:1000px;
  font-size:clamp(24px,3vw,42px);line-height:1.18;font-weight:520;
}

.perspective h2{
  margin:0;max-width:980px;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(42px,5.4vw,78px);line-height:1.03;font-weight:500;letter-spacing:-.038em;
}
.perspective-intro{font-size:19px;line-height:1.6;max-width:760px;margin:42px 0 70px;color:#4e5151}
.perspective-questions{
  display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.perspective-questions p{
  margin:0;padding:30px 28px 34px 0;font-size:17px;line-height:1.52;border-right:1px solid var(--line);
}
.perspective-questions p+p{padding-left:28px}
.perspective-questions p:last-child{border-right:0}
.perspective blockquote{
  margin:90px 0 0;color:var(--gold-deep);
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(44px,6.2vw,88px);line-height:1.02;letter-spacing:-.035em;
}
.perspective blockquote span{
  display:block;margin-top:24px;color:#616464;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif;
  font-size:13px;letter-spacing:.12em;text-transform:uppercase;
}

.network{background:var(--ink-2)}
.network .network-grid{margin-top:0}
.network .network-grid>div:last-child p{
  margin:0 0 26px;font-size:19px;line-height:1.6;color:#c0c2c2;
}
.network .network-lead{
  margin:32px 0 0!important;font-size:25px!important;color:var(--gold)!important;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
}
.network-triad{
  margin-top:90px;padding-top:30px;border-top:1px solid var(--line-dark);
  display:grid;grid-template-columns:repeat(3,1fr);gap:30px;
}
.network-triad span{
  font-size:clamp(20px,2.2vw,31px);line-height:1.2;
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;color:#f0ede6;
}
.contact-human{
  margin:62px 0 0;padding-top:26px;border-top:1px solid var(--line-dark);
  font-family:"Iowan Old Style","Baskerville","Times New Roman",serif;
  font-size:clamp(25px,3vw,42px);line-height:1.18;color:#d8d6cf;
}
.contact-human strong{color:var(--gold);font-weight:500}

@media (max-width:900px){
  .network-origin{grid-template-columns:1fr;gap:20px;margin-top:70px}
  .btm-roles,.perspective-questions,.network-triad{grid-template-columns:1fr}
  .btm-roles{gap:0}
  .btm-roles p{padding:22px 0;border-bottom:1px solid rgba(13,15,16,.22)}
  .perspective-questions p,.perspective-questions p+p{
    padding:24px 0;border-right:0;border-bottom:1px solid var(--line)
  }
  .perspective-questions p:last-child{border-bottom:0}
  .network-triad{gap:0}
  .network-triad span{padding:20px 0;border-bottom:1px solid var(--line-dark)}
  .network-triad span:last-child{border-bottom:0}
}


/* ---------- V1.2 Mobile Pareto ---------- */
.mobile-only{display:none}

@media (max-width:700px){
  .mobile-only{display:block}
  .desktop-detail{display:none!important}

  /* Less vertical accumulation on phones */
  .wrap,.measure{padding:62px 20px}
  .statement .measure{padding-top:72px;padding-bottom:72px}
  .scope .wrap{padding-top:72px;padding-bottom:72px}
  .btm .wrap{padding-top:62px;padding-bottom:62px}
  .profile .wrap{padding-top:68px;padding-bottom:68px}
  .perspective .measure{padding-top:64px;padding-bottom:66px}
  .network .wrap{padding-top:68px;padding-bottom:68px}
  .contact .wrap{padding-top:68px;padding-bottom:58px}

  .eyebrow,.kicker{margin-bottom:18px;font-size:10px;letter-spacing:.17em}

  /* Hero: keep impact, reduce text stack */
  .hero-content{padding:0 20px 7vh}
  .hero h1{font-size:46px;line-height:.96}
  .hero-de{font-size:20px;margin-top:24px}
  .hero-question{margin-top:5vh;padding-top:18px;font-size:14px}
  .hero-question em{margin-top:7px}

  /* Positioning */
  .statement h2{font-size:38px;line-height:1.06}
  .statement-grid{margin-top:42px;padding-top:20px;gap:18px}
  .statement-grid p{font-size:16px;line-height:1.5}
  .signature-line{margin-top:46px;font-size:24px}
  .network-origin{margin-top:48px;padding-top:24px;gap:12px}
  .network-origin h3{font-size:30px}
  .mobile-summary{font-size:16px;line-height:1.5;margin:18px 0 0}
  .network-origin .en-note{margin-top:22px!important}

  /* Four fields stay complete, but compact */
  .section-head{margin-bottom:36px;gap:18px}
  .section-head h2{font-size:42px}
  .section-head>p:last-child{font-size:16px}
  .scope-grid article,.scope-grid article+article{
    padding:22px 0!important;
  }
  .scope-grid h3{font-size:24px;margin:18px 0 12px}
  .scope-grid p{font-size:14px;line-height:1.5}
  .scope-end{margin-top:34px;font-size:17px}

  /* Energy system: keep conclusion, remove asset-by-asset list */
  .btm-grid{gap:28px}
  .btm h2{font-size:46px}
  .btm-copy{padding-top:24px}
  .btm-copy .large{font-size:28px}
  .btm-copy p{font-size:16px}
  .btm-principle{padding-top:42px!important}
  .btm-principle h3{font-size:34px}
  .btm-mobile-summary{margin-top:34px}
  .btm-conclusion{margin-top:32px;font-size:24px}
  .btm-principle .en-note{margin-top:24px!important}

  /* Profile = portrait + one core paragraph */
  .profile-grid{gap:34px}
  .portrait-frame{max-width:520px}
  .profile h2{font-size:38px}
  .role{margin:18px 0 28px;font-size:13px}
  .profile-copy>p:not(.kicker):not(.role):not(.profile-quote){
    font-size:16px;line-height:1.55;
  }

  /* Perspective becomes a short signature, not another chapter */
  .perspective h2{font-size:36px}
  .perspective-mobile{margin-top:24px;color:#4e5151}
  .perspective blockquote{margin-top:44px;font-size:43px}
  .perspective blockquote span{margin-top:16px;font-size:11px}

  /* Network remains the last major content block */
  .network .network-grid{gap:24px}
  .network h2{font-size:38px}
  .network .network-lead{margin-top:20px!important;font-size:21px!important}
  .network-mobile{color:#d0d1cd;margin-top:22px}
  .network .en-note{margin-top:24px!important}
  .network-triad{margin-top:46px;padding-top:16px}
  .network-triad span{
    padding:15px 0;font-size:22px;
  }

  /* Contact: finish quickly */
  .contact h2{font-size:38px}
  .contact-intro{margin-top:22px}
  .contact-human{margin-top:36px;padding-top:20px;font-size:27px}
  .contact address{gap:11px}
  .contact address a{font-size:25px}
  .footer{padding:25px 20px 32px}
  .footer-left{gap:14px}
  .trimaverse-link{margin-top:20px}
}


/* ---------- V1.3 FINAL POLISH ---------- */
.mobile-contact{display:none}

.btm-method{
  margin-top:56px;padding:26px 0;border-top:1px solid rgba(13,15,16,.28);
  display:grid;grid-template-columns:.75fr 1.25fr;gap:26px 50px;align-items:start;
}
.btm-method strong{font-size:17px;line-height:1.45}
.btm-method span{font-size:17px;line-height:1.55}
.btm-method em{
  grid-column:2;font-style:normal;font-size:12px;letter-spacing:.1em;text-transform:uppercase;opacity:.68;
}

.selected-responsibility{
  margin-top:58px;padding-top:28px;border-top:1px solid var(--line);
}
.responsibility-list{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
}
.responsibility-list span{
  padding:19px 18px 19px 0;font-size:15px;line-height:1.4;border-bottom:1px solid var(--line);
}
.responsibility-list span:nth-child(even){padding-left:18px;border-left:1px solid var(--line)}
.responsibility-list span:nth-last-child(-n+2){border-bottom:0}
.responsibility-note{
  margin:24px 0 0!important;font-size:15px!important;line-height:1.6!important;color:#505353;
}

.perspective-final .measure{padding-top:120px;padding-bottom:120px}
.perspective-final blockquote{margin-top:0}
.perspective-final-line{
  margin:38px 0 0;padding-top:24px;border-top:1px solid var(--line);
  max-width:680px;font-size:18px;line-height:1.55;color:#4f5252;
}

.network-final{align-items:start}
.network-final>div:last-child p{margin-top:0!important}

@media (max-width:900px){
  .mobile-contact{
    display:block;color:#fff;font-size:11px;letter-spacing:.14em;text-transform:uppercase;
    border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:4px;
  }
  .site-header nav{display:none}
}

@media (max-width:700px){
  .btm-method{
    margin-top:34px;padding-top:22px;grid-template-columns:1fr;gap:11px;
  }
  .btm-method em{grid-column:1;margin-top:6px}
  .selected-responsibility{margin-top:34px;padding-top:22px}
  .responsibility-list{grid-template-columns:1fr}
  .responsibility-list span,
  .responsibility-list span:nth-child(even){
    padding:15px 0;border-left:0;border-bottom:1px solid var(--line)
  }
  .responsibility-list span:nth-last-child(2){border-bottom:1px solid var(--line)}
  .responsibility-list span:last-child{border-bottom:0}
  .responsibility-note{font-size:14px!important}
  .perspective-final .measure{padding-top:58px;padding-bottom:60px}
  .perspective-final blockquote{margin-top:0;font-size:41px}
  .perspective-final-line{margin-top:28px;padding-top:18px;font-size:15px}
  .network-final{gap:28px}
  .network-final>div:last-child p:first-child{font-size:16px;line-height:1.55;color:#d0d1cd}
}
