/* Identità condivisa: avorio, giada, champagne. */
:root{--ink:#243f39;--dark:#245d53;--deep:#245d53;--cream:#faf8f3;--paper:#edf3ee;--muted:#536a61;--line:#d7dfd5;--gold:#e7d8ba;--gold-deep:#497566}
body{background:var(--cream)}
h1,h2{letter-spacing:-.045em;text-wrap:balance}h2 em{color:#477b6b}p{text-wrap:pretty}
.site-header{background:rgba(250,248,243,.95);box-shadow:0 3px 24px #213f3306}
.header-top{min-height:88px;border-bottom-color:#d7dfd580}.header-note{letter-spacing:.16em;color:#536a61}
.main-nav{height:58px}.main-nav a{font-size:16px}.main-nav a[aria-current]{color:#275f51}
.brand-logo,.about-brand-logo,.seal img{filter:grayscale(1) sepia(.6) saturate(1.4) hue-rotate(105deg) brightness(.8)}
.button{border-radius:50px;padding:17px 26px;transition:background .2s,transform .2s,box-shadow .2s}.button span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#ffffff24}
.button-dark{background:#285f53;color:#fffdf7;box-shadow:0 5px 18px #285f5314}.button-dark:hover{background:#194c40;box-shadow:0 8px 24px #285f5320}
.button-gold{background:#e7d8ba;color:#2c4439;box-shadow:0 5px 18px #77613c12}.button-gold:hover{background:#dfccaa}
.hero{color:var(--ink);background:radial-gradient(ellipse at 84% 40%,#b8d7c7aa,transparent 52%),linear-gradient(120deg,#f7f5ef 24%,#e9f2e9 100%)}
.hero:before{width:760px;height:760px;border:1px solid #8cbaa43b;left:58%;top:-250px}.hero-grid{grid-template-columns:1.15fr .85fr;gap:64px;padding-top:60px;padding-bottom:60px;align-items:center}
.hero-copy .eyebrow{display:inline-flex;align-items:center;border:1px solid #b9cebd;background:#ffffff60;border-radius:40px;padding:8px 15px;color:#486b5b;letter-spacing:.1em;margin-bottom:24px}.gold-dot{width:6px;height:6px;background:#628c70}
.hero-name{color:#456655;font-size:17px;margin-bottom:18px}.hero h1{font-size:clamp(48px,5.2vw,74px);line-height:1.09;margin-bottom:25px}.hero h1 em{color:#3c7b67}
.hero-subtitle{font-size:20px;line-height:1.6;color:#3d5e50}.hero-description{color:#536a61;line-height:1.8;max-width:485px}.hero-actions{gap:26px}.hero-actions .text-link{color:#365e4d;border-bottom:1px solid #9bb8a4}.hero-footnote{color:#536a61;font-size:13px}
.hero-bottom{border-top:1px solid #a9c2b25c;color:#4e6b59;padding-top:22px;padding-bottom:24px}.hero-bottom>a{letter-spacing:.09em}
.portrait-art{height:560px;border:0;border-radius:230px 230px 38px 38px;box-shadow:0 24px 60px #355e4620;max-width:460px;width:100%;justify-self:end;background:#d5dfd5}.portrait-art>img{object-position:center 19%}.portrait-art:after{inset:12px;border:1px solid #ffffff88;z-index:2}.portrait-art .art-caption{border-radius:0 0 38px 38px;padding:95px 32px 30px;background:linear-gradient(transparent,rgba(28,59,47,.88))}.portrait-art .art-caption p{font-size:29px;color:#fffdf6}.portrait-art .art-caption em{color:#e9dfc7}.portrait-art .art-caption .eyebrow{color:#fffdf6;font-size:12px}.portrait-art .art-vertical{display:none}
.welcome-note{padding:94px 0 78px;text-align:center}.welcome-note .wrap{max-width:780px}.welcome-note .eyebrow{color:#527c65}.welcome-note h2{font-size:clamp(34px,3.5vw,49px);margin-bottom:24px}.welcome-note p:last-child{max-width:650px;margin:auto;color:var(--muted);font-size:17px;line-height:1.9}
.qualification-ribbon{background:#edf3eb;border-block:1px solid #dde6d9}.qualification-ribbon>.wrap{padding:23px 0}.qualification-ribbon span{font-size:20px;color:#456652}.qualification-ribbon i{font-size:10px;color:#8fa783}
.section{padding:100px 0}.section-heading{margin-bottom:46px}.section-heading>p{font-size:17px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:20px;border:0}.service-list>a{grid-template-columns:32px 1fr 44px;gap:14px;padding:28px 30px 32px;border:1px solid #d6dfd2;border-radius:24px;background:#fffdf8;align-items:start;transition:background .2s,transform .2s,box-shadow .2s}.service-list>a:hover{padding-left:30px;background:#f1f5ed;transform:translateY(-3px);box-shadow:0 12px 26px #3253370b}.service-number{padding-top:8px}.service-list h3{font-size:29px;line-height:1.25}.service-list p{grid-column:2;grid-row:2;max-width:100%;font-size:16px;line-height:1.75;margin:0}.round-arrow{grid-column:3;grid-row:1/3;border-color:#c6d6c4;background:#edf3e9;color:#41684e}
.about-teaser{background:#edf3eb;border-radius:50px}.about-grid{grid-template-columns:.85fr 1.15fr;gap:100px}.profile-portrait{aspect-ratio:.95;border-radius:190px 190px 35px 35px;border:0;box-shadow:0 18px 45px #355e4612}.profile-portrait figcaption{background:linear-gradient(transparent,rgba(28,59,47,.87));padding:65px 28px 28px;font-size:25px;color:#fffdf6}.about-grid h2{font-size:clamp(34px,3.6vw,50px)}
.steps{gap:32px}.steps article{border-top:1px solid #bccbb8;padding-top:27px}.steps span{color:#54725a;letter-spacing:.08em}.steps h3{font-size:29px}.steps p{font-size:16px;max-width:330px}
.credentials-strip{background:#f0eee4;border:0;padding:65px 0}.credentials-strip h2{font-size:39px}.credentials-strip p:not(.eyebrow){font-size:16px;color:#536a61}
.closing{margin:35px 26px 0;padding:76px 0;border-radius:36px;background:radial-gradient(ellipse at 95% 5%,#62947a55,transparent 60%),#285b4c;color:#fffdf6}.closing .wrap{width:min(1160px,calc(100% - 64px))}.closing .eyebrow{color:#e5d8bc}.closing h2{font-size:clamp(36px,3.8vw,52px)}.closing em{color:#e7d8ba}.closing-copy{font-size:16px;color:#e0e9dc;margin-top:23px;max-width:480px}.closing .button{flex-shrink:0}
.page-intro{color:var(--ink);padding:76px 0 78px;background:radial-gradient(ellipse at 90% 20%,#c4dcc5a0,transparent 65%),#f0f3e9;border-radius:0 0 48px 48px}.page-intro .eyebrow{color:#517561}.page-intro h1{max-width:1080px;line-height:1.13}.page-intro em{color:#3e7964}.intro-lead{color:#536a61;font-size:18px!important;line-height:1.85!important;max-width:760px}.page-intro:after{color:#56786209}
.service-detail:nth-child(odd){background:#eef3e9;border-radius:36px}.scope-note{background:#ecefe4;padding:36px 0}.scope-note p{color:#536a61}.service-detail-grid{gap:85px}.check-list li{padding-block:17px}.check-list li:before{color:#68906e}
.encounter-steps article{padding:28px 0}.encounter-steps article>span{display:grid;place-items:center;flex-shrink:0;width:46px;height:46px;background:#edf3e9;border-radius:50%;font-size:20px}.faq details{border-color:#cddac7}.faq summary{font-size:17px}.faq details p{font-size:16px}
.credential-card{border:1px solid #d2ddcb;border-radius:26px;box-shadow:0 15px 45px #2e573611;background:#fffdf7;padding:35px}.credential-number{background:#2c6452;border-radius:14px}.credential-context{color:#536a61}.seal{border-color:#bdb394}
.request-card{background:#eff3e9;border:1px solid #d5dfcd;border-radius:28px;padding:38px}.contact-panel{padding-top:20px}select{border-radius:12px;border-color:#bccdb8;background:#fffdf8}.contact-panel>.fine-print{max-width:440px}.address{border-color:#d2ddcb}.big-phone{color:#2d6451}
.current-entry{background:#eef3e9;border-radius:0 20px 20px 20px;border-top-color:#8caa8b}.cv-photo{border-radius:120px 120px 20px 20px}.skill-list li{border-radius:24px;background:#edf3e8;border-color:#cfddc7}.prose blockquote{border-left:2px solid #a9b998;background:#f0f3e9;border-radius:0 20px 20px 0;padding:25px 30px}
.site-footer{padding-top:72px}.footer-top{gap:65px}.footer-top p{color:#536a61}.footer-top>.brand{margin-bottom:15px}.footer-bottom{padding-bottom:110px}
.guide-launch{background:#fffdf7;color:#254e3f;border:1px solid #c8d7c0;border-radius:50px;box-shadow:0 8px 32px #2c4c3821;padding:12px 18px;gap:12px}.guide-icon{display:grid;place-items:center;background:#e7eedf;color:#487355;border-radius:50%;width:38px;height:38px}.guide-launch small{color:#536a61}.guide-launch strong{font-size:14px}
dialog{border-radius:26px;border-color:#c0cfb6;background:#faf8f3}.guide-options button{border-radius:12px;border-color:#cad8bf;padding:15px}.guide-options button:hover,.guide-options button[aria-pressed=true],.guide-result{background:#eaf0e2}.guide-result{border-radius:16px}.dialog-close{background:#edf2e5;border-radius:50%}
@media(min-width:761px) and (max-width:1050px){.hero-grid{gap:35px;grid-template-columns:1.1fr .9fr}.hero h1{font-size:54px}.portrait-art{height:530px}.about-grid{gap:55px}.service-list>a{padding:25px 22px;grid-template-columns:25px 1fr 38px;gap:10px}.service-list>a:hover{padding-left:22px}.service-list h3{font-size:26px}.closing-inner{gap:35px}.main-nav{gap:24px}.main-nav a{font-size:15px}}
@media(max-width:760px){.header-top{min-height:82px}.main-nav{height:auto;gap:0}.main-nav a{font-size:18px}.hero-grid{grid-template-columns:1fr;gap:38px;padding-top:36px;padding-bottom:32px}.hero h1{font-size:clamp(43px,10.5vw,62px);line-height:1.11}.hero-copy .eyebrow{font-size:12px;padding:7px 11px;letter-spacing:.04em;margin-bottom:22px}.hero-name{font-size:16px}.hero-subtitle{font-size:19px}.hero-description{font-size:16px}.hero-actions{gap:17px 23px}.hero-actions .button{font-size:15px}.hero-actions .text-link{font-size:15px}.hero-footnote{font-size:13px}.portrait-art{height:470px;width:min(94%,380px);justify-self:center;border-radius:190px 190px 30px 30px;margin:0 auto}.portrait-art .art-caption{border-radius:0 0 30px 30px;padding:90px 27px 28px}.portrait-art .art-caption p{font-size:28px}.hero-bottom{padding-top:20px;padding-bottom:23px;font-size:14px}.welcome-note{padding:64px 0 55px}.welcome-note h2{font-size:35px}.welcome-note p:last-child{font-size:16px;line-height:1.85}.qualification-ribbon span{font-size:18px}.qualification-ribbon>.wrap{padding:22px 0;gap:16px}.section{padding:66px 0}.section-heading>p{font-size:16px}.service-list{grid-template-columns:1fr;gap:14px}.service-list>a{padding:25px 22px;grid-template-columns:23px 1fr 35px;gap:10px}.service-list>a:hover{padding-left:22px}.service-number{padding-top:5px}.service-list h3{font-size:26px}.service-list p{font-size:16px;margin:0}.about-teaser{border-radius:28px}.about-grid{grid-template-columns:1fr;gap:36px}.profile-portrait{aspect-ratio:1.04;border-radius:170px 170px 28px 28px}.about-grid h2{font-size:35px}.steps{gap:30px}.steps h3{font-size:28px}.steps p{max-width:none}.credentials-strip{padding:52px 0}.credentials-strip h2{font-size:33px}.closing{margin:24px 12px 0;padding:49px 0;border-radius:28px}.closing .wrap{width:calc(100% - 40px)}.closing h2{font-size:36px}.closing-copy{font-size:16px;margin-top:22px}.closing .button{margin-top:26px}.page-intro{border-radius:0 0 30px 30px;padding:46px 0 50px}.page-intro h1{font-size:39px}.intro-lead{font-size:17px!important}.service-detail-grid{gap:20px}.service-detail:nth-child(odd){border-radius:28px}.request-card{padding:30px 24px;border-radius:24px}.credential-card{padding:28px 24px}.footer-top{gap:32px}.site-footer{padding-top:55px}.guide-launch{padding:10px 14px;bottom:12px}.guide-launch small{font-size:12px}.guide-icon{width:32px;height:32px;font-size:20px}.guide-launch strong{font-size:14px}.prose blockquote{padding:22px;font-size:25px}.encounter-steps article{gap:16px}.encounter-steps article>span{width:38px;height:38px;font-size:18px}}
@media(max-width:360px){.hero h1{font-size:40px}.hero-copy .eyebrow{font-size:11px}.hero-actions{gap:18px}.portrait-art{height:420px}.service-list>a{padding:23px 16px;gap:8px}.service-list>a:hover{padding-left:16px}.service-list h3{font-size:24px}.page-intro h1{font-size:35px}.credential-card{padding:24px 18px}.request-card{padding:27px 20px}.closing h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.button,.service-list>a{transition:none}}
