/* Shared type, palette, and spacing tokens for the complete service page. */
:root{--site-font:"Penva Inter",Inter,system-ui,-apple-system,"Segoe UI",sans-serif;--site-navy:#0b104a;--site-ink:#10183a;--site-text:#263752;--site-muted:#61718a;--site-blue:#2d63ff;--site-blue-hover:#174bd2;--site-surface:#fff;--site-subtle:#f6f8fc;--site-border:#dce4f0;--site-section-space:56px;--site-heading-space:32px}
body{font-family:var(--site-font);color:var(--site-text)}
.elementor-2902,.elementor-2902 .elementor-widget-text-editor,.elementor-2902 .elementor-heading-title,.elementor-2902 .elementor-icon-box-content,.elementor-2902 .elementor-icon-list-text,.elementor-2902 button,.elementor-2902 input,.elementor-2902 select,.elementor-2902 textarea,.elementor-2902 summary{font-family:var(--site-font)!important}
.elementor-2902 .penva-home{--font-sans:var(--site-font);--font-body:var(--site-font);--font-heading:var(--site-font);--color-heading:var(--site-ink);--color-text:var(--site-text);--color-text-muted:var(--site-muted);--color-primary:var(--site-blue);--color-primary-hover:var(--site-blue-hover);--color-navy:var(--site-navy);--color-border:var(--site-border);--color-background-subtle:var(--site-subtle)}
.elementor-2902>.e-parent>.e-con-inner>.elementor-widget-heading h2,.elementor-2902 .penva-home .section-heading h2{font-family:var(--site-font)!important;font-size:clamp(28px,2.7vw,40px)!important;font-weight:700!important;letter-spacing:-.035em!important;line-height:1.2!important;color:var(--site-ink)!important;margin:0!important;text-wrap:balance}
.elementor-2902>.e-parent>.e-con-inner>.elementor-widget-heading h2 span{color:var(--site-blue)!important}
.elementor-2902 .penva-home .section-inner{min-height:0!important}
.elementor-2902 .penva-home .section-heading{margin:0!important;padding:0!important}
.elementor-2902 .pv-root{--sans:var(--site-font);--ink:var(--site-ink);--muted:var(--site-muted);--accent:var(--site-blue);--accent-deep:var(--site-blue-hover);--hairline:var(--site-border)}
.elementor-2902 .pv-root :is(label,input,select,textarea,button,p,h2,h3,h5,small,span,summary,div),.elementor-2902 .ue-pkg-name,.elementor-2902 .pp-mm__root,.elementor-2902 .pp-mm__layer,.elementor-2902 .pp-mm__card{font-family:var(--site-font)!important}
.elementor-2902 .pv-root .pv-h{font-family:var(--site-font)!important;font-size:24px!important;font-weight:700!important;line-height:1.25!important;letter-spacing:-.025em!important}
.elementor-2902 .pv-root .pv-head h2{font-family:var(--site-font)!important;font-size:18px!important;line-height:1.3!important;font-weight:700!important}
.elementor-2902 .penva-home .button{font-family:var(--site-font);font-weight:600;letter-spacing:0;text-transform:none}
.service-hero{padding:24px 32px;background:var(--site-subtle)}
.service-hero__surface{position:relative;display:grid;align-items:center;min-height:min(900px,calc(100svh - 48px));max-width:1536px;margin-inline:auto;padding:112px clamp(48px,5vw,96px);background:radial-gradient(ellipse at 85% 5%,#224ac22e,transparent 55%),var(--site-navy);border:1px solid #ffffff0a;border-radius:32px}
.service-hero__inner{width:100%;margin-inline:auto}
.service-hero__brand{position:absolute;top:32px;left:clamp(48px,5vw,96px);display:inline-flex;align-items:center;min-height:56px;border-radius:8px}
.service-hero__brand img{display:block;width:142px;height:auto}
.service-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,560px);gap:clamp(48px,7vw,112px);align-items:center}
.service-hero__intro{min-width:0;text-align:left}
.elementor-2902 .service-hero__title{max-width:12ch;margin:0;color:#fff;font-family:var(--site-font);font-size:clamp(44px,4.7vw,68px);font-weight:700;line-height:1.08;letter-spacing:-.045em;text-wrap:balance}
.service-hero__actions{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:12px;margin-top:32px}
.service-hero__button{display:inline-flex;justify-content:center;align-items:center;gap:10px;min-height:52px;padding:14px 20px;border:1px solid transparent;border-radius:10px;font-family:var(--site-font);font-size:14px;font-weight:600;line-height:1.4;letter-spacing:0;text-decoration:none!important;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease;text-transform:none;white-space:nowrap}
.service-hero__button svg{flex:none}
.service-hero__button--primary{color:var(--site-navy)!important;background:#fff;border-color:#fff}
.service-hero__button--primary:hover{background:#eaf0ff;border-color:#eaf0ff;box-shadow:0 6px 20px #00000014}
.service-hero__button--secondary{color:#fff!important;background:#ffffff08;border-color:#ffffff50}
.service-hero__button--secondary:hover{background:#ffffff13;border-color:#ffffffa0}
.service-hero__button:focus-visible,.service-hero__brand:focus-visible{outline:3px solid #a9c3ff;outline-offset:4px}
.service-hero__scope{min-width:0}
.service-hero__scope .elementor-widget-html{width:100%;margin:0}
.service-hero__scope .pv-widget{max-width:none;box-shadow:0 24px 60px #00000024;border:1px solid #ffffff33}
.service-hero__scope .pv-head{min-height:80px;gap:16px;padding:20px 22px}
.service-hero__scope .pv-body{padding:24px 22px}
.service-hero__scope .pv-head .pv-title{flex:1;min-width:0}
.service-hero__scope .pv-head h2{white-space:normal;overflow:visible}
@media(min-width:1024px) and (max-width:1279px){.service-hero__surface{padding-inline:32px}.service-hero__brand{left:32px}.service-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,500px);gap:36px}.elementor-2902 .service-hero__title{font-size:48px}.service-hero__button{padding-inline:16px}}
@media(max-width:1023px){.service-hero{padding:16px}.service-hero__surface{display:block;min-height:0;padding:28px 32px 32px;border-radius:24px}.service-hero__brand{position:static;display:flex;width:max-content;margin-inline:auto}.service-hero__grid{grid-template-columns:1fr;gap:32px;padding-top:28px}.service-hero__intro{text-align:center}.service-hero__intro .service-hero__title{margin-inline:auto}.service-hero__intro .service-hero__actions{justify-content:center}.elementor-2902 .service-hero__title{max-width:16ch;font-size:clamp(40px,6.4vw,56px)}.service-hero__actions{margin-top:24px}.service-hero__scope{width:100%;max-width:600px;justify-self:center}}
@media(max-width:600px){.service-hero{padding:12px}.service-hero__surface{padding:24px 18px;border-radius:22px}.service-hero__brand img{width:120px}.service-hero__grid{gap:24px;padding-top:24px}.elementor-2902 .service-hero__title{font-size:36px;max-width:13ch}.service-hero__actions{gap:10px}.service-hero__button{width:100%;min-height:48px;padding:12px 16px}.service-hero__scope .pv-head{padding:16px;gap:12px;min-height:0;flex-wrap:nowrap}.service-hero__scope .pv-head .pv-title{flex:1 1 auto}.elementor-2902 .service-hero__scope .pv-head h2{font-size:16px!important}.service-hero__scope .pv-btn-sm{font-size:12px;padding:9px}.service-hero__scope .pv-body{padding:20px 16px}.elementor-2902 .pv-root .pv-h{font-size:22px!important}}
@media(prefers-reduced-motion:reduce){.service-hero__button{transition:none}}
.report-preview{position:relative;width:min(350px,100%);margin-inline:auto}
.comparison-value { display: flex; align-items: flex-start; gap: 10px; }
.comparison-mark { flex: none; margin-top: 2px; }
.comparison-mark--negative { color: #b42318; }
.comparison-mark--positive { color: #08794c; }
.asset-dialog { width: min(960px, calc(100% - 24px)); max-height: calc(100dvh - 24px); padding: 0; border: 1px solid var(--site-border); border-radius: 14px; background: white; color: var(--site-ink); }
.asset-dialog::backdrop { background: #10183abf; }
.asset-dialog > header { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 12px 16px; border-bottom: 1px solid var(--site-border); }
.asset-dialog > header h2 { margin: 0; font: 650 18px/1.4 var(--site-font); }
.asset-dialog [data-close] { min-width: 44px; min-height: 44px; padding: 4px; font-size: 24px; line-height: 1; }
.elementor-2902 > .elementor-element-43a777d { position: sticky; top: 0; z-index: 50; background: white; }
.elementor-element-43a777d .e-con-inner { width: 100%; min-width: 0; }
.service-nav { display: flex; align-items: center; width: 100%; min-width: 0; max-width: 100%; min-height: 51px; overflow-x: auto; scrollbar-width: none; }
.service-nav a { flex: none; display: flex; align-items: center; min-height: 51px; padding-inline: 18px; border-inline-end: 1px solid #f1f3f7; color: var(--site-blue); font: 550 14px/1.4 var(--site-font); }
.service-nav a[aria-current="location"] { color: var(--site-ink); }
.service-nav a:hover { background: var(--site-subtle); }
.service-nav a:focus-visible { outline-offset: -3px; }
.site-reading-progress { position: fixed; bottom: 0; left: 0; width: 100%; height: 4px; background: #18c88c; transform: scaleX(0); transform-origin: left; pointer-events: none; z-index: 50; }
.uecl-item-row.uc-item-active + .uecl-acc-content { display: block !important; }
.uecl-item-row:focus-visible { outline: 2px solid var(--site-blue); outline-offset: -3px; }
