/* Evenir content system: existing teal/orange palette and Montserrat font files. */
.ev-restyled { --ev-ink:#15282a; --ev-muted:#526668; --ev-teal:#19929b; --ev-pale:#d5e9eb; --ev-orange:#cb500a; --ev-line:#dce7e7; background:#fff; color:var(--ev-ink); font-family:Montserrat,sans-serif; }
.ev-restyled *, .ev-restyled *::before, .ev-restyled *::after { box-sizing:border-box; }
.ev-restyled .ev-header { border-bottom-color:var(--ev-line); }
.ev-restyled .ev-header-inner { max-width:1216px; min-height:88px; }
#content.ev-main { padding:0; margin:0; font-family:Montserrat,sans-serif; font-size:16px; line-height:1.75; color:var(--ev-ink); }
#content.ev-main h1, #content.ev-main h2, #content.ev-main h3, #content.ev-main h4 { font-family:Montserrat,sans-serif; font-weight:600; letter-spacing:-.035em; text-transform:none; color:var(--ev-ink); line-height:1.18; margin:0; overflow-wrap:anywhere; }
#content.ev-main h1 { font-size:clamp(34px,4.3vw,64px); max-width:940px; }
#content.ev-main h2 { font-size:clamp(27px,3vw,40px); }
#content.ev-main h3 { font-size:clamp(20px,2vw,25px); }
#content.ev-main h4 { font-size:20px; }
#content.ev-main p { margin:0 0 20px; line-height:1.8; font-size:16px; color:var(--ev-muted); }
#content.ev-main p:last-child { margin-bottom:0; }
#content.ev-main a:not(.elementor-button) { color:#147d85; text-underline-offset:4px; }
#content.ev-main img { max-width:100%; height:auto; }
#content.ev-main .elementor-heading-title span { color:inherit; }
.ev-section { padding:72px 24px; border:0; background:#fff; }
.ev-section-inner { width:100%; max-width:1168px; margin:0 auto; display:flex; flex-direction:column; gap:32px; min-width:0; }
.ev-group { display:flex; flex-direction:column; gap:24px; min-width:0; }
.ev-widget { min-width:0; width:100%; margin:0; padding:0; }
.ev-widget > .elementor-widget-container { margin:0; padding:0; border:0; border-radius:0; box-shadow:none; background:none; }
.ev-grid { display:grid; gap:28px; align-items:start; }
.ev-grid-columns { grid-template-columns:repeat(2,minmax(0,1fr)); }
.ev-grid-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
.ev-page-intro { padding:72px 24px 64px; background:#edf6f6; border-bottom:1px solid var(--ev-pale); }
.ev-page-intro .ev-section-inner { gap:24px; }
.ev-page-intro p { max-width:760px; }
.ev-section-heading { display:flex; flex-direction:column; gap:22px; max-width:760px; margin-bottom:8px; }
.ev-services-section { background:#f5f8f8; }
#content.ev-main .ev-service-card { position:relative; padding:28px; min-height:200px; border:1px solid var(--ev-line); border-radius:12px; background:white; gap:24px; box-shadow:none; transition:border-color 150ms ease,background 150ms ease; }
#content.ev-main .ev-service-card:hover { border-color:#19929b; background:#fcfefe; }
#content.ev-main .ev-service-card img { width:64px; height:64px; object-fit:contain; display:block; filter:none; }
#content.ev-main .ev-service-card .elementor-widget-image { width:auto; align-self:start; }
#content.ev-main .ev-service-card h2, #content.ev-main .ev-service-card h3, #content.ev-main .ev-service-card h4, #content.ev-main .ev-service-card h5 { font-family:Montserrat,sans-serif; font-size:20px; font-weight:600; line-height:1.4; letter-spacing:-.02em; text-transform:none; }
#content.ev-main .ev-service-card a { color:var(--ev-ink); text-decoration:none; }
.ev-service-card .ev-heading a::after { content:'↗'; position:absolute; top:28px; right:28px; color:#19929b; font-size:20px; font-weight:400; }
#content.ev-main .ev-info-card { border-top:2px solid #19929b; padding:24px 20px; background:#f5f8f8; border-radius:0 0 8px 8px; }
#content.ev-main .elementor-icon-box-wrapper { display:flex; align-items:start; text-align:left; gap:14px; }
#content.ev-main .elementor-icon-box-icon { margin:0; flex:0 0 24px; }
#content.ev-main .elementor-icon { background:transparent; padding:0; color:#19929b; fill:#19929b; font-size:22px; }
#content.ev-main .elementor-icon svg { width:22px; height:22px; }
#content.ev-main .elementor-icon-box-title { font-size:17px; line-height:1.65; letter-spacing:0; margin-bottom:8px; }
#content.ev-main .elementor-icon-box-description { color:var(--ev-muted); font-size:15px; }
#content.ev-main .elementor-button, #content.ev-main button[type=submit], #content.ev-main .ask { display:inline-flex; width:auto; min-height:48px; align-items:center; justify-content:center; gap:10px; padding:13px 24px; border:1px solid var(--ev-orange); border-radius:6px; background:var(--ev-orange); color:white; font-family:Montserrat,sans-serif; font-size:14px; font-weight:600; letter-spacing:0; text-transform:none; line-height:1.5; box-shadow:none; text-decoration:none; transition:background 150ms ease; }
#content.ev-main .elementor-button:hover, #content.ev-main button[type=submit]:hover { background:#aa4006; border-color:#aa4006; }
#content.ev-main .elementor-button-text { letter-spacing:0; text-shadow:none; }
#content.ev-main .elementor-button-content-wrapper { align-items:center; }
#content.ev-main .elementor-icon-list-items { display:grid; gap:0; margin:0; padding:0; list-style:none; }
#content.ev-main .elementor-icon-list-item { display:flex; align-items:start; gap:14px; margin:0; padding:20px 0; border-bottom:1px solid var(--ev-line); color:var(--ev-muted); font-size:16px; line-height:1.75; }
#content.ev-main .elementor-icon-list-text { padding:0; font-family:Montserrat,sans-serif; font-size:16px; line-height:1.75; color:var(--ev-muted); }
#content.ev-main .elementor-icon-list-icon { padding-top:5px; flex:0 0 18px; }
#content.ev-main .elementor-icon-list-icon svg { width:16px; height:16px; fill:#19929b; }
#content.ev-main .ev-image img { display:block; max-height:480px; width:auto; object-fit:contain; margin:auto; border-radius:10px; box-shadow:none; }
.ev-media-section { padding-top:16px; padding-bottom:32px; }
#content.ev-main .ev-media-section img { width:100%; max-height:520px; object-fit:cover; }
.ev-logo-strip { width:100%; min-width:0; }
.ev-logo-viewport { overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; width:100%; padding:8px 0; mask-image:linear-gradient(to right,transparent,#000 28px,#000 calc(100% - 28px),transparent); }
.ev-logo-viewport::-webkit-scrollbar { display:none; }
.ev-logo-track, .ev-logo-sequence { display:flex; align-items:center; width:max-content; }
.ev-logo-sequence { gap:48px; padding-right:48px; }
.ev-logo-sequence .ev-client-logo { flex:0 0 132px; width:132px; height:56px; }
.ev-client-logo { margin:0; min-width:0; display:flex; align-items:center; justify-content:center; }
#content.ev-main .ev-client-logo img { width:100%; max-width:110px; height:44px; object-fit:contain; filter:grayscale(1); opacity:.75; }
.ev-clients-section { padding-top:32px; padding-bottom:48px; border-bottom:1px solid var(--ev-line); }
.ev-contact-section { background:#edf6f6; padding:72px 24px; border-top:1px solid var(--ev-pale); }
.ev-contact-section .ev-section-inner { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:64px; align-items:start; }
#content.ev-main .ev-contact-section h2 { max-width:440px; font-size:clamp(30px,3.2vw,44px); }
#content.ev-main .elementor-form { background:#fff; border:1px solid var(--ev-line); border-radius:12px; padding:32px; }
#content.ev-main .elementor-form-fields-wrapper { display:flex; flex-wrap:wrap; margin:-8px; }
#content.ev-main .elementor-field-group { padding:8px; margin:0; min-width:0; gap:8px; }
#content.ev-main .elementor-field-label { font-family:Montserrat,sans-serif; font-size:13px; font-weight:600; color:var(--ev-ink); line-height:1.5; }
#content.ev-main input:not([type=checkbox]):not([type=hidden]):not([type=range]), #content.ev-main textarea, #content.ev-main select { width:100%; max-width:100%; min-height:48px; background:#fff; color:var(--ev-ink); border:1px solid #bfcfd0; padding:11px 12px; border-radius:5px; font-family:Montserrat,sans-serif; font-size:16px; line-height:1.6; box-shadow:none; }
#content.ev-main textarea { min-height:132px; resize:vertical; }
#content.ev-main input:focus, #content.ev-main textarea:focus { outline:2px solid #19929b; outline-offset:2px; border-color:#19929b; }
#content.ev-main .elementor-field-type-html, #content.ev-main .elementor-form label:has(input[type=checkbox]) { font-size:12px; line-height:1.7; color:var(--ev-muted); }
#content.ev-main .elementor-field-type-submit { justify-content:flex-start; }
#content.ev-main .elementor-field-group .elementor-button { width:auto; min-width:150px; }
#content.ev-main .ev-google_maps iframe { width:100%; min-height:360px; border:0; border-radius:12px; }
#content.ev-main .elementor-headline-dynamic-wrapper { height:auto; width:auto; }
#content.ev-main .elementor-headline svg { display:none; }
#content.ev-main .pricing-container { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; width:100%; }
#content.ev-main .pricing-package { width:auto; margin:0; padding:24px; border:1px solid var(--ev-line); border-radius:12px; box-shadow:none; background:white; color:var(--ev-ink); }
#content.ev-main .pricing-package h3 { font-size:25px; }
#content.ev-main .pricing-package p { font-size:14px; }
#content.ev-main .pricing-package .period { font-size:13px; font-weight:400; }
#content.ev-main .pricing-package .list { margin-top:24px; }
#content.ev-main .pricing-package ul { padding-left:18px; font-size:13px; }
#content.ev-main .pricing-package li { line-height:1.65; margin-bottom:12px; }
#content.ev-main .slider-container { max-width:650px; margin:0 auto 36px; }
#content.ev-main .slider-controls { display:flex; align-items:center; gap:16px; }
#content.ev-main #user-slider { flex:1; min-width:0; accent-color:#19929b; }
#content.ev-main .arrow-btn { width:44px; height:44px; min-width:44px; padding:0; background:#edf6f6; color:#147d85; border:1px solid var(--ev-line); border-radius:6px; font-size:24px; }
.ev-restyled .ev-footer { margin:0; padding:64px 24px 24px; background:#15282a; color:#fff; }
.ev-footer-grid { display:grid; grid-template-columns:.9fr 1.5fr 1fr; max-width:1168px; gap:64px; margin:0 auto; }
.ev-footer-logo { display:block; width:152px; height:auto; max-height:58px; object-fit:contain; filter:brightness(0) invert(1); }
.ev-footer-socials { display:flex; gap:20px; margin-top:28px; }
.ev-footer a { font-family:Montserrat,sans-serif; color:#d5e9eb; text-decoration:none; font-size:13px; line-height:1.65; }
.ev-footer a:hover { color:#fff; text-decoration:underline; text-underline-offset:4px; }
.ev-footer .ev-footer-heading { font-family:Montserrat,sans-serif; color:#fff; font-size:14px; font-weight:600; letter-spacing:0; line-height:1.5; text-transform:none; margin:0 0 20px; }
.ev-footer-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 24px; list-style:none; margin:0; padding:0; }
.ev-footer-link { padding:0; margin:0; list-style:none; }
.ev-footer p { font-size:13px; color:#d5e9eb; line-height:1.8; margin:0 0 16px; }
.ev-footer-bottom { display:flex; align-items:start; justify-content:space-between; gap:24px; max-width:1168px; margin:48px auto 0; padding-top:22px; border-top:1px solid #ffffff26; }
.ev-footer .ev-copyright { margin:0; font-size:11px; }
.ev-footer-legal { display:flex; gap:20px; flex-wrap:wrap; }
.ev-footer-legal a { font-size:11px; }
.ev-restyled a:focus-visible, .ev-restyled button:focus-visible, .ev-restyled summary:focus-visible { outline:2px solid #19929b; outline-offset:4px; }
/* Keep the reviewed hardware composition, with typography shared by the rest of the site. */
#content.ev-main #infrastructure-hero { margin:0; padding:40px 24px 24px; }
#content.ev-main #infrastructure-hero > .e-con-inner { max-width:1168px; }
#content.ev-main #infrastructure-hero .ev-heading { font-family:Montserrat,sans-serif; font-weight:600; font-size:clamp(34px,4vw,56px); line-height:1.13; letter-spacing:-.045em; text-transform:none; }
#content.ev-main #infrastructure-hero .ev-word { color:#19929b; }
#content.ev-main #infrastructure-hero .ev-line { color:#15282a; margin-top:6px; }
#content.ev-main #infrastructure-hero .elementor-heading-title { font-family:Montserrat,sans-serif; font-size:clamp(18px,1.8vw,24px); font-weight:400; line-height:1.6; letter-spacing:-.015em; text-transform:none; color:var(--ev-muted); }
#content.ev-main #infrastructure-hero .hp-text { padding:0; }
#content.ev-main #infrastructure-hero .hp-bounce-btn { transform:none; animation:none; }
@media(max-width:1023px) {
  .ev-grid-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ev-footer-grid { grid-template-columns:1fr 1.4fr; gap:40px; }
  .ev-footer-contact { grid-column:1 / -1; display:grid; grid-template-columns:1fr 1fr; gap:16px; }
  .ev-footer-contact h2 { grid-column:1 / -1; }
  .ev-contact-section .ev-section-inner { gap:32px; }
  #content.ev-main .pricing-container { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:767px) {
  #content.ev-main { font-size:15px; }
  #content.ev-main p, #content.ev-main .elementor-icon-list-text { font-size:15px; line-height:1.8; }
  .ev-restyled .ev-header-inner { min-height:76px; }
  .ev-section { padding:44px 20px; }
  .ev-section-inner, .ev-group { gap:24px; }
  .ev-page-intro { padding:44px 20px; }
  .ev-grid-columns { grid-template-columns:1fr; }
  .ev-grid-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
  #content.ev-main .ev-service-card { padding:20px 16px; gap:20px; min-height:176px; border-radius:8px; }
  #content.ev-main .ev-service-card img { width:48px; height:48px; }
  #content.ev-main .ev-service-card h2, #content.ev-main .ev-service-card h3, #content.ev-main .ev-service-card h4, #content.ev-main .ev-service-card h5 { font-size:15px; line-height:1.4; }
  .ev-service-card .ev-heading a::after { top:18px; right:16px; font-size:17px; }
  .ev-logo-sequence { gap:28px; padding-right:28px; }
  .ev-logo-sequence .ev-client-logo { flex-basis:104px; width:104px; height:48px; }
  #content.ev-main .ev-client-logo img { max-width:82px; height:30px; }
  .ev-clients-section { padding:24px 20px 32px; }
  .ev-contact-section .ev-section-inner { display:flex; gap:28px; }
  #content.ev-main .elementor-form { padding:20px; border-radius:8px; }
  #content.ev-main .elementor-form .elementor-field-group { width:100%; }
  #content.ev-main .elementor-form label:has(input[type=checkbox]) { margin-inline:8px; }
  #content.ev-main .pricing-container { grid-template-columns:1fr; }
  #content.ev-main .pricing-package { padding:24px; }
  .ev-restyled .ev-footer { padding:40px 20px 24px; }
  .ev-footer-grid { grid-template-columns:1fr; gap:32px; }
  .ev-footer-links { gap:12px 20px; }
  .ev-footer-contact { display:block; }
  .ev-footer-bottom { flex-direction:column; gap:16px; margin-top:32px; }
  .ev-footer-legal { gap:12px 20px; }
  #content.ev-main #infrastructure-hero { padding:20px 20px 12px; }
  #content.ev-main #infrastructure-hero .ev-heading { font-size:clamp(29px,8.3vw,36px); line-height:1.2; }
  #content.ev-main #infrastructure-hero .elementor-heading-title { font-size:17px; line-height:1.65; max-width:300px; }
  #content.ev-main #infrastructure-hero > .e-con-inner { padding-block:24px; min-height:320px; }
  #content.ev-main #infrastructure-hero .ev-visual { inset:-12px -28px -12px 24%; opacity:.62; }
}
@media(max-width:359px) { .ev-grid-cards { grid-template-columns:1fr; } .ev-footer-links { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .ev-service-card { transition:none; } }

#content.ev-main #infrastructure-hero .ev-poster, #content.ev-main #infrastructure-hero .ev-video { max-width:none; }

#content.ev-main a.ev-service-card { color:var(--ev-ink); text-decoration:none; }
#content.ev-main .ev-service-card .elementor-heading-title { font-family:Montserrat,sans-serif; font-size:20px; font-weight:600; line-height:1.4; letter-spacing:-.02em; }
.ev-service-card[href]::after { content:'↗'; position:absolute; right:24px; top:24px; color:#19929b; font-size:20px; }
.ev-anchor { display:block; scroll-margin-top:24px; }
@media(max-width:767px) { #content.ev-main .ev-service-card .elementor-heading-title { font-size:15px; } .ev-service-card[href]::after { top:16px;right:16px;font-size:17px; } }

.ev-footer .ev-footer-links li { font-size:13px; line-height:1.65; }
#content.ev-main.ev-archive { max-width:1168px; min-height:45vh; margin:auto; padding:56px 24px; }

#content.ev-main .ev-title-lockup { flex-direction:row; align-items:center; gap:18px; }
#content.ev-main .ev-title-lockup .ev-image { flex:0 0 56px; width:56px; }
#content.ev-main .ev-title-lockup .ev-image img { width:56px; height:56px; object-fit:contain; }
#content.ev-main .ev-artwork { display:flex; align-items:center; justify-content:center; min-width:0; }
#content.ev-main .ev-artwork .ev-service-art { display:block; width:100%; height:auto; max-height:440px; object-fit:contain; mix-blend-mode:multiply; }
#content.ev-main .ev-artwork .ev-art-stack { display:grid; width:100%; max-width:440px; }
#content.ev-main .ev-art-stack > img { grid-area:1/1; width:100%; height:auto; }

#content.ev-main h5, #content.ev-main h6 { font-family:Montserrat,sans-serif; font-weight:600; font-size:18px; line-height:1.4; letter-spacing:-.02em; text-transform:none; color:var(--ev-ink); margin:0; }
#content.ev-main .e-n-accordion-item { border:1px solid var(--ev-line); border-radius:8px; background:white; margin-bottom:12px; }
#content.ev-main .e-n-accordion-item-title { padding:20px; color:var(--ev-ink); background:white; }
#content.ev-main .e-n-accordion-item-title-text { font-family:Montserrat,sans-serif; font-size:18px; line-height:1.5; font-weight:600; }
#content.ev-main .e-n-accordion-item > .e-con { padding:20px; width:100%; background:#f5f8f8; }
#content.ev-main .elementor-field-type-html { text-align:left; }
#content.ev-main .tooltip { max-width:min(290px,80vw); font-family:Montserrat,sans-serif; font-size:12px; line-height:1.65; }

#content.ev-main .ev-widget { margin:0; width:100%; }
.ev-contact-heading { display:flex; flex-direction:column; gap:24px; }
@media(max-width:767px) { #content.ev-main p, #content.ev-main .elementor-icon-list-text { font-size:16px; } .ev-footer a, .ev-footer p { font-size:14px; } }

/* Keep consent preferences clear of the native assistant at the bottom right. */
.ev-restyled .cookiepal-btn-revisit-wrapper.cookiepal-revisit-bottom-right { left:16px !important; right:auto !important; bottom:16px !important; width:44px; height:44px; }
.ev-restyled .cookiepal-btn-revisit { width:44px; height:44px; min-width:44px; padding:0; border-radius:50%; }

#content.ev-main, .ev-footer { overflow-wrap:anywhere; }
.ev-table-scroll { min-width:0; max-width:100%; overflow-x:auto; border:1px solid var(--ev-line); border-radius:8px; }
.ev-table-scroll table { margin:0; width:100%; min-width:640px; border-collapse:collapse; font-size:14px; }
.ev-table-scroll th, .ev-table-scroll td { padding:14px; border:1px solid var(--ev-line); text-align:left; line-height:1.6; }
.ev-table-scroll th { background:#edf6f6; color:var(--ev-ink); }
#content.ev-main .pricing-package li { position:relative; }
#content.ev-main .tooltip { display:none; left:50%; right:auto; transform:translateX(-50%); width:min(290px,80vw); z-index:5; }
#content.ev-main .pricing-package li:hover .tooltip, #content.ev-main .pricing-package li:focus-within .tooltip { display:block; visibility:visible; opacity:1; }

/* The unified assistant preview supplies the new Evenir chat once per page. */
body.ev-restyled:has(#evenir-assistant) elevenlabs-convai:not(#evenir-assistant) { display:none !important; }
body.ev-restyled:has(#evenir-assistant) .ev-footer { padding-bottom:104px; }

/* Legacy angled masks are decorative and must not cover the new content grid. */
#content.ev-main .elementor-shape { display:none !important; }

/* Service pages use real two-column compositions rather than legacy decorative nodes. */
#content.ev-main .ev-widget { max-width:100%; --container-widget-width:100%; --container-widget-flex-grow:1; align-self:stretch; }
#content.ev-main .ev-form { max-width:none; justify-self:stretch; flex-basis:auto; }
#content.ev-main .ev-contact-section .elementor-form { width:100%; max-width:none; }
#content.ev-main .ev-page-intro > .ev-section-inner.ev-grid-columns { grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); gap:64px; align-items:center; }
#content.ev-main .ev-page-intro .ev-group { gap:24px; }
#content.ev-main .ev-page-intro .ev-title-lockup { gap:14px; }
#content.ev-main .ev-title-lockup .ev-image { flex:0 0 44px; width:44px; }
#content.ev-main .ev-title-lockup .ev-image img { width:44px; height:44px; }
#content.ev-main img[data-ev-illustration] { mix-blend-mode:multiply; }
#content.ev-main .ev-service-card img[data-ev-illustration] { width:100%; max-width:220px; height:132px; object-fit:contain; }
#content.ev-main .ev-service-card:has(img[data-ev-illustration]) .ev-image { width:100%; }
#content.ev-main .career-parent { display:grid; gap:16px; width:100%; }
#content.ev-main .single-career { display:grid; grid-template-columns:minmax(0,1fr) auto; column-gap:32px; row-gap:10px; align-items:center; width:100%; margin:0; padding:28px 32px; border:1px solid var(--ev-line); border-radius:10px; box-shadow:none; background:#fff; }
#content.ev-main .single-career h4 { grid-column:1; grid-row:1; font-size:20px; line-height:1.5; margin:0; padding:0; border:0; width:auto; }
#content.ev-main .single-career .place { grid-column:1; grid-row:2; margin:0; padding:0; border:0; font-size:14px; line-height:1.5; color:var(--ev-muted); }
#content.ev-main .single-career > a { grid-column:2; grid-row:1 / 3; display:flex; gap:14px; align-items:center; padding:10px 0; font-size:13px; font-weight:600; text-transform:none; white-space:nowrap; }
#content.ev-main .single-career > a span { font-size:24px; }
@media(max-width:1023px) { #content.ev-main .ev-page-intro > .ev-section-inner.ev-grid-columns { gap:32px; } }
@media(max-width:767px) {
 #content.ev-main .ev-page-intro > .ev-section-inner.ev-grid-columns { grid-template-columns:1fr; gap:28px; }
 #content.ev-main .ev-page-intro .ev-artwork { max-width:520px; width:100%; margin-inline:auto; }
 #content.ev-main .ev-service-card img[data-ev-illustration] { height:90px; }
 #content.ev-main .single-career { padding:24px; grid-template-columns:1fr; gap:12px; }
 #content.ev-main .single-career h4 { font-size:18px; }
 #content.ev-main .single-career > a { grid-column:1; grid-row:3; justify-self:start; }
 .ev-desktop-nav > ul { gap:20px; }
}
@media(min-width:1024px) and (max-width:1199px) { .ev-header-inner { gap:24px; } .ev-desktop-nav > ul { gap:20px; } .ev-header-actions { gap:18px; } }

.ev-decoration-removed { display:none; }

/* Keep text-only service details compact after dropping empty source columns. */
.ev-section.ev-reading-section:not(.ev-page-intro) { padding-block:44px; }
.ev-reading-section:not(.ev-page-intro) > .ev-section-inner { max-width:900px; }
.ev-reading-section:not(.ev-page-intro) p { max-width:760px; }
#content.ev-main .ev-media-section img[data-ev-illustration] { object-fit:contain; }

/* Normalize content widgets whose global legacy CSS survived the Elementor layout. */
#content.ev-main .ev-video .elementor-wrapper { --video-aspect-ratio:16/9; aspect-ratio:16/9; width:100%; height:auto; min-height:0; overflow:hidden; border-radius:12px; background:#15282a; }
#content.ev-main .ev-video iframe, #content.ev-main .ev-video video { width:100%; height:100%; aspect-ratio:16/9; display:block; border:0; }
#content.ev-main .ev-clean-illustration { background:none; border:0; border-radius:0; padding:0; margin:0; aspect-ratio:auto; filter:none; transform:none; }
#content.ev-main .ev-clean-illustration::before, #content.ev-main .ev-clean-illustration::after { content:none; }
#content.ev-main .ev-clean-illustration img { border-radius:0; filter:none; opacity:1; clip-path:none; mask-image:none; }
#content.ev-main .ev-process-section .ev-grid-columns { grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; }
#content.ev-main .ev-process-section .ev-image img { width:100%; max-height:220px; object-fit:contain; }
#content.ev-main .ev-process-section .ev-group { gap:20px; }
#content.ev-main .ev-process-section .ev-section-inner { gap:36px; }
#content.ev-main .ev-calculator { padding:28px; border:1px solid var(--ev-line); border-radius:12px; background:#f5f9f9; }
#content.ev-main .ev-calculator #tab1 { display:flex; gap:24px; padding:0; }
#content.ev-main .ev-calculator .section { border:0; border-radius:0; background:none; padding:0; gap:12px; align-items:stretch; }
#content.ev-main .ev-calculator .section .heading { font-size:14px; font-weight:600; color:var(--ev-ink); text-align:left; margin:0; }
#content.ev-main .ev-calculator .section .flex { display:flex; flex-direction:row; gap:12px; align-items:center; min-width:0; }
#content.ev-main .ev-calculator .section .flex > * { flex:1; min-width:0; }
#content.ev-main .ev-calculator .section .flex p { font-size:13px; line-height:1.5; }
#content.ev-main .ev-calculator input, #content.ev-main .ev-calculator select { text-align:left; font-weight:500; width:100%; }
#content.ev-main .ev-calculator .lost-revenue { margin-top:4px; padding-top:24px; border-top:1px solid var(--ev-line); }
#content.ev-main .ev-calculator .lost-revenue .result { font-size:clamp(23px,2.4vw,32px); font-weight:600; line-height:1.4; color:#147d85; text-decoration:none; letter-spacing:-.025em; }
#content.ev-main .ev-calculator-section > .ev-section-inner { align-items:center; gap:64px; }
#content.ev-main .ev-phone-demo { background:#edf6f6; }
#content.ev-main .ev-phone-demo > .ev-section-inner { display:grid; grid-template-columns:56px minmax(0,1fr) 132px; gap:16px 28px; align-items:center; max-width:900px; }
#content.ev-main .ev-phone-demo .demo-icon { grid-column:1; grid-row:1 / 3; width:56px; height:56px; aspect-ratio:auto; padding:16px; border:1px solid var(--ev-pale); border-radius:50%; margin:0 !important; background:white; }
#content.ev-main .ev-phone-demo .demo-icon .elementor-icon-wrapper { line-height:1; }
#content.ev-main .ev-phone-demo .ev-text-editor { grid-column:2; }
#content.ev-main .ev-phone-demo .demo-phone { grid-row:2; }
#content.ev-main .ev-phone-demo .demo-phone a { background:transparent; border:0 !important; border-radius:0; padding:0 !important; color:#147d85 !important; font-size:clamp(23px,2.8vw,36px) !important; line-height:1.4; font-weight:600; letter-spacing:-.025em; }
#content.ev-main .ev-phone-demo .phone-qr { width:132px; max-width:132px; grid-column:3; grid-row:1 / 3; border:0; margin:0; padding:12px; border-radius:8px; background:#147d85; }
#content.ev-main .ev-phone-demo .phone-qr img { width:108px; height:108px; }
@media(max-width:767px) {
 #content.ev-main .ev-process-section .ev-grid-columns { grid-template-columns:1fr; gap:36px; }
 #content.ev-main .ev-process-section .ev-image img { max-height:210px; }
 #content.ev-main .ev-calculator { padding:24px 20px; }
 #content.ev-main .ev-calculator-section > .ev-section-inner { gap:28px; }
 #content.ev-main .ev-phone-demo > .ev-section-inner { grid-template-columns:44px minmax(0,1fr); gap:12px 16px; }
 #content.ev-main .ev-phone-demo .demo-icon { width:44px; height:44px; padding:10px; }
 #content.ev-main .ev-phone-demo .phone-qr { grid-column:2; grid-row:3; justify-self:start; }
}

.ev-section.ev-call-benefit { padding-block:28px; }
.ev-call-benefit > .ev-section-inner { max-width:900px; }
.ev-call-benefit .ev-group { gap:16px; }

/* Numbered process copy stays beside its marker, never in a half-empty grid. */
.ev-numbered-section > .ev-section-inner { max-width:1000px; }
#content.ev-main .ev-numbered-process { display:flex; flex-direction:column; list-style:none; padding:0; margin:0; gap:0; width:100%; }
#content.ev-main .ev-numbered-step { display:grid; grid-template-columns:48px minmax(0,1fr); gap:24px; padding:28px 0; border-bottom:1px solid var(--ev-line); align-items:start; margin:0; }
#content.ev-main .ev-numbered-step:first-child { padding-top:0; }
#content.ev-main .ev-step-number { width:48px; height:48px; display:flex; align-items:center; justify-content:center; background:#edf6f6; color:#147d85; border:1px solid var(--ev-pale); border-radius:50%; }
#content.ev-main .ev-step-number .ev-widget { width:auto; }
#content.ev-main .ev-step-number .elementor-heading-title { font-size:18px; font-weight:600; letter-spacing:0; line-height:1; color:#147d85; }
#content.ev-main .ev-step-copy { gap:12px; padding-top:5px; }
#content.ev-main .ev-step-copy h3 { font-size:22px; }
#content.ev-main .ev-step-copy p { max-width:800px; }
@media(max-width:767px) {
 #content.ev-main .ev-numbered-step { grid-template-columns:36px minmax(0,1fr); gap:16px; padding:24px 0; }
 #content.ev-main .ev-step-number { width:36px; height:36px; }
 #content.ev-main .ev-step-number .elementor-heading-title { font-size:15px; }
 #content.ev-main .ev-step-copy { padding-top:4px; gap:10px; }
 #content.ev-main .ev-step-copy h3 { font-size:20px; }
}
