/* Responsive institutional layout; desktop rules remain in their original files. */
@media(max-width:1023px){
 .dx-header .dx-nav{gap:12px}
 .dx-header .dx-links{display:none}
 .dx-header .dx-mobile{display:block}
 .dx-header .dx-mobile summary{width:44px;height:44px}
 .dx-header .dx-contact{min-height:40px}
 .dx-header .dx-mobile nav{max-height:calc(100dvh - 64px);overflow:auto;padding:12px 20px 20px;box-shadow:0 20px 30px #0002}
 .dx-header .dx-mobile nav a{min-height:48px;display:flex;align-items:center;border-radius:10px;padding:12px}
 .dx-header .dx-mobile nav a:active{background:hsl(var(--primary)/.06)}
}
@media(max-width:767px){
 html{scroll-padding-top:80px}
 .dx-header .dx-nav{padding-inline:16px;gap:8px}
 .dx-header .dx-brand{min-height:44px}
 .dx-footer .dx-footer-inner{padding:36px 20px max(24px,env(safe-area-inset-bottom))}
 .dx-footer nav{gap:12px 20px;align-items:start}
 .dx-footer nav>a{min-height:44px;display:inline-flex;align-items:center}
 .dx-footer .dx-footer-bottom{min-height:69px;gap:12px}
 .dx-footer #dx-theme-slot{width:44px;height:44px}
 .dx-footer .dx-theme-button{width:44px;height:44px;left:20px;bottom:max(24px,env(safe-area-inset-bottom));padding:12px}
 .dx-footer .dx-powered{height:44px;display:inline-flex;align-items:center;font-size:11px;padding:10px 14px}
 .dx-pillars{margin-top:56px}
 .dx-pillars .dx-pillars-heading h2{font-size:clamp(28px,8vw,36px);line-height:1.16;text-wrap:balance}
 .dx-pillars .dx-pillars-heading h2 br{display:none}
 .dx-pillars .dx-pillars-panel{padding:20px 14px;border-radius:22px}
 .dx-pillars .dx-pillars-content{padding:20px 16px}
 .dx-ecosystem h2{font-size:clamp(28px,8vw,36px);line-height:1.12;overflow-wrap:normal}
 .dx-ecosystem .dx-eco-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .dx-ecosystem .dx-eco-tab{min-height:44px;padding:10px 8px;font-size:13px}
 #newsletter h3{line-height:1.35}
 #newsletter a{touch-action:manipulation}
 section[aria-label="Digitalx em números"] dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding-block:28px}
 section[aria-label="Digitalx em números"] dd>div{font-size:clamp(27px,7.5vw,36px)}
 section[aria-label="Digitalx em números"] dt{font-size:12px;line-height:1.45}
 #dx-mission .mission-hero{padding-top:108px;padding-bottom:48px;gap:32px}
 #dx-mission .mission-hero h1{font-size:clamp(32px,8.8vw,42px);line-height:1.1}
 #dx-mission .mission-actions{gap:10px;margin-top:24px}
 #dx-mission .mission-button{min-height:46px}
 #dx-mission .mission-links{padding-top:0}
 #dx-mission .mission-heading h2{font-size:32px;line-height:1.14}
 #dx-mission .mission-illustration{height:auto;aspect-ratio:1.05;padding:16px 12px}
 #dx-mission .pillar-caption{gap:10px;font-size:12px}
 #dx-mission .mission-principles article{padding:26px 22px}
 #dx-about .about-hero{min-height:0;padding-top:108px}
 #dx-about .about-hero-copy{padding-top:0;padding-bottom:56px}
 #dx-about .about-hero h1{font-size:clamp(34px,9.3vw,46px);line-height:1.08;text-wrap:balance}
 #dx-about .about-hero-bottom{gap:24px;padding-bottom:40px}
 #dx-about .about-eyebrow{margin-bottom:24px}
 #dx-about .about-section-heading{gap:20px;margin-bottom:32px}
 #dx-about .about-section-heading h2,#dx-about .about-history h2{font-size:clamp(30px,8.5vw,38px)}
 #dx-about .about-principle-grid article{padding:24px 20px;margin-bottom:16px}
 #dx-about .about-principle-grid svg{margin-bottom:24px}
 #dx-about .about-team-card{position:relative;top:auto;padding:24px 20px 40px}
 #dx-about .about-team-inner{gap:24px}
 #dx-about .about-team-inner>img{aspect-ratio:4/4.3;max-height:480px;border-radius:16px}
 #dx-about .about-team-copy h3{font-size:30px}
 #dx-about .about-history{padding-block:48px;gap:20px}
 #dx-about .about-history-globe{max-width:340px}
 #dx-about .about-history-globe canvas{touch-action:pan-y}
 #dx-about .about-ecosystem-fit{gap:40px;padding-top:48px;padding-bottom:56px}
 #dx-about .about-fit-copy h2{font-size:30px;line-height:1.15}
 #dx-about .about-fit-copy p,#dx-about .about-fit-copy li{font-size:16px}
 .products-hero{padding:48px 20px 36px}
 .products-hero h1{font-size:clamp(32px,8.8vw,42px);line-height:1.1;text-wrap:balance}
 .products-grid{padding-inline:16px;gap:20px}
 .product-card .product-visual{height:auto;aspect-ratio:1.3}
 .product-card .brand-center{top:50%;gap:12px}
 .product-card .brand-center span{font-size:clamp(28px,8vw,36px)}
 .product-card .brand-center img,.product-card .stable-mark{width:52px;height:52px;flex-shrink:0}
 .product-card .product-info{padding:22px}
 .product-card .product-info h2{margin-top:0;font-size:27px}
 .product-card .product-info p{min-height:0;font-size:15px;line-height:1.65}
 .product-card .product-link,.product-card .coming-soon{min-height:44px;margin-top:16px}
 #main .framer-2cho2u{padding:28px 20px 56px!important;gap:32px!important;height:auto!important}
 #main .framer-2cho2u .framer-dnovey{height:auto!important;gap:20px!important;width:100%!important}
 #main .framer-2cho2u .framer-dnovey h2{font-size:30px!important;line-height:1.16!important}
 #main .framer-2cho2u .framer-dnovey p{font-size:16px!important;line-height:1.65!important}
 #main .framer-2cho2u :is(.framer-1e1qjto,.framer-1wj52i3,.framer-179z44q,.framer-1qn4v54){display:flex!important;flex-direction:column!important;gap:16px!important;width:100%!important;height:auto!important;padding:0!important}
 #main .framer-2cho2u :is(.framer-1kvcpx9-container,.framer-1g7wqlc-container,.framer-dfx5q2-container,.framer-r6l8jm-container,.framer-NpjMp){width:100%!important;height:auto!important;min-width:0!important;flex:none!important}
 #main .framer-2cho2u .framer-NpjMp{display:flex!important;flex-direction:column!important;gap:0!important;padding:0!important;box-shadow:none!important;border-radius:18px!important}
 #main .framer-2cho2u .framer-ueofkn{position:relative!important;width:100%!important;height:110px!important;flex:none!important}
 #main .framer-2cho2u .framer-1648n23{width:100%!important;height:auto!important;flex:none!important}
 #main .framer-2cho2u .framer-ol80wd{width:100%!important;height:auto!important;padding:18px 22px 26px!important;gap:12px!important}
 #main .framer-2cho2u :is(.framer-1yuedvz,.framer-6q3je3){width:100%!important;height:auto!important}
 #main .framer-2cho2u :is(h3,h4){font-size:23px!important;line-height:1.25!important;word-break:normal!important}
 #main .framer-2cho2u .framer-NpjMp p{font-size:15px!important;line-height:1.65!important;word-break:normal!important}
 .dx-contact-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:24px 20px;border-radius:20px}
 .dx-contact-dialog .dx-contact-brand{margin-bottom:24px}
 .dx-contact-dialog .dx-contact-heading h2{font-size:clamp(26px,7.5vw,32px);line-height:1.12;white-space:normal;max-width:95%;text-wrap:balance}
 .dx-contact-dialog .dx-contact-heading>p:last-child{line-height:1.6;margin-bottom:24px}
 .dx-contact-dialog .dx-contact-close{width:44px;height:44px;top:10px;right:10px}
 .dx-contact-dialog .dx-contact-fields{gap:16px}
 .dx-contact-dialog .dx-contact-fields input,.dx-contact-dialog .dx-subject-trigger{height:48px;font-size:16px}
 .dx-contact-dialog .dx-contact-fields textarea{font-size:16px;min-height:100px}
 .dx-contact-dialog .dx-contact-submit{min-height:48px;max-width:100%;width:100%;font-size:14px}
 .dx-contact-dialog .dx-subject-options button{min-height:46px;font-size:14px}
 .dx-contact-dialog .dx-subject-options{max-height:240px;overflow-y:auto}
}
@media(max-width:359px){
 .dx-header .dx-logo{width:112px;height:15px;mask-size:483px 271.7px;mask-position:-187.95px -129.05px}
 .dx-header .dx-contact{padding-inline:12px;font-size:12px}
 .mission-actions{flex-direction:column;align-items:stretch}
}
@media(hover:none) and (pointer:coarse){
 .product-card:hover,.framer-NpjMp:hover{transform:none!important}
 .about-comet-glow,.about-comet-glow:after{animation:none;opacity:.6}
}

/* Shared wordmark: native transparent SVG, without luminance masks. */
.dx-header img.dx-logo,.dx-footer img.dx-logo,.dx-contact-brand img.dx-logo{display:block!important;mask:none!important;-webkit-mask:none!important;background:none!important;object-fit:contain;object-position:left center;width:144px;height:20px;max-width:100%;filter:none}
.light .dx-header img.dx-logo,.light .dx-footer img.dx-logo,.light .dx-contact-brand img.dx-logo{filter:invert(1)}
.dx-contact-brand img.dx-logo{width:128px;height:18px}
/* The product page has no Tailwind reset; normalize the shared footer control. */
.dx-footer .dx-theme-button{appearance:none;-webkit-appearance:none;border:0;background:transparent;border-radius:50%;box-shadow:none;cursor:pointer}
.dx-theme-label{mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat}
.dx-contact-honey{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%);opacity:0;pointer-events:none}
.dx-contact-success[hidden]{display:none}
.dx-contact-success{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:250px;padding:30px 8px;gap:18px}
.dx-success-icon{width:64px;height:64px;color:var(--ct-text)}
.dx-success-icon svg{width:100%;height:100%}
.dx-contact-success h2{font:450 27px/1.15 xVf,sans-serif;letter-spacing:-.035em;margin:0;color:var(--ct-text)}
.dx-contact-success p{font:14px/1.6 xVf,sans-serif;color:var(--ct-muted);margin:0;max-width:280px}
.dx-contact-dialog.is-success{width:min(420px,calc(100% - 40px));overflow:hidden}
.dx-contact-dialog.is-success .dx-contact-heading,.dx-contact-dialog.is-success .dx-contact-form{display:none}
.dx-contact-dialog.is-leaving{opacity:0;transform:translateY(8px);transition:opacity .45s,transform .45s}
.dx-contact-dialog.is-leaving::backdrop{background:transparent;backdrop-filter:blur(0);transition:background .45s,backdrop-filter .45s}
.dx-contact-submit:disabled{opacity:.55;cursor:wait}
@media(max-width:767px){
 .dx-header img.dx-logo,.dx-footer img.dx-logo{width:128px;height:18px}
 .dx-contact-dialog{margin:auto;width:calc(100% - 40px);max-width:360px;max-height:calc(100dvh - 48px);padding:22px 20px 20px}
 .dx-contact-dialog .dx-contact-brand{margin-bottom:16px}
 .dx-contact-dialog .dx-contact-brand img.dx-logo{width:112px;height:16px}
 .dx-contact-dialog .dx-contact-heading h2{font-size:26px;line-height:1.1;margin-bottom:10px;max-width:100%}
 .dx-contact-dialog .dx-contact-heading>p:last-child{font-size:12px;line-height:1.5;margin-bottom:18px}
 .dx-contact-dialog .dx-contact-fields{gap:12px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .dx-contact-dialog .dx-contact-fields>label:nth-of-type(1),.dx-contact-dialog .dx-contact-fields>label:nth-of-type(2){grid-column:1/-1}
 .dx-contact-dialog .dx-contact-fields label{font-size:11px;gap:6px}
 .dx-contact-dialog .dx-contact-fields input,.dx-contact-dialog .dx-subject-trigger{height:42px;font-size:16px;padding:9px 10px}
 .dx-contact-dialog .dx-subject-trigger{font-size:12px;gap:6px}
 .dx-contact-dialog .dx-contact-fields input[name=phone]{font-size:16px;min-width:0}
 .dx-contact-dialog .dx-contact-fields input[name=phone]::placeholder{font-size:11px}
 .dx-contact-dialog .dx-contact-fields textarea{min-height:74px;height:74px;padding:10px;font-size:16px}
 .dx-contact-dialog .dx-contact-fields textarea::placeholder{font-size:13px}
 .dx-contact-dialog .dx-contact-submit-row{margin-top:16px}
 .dx-contact-dialog .dx-contact-submit{min-height:44px;height:44px}
 .dx-contact-dialog .dx-contact-close{width:32px;height:32px;top:12px;right:12px}
 .dx-contact-dialog .dx-contact-close:focus:not(:focus-visible){outline:none}
 .dx-contact-dialog .dx-subject-options{left:auto;right:0;width:max(100%,210px);max-width:calc(100vw - 80px)}
 .dx-contact-dialog.is-success{max-width:330px}
 .dx-contact-success{min-height:230px;padding-inline:0}
 .dx-contact-success h2{font-size:25px}
}
@media(max-width:359px){.dx-header img.dx-logo{width:112px;height:16px}.dx-contact-dialog{width:calc(100% - 28px);padding-inline:16px}.dx-contact-dialog .dx-contact-heading h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){.dx-contact-dialog.is-leaving{transform:none;transition:opacity .15s}}

/* Viewport-controlled mobile motion; desktop hover is unchanged. */
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
.dx-eco-stage.dx-auto-motion::after{opacity:1;animation:dx-border-orbit 3.8s linear infinite}
.dx-pillars-card.dx-auto-motion .dx-symbol-image{filter:brightness(1.2) drop-shadow(0 0 8px #b8c7dc38);transform:translateY(-2px)}
.dx-pillars-card.dx-auto-motion .dx-orbit-light{opacity:1}

.dx-archive-cards .group.dx-auto-motion .group-hover\:-inset-3{inset: -0.75rem;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:-inset-6{inset: -1.5rem;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:-right-4{right: -1rem;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:bottom-3{bottom: 0.75rem;}



.dx-archive-cards .group.dx-auto-motion .group-hover\:-translate-x-4,.dx-archive-cards .group\/heading:hover .group-hover\/heading\:translate-x-1{transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}

.dx-archive-cards .group.dx-auto-motion .group-hover\:-translate-x-4{--tw-translate-x: -1rem;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:translate-x-4{--tw-translate-x: 1rem;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:-rotate-3,.dx-archive-cards .group.dx-auto-motion .group-hover\:translate-x-4{transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}

.dx-archive-cards .group.dx-auto-motion .group-hover\:-rotate-3{--tw-rotate: -3deg;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:rotate-3{--tw-rotate: 3deg;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:rotate-3,.dx-archive-cards .group.dx-auto-motion .group-hover\:skew-y-\[12deg\]{transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}

.dx-archive-cards .group.dx-auto-motion .group-hover\:skew-y-\[12deg\]{--tw-skew-y: 12deg;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:scale-110{--tw-scale-x: 1.1; --tw-scale-y: 1.1;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:scale-110,.dx-archive-cards .group.dx-auto-motion .group-hover\:scale-75{transform: translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));}

.dx-archive-cards .group.dx-auto-motion .group-hover\:scale-75{--tw-scale-x: .75; --tw-scale-y: .75;}


.dx-archive-cards .group.dx-auto-motion .group-hover\:opacity-100,.dx-archive-cards .group\/heading:hover .group-hover\/heading\:opacity-100{opacity: 1;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:opacity-70{opacity: 0.7;}

.dx-archive-cards .group.dx-auto-motion .group-hover\:opacity-75{opacity: 0.75;}
}

/* Keep mission artwork and its caption inside the mobile card. */
@media(max-width:767px){
 #dx-mission .mission-illustration{box-sizing:border-box;height:clamp(300px,90vw,390px);aspect-ratio:auto;padding:18px 12px}
 #dx-mission .mission-illustration .pillar-scene{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:12px}
 #dx-mission .pillar-scene>svg{display:block;width:100%;height:100%;min-height:0;max-height:none}
 #dx-mission .pillar-caption{border-top:0;margin-top:0;padding-top:0;min-width:0;line-height:1.45;align-items:center}
 #dx-mission .pillar-caption span{flex-shrink:0}
}

