.elementor-kit-6{--e-global-color-primary:#1E2A2D;--e-global-color-secondary:#0C7B7D;--e-global-color-text:#4C585D;--e-global-color-accent:#1CB2B4;--e-global-color-champagne:#E7D9C2;--e-global-color-petrolio:#0A5E60;--e-global-color-bgwarm:#F8F6F2;--e-global-color-bgalt:#EFF4F2;--e-global-color-brandtint:#EAF3F2;--e-global-color-muted:#87929A;--e-global-color-hairline:#E7E3DB;--e-global-color-verdeuff:#1CB2B4;--e-global-typography-primary-font-family:"General Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"General Sans";--e-global-typography-secondary-font-weight:600;--e-global-typography-text-font-family:"Satoshi";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"General Sans";--e-global-typography-accent-font-weight:600;color:#4C585D;font-family:"Satoshi", Sans-serif;font-size:17px;font-weight:400;line-height:1.7em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#1CB2B4;font-family:"General Sans", Sans-serif;font-size:16px;font-weight:600;letter-spacing:0.2px;color:#1E2A2D;border-radius:14px 14px 14px 14px;padding:16px 32px 16px 32px;}.elementor-kit-6 button:hover,.elementor-kit-6 button:focus,.elementor-kit-6 input[type="button"]:hover,.elementor-kit-6 input[type="button"]:focus,.elementor-kit-6 input[type="submit"]:hover,.elementor-kit-6 input[type="submit"]:focus,.elementor-kit-6 .elementor-button:hover,.elementor-kit-6 .elementor-button:focus{background-color:#0C7B7D;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#0C7B7D;}.elementor-kit-6 a:hover{color:#0A5E60;}.elementor-kit-6 h1{color:#1E2A2D;font-family:"General Sans", Sans-serif;font-size:80px;font-weight:600;line-height:1.02em;letter-spacing:-2.5px;}.elementor-kit-6 h2{color:#1E2A2D;font-family:"General Sans", Sans-serif;font-size:48px;font-weight:600;line-height:1.08em;letter-spacing:-1px;}.elementor-kit-6 h3{color:#1E2A2D;font-family:"General Sans", Sans-serif;font-size:25px;font-weight:600;line-height:1.2em;}.elementor-kit-6 h4{color:#1E2A2D;font-family:"Satoshi", Sans-serif;font-size:18px;font-weight:700;}.elementor-kit-6 h5{color:#1E2A2D;font-family:"General Sans", Sans-serif;font-weight:600;}.elementor-kit-6 h6{color:#4C585D;font-family:"General Sans", Sans-serif;font-weight:600;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1340px;}.e-con{--container-max-width:1340px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-6 h1{font-size:54px;}.elementor-kit-6 h2{font-size:38px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6 h1{font-size:40px;}.elementor-kit-6 h2{font-size:30px;}.elementor-kit-6 h3{font-size:22px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ====== OBERTI COMPONENTS ====== */
.oberti-hero .elementor-heading-title{ color:#fff; letter-spacing:-.03em; }
.oberti-hero .oh-accent{ color:#5fd8d6; }
.oberti-hero .oh-lead, .oberti-hero .oh-lead *{ color:rgba(255,255,255,.9); }
.oh-eyebrow .elementor-heading-title{ color:#7fe3df; font-family:'Satoshi',sans-serif; font-weight:700; letter-spacing:.16em; text-transform:uppercase; font-size:.82rem; }
.oh-eyebrow.oh-dark-eye .elementor-heading-title{ color:#0C7B7D; }
.oh-btn-ghost .elementor-button{ background:transparent; color:#fff; border:1.6px solid rgba(255,255,255,.55); transition:background .25s; }
.oh-btn-ghost .elementor-button:hover{ background:rgba(255,255,255,.14); }
.oh-trust .elementor-icon-list-item, .oh-trust .elementor-icon-list-text{ color:rgba(255,255,255,.92)!important; font-size:.92rem; }
.oh-trust .elementor-icon-list-icon i{ color:#7fe3df!important; }
/* hero text color fix (beat widget global binding) */
.oberti-hero .elementor-widget-heading .elementor-heading-title{ color:#fff !important; }
.oberti-hero .oh-accent{ color:#5fd8d6 !important; }
.oberti-hero .oh-eyebrow .elementor-heading-title{ color:#7fe3df !important; }
.oberti-hero .oh-lead p, .oberti-hero .oh-lead .elementor-widget-container{ color:rgba(255,255,255,.92) !important; }
.bg-ink-sec .elementor-widget-heading .elementor-heading-title{ color:#fff !important; }
.bg-ink-sec .oh-lead p, .bg-ink-sec p{ color:rgba(255,255,255,.85) !important; }
.cta-band-sec .elementor-widget-heading .elementor-heading-title{ color:#fff !important; }
/* sections */
.sec-eyebrow .elementor-heading-title{ color:#0C7B7D; font-family:'Satoshi',sans-serif; font-weight:700; letter-spacing:.14em; text-transform:uppercase; font-size:.8rem; }
.sec-head{ text-align:center; max-width:760px; margin-left:auto; margin-right:auto; }
.sec-head .elementor-widget{ text-align:center; }
.strip-sec .elementor-icon-list-items{ justify-content:center; gap:34px; }
.strip-sec .elementor-icon-list-text, .strip-sec .elementor-icon-list-icon i{ color:#eafafa !important; font-weight:600; font-size:.92rem; }
.spotlight-sec{ background:linear-gradient(135deg,#0C7B7D,#0A5E60); border-radius:28px; box-shadow:0 22px 60px rgba(12,80,82,.18); }
.spotlight-sec .elementor-heading-title, .spotlight-sec p{ color:#fff !important; }
.spotlight-sec .oh-eyebrow .elementor-heading-title{ color:#bdeceb !important; }
.spotlight-sec .elementor-icon-list-text{ color:#eafafa !important; }
.spotlight-sec .elementor-icon-list-icon i{ color:#7fe3df !important; }
.spotlight-grid > .e-con-inner{ display:grid; grid-template-columns:1.05fr .95fr; gap:42px; align-items:center; }
.spotlight-img img{ border-radius:18px; width:100%; height:100%; object-fit:cover; max-height:420px; }
.oh-btn-white .elementor-button{ background:#fff; color:#0C7B7D; }
.oh-btn-white .elementor-button:hover{ background:#eafafa; color:#0A5E60; }
.svc-grid > .e-con-inner{ display:grid; grid-template-columns:repeat(4,1fr); gap:26px; }
.svc-card{ background:#fff; border:1px solid #E7E3DB; border-radius:18px; overflow:hidden; box-shadow:0 1px 2px rgba(20,42,46,.04),0 2px 8px rgba(20,42,46,.05); transition:transform .25s ease, box-shadow .25s ease; height:100%; }
.svc-card:hover{ transform:translateY(-6px); box-shadow:0 22px 60px rgba(12,80,82,.14); }
.svc-card img{ width:100%; height:188px; object-fit:cover; }
.svc-body{ padding:22px 22px 24px; }
.svc-tag{ display:inline-block; font-size:.7rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#0C7B7D; background:#EAF3F2; padding:.32em .7em; border-radius:999px; margin-bottom:.5rem; }
.link-arrow{ color:#0C7B7D; font-weight:600; font-size:.92rem; }
.cta-band-sec{ background:linear-gradient(135deg,#0C7B7D,#1CB2B4); border-radius:28px; text-align:center; box-shadow:0 22px 60px rgba(12,80,82,.2); }
.cta-band-sec .elementor-heading-title, .cta-band-sec p{ color:#fff !important; }
.cta-band-sec .oh-eyebrow .elementor-heading-title{ color:#bdeceb !important; }
@media(max-width:1024px){ .svc-grid > .e-con-inner{ grid-template-columns:repeat(2,1fr); } .spotlight-grid > .e-con-inner{ grid-template-columns:1fr; } }
@media(max-width:600px){ .svc-grid > .e-con-inner{ grid-template-columns:1fr; } }
/* grid fix: target element AND inner (works for full + boxed containers) */
.spotlight-grid, .spotlight-grid > .e-con-inner{ display:grid !important; grid-template-columns:1.05fr .95fr; gap:42px; align-items:center; }
.svc-grid, .svc-grid > .e-con-inner{ display:grid !important; grid-template-columns:repeat(4,1fr); gap:26px; }
@media(max-width:1024px){ .svc-grid, .svc-grid > .e-con-inner{ grid-template-columns:repeat(2,1fr); } .spotlight-grid, .spotlight-grid > .e-con-inner{ grid-template-columns:1fr; } }
@media(max-width:600px){ .svc-grid, .svc-grid > .e-con-inner{ grid-template-columns:1fr; } }
/* svc grid: container is boxed (has e-con-inner) -> grid only the inner */
.svc-grid{ display:block !important; }
.svc-grid > .e-con-inner{ display:grid !important; grid-template-columns:repeat(4,1fr) !important; gap:26px; max-width:none !important; }
@media(max-width:1024px){ .svc-grid > .e-con-inner{ grid-template-columns:repeat(2,1fr) !important; } }
@media(max-width:600px){ .svc-grid > .e-con-inner{ grid-template-columns:1fr !important; } }
/* footer */
.oberti-footer{ background:#12201F; }
.oberti-footer p, .oberti-footer .elementor-item, .oberti-footer a{ color:rgba(255,255,255,.78) !important; }
.oberti-footer .ft-h .elementor-heading-title{ color:#fff !important; font-size:1.02rem; letter-spacing:.01em; }
.oberti-footer .elementor-item:hover, .oberti-footer a:hover{ color:#5fd8d6 !important; }
.oberti-footer .ft-socials .elementor-icon{ color:#fff; background:rgba(255,255,255,.08); width:36px; height:36px; border-radius:50%; display:flex; align-items:center; justify-content:center; }
.oberti-footer .ft-socials .elementor-icon:hover{ background:#1CB2B4; }
.footer-grid > .e-con-inner{ display:grid; grid-template-columns:1.7fr 1fr 1fr 1.3fr; gap:40px; }
.ft-bottom{ border-top:1px solid rgba(255,255,255,.12); margin-top:30px; padding-top:20px; font-size:.85rem; }
.ft-bottom p{ color:rgba(255,255,255,.6) !important; margin:0; }
.ft-logo img{ width:180px; }
@media(max-width:1024px){ .footer-grid > .e-con-inner{ grid-template-columns:1fr 1fr; } }
@media(max-width:600px){ .footer-grid > .e-con-inner{ grid-template-columns:1fr; } }
/* === header/hero refinements to match approved static === */
#oberti-header:not(.elementor-sticky--effects)::before{ display:none !important; }
/* unconstrain Astra container -> Elementor full-bleed */
.ast-container{ max-width:none !important; width:100% !important; padding-left:0 !important; padding-right:0 !important; }
.ast-container > .ast-row, .site-content .ast-container{ max-width:none !important; }
/* precisione 3D section */
.precis-grid{ display:grid !important; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.three-mount-el{ aspect-ratio:1/1; max-width:480px; width:100%; margin-left:auto; margin-right:auto; min-height:400px; background:radial-gradient(circle at 50% 48%, rgba(20,170,172,.30), rgba(20,170,172,0) 66%); border-radius:24px; }
.three-mount-el canvas{ display:block; }
.bg-ink-sec .elementor-icon-list-text{ color:#eafafa !important; }
.bg-ink-sec .elementor-icon-list-icon i{ color:#7fe3df !important; }
@media(max-width:1024px){ .precis-grid{ grid-template-columns:1fr; } }
/* white button specificity on teal/dark sections */
.elementor-widget-button.oh-btn-white .elementor-button{ background-color:#fff !important; color:#0C7B7D !important; }
.elementor-widget-button.oh-btn-white .elementor-button:hover{ background-color:#eafafa !important; color:#0A5E60 !important; }
/* button sizing standardized */
.elementor-button{ padding:13px 27px !important; font-size:15px !important; font-weight:600 !important; line-height:1.2 !important; display:inline-flex; align-items:center; justify-content:center; }
.elementor-button .elementor-button-icon{ display:inline-flex; align-items:center; }
/* === COLOR FIDELITY to static index === */
.strip-sec{ background-color:#1E2A2D !important; }
.bg-ink-sec{ background-color:#BAE8E8 !important; }
.oberti-footer{ background-color:#1E2A2D !important; }
.cta-band-sec{ background:linear-gradient(135deg,#1E2A2D,#16383A 60%,#0A5E60) !important; }
.spotlight-sec{ background:linear-gradient(135deg,#0A5E60,#0C7B7D) !important; }
.oh-eyebrow .elementor-heading-title{ color:#9FE7E4 !important; }
/* === HOME secondary sections === */
.elementor-icon-list-icon svg{ width:17px; height:17px; }
.feat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.feat-card{ background:#fff; border:1px solid #E7E3DB; border-radius:18px; padding:26px 22px; height:100%; transition:transform .25s ease, box-shadow .25s ease; }
.feat-card:hover{ transform:translateY(-5px); box-shadow:0 18px 50px rgba(12,80,82,.12); }
.feat-card .elementor-icon{ color:#1CB2B4; font-size:26px; margin-bottom:6px; }
.split-grid{ display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:center; }
.split-grid .split-img img{ border-radius:20px; width:100%; object-fit:cover; }
.stats-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.oh-stat .elementor-counter-number-wrapper{ font-family:'General Sans',sans-serif!important; font-weight:700!important; font-size:2.9rem!important; color:#1CB2B4!important; justify-content:flex-start; }
.oh-stat .elementor-counter-title{ color:#4C585D!important; font-size:.95rem!important; font-weight:500; margin-top:2px; text-align:left; }
.team-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
.team-card{ background:#fff; border:1px solid #E7E3DB; border-radius:18px; padding:26px 18px 22px; text-align:center; height:100%; }
.team-card img{ width:106px; height:106px; border-radius:50%; object-fit:cover; margin:0 auto 14px; box-shadow:0 2px 10px rgba(20,42,46,.08); }
.conv-row{ display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:42px; }
.conv-row img{ height:40px!important; width:auto!important; filter:grayscale(1); opacity:.65; transition:opacity .25s, filter .25s; }
.conv-row img:hover{ filter:none; opacity:1; }
.oh-faq .elementor-accordion{ max-width:820px; margin:0 auto; }
.oh-faq .elementor-tab-title{ font-family:'General Sans',sans-serif!important; font-weight:600!important; color:#1E2A2D!important; }
.oh-faq .elementor-tab-title.elementor-active{ color:#0C7B7D!important; }
@media(max-width:1024px){ .feat-grid,.stats-grid,.team-grid{ grid-template-columns:repeat(2,1fr); } .split-grid{ grid-template-columns:1fr; } }
@media(max-width:600px){ .feat-grid,.team-grid{ grid-template-columns:1fr; } }
/* feat icon color brand */
.feat-card .elementor-icon i, .feat-card .elementor-icon svg{ color:#1CB2B4 !important; fill:#1CB2B4 !important; }
.oh-stat-num .elementor-heading-title{ font-size:2.9rem !important; color:#1CB2B4 !important; font-weight:700; line-height:1; }
/* service pages */
.hero-sub{ min-height:56vh !important; }
.oh-crumbs{ color:rgba(255,255,255,.72)!important; font-size:.84rem; margin:0 0 .3rem; }
.oh-crumbs a{ color:rgba(255,255,255,.72)!important; }
.tratt-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:22px; }
.tratt-card{ background:#fff; border:1px solid #E7E3DB; border-radius:16px; padding:24px 26px; height:100%; }
.tratt-card .elementor-heading-title{ margin-bottom:.3rem; }
@media(max-width:1024px){ .tratt-grid{ grid-template-columns:1fr; } }
/* steps + vantaggi */
.steps-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px 22px; counter-reset:step; }
.step-card{ background:#fff; border:1px solid #E7E3DB; border-radius:16px; padding:28px 24px 24px; position:relative; }
.step-card::before{ counter-increment:step; content:counter(step); position:absolute; top:-15px; left:24px; width:32px; height:32px; border-radius:50%; background:#1CB2B4; color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-family:'General Sans',sans-serif; font-size:.95rem; }
.vant-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
@media(max-width:1024px){ .steps-grid,.vant-grid{ grid-template-columns:1fr; } }
@media(min-width:601px) and (max-width:1024px){ .steps-grid,.vant-grid{ grid-template-columns:repeat(2,1fr); } }
/* team flex (centers incomplete last row) */
.team-flex{ display:flex; flex-wrap:wrap; justify-content:center; gap:24px; }
.team-flex > .team-card{ flex:0 1 252px; }
.vals-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:22px; }
@media(max-width:1024px){ .vals-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .vals-grid{ grid-template-columns:1fr; } }
/* contatti */
.contact-grid{ display:grid; grid-template-columns:1fr 1.1fr; gap:40px; align-items:start; }
.info-card,.form-card{ background:#fff; border:1px solid #E7E3DB; border-radius:20px; padding:30px; }
.form-card{ box-shadow:0 10px 40px rgba(16,60,62,.07); }
.hours-row{ display:flex; justify-content:space-between; padding:.5rem 0; border-bottom:1px solid #ECE8E1; font-size:.95rem; }
.hours-row:last-child{ border-bottom:0; }
.oh-form .elementor-field-group label{ font-weight:600!important; font-size:.85rem!important; color:#1E2A2D!important; }
.oh-form .elementor-field{ border:1.5px solid #E7E3DB!important; border-radius:12px!important; padding:.8em 1em!important; font-family:'Satoshi',sans-serif!important; }
.oh-form .elementor-button{ background-color:#1CB2B4!important; color:#1E2A2D!important; }
.map-wrap iframe,.map-wrap > div{ border-radius:18px!important; overflow:hidden; }
@media(max-width:900px){ .contact-grid{ grid-template-columns:1fr; } }
/* blog */
.article-prose{ max-width:760px; margin:0 auto; font-size:1.06rem; line-height:1.8; color:#4C585D; }
.article-prose h2{ margin-top:1.7em; margin-bottom:.4em; }
.article-prose h3{ margin-top:1.3em; margin-bottom:.3em; }
.article-prose p{ margin:0 0 1.1em; }
.article-prose table{ width:100%; border-collapse:collapse; margin:1.5em 0; font-size:.94em; }
.article-prose th,.article-prose td{ border:1px solid #E7E3DB; padding:.65em .9em; text-align:left; vertical-align:top; }
.article-prose th{ background:#EAF3F2; color:#1E2A2D; font-family:'General Sans',sans-serif; }
.article-prose blockquote{ border-left:3px solid #1CB2B4; padding:.2em 0 .2em 1.2em; margin:1.4em 0; color:#1E2A2D; }
.article-prose ul,.article-prose ol{ padding-left:1.4em; margin:1em 0; }
.article-prose li{ margin:.4em 0; }
.article-prose a{ color:#0C7B7D; text-decoration:underline; }
.blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:26px; }
.blog-card{ background:#fff; border:1px solid #E7E3DB; border-radius:18px; overflow:hidden; height:100%; transition:transform .25s ease, box-shadow .25s ease; }
.blog-card:hover{ transform:translateY(-5px); box-shadow:0 22px 60px rgba(12,80,82,.13); }
.blog-card img{ width:100%; height:200px; object-fit:cover; }
.blog-card-body{ padding:22px 22px 24px; }
@media(max-width:1024px){ .blog-grid{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:600px){ .blog-grid{ grid-template-columns:1fr; } }
/* checks light on dark sections */
.strip-sec .elementor-icon-list-icon svg, .spotlight-sec .elementor-icon-list-icon svg, .bg-ink-sec .elementor-icon-list-icon svg, .oberti-hero .elementor-icon-list-icon svg{ color:#7fe3df !important; stroke:#7fe3df !important; }
.strip-sec .elementor-icon-list-text, .oberti-hero .oh-trust .elementor-icon-list-text{ color:#eafafa !important; }
/* premium uniform buttons (keep shape) */
.elementor-button{ padding:14px 30px !important; font-size:15px !important; font-weight:600 !important; line-height:1.25 !important; border-radius:14px !important; letter-spacing:.012em; display:inline-flex !important; align-items:center; justify-content:center; transition:transform .22s ease, box-shadow .22s ease, background-color .22s ease !important; }
.elementor-widget-button:not(.oh-btn-ghost):not(.oh-btn-white) > .elementor-widget-container .elementor-button{ box-shadow:0 6px 18px rgba(12,123,125,.22); }
.elementor-widget-button:not(.oh-btn-ghost):not(.oh-btn-white) .elementor-button:hover{ transform:translateY(-2px); box-shadow:0 11px 26px rgba(12,123,125,.30); }
.oh-btn-ghost .elementor-button:hover, .oh-btn-white .elementor-button:hover{ transform:translateY(-2px); }
.elementor-button .elementor-button-icon{ display:inline-flex; align-items:center; }
/* CHECK ICON stroke color (robusto) */
.elementor-widget-icon-list .elementor-icon-list-icon svg{ stroke:#0C7B7D !important; color:#0C7B7D !important; }
.strip-sec .elementor-widget-icon-list .elementor-icon-list-icon svg, .spotlight-sec .elementor-widget-icon-list .elementor-icon-list-icon svg, .bg-ink-sec .elementor-widget-icon-list .elementor-icon-list-icon svg, .oberti-hero .elementor-widget-icon-list .elementor-icon-list-icon svg{ stroke:#7fe3df !important; color:#7fe3df !important; }
/* button icon follows text color (fix phone icon bianco invisibile) */
.elementor-button .elementor-button-icon{ color:inherit !important; }
.elementor-button .elementor-button-icon i{ color:inherit !important; }
.elementor-button .elementor-button-icon svg{ fill:currentColor !important; stroke:currentColor !important; }
.oh-btn-white .elementor-button .elementor-button-icon i{ color:#0C7B7D !important; }
/* stats uniform alignment (counters + 3D) */
.stats-grid{ align-items:stretch; }
.stats-grid > *{ text-align:center !important; }
.oh-stat{ display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:flex-start !important; }
.oh-stat .elementor-counter-number-wrapper{ justify-content:center !important; font-family:'General Sans',sans-serif !important; font-weight:700 !important; font-size:2.9rem !important; line-height:1.1 !important; color:#1CB2B4 !important; }
.oh-stat .elementor-counter-title{ text-align:center !important; color:#4C585D !important; font-size:.95rem !important; margin-top:4px !important; }
.oh-stat-num{ align-items:center !important; }
.oh-stat-num .elementor-heading-title{ text-align:center !important; font-size:2.9rem !important; line-height:1.1 !important; margin:0 !important; color:#1CB2B4 !important; font-weight:700; }
.oh-stat-num + *, .oh-stat-num ~ .elementor-widget-text-editor{ text-align:center !important; }
.stats-grid .oh-stat p{ text-align:center !important; color:#4C585D !important; font-size:.95rem !important; margin:4px 0 0 !important; }
/* tratt filler CTA card */
.tratt-cta{ background:#EAF3F2 !important; border:1px solid #cfe8e6 !important; display:flex; flex-direction:column; justify-content:center; }
.tratt-cta .elementor-heading-title{ color:#0C7B7D !important; }
.tratt-cta .link-arrow{ color:#0C7B7D; font-weight:600; }
/* team-flex card width fix (force 250px, was 100%) */
.team-flex{ display:flex !important; flex-wrap:wrap !important; justify-content:center !important; gap:24px !important; }
.team-flex > .team-card{ flex:0 0 250px !important; width:250px !important; max-width:250px !important; }
@media(max-width:600px){ .team-flex > .team-card{ flex:0 0 100% !important; width:100% !important; max-width:340px !important; } }
/* B) equipe + team cards stessa altezza */
.team-card{ min-height:300px !important; display:flex !important; flex-direction:column !important; }
.team-grid, .team-flex{ align-items:stretch !important; }
/* C) bottoni stessa altezza (bordo trasparente su tutti come i ghost) */
.elementor-button{ border:1.6px solid transparent !important; box-sizing:border-box !important; }
.oh-btn-ghost .elementor-button{ border-color:rgba(255,255,255,.55) !important; }
/* D) home service card: corpo allineato, scopri di piu in fondo, spazio uniforme */
.svc-card{ height:100% !important; }
.svc-card > .e-con-inner{ display:flex !important; flex-direction:column !important; height:100%; }
.svc-card-body{ flex:1 1 auto !important; }
.svc-card-body > .e-con-inner{ display:flex !important; flex-direction:column !important; height:100%; gap:9px !important; }
.svc-card-body > .e-con-inner > .elementor-widget:last-child{ margin-top:auto !important; padding-top:6px; }
/* clickable card overlay link */
.svc-card, .blog-card, .tratt-cta{ position:relative !important; }
.card-overlay-link{ position:absolute !important; inset:0 !important; margin:0 !important; z-index:6 !important; }
.card-overlay-link .elementor-button{ position:absolute !important; inset:0 !important; width:100% !important; height:100% !important; min-height:0 !important; opacity:0 !important; padding:0 !important; border:0 !important; box-shadow:none !important; }
/* svc card: altezza minima uniforme titolo+descrizione -> testo allineato */
.svc-card-body .elementor-heading-title{ min-height:2.3em !important; display:flex; align-items:flex-start; }
.svc-card-body p{ min-height:2.9em !important; margin:0 !important; }
.svc-card-body .link-arrow{ display:inline-block; margin-top:4px; }
/* svc-body (classe corretta) - corpo flex, scopri di piu in fondo, descrizioni uniformi */
.svc-card > .e-con-inner{ display:flex !important; flex-direction:column !important; height:100% !important; }
.svc-body, .svc-card-body{ flex:1 1 auto !important; }
.svc-body > .e-con-inner, .svc-card-body > .e-con-inner{ display:flex !important; flex-direction:column !important; height:100% !important; gap:8px; }
.svc-body > .e-con-inner > .elementor-widget:last-child, .svc-card-body > .e-con-inner > .elementor-widget:last-child{ margin-top:auto !important; padding-top:6px; }
.svc-body .elementor-heading-title{ min-height:2.3em !important; }
.svc-body p{ margin:0 !important; }
.steps-2c{ grid-template-columns:repeat(2,1fr) !important; max-width:840px; margin-left:auto; margin-right:auto; }

/* ===== RESTYLE 16/07: verde ufficiale #1CB2B4 ===== */
html body{background-color:#F8F6F2 !important;} html body .site-content, html body .ast-plain-container{background-color:transparent;}
.strip-sec{background-color:#1CB2B4 !important;}
.strip-sec .elementor-icon-list-text{color:#1E2A2D !important;}
.strip-sec .elementor-icon-list-icon svg,.strip-sec .elementor-widget-icon-list .elementor-icon-list-icon svg{color:#0A5E60 !important;stroke:#0A5E60 !important;}
.spotlight-sec{background:linear-gradient(135deg,#0C7B7D,#1CB2B4) !important;}
.cta-band-sec{background:linear-gradient(135deg,#0C7B7D,#1CB2B4 120%) !important;}
.cta-band-sec .elementor-widget-button:not(.oh-btn-white) .elementor-button{background:#fff !important;color:#0C7B7D !important;}
.cta-band-sec .elementor-widget-button:not(.oh-btn-white) .elementor-button:hover{background:#EAF3F2 !important;color:#0A5E60 !important;}
.oh-form .elementor-button:hover{background-color:#0C7B7D !important;color:#fff !important;}

/* hero text shadow (foto chiara) */
.oberti-hero .oh-trust .elementor-icon-list-text{text-shadow:0 1px 8px rgba(9,20,20,.5);}
.oberti-hero .oh-lead, .oberti-hero .elementor-widget-text-editor p{text-shadow:0 1px 10px rgba(9,20,20,.35);}

/* REINFORCE 16/07: vincere sui binding globali post-regen */
.sec-eyebrow .elementor-heading-title{color:#0C7B7D !important;}
.oh-eyebrow.oh-dark-eye .elementor-heading-title{color:#0C7B7D !important;}
.tratt-cta .elementor-heading-title{color:#0C7B7D !important;}
.oh-btn-ghost .elementor-button{background:rgba(255,255,255,.10) !important;border:1.5px solid rgba(255,255,255,.55) !important;color:#fff !important;}
.oh-btn-ghost .elementor-button:hover{background:rgba(255,255,255,.22) !important;color:#fff !important;}

/* AQUA 16/07: sezioni scure -> #BAE8E8 */
.bg-ink-sec{background-color:#BAE8E8 !important;}
.bg-ink-sec .elementor-widget-heading .elementor-heading-title{color:#1E2A2D !important;}
.bg-ink-sec .oh-lead p, .bg-ink-sec p{color:#3F5257 !important;}
.bg-ink-sec .elementor-icon-list-text{color:#1E2A2D !important;}
.bg-ink-sec .elementor-icon-list-icon i, .bg-ink-sec .elementor-icon-list-icon svg, .bg-ink-sec .elementor-widget-icon-list .elementor-icon-list-icon svg{color:#0A5E60 !important;stroke:#0A5E60 !important;}
.bg-ink-sec .oh-eyebrow .elementor-heading-title{color:#0A5E60 !important;}
.oberti-footer{background-color:#BAE8E8 !important;}
.oberti-footer p, .oberti-footer .elementor-item, .oberti-footer a{color:#33454A !important;}
.oberti-footer .ft-h .elementor-heading-title{color:#1E2A2D !important;}
.oberti-footer .elementor-item:hover, .oberti-footer a:hover{color:#0A5E60 !important;}
.oberti-footer .ft-socials .elementor-icon{color:#1E2A2D !important;background:rgba(10,94,96,.12) !important;}
.oberti-footer .ft-socials .elementor-icon:hover{background:#0C7B7D !important;color:#fff !important;}
.ft-bottom{border-top:1px solid rgba(30,42,45,.15) !important;}
.ft-bottom p{color:rgba(30,42,45,.65) !important;}

/* CHIPS 29/07: home filosofia + hub */
.svc-chip .elementor-button{background:#fff !important;color:#0C7B7D !important;border:1.5px solid #CFE0DF !important;box-shadow:none !important;padding:10px 20px !important;font-size:.93rem !important;}
.svc-chip .elementor-button:hover{background:#0C7B7D !important;color:#fff !important;transform:none !important;}



/* UNIFORM 29/07: card omogenee */
.mission-cards, .svc-cards{align-items:stretch !important;}
.mission-cards > .elementor-element, .svc-cards > .elementor-element{flex:0 0 278px !important;max-width:278px !important;display:flex !important;}
.mission-cards .elementor-widget-icon-box{width:100% !important;height:100% !important;}
.svc-cards .svc-mini{width:100%;min-height:158px;position:relative;}
.svc-mini .elementor-widget-icon-box{background:transparent !important;border:0 !important;padding:0 !important;box-shadow:none !important;}
.svc-mini .elementor-icon-box-title{font-size:1.02rem !important;}
.svc-mini:hover{transform:translateY(-5px);box-shadow:0 18px 50px rgba(12,80,82,.12);}
.svc-mini{transition:transform .25s ease, box-shadow .25s ease;}
@media(max-width:640px){.mission-cards > .elementor-element, .svc-cards > .elementor-element{flex:1 1 100% !important;max-width:420px !important;}}

/* MISSION EQ 29/07 */
.mission-cards > .elementor-element{min-height:340px !important;}
.mission-cards .feat-card{height:100% !important;}
@media(max-width:640px){.mission-cards > .elementor-element{min-height:0 !important;}}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'General Sans';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'General Sans';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'General Sans';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'General Sans';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'General Sans';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: ;
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Satoshi';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'Satoshi';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'Satoshi';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: ;
}
@font-face {
	font-family: 'Satoshi';
	font-style: normal;
	font-weight: 900;
	font-display: auto;
	src: ;
}
/* End Custom Fonts CSS */