/* Modern visual system: clear Inter typography, architectural spacing and glass. */
:root{--paper:#f5f6f4;--ink:#162322;--gold:#e1be87;--muted:#566563;--line:#d7dedb}
body{font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}button,input,select,textarea{font-family:inherit}h1,h2,h3,.traits,.puente-copy h3,.opportunity-grid h3,.market-grid h3{font-family:Inter,Arial,sans-serif}h1,h2{font-weight:500;letter-spacing:-.055em}em{font-style:normal}p{line-height:1.8}h2{font-size:clamp(34px,4.1vw,62px);line-height:1.12;text-wrap:balance}h3{letter-spacing:-.035em;font-weight:600}.eyebrow{font-size:11px;letter-spacing:.17em;margin-bottom:28px;line-height:1.6}
header{inset:22px 3% auto;border:1px solid #ffffff30;border-radius:18px;padding:20px 24px;background:#101b1ccc;backdrop-filter:blur(22px);gap:24px;box-shadow:0 12px 40px #0002}.brand{font-size:16px;letter-spacing:.05em;white-space:nowrap}.brand span{font-size:9px;letter-spacing:.08em;color:#c3cecb}nav{gap:24px;align-items:center;font-size:12px}nav>a:not(.nav-cta){padding:8px 0;color:#d8e2df}nav>a:hover{color:white}#motion{font-size:11px;border-color:#7b8c88;min-height:40px;white-space:nowrap}
.hero{min-height:820px;background:#0d191a}.hero-content{padding-top:230px;max-width:880px}.hero-content>.eyebrow{display:inline-flex;align-items:center;gap:12px;border:1px solid #ffffff30;padding:9px 15px;border-radius:40px;background:#0c191a55;font-size:10px}.hero-content>.eyebrow:before{content:"";width:6px;height:6px;border-radius:50%;background:#e1be87;box-shadow:0 0 18px #e1be8799}h1{font-size:clamp(86px,10vw,154px);line-height:.94;margin:0 0 30px}h1 em{color:#f1d8b2}.role{font-size:17px;font-weight:500;letter-spacing:-.02em}.affiliation{font-size:13px;color:#c9d4d1}.hero-shade{background:linear-gradient(90deg,#0c181bf5 0%,#0c181be0 28%,#0c181b65 58%,#0c181b10 100%),linear-gradient(0deg,#0c181b,transparent 34%)}.hero-bottom{border-top:1px solid #ffffff25;padding-top:22px;color:#c3cfca;font-size:10px;letter-spacing:.13em}.hero-secondary{font-size:13px;color:#e4eae7}
section:not(.hero){padding:110px max(7%,calc((100vw - 1320px)/2));border-bottom:1px solid var(--line)}.copy p{font-size:15px;color:var(--muted)}.split{gap:7%;grid-template-columns:1.1fr 1fr}.intro{display:grid;grid-template-columns:260px 1fr;gap:24px 6%;align-items:start}.profile-portrait{float:none;grid-row:1/4;width:100%;margin:0}.profile-portrait img{border-radius:20px;aspect-ratio:4/5;object-fit:cover;box-shadow:0 20px 45px #16232212}.profile-portrait figcaption{font-size:11px;color:#566563}.intro>.eyebrow{margin:0}.intro>.split{clear:none;display:block}.intro h2{font-size:clamp(32px,3.4vw,49px);margin-bottom:28px}.intro .copy{max-width:760px}.intro .traits{grid-column:2;margin:0;padding-top:24px;gap:22px;flex-wrap:wrap;font-size:13px;color:#465954;border-color:var(--line)}.intro em,.purpose em,.opportunities em,.markets em{color:#677c70}
section.heritage{background:#101b1c;border-bottom-color:#33403d;border-top:1px solid #33403d;padding-block:100px}.heritage:before{background:radial-gradient(ellipse at 0 50%,#c1964b18,transparent 65%)}.heritage-art img,.heritage-frame{border-radius:24px}.heritage-frame{inset:18px -18px -18px 18px;border-color:#b9975e66}.heritage-caption{border:1px solid #ffffff22;border-radius:10px;backdrop-filter:blur(16px);background:#0c181b99;letter-spacing:.1em}.heritage-copy h2{font-size:clamp(38px,4.5vw,64px)}.heritage-copy p:not(.eyebrow){color:#bdc9c4;font-size:15px}.heritage-copy .text-link{font-size:12px}.heritage-next{font-size:12px;color:#bfcac6}
.responsibilities{gap:20px}.responsibilities article{padding:28px;border:1px solid var(--line);border-radius:18px;background:white}.responsibilities p{font-size:14px;color:#566563}.responsibilities span{color:#65796d}.puente{background:#152828;color:#f5f6f4;position:relative;overflow:hidden;border-bottom-color:#33403d!important}.puente-title h2{font-weight:500;letter-spacing:-.05em}.puente-title h2 span{font-family:inherit;letter-spacing:.15em;font-size:11px;color:#cedad3}.puente-copy h3{font-size:30px}.puente-copy p{font-size:15px;color:#c8d3ce}.tags span{border-radius:40px;border-color:#ffffff30;font-size:11px;background:#ffffff06}
.opportunities{background:#edf0ec}.opportunity-grid{gap:18px}.opportunity-grid article{background:#fff;border:1px solid #dbe2dd;border-radius:20px;padding:30px;box-shadow:0 8px 24px #18302b04}.opportunity-grid .eyebrow{color:#637a6b}.opportunity-grid h3{font-size:25px}.opportunity-grid p:not(.eyebrow){font-size:14px;color:#566563}.opportunity-grid a{font-size:12px;line-height:1.6;text-decoration:none;border-top:1px solid var(--line);padding-top:20px;color:#254d3e}.opportunity-note{color:#566563;line-height:1.7}.journey{background:#101b1c;color:#f5f6f4;border-color:#33403d!important}.journey-grid{gap:25px}.journey-grid article{border-color:#41524b}.journey-grid h3{font-size:21px}.journey-grid p{font-size:14px;color:#becbc5}
.market-grid article{background:#fff;border:1px solid var(--line);border-radius:20px;isolation:isolate;padding:35px}.market-grid article>span{font-family:inherit;font-weight:600;font-size:100px;letter-spacing:-.08em;color:#edf1ed;z-index:-1}.market-grid h3{font-size:30px}.market-grid p,.markets .market-intro{font-size:15px;color:#566563}
.connect{background:radial-gradient(ellipse at 50% 0%,#d5e2d9,transparent 65%),#e9eeea}.connect em{color:#687e6d}.connect>p:not(.eyebrow){max-width:620px;margin-inline:auto;font-size:15px}.brief-layout{gap:22px}#brief-form,.brief-result{background:#ffffffbf;border:1px solid #d0dbd3;border-radius:22px;padding:35px;box-shadow:0 16px 40px #172b2205}label{font-size:12px}input,select,textarea{border-color:#c8d3cc;background:#fff;border-radius:10px;line-height:1.5}input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:#537361}.connect .privacy-note{font-size:11px;color:#566563}.brief-result pre{font-size:14px}.faq details{border-color:#c4cfc6}.faq summary{padding-right:12px;line-height:1.6}.faq details p{color:#46594e}.text-link{font-size:12px}footer{background:#0e191a;color:#cbd5d0;font-size:12px;padding-block:45px}.credit{color:#a7b8ad;border-color:#33453b;line-height:1.8}
:is(.button,.nav-cta,.brief-tools button){--button-face:#e7c697;--button-edge:#92764e;border-radius:10px;box-shadow:3px 3px 0 var(--button-edge);font-size:12px;letter-spacing:0;font-weight:600}.nav-cta{margin-block:0;padding:10px 18px;min-height:42px}.brief-tools button{--button-face:#f4f7f3;--button-edge:#718775}.connect button{color:#162322;border-color:#92764e}.button{padding:16px 22px;gap:30px}.brief-tools{gap:15px}
@media(hover:hover) and (pointer:fine){:is(.button,.nav-cta,.brief-tools button):hover{box-shadow:5px 5px 0 var(--button-edge)}.opportunity-grid article{transition:transform .25s ease,box-shadow .25s ease}.opportunity-grid article:hover{transform:translateY(-5px);box-shadow:0 18px 35px #16372a0d}}
@media(min-width:1500px){.hero-content{padding-left:max(7%,calc((100vw - 1320px)/2))}}
@media(max-width:1050px){header{gap:16px;padding:18px}nav{gap:15px}.brand{font-size:14px}.brand span{font-size:8px}.intro{grid-template-columns:210px 1fr}.brief-layout{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr;gap:0}}
@media(max-width:850px){header{flex-wrap:wrap;inset:14px 4% auto;gap:14px;padding:18px;border-radius:16px}header #motion{margin-left:auto}nav{order:3;width:100%;justify-content:space-between;gap:10px;flex-wrap:wrap;font-size:11px}.hero-content{padding-top:240px}.intro{grid-template-columns:1fr}.profile-portrait{grid-row:auto;max-width:280px}.intro>.traits{grid-column:1}.intro>.eyebrow{margin-top:12px}.brief-layout{grid-template-columns:1fr}.split{grid-template-columns:1fr;gap:30px}}
@media(max-width:760px){section:not(.hero){padding:70px 7%}.hero{min-height:860px;max-height:none;height:100svh}.hero-content{padding:240px 7% 120px}.hero-content>.eyebrow{font-size:9px;letter-spacing:.1em}h1{font-size:clamp(78px,16vw,110px)}.role{max-width:290px;font-size:15px}.hero-shade{background:linear-gradient(90deg,#0c181be8,#0c181b70),linear-gradient(0deg,#0c181b,transparent 50%)}.hero-bottom{font-size:8px;gap:18px;letter-spacing:.08em}.hero-actions{gap:20px}.hero-secondary{font-size:12px}.responsibilities{grid-template-columns:1fr}.heritage-art{max-width:340px}.heritage-copy h2{font-size:40px}.heritage-art img,.heritage-frame{border-radius:20px}.puente{grid-template-columns:1fr}.puente-title h2{font-size:64px}.opportunity-grid{grid-template-columns:1fr}.journey-grid{grid-template-columns:1fr 1fr;gap:25px}.market-grid{grid-template-columns:1fr}#brief-form,.brief-result{padding:24px}.nav-cta{min-height:40px;padding:8px 12px}.brand span{font-size:8px}footer{gap:24px}}
@media(max-width:420px){nav{gap:6px;font-size:10px}.brand{font-size:13px}#motion{font-size:10px;padding:8px}.journey-grid{grid-template-columns:1fr}.hero-secondary{margin-top:8px}.hero-actions{align-items:flex-start;flex-direction:column}.button{max-width:100%;gap:20px}.hero-content{padding-top:235px}.hero-bottom{bottom:24px}.brief-tools{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){.opportunity-grid article{transition:none!important;transform:none!important}}body.motion-paused .opportunity-grid article{transition:none;transform:none}

/* Visible motion: orbit, moving ribbon, staged entrances and reading progress. */
body:before{content:"";position:fixed;inset:0 0 auto;height:3px;background:#e1be87;z-index:50;transform-origin:left;transform:scaleX(var(--scroll-progress,0));pointer-events:none}
.hero-orbit{position:absolute;right:-160px;top:26%;width:540px;aspect-ratio:1;z-index:0;pointer-events:none;opacity:.6}
.hero-orbit i{position:absolute;inset:0;border:1px solid #e1be8755;border-radius:50%;animation:orbit-turn 22s linear infinite}
.hero-orbit i:after{content:"";position:absolute;left:50%;top:-4px;width:8px;height:8px;border-radius:50%;background:#f0d5ac;box-shadow:0 0 22px #e1be87}
.hero-orbit i:nth-child(2){inset:45px;animation-duration:17s;animation-direction:reverse;border-style:dashed;border-color:#ffffff28}
.hero-orbit i:nth-child(3){inset:95px;animation-duration:29s;border-color:#e1be8733}
.hero-content>h1{animation:hero-enter 1.1s cubic-bezier(.16,1,.3,1) both}.hero-content>.eyebrow{animation:hero-enter .9s cubic-bezier(.16,1,.3,1) both}.hero-content>.role,.hero-content>.affiliation,.hero-actions{animation:hero-enter 1.2s .15s cubic-bezier(.16,1,.3,1) backwards}
.hero-actions .button{animation:button-glow 3s 1.5s ease-in-out infinite}.hero-bottom span:last-child:after{content:" ↓";display:inline-block;animation:scroll-nudge 1.8s ease-in-out infinite}
.motion-ribbon{overflow:hidden;background:#e1be87;color:#152828;border-block:1px solid #b89867;padding:20px 0}.ribbon-track{display:flex;width:max-content;animation:ribbon-travel 28s linear infinite}.ribbon-track span{flex:none;font-size:12px;font-weight:600;letter-spacing:.18em;white-space:nowrap;padding-right:28px}
@keyframes orbit-turn{to{transform:rotate(360deg)}}
@keyframes hero-enter{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}
@keyframes button-glow{0%,100%{box-shadow:3px 3px 0 var(--button-edge),0 0 0 0 #e1be8700}50%{box-shadow:3px 3px 0 var(--button-edge),0 0 28px 3px #e1be8740}}
@keyframes scroll-nudge{0%,100%{transform:translateY(-3px)}50%{transform:translateY(5px)}}
@keyframes ribbon-travel{to{transform:translateX(-50%)}}
body.motion-paused :is(.hero-orbit i,.hero-content>h1,.hero-content>.eyebrow,.hero-content>.role,.hero-content>.affiliation,.hero-actions,.hero-actions .button,.hero-bottom span:last-child:after,.ribbon-track),body.page-hidden :is(.hero-orbit i,.hero-actions .button,.hero-bottom span:last-child:after,.ribbon-track){animation-play-state:paused}
body.motion-paused :is(.hero-content>h1,.hero-content>.eyebrow,.hero-content>.role,.hero-content>.affiliation,.hero-actions){animation:none}
@media(max-width:760px){.hero-orbit{width:340px;right:-190px;top:34%;opacity:.45}.motion-ribbon{padding:17px 0}.ribbon-track span{font-size:10px}}
@media(prefers-reduced-motion:reduce){.hero-orbit i,.hero-content>h1,.hero-content>.eyebrow,.hero-content>.role,.hero-content>.affiliation,.hero-actions,.hero-actions .button,.hero-bottom span:last-child:after,.ribbon-track{animation:none!important}}
