/* Theme Name: M3C Studio
Version: 0.6.1
Requires PHP: 8.2
Text Domain: m3c-studio
*/
:root{--ink:#031b50;--deep:#071633;--paper:#f6f7f9;--lime:#d5e0f3;--muted:#526078;--line:#d8dde6}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 system-ui,-apple-system,Segoe UI,sans-serif}a{color:inherit;text-underline-offset:5px}a:hover{text-decoration-thickness:2px}button,input,select{font:inherit}button,a{touch-action:manipulation}:focus-visible{outline:3px solid #4b6dab;outline-offset:5px}.wrap{max-width:1240px;margin:auto;padding:0 36px}.top{background:var(--deep);color:#dce3ef;font-size:12px;letter-spacing:.09em;padding:9px 0}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:99px;border-bottom:1px solid var(--line)}.brand{text-decoration:none;font-size:33px;letter-spacing:-2px;font-weight:800}.brand b{color:#26477d}.brand small{display:block;font-size:9px;letter-spacing:.19em;font-weight:600;margin-top:-5px}.nav{display:flex;gap:26px;align-items:center;font-size:14px}.nav a{text-decoration:none}.nav a:hover{text-decoration:underline}.nav .cta,.button{display:inline-flex;background:var(--ink);color:white;padding:13px 21px;text-decoration:none;border:1px solid var(--ink);border-radius:3px;align-items:center;justify-content:center;gap:18px}.button.secondary{background:transparent;color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.14em;font-weight:700;display:block;margin-bottom:20px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;padding:76px 0 70px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(39px,4.7vw,67px);line-height:1.06;letter-spacing:-.055em;font-weight:600;margin-bottom:25px}h1 em{font:italic 1.05em Georgia,serif;color:#304e83}h2{font-size:clamp(29px,3vw,42px);line-height:1.16;letter-spacing:-.035em;font-weight:600}h3{font-size:22px;line-height:1.3;font-weight:600}.lede{font-size:19px;line-height:1.65;color:var(--muted);max-width:680px}.board{background:var(--deep);color:#f1f4fa;padding:32px;border-radius:5px;box-shadow:18px 18px 0 #e3e7ef;transform:rotate(-1deg)}.board-top{display:flex;justify-content:space-between;border-bottom:1px solid #58657f;padding-bottom:18px;font-size:12px;letter-spacing:.1em}.dot{color:var(--lime)}.big-number{font-size:50px;letter-spacing:-.05em;line-height:1.2;margin-top:26px}.board small{color:#c5cee0}.bars{height:96px;display:flex;align-items:end;gap:12px;margin:20px 0}.bars i{display:block;flex:1;background:#7385a7;border-radius:2px 2px 0 0}.bars i:nth-last-child(-n+3){background:var(--lime)}.board-row{display:flex;justify-content:space-between;border-top:1px solid #58657f;padding:13px 0;font-size:13px}.board-note{font-size:11px;margin:13px 0 0;color:#c4cede}.sectors{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:20px 0;font-size:12px;letter-spacing:.1em}.sectors span:first-child{color:var(--muted)}section.section{padding:76px 0}.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:36px}.section-head p{max-width:420px;color:var(--muted)}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.service{border-top:2px solid var(--ink);padding:24px 0}.service .number{font-size:12px;color:var(--muted);display:block;margin-bottom:27px}.service p{font-size:16px;color:var(--muted)}.service a{font-size:14px;font-weight:600}.emcs{background:var(--deep);color:#fff;padding:60px;border-radius:4px}.emcs .eyebrow{color:var(--lime)}.emcs .lede{color:#cbd4e3}.emcs .button{background:var(--lime);color:var(--deep);border-color:var(--lime)}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:35px}.milestone{padding-top:20px;border-top:1px solid #818181}.milestone time{font-size:25px;letter-spacing:-1px;color:var(--lime)}.milestone h3{font-size:17px;margin:14px 0 9px}.milestone p{font-size:14px;color:#c7d0e0}.source-note{font-size:12px;color:#c7d0e0;margin:28px 0 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px}.list{padding:0;list-style:none}.list li{padding:15px 0;border-bottom:1px solid var(--line)}.list li span{float:right;color:var(--muted)}.callout{background:#e8ecf3;padding:34px;border-left:3px solid #26477d}.footer{border-top:1px solid var(--line);padding:45px 0 25px}.footer-links{display:flex;flex-wrap:wrap;gap:15px;font-size:13px;margin:25px 0}.footer small{font-size:12px;color:var(--muted)}.page-head{padding:65px 0 35px;max-width:890px}.page-head h1{font-size:54px}.detail{padding:0 0 70px}.detail .grid{grid-template-columns:repeat(2,1fr)}.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:35px}.skip{position:absolute;top:-100px;background:white;padding:15px;z-index:99}.skip:focus{top:0}.menu-button{display:none}.preview-label{background:#e8ecf3;padding:10px;text-align:center;font-size:12px}.searchbar{display:flex;gap:12px;flex-wrap:wrap;margin:25px 0}.searchbar input,.searchbar select{border:1px solid #9aa6bb;background:white;padding:12px;max-width:100%}.searchbar input{flex:1}.empty{padding:25px;border:1px dashed #818181}.updates{display:grid;gap:16px}.update{padding:26px;border:1px solid var(--line);background:white}.tag{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#304e83}.update h3{margin:10px 0}.hidden,[hidden]{display:none!important}.content{max-width:850px}.content h2{margin-top:34px;font-size:27px}table{border-collapse:collapse;width:100%;font-size:14px}td,th{padding:12px;text-align:left;border-bottom:1px solid var(--line)}
@media(max-width:900px){.hero{gap:30px}.nav{gap:13px;font-size:12px}.wrap{padding:0 24px}.emcs{padding:35px}.grid{gap:20px}h1{font-size:49px}.board{padding:22px}.split{gap:35px}}@media(max-width:700px){.wrap{padding:0 20px}.top{font-size:10px}.header{min-height:82px;position:relative;flex-wrap:wrap;padding:16px 0}.menu-button{display:block;background:transparent;border:1px solid var(--line);padding:9px 13px;color:var(--ink)}.nav{display:none;width:100%;flex-direction:column;align-items:stretch;font-size:16px;padding:15px 0}.nav.open{display:flex}.hero{grid-template-columns:1fr;padding:43px 0;gap:38px}h1,.page-head h1{font-size:43px}.board{transform:none;margin-right:12px}.grid,.detail .grid,.split,.timeline{grid-template-columns:1fr}.section-head{display:block}.section-head p{margin-top:20px}.sectors{gap:14px;font-size:10px}section.section{padding:48px 0}.emcs{padding:28px 23px}.timeline{gap:20px}.milestone{padding-top:14px}.actions .button{width:100%}.page-head{padding-top:40px}.searchbar{display:block}.searchbar input,.searchbar select{width:100%;margin-bottom:10px}.footer{padding-top:28px}}

/* Identità M3C: blu #031B50 e grigio #818181 del logo originale */
.brand-logo{display:block;width:182px;height:auto}.footer .brand-logo{width:158px}.identity-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:64px;align-items:start;margin:30px 0 65px}.identity-panel{background:#031b50;color:white;padding:36px}.identity-panel h2{font-size:29px;margin:30px 0 13px}.identity-panel p{color:#d1daeb}.identity-panel img{width:190px;max-width:100%}.profile-copy h2{font-size:29px;margin:30px 0 14px}.profile-copy p{color:var(--muted)}.contact-lead{font-size:clamp(22px,2.7vw,36px);line-height:1.4;overflow-wrap:anywhere;letter-spacing:-.035em}.contact-actions{margin:18px 0 30px;display:flex;gap:12px;flex-wrap:wrap}.contact-meta{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:45px 0}.contact-meta article{border-top:1px solid var(--line);padding-top:25px}.contact-meta h2{font-size:24px}.contact-meta address{font-style:normal;color:var(--muted)}.business-data{border-top:1px solid var(--line);padding:28px 0 48px;font-size:14px}.business-data dl{display:grid;grid-template-columns:180px 1fr;gap:10px 25px}.business-data dt{color:var(--muted)}.business-data dd{margin:0;overflow-wrap:anywhere}.footer-info{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:35px;margin:30px 0}.footer-info h2{font-size:14px;letter-spacing:.02em}.footer-info p,.footer-info address{font-size:13px;font-style:normal;line-height:1.8}.footer-info a{overflow-wrap:anywhere}.footer-legal{display:flex;gap:10px 24px;flex-wrap:wrap;font-size:12px;color:var(--muted);padding:18px 0;border-top:1px solid var(--line)}.local-note{font-size:11px;margin-top:12px;color:var(--muted)}
@media(max-width:700px){.brand-logo{width:158px}.identity-layout{grid-template-columns:1fr;gap:30px;margin-top:10px}.identity-panel{padding:28px}.contact-meta,.footer-info{grid-template-columns:1fr;gap:24px}.business-data dl{grid-template-columns:1fr;gap:3px}.business-data dd{margin-bottom:14px}.contact-lead{font-size:24px}.contact-actions .button{width:100%}}

/* Logo originale del titolare: file integro, nessun ritaglio o ricolorazione. */
.brand-logo{width:220px;height:auto;max-width:100%}.header{min-height:140px}.footer .brand-logo{width:210px}.identity-panel>img{width:100%;max-width:330px;height:auto;display:block;background:var(--paper);padding:12px}.brand{display:block;flex-shrink:0}
@media(max-width:700px){.brand-logo{width:180px}.header{min-height:122px;padding:10px 0}.footer .brand-logo{width:190px}.identity-panel>img{max-width:100%}}

/* Catalogo software M3C: navigazione e schede per settore. */
.software-page{padding-bottom:70px}.software-page>.lede{max-width:840px}.software-nav{display:flex;flex-wrap:wrap;gap:10px;margin:30px 0}.software-nav a{padding:9px 15px;border:1px solid var(--line);border-radius:30px;font-size:14px;text-decoration:none;background:white}.software-nav a:hover{background:var(--ink);color:white}.software-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:35px 0}.software-tile{background:white;border:1px solid var(--line);border-top:3px solid var(--ink);padding:27px;text-decoration:none;display:flex;flex-direction:column}.software-tile h2{font-size:25px;margin:0 0 16px}.software-tile p{color:var(--muted);font-size:16px}.software-tile .eyebrow{font-size:10px}.software-link{margin-top:auto;font-size:13px;font-weight:600}.software-tile:hover{background:#e8ecf3}.software-scope{font-size:14px;color:var(--muted);max-width:900px;margin-bottom:55px}.software-sector{border-top:1px solid var(--line);padding:48px 0;scroll-margin-top:30px}.software-sector h2{font-size:36px}.software-sector-head .lede{max-width:none}.software-facts{display:grid;grid-template-columns:1fr 1fr;gap:35px;background:#e8ecf3;padding:28px;margin:25px 0}.software-facts h3{font-size:18px}.software-facts p{font-size:16px;margin:0}.software-sector summary{cursor:pointer;font-size:21px;font-weight:600;padding:15px 0}.software-functions{padding-left:23px;max-width:960px}.software-functions li{padding:8px 0 8px 8px}.software-support{font-size:15px;color:var(--muted);margin-top:25px}.software-page .callout h2{font-size:30px}@media(max-width:900px){.software-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.software-overview,.software-facts{grid-template-columns:1fr}.software-tile{padding:23px}.software-facts{padding:23px;gap:25px}.software-sector h2{font-size:29px}.software-sector{padding:32px 0}.software-nav a{font-size:13px}.software-page .callout{padding:25px}}

.m3c-contact{margin:40px 0}.m3c-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.m3c-contact label{display:block;margin:12px 0}.m3c-contact input:not([type=checkbox]),.m3c-contact textarea{display:block;width:100%;max-width:100%;padding:12px;background:white;color:var(--ink);border:1px solid #818181;border-radius:3px;font:inherit}.m3c-contact textarea{resize:vertical}.m3c-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}@media(max-width:700px){.m3c-form-grid{grid-template-columns:1fr}.m3c-contact{padding:24px}.m3c-contact button{width:100%}}

.m3c-archive-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:end}.m3c-archive-filters label{display:block;min-width:0}.m3c-archive-filters input,.m3c-archive-filters select{display:block;width:100%;min-width:0;box-sizing:border-box;padding:10px;font:inherit;background:white;color:#031b50;border:1px solid #818181}@media(max-width:700px){.m3c-archive-filters{grid-template-columns:1fr}}

.m3c-focus,.m3c-document-timeline{margin:55px 0;padding-top:35px;border-top:1px solid var(--line)}.m3c-focus-grid{display:grid;grid-template-columns:2fr 1fr;gap:38px}.m3c-focus-card{padding:18px 0;border-bottom:1px solid var(--line)}.m3c-focus-card h4{font-size:21px;margin:0 0 12px}.m3c-focus-card p{font-size:14px}.m3c-document-timeline ol{list-style:none;margin:28px 0;padding:0 0 0 24px;border-left:2px solid #818181}.m3c-document-timeline li{padding:0 0 28px}.m3c-document-timeline time{font-weight:600;color:#031b50}.m3c-document-timeline select{max-width:100%;padding:10px;font:inherit}.m3c-focus a,.m3c-document-timeline a{overflow-wrap:anywhere}@media(max-width:700px){.m3c-focus-grid{grid-template-columns:1fr;gap:20px}}

/* Progressive mobile navigation: links remain available if scripts fail. */
@media(max-width:700px){
 .header:not(.menu-ready) .menu-button{display:none}
 .header:not(.menu-ready) .nav{display:flex}
 .nav a{min-height:44px;display:flex;align-items:center}
 h1,.page-head h1{font-size:clamp(32px,7vw,43px);overflow-wrap:anywhere}
 .content,.grid>*,.split>*,.hero>*{min-width:0}
 .content a,.update a{overflow-wrap:anywhere}
}
