@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
/* Elcentralen V8: one shared layout system for preview and Elementor. */
.elc-v8{--elc-forest:#0b382c;--elc-ink:#103b2d;--elc-muted:#51655b;--elc-lime:#d6eea8;--elc-line:#cad6c6;--elc-gutter:48px;--elc-space:88px;box-sizing:border-box;min-width:0!important;max-width:100%!important;width:100%!important;padding:0!important;gap:0!important;color:var(--elc-ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.7;border-radius:0!important}
.elc-v8 *{box-sizing:border-box;min-width:0}
.elc-v8:not(.elc-section){color:inherit}
.elc-v8.elc-section{padding:var(--elc-space) var(--elc-gutter)!important}
.elc-v8 :is(.elc-inner,.e-con-inner){display:flex!important;flex-direction:column!important;gap:22px!important;align-items:stretch;min-width:0!important;width:100%!important;max-width:100%!important;margin:0;padding:0!important}
.elc-v8.elc-section>:is(.elc-inner,.e-con-inner){max-width:1240px!important;margin-inline:auto!important;gap:30px!important}
.elc-v8 .elementor-widget{max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0}
.elc-v8 :is(h1,h2,h3,p,a,label),.elc-v8 .elementor-heading-title{white-space:normal!important;overflow-wrap:anywhere;word-break:normal;max-width:100%;margin:0}
.elc-v8 :is(h1,h2,h3,.elementor-heading-title){font-family:Manrope,Arial,sans-serif;font-weight:500!important;text-wrap:balance;hyphens:auto}
.elc-v8 .elementor-heading-title{color:inherit!important}
.elc-v8 h1{font-size:clamp(42px,5.2vw,76px)!important;line-height:1.08!important;letter-spacing:-2px!important}
.elc-v8 h2{font-size:clamp(30px,3.3vw,46px)!important;line-height:1.18!important;letter-spacing:-1.2px!important}
.elc-v8 h3{font-size:24px!important;line-height:1.35!important;letter-spacing:-.4px!important}
.elc-v8 :is(.elc-text,.elementor-widget-text-editor){font-size:17px!important;line-height:1.8!important;color:var(--elc-muted)!important}
.elc-v8 p{font-size:inherit;line-height:inherit;margin:0}.elc-v8 p+p{margin-top:16px}
.elc-v8 a{color:inherit;text-underline-offset:5px}
.elc-v8 :is(a,button,input,textarea):focus-visible{outline:3px solid #849e60;outline-offset:4px}
.elc-v8 :is(.elc-button,.elementor-button){display:inline-flex;justify-content:center;align-items:center;min-height:46px;max-width:100%;padding:15px 24px!important;border:1px solid transparent;border-radius:0!important;background:var(--elc-lime)!important;color:var(--elc-forest)!important;font:600 14px/1.45 'DM Sans',Arial,sans-serif!important;text-decoration:none;text-align:center;cursor:pointer;transition:background .2s ease}
.elc-v8 .elementor-widget-button{width:fit-content!important;max-width:100%}.elc-v8 .elc-button{align-self:flex-start}
.elc-v8 :is(.elc-button,.elementor-button):hover{background:#c4e195!important}
.elc-v8 img{display:block;width:100%;max-width:100%;height:auto;border-radius:0!important}
.elc-v8 .elc-photo,.elc-v8 .elc-photo img{width:100%;height:350px;object-fit:cover}
.elc-v8 .elc-col{width:100%!important;max-width:100%!important}
.elc-v8 .elc-col,.elc-v8.elc-layout-col{background:transparent!important}

/* A stable outer gutter and a single inner wrapper at every nesting level. */
.elc-v8.elc-intro>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px!important;align-items:start}
.elc-v8.elc-intro>:is(.elc-inner,.e-con-inner)>:last-child{padding-left:36px!important;border-left:1px solid var(--elc-line)}
.elc-v8.elc-intro>:is(.elc-inner,.e-con-inner)>:first-child>:is(.elc-inner,.e-con-inner)>:first-child:is(.elc-text,.elementor-widget-text-editor){font-size:12px!important;text-transform:uppercase;letter-spacing:1.5px;color:#6b8064}
.elc-v8.elc-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:700px;background-size:cover!important;background-position:center!important;color:white;border-bottom:5px solid var(--elc-lime)}
.elc-v8.elc-hero::before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(3,29,21,.94),rgba(3,29,21,.68) 48%,rgba(3,29,21,.13)),linear-gradient(0deg,rgba(3,29,21,.2),transparent)}
.elc-v8.elc-hero>:is(.elc-inner,.e-con-inner){position:relative;z-index:1}
.elc-v8 .elc-hero-copy{max-width:870px!important;background:transparent!important}
.elc-v8 .elc-hero-copy>:is(.elc-inner,.e-con-inner){gap:28px!important}
.elc-v8 .elc-hero-copy :is(.elc-text,.elementor-widget-text-editor){color:#e1e9de!important;max-width:550px}
.elc-v8 .elc-hero-copy>:is(.elc-inner,.e-con-inner)>:first-child{font-size:12px!important;letter-spacing:1.8px;text-transform:uppercase}
.elc-v8.elc-office-hero{background-position:65% center!important}.elc-v8.elc-industry-hero{border-bottom-color:#829c75}
.elc-v8.elc-energy-hero::before{background:linear-gradient(90deg,rgba(3,29,21,.92),rgba(3,29,21,.56) 60%,rgba(3,29,21,.12))}

/* Padded service panels; industry, office and energy retain different palettes. */
.elc-v8.elc-service-grid>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px!important}
.elc-v8.elc-service-card{width:100%!important;padding:32px!important;background:#fff!important;border:1px solid var(--elc-line)!important;min-height:0!important}
.elc-v8.elc-service-card>:is(.elc-inner,.e-con-inner){gap:18px!important;height:100%}
.elc-v8.elc-service-card h3{font-size:clamp(22px,2vw,27px)!important}
.elc-v8.elc-service-card :is(.elc-text,.elementor-widget-text-editor){font-size:16px!important;line-height:1.75!important}
.elc-v8.elc-service-card>:is(.elc-inner,.e-con-inner)>:first-child{font-family:Manrope,Arial,sans-serif;font-size:20px!important;line-height:1.4!important;letter-spacing:1px;color:#6e8660!important}
.elc-v8.elc-service-card :is(.elc-button,.elementor-button){padding:5px 0!important;min-height:34px;background:transparent!important;color:var(--elc-forest)!important;border:0;border-bottom:1px solid #77916a;justify-content:flex-start}
.elc-v8.elc-service-card>:is(.elc-inner,.e-con-inner)>:last-child{margin-top:auto}
.elc-page-industry.elc-services,.page-industry .elc-services{background:#102e25!important;color:#fff}
.elc-page-industry .elc-service-card,.page-industry .elc-service-card{background:#193b31!important;border-color:#486253!important;color:white}
.elc-page-industry .elc-service-card :is(.elc-text,.elementor-widget-text-editor),.page-industry .elc-service-card .elc-text{color:#d7e2d8!important}
.elc-page-industry .elc-service-card>:is(.elc-inner,.e-con-inner)>:first-child,.page-industry .elc-service-card>.elc-inner>:first-child{color:#b5cc95!important}
.elc-page-industry .elc-service-card :is(.elc-button,.elementor-button),.page-industry .elc-service-card .elc-button{color:#d6eea8!important;border-color:#98b978}
.elc-page-office.elc-services,.page-office .elc-services{background:#edf1e9!important}
.elc-page-office .elc-service-card,.page-office .elc-service-card{border-top:3px solid #75916b!important}
.elc-page-energy.elc-services,.page-energy .elc-services{background:#eaf0e2!important}
.elc-page-energy .elc-service-card,.page-energy .elc-service-card{border-left:3px solid #94aa74!important}

/* Benefits have comfortable inset space, rather than text on panel edges. */
.elc-v8.elc-benefits{background:#e6edde!important}
.elc-v8.elc-benefit-grid>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px!important;counter-reset:benefit}
.elc-v8.elc-benefit-card{padding:30px!important;background:#f8faf4!important;border:1px solid #c9d5c1!important;min-height:0!important;counter-increment:benefit}
.elc-v8.elc-benefit-card>:is(.elc-inner,.e-con-inner){gap:15px!important}
.elc-v8.elc-benefit-card>:is(.elc-inner,.e-con-inner)::before{content:'0' counter(benefit);font:500 12px/1.4 Manrope,Arial,sans-serif;letter-spacing:1px;color:#7b9367}
.elc-v8.elc-benefit-card h3{font-size:24px!important}.elc-v8.elc-benefit-card :is(.elc-text,.elementor-widget-text-editor){font-size:16px!important}

/* Each detailed solution is one panel, with both columns kept inside its padding. */
.elc-v8.elc-solutions{background:#f8faf5!important}
.elc-v8.elc-solution-row{padding:32px!important;background:#edf2e8!important;border:1px solid #cdd8c8!important}
.elc-v8.elc-solution-row>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:36px!important;align-items:center}
.elc-v8.elc-solution-row>:is(.elc-inner,.e-con-inner)>:first-child>:is(.elc-inner,.e-con-inner){gap:14px!important}
.elc-v8.elc-solution-row>:is(.elc-inner,.e-con-inner)>:first-child>:is(.elc-inner,.e-con-inner)>:first-child{font:500 28px/1.2 Manrope,Arial,sans-serif!important;color:#82976e;letter-spacing:0}
.elc-v8.elc-solution-row h3{font-size:clamp(23px,2.4vw,30px)!important}
.elc-v8.elc-solution-row :is(.elc-text,.elementor-widget-text-editor){font-size:16px!important}
.elc-page-energy.elc-solutions,.page-energy .elc-solutions{background:#e8eee1!important}
.elc-page-energy .elc-solution-row,.page-energy .elc-solution-row{background:#f8faf4!important}

/* Six specialties, all preserved, in an editorial list with padded rows. */
.elc-v8.elc-fields{background:#f1f4eb!important}
.elc-v8.elc-fields>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px 52px!important;align-items:start}
.elc-v8.elc-fields>:is(.elc-inner,.e-con-inner)>:first-child{grid-column:1;grid-row:1}
.elc-v8.elc-fields>:is(.elc-inner,.e-con-inner)>:nth-child(2){grid-column:1;grid-row:2}
.elc-v8.elc-field-grid{grid-column:2;grid-row:1/span 3}
.elc-v8.elc-field-grid>:is(.elc-inner,.e-con-inner){gap:12px!important}
.elc-v8.elc-field-card{padding:22px!important;background:#fff!important;border:1px solid #cfdbc6!important;min-height:0}
.elc-v8.elc-field-card>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:28px minmax(0,1fr);gap:8px 14px!important;align-items:start}
.elc-v8.elc-field-card>:is(.elc-inner,.e-con-inner)>:is(h3,.elementor-widget-heading){grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important}
.elc-v8.elc-field-card h3{font-size:21px!important;line-height:1.35!important}
/* Earlier inserted widgets may lack their custom classes. Place the actual
   direct grid items by structure as well, including Elementor 4's flat markup. */
.elc-v8.elc-field-card>:is(.elc-inner,.e-con-inner)>:is(.elc-field-number,:first-child:is(.elc-text,.elementor-widget-text-editor)){grid-column:1!important;grid-row:1/span 2!important;width:100%!important;font-size:12px!important;letter-spacing:1px;color:#748a65!important}
.elc-v8.elc-field-card>:is(.elc-inner,.e-con-inner)>:is(.elc-field-description,:nth-child(n+3):is(.elc-text,.elementor-widget-text-editor)){grid-column:2!important;grid-row:auto!important;width:100%!important;max-width:100%!important;min-width:0!important;font-size:15px!important;line-height:1.7!important;white-space:normal!important;overflow-wrap:break-word;word-break:normal}
.elc-v8.elc-field-card>:is(.elc-inner,.e-con-inner)>:is(.elc-field-description,:nth-child(n+3):is(.elc-text,.elementor-widget-text-editor)) :is(p,.elementor-widget-container){width:100%;max-width:100%;white-space:normal!important;overflow-wrap:break-word;word-break:normal}

.elc-v8.elc-home-grid>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px!important}
.elc-v8.elc-home-card{padding:0!important;border:1px solid var(--elc-line);background:#fff!important}
.elc-v8.elc-home-card>:is(.elc-inner,.e-con-inner){gap:20px!important;height:100%}
.elc-v8.elc-home-card>:is(.elc-inner,.e-con-inner)>:not(:first-child){margin-inline:26px;max-width:calc(100% - 52px)!important;width:auto!important}
.elc-v8.elc-home-card>:is(.elc-inner,.e-con-inner)>:last-child{margin-top:auto;margin-bottom:28px}
.elc-v8.elc-home-card .elc-photo,.elc-v8.elc-home-card .elc-photo img{height:280px}
.elc-v8.elc-home-card h3{font-size:25px!important}.elc-v8.elc-home-card :is(.elc-text,.elementor-widget-text-editor){font-size:16px!important}
.elc-v8.elc-advice{background:#f4f6ee!important}
.elc-v8.elc-advice>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:0!important;background:#e9efdf}
.elc-v8.elc-advice>:is(.elc-inner,.e-con-inner)>:last-child{padding:44px!important;align-self:center}
.elc-v8.elc-advice .elc-photo,.elc-v8.elc-advice .elc-photo img{height:560px}
.elc-v8.elc-advice h2{font-size:clamp(30px,3vw,42px)!important}
.elc-v8.elc-testimonials{background:#f1f5e9!important;border-top:1px solid var(--elc-line);border-bottom:1px solid var(--elc-line)}
.elc-v8.elc-testimonials :is(.elc-text,.elementor-widget-text-editor){max-width:780px}
.elc-v8.elc-cta{background:var(--elc-lime)!important}
.elc-v8.elc-cta h2{font-size:clamp(34px,4.5vw,60px)!important;max-width:950px;line-height:1.13!important}
.elc-v8.elc-cta :is(.elc-button,.elementor-button){background:var(--elc-forest)!important;color:white!important}

.elc-v8.elc-header{--elc-space:20px;background:#fbfcf8!important;border-bottom:1px solid #d9e2d1;position:relative;z-index:30}
.elc-v8.elc-header>:is(.elc-inner,.e-con-inner){display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:space-between;gap:22px!important}
.elc-v8.elc-header .elc-header-logo,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-image{width:190px!important;max-width:190px!important;flex:0 0 190px}
.elc-v8.elc-header .elc-header-logo img,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-image img{width:190px!important;max-width:100%!important;height:auto;filter:none;opacity:1}
.elc-v8.elc-header .elc-header-nav{width:auto!important;flex:1 1 auto;background:transparent!important}
.elc-v8.elc-header .elc-header-nav nav{display:flex;align-items:center;justify-content:center;gap:20px}
.elc-v8.elc-header .elc-header-nav nav a{font:500 14px/1.5 'DM Sans',Arial,sans-serif;white-space:nowrap!important;text-decoration:none;color:var(--elc-forest)}
.elc-v8.elc-header .elc-header-nav nav a:hover{text-decoration:underline}
.elc-v8.elc-header .elc-header-actions{display:flex!important;flex-direction:row!important;gap:10px!important;width:auto!important;flex:0 0 auto;background:transparent!important}
.elc-v8.elc-header .elc-header-actions>.e-con-inner{flex-direction:row!important;gap:10px!important;flex-wrap:nowrap!important}
.elc-v8.elc-header .elc-header-actions :is(.elc-button,.elementor-button){padding:13px 17px!important;white-space:nowrap!important}
.elc-v8.elc-header .elc-contact-button.elc-button,.elc-v8.elc-header .elc-contact-button .elementor-button{background:var(--elc-lime)!important;color:var(--elc-forest)!important}
.elc-v8.elc-header .elc-login-button.elc-button,.elc-v8.elc-header .elc-login-button .elementor-button,.elc-v8.elc-header .elc-header-actions>:is(.elc-inner,.e-con-inner)>.elementor-widget-button:nth-child(2) .elementor-button{background:var(--elc-forest)!important;color:white!important}
.elc-v8.elc-header .elc-menu-toggle-widget,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-html:last-child{display:none!important;width:auto!important}
.elc-v8.elc-header .elc-menu-toggle{display:none!important;align-items:center;gap:10px;min-height:44px;padding:10px 14px;background:transparent;border:1px solid #b4c6a8;border-radius:0;color:var(--elc-forest);font:500 14px/1.4 'DM Sans',Arial,sans-serif;cursor:pointer}

.elc-v8.elc-footer{background:#f5f7f0!important;--elc-space:68px}
.elc-v8.elc-footer>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:1.15fr .85fr 1fr;gap:50px!important}
.elc-v8.elc-footer .elc-logo,.elc-v8.elc-footer .elc-logo img{width:220px!important;height:auto;max-width:100%;opacity:1;filter:none}
.elc-v8.elc-footer h3{font-size:13px!important;font-weight:700!important;letter-spacing:1px!important;text-transform:uppercase}
.elc-v8.elc-footer :is(.elc-text,.elementor-widget-text-editor){font-size:15px!important;line-height:1.9!important}
.elc-v8.elc-footer-bottom{--elc-space:22px;background:#f5f7f0!important;border-top:1px solid var(--elc-line)}
.elc-v8.elc-footer-bottom>:is(.elc-inner,.e-con-inner){gap:10px!important}
.elc-v8.elc-footer-bottom :is(.elc-text,.elementor-widget-text-editor){font-size:12px!important;line-height:1.7!important}
.elc-v8.elc-footer-bottom>:is(.elc-inner,.e-con-inner)>:last-child{order:2}

.elc-v8.elc-contact-heading{background:#0b382c!important;color:white}
.elc-v8.elc-contact-heading h1{max-width:950px}.elc-v8.elc-contact-heading em{font-style:normal;color:var(--elc-lime)}
.elc-v8.elc-contact-heading :is(.elc-text,.elementor-widget-text-editor){color:#dce8d7!important;max-width:660px}
.elc-v8.elc-contact-grid>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:60px!important}
.elc-v8 .elc-contact-info{display:flex;flex-direction:column;gap:28px;width:100%!important}
.elc-v8 .elc-contact-info h3{font-size:12px!important;text-transform:uppercase;letter-spacing:1px!important;margin-bottom:8px}
.elc-v8 .elc-contact-info a{font-size:24px;text-decoration:none}
.elc-v8 .elc-contact-form{display:flex;flex-direction:column;gap:24px;padding:34px!important;width:100%!important;background:#fff;border:1px solid var(--elc-line)}
.elc-v8 .elc-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.elc-v8 .elc-contact-form label{font-size:14px}.elc-v8 .elc-contact-form input,.elc-v8 .elc-contact-form textarea{display:block;width:100%;max-width:100%;padding:14px;margin-top:8px;font:inherit;border:1px solid #c6d2bf;border-radius:0;background:#fafcf7}
.elc-v8 .elc-contact-form textarea{min-height:160px;resize:vertical}.elc-v8 .elc-contact-form button{align-self:start}
.elc-v8 .elc-form-note{font-size:13px;line-height:1.65;color:var(--elc-muted)}
.elc-v8.elc-contact-note{--elc-space:20px}.elc-v8.elc-contact-note :is(.elc-text,.elementor-widget-text-editor){font-size:12px!important}

/* Kontakt compatibility: also support the two extra column containers on the
   published Elementor page, with boxed or flat children. */
.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section){padding:88px 48px!important;gap:0!important;background:#f8faf5!important;max-width:100%!important;width:100%!important}
.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section)>.e-con-inner{display:grid!important;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr)!important;gap:60px!important;width:100%!important;max-width:1240px!important;margin-inline:auto!important;padding:0!important;align-items:start!important}
.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section)>.e-con-inner>.e-con{width:100%!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important}
.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section) :is(.elc-contact-details,.elc-contact-form-section){padding:0!important;min-width:0!important;max-width:100%!important;width:100%!important;gap:24px!important}
.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section) .elc-contact-details{display:flex!important;flex-direction:column!important;background:transparent!important}
.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section) .elc-contact-form-section{display:flex!important;flex-direction:column!important;padding:34px!important;background:#fff!important;border:1px solid #cad6c6!important;border-radius:8px!important}
.elc-contact-form-section .elementor-widget-form{width:100%!important;max-width:100%!important}
.elc-contact-form-section .elementor-form-fields-wrapper{display:flex!important;flex-wrap:wrap!important;gap:0;min-width:0}
.elc-contact-form-section .elementor-field-group{min-width:0!important;padding:0 10px 20px!important}
.elc-contact-form-section .elementor-field-label{font:500 14px/1.6 'DM Sans',Arial,sans-serif!important;color:#103b2d!important}
.elc-contact-form-section .elementor-field:not(.elementor-select-wrapper){min-height:48px!important;width:100%!important;max-width:100%!important;padding:12px 14px!important;border:1px solid #c6d2bf!important;background:#fafcf7!important;border-radius:4px!important;font:400 16px/1.6 'DM Sans',Arial,sans-serif!important;color:#103b2d!important}
.elc-contact-form-section textarea.elementor-field{min-height:160px!important;resize:vertical}
@media(max-width:1199px){.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section){padding:70px 32px!important}}
@media(max-width:900px){.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section)>.e-con-inner{grid-template-columns:minmax(0,1fr)!important;gap:32px!important}}
@media(max-width:600px){.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section){padding:54px 22px!important}.elementor>.e-con:has(.elc-contact-details):has(.elc-contact-form-section) .elc-contact-form-section{padding:24px!important}.elc-contact-form-section .elementor-field-group{width:100%!important;padding-inline:0!important}}

@media(max-width:1199px){
 .elc-v8{--elc-gutter:32px;--elc-space:70px}
 .elc-v8.elc-header>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:0!important}
 .elc-v8.elc-header .elc-header-logo,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-image{grid-column:1;grid-row:1}
 .elc-v8.elc-header .elc-menu-toggle{display:flex!important}
 .elc-v8.elc-header .elc-menu-toggle-widget,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-html:last-child{display:block!important;grid-column:2;grid-row:1}
 .elc-v8.elc-header .elc-header-nav,.elc-v8.elc-header .elc-header-actions{display:none!important;grid-column:1/-1;width:100%!important}
 .elc-v8.elc-header.elc-menu-open .elc-header-nav{display:block!important;margin-top:22px;border-top:1px solid var(--elc-line);padding-top:10px!important}
 .elc-v8.elc-header.elc-menu-open .elc-header-actions{display:flex!important;margin-top:20px;justify-content:flex-start}
 .elc-v8.elc-header .elc-header-nav nav{flex-direction:column;align-items:stretch;gap:0}
 .elc-v8.elc-header .elc-header-nav nav a{font-size:16px;white-space:normal!important;padding:13px 0;border-bottom:1px solid #e2e9db}
 .elc-v8.elc-home-grid>:is(.elc-inner,.e-con-inner){gap:18px!important}
 .elc-v8.elc-home-card>:is(.elc-inner,.e-con-inner)>:not(:first-child){margin-inline:20px;max-width:calc(100% - 40px)!important}
 .elc-v8.elc-intro>:is(.elc-inner,.e-con-inner){gap:36px!important}
 .elc-v8.elc-advice>:is(.elc-inner,.e-con-inner)>:last-child{padding:30px!important}
 .elc-v8.elc-fields>:is(.elc-inner,.e-con-inner){gap:24px 32px!important}
}
@media(max-width:900px){
 .elc-v8.elc-home-grid>:is(.elc-inner,.e-con-inner){grid-template-columns:minmax(0,1fr)}
 .elc-v8.elc-home-card .elc-photo,.elc-v8.elc-home-card .elc-photo img{height:340px}
 .elc-v8.elc-intro>:is(.elc-inner,.e-con-inner),.elc-v8.elc-advice>:is(.elc-inner,.e-con-inner),.elc-v8.elc-contact-grid>:is(.elc-inner,.e-con-inner){grid-template-columns:minmax(0,1fr);gap:28px!important}
 .elc-v8.elc-intro>:is(.elc-inner,.e-con-inner)>:last-child{padding:0!important;border:0}
 .elc-v8.elc-advice>:is(.elc-inner,.e-con-inner){gap:0!important}
 .elc-v8.elc-advice .elc-photo,.elc-v8.elc-advice .elc-photo img{height:390px}
 .elc-v8.elc-fields>:is(.elc-inner,.e-con-inner){display:flex!important;flex-direction:column!important;gap:24px!important}
 .elc-v8.elc-footer>:is(.elc-inner,.e-con-inner){grid-template-columns:repeat(2,minmax(0,1fr));gap:36px!important}
 .elc-v8.elc-footer>:is(.elc-inner,.e-con-inner)>:first-child{grid-column:1/-1}
}
@media(max-width:700px){
 .elc-v8{--elc-gutter:22px;--elc-space:54px}
 .elc-v8.elc-section>:is(.elc-inner,.e-con-inner){gap:26px!important}
 .elc-v8.elc-header{--elc-space:16px}.elc-v8.elc-header>:is(.elc-inner,.e-con-inner){gap:0!important}
 .elc-v8.elc-header .elc-header-logo,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-image{width:165px!important;max-width:165px!important;flex-basis:165px}
 .elc-v8 h1{font-size:clamp(34px,8.3vw,46px)!important;line-height:1.13!important;letter-spacing:-1px!important}
 .elc-v8 h2{font-size:clamp(28px,6.6vw,34px)!important;line-height:1.22!important;letter-spacing:-.65px!important}
 .elc-v8 h3{font-size:22px!important;line-height:1.35!important;letter-spacing:-.3px!important}
 .elc-v8 :is(.elc-text,.elementor-widget-text-editor){font-size:16px!important;line-height:1.75!important}
 .elc-v8.elc-hero{min-height:580px}.elc-v8.elc-hero::before{background:linear-gradient(90deg,rgba(3,29,21,.9),rgba(3,29,21,.56)),linear-gradient(0deg,rgba(3,29,21,.6),transparent)}
 .elc-v8.elc-service-grid>:is(.elc-inner,.e-con-inner),.elc-v8.elc-benefit-grid>:is(.elc-inner,.e-con-inner){grid-template-columns:minmax(0,1fr);gap:16px!important}
 .elc-v8.elc-service-card,.elc-v8.elc-benefit-card,.elc-v8.elc-solution-row{padding:24px!important}
 .elc-v8.elc-solution-row>:is(.elc-inner,.e-con-inner){grid-template-columns:minmax(0,1fr);gap:20px!important}
 .elc-v8.elc-solution-row h3{font-size:24px!important}
 .elc-v8.elc-solution-row>:is(.elc-inner,.e-con-inner)>:first-child>:is(.elc-inner,.e-con-inner)>:first-child{font-size:23px!important}
 .elc-v8.elc-field-card{padding:20px!important}.elc-v8.elc-field-card h3{font-size:20px!important}
 .elc-v8.elc-home-card .elc-photo,.elc-v8.elc-home-card .elc-photo img{height:270px}
 .elc-v8.elc-home-card>:is(.elc-inner,.e-con-inner)>:not(:first-child){margin-inline:24px;max-width:calc(100% - 48px)!important}
 .elc-v8.elc-advice .elc-photo,.elc-v8.elc-advice .elc-photo img{height:310px}
 .elc-v8.elc-advice>:is(.elc-inner,.e-con-inner)>:last-child{padding:28px 24px!important}
 .elc-v8.elc-advice h2{font-size:30px!important}.elc-v8.elc-cta h2{font-size:34px!important}
 .elc-v8.elc-footer{--elc-space:54px}.elc-v8.elc-footer>:is(.elc-inner,.e-con-inner){grid-template-columns:minmax(0,1fr);gap:32px!important}
 .elc-v8.elc-footer h3{font-size:13px!important}.elc-v8.elc-footer :is(.elc-text,.elementor-widget-text-editor){font-size:15px!important}
 .elc-v8.elc-footer-bottom :is(.elc-text,.elementor-widget-text-editor){font-size:12px!important}
 .elc-v8 .elc-contact-form{padding:24px!important}.elc-v8 .elc-form-row{grid-template-columns:minmax(0,1fr)}
 .elc-v8 .elc-contact-info a{font-size:23px}
}
@media(max-width:360px){.elc-v8{--elc-gutter:18px}.elc-v8.elc-service-card,.elc-v8.elc-benefit-card,.elc-v8.elc-solution-row{padding:20px!important}.elc-v8.elc-header .elc-header-logo,.elc-v8.elc-header>:is(.elc-inner,.e-con-inner)>.elementor-widget-image{width:148px!important;max-width:148px!important;flex-basis:148px}}
@media(prefers-reduced-motion:reduce){.elc-v8 *{transition:none!important;scroll-behavior:auto!important}}
/* Service illustrations: isolated PNGs, compact on phones, native image widgets. */
.elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner){display:grid!important;grid-template-columns:minmax(0,1fr) 144px;gap:18px!important;align-content:start}
.elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>*{grid-column:1/-1}
.elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>:first-child{grid-column:1;grid-row:1;align-self:start;padding-top:8px}
.elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>:is(h3,.elementor-widget-heading){grid-column:1;grid-row:2}
.elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>.elc-service-art{grid-column:2;grid-row:1/span 2;width:144px!important;height:124px!important;padding:8px!important;background:#eff4e7;border:1px solid #dbe5d0;align-self:start;justify-self:end;margin:0!important}
.elc-v8.elc-service-card .elc-service-art img{width:100%!important;height:106px!important;max-width:100%!important;object-fit:contain!important}
.elc-v8.elc-service-card .elc-service-art .elementor-widget-container{height:100%;display:flex;justify-content:center;align-items:center}
.elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>:last-child{margin-top:4px}
@media(max-width:700px){
 .elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner){grid-template-columns:minmax(0,1fr) 116px;gap:16px!important}
 .elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>:is(h3,.elementor-widget-heading){grid-column:1/-1;grid-row:2}
 .elc-v8.elc-service-card.elc-has-art>:is(.elc-inner,.e-con-inner)>.elc-service-art{grid-row:1;width:116px!important;height:106px!important;padding:8px!important}
 .elc-v8.elc-service-card .elc-service-art img{height:88px!important}
}

/* Edition V10: card descriptions keep natural spacing after button removal. */
.elc-v8.elc-service-card>:is(.elc-inner,.e-con-inner)>:last-child:is(.elc-text,.elementor-widget-text-editor){margin-top:0!important}
.elc-v8.elc-home-card>:is(.elc-inner,.e-con-inner)>:last-child:is(.elc-text,.elementor-widget-text-editor){margin-top:0!important}

/* Edition V12: V10 composition restored, with subtle 8px corners. */
.elc-v8:is(.elc-service-card,.elc-benefit-card,.elc-solution-row,.elc-field-card,.elc-home-card){border-radius:8px!important}
.elc-v8 .elc-photo,.elc-v8 .elc-photo img{border-radius:8px!important}
.elc-v8.elc-home-card .elc-photo,.elc-v8.elc-home-card .elc-photo img{border-radius:8px 8px 0 0!important}
.elc-v8.elc-service-card .elc-service-art,.elc-v8 .elc-contact-form{border-radius:8px!important}
