@font-face{font-family:DM;src:url('assets/dm-sans-400.ttf');font-weight:400;font-display:swap}@font-face{font-family:DM;src:url('assets/dm-sans-500.ttf');font-weight:500;font-display:swap}@font-face{font-family:Manrope;src:url('assets/manrope-400.ttf');font-weight:400;font-display:swap}:root{--bg:#f6f6f2;--ink:#20231f;--muted:#7a8076;--line:#dcdfd6;--lime:#d4f36b;--dark:#171917}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--ink);font-family:DM,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}::selection{background:var(--lime);color:var(--dark)}.reading-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--lime);z-index:30}header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:35px;margin:0 5%;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:12px;font-weight:500;font-size:18px;letter-spacing:-.6px;white-space:nowrap}.wordmark-dot{color:#8b9c57}.monogram{font-size:35px;line-height:1;position:relative;font-family:Manrope;font-weight:400;letter-spacing:-5px;padding-right:12px}.monogram>span{position:absolute;right:0;top:-8px;font-size:21px;letter-spacing:-3px}nav{display:flex;gap:30px;font-size:11px;color:#6e756a}nav a:hover{color:var(--ink)}.nav-button{font-size:11px;background:var(--dark);color:white;border-radius:7px;padding:14px 20px}.nav-button span{margin-left:30px}.menu-toggle{display:none}.hero{padding:48px 5% 55px;display:grid;grid-template-columns:1.05fr 1fr;gap:6%;max-width:1700px;margin:auto}.hero-text{padding-top:16px}.eyebrow{font-size:8px;letter-spacing:1.4px;font-weight:500;line-height:1.8}.hero .eyebrow{display:flex;gap:9px;align-items:center;color:#757d70}.status-dot{width:6px;height:6px;background:#98ac64;display:inline-block;border-radius:50%;box-shadow:0 0 0 4px #98ac6415}h1,h2,h3{font-family:Manrope,Arial,sans-serif;font-weight:400}h1{font-size:clamp(56px,5.5vw,86px);letter-spacing:-.065em;line-height:1.07;margin:31px 0 23px}h1>span{color:#92998b}.hero-description{font-size:13px;line-height:1.85;color:#737b6d;max-width:355px}.hero-actions{display:flex;align-items:center;gap:24px;margin-top:29px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border-radius:7px;padding:18px 22px;font-size:11px;transition:transform .3s,background .3s}.button span{font-size:19px;transition:transform .3s}.button:hover{transform:translateY(-3px)}.button:hover span{transform:translate(2px,-2px)}.dark{background:var(--dark);color:white}.dark:hover{background:#394232}.lime{background:var(--lime);color:var(--ink)}.lime:hover{background:#e2ff94}.subtle-link{font-size:10px;white-space:nowrap}.subtle-link span{margin-left:12px}.hero-foot{display:flex;gap:12px;align-items:center;margin-top:42px}.mini-avatar{height:38px;width:38px;border-radius:50%;overflow:hidden;border:1px solid #d3dacd}.mini-avatar img{width:100%;height:100%;object-fit:cover}.hero-foot p{font-size:8px;line-height:1.8;color:#7b8374;margin:0}.hero-foot p strong{color:var(--ink);font-weight:500}.hero-foot-line{height:28px;width:1px;background:#d9ded2;margin:0 7px}.small{font-size:6px;letter-spacing:1px;line-height:1.8;color:#8f9787}.hero-visual{position:relative;overflow:hidden;border-radius:13px;background:#e6e8e1;min-height:660px;isolation:isolate}.visual-index{position:absolute;left:25px;top:25px;font-size:7px;letter-spacing:1.5px;z-index:4;color:#596351}.portrait-frame{position:absolute;inset:60px -65px 0 0;overflow:hidden;z-index:1;clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}.hero-portrait{width:100%;height:100%;object-fit:cover;object-position:43% 50%;filter:grayscale(1) contrast(1.02);mix-blend-mode:multiply;transform:scale(1.02);animation:portrait-in 1.5s ease both}.hero-visual:before{content:'';position:absolute;width:440px;height:440px;border:1px solid #abb69b60;border-radius:50%;left:-60px;top:70px}.hero-visual:after{content:'';position:absolute;left:0;right:0;bottom:0;height:70%;background:linear-gradient(0deg,#11170dda,transparent 80%);z-index:2}.visual-type{position:absolute;left:25px;top:100px;font-family:Manrope;font-size:clamp(60px,7vw,110px);line-height:.95;letter-spacing:-9px;z-index:0;color:#cad2be;writing-mode:vertical-rl}.visual-type span{color:#b9c4a6}.portrait-note{position:absolute;left:25px;right:25px;bottom:62px;padding:20px;background:#f8f9f01c;backdrop-filter:blur(15px);border:1px solid #ffffff25;border-radius:9px;color:#fff;display:flex;gap:17px;align-items:center;z-index:3}.note-arrow{display:grid;place-items:center;background:var(--lime);color:var(--ink);border-radius:50%;width:43px;height:43px;font-size:25px}.portrait-note>span:last-child{font-size:12px;line-height:1.8;font-weight:400}.portrait-note strong{font-weight:400}.visual-bottom{position:absolute;bottom:26px;left:25px;color:#d3ddc8;z-index:3;font-size:6px;letter-spacing:1px}.affiliations{margin:0 5%;padding:32px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:40px}.affiliations>.eyebrow{max-width:160px;color:#92988b;font-size:7px}.affiliations>div{display:flex;align-items:center;justify-content:space-between;width:72%;gap:45px}.affiliations>div>span{font-size:15px;letter-spacing:-.6px;line-height:1.1}.affiliations strong{font-weight:500}.affiliations .iprofile{font-size:24px;letter-spacing:-1px}.iprofile>span{font-size:10px;vertical-align:super}.section{padding:90px 8%}.section-label{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:7px;letter-spacing:1.2px;color:#9aa18f;margin-bottom:55px;line-height:1.6}.section-label>span:first-child{color:inherit}.section-label>span:last-child{text-align:right}.approach-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:13%}h2{font-size:clamp(38px,3.8vw,58px);line-height:1.15;letter-spacing:-.06em;margin:0}h2 span{color:#959d8b}.approach-grid>div>p{font-size:13px;line-height:1.9;color:#7e8676;margin:0 0 20px}.approach-grid .big-copy{font-size:21px;line-height:1.6;color:#41493b;letter-spacing:-.5px}.line-link{font-size:11px;display:inline-flex;justify-content:space-between;gap:50px;border-bottom:1px solid #b6beab;padding:8px 0 14px;margin-top:10px}.line-link span{font-size:18px}.principles{display:grid;grid-template-columns:repeat(3,1fr);margin-top:65px;gap:35px}.principles>div{border-top:1px solid var(--line);padding-top:24px}.principles>div>span{font-size:9px;color:#8f9984}.principles h3{font-size:22px;letter-spacing:-.8px;margin:20px 0 12px}.principles p{font-size:12px;color:#848c7b;line-height:1.8;max-width:250px}.expertise{background:var(--dark);color:#f2f5ed}.expertise .section-label{color:#a0ad90}.expertise-intro{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:45px}.expertise-intro p{font-size:12px;color:#8f9b82;line-height:1.8}.expertise h2 span{color:#9daa88}.expertise-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%}.service-tabs{display:flex;flex-direction:column;align-self:start}.service-tabs button{display:flex;gap:22px;align-items:center;text-align:left;background:none;color:#8e9a82;border:0;border-bottom:1px solid #3e4738;font-size:19px;padding:30px 0}.service-tabs button>span:first-child{font-size:9px}.service-tabs button>span:last-child{margin-left:auto;font-size:24px}.service-tabs button[aria-selected=true]{color:var(--lime)}.service-panel{position:relative;padding:34px;background:#232821;border:1px solid #3a4433;border-radius:10px;min-height:383px;transition:opacity .25s}.service-panel>.eyebrow{font-size:7px;color:#aab79a;display:block;margin-top:42px}.service-icon{position:absolute;right:30px;top:20px;font-size:45px;color:var(--lime)}.service-panel h3{font-size:34px;line-height:1.2;letter-spacing:-1.5px;margin:18px 0}.service-panel p{font-size:12px;color:#a0ac92;line-height:1.8;max-width:370px}.service-tags{display:flex;gap:7px;flex-wrap:wrap;margin:22px 0}.service-tags span{font-size:8px;border:1px solid #4a5641;border-radius:30px;padding:7px 10px;color:#a8b59a}.service-panel .line-link{color:var(--lime);border-color:#637348;font-size:10px}.manifesto{background:var(--lime);padding:55px 8% 40px;color:#2b3820;overflow:hidden}.manifesto-top{display:flex;justify-content:space-between}.manifesto-top .eyebrow{font-size:8px}.asterisk{font-size:48px;line-height:1;animation:rotate-mark 22s linear infinite}.manifesto>p{font-family:Manrope;font-size:clamp(35px,4.8vw,72px);line-height:1.19;letter-spacing:-.055em;margin:42px 0}.manifesto>p>span{color:#728f38}.manifesto-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #8ca94d60;padding-top:22px;font-size:8px;letter-spacing:1px}.manifesto-bottom>a{font-size:40px;line-height:1}.projects-head,.social-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:45px}.projects-head p,.social-head p{font-size:12px;line-height:1.8;color:#8b9381;max-width:260px}.project-list{border-top:1px solid var(--line)}.project-row{display:grid;grid-template-columns:40px 1.15fr 1fr 35px;gap:24px;align-items:center;padding:34px 0;border-bottom:1px solid var(--line);transition:padding .35s}.project-row:hover{padding-left:12px}.project-number{font-size:9px;color:#969f8b}.project-row .eyebrow{font-size:7px;color:#909b82}.project-row h3{font-size:25px;letter-spacing:-1px;margin:10px 0 0}.project-row p{font-size:11px;line-height:1.8;color:#8b957f;max-width:250px}.project-arrow{font-size:30px}.social-section{padding-top:25px;background:#ecefe6}.social-section .section-label{margin-top:40px}.social-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.social-photo{height:360px;position:relative;overflow:hidden;border-radius:10px;background:#d4d8ce}.social-photo img{width:100%;height:100%;object-fit:cover;object-position:center 38%;filter:saturate(.7);transition:transform .7s,filter .7s}.social-card:hover img{transform:scale(1.045);filter:saturate(1)}.play{position:absolute;right:17px;top:17px;width:36px;height:36px;border-radius:50%;background:#ffffffda;color:#20291a;display:grid;place-items:center;font-size:21px}.social-card-info{padding:22px 0}.social-card-info>span{font-size:7px;letter-spacing:1px;color:#8d987e}.social-card-info h3{font-size:20px;line-height:1.4;letter-spacing:-.7px;margin:12px 0 18px;max-width:260px}.social-card-info>span:last-child{font-size:9px;letter-spacing:0;color:#596b43}.faq{display:grid;grid-template-columns:1fr 1.35fr;gap:12%}.faq h2{margin-top:20px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px;padding:24px 0}summary::-webkit-details-marker{display:none}summary span{font-size:22px;color:#7e8c6b;transition:transform .3s}details[open] summary span{transform:rotate(45deg)}details p{font-size:12px;color:#87927a;line-height:1.85;margin:0 0 25px}.contact{background:var(--dark);color:#f3f5ef}.contact .section-label{color:#939f86}.contact-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:end}.contact h2{font-size:clamp(46px,5.2vw,80px)}.contact h2 span{color:var(--lime)}.contact-right p{font-size:14px;line-height:1.85;color:#a5b097;margin:0 0 25px}.contact-right .button{width:100%}.email-link{display:flex;justify-content:space-between;margin-top:25px;padding-bottom:15px;border-bottom:1px solid #46513e;font-size:12px;color:#b2bda6}.contact-location{display:block;font-size:7px;letter-spacing:1px;color:#77856a;margin-top:30px}footer{padding:45px 5% 25px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:40px}.footer-links{display:flex;gap:30px;font-size:10px;color:#859075}.footer-bottom{width:100%;display:flex;justify-content:space-between;gap:15px;border-top:1px solid var(--line);padding-top:22px;font-size:7px;color:#98a18d;letter-spacing:.6px}.footer-bottom button{border:0;background:none;color:#7d896e;font-size:8px;padding:0}dialog{border:0;border-radius:12px;padding:40px;background:var(--bg);color:var(--ink);width:530px;max-width:calc(100% - 30px)}dialog::backdrop{background:#10150ec9;backdrop-filter:blur(10px)}dialog h2{font-size:32px;margin:20px 0}dialog p{font-size:12px;line-height:1.85;color:#7b876e}.close-dialog{position:absolute;right:18px;top:15px;background:none;border:0;font-size:25px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .85s ease,transform .85s ease}.reveal.visible{opacity:1;transform:none}.hero-text>*{animation:text-in .9s ease both}.hero-text h1{animation-delay:.1s}.hero-description{animation-delay:.2s!important}.hero-actions{animation-delay:.3s!important}.hero-foot{animation-delay:.4s!important}:focus-visible{outline:2px solid #93ae57;outline-offset:6px}@keyframes portrait-in{from{opacity:0;transform:scale(1.1)}to{opacity:1;transform:scale(1.02)}}@keyframes text-in{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes rotate-mark{to{rotate:360deg}}@media(min-width:1600px){.hero{gap:7%;padding-top:65px}.hero-visual{min-height:760px}.hero-text{padding-top:35px}.hero-description{max-width:420px;font-size:15px}}@media(max-width:1050px){nav{gap:15px}.hero{gap:4%}.hero h1{font-size:62px}.hero-visual{min-height:630px}.hero-actions{gap:15px}.button{gap:20px;padding:16px;font-size:10px}.hero-foot .small{display:none}.approach-grid{gap:8%}.service-panel{padding:25px}.service-panel h3{font-size:29px}.social-photo{height:320px}.project-row{grid-template-columns:25px 1.2fr 1fr 25px}.project-row h3{font-size:22px}}@media(max-width:720px){header{height:80px;margin:0 6%;gap:15px}.wordmark{font-size:16px;gap:10px}.monogram{font-size:31px}.nav-button{margin-left:auto;padding:12px;font-size:9px}.nav-button span{margin-left:12px}.menu-toggle{display:block;border:0;background:none;font-size:21px;color:var(--ink);padding:3px}nav{display:none;position:absolute;top:79px;left:0;right:0;background:var(--bg);z-index:10;padding:25px 6%;border-bottom:1px solid var(--line);flex-direction:column;gap:25px}nav.open{display:flex}.hero{padding:30px 6% 40px;grid-template-columns:1fr;gap:35px}.hero-text{padding:0}.hero .eyebrow{font-size:7px}.hero h1{font-size:60px;letter-spacing:-.065em;margin:23px 0}.hero-description{font-size:12px;max-width:350px}.hero-actions{gap:18px;flex-wrap:wrap;margin-top:23px}.hero-foot{margin-top:27px}.hero-foot .small{display:block;font-size:5px}.hero-visual{min-height:480px}.portrait-frame{inset:35px -30px 0 0}.hero-portrait{object-position:45% 50%}.visual-type{font-size:80px;letter-spacing:-7px;top:80px}.visual-index{font-size:6px;left:20px;top:20px}.portrait-note{left:20px;right:20px;bottom:50px;padding:13px}.portrait-note>span:last-child{font-size:10px}.visual-bottom{left:20px;bottom:22px;font-size:5px}.note-arrow{width:35px;height:35px;font-size:21px}.affiliations{margin:0 6%;display:block;padding:25px 0}.affiliations>.eyebrow{max-width:100%;font-size:6px}.affiliations>div{margin-top:25px;width:100%;gap:20px}.affiliations>div>span{font-size:11px}.affiliations .iprofile{font-size:20px}.section{padding:55px 6%}.section-label{margin-bottom:33px;font-size:6px}.section-label>span:last-child{display:none}h2{font-size:37px}.approach-grid{grid-template-columns:1fr;gap:28px}.approach-grid .big-copy{font-size:20px}.approach-grid>div>p{font-size:12px}.principles{gap:18px;margin-top:35px}.principles h3{font-size:17px;margin-top:15px}.principles p{font-size:10px}.principles>div>span{font-size:8px}.expertise-intro{display:block;margin-bottom:30px}.expertise-intro p{margin-top:22px;font-size:12px}.expertise-grid{grid-template-columns:1fr;gap:28px}.service-tabs button{padding:21px 0;font-size:17px}.service-panel{min-height:360px}.service-panel h3{font-size:31px}.manifesto{padding:35px 6%}.manifesto-top>.eyebrow{font-size:6px;max-width:220px}.asterisk{font-size:36px}.manifesto>p{font-size:35px;margin:32px 0}.manifesto-bottom{font-size:6px}.projects-head,.social-head{display:block;margin-bottom:28px}.projects-head p,.social-head p{max-width:100%;font-size:12px;margin-top:22px}.project-row{grid-template-columns:20px 1fr 25px;gap:15px;padding:27px 0}.project-row h3{font-size:22px}.project-row p{grid-column:2;margin:0;max-width:100%;font-size:11px}.project-row .project-arrow{grid-column:3;grid-row:1}.project-row .eyebrow{font-size:6px}.social-section{padding-top:15px}.social-grid{grid-template-columns:1fr;gap:20px}.social-card{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center}.social-photo{height:275px}.social-card-info{padding:15px 0}.social-card-info h3{font-size:19px}.social-card-info>span{font-size:6px}.social-card-info>span:last-child{font-size:8px}.play{height:29px;width:29px;right:10px;top:10px;font-size:17px}.faq{grid-template-columns:1fr;gap:30px}.faq h2{margin-top:12px}.faq summary{font-size:12px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact h2{font-size:51px}.contact-right p{font-size:13px}.contact-right .button{padding:18px 22px;font-size:12px}.email-link{font-size:11px}.contact-location{font-size:6px}.footer-links{font-size:9px;gap:22px}footer{padding:35px 6% 25px;gap:25px}.footer-bottom{flex-wrap:wrap;row-gap:15px}.footer-bottom>span:nth-child(2){display:none}dialog{padding:35px 25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
.hero-portrait{transform:scale(1.16);transform-origin:43% 50%}@keyframes portrait-in{from{opacity:0;transform:scale(1.22)}to{opacity:1;transform:scale(1.16)}}
/* Refined navy identity */
:root{--bg:#f5f5f3;--ink:#172b47;--muted:#7c8795;--line:#d9dfe5;--lime:#dce6f0;--dark:#10243d}.wordmark-dot{color:#879bb2}.status-dot{background:#718ca8;box-shadow:0 0 0 4px #718ca815}.hero h1>span,h2 span{color:#8494a7}.hero-visual{background:#dce2e9}.hero .eyebrow,.hero-description,.hero-foot p,.approach-grid>div>p,.principles p,.projects-head p,.social-head p{color:#778698}.hero-portrait{object-fit:contain;filter:none;mix-blend-mode:normal;transform:none;animation:none}.portrait-frame{inset:60px 35px 130px;clip-path:none;border-radius:10px}.hero-visual:after{background:linear-gradient(0deg,#10243d,transparent 65%)}.visual-type{display:none}.portrait-note{background:#ffffff12}.note-arrow{background:#dce6f0;color:#172b47}.expertise h2 span,.contact h2 span{color:#b8cce0}.service-panel{background:#1a304b;border-color:#354b64}.service-tabs button{color:#8ea4bc;border-color:#354b64}.service-panel p,.service-panel>.eyebrow,.service-tags span,.expertise-intro p{color:#afbed0}.service-tags span{border-color:#50657d}.manifesto{background:#dce6f0;color:#172b47}.manifesto>p>span{color:#7a93ad}.social-section{background:#e9eef3}.social-photo{height:auto;aspect-ratio:9/16;background:#172b47}.social-photo img{object-fit:contain;filter:none}.social-card:hover img{transform:none;filter:none}.dark:hover{background:#28425f}.lime:hover{background:#edf3f8}.monogram{font-size:0;letter-spacing:0;width:34px;height:34px;padding:0;background:url('assets/monogram.svg') center/contain no-repeat}.monogram>span{display:none}@media(max-width:720px){.social-card{display:block}.social-photo{height:auto;max-height:none;aspect-ratio:9/16}.portrait-frame{inset:45px 25px 120px}.hero-visual{min-height:470px}}
.hero-portrait{width:150px;height:150px;border-radius:50%;position:absolute;left:50%;top:38%;translate:-50% -50%;box-shadow:0 0 0 18px #ffffff12,0 0 0 55px #ffffff08}.hero-visual:before{border-color:#9fb1c455}.portrait-frame{overflow:visible}.hero-visual .visual-index{color:#536d89}
h1,h2,h3{font-family:DM,Arial,sans-serif;font-weight:500}body{color:#172b47}.hero-portrait{width:100%;height:100%;position:static;translate:none;object-fit:cover;object-position:center;border-radius:0;box-shadow:none;transform:none}.portrait-frame{inset:0;overflow:hidden;border-radius:13px}.hero-visual{min-height:660px}.visual-index{background:#f5f5f3dc;padding:8px 12px;border-radius:4px}.hero-visual:after{height:35%;background:linear-gradient(0deg,#10243dba,transparent)}.affiliations>div{width:80%;gap:25px;flex-wrap:wrap}.elevo-affiliate img{width:170px;display:block}.business-photo{display:block;width:100%;height:360px;object-fit:cover;object-position:center 25%;margin-top:30px;border-radius:10px}.elevo-callout{border-top:1px solid #d9dfe5;margin-top:30px;padding-top:30px}.elevo-callout img{width:220px}.elevo-callout p{font-size:13px;line-height:1.8}.osm-section{background:#eef1f5}@media(max-width:720px){.hero-visual{min-height:470px}.affiliations>div{width:100%}.business-photo{height:360px}}
.hero{grid-template-columns:1.2fr .9fr;gap:8%;align-items:center}.hero-visual{min-height:540px;max-width:450px;width:100%;justify-self:end}.wordmark{font-family:Manrope,Arial,sans-serif;font-weight:400;letter-spacing:-.4px}.monogram{width:40px;height:40px}.demo-stats{padding-top:55px;padding-bottom:55px;background:#e9eef4}.demo-stats .section-label{margin-bottom:30px}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.stats-grid>div{border-top:1px solid #bdcad8;padding-top:25px}.stats-grid strong{font-family:Manrope,Arial,sans-serif;font-weight:400;font-size:64px;letter-spacing:-3px;display:block;font-variant-numeric:tabular-nums;min-height:85px}.stats-grid h3{font-size:15px;margin:14px 0;color:#536b87}.stats-note{font-size:10px;line-height:1.7;color:#70829a;margin-top:25px}.hero-visual{animation:photo-enter 1.2s ease both}.stats-grid>div{transition:transform .4s}.stats-grid>div:hover{transform:translateY(-5px)}@keyframes photo-enter{from{opacity:0;translate:0 24px}to{opacity:1;translate:0 0}}@media(max-width:720px){.hero{grid-template-columns:1fr;gap:30px}.hero-visual{min-height:420px;max-width:360px;justify-self:center}.stats-grid{gap:15px}.stats-grid strong{font-size:34px;letter-spacing:-1.5px;min-height:45px}.stats-grid h3{font-size:11px;line-height:1.5}.demo-stats .section-label{flex-direction:column;align-items:start;gap:8px}.demo-stats .section-label>span:last-child{display:block}.stats-note{font-size:9px}}
.event-gallery{background:#e9eef4}.event-photos{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.event-photos figure{margin:0}.event-photos img{width:100%;height:340px;object-fit:cover;border-radius:10px}.event-photos figcaption{font-size:12px;color:#60758d;margin-top:15px}.hero-portrait{object-fit:cover;object-position:center 30%}@media(max-width:720px){.event-photos{grid-template-columns:1fr}.event-photos img{height:auto}.hero-portrait{object-position:center}}

/* Ritratto professionale: volto e busto centrati su desktop e mobile. */
.hero-portrait{object-position:50% 42%}.mini-avatar img{object-position:50% 30%}

/* Logo ufficiale e foto evento nelle proporzioni originali. */
.affiliations .osm-affiliate{display:flex;align-items:center;justify-content:center;padding:8px 0}.affiliations .osm-affiliate img{display:block;width:130px;height:auto;max-width:100%}
.event-photos{max-width:1200px;margin-left:auto;margin-right:auto;align-items:start}.event-photos img{height:auto;aspect-ratio:auto;object-fit:contain;display:block}.business-photo{height:auto;max-width:607px;object-fit:contain;aspect-ratio:auto}

/* Leggibilità: gerarchia più ampia e contrasti più definiti. */
nav{font-size:14px;font-weight:500}.wordmark{font-size:20px;font-weight:500}.nav-button{font-size:13px;font-weight:500}
.eyebrow,.hero .eyebrow{font-size:11px;font-weight:500}.section-label{font-size:11px;font-weight:500;letter-spacing:1px}.small{font-size:10px;color:#52667e}.hero-foot p{font-size:12px;color:#52667e}.hero-foot p strong{font-weight:700}.hero-foot{gap:16px}
.hero-description,.approach-grid>div>p,.principles p,.projects-head p,.social-head p,.expertise-intro p{font-size:17px;line-height:1.8;font-weight:400;color:#52667e}.hero-description{max-width:440px}.approach-grid .big-copy{font-size:25px;line-height:1.55;color:#263e59;font-weight:500}
.button,.subtle-link,.line-link{font-size:14px;font-weight:500}.service-tabs button{font-size:17px}.service-panel p{font-size:16px;line-height:1.8;max-width:440px}.service-panel>.eyebrow{font-size:11px}.service-panel .line-link{font-size:14px}.service-tags span{font-size:12px}
.faq-list summary{font-size:19px;font-weight:500;line-height:1.5}.faq-list details p{font-size:16px;line-height:1.8;color:#52667e}.contact-right p{font-size:19px;line-height:1.7}.contact-right .button{font-size:17px;font-weight:700;padding:22px 27px;border:1px solid #c6d6e8}.email-link{font-size:16px}.contact-location{font-size:11px}.footer-links{font-size:13px}.footer-bottom{font-size:11px}
.focus-grid strong{font-size:clamp(28px,3.2vw,46px);letter-spacing:-1.5px;min-height:60px;font-weight:500}.focus-grid h3{font-size:16px}.monogram{width:43px;height:43px;flex-shrink:0}
@media(max-width:720px){.section-label{font-size:10px}.hero .eyebrow{font-size:10px}.hero-description,.approach-grid>div>p,.principles p,.projects-head p,.social-head p,.expertise-intro p{font-size:16px}.approach-grid .big-copy{font-size:22px}.hero-foot p{font-size:11px}.small{font-size:9px}.focus-grid{grid-template-columns:1fr;gap:22px}.focus-grid strong{font-size:34px;min-height:auto}.focus-grid h3{font-size:15px}.faq-list summary{font-size:18px}.wordmark{font-size:18px}}

/* Nuovo ritratto Manuel: immagine principale e avatar dedicato. */
.hero-portrait{object-position:50% 35%}.mini-avatar img{object-position:center}
