/* Menale 231 — CSS nativo, responsive, nessun framework o font esterno. */
:root {
  --ink:#142a30; --ink-soft:#385159; --muted:#657274; --cream:#faf8f2;
  --paper:#fffdfa; --sand:#f1eee6; --mist:#eaf0ed; --gold:#bb9861;
  --gold-light:#e7d5b3; --border:#dce1dd; --danger:#9f3f36;
  --sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', Inter, Helvetica, Arial, sans-serif;
  --serif: 'Iowan Old Style', Baskerville, 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  --max:1160px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.66;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{text-decoration-color:currentColor}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid #c48d44;outline-offset:4px}
::selection{background:#e2c9a1;color:#172e34}
.container{width:min(var(--max),calc(100% - 72px));margin-inline:auto}
.container--narrow{max-width:780px}
.skip-link{position:absolute;left:14px;top:-80px;z-index:1000;background:var(--paper);padding:12px 22px;box-shadow:0 5px 20px #0003}
.skip-link:focus{top:12px}
.site-header{background:var(--ink);color:#fff;position:relative;z-index:100;border-bottom:1px solid #ffffff22}
.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}
.brand{display:inline-flex;align-items:center;gap:14px;flex:none}
.brand-icon{font-family:var(--serif);font-size:2.1rem;line-height:1;font-weight:700;letter-spacing:-.12em;border:1px solid #ffffff58;border-radius:2px;padding:12px 17px 11px 13px}
.brand-icon span,.footer-logo span{color:var(--gold)}
.brand-wordmark{font-weight:650;letter-spacing:.21em;font-size:.92rem;line-height:1.15}
.brand-wordmark small{display:block;font-size:.61rem;font-weight:500;letter-spacing:.245em;color:#d0d9d5;margin-top:9px}
.site-nav{display:flex;align-items:center;gap:29px}
.site-nav ul{display:flex;align-items:center;gap:26px;list-style:none;margin:0;padding:0}
.site-nav li a{font-size:.81rem;font-weight:530;color:#d0d9d7;transition:color .2s}
.site-nav li a:hover,.site-nav li a.active{color:#fff}
.site-nav li a.active{box-shadow:0 2px var(--gold);padding-bottom:6px}
.button{display:inline-flex;justify-content:center;align-items:center;gap:10px;text-align:center;border:0;border-radius:2px;padding:14px 24px;font-weight:620;font-size:.88rem;letter-spacing:.015em;line-height:1.25;transition:background .2s,transform .2s,color .2s;min-height:50px;text-decoration:none}
.button:hover{transform:translateY(-2px);text-decoration:none}
.button--nav{border:1px solid var(--gold);color:#f1e6d1;background:transparent;font-size:.8rem;padding:10px 16px;min-height:44px}
.button--nav:hover{background:#ffffff12}
.button--primary{background:var(--gold);color:#112a31}
.button--primary:hover{background:#d7b27b}
.button:disabled{opacity:.55;cursor:not-allowed;transform:none}
.text-link{display:inline-flex;align-items:center;gap:10px;font-size:.89rem;font-weight:650;border-bottom:1px solid var(--gold);padding-bottom:6px}
.text-link:hover{color:#996f38}
.menu-toggle{display:none}
.breadcrumbs{padding-top:17px;padding-bottom:15px;font-size:.76rem;color:#66716e}
.breadcrumbs ol{list-style:none;display:flex;gap:7px;flex-wrap:wrap;padding:0;margin:0}
.breadcrumbs li+li:before{content:'›';color:#9ea8a4;margin-right:7px}
.breadcrumbs a:hover{text-decoration:underline}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:.68rem;text-transform:uppercase;letter-spacing:.15em;font-weight:760;color:#81653e;margin:0 0 22px}
.dot{width:8px;height:8px;background:var(--gold);border-radius:50%;display:inline-block;flex:none}
h1,h2,h3,p{overflow-wrap:break-word}
h1,h2,h3{line-height:1.12;margin:0;font-weight:500}
h1,h2{font-family:var(--serif);letter-spacing:-.045em}
h1{font-size:clamp(3.1rem,6.2vw,5.8rem)}
h2{font-size:clamp(2.15rem,4.2vw,3.7rem)}
h3{font-size:1.2rem}
p{margin:0 0 1em}
.lead{font-size:clamp(1.1rem,1.7vw,1.28rem);line-height:1.65}
.paragraph{font-size:1rem;line-height:1.85;color:#485957;max-width:650px;margin-top:22px}
.section{padding:106px 0}
.section--light{background:var(--paper)}
.section--mist{background:var(--mist)}
.section-head{max-width:750px;margin-bottom:42px}
.section-head h2{margin-bottom:14px}
.section-head>p:not(.eyebrow){font-size:1rem;color:#66726f;max-width:720px;line-height:1.75;margin:0}
.section-head.centered{text-align:center;margin-inline:auto}
.section-head.centered .eyebrow{justify-content:center}
.section-heading-inline{display:flex;align-items:end;justify-content:space-between;gap:24px}
.home-hero{background:var(--ink);color:#fff;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.13fr .87fr;min-height:645px;align-items:center;gap:55px}
.hero-copy{padding:70px 0 65px;position:relative;z-index:1}
.hero-copy .eyebrow,.inner-hero .eyebrow,.article-hero .eyebrow,.cta-band .eyebrow{color:#e0c699}
.hero-copy h1{max-width:700px}
.hero-copy h1 em{font-weight:400;color:#d0aa6e;font-style:italic}
.hero-copy .lead{max-width:600px;color:#dae2df;margin:31px 0 33px}
.hero-copy .lead strong{color:#fff;font-weight:620}
.hero-actions{display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.home-hero .text-link{color:#edf4f0}
.hero-proof{margin-top:65px;display:flex;gap:35px;flex-wrap:wrap;color:#bdc8c4;font-size:.77rem}
.hero-proof span{max-width:180px;border-top:1px solid #ffffff3a;padding-top:12px}
.hero-proof strong{color:#fff;display:block;font-size:.92rem;font-weight:620}
.hero-art{height:560px;display:flex;align-items:center;justify-content:center;position:relative;isolation:isolate;align-self:end}
.hero-art__halo{position:absolute;width:520px;height:520px;border:1px solid #bd986353;border-radius:50%;top:9%;right:-9%;box-shadow:0 0 0 90px #bb98610d,0 0 0 172px #bb98610a}
.hero-art__halo:before{content:'';position:absolute;inset:65px;border:1px solid #cba66e61;border-radius:50%}
.hero-art__line{position:absolute;inset:5% 0 0 49%;width:1px;background:linear-gradient(transparent,#cda365,transparent);transform:rotate(32deg)}
.hero-art__number{font-family:var(--serif);font-weight:500;font-size:clamp(10rem,18vw,20rem);letter-spacing:-.13em;line-height:1;color:#dfbf86;text-shadow:3px 4px 45px #040c0d75;z-index:1;transform:rotate(-9deg) translateX(-4%)}
.hero-art__caption{position:absolute;bottom:50px;left:10%;z-index:2;border-top:1px solid #bb9861af;padding-top:13px;font-size:.67rem;font-weight:600;letter-spacing:.23em;line-height:2;color:#d8dcd4}
.hero-art__caption span{color:var(--gold-light)}
.proof-footnote{font-size:.69rem;color:var(--muted);padding-top:10px;padding-bottom:10px}
.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.service-card{background:var(--cream);border:1px solid var(--border);padding:37px 31px 29px;min-height:306px;position:relative;transition:background .2s,transform .2s,border-color .2s}
.service-card:hover{background:#fff;transform:translateY(-4px);border-color:#bc9f75}
.card-index{display:block;color:#8a957f;font-weight:700;font-size:.67rem;letter-spacing:.14em;margin-bottom:24px}
.service-card h3{font-family:var(--serif);font-size:1.78rem;line-height:1.1;letter-spacing:-.03em;margin-bottom:17px;max-width:240px}
.service-card p{color:#687571;font-size:.86rem;line-height:1.65;max-width:300px;padding-bottom:20px;margin-bottom:10px}
.card-arrow{position:absolute;bottom:22px;right:28px;color:#8b6a41;font-size:1.55rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}
.split--content{align-items:start}
.split h2{max-width:600px}
.split .text-link{margin-top:14px}
.quote-panel{padding:48px;background:var(--ink);color:#f9f6ed;min-height:380px;display:flex;flex-direction:column;justify-content:space-between;position:relative}
.quote-panel__mark{font-family:var(--serif);font-size:8rem;color:var(--gold);height:80px;line-height:.8}
.quote-panel blockquote{font-family:var(--serif);font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:-.03em;line-height:1.35;margin:12px 0 35px}
.quote-panel p{font-size:.78rem;color:#b9c6c1;line-height:1.6;margin:0}
.value-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.value-item{padding:20px 0 26px;border-top:1px solid #9ca9a355}
.num{color:#9a7a4c;font-size:.8rem;font-weight:700;letter-spacing:.1em;display:block;margin:0 0 29px}
.value-item h3{font-family:var(--serif);letter-spacing:-.04em;font-size:1.42rem;margin-bottom:15px}
.value-item p{font-size:.85rem;color:#66726e;line-height:1.7;margin:0}
.insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.insight-card{padding:33px 29px 27px;display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--border);min-height:285px;transition:border-color .2s,transform .2s}
.insight-card:hover{border-color:var(--gold);transform:translateY(-3px)}
.tag{font-size:.66rem;color:#826a48;font-weight:700;text-transform:uppercase;letter-spacing:.13em;margin-bottom:19px}
.insight-card h3{font-family:var(--serif);font-size:1.58rem;letter-spacing:-.035em;line-height:1.2}
.insight-card p{font-size:.85rem;line-height:1.6;color:#697772;margin-top:15px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.insight-card>span:last-child{margin-top:auto;color:#796342;font-size:.79rem;font-weight:700;padding-top:12px}
.cta-band{background:var(--ink);color:#fff;padding:75px 0}
.cta-inner{display:flex;gap:45px;align-items:center;justify-content:space-between}
.cta-inner>div{max-width:760px}
.cta-inner h2{max-width:710px}
.cta-inner p:not(.eyebrow){color:#c8d3ce;margin-top:17px;line-height:1.7}
.cta-inner>.button{flex:none}
.inner-hero{background:var(--ink);color:#fff;padding:80px 0 102px;overflow:hidden}
.inner-hero__grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr);align-items:center;gap:8%}
.inner-hero h1{font-size:clamp(2.95rem,5.5vw,5.5rem);max-width:820px}
.inner-hero .lead{color:#d2dfda;max-width:730px;margin-top:29px}
.inner-mark{position:relative;min-height:290px;display:flex;align-items:center;justify-content:center;border:1px solid #e5c78d42;transform:rotate(-7deg)}
.inner-mark:before,.inner-mark:after{content:'';position:absolute;border:1px solid #bd98635c;border-radius:50%;inset:6% 22%}
.inner-mark:after{inset:-15% 8%}
.inner-mark>span{font-family:var(--serif);font-size:clamp(7rem,12vw,11rem);color:#c1a06e;letter-spacing:-.1em;line-height:.9}
.inner-mark small{position:absolute;bottom:14px;font-size:.54rem;letter-spacing:.18em;color:#d7d4cd;white-space:nowrap}
.content-slab{padding:34px 37px;background:#ebece6;border-left:3px solid var(--gold)}
.content-slab h3{font-family:var(--serif);font-size:1.8rem;margin-bottom:18px}
.content-slab p{color:#4d605e;font-size:.93rem;line-height:1.8}
.muted-note{font-size:.79rem!important;color:#798683!important;border-top:1px solid #ced5cc;padding-top:16px;margin-top:22px}
.two-cols{display:grid;grid-template-columns: .85fr 1.15fr;gap:12%;align-items:start}
.steps{list-style:none;margin:0;padding:0}
.steps li{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:18px 0;border-bottom:1px solid var(--border);align-items:start}
.steps li:first-child{border-top:1px solid var(--border)}
.steps li span{font-size:.79rem;color:#9f7b47;font-weight:700}
.steps li p{margin:0;font-size:1.08rem;font-weight:550;line-height:1.55}
.faq-list{border-top:1px solid #c5cfca}
.faq{border-bottom:1px solid #c5cfca}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:22px 0;font-weight:650;font-size:.97rem;line-height:1.5}
.faq summary::-webkit-details-marker{display:none}
.faq summary span{font-size:1.45rem;font-weight:400;color:#9b7847;transition:transform .2s}
.faq[open] summary span{transform:rotate(45deg)}
.faq p{max-width:680px;font-size:.91rem;line-height:1.75;color:#53605d;margin:0;padding:0 18px 24px 0}
.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.related-card{padding:29px;background:var(--cream);border:1px solid var(--border)}
.related-card:hover{border-color:var(--gold)}
.related-card h3{font-family:var(--serif);font-size:1.7rem;margin-bottom:16px}
.related-card p{color:#6a7771;font-size:.86rem;line-height:1.7}
.related-card span{color:#7d6441;font-weight:700;font-size:.8rem}
.about-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:start}
.about-portrait{background:linear-gradient(140deg,#d8dbd5,#abbeb4);min-height:480px}
.about-portrait img{width:100%;height:auto;aspect-ratio:4 / 4.8;object-fit:cover;display:block}
.about-portrait small{display:block;font-size:.68rem;padding:9px 11px;color:#5c6863;line-height:1.5}
.about-grid h2{margin-bottom:25px}
.about-highlights{display:flex;gap:33px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:24px 0;margin:34px 0}
.about-highlights div{flex:1}
.about-highlights strong{display:block;font-size:.95rem}
.about-highlights span{display:block;color:#687571;font-size:.75rem;margin-top:7px}
.article-hero{background:var(--ink);color:#fff;padding:85px 0 70px}
.article-hero h1{font-size:clamp(2.7rem,5.2vw,4.6rem)}
.article-hero .lead{color:#d1ded7;margin-top:28px}
.article-meta{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid #ffffff36;padding-top:22px;margin-top:45px;font-size:.72rem;color:#ccdbd4}
.article-layout{display:grid;grid-template-columns:1.7fr .75fr;gap:11%;padding-top:88px;padding-bottom:100px;align-items:start}
.article-body section+section{margin-top:50px}
.article-body h2{font-family:var(--serif);font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.2;margin-bottom:22px}
.article-body p{font-size:1.05rem;line-height:1.9;color:#4f605d;margin-bottom:22px}
.article-disclaimer{background:var(--mist);font-size:.82rem;color:#62726d;padding:22px 24px;margin-top:52px;line-height:1.7}
.article-aside{background:var(--paper);padding:32px 25px;border:1px solid var(--border);position:sticky;top:24px}
.article-aside h2{font-size:1.62rem;margin-bottom:17px}
.article-aside p{font-size:.85rem;color:#68756f;margin-bottom:25px}
.article-aside .text-link{margin-bottom:22px}
.article-aside .button{width:100%;padding-inline:12px}
.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%;align-items:start}
.contact-details h2{margin-bottom:24px}
.contact-details>p{color:#586a63;max-width:450px;line-height:1.8}
.contact-details dl{display:grid;grid-template-columns:98px 1fr;gap:18px 18px;margin-top:35px;padding-top:28px;border-top:1px solid var(--border)}
.contact-details dt{font-size:.76rem;color:#7d856f;font-weight:700;letter-spacing:.06em}
.contact-details dd{font-size:.9rem;margin:0;font-weight:550;line-height:1.6}
.contact-details dd a{border-bottom:1px solid var(--gold)}
.contact-notice{font-size:.78rem!important;border-top:1px solid var(--border);margin-top:32px;padding-top:25px}
.form-panel{background:var(--cream);border:1px solid var(--border);padding:36px 39px 33px;box-shadow:0 10px 35px #1c34300c}
.form-panel>h2{font-size:2.4rem;margin-bottom:13px}
.form-panel>p{color:#64716c;font-size:.89rem;line-height:1.65;margin-bottom:27px}
.form-panel form{display:flex;flex-direction:column;gap:7px}
.form-panel label:not(.checkline){display:block;font-size:.76rem;font-weight:730;margin-bottom:5px}
.form-panel input:not([type=checkbox]),.form-panel textarea,.form-panel select{width:100%;min-width:0;min-height:47px;border:1px solid #c6d0ca;background:#fff;padding:11px 14px;color:var(--ink);border-radius:2px;margin-bottom:16px;font-size:.88rem}
.form-panel textarea{resize:vertical;min-height:117px}
.form-panel input:focus,.form-panel textarea:focus,.form-panel select:focus{outline:2px solid #ad8d62;outline-offset:1px}
.form-panel [aria-invalid=true]{border-color:var(--danger)!important}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.checkline{display:flex;gap:13px;align-items:flex-start;font-size:.77rem;line-height:1.6;color:#4b5c57;margin:3px 0 0}
.checkline input{margin:3px 0 0;flex:none;width:17px;height:17px;accent-color:var(--ink)}
.checkline a{color:#80603d;text-decoration:underline}
.microcopy{font-size:.72rem;color:#7e8580;margin:11px 0 16px;line-height:1.6}
.form-panel button{align-self:start}
.form-feedback{font-size:.82rem;margin:10px 0 0;min-height:1em}
.form-feedback.error{color:var(--danger)}
.form-feedback.success{color:#2a6b4e}
.form-fallback{margin-top:27px;padding-top:24px;border-top:1px solid var(--border);font-size:.83rem;color:#6a7671}
.form-fallback a{color:#8c6234;font-weight:720}
.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.preview-note{background:#eee6d6;color:#4a483b;padding:19px 23px;margin:0 0 26px;border-left:4px solid var(--gold);font-size:.84rem;line-height:1.7}
.preview-note p{margin:7px 0 0}
.legal-copy h2{font-size:2rem;margin:30px 0 16px}
.legal-copy p{color:#53625c;line-height:1.85}
.thankyou{text-align:center;min-height:430px}
.thankyou .eyebrow{justify-content:center}
.thankyou h1{font-size:3.6rem;margin-bottom:30px}
.thankyou .lead{max-width:670px;margin:0 auto 35px;color:#586862}
.not-found{padding-top:150px;padding-bottom:150px;min-height:70vh}
.not-found h1{font-size:4rem;margin-bottom:20px}
.not-found p{margin-bottom:35px}
.not-found .button{margin-right:25px}
.site-footer{background:#0e2228;color:#f5f6f1;padding:78px 0 22px}
.footer-top{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:11%;padding-bottom:65px}
.footer-logo{font-family:var(--serif);font-size:2.9rem;letter-spacing:-.065em}
.footer-top p{max-width:310px;color:#b7c3be;font-size:.87rem;line-height:1.7;margin-top:20px}
.footer-top h2{font-family:var(--sans);font-size:.72rem;font-weight:740;letter-spacing:.14em;text-transform:uppercase;margin:0 0 22px;color:#d7b688}
.footer-top ul{list-style:none;margin:0;padding:0}
.footer-top li{margin-bottom:10px}
.footer-top ul a,.footer-top address,.footer-top>div>a{font-size:.85rem;color:#c4d1ca;font-style:normal;line-height:1.9}
.footer-top a:hover{color:#fff;text-decoration:underline}
.footer-top>div>a{display:block;margin-top:10px}
.footer-bottom{display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;border-top:1px solid #ffffff28;padding-top:20px;font-size:.68rem;color:#a0b0ab}
.footer-bottom a{border-bottom:1px solid #bda67e}
@media(max-width:1100px){
 .container{width:min(var(--max),calc(100% - 48px))}
 .site-nav{gap:17px}.site-nav ul{gap:14px}.site-nav li a{font-size:.76rem}
 .hero-grid{gap:20px}.hero-art__number{font-size:15vw}.service-grid{grid-template-columns:repeat(2,1fr)}
 .value-grid{grid-template-columns:repeat(2,1fr);gap:30px 45px}
}
@media(max-width:760px){
 .container{width:calc(100% - 38px)}
 .header-inner{min-height:75px}
 .brand-icon{font-size:1.7rem;padding:11px 16px 10px 12px}
 .brand-wordmark{font-size:.82rem}.brand-wordmark small{font-size:.52rem}
 .menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:1px solid #ffffff58;width:43px;height:43px;padding:10px;color:#fff}
 .menu-toggle span{width:20px;height:2px;background:currentColor;display:block}
 .site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--ink);padding:22px 19px 26px;box-shadow:0 15px 30px #03111366;z-index:10;flex-direction:column;align-items:stretch}
 .site-nav.open{display:flex}.site-nav ul{flex-direction:column;align-items:stretch;gap:0}.site-nav li a{display:block;font-size:1rem;padding:13px 10px;border-bottom:1px solid #ffffff2b}.site-nav li a.active{box-shadow:none;background:#ffffff12}
 .site-nav .button{display:inline-flex;width:100%;margin-top:7px}
 h1{font-size:clamp(2.85rem,11vw,4rem)}h2{font-size:clamp(2rem,8vw,2.9rem)}
 .section{padding:68px 0}.section-head{margin-bottom:32px}
 .hero-grid,.split,.inner-hero__grid,.two-cols,.about-grid,.contact-grid,.article-layout{grid-template-columns:1fr;gap:38px}
 .hero-grid{min-height:auto}.hero-copy{padding:72px 0 12px}.hero-copy .lead{margin-top:22px}.hero-proof{margin-top:40px}
 .hero-art{height:300px;align-self:auto;overflow:hidden}.hero-art__halo{width:340px;height:340px;top:-20%;right:10%}.hero-art__number{font-size:10rem;transform:rotate(-9deg)}.hero-art__caption{bottom:18px;left:2%}
 .proof-footnote{font-size:.64rem}
 .service-grid,.insight-grid,.related-grid,.footer-top{grid-template-columns:1fr}
 .service-card{min-height:auto;padding-bottom:50px}.service-card p{max-width:none}
 .value-grid{grid-template-columns:1fr 1fr;gap:24px}
 .value-item{padding-top:18px}.num{margin-bottom:15px}
 .section-heading-inline{display:block}.section-heading-inline>.text-link{margin:0 0 28px}
 .quote-panel{min-height:280px;padding:32px}
 .cta-inner{display:block}.cta-inner .button{margin-top:15px}
 .inner-hero{padding:63px 0 75px}.inner-mark{min-height:130px;transform:none}.inner-mark>span{font-size:7rem}.inner-mark:before,.inner-mark:after{inset:-30% 25%}.inner-mark small{bottom:2px}
 .article-hero{padding:60px 0 45px}.article-layout{padding-top:55px;padding-bottom:70px}.article-aside{position:static}
 .about-portrait{min-height:auto;max-width:500px}.about-portrait img{aspect-ratio:4 / 3.8}
 .contact-grid{gap:45px}.contact-details dl{grid-template-columns:80px 1fr}.form-panel{padding:29px 24px}
 .footer-top{gap:32px;padding-bottom:42px}.site-footer{padding-top:55px}.footer-bottom{flex-direction:column;gap:9px}
}
@media(max-width:480px){
 .container{width:calc(100% - 30px)}
 .hero-copy{padding-top:56px}.hero-actions{align-items:stretch;flex-direction:column;gap:22px}.hero-actions .button{width:100%}.hero-actions .text-link{align-self:start}
 .hero-proof{gap:14px}.hero-proof span{max-width:150px}
 .value-grid{grid-template-columns:1fr}.form-row{grid-template-columns:1fr;gap:0}
 .inner-hero h1{font-size:clamp(2.5rem,11vw,3.25rem)}.inner-mark{display:none}
 .form-panel{padding:26px 18px}.form-panel>h2{font-size:2rem}
 .article-hero h1{font-size:2.6rem}.thankyou h1{font-size:2.9rem}.not-found h1{font-size:3rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* === Iterazione frontend statica v0.2 === */
/* Le pagine sono utilizzabili anche con JavaScript disattivato. */
.about-portrait--placeholder{display:flex;flex-direction:column;min-height:480px;background:linear-gradient(150deg,#d8dfd9,#c7c7b6)}
.portrait-placeholder__frame{margin:18px;min-height:435px;border:1px solid #15343b49;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:38px 18px 28px;background:linear-gradient(135deg, #ced5ca 0%, #e6e5d8 52%, #cad0c4 100%);position:relative;overflow:hidden}
.portrait-placeholder__frame::before{content:'';position:absolute;width:360px;height:360px;border:1px solid #2e494045;border-radius:50%;top:22%;left:50%;transform:translateX(-50%)}
.portrait-placeholder__frame::after{content:'';position:absolute;width:490px;height:490px;border:1px solid #2e49402b;border-radius:50%;top:8%;left:50%;transform:translateX(-50%)}
.portrait-placeholder__eyebrow,.portrait-placeholder__name{font-weight:730;letter-spacing:.2em;font-size:.64rem;z-index:1;text-align:center}
.portrait-placeholder__monogram{font-family:var(--serif);font-size:clamp(7rem,12vw,11rem);line-height:1;color:#1a3a3e;z-index:1;letter-spacing:-.08em;font-weight:500}
.portrait-placeholder__monogram span{color:var(--gold)}
.about-portrait--placeholder small{padding:10px 18px 18px}
.blog-toolbar{display:flex;flex-direction:column;gap:19px;margin:-5px 0 28px}
.blog-toolbar__top{display:flex;align-items:end;justify-content:space-between;gap:20px;flex-wrap:wrap}
.blog-search{width:min(100%,470px)}
.blog-search label{display:block;font-size:.77rem;font-weight:700;letter-spacing:.04em;margin-bottom:8px}
.blog-search input{width:100%;padding:14px 18px;min-height:51px;border:1px solid #bdc8c1;background:#fff;outline-offset:2px;color:var(--ink)}
.blog-search input:focus{border-color:#917044}
.blog-results{font-size:.83rem;color:var(--muted);margin-bottom:10px}
.blog-filters{display:flex;gap:9px;flex-wrap:wrap}
.blog-filter{background:transparent;border:1px solid #bfcac2;color:var(--ink);font-size:.78rem;font-weight:650;padding:9px 16px;border-radius:40px;transition:background .15s,border-color .15s}
.blog-filter:hover{border-color:#5c746b}
.blog-filter.is-active{background:var(--ink);border-color:var(--ink);color:#fff}
.insight-card[hidden],.blog-empty[hidden]{display:none!important}
.blog-empty{margin-top:18px;color:#52615c;background:var(--mist);padding:28px 25px}
/* Indicazione chiara di anteprima nel modulo */
.form-panel .form-feedback.success{background:#e6eee7;padding:16px 18px;color:#305d46;line-height:1.7}
@media(max-width:1050px) and (min-width:761px){
 .site-nav{gap:13px}.site-nav ul{gap:11px}
 .brand{gap:10px}.brand-wordmark{letter-spacing:.14em}
 .header-inner{gap:20px}
}
@media(max-width:920px){
 .menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:transparent;border:1px solid #ffffff58;width:43px;height:43px;padding:10px;color:#fff}
 .menu-toggle span{width:20px;height:2px;background:currentColor;display:block}
 .site-nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--ink);padding:22px 24px 26px;box-shadow:0 15px 30px #03111366;z-index:10;flex-direction:column;align-items:stretch}
 .site-nav.open{display:flex}.site-nav ul{flex-direction:column;align-items:stretch;gap:0}.site-nav li a{display:block;font-size:1rem;padding:13px 10px;border-bottom:1px solid #ffffff2b}.site-nav li a.active{box-shadow:none;background:#ffffff12}
 .site-nav .button{display:inline-flex;width:100%;margin-top:7px}
}
@media(max-width:760px){
 .portrait-placeholder__frame{min-height:350px}.about-portrait--placeholder{min-height:0}
 .blog-toolbar__top{display:block}.blog-results{margin:12px 0 0}
}
/* Progressivo: menu e contenuti restano navigabili anche senza JavaScript. */
.blog-toolbar{display:none}
html.js .blog-toolbar{display:flex}
.form-panel #submit-lead{display:none}
html.js .form-panel #submit-lead{display:inline-flex}
@media(max-width:920px){
 html:not(.js) .header-inner{flex-wrap:wrap;padding-block:16px}
 html:not(.js) .menu-toggle{display:none}
 html:not(.js) .site-nav{display:flex;position:static;order:3;flex:0 0 100%;background:transparent;box-shadow:none;padding:14px 0 4px;gap:14px}
 html:not(.js) .site-nav ul{flex-direction:row;flex-wrap:wrap;gap:8px 18px}
 html:not(.js) .site-nav li a{border:0;font-size:.82rem;padding:5px}
 html:not(.js) .site-nav .button{width:auto;max-width:250px}
}
