:root{color-scheme:light;--ink:#1b252c;--muted:#626c72;--line:#e2e2de;--paper:#fbfaf8;--soft:#f0eeea;--red:#df3038;--red-dark:#b51f29;--green:#2d7553;--night:#17232b;--blue:#284957;--font-body:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--font-display:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:16px;line-height:1.65}a{color:inherit}a:focus-visible,button:focus-visible{outline:3px solid #e9a43a;outline-offset:3px}.skip-link{position:absolute;left:-999px;top:0;z-index:20;background:#fff;padding:12px 18px}.skip-link:focus{left:12px}
.draft-notice{display:flex;align-items:center;justify-content:center;gap:12px;padding:8px 18px;background:#fff0d6;color:#5f451c;font-size:12px;text-align:center}.draft-notice span{padding:2px 8px;border-radius:20px;background:#f5d393;color:#47320f;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.topbar{min-height:36px;padding:6px max(24px,calc((100% - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:20px;background:#111a20;color:#d9dfe1;font-size:11px}.topbar>div{display:flex;gap:22px}.topbar a{text-decoration:none}.topbar a:last-child{color:#ffced0}.site-header{position:relative;z-index:3;width:min(1240px,calc(100% - 48px));height:94px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;width:206px;flex-shrink:0;overflow:hidden}.brand img{display:block;width:100%;height:auto}.site-header nav{display:flex;align-items:center;gap:clamp(17px,3vw,40px)}.site-header nav a{text-decoration:none;color:#46535a;font-size:13px;font-weight:700;white-space:nowrap}.site-header nav a:hover,.footer-contact a:hover,.footer-social a:hover{color:var(--red-dark)}.site-header nav .nav-contact{padding:11px 17px;border-radius:4px;background:var(--red);color:#fff}.nav-contact span{margin-left:6px}
.hero{width:min(1240px,calc(100% - 48px));min-height:540px;margin:8px auto 58px;padding:clamp(38px,6.7vw,82px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:center;gap:clamp(38px,7vw,100px);overflow:hidden;position:relative;border-radius:8px;background:linear-gradient(119deg,#17232b 0%,#1d303a 65%,#284957 100%);color:#fff}.hero::before{content:'';position:absolute;right:-145px;top:-248px;width:650px;height:650px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 100px rgba(255,255,255,.025);pointer-events:none}.hero::after{content:'';position:absolute;right:0;bottom:0;width:34%;height:6px;background:linear-gradient(90deg,#22854c,#f4f0e9,#df3038)}.hero-copy,.contact-card{position:relative;z-index:1}.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 17px;color:#717a7e;font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.hero .eyebrow{color:#b7c5ca}.eyebrow-dot{width:8px;height:8px;display:inline-block;border-radius:50%;background:#53b777}.hero .eyebrow-dot{animation:mabi-online-pulse 1.9s ease-in-out infinite}@keyframes mabi-online-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(83,183,119,.38)}50%{opacity:.82;box-shadow:0 0 0 5px rgba(83,183,119,0)}}.hero h1{max-width:690px;margin:0 0 22px;font-family:var(--font-display);font-size:clamp(43px,6vw,72px);font-weight:800;letter-spacing:-.065em;line-height:1.02}.hero h1 em{color:#ff666d;font-style:normal}.hero-intro{max-width:580px;margin-bottom:28px;color:#d6dee1;font-size:16px;line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:0 20px;border:0;border-radius:4px;font-size:13px;font-weight:800;text-decoration:none;transition:transform .16s ease,background .16s ease}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--red);color:#fff}.button-primary:hover{background:var(--red-dark)}.button-secondary{border:1px solid #d5d8d7;background:#fff;color:var(--ink)}.button-whatsapp{background:#208750;color:#fff}.button-whatsapp:hover{background:#166b3e}.hero-microcopy{margin:15px 0 0;color:#bbc4c7;font-size:11px}.contact-card{max-width:370px;width:100%;justify-self:end;padding:25px;background:#fff;color:var(--ink);border-radius:7px;box-shadow:0 20px 55px rgba(0,0,0,.23)}.card-mark{width:49px;height:49px;margin-bottom:19px;display:grid;place-items:center;border:1px solid #efc5c7;border-radius:4px;background:#fff7f7;color:var(--red);font-family:var(--font-display);font-size:22px;font-weight:800}.card-label{margin-bottom:3px;color:#777f83;font-size:11px}.contact-card h2{margin-bottom:8px;font-family:var(--font-display);font-size:25px;letter-spacing:-.04em}.contact-card address{color:#4d575c;font-size:13px;font-style:normal;line-height:1.7}.map-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:13px}.map-links a{color:#36484f;font-size:11px;font-weight:700;text-decoration-color:#a9b1b4;text-underline-offset:3px}.map-links a span{color:var(--red)}.card-divider{height:1px;margin:18px 0 11px;background:#e5e6e4}.contact-line{display:block;padding:4px 0;color:var(--ink);font-size:13px;font-weight:700;text-decoration:none}.contact-line:hover{color:var(--red-dark)}
.trust-strip{width:min(1240px,calc(100% - 48px));margin:0 auto 104px;padding:22px 28px;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 8px 28px rgba(27,37,44,.035)}.trust-strip>div{display:flex;align-items:center;gap:14px;padding:5px 22px;border-right:1px solid var(--line)}.trust-strip>div:first-child{padding-left:0}.trust-strip>div:last-child{border-right:0}.strip-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:#f9e6e6;color:var(--red);font-family:var(--font-display);font-size:11px;font-weight:800}.trust-strip strong,.trust-strip small{display:block}.trust-strip strong{font-size:13px}.trust-strip small{margin-top:2px;color:var(--muted);font-size:11px}
.section-wrap{width:min(1240px,calc(100% - 48px));margin-right:auto;margin-left:auto}.services{margin-bottom:100px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:30px}.section-heading .eyebrow{margin-bottom:12px}.section-heading h2,.contact-message h2{margin-bottom:0;font-family:var(--font-display);font-size:clamp(31px,4.2vw,47px);font-weight:800;letter-spacing:-.06em;line-height:1.12}.section-lead{max-width:440px;margin-bottom:3px;color:var(--muted);font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{min-height:245px;padding:22px;border:1px solid var(--line);border-radius:6px;position:relative;background:#fff;box-shadow:0 5px 16px rgba(27,37,44,.025);transition:transform .18s ease,box-shadow .18s ease}.service-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(27,37,44,.09)}.service-card::before{content:'';position:absolute;inset:0 auto 0 0;width:4px;border-radius:6px 0 0 6px;background:var(--red);transform:scaleY(0);transform-origin:bottom;transition:transform .2s ease}.service-card:hover::before{transform:scaleY(1)}.service-number{width:33px;height:33px;display:grid;place-items:center;border-radius:50%;background:#fbe9e9;color:var(--red);font-family:var(--font-display);font-size:10px;font-weight:800}.service-card h3{margin:21px 0 8px;font-family:var(--font-display);font-size:18px;letter-spacing:-.04em;line-height:1.2}.service-card p{min-height:61px;margin-bottom:12px;color:var(--muted);font-size:12px;line-height:1.6}.service-link{color:var(--ink);font-size:12px;font-weight:800;text-decoration-color:#c6c8c9;text-underline-offset:4px}.service-link span{margin-left:5px;color:var(--red)}

.patent-feature{margin:0;padding:68px max(24px,calc((100% - 1240px)/2));display:grid;grid-template-columns:170px 1fr;gap:clamp(32px,8vw,100px);align-items:center;background:#eee8e5}.patent-symbol{width:142px;height:142px;display:grid;place-items:center;border:1px solid #d5c6c1;border-radius:50%;background:#f8f5f2;color:var(--red);font-family:var(--font-display);font-size:40px;font-weight:800;letter-spacing:-.08em}.patent-symbol sup{margin:-42px 0 0 -7px;font-size:12px;letter-spacing:0}.patent-copy{max-width:750px}.patent-copy .eyebrow{margin-bottom:10px}.patent-copy h2{margin-bottom:12px;font-family:var(--font-display);font-size:clamp(30px,4vw,44px);letter-spacing:-.06em}.patent-copy h2 sup{color:var(--red);font-size:14px;letter-spacing:0}.patent-copy>p:not(.eyebrow){max-width:690px;margin-bottom:15px;color:#5d6063;font-size:14px}.patent-copy .territory-link{color:var(--ink)}
.territory{padding:68px max(24px,calc((100% - 1240px)/2));background:var(--night);color:#fff}.territory-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,9vw,140px);align-items:start}.eyebrow-light{color:#b3b6b8}.territory h2{max-width:490px;margin:0;font-family:var(--font-display);font-size:clamp(34px,4.8vw,54px);letter-spacing:-.06em;line-height:1.1}.territory-copy{max-width:510px;color:#c5c7c9;font-size:14px}.territory-copy p{margin-bottom:14px}.territory-link{display:inline-flex;gap:12px;margin-top:8px;color:#fff;font-size:12px;font-weight:800;text-decoration-color:rgba(255,255,255,.42);text-underline-offset:5px}.territory-link span{color:#ff7077}.territory-rule{width:100%;height:3px;margin-top:45px;background:rgba(255,255,255,.14)}.territory-rule span{display:block;width:23%;height:100%;background:var(--red)}
.contact-section{min-height:280px;padding-top:75px;padding-bottom:75px;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-message{max-width:570px}.contact-message .eyebrow{margin-bottom:10px}.contact-message h2{margin-bottom:12px}.contact-message p:last-child{max-width:500px;margin:0;color:var(--muted)}.contact-actions{display:flex;flex-direction:column;align-items:stretch;gap:9px;min-width:250px}
.site-footer{padding:27px max(24px,calc((100% - 1240px)/2)) 18px;border-top:1px solid var(--line);background:#f2f0ec}.footer-main{display:flex;align-items:center;gap:30px}.footer-brand{color:var(--red);font-family:var(--font-display);font-size:25px;font-weight:800;letter-spacing:-.08em;text-decoration:none}.footer-brand span{margin-left:2px;font-size:9px;vertical-align:top}.footer-main p{margin:0;color:var(--muted);font-size:11px;line-height:1.6}.footer-contact,.footer-social{display:flex;flex-wrap:wrap;gap:12px 22px}.footer-contact{margin-top:22px;padding-top:18px;border-top:1px solid #deddd8}.footer-contact a,.footer-social a{color:#49545a;font-size:11px;font-weight:700;text-decoration:none}.footer-social{margin-top:13px}.footer-contact{align-items:center}.footer-social a{display:inline-flex;align-items:center;gap:5px}.social-outbound{color:#9ba1a3;font-size:10px;font-weight:500;line-height:1;transition:color .18s ease}.footer-social a:hover .social-outbound{color:var(--red)}.footer-bottom{margin-top:17px;padding-top:12px;display:flex;justify-content:space-between;gap:15px;border-top:1px solid #deddd8;color:#82898b;font-size:10px}.footer-bottom a{color:#586267;text-decoration:none}
.breadcrumbs{width:min(1240px,calc(100% - 48px));margin:18px auto 0;color:#74777a;font-size:11px}.breadcrumbs a{text-decoration-color:#b9bbbd;text-underline-offset:3px}.content-hero{width:min(1240px,calc(100% - 48px));margin:9px auto 0;padding:clamp(40px,6vw,72px);border-radius:7px;background:linear-gradient(120deg,#f0eeea,#f8f6f2)}.content-hero .eyebrow{margin-bottom:13px}.content-hero h1{max-width:900px;margin:0 0 15px;font-family:var(--font-display);font-size:clamp(38px,5.5vw,62px);font-weight:800;letter-spacing:-.065em;line-height:1.05}.content-hero p:last-child{max-width:780px;margin:0;color:#555d61;font-size:15px;line-height:1.8}.content-body{width:min(900px,calc(100% - 48px));margin:0 auto;padding:54px 0 74px}.content-body h2{margin:43px 0 14px;font-family:var(--font-display);font-size:clamp(26px,3.4vw,37px);font-weight:800;letter-spacing:-.05em;line-height:1.15}.content-body h2:first-child{margin-top:0}.content-body h3{margin:25px 0 8px;font-family:var(--font-display);font-size:19px;letter-spacing:-.03em}.content-body p,.content-body li{color:#535b60;font-size:14px;line-height:1.85}.content-body ul{padding-left:22px}.content-body li{margin:5px 0}.content-body strong{color:#282f33}.content-body a:not(.button){text-decoration-color:#c7c9ca;text-underline-offset:4px}.content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:23px 0 34px}.content-card{padding:20px;border:1px solid var(--line);border-radius:5px;background:#fff}.content-card h3{margin-top:0}.content-card p:last-child{margin-bottom:0}.note-box{margin:24px 0;padding:17px 21px;border-left:3px solid var(--red);background:var(--soft)}.note-box p:last-child{margin-bottom:0}.faq-list{margin-top:20px;border-top:1px solid var(--line)}.faq-item{padding:18px 0;border-bottom:1px solid var(--line)}.faq-item h3{margin:0 0 6px;font-size:16px}.faq-item p{margin:0}.cta-band{margin-top:40px;padding:26px;display:flex;justify-content:space-between;align-items:center;gap:24px;border-radius:6px;background:var(--night);color:#fff}.cta-band h2{margin:0 0 6px;font-family:var(--font-display);font-size:24px;letter-spacing:-.04em}.cta-band p{margin:0;color:#c5c7c9;font-size:12px}.cta-band .button{flex-shrink:0}.page-contact{padding:36px 24px;background:#f0eeea}.page-contact-inner{width:min(900px,100%);margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px}.page-contact h2{margin:0 0 7px;font-family:var(--font-display);font-size:29px;letter-spacing:-.05em}.page-contact p{margin:0;color:var(--muted);font-size:13px}.page-contact .hero-actions{flex-shrink:0}
@media(max-width:900px){.hero{grid-template-columns:1fr;gap:34px}.contact-card{justify-self:start;max-width:500px}.service-grid{grid-template-columns:repeat(2,1fr)}.section-heading{align-items:start;flex-direction:column;gap:15px}.territory-inner{grid-template-columns:1fr;gap:24px}.patent-feature{grid-template-columns:140px 1fr;gap:30px}}
@media(max-width:600px){.draft-notice{align-items:flex-start;flex-direction:column;gap:5px;padding:8px 15px;font-size:10px}.topbar{padding:7px 16px;font-size:10px}.topbar>span{display:none}.topbar>div{width:100%;justify-content:space-between;gap:12px}.site-header{width:calc(100% - 28px);height:auto;min-height:76px;padding:10px 0;gap:8px}.brand{width:110px}.site-header nav{max-width:calc(100% - 116px);display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px 9px}.site-header nav a{font-size:9px;line-height:1.15}.site-header nav .nav-contact{padding:5px 7px}.hero{width:calc(100% - 20px);min-height:0;margin:5px auto 38px;padding:32px 22px;border-radius:5px;gap:27px}.hero::before{right:-315px;top:-265px}.hero h1{font-size:clamp(39px,11.5vw,54px)}.hero-intro{font-size:14px;line-height:1.75}.hero-actions{flex-direction:column}.button{width:100%;min-height:46px}.contact-card{padding:21px}.trust-strip{width:calc(100% - 28px);margin-bottom:66px;padding:13px 18px;grid-template-columns:1fr}.trust-strip>div,.trust-strip>div:first-child{padding:11px 0;border-right:0;border-bottom:1px solid var(--line)}.trust-strip>div:last-child{border-bottom:0}.section-wrap{width:calc(100% - 28px)}.services{margin-bottom:66px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:19px}.service-card p{min-height:0}.patent-feature{padding:48px 24px;grid-template-columns:1fr;gap:20px}.patent-symbol{width:105px;height:105px;font-size:31px}.patent-symbol sup{margin-top:-32px;font-size:9px}.territory{padding:49px 24px}.territory-rule{margin-top:32px}.contact-section{padding-top:55px;padding-bottom:55px;align-items:stretch;flex-direction:column;gap:22px}.contact-actions{min-width:0}.site-footer{padding:22px 16px 16px}.footer-main{align-items:flex-start;gap:17px}.footer-contact,.footer-social{gap:12px 16px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:6px}.breadcrumbs,.content-hero{width:calc(100% - 20px)}.breadcrumbs{margin-top:13px}.content-hero{padding:32px 22px;border-radius:5px}.content-hero h1{font-size:clamp(37px,10vw,50px)}.content-hero p:last-child{font-size:14px}.content-body{width:calc(100% - 30px);padding:39px 0 54px}.content-grid{grid-template-columns:1fr}.cta-band,.page-contact-inner{align-items:stretch;flex-direction:column}.cta-band{padding:21px}.page-contact-inner{gap:17px}.page-contact .hero-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){.hero .eyebrow-dot{animation:none}html{scroll-behavior:auto}*,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* Original visual and accessible inquiry flow */
.hero-art{position:absolute;z-index:0;right:clamp(250px,27vw,375px);bottom:-24px;width:clamp(190px,23vw,285px);height:auto;opacity:.62;pointer-events:none;filter:drop-shadow(0 18px 20px rgba(0,0,0,.16))}
.request-hero{min-height:320px;grid-template-columns:minmax(0,1fr) 180px;gap:40px;background:linear-gradient(118deg,#17232b 0%,#1d303a 64%,#284957 100%)}
.request-hero .eyebrow{color:#b7c5ca}
.request-hero h1{color:#fff}
.request-hero p:last-child{color:#d6dee1}
.request-hero img{width:160px;height:auto;justify-self:center;filter:drop-shadow(0 14px 20px rgba(0,0,0,.18))}
.request-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(250px,.65fr);gap:24px;margin-top:54px;margin-bottom:90px;align-items:start}
.request-form-panel,.request-aside{padding:clamp(22px,4vw,38px);border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 8px 26px rgba(27,37,44,.04)}
.request-form-panel h2,.request-aside h2{margin:0 0 12px;font-family:var(--font-display);font-size:clamp(25px,3vw,34px);line-height:1.15;letter-spacing:-.045em}
.form-intro,.request-aside>p:not(.eyebrow){color:var(--muted);font-size:13px}
.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin-top:25px}
.form-field{min-width:0;display:flex;flex-direction:column;gap:7px}
.form-field label{font-size:13px;font-weight:750}
.form-field label [aria-hidden="true"]{color:var(--red-dark)}
.optional{color:var(--muted);font-size:11px;font-weight:500}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:47px;padding:11px 12px;border:1px solid #b9c1c3;border-radius:4px;background:#fff;color:var(--ink);font:inherit;font-size:14px}
.form-field textarea{min-height:125px;resize:vertical}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:3px solid rgba(45,117,83,.2);border-color:var(--green)}
.form-field small{color:var(--muted);font-size:11px;line-height:1.5}
.form-field-wide{grid-column:1/-1}
.form-privacy{margin:23px 0 18px;padding:15px 17px;border-left:3px solid var(--green);background:#f0f5f1}
.form-privacy p{margin:0;color:#354b40;font-size:12px;line-height:1.6}
.form-privacy a,.form-fallback a{font-weight:750;text-underline-offset:3px}
.form-submit{min-height:52px;padding-inline:22px;cursor:pointer}
.form-fallback{margin:13px 0 0;color:var(--muted);font-size:11px}
.form-status{min-height:1.5em;margin:8px 0 0;color:#354b40;font-size:12px}
.request-aside{position:sticky;top:20px;background:#f0eeea}
.request-aside .eyebrow{margin-bottom:9px}
.request-aside .button{width:100%;margin:9px 0 13px}
.direct-link{display:block;margin-top:10px;font-size:13px;font-weight:750;text-decoration-thickness:1px;text-underline-offset:3px}
.legal-copy h2{margin-top:36px}
.legal-copy .note-box{margin-top:0}
.footer-bottom>span:last-child{display:flex;gap:8px;flex-wrap:wrap}
@media(max-width:900px){.hero-art{right:245px;opacity:.43}.request-layout{grid-template-columns:1fr}.request-aside{position:static}.request-aside .button{max-width:320px}}
@media(max-width:600px){.hero-art{display:none}.request-hero{min-height:0;grid-template-columns:1fr;padding:32px 22px}.request-hero img{display:none}.request-layout{width:calc(100% - 28px);margin-top:28px;margin-bottom:60px;gap:15px}.request-form-panel,.request-aside{padding:21px}.form-grid{grid-template-columns:1fr;gap:14px}.form-field-wide{grid-column:auto}.form-submit{width:100%}.footer-bottom>span:last-child{flex-direction:column;gap:5px}}

/* Product examples and maintenance editorial panels */
.catalog-intro{margin:18px 0 16px;padding:14px 17px;border-left:3px solid var(--green);background:#f1f5f1;color:#45534d;font-size:12px;line-height:1.65}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:22px 0 34px}
.product-card{min-width:0;padding:18px;border:1px solid var(--line);border-radius:6px;background:linear-gradient(160deg,#fff 60%,#f8f6f2);box-shadow:0 5px 18px rgba(27,37,44,.035)}
.product-card-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:13px}
.product-type{color:#687377;font-size:9px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.product-code{padding:5px 8px;border-radius:3px;background:#fbe9e9;color:#9d2930;font-size:10px;font-weight:850;white-space:nowrap}
.product-card h3{margin:0 0 7px;font-family:var(--font-display);font-size:17px;line-height:1.25;letter-spacing:-.035em}
.product-card p{margin:0 0 13px;color:#626a6e;font-size:12px;line-height:1.65}
.product-action{display:inline-flex;align-items:center;gap:6px;color:#263238;font-size:11px;font-weight:800;text-decoration-thickness:1px;text-underline-offset:4px}
.product-action span{color:var(--red)}
.process-panel{margin:28px 0 35px;padding:clamp(18px,3vw,27px);border:1px solid #e2dfd8;border-radius:8px;background:linear-gradient(130deg,#f7f3ec,#fff 65%)}
.process-panel h3{margin:0 0 7px;font-family:var(--font-display);font-size:22px;letter-spacing:-.04em}
.process-panel>p{margin:0;color:#596267;font-size:12px;line-height:1.7}
.process-layout{display:grid;grid-template-columns:minmax(210px,.82fr) minmax(0,1.18fr);gap:24px;align-items:center;margin-top:18px}
.process-figure{margin:0;padding:12px;border-radius:6px;background:#fff}
.process-figure img{display:block;width:100%;height:auto;max-height:350px;object-fit:contain}
.process-figure figcaption{margin-top:8px;color:#747a7c;font-size:10px;line-height:1.5}
.maintenance-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.maintenance-step{min-height:112px;padding:14px;border:1px solid #e5e4df;border-radius:5px;background:rgba(255,255,255,.82)}
.maintenance-step b{width:27px;height:27px;display:grid;place-items:center;margin-bottom:9px;border-radius:50%;background:#e8f1eb;color:#306849;font-family:var(--font-display);font-size:10px}
.maintenance-step h4{margin:0 0 5px;color:#293238;font-size:12px;line-height:1.35}
.maintenance-step p{margin:0;color:#687176;font-size:10px;line-height:1.55}
.product-note{margin:18px 0;padding:13px 16px;border:1px dashed #c6c9c5;border-radius:4px;color:#5a6367;font-size:11px;line-height:1.6}
.catalog-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin:16px 0 25px}
.catalog-links a{font-size:11px;font-weight:800}
@media(max-width:900px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.process-layout{grid-template-columns:1fr 1.15fr;gap:16px}}
@media(max-width:600px){.product-grid{grid-template-columns:1fr}.product-card{padding:17px}.process-layout{grid-template-columns:1fr}.process-figure img{max-height:270px}.maintenance-steps{grid-template-columns:1fr 1fr}.maintenance-step{min-height:0;padding:12px}}


/* Original category taxonomy, responsive anchors and CC0 vector thumbnails */
.topic-nav{width:min(900px,calc(100% - 48px));margin:24px auto 0;display:flex;gap:9px;flex-wrap:wrap}.topic-nav a{padding:9px 13px;border:1px solid #dfe1de;border-radius:3px;background:#fff;color:#35434a;font-size:11px;font-weight:750;text-decoration:none}.topic-nav a:hover{border-color:#bdc5c2;background:#f4f1ec}.body-intro{padding:0 0 20px;border-bottom:1px solid var(--line);font-size:16px!important}.subcat-kicker{display:block;margin-bottom:7px;color:var(--red-dark);font-size:9px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}.reference-list{padding-left:20px}.reference-list li{margin:10px 0}.reference-list a{font-weight:750}.service-visual{width:100%;height:105px;display:block;object-fit:contain;margin-bottom:13px;border-radius:4px;background:#f4f1ec}.service-card h3{margin-top:15px}.service-sub-links{margin:0 0 12px;padding:0;display:flex;flex-wrap:wrap;gap:6px;list-style:none}.service-sub-links li{margin:0}.service-sub-links a,.service-sub-links span{display:inline-block;padding:4px 7px;border-radius:3px;background:#f3f1ed;color:#4a555a;font-size:10px;text-decoration:none}.service-sub-links a:hover{background:#e9e4db;color:#1b252c}.service-card p{min-height:72px}
@media(max-width:900px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-nav{width:calc(100% - 32px)}}
@media(max-width:600px){.service-grid{grid-template-columns:1fr}.service-visual{height:120px}.service-card p{min-height:0}.topic-nav{width:calc(100% - 30px);flex-wrap:nowrap;overflow-x:auto;padding:0 0 8px;scrollbar-width:thin}.topic-nav a{flex:0 0 auto}.body-intro{font-size:15px!important}}

/* Service cards: centered typography and consistent vertical rhythm */
.service-card{display:flex;flex-direction:column;align-items:center;text-align:center}
.service-card .service-visual{flex:0 0 105px}
.service-card .service-number{flex:0 0 33px}
.service-card h3{width:100%;min-height:44px;display:flex;align-items:center;justify-content:center;margin:15px 0 7px}
.service-card p{width:100%;min-height:76px;display:flex;align-items:flex-start;justify-content:center;margin:0 0 12px}
.service-sub-links{width:100%;min-height:46px;align-content:flex-start;justify-content:center;margin:0 0 12px}
.service-card .service-link{margin-top:auto}
@media(max-width:600px){.service-card h3{min-height:0}.service-card p{min-height:0}.service-sub-links{min-height:0;margin-bottom:14px}}


/* Indexable bridge page: maintenance notice plus useful information for visitors */
.maintenance-banner{min-height:42px;padding:9px 20px;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff0d6;color:#5e451c;font-size:12px;text-align:center}.maintenance-banner strong{font-weight:850}.maintenance-indicator{width:8px;height:8px;flex:0 0 8px;border-radius:50%;background:#c8871a}.bridge-hero{margin-top:8px}.bridge-services{margin-top:0}.bridge-intruder{padding:42px max(24px,calc((100% - 1240px)/2));display:grid;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:30px;background:#eee8e5}.bridge-intruder-symbol{width:88px;height:88px;display:grid;place-items:center;border:1px solid #d5c6c1;border-radius:50%;background:#f8f5f2;color:var(--red);font-family:var(--font-display);font-size:28px;font-weight:800;letter-spacing:-.08em}.bridge-intruder-symbol sup{margin:-29px 0 0 -6px;font-size:8px;letter-spacing:0}.bridge-intruder h2{margin:0 0 7px;font-family:var(--font-display);font-size:clamp(26px,3.4vw,38px);letter-spacing:-.05em}.bridge-intruder p:not(.eyebrow){max-width:760px;color:#5d6063;font-size:14px}.bridge-intruder .eyebrow{margin-bottom:5px}.bridge-intruder .territory-link{color:var(--ink)}.bridge-contact{padding-top:70px;padding-bottom:70px}.bridge-territory{margin-bottom:0}
@media(max-width:600px){.maintenance-banner{padding:9px 14px;font-size:10px;line-height:1.45}.bridge-intruder{padding:40px 22px;grid-template-columns:1fr;gap:17px}.bridge-intruder-symbol{width:70px;height:70px;font-size:23px}.bridge-intruder-symbol sup{margin-top:-24px}.bridge-contact{padding-top:50px;padding-bottom:50px}}

.catalog-subheading{margin:28px 0 4px;font-family:var(--font-display);font-size:18px;line-height:1.3;letter-spacing:-.025em}.catalog-subheading+.product-grid{margin-top:14px}

/* Transparent MABI logo for the header; source logo file remains unchanged. */
.brand{height:64px}.brand img{height:64px;object-fit:cover;object-position:center}
.download-card{margin:25px 0;padding:clamp(20px,3vw,30px);display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--line);border-radius:7px;background:linear-gradient(135deg,#f7f3ec,#fff)}.download-card h2{margin:0 0 8px;font-family:var(--font-display);font-size:23px;letter-spacing:-.035em}.download-card p:not(.eyebrow){margin:0;color:#5e676b;font-size:13px;line-height:1.6}.download-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px;flex:0 0 auto}.download-actions .direct-link{font-size:11px;font-weight:750}
@media(max-width:600px){.download-card{align-items:flex-start;flex-direction:column;gap:16px}.download-actions{width:100%}.download-actions .button{width:100%}}

/* Keep the supplied MABI mark transparent and crop only its empty canvas. */
.brand img{background:transparent;object-fit:cover;object-position:center}
/* Intruder Lockout image from the one-page MABI source PDF. */
.intruder-cover{width:100%;max-width:760px;margin:23px auto 32px;overflow:hidden;border:0;border-radius:0;background:transparent;box-shadow:none}.intruder-cover img{display:block;width:min(100%,650px);height:auto;margin:0 auto;object-fit:contain}.intruder-cover figcaption{padding:8px 13px;color:#687176;background:transparent;font-size:10px;line-height:1.5;text-align:center}.bridge-intruder{grid-template-columns:minmax(190px,270px) minmax(0,1fr)}.bridge-intruder-art{display:block;width:100%;max-width:430px;height:auto;aspect-ratio:1993/657;object-fit:contain;object-position:center;border:0;border-radius:0;background:transparent}.bridge-intruder h2{margin-top:0}
@media(max-width:600px){.bridge-intruder-art{width:min(100%,360px)}}

/* Balanced contact panels, clear territory messaging, and privacy form controls. */
.bridge-contact{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center}
.bridge-contact .contact-message{width:min(100%,800px);max-width:800px}
.bridge-contact .contact-message .eyebrow{justify-content:center}
.bridge-contact .contact-message h2{max-width:900px;margin:0 auto 12px;text-wrap:balance}
.bridge-contact .contact-message p:last-child{max-width:640px;margin-inline:auto}
.bridge-contact .contact-actions{min-width:0;display:flex;flex-direction:row;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}
.bridge-contact .contact-actions .button{width:auto;min-width:190px}
.section-heading h2,.contact-message h2,.content-hero h1,.content-body h2,.page-contact h2{text-wrap:balance}
.content-hero h1{max-width:1000px}
.coverage-note{margin:35px 0;padding:24px 27px;border-left:3px solid var(--green);background:#f1f5f1}
.coverage-note .eyebrow{margin-bottom:7px}
.coverage-note h2{margin:0 0 7px!important;font-size:clamp(22px,2.8vw,30px)!important}
.coverage-note p:last-child{margin:0}
.privacy-ack{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;color:#354b40;font-size:12px;line-height:1.55}
.privacy-ack input{width:18px;height:18px;flex:0 0 18px;margin:1px 0 0;accent-color:var(--green)}
.privacy-ack a{font-weight:750;text-underline-offset:3px}
.privacy-ack span{color:var(--red-dark)}
.form-trap{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.coverage-note p{max-width:720px}
.message-hero{min-height:340px;display:flex;flex-direction:column;justify-content:center}
.message-hero h1{margin-bottom:14px}
.message-hero .message-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.message-hero .message-actions .button{width:auto}
@media(max-width:600px){
  .bridge-contact{min-height:0;gap:20px}
  .bridge-contact .contact-actions{width:100%;flex-direction:column;align-items:stretch}
  .bridge-contact .contact-actions .button{width:100%}
  .coverage-note{padding:19px}
  .message-hero .message-actions{width:100%;flex-direction:column}
  .message-hero .message-actions .button{width:100%}
}

/* Tricolore contact actions: WhatsApp (green), information request (red). */
.button-whatsapp::before,.button-quote::before{content:"";display:inline-block;width:18px;height:18px;flex:0 0 18px;background-repeat:no-repeat;background-position:center;background-size:contain}
.button-whatsapp{background:#009246;color:#fff}.button-whatsapp:hover{background:#00783a}
.button-whatsapp::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 11.5a8.5 8.5 0 0 1-12.5 7.4L3 20l1.2-4.2A8.5 8.5 0 1 1 20 11.5Z'/%3E%3Cpath d='M9 8.2c.4 2.6 2.5 4.7 5 5l1-1 2 .8c.2.1.3.3.2.6-.3.8-1 1.4-2 1.5-2.8.2-6.3-3.4-6.2-6.2.1-.8.6-1.5 1.4-1.8.2-.1.4 0 .5.2l.8 1.8-1 1.1'/%3E%3C/svg%3E")}
.button-quote{background:#ce2b37;color:#fff}.button-quote:hover{background:#b5222d}
.button-quote::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3.5h8l4 4v13H6z'/%3E%3Cpath d='M14 3.5v4h4M9 12h6M9 15h6M9 18h4'/%3E%3C/svg%3E")}
.bridge-intruder-actions{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:12px}
@media(max-width:600px){.bridge-intruder-actions{flex-direction:column;align-items:flex-start}}


/* Map, official wordmark and consistent contact actions. */
.site-map{position:relative;display:block;height:132px;margin:-25px -25px 20px;overflow:hidden;border-radius:7px 7px 0 0;background:#e6eee8}
.site-map img{display:block;width:100%;height:100%;object-fit:cover}
.site-map figcaption{position:absolute;left:12px;bottom:10px;display:grid;gap:2px;padding:7px 10px;border:1px solid rgba(30,48,55,.08);border-radius:5px;background:rgba(255,255,255,.94);color:#17232b;font-size:10px;box-shadow:0 4px 12px rgba(20,36,42,.09)}
.site-map figcaption span{color:#637079;font-size:9px}
.card-mark{width:86px;height:42px;margin:0 0 13px;display:flex;align-items:center;justify-content:flex-start;border:0;border-radius:0;background:transparent;overflow:visible}
.card-mark img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.footer-brand{width:106px;height:42px;display:inline-flex;align-items:center;flex:0 0 106px;overflow:hidden}
.footer-brand img{display:block;width:100%;height:100%;object-fit:contain;object-position:left center}
.footer-phone{color:#49545a;font-size:11px;font-weight:750}
.hero-actions .button-whatsapp,.hero-actions .button-quote,.contact-actions .button-whatsapp,.contact-actions .button-quote{width:230px;min-width:230px;min-height:48px}
.request-aside .button-whatsapp,.request-aside .button-email{width:100%;min-height:48px}
@media(max-width:600px){.site-map{height:118px}.hero-actions .button-whatsapp,.hero-actions .button-quote,.contact-actions .button-whatsapp,.contact-actions .button-quote{width:100%;min-width:0}.card-mark{width:86px;height:42px}.footer-main{align-items:flex-start;gap:18px}}

/* Keep the supplied Intruder mark within its grid column on every screen. */
.patent-logo{display:block;width:100%;max-width:170px;height:auto;object-fit:contain;object-position:center}
@media(max-width:600px){.patent-logo{max-width:270px}}

/* Panoramica servizi: testata centrata e schede allineate. */
.bridge-services .section-heading{display:flex;flex-direction:column;align-items:center;gap:12px;margin-bottom:34px;text-align:center}
.bridge-services .section-heading>div{display:flex;flex-direction:column;align-items:center}
.bridge-services .section-heading .eyebrow{justify-content:center;margin-bottom:10px}
.bridge-services .section-heading h2{max-width:950px}
.bridge-services .section-lead{max-width:680px;margin:0 auto;font-size:14px;line-height:1.7}
.bridge-services .service-grid{align-items:stretch}
.bridge-services .service-card{min-height:430px}
.bridge-services .service-card .service-visual{margin-bottom:16px}
.bridge-services .service-card h3{min-height:44px}
.bridge-services .service-card p{min-height:76px}
.bridge-services .service-sub-links{min-height:56px;align-content:center}
.bridge-services .service-link{margin-top:auto}
@media(max-width:600px){.bridge-services .service-card{min-height:0}.bridge-services .service-card p{min-height:0}.bridge-services .service-sub-links{min-height:0}}

/* Final visual refinements for the public-facing MABI pages. */
.site-header .brand{width:206px;height:auto;min-height:0;overflow:visible;flex:0 0 206px}
.site-header .brand img{display:block;width:100%;height:auto!important;max-height:none;object-fit:contain!important;object-position:center}
.footer-brand{height:auto;min-height:42px;overflow:visible}
.footer-brand img{width:100%;height:auto;max-height:42px;object-fit:contain}
.card-mark{width:104px;height:38px;overflow:visible}
.card-mark img{height:100%;object-fit:contain;object-position:left center}
@media(max-width:600px){.site-header .brand{width:110px;flex-basis:110px}.card-mark{width:95px;height:35px}}

/* The fake chat-bubble glyph is removed until the official Meta asset is supplied. */
.button-whatsapp::before{content:none;width:0;flex-basis:0}
.button-whatsapp{gap:0}
.request-aside .button-whatsapp,.request-aside .button-email{display:flex;width:100%;min-width:0;height:50px;min-height:50px;margin:9px 0 13px;justify-content:center}
@media(max-width:900px){.request-aside .button{max-width:none}}

.services .section-heading{flex-direction:column;align-items:center;gap:12px;text-align:center}
.services .section-heading>div{display:flex;flex-direction:column;align-items:center}
.services .section-heading .eyebrow{justify-content:center;margin-bottom:10px}
.services .section-lead{max-width:700px;margin:0 auto}
.services .service-card{min-height:350px}
.services .service-card p{min-height:96px}
.services .service-card .service-link{margin-top:auto}
.bridge-services .service-card{min-height:365px}
.bridge-services .service-card p{min-height:96px}
@media(max-width:600px){.services .service-card,.bridge-services .service-card{min-height:0}.services .service-card p,.bridge-services .service-card p{min-height:0}}

.areas-page .content-hero,.areas-page .content-body{text-align:center}
.areas-page .content-hero .eyebrow{justify-content:center}
.areas-page .content-hero h1,.areas-page .content-hero p:last-child{margin-left:auto;margin-right:auto}
.areas-page .content-body>p{max-width:790px;margin-right:auto;margin-left:auto}
.areas-page .content-grid{text-align:center}
.areas-page .content-card{display:flex;flex-direction:column;align-items:center}
.areas-page .content-card h3{width:100%}
.areas-page .coverage-note{border-top:3px solid var(--green);border-left:0;text-align:center}
.areas-page .coverage-note .eyebrow{justify-content:center}
.areas-page .coverage-note p{margin-right:auto;margin-left:auto}
.areas-page .note-box{text-align:center}
.areas-page .cta-band{flex-direction:column;justify-content:center;text-align:center}

.intruder-page .content-hero{text-align:center}
.intruder-page .content-hero .eyebrow{justify-content:center}
.intruder-page .content-hero h1,.intruder-page .content-hero p:last-child{margin-left:auto;margin-right:auto}
.intruder-page .body-intro{text-align:center}
.intruder-page .content-body>h2{text-align:center}
.intruder-page .content-grid{text-align:center}
.intruder-page .content-card{display:flex;flex-direction:column;align-items:center}
.intruder-page .content-card h3{width:100%}
.intruder-page .faq-item{text-align:center}
.intruder-page .cta-band{justify-content:center;text-align:center}
@media(max-width:600px){.intruder-page .cta-band{align-items:stretch;flex-direction:column}}

/* Center in-page section links consistently on service pages. */
.topic-nav{justify-content:center}
@media(max-width:600px){.topic-nav{flex-wrap:wrap;justify-content:center;overflow:visible;padding-bottom:0}.topic-nav a{flex:0 1 auto}}


/* Pagine servizio: testi centrati e sottosezioni senza riquadri riepilogativi. */
.service-page .content-hero{text-align:center}
.service-page .content-hero .eyebrow{justify-content:center}
.service-page .content-hero h1,.service-page .content-hero p:last-child{margin-left:auto;margin-right:auto}
.service-page .content-hero h1{max-width:1050px}
.service-page .content-hero p:last-child{max-width:820px}
.service-page .content-body{text-align:center}
.service-page .content-body>h2,.service-page .content-body>h3{text-align:center}
.service-page .content-body>p{max-width:790px;margin-right:auto;margin-left:auto;text-align:center}
.service-page .content-body>.body-intro{max-width:820px;margin-right:auto;margin-left:auto}
.service-page .service-detail-copy{padding-top:6px}
.service-page .service-detail-copy section{margin:0 auto 34px;max-width:820px}
.service-page .service-detail-copy section+section{padding-top:10px;border-top:1px solid var(--line)}
.service-page .service-detail-copy h2{margin:0 0 12px}
.service-page .service-detail-copy p{max-width:780px;margin:0 auto 10px;color:#535b60;font-size:14px;line-height:1.85;text-align:center}
.service-page .content-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}
.service-page .content-card{display:flex;flex-direction:column;align-items:center;padding:21px 20px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none;text-align:center}
.service-page .content-card .subcat-kicker{margin-bottom:8px}
.service-page .content-card h3{width:100%;margin:0 0 7px;text-align:center}
.service-page .content-card p{max-width:390px;margin:0 auto;color:#535b60;text-align:center}
.service-page .product-grid{align-items:stretch}
.service-page .product-card{display:flex;flex-direction:column;align-items:center;text-align:center}
.service-page .product-card-top{width:100%;justify-content:center;flex-wrap:wrap}
.service-page .product-card h3,.service-page .product-card p{max-width:330px;text-align:center}
.service-page .product-action{margin-top:auto;justify-content:center}
.service-page .product-note,.service-page .catalog-intro,.service-page .note-box{text-align:center}
.service-page .process-panel{text-align:center}
.service-page .process-panel h3,.service-page .process-panel>p{max-width:760px;margin-right:auto;margin-left:auto;text-align:center}
.service-page .maintenance-step{display:flex;flex-direction:column;align-items:center;text-align:center}
.service-page .maintenance-step b{margin-right:auto;margin-left:auto}
.service-page .maintenance-step h4,.service-page .maintenance-step p{text-align:center}
.service-page .reference-list{max-width:820px;margin-right:auto;margin-left:auto;padding:0;list-style:none;text-align:center}
.service-page .reference-list li{text-align:center}
.service-page .faq-list,.service-page .faq-item{text-align:center}
.service-page .faq-item h3,.service-page .faq-item p{max-width:760px;margin-right:auto;margin-left:auto;text-align:center}
.service-page .cta-band{justify-content:center;flex-direction:column;text-align:center}
.service-page .cta-band>div{max-width:650px}
.service-page .page-contact-inner{justify-content:center;flex-direction:column;text-align:center}
.service-page .page-contact-inner>div:first-child{max-width:650px}
.service-page .page-contact .eyebrow{justify-content:center}
.service-page .page-contact .hero-actions{justify-content:center}
@media(max-width:600px){.service-page .content-grid{grid-template-columns:1fr}.service-page .content-card{padding:18px 6px}.service-page .content-body>p{max-width:100%}.service-page .content-hero h1{max-width:100%}}


/* Mappa Google attivata solo su scelta esplicita, per non caricare contenuti esterni in automatico. */
.site-map{height:188px;background:#f0eeea}
.site-map iframe{width:100%;height:100%;border:0}
.site-map iframe[hidden]{display:none}
.map-placeholder{height:100%;padding:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:linear-gradient(135deg,#f2f0eb,#e8eee9);text-align:center}
.map-placeholder strong{color:var(--ink);font-size:13px}
.map-placeholder span,.map-placeholder p{margin:0;color:#59656a;font-size:10px;line-height:1.45}
.map-placeholder .map-load-button{margin-top:3px;padding:6px 11px;border:1px solid #cbd4cf;border-radius:3px;background:#fff;color:#263c32;font:700 10px var(--font-body);cursor:pointer}
.map-placeholder .map-load-button:hover{border-color:var(--green);background:#f6faf7}
.map-placeholder a{color:#43545b;font-size:9px;font-weight:700;text-underline-offset:2px}
@media(max-width:600px){.site-map{height:180px}.map-placeholder{padding:11px}}

/* Pagine categoria: separazione visiva tra testata e contatti, con spaziatura coerente. */
.service-page .content-hero{margin-bottom:46px;padding-top:clamp(38px,5.2vw,64px);padding-bottom:clamp(38px,5.2vw,64px)}
.service-page .page-contact{width:min(900px,calc(100% - 48px));margin:0 auto 56px;padding:38px 28px;border:1px solid var(--line);border-radius:8px;background:#f2f0ec;box-shadow:0 8px 24px rgba(27,37,44,.035)}
.service-page .page-contact-inner{width:100%;gap:20px}
.service-page .page-contact .hero-actions{max-width:100%;justify-content:center}
@media(max-width:600px){.service-page .content-hero{margin-bottom:28px}.service-page .page-contact{width:calc(100% - 28px);margin-bottom:36px;padding:26px 18px}.service-page .page-contact-inner{gap:15px}}

/* Selezione singola o multipla dei servizi: gruppi leggibili e controlli accessibili. */
.service-choice{min-width:0;margin:0;padding:0;border:0}
.service-choice legend{margin-bottom:7px;padding:0;color:var(--ink);font-size:13px;font-weight:750}
.service-choice legend span{color:var(--red-dark)}
#service-help{margin:0 0 11px;color:var(--muted);font-size:11px;line-height:1.5}
.service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.service-option-group{padding:13px 14px;border:1px solid var(--line);border-radius:5px;background:#fcfbf9}
.service-option-group h3{margin:0 0 7px;color:var(--ink);font-size:12px;line-height:1.4}
.service-check{min-width:0;display:flex;align-items:flex-start;gap:8px;padding:4px 0;color:#465158;font-size:12px;line-height:1.45;cursor:pointer}
.service-check input{width:16px;height:16px;flex:0 0 16px;margin:1px 0 0;accent-color:var(--green)}
.service-check:has(input:checked){color:var(--ink);font-weight:650}
@media(max-width:600px){.service-options{grid-template-columns:1fr}.service-option-group{padding:12px}}

/* Informazioni sulla sede: gerarchia chiara tra indirizzo e territorio servito. */
.office-overview{margin:0 0 56px;text-align:center}
.office-overview>header,.areas-section-heading{max-width:790px;margin:0 auto 25px}
.office-overview>header .eyebrow,.areas-section-heading .eyebrow{justify-content:center;margin-bottom:9px}
.office-overview>header h2,.areas-section-heading h2{margin:0 0 11px;font-family:var(--font-display);font-size:clamp(30px,4vw,42px);letter-spacing:-.055em;line-height:1.12}
.office-overview>header>p:last-child,.areas-section-heading>p:last-child{max-width:720px;margin:0 auto;color:var(--muted);font-size:14px;line-height:1.75}
.office-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;text-align:center}
.office-fact{min-width:0;padding:25px 22px;border:1px solid var(--line);border-radius:7px;background:#fff;box-shadow:0 6px 20px rgba(27,37,44,.035)}
.office-fact-label{margin:0 0 6px;color:#687377;font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.office-fact h3{margin:0 0 8px;font-family:var(--font-display);font-size:21px;letter-spacing:-.035em}
.office-fact address,.office-fact>p:last-child{margin:0;color:#596267;font-size:13px;font-style:normal;line-height:1.7}
.office-map-links{display:flex;justify-content:center;flex-wrap:wrap;gap:9px;margin-top:16px}
.office-map-links a{display:inline-flex;align-items:center;gap:5px;padding:8px 12px;border:1px solid var(--line);border-radius:4px;background:#fbfaf8;color:#34434a;font-size:11px;font-weight:750;text-decoration:none}
.office-map-links a:hover{border-color:#bec8c2;background:#f1f5f1}
.office-map-links span{color:var(--red)}
.areas-services{margin:0 0 38px}
.areas-services .content-grid{margin-top:0}
.areas-page .coverage-note{text-align:center}
.areas-page .coverage-note .eyebrow{justify-content:center}
.areas-page .coverage-note p:last-child{max-width:720px;margin:0 auto}
@media(max-width:600px){.office-overview{margin-bottom:42px}.office-facts{grid-template-columns:1fr;gap:12px}.office-fact{padding:21px 17px}.office-map-links{flex-direction:column;align-items:stretch}.office-map-links a{justify-content:center}.areas-services{margin-bottom:28px}}

/* Unified contact actions: green for WhatsApp, red for email and information requests. */
.button-email{background:#ce2b37;color:#fff}
.button-email:hover{background:#b5222d}
.button-email::before{content:"";display:inline-block;width:18px;height:18px;flex:0 0 18px;background-repeat:no-repeat;background-position:center;background-size:contain;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='1.5'/%3E%3Cpath d='m4 7 8 6 8-6'/%3E%3C/svg%3E")}
.request-aside .button-whatsapp,.request-aside .button-email{display:flex;width:100%;min-width:0;height:50px;min-height:50px;margin:9px 0 13px;justify-content:center}
.request-aside .button-whatsapp{gap:0}
.request-aside .button-email{gap:10px}
@media(max-width:900px){.request-aside .button{max-width:none}}

/* Checkboxes stay compact and on the same line as their service labels. */
.service-check{align-items:center}
.service-options .service-check input[type="checkbox"]{width:16px;height:16px;min-height:16px;padding:0;border:1px solid #9aa4a7;border-radius:3px;flex:0 0 16px;margin:0;accent-color:var(--green)}
.service-check span{min-width:0;flex:1}
