/* DAXUS — native WordPress blocks, responsive presentation. */
:root {
  --dx-bg:#0b111b; --dx-panel:#121d2c; --dx-text:#f5f7fb;
  --dx-muted:#b7c4d5; --dx-blue:#0b69bd; --dx-accent:#65b9f2;
  --dx-line:rgba(184,208,234,.18); --dx-gutter:clamp(22px,4.7vw,72px);
  --wp--preset--font-family--gilroy-light:"DM Sans",sans-serif;
  --wp--preset--font-family--montserrat:"DM Sans",sans-serif;
}
.daxus-refresh { background:var(--dx-bg); color:var(--dx-text); margin:0; padding:0; font-family:"DM Sans",sans-serif; }
.daxus-refresh *, .daxus-refresh *::before, .daxus-refresh *::after { box-sizing:border-box; }
.daxus-refresh .wp-site-blocks { padding:0; }
.daxus-refresh .wp-site-blocks > * { margin-block:0; }
.daxus-refresh img { max-width:100%; }
.daxus-refresh a { text-underline-offset:5px; }
.daxus-refresh :where(a,button,input,textarea,select):focus-visible { outline:3px solid #69c2ff; outline-offset:5px; }
.dx-shell { width:min(100% - var(--dx-gutter)*2,1280px); margin-inline:auto!important; }
.dx-header .wp-block-group,.dx-home .wp-block-group,.dx-footer .wp-block-group { margin-block-start:0; }
.dx-home h1,.dx-home h2,.dx-home h3,.dx-footer h2,.dx-footer h3 { font-family:"DM Sans",sans-serif; font-weight:400; text-wrap:balance; margin:0; }
.dx-home h2,.dx-footer h2 { font-size:clamp(32px,3.5vw,50px); line-height:1.1; letter-spacing:-.04em; }
.dx-home h3 { font-size:25px; line-height:1.25; letter-spacing:-.025em; }
.dx-home p,.dx-footer p { font-size:16px; line-height:1.7; margin:0 0 18px; }
.dx-home .dx-eyebrow,.dx-footer .dx-eyebrow { font-size:11px; font-weight:700; letter-spacing:.17em; color:var(--dx-accent); line-height:1.7; margin:0 0 22px; }
.dx-home .dx-lead { font-size:clamp(17px,1.55vw,21px); line-height:1.6; }
.dx-section { padding-block:clamp(60px,7.5vw,105px); }
.dx-section-top { display:flex; align-items:end; justify-content:space-between; gap:30px; margin-bottom:42px!important; }
.dx-section-top .dx-text-link { margin:0; flex-shrink:0; }
.dx-text-link a { display:inline-flex; align-items:center; gap:24px; text-decoration:none; font-weight:700; padding-block:8px; }
.dx-text-link a:hover { color:var(--dx-accent); }
.dx-text-link span,.dx-solution h3 span { transition:transform .18s ease; }
.dx-text-link a:hover span,.dx-solution a:hover span { transform:translate(3px,-3px); }
.dx-actions.wp-block-buttons { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px!important; }
.dx-button.wp-block-button { width:auto; flex:0 1 auto; margin:0; }
.dx-button .wp-block-button__link { display:inline-flex; justify-content:center; align-items:center; gap:26px; min-height:52px; padding:14px 25px; border:1px solid #3386ca; border-radius:8px; background:linear-gradient(110deg,#064787,#086bc0); color:#fff; font:700 15px/1.35 "DM Sans",sans-serif; text-decoration:none; transition:background .18s,transform .18s,border-color .18s; box-shadow:none; }
.dx-button .wp-block-button__link:hover { background:#147fd5; color:#fff; border-color:#72bcee; text-decoration:none; transform:translateY(-2px); }
.dx-button-light .wp-block-button__link { background:#f0f4fa; color:#142133; border-color:#f0f4fa; }
.dx-button-light .wp-block-button__link:hover { background:#fff; color:#093668; }
.dx-button-outline .wp-block-button__link { background:transparent; color:#f5f7fb; border-color:#61768b; }
.dx-skip { position:fixed; left:16px; top:-120px; z-index:100010; color:#111!important; background:#fff; padding:12px 20px; }
.dx-skip:focus { top:14px; }

/* Header: full navigation on desktop, WordPress accessible overlay on mobile. */
.dx-header { position:relative; z-index:100; background:#090f18; border-bottom:1px solid var(--dx-line); }
.dx-header-inner { min-height:90px; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.dx-logo { flex-shrink:0; margin:0!important; line-height:0; width:160px; height:auto!important; min-height:0; }
.dx-logo a { display:block; height:auto; }
.dx-logo img { display:block; width:160px; height:auto; }
.dx-sprite { position:absolute; width:0; height:0; overflow:hidden; }
.dx-brand .dx-brand-tagline,.dx-footer .dx-brand-tagline { font-size:7px; letter-spacing:.29em; font-weight:700; color:#9dc4e4; line-height:1.4; margin:9px 0 0; }
.dx-icon { width:34px; height:34px; display:block; flex-shrink:0; }
.dx-brand-services { background:#e8eef5; color:#133c6f; border-top:1px solid #d2dce7; }
.dx-brand-services-inner { display:grid; grid-template-columns:repeat(4,1fr); padding-block:25px; }
.dx-brand-service { display:flex; align-items:center; justify-content:center; gap:16px; padding-inline:22px; border-right:1px solid #bfcddb; }
.dx-brand-service:first-child { padding-left:0; justify-content:flex-start; }
.dx-brand-service:last-child { border:0; padding-right:0; }
.dx-brand-service p { font-size:10px; letter-spacing:.08em; text-transform:uppercase; color:#15273e; line-height:1.45; margin:0; }
.dx-segment>.dx-icon { color:#173e70; width:37px; height:37px; margin-bottom:22px; }
.dx-segment>.dx-index { position:absolute; top:30px; right:28px; color:#71869d; }
.dx-solution { position:relative; }
.dx-solution>.dx-icon { color:#7cb5e1; width:31px; height:31px; margin-bottom:21px; }
.dx-solution>.dx-index { position:absolute; top:31px; right:0; }
.dx-footer .dx-footer-brand .dx-brand-tagline { margin:-16px 0 22px; color:#9dc4e4; }
.dx-header-right { display:flex; align-items:center; gap:32px; }
.dx-nav { font-size:14px!important; line-height:1.5; color:#e8edf4; margin:0!important; }
.dx-nav .wp-block-navigation__container { gap:25px; }
.dx-nav .wp-block-navigation-item__content { padding-block:14px; color:inherit; text-decoration:none; }
.dx-nav .wp-block-navigation-item__content:hover { color:var(--dx-accent); text-decoration:none; }
.dx-nav .wp-block-navigation__responsive-container-open { min-width:44px; min-height:44px; align-items:center; justify-content:center; }
.dx-header .dx-phone { font-size:13px; white-space:nowrap; margin:0; padding-left:24px; border-left:1px solid var(--dx-line); }
.dx-phone a { color:#b8c9db; text-decoration:none; }
.dx-phone a:hover { color:#fff; }
.dx-nav .wp-block-navigation__responsive-container.is-menu-open { background:#0b111b!important; color:#fff!important; padding:80px 28px 32px; }
.dx-nav .is-menu-open .wp-block-navigation__container { width:100%; align-items:stretch!important; gap:0; }
.dx-nav .is-menu-open .wp-block-navigation-item { width:100%; border-bottom:1px solid var(--dx-line); }
.dx-nav .is-menu-open .wp-block-navigation-item__content { width:100%; padding:20px 0; font-size:23px; }
.dx-nav .is-menu-open .wp-block-navigation__responsive-container-close { top:-55px; right:0; padding:10px; min-width:44px; min-height:44px; }

/* Hero: the original DAXUS photograph remains the focus. */
.dx-hero { position:relative; isolation:isolate; min-height:690px; background:#111c29; overflow:hidden; }
.dx-hero .dx-hero-media { position:absolute; inset:0; margin:0; z-index:-2; width:100%; height:100%; }
.dx-hero-media img { display:block; width:100%; height:100%; object-fit:cover; object-position:64% 58%; }
.dx-hero::after { position:absolute; content:""; inset:0; z-index:-1; background:linear-gradient(90deg,rgba(7,14,24,.98) 0%,rgba(7,14,24,.93) 29%,rgba(7,14,24,.63) 48%,rgba(7,14,24,.02) 77%),linear-gradient(0deg,rgba(7,14,24,.4),transparent 40%); }
.dx-hero-inner { padding-block:68px 52px; }
.dx-hero-copy { width:53%; max-width:670px; }
.dx-hero .dx-hero-title { font-size:clamp(40px,4.2vw,64px); line-height:1.07; letter-spacing:-.045em; margin:0 0 26px; color:#fff; text-wrap:initial; }
.dx-hero .dx-lead { color:#d3dce8; max-width:510px; margin-bottom:0; }
.dx-features { display:flex; flex-wrap:wrap; gap:12px 24px; margin-top:34px!important; }
.dx-features p { margin:0; font-size:13px; color:#dfe7ef; display:flex; align-items:center; gap:9px; }
.dx-features p::before { content:""; display:block; width:6px; height:6px; border-radius:50%; background:#78c5f7; }
.dx-proof { background:#f2f5f9; color:#162238; }
.dx-proof-inner { display:grid; grid-template-columns:1fr 1.45fr auto; align-items:center; gap:34px; padding-block:27px; }
.dx-proof p { margin:0; font-size:13px; line-height:1.6; }
.dx-proof .dx-proof-label { font-size:15px; }
.dx-stars { color:#b7853d; font-size:22px; letter-spacing:3px; }
.dx-proof-count { border-left:1px solid #cbd3de; padding-left:34px; }
.dx-proof-count strong { font-size:26px; margin-right:8px; letter-spacing:-.03em; }
.dx-proof-label a,.dx-proof-cta a { color:#153957; text-decoration:none; }
.dx-proof-cta { font-weight:700; }

/* Audience and solutions keep the site's existing structure and wording. */
.dx-segments { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.dx-segment { position:relative; display:flex; flex-direction:column; align-items:start; min-height:288px; padding:32px; border:1px solid #d9e2ec; border-radius:14px; background:#f0f4f8; color:#192b40; overflow:hidden; }
.dx-segment::after { content:""; width:140px; height:140px; border:1px solid #dce5ee; border-radius:50%; position:absolute; top:-75px; right:-45px; pointer-events:none; }
.dx-segment .dx-index { color:#1264a5; font-size:12px; font-weight:700; margin-bottom:26px; letter-spacing:.07em; }
.dx-segment h3 { font-size:28px; margin:0 0 14px; }
.dx-segment>p:not(.dx-index):not(.dx-text-link) { color:#526175; font-size:15px; }
.dx-segment .dx-text-link { margin-top:auto; margin-bottom:0; }
.dx-segment .dx-text-link a { color:#0c538e; }
.dx-solutions { background:#101a28; border-block:1px solid var(--dx-line); }
.dx-solutions-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 42px; }
.dx-solution { padding:28px 0; border-top:1px solid #344457; }
.dx-solution .dx-index { color:#79b9e5; font-size:12px; margin:0 0 23px; }
.dx-solution h3 { font-size:24px; margin:0 0 18px; }
.dx-solution h3 a { color:#f1f5fc; text-decoration:none; display:flex; align-items:start; justify-content:space-between; gap:18px; }
.dx-solution h3 span { color:#6bb7ed; font-size:21px; }
.dx-solution p:last-child { margin:0; color:#b7c4d5; font-size:15px; }
.dx-ranges-grid { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:70px; }
.dx-range-visual { aspect-ratio:1; position:relative; border-radius:18px; overflow:hidden; padding:32px; background:radial-gradient(ellipse at 50% 38%,#d6e1e9,#aebcc9 65%,#7c8d9e); }
.dx-range-visual .dx-photo { margin:0; width:100%; height:100%; display:flex; align-items:center; }
.dx-range-visual img { width:100%; height:100%; object-fit:contain; }
.dx-range-visual .dx-visual-caption { position:absolute; bottom:22px; left:28px; margin:0; color:#253d54; font-size:11px; letter-spacing:.2em; font-weight:700; }
.dx-range-copy h2 { margin-bottom:24px; }
.dx-range-copy>p:not(.dx-eyebrow) { color:#bfcbd9; }
.dx-range-copy>.dx-lead { color:#f3f7fc; }
.dx-cases { background:#edf2f7; color:#142133; }
.dx-cases .dx-eyebrow { color:#0765ae; }
.dx-cases .dx-text-link a { color:#064c85; }
.dx-case-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; }
.dx-case { border-radius:12px; overflow:hidden; background:white; color:#142133; box-shadow:0 7px 24px #10233d08; }
.dx-case .dx-photo { margin:0; aspect-ratio:4/3; overflow:hidden; background:#dce4ed; }
.dx-case .dx-photo img { width:100%; height:100%; display:block; object-fit:cover; object-position:50% 49%; transition:transform .25s; }
.dx-case:hover .dx-photo img { transform:scale(1.025); }
.dx-case-caption { padding:26px; }
.dx-case .dx-location { color:#0a65ab; font-size:12px; font-weight:700; margin:0 0 12px; }
.dx-case h3 { font-size:21px; line-height:1.4; }
.dx-about-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; }
.dx-about h2 { margin-bottom:26px; }
.dx-about p:not(.dx-eyebrow) { color:#bfcbd9; }
.dx-about .dx-lead { color:#dce5f1; }
.dx-reviews { background:#fff; color:#142133; }
.dx-reviews .dx-eyebrow { color:#0c64a6; }
.dx-reviews-widget { margin-top:34px!important; min-height:230px; }
.dx-reviews .ti-widget { max-width:100%; }

/* Shared footer and existing page content. */
.dx-footer { background:#070d15; color:#b4c2d4; border-top:1px solid var(--dx-line); }
.dx-footer-top { padding-block:64px; display:flex; gap:32px; align-items:center; justify-content:space-between; border-bottom:1px solid var(--dx-line); }
.dx-footer-top h2 { color:#fff; font-size:clamp(30px,3vw,42px); }
.dx-footer-top .dx-eyebrow { margin-bottom:16px; }
.dx-footer-top .dx-actions { margin:0!important; }
.dx-footer-grid { display:grid; grid-template-columns:1.1fr 1fr 1.3fr 1fr; gap:38px; padding-block:56px; }
.dx-footer-grid h3 { color:#eef3fa; font-size:15px; margin-bottom:18px; font-weight:700; }
.dx-footer-grid p { font-size:13px; line-height:1.9; margin-bottom:16px; }
.dx-footer-grid a { color:#b4c2d4; text-decoration:none; }
.dx-footer-grid a:hover { color:#fff; }
.dx-footer .dx-footer-brand .dx-logo { margin-bottom:26px!important; }
.dx-footer-grid .dx-small { font-size:11px; margin-top:-10px; }
.dx-footer-bottom { display:flex; flex-wrap:wrap; justify-content:space-between; gap:10px 30px; border-top:1px solid var(--dx-line); padding:22px 0; }
.dx-footer-bottom p { font-size:11px; margin:0; }
.dx-footer-bottom a { color:inherit; }
.dx-page { background:#f1f4f8; color:#142133; padding-bottom:60px; }
.dx-page-heading { padding-top:44px; padding-bottom:38px; }
.dx-breadcrumb { font-size:13px; color:#526b85; margin:0 0 18px; }
.dx-breadcrumb a { color:inherit; }
.dx-page-title { font-size:clamp(30px,4.5vw,52px); line-height:1.14; letter-spacing:-.04em; margin:0; font-weight:400; }
.dx-legacy.wp-block-post-content { width:min(100% - var(--dx-gutter)*2,1200px); margin:0 auto; padding:0; color:#142133; font-family:"DM Sans",sans-serif; }
.dx-legacy:empty { display:none; }
.dx-legacy .alignfull { margin-left:0!important; margin-right:0!important; max-width:100%; }
.dx-legacy p,.dx-legacy li { font-size:16px!important; line-height:1.75!important; }
.dx-legacy .wp-block-heading { line-height:1.3!important; text-wrap:balance; }
.dx-legacy h1 { font-size:clamp(28px,4vw,44px)!important; }
.dx-legacy h2 { font-size:clamp(26px,3.5vw,38px)!important; }
.dx-legacy h3,.dx-legacy h4 { font-size:clamp(23px,3vw,30px)!important; }
.dx-legacy .wp-block-button__link { min-height:46px; display:inline-flex; align-items:center; justify-content:center; padding:12px 23px!important; font:700 15px/1.4 "DM Sans",sans-serif!important; border-radius:8px!important; }
.dx-legacy figure { max-width:100%; }
.dx-legacy img { max-width:100%!important; height:auto; }
.dx-legacy .wp-block-gallery img,.dx-legacy .wp-block-cover__image-background { height:100%; object-fit:cover; }
.dx-legacy .wp-block-cover { overflow:hidden; }
.dx-legacy .wp-block-table { overflow-x:auto; }
.dx-legacy .wp-block-table td,.dx-legacy .wp-block-table th { font-size:14px; padding:12px; }
.dx-legacy .has-gilroy-light-font-family { font-family:"DM Sans",sans-serif!important; }
.dx-legacy input:not([type="checkbox"]):not([type="radio"]),.dx-legacy textarea,.dx-legacy select { font-size:16px!important; min-height:48px; border-radius:7px!important; max-width:100%; }
.dx-legacy .forminator-button { min-height:50px!important; border-radius:8px!important; background:#075baa!important; font-size:16px!important; padding:14px 26px!important; }
.dx-empty-page { padding-block:15px 60px; max-width:780px; }
.dx-empty-page h2 { font-size:clamp(25px,3vw,37px); }
.dx-empty-page p { font-size:18px; line-height:1.7; }
.dx-portfolio .dx-section { padding-top:0; }

/* Retain original service copy with cards that fit each screen. */
.page-id-76682602 .dx-legacy > .wp-block-group > .wp-block-heading:first-child { display:none; }
.page-id-76682602 .dx-legacy .grelha-carrossel { display:grid!important; grid-template-columns:repeat(3,minmax(0,1fr))!important; gap:24px; margin:0!important; padding:0!important; }
.page-id-76682602 .dx-legacy .grelha-carrossel > .wp-block-group { min-width:0; min-height:0; height:auto!important; flex-wrap:nowrap!important; align-items:stretch; gap:16px; padding:26px!important; border:1px solid #dce4ee; border-radius:14px!important; }
.page-id-76682602 .dx-legacy .grelha-carrossel > .wp-block-group > * { min-width:0; max-width:100%; margin:0; }
.page-id-76682602 .dx-legacy .grelha-carrossel .wp-block-spacer { display:none; }
.page-id-76682602 .dx-legacy .grelha-carrossel figure { width:100%; margin: auto 0 0!important; }
.page-id-76682602 .dx-legacy .grelha-carrossel figure img { width:100%; aspect-ratio:4/3; object-fit:cover; border-radius:8px!important; }
.page-id-76682602 .dx-legacy .grelha-carrossel .has-secondary-color { color:#50647b!important; }
.page-id-76682602 .dx-legacy .grelha-carrossel .has-contrast-color { font-size:22px!important; line-height:1.3!important; }
@media(max-width:1000px) { .page-id-76682602 .dx-legacy .grelha-carrossel { grid-template-columns:repeat(2,minmax(0,1fr))!important; } }
@media(max-width:680px) {
  .page-id-76682602 .dx-legacy .grelha-carrossel { grid-template-columns:minmax(0,1fr)!important; }
  body.wpvibe-preview-active #wpvibe-preview-banner { flex-wrap:wrap; gap:6px 12px; padding:8px 12px; font-size:10px; }
  body.wpvibe-preview-active #wpvibe-preview-banner .wpvibe-info { flex-basis:100%; order:3; font-size:9px; line-height:1.3; }
  body.wpvibe-preview-active #wpvibe-preview-banner .wpvibe-btn { padding:6px 8px; font-size:10px; line-height:1.3; }
}
@media(min-width:1500px) { .dx-hero-media img { object-position:64% 57%; } .dx-hero::after { background:linear-gradient(90deg,#080f19 0%,#080f19ed 25%,#080f1980 53%,#080f1900 83%); } }
@media(max-width:1200px) {
  .dx-header-inner { gap:24px; min-height:78px; }
  .dx-header .dx-phone { display:none; }
  .dx-nav .wp-block-navigation__container { gap:24px; }
  .dx-hero { min-height:640px; }
  .dx-hero-copy { width:56%; }
  .dx-ranges-grid,.dx-about-grid { gap:42px; }
  .dx-footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:900px) {
  .dx-nav .wp-block-navigation__responsive-container:not(.is-menu-open) { display:none!important; }
  .dx-nav .wp-block-navigation__responsive-container-open { display:flex!important; }
  .dx-header-inner { min-height:74px; }
  .dx-header .dx-phone { display:block; border:0; padding:0; }
  .dx-header-right { flex-direction:row-reverse; gap:22px; }
  .dx-logo,.dx-logo img { width:146px; }
  .dx-hero-copy { width:66%; }
  .dx-hero::after { background:linear-gradient(90deg,#080f19f7 0%,#080f19e8 35%,#080f1977 76%,#080f1940 100%); }
  .dx-proof-inner { grid-template-columns:1fr 1.3fr; gap:24px; }
  .dx-proof-cta { display:none; }
  .dx-segment { padding:24px; }
  .dx-segment h3 { font-size:24px; }
  .dx-solutions-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 30px; }
  .dx-case-grid { gap:16px; }
  .dx-case-caption { padding:20px; }
  .dx-case h3 { font-size:18px; }
}
@media(max-width:680px) {
  :root { --dx-gutter:22px; }
  .dx-header-inner { min-height:68px; gap:16px; }
  .dx-header .dx-phone { font-size:11px; }
  .dx-header-right { gap:8px; }
  .dx-logo,.dx-logo img { width:126px; }
  .dx-hero { min-height:0; padding-bottom:250px; }
  .dx-hero-inner { padding-top:35px; padding-bottom:8px; }
  .dx-hero-copy { width:100%; max-width:none; }
  .dx-hero .dx-eyebrow { font-size:9px; letter-spacing:.13em; margin-bottom:23px; }
  .dx-hero .dx-hero-title { font-size:clamp(34px,8.85vw,50px); line-height:1.1; letter-spacing:-.04em; margin-bottom:22px; }
  .dx-hero .dx-lead { font-size:16px; line-height:1.65; }
  .dx-hero .dx-hero-media { inset:auto 0 0; height:330px; }
  .dx-hero-media img { object-position:68% 58%; }
  .dx-hero::after { background:linear-gradient(180deg,#0b111b 0%,#0b111b 58%,#0b111bf2 63%,#0b111b00 80%); }
  .dx-actions.wp-block-buttons { gap:10px; margin-top:24px!important; }
  .dx-hero .dx-button { flex:1; }
  .dx-hero .dx-button .wp-block-button__link { width:100%; padding:14px 13px; font-size:13px; gap:10px; }
  .dx-features { gap:12px 18px; margin-top:24px!important; }
  .dx-features p { font-size:11px; gap:7px; }
  .dx-proof-inner { grid-template-columns:1fr; gap:16px; padding-block:24px; }
  .dx-proof-google { display:flex; align-items:center; gap:15px; flex-wrap:wrap; }
  .dx-stars { font-size:18px; letter-spacing:1px; }
  .dx-proof .dx-proof-label { font-size:13px; }
  .dx-proof-count { border-left:0; border-top:1px solid #d0d8e2; padding-left:0; padding-top:14px; }
  .dx-proof-count strong { font-size:23px; }
  .dx-proof-count p:last-child { max-width:350px; font-size:12px; margin-top:3px; }
  .dx-section { padding-block:56px; }
  .dx-segments { grid-template-columns:1fr; gap:14px; }
  .dx-segment { min-height:0; display:grid; grid-template-columns:1fr auto; gap:0 18px; padding:25px; }
  .dx-segment .dx-index { grid-column:2; grid-row:1; margin:0; align-self:center; }
  .dx-segment>.dx-icon { grid-column:1; grid-row:1; margin-bottom:20px; }
  .dx-segment .dx-index { top:25px; right:25px; }
  .dx-segment h3 { grid-row:2!important; }
  .dx-brand .dx-brand-tagline { font-size:5.5px; margin-top:7px; }
  .dx-brand-services-inner { grid-template-columns:1fr 1fr; gap:22px 0; padding-block:26px; }
  .dx-brand-service,.dx-brand-service:first-child { justify-content:flex-start; padding:0 10px; gap:13px; }
  .dx-brand-service:nth-child(2n) { border-right:0; padding-left:22px; }
  .dx-brand-service .dx-icon { width:29px; height:29px; }
  .dx-brand-service p { font-size:9px; letter-spacing:.04em; }
  .dx-segment h3 { grid-column:1; grid-row:1; font-size:25px; margin-bottom:12px; }
  .dx-segment>p:not(.dx-index) { grid-column:1/-1; }
  .dx-segment .dx-text-link { margin-top:0; }
  .dx-segment>p:not(.dx-index):not(.dx-text-link) { margin-bottom:10px; font-size:14px; }
  .dx-section-top { align-items:start; flex-direction:column; gap:20px; margin-bottom:28px!important; }
  .dx-home h2 { font-size:34px; }
  .dx-home .dx-eyebrow { margin-bottom:16px; font-size:10px; }
  .dx-solutions-grid { grid-template-columns:1fr; gap:0; }
  .dx-solution { padding:24px 0; display:grid; grid-template-columns:25px 1fr; gap:0 12px; }
  .dx-solution .dx-index { margin:5px 0 0; grid-column:1; }
  .dx-solution>.dx-icon { grid-column:1; grid-row:1; width:23px; height:23px; margin:3px 0 0; }
  .dx-solution>.dx-index { display:none; }
  .dx-solution h3 { grid-column:2; font-size:23px; }
  .dx-solution p:last-child { grid-column:2; font-size:14px; }
  .dx-ranges-grid,.dx-about-grid { grid-template-columns:1fr; gap:32px; }
  .dx-range-visual { padding:23px; aspect-ratio:1.12; }
  .dx-range-copy p:not(.dx-eyebrow) { font-size:15px; }
  .dx-case-grid { grid-template-columns:1fr; gap:22px; }
  .dx-case .dx-photo { aspect-ratio:1.25; }
  .dx-case h3 { font-size:22px; }
  .dx-case-caption { padding:25px; }
  .dx-about-grid { gap:12px; }
  .dx-reviews-widget { overflow:hidden; }
  .dx-footer-top { align-items:start; flex-direction:column; padding-block:45px; gap:27px; }
  .dx-footer-grid { grid-template-columns:1fr 1fr; gap:32px 24px; padding-block:38px; }
  .dx-footer-brand { grid-column:1/-1; }
  .dx-footer-grid>div:nth-child(3) { grid-column:1/-1; grid-row:3; }
  .dx-footer-grid h3 { font-size:14px; }
  .dx-footer-grid p { font-size:12px; }
  .dx-footer-bottom { padding-block:22px 28px; }
  .dx-footer-bottom p { font-size:10px; }
  .dx-page-heading { padding-top:28px; padding-bottom:26px; }
  .dx-legacy.wp-block-post-content { width:calc(100% - 28px); }
  .dx-legacy .is-layout-flex { flex-wrap:wrap!important; gap:14px; }
  .dx-legacy .wp-block-columns { flex-wrap:wrap!important; gap:22px; }
  .dx-legacy .wp-block-column { flex-basis:100%!important; min-width:0; }
  .dx-legacy .wp-block-group { max-width:100%; }
  .dx-legacy .wp-block-buttons { justify-content:flex-start; }
  .dx-legacy .wp-block-cover { min-height:260px; }
  .dx-legacy .grelha-carrossel { display:grid!important; grid-template-columns:1fr!important; margin-top:0!important; }
}
@media(max-width:370px) { .dx-header .dx-phone { display:none; } .dx-features { gap:10px 14px; } }

/* Header branding: the slogan spans the full logo width. */
.dx-header { --dx-brand-width:180px; }
.dx-header .dx-brand { width:var(--dx-brand-width); flex:0 0 var(--dx-brand-width); }
.dx-header .dx-logo,.dx-header .dx-logo img { width:100%; }
.dx-header .dx-brand .dx-brand-tagline { width:100%; font-size:calc(var(--dx-brand-width) * .052); font-weight:700; line-height:1.25; letter-spacing:0; margin:8px 0 0; padding:0; }
.dx-header .dx-tagline-letters { display:flex; width:100%; justify-content:space-between; white-space:nowrap; }
.dx-header .dx-tagline-letters > span { display:block; flex:0 0 auto; }

/* A sliding switch: moon at night, sun during the day. */
.dx-mode-toggle { position:relative; display:inline-block; flex:0 0 68px; width:68px; height:44px; padding:0; margin:0; color:#e8edf4; background:transparent; border:0; border-radius:22px; cursor:pointer; vertical-align:middle; -webkit-tap-highlight-color:transparent; }
.dx-mode-toggle[hidden] { display:none; }
.dx-mode-toggle::before { content:""; position:absolute; inset:5px 0; background:#1c2d43; border:1px solid #52677f; border-radius:20px; transition:background .2s,border-color .2s; }
.dx-mode-toggle::after { content:""; position:absolute; top:9px; left:4px; width:26px; height:26px; border-radius:50%; background:#edf5ff; box-shadow:0 1px 4px #0004; transform:translateX(0); transition:transform .22s ease; }
.dx-mode-toggle svg { position:absolute; top:13px; z-index:1; display:block; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; pointer-events:none; }
.dx-mode-toggle .dx-mode-moon { left:8px; color:#01478e; }
.dx-mode-toggle .dx-mode-sun { right:8px; color:#a9bdd3; }
.dx-mode-toggle:hover::before { border-color:#8fc6ee; }
.dx-light .dx-mode-toggle::before { background:#dceaf5; border-color:#9cb9d2; }
.dx-light .dx-mode-toggle::after { transform:translateX(34px); background:#fff; }
.dx-light .dx-mode-toggle .dx-mode-moon { color:#66839c; }
.dx-light .dx-mode-toggle .dx-mode-sun { color:#01478e; }
.dx-light .dx-mode-toggle:hover::before { border-color:#01478e; }
@media(max-width:1200px) { .dx-header { --dx-brand-width:170px; } .dx-header-right { gap:22px; } .dx-nav .wp-block-navigation__container { gap:20px; } }
@media(max-width:680px) { .dx-header { --dx-brand-width:146px; } .dx-header .dx-phone { display:none; } .dx-header-right { gap:8px; } .dx-header .dx-brand .dx-brand-tagline { margin-top:7px; } }

@media(prefers-reduced-motion:reduce) {
  .daxus-refresh *, .daxus-refresh *::before, .daxus-refresh *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .daxus-refresh [data-aos] { opacity:1!important; transform:none!important; }
}
