/* HeroTech Pro – estilos base. Colores, fuentes, tamaños y pesos vienen del Personalizador (variables --twt-*). */
:root{
  --twt-primary:#1e90ff;--twt-accent:#00d4ff;--twt-bg:#050b18;--twt-surface:#0b1630;
  --twt-text:#e6f0ff;--twt-muted:#9fb0cf;--twt-hl-color:#ff8a1f;
  --twt-btn-radius:999px;--twt-container:1200px;--twt-bar-h:76px;--twt-topbar-h:0px;--twt-header-h:76px;
  --twt-font-body:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --twt-font-head:var(--twt-font-body);--twt-font-hero:var(--twt-font-head);
  --twt-fs-body:16px;--twt-fw-body:400;--twt-fw-head:700;--twt-fw-title:700;--twt-fw-btn:600;
  --twt-sub-size:22px;--twt-title-size:76px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html body{margin:0;background:var(--twt-bg);color:var(--twt-text);font-family:var(--twt-font-body);font-size:var(--twt-fs-body);font-weight:var(--twt-fw-body);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;overflow-x:clip}
img,video,svg{max-width:100%;height:auto}
a{color:var(--twt-accent)}
h1,h2,h3,h4,h5,h6{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);line-height:1.15;margin:0 0 .6em}
:focus-visible{outline:3px solid var(--twt-accent);outline-offset:3px}
html body .twt-container{width:min(100% - 2rem,var(--twt-container));margin-inline:auto}
html body .twt-skip{position:absolute;left:-9999px;top:0;background:#fff;color:#000;padding:.75rem 1rem;z-index:1000}
html body .twt-skip:focus{left:1rem;top:1rem}

/* ---------- Header ---------- */
html body .twt-header{position:relative;z-index:100;background:rgba(5,11,24,.9);border-bottom:1px solid rgba(255,255,255,.07);transition:background .3s}
html body .twt-header--sticky{position:sticky;top:0}
html body{--twt-header-h:calc(var(--twt-bar-h) + var(--twt-topbar-h))}
html body.twt-has-topbar{--twt-topbar-h:38px}
html body .twt-header__bar{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:var(--twt-bar-h)}
html body .twt-brand .custom-logo{max-height:48px;width:auto;display:block}
html body .twt-brand__text{color:#fff;font-family:var(--twt-font-head);font-weight:800;font-size:1.3rem;text-decoration:none;letter-spacing:-.01em}
html body .twt-nav{display:flex;align-items:center;gap:1.75rem}
html body .twt-menu{display:flex;align-items:center;gap:1.5rem;list-style:none;margin:0;padding:0}
html body .twt-menu a{color:var(--twt-text);font-family:var(--twt-font-head);font-weight:600;letter-spacing:.02em;text-decoration:none;padding:.4rem 0;border-bottom:2px solid transparent;transition:border-color .2s,color .2s}
html body .twt-menu a:hover,html body .twt-menu .current-menu-item>a{color:#fff;border-color:var(--twt-accent)}
html body .twt-menu li{position:relative}
html body .twt-menu .sub-menu{position:absolute;top:100%;left:0;min-width:200px;list-style:none;margin:0;padding:.5rem;background:var(--twt-surface);border:1px solid rgba(255,255,255,.08);border-radius:10px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.2s}
html body .twt-menu li:hover>.sub-menu,html body .twt-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
html body .twt-menu .sub-menu a{display:block;padding:.5rem .75rem;border:0}
html body .twt-burger{display:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);border-radius:10px;cursor:pointer;padding:0;flex-direction:column;align-items:center;justify-content:center;gap:5px}
html body .twt-burger span{display:block;width:20px;height:2px;background:#fff;border-radius:2px;transition:transform .25s,opacity .2s}
html body .twt-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
html body .twt-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
html body .twt-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

html .twt-header-overlay .twt-header{position:absolute;left:0;right:0;top:0;background:linear-gradient(180deg,rgba(2,8,23,.85),rgba(2,8,23,0));border-bottom-color:transparent}
html .twt-header-overlay .twt-header--sticky{position:fixed}
html body .twt-header.is-scrolled{background:rgba(5,11,24,.92)!important;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom-color:rgba(255,255,255,.08)}
html .twt-header-hidden .twt-header{display:none}
html body.admin-bar .twt-header--sticky{top:32px}
@media (max-width:782px){html body.admin-bar .twt-header--sticky{top:46px}}

/* ---------- Botones ---------- */
html body .twt-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;padding:.95rem 1.7rem;border-radius:var(--twt-btn-radius);font-family:var(--twt-font-body);font-size:1rem;font-weight:var(--twt-fw-btn);line-height:1.1;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:transform .2s,box-shadow .25s,background .2s,color .2s,border-color .2s;white-space:nowrap}
html body .twt-btn .twt-icon{width:1.25em;height:1.25em;flex:none}
html body .twt-btn i{font-size:1.1em;line-height:1;flex:none}
html body .twt-btn svg:not(.twt-icon){width:1.1em;height:1.1em;fill:currentColor;flex:none}
html body .twt-btn:hover{transform:translateY(-2px)}
html body .twt-btn--sm{padding:.7rem 1.2rem;font-size:.95rem}
html body .twt-btn--solid{background:linear-gradient(135deg,var(--twt-primary),var(--twt-accent));color:#03101f;box-shadow:0 10px 30px -10px var(--twt-primary)}
html body .twt-btn--solid:hover{color:#03101f;box-shadow:0 14px 36px -8px var(--twt-accent)}
html body .twt-btn--outline{background:rgba(5,11,24,.55);border-color:rgba(0,212,255,.6);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
html body .twt-btn--outline:hover{background:var(--twt-accent);border-color:var(--twt-accent);color:#03101f}
html body .twt-btn--ghost{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.18);color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}
html body .twt-btn--ghost:hover{background:rgba(255,255,255,.18);color:#fff}

/* ---------- Hero ---------- */
html body .twt-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;min-height:var(--twt-hero-h,90vh);background-color:var(--twt-bg);background-image:var(--twt-hero-bg,none);background-position:var(--twt-bgpos,68% 50%);background-size:var(--twt-bgsize,cover);background-repeat:var(--twt-bgrepeat,no-repeat);background-attachment:scroll;overflow:hidden}
/* imagen fija (parallax): cualquier ancho con mouse/trackpad; en táctiles queda estática */
@media (hover:hover) and (pointer:fine){html body .twt-hero--fixed{background-attachment:fixed}}
html body .twt-hero::before{content:"";position:absolute;inset:0;z-index:-2;background:var(--twt-overlay-color,#020817);opacity:var(--twt-overlay-opacity,.45)}
html body .twt-hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(2,8,23,.9) 0%,rgba(2,8,23,.55) 42%,rgba(2,8,23,0) 75%),linear-gradient(0deg,var(--twt-bg) 0%,rgba(5,11,24,0) 18%)}
html body .twt-hero--center::after{background:radial-gradient(ellipse at center,rgba(2,8,23,.65),rgba(2,8,23,.2) 75%),linear-gradient(0deg,var(--twt-bg) 0%,rgba(5,11,24,0) 18%)}
html body .twt-hero__main{flex:1;display:flex;align-items:center;width:100%;padding:5rem 0 3rem}
html .twt-header-overlay .twt-hero--theme .twt-hero__main{padding-top:calc(var(--twt-header-h) + 3rem)}
html body .twt-hero .twt-container{width:min(100% - clamp(2rem,10vw,12rem),var(--twt-hero-w,1680px))}
html body .twt-hero__inner{max-width:720px;display:flex;flex-direction:column;align-items:flex-start;text-align:start}
html body .twt-hero--theme.twt-hero--center .twt-hero__inner{margin-inline:auto;align-items:center;text-align:center}
html body .twt-hero--theme.twt-hero--right .twt-hero__inner{margin-left:auto;align-items:flex-end;text-align:end}

html body .twt-hero__logo{display:block;width:min(var(--twt-logo-w,240px),52vw);height:auto;margin:0 0 1.4rem;filter:drop-shadow(0 12px 34px rgba(30,144,255,.35))}


html body .twt-badge{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .95rem;margin-bottom:1.4rem;border:1px solid rgba(0,212,255,.35);background:rgba(0,212,255,.08);border-radius:999px;color:var(--twt-accent);font-size:.9rem;font-weight:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
html body .twt-badge__dot{width:8px;height:8px;border-radius:50%;background:var(--twt-accent);animation:twt-pulse 2s infinite}
@keyframes twt-pulse{0%{box-shadow:0 0 0 0 rgba(0,212,255,.6)}70%,100%{box-shadow:0 0 0 10px rgba(0,212,255,0)}}

html body .twt-hero__title{font-family:var(--twt-font-hero,var(--twt-font-head));font-weight:var(--twt-fw-title,700);font-size:var(--twt-title-size,76px);line-height:1.02;letter-spacing:-.005em;color:#fff;margin:0 0 1.2rem;overflow-wrap:anywhere}
html body .twt-hl{color:var(--twt-hl-color,var(--twt-accent))}
html body .twt-hero--hlgrad .twt-hl{background:linear-gradient(90deg,var(--twt-primary),var(--twt-accent));-webkit-background-clip:text;background-clip:text;color:transparent}
html body .twt-hero__title2{display:block;margin-top:.3em;font-size:calc(var(--twt-title-size,76px)*.5);font-weight:400;letter-spacing:.42em;line-height:1.1;color:#dbe8ff}
html body .twt-hero__subtitle{max-width:38ch;font-size:min(var(--twt-sub-size,22px),max(16px,4.6vw));line-height:1.45;color:var(--twt-text);opacity:.92;margin:0}


html body .twt-hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}
html body .twt-hero--center .twt-hero__actions{justify-content:center}
html body .twt-hero--right .twt-hero__actions{justify-content:flex-end}

html body .twt-stats{display:flex;flex-wrap:wrap;gap:1rem 2.5rem;margin:2.5rem 0 0;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.14)}
html body .twt-hero--center .twt-stats{justify-content:center}
html body .twt-hero--right .twt-stats{justify-content:flex-end}
html body .twt-stats dt{font:var(--twt-fw-head) 1.6rem/1.1 var(--twt-font-head);color:#fff}
html body .twt-stats dd{margin:.2rem 0 0;font-size:.9rem;color:var(--twt-muted)}

/* entrada única del hero */
@media (prefers-reduced-motion:no-preference){
  html body .twt-hero__inner>*{animation:twt-in .7s cubic-bezier(.2,.7,.2,1) both}
  html body .twt-hero__inner>:nth-child(2){animation-delay:.08s}
  html body .twt-hero__inner>:nth-child(3){animation-delay:.16s}
  html body .twt-hero__inner>:nth-child(4){animation-delay:.24s}
  html body .twt-hero__inner>:nth-child(5){animation-delay:.32s}
  @keyframes twt-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
}

/* ---------- Barra de servicios (menú con iconos) ---------- */
html body .twt-services{position:relative;border-top:1px solid rgba(0,212,255,.3);background:linear-gradient(180deg,rgba(5,11,24,.35),rgba(5,11,24,.92));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
html body .twt-services .twt-services__list{list-style:none;margin-block:0;margin-inline:auto;padding:1.5rem 0 1.7rem;display:grid;grid-template-columns:repeat(var(--n,6),minmax(0,1fr))}
html body .twt-services .twt-services__list li{display:flex;min-width:0;margin:0;padding:0;list-style:none}
html body .twt-services .twt-services__list li+li{border-left:1px solid;border-image:linear-gradient(180deg,transparent,rgba(0,212,255,.45),transparent) 1}
html body .twt-services .twt-svc{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.4rem .75rem;text-align:center;color:var(--twt-text);text-decoration:none!important;transition:transform .25s,color .25s}
html body .twt-services .twt-svc .twt-icon,html body .twt-services .twt-svc svg{width:42px;height:42px;color:var(--twt-primary);stroke-width:1.5;margin-bottom:.6rem;transition:filter .25s,color .25s}
html body .twt-services .twt-svc svg:not(.twt-icon){fill:currentColor;stroke:none}
html body .twt-services .twt-svc i{font-size:38px;line-height:1;color:var(--twt-primary);margin-bottom:.6rem;transition:filter .25s,color .25s}
html body .twt-services .twt-svc__t{font-family:var(--twt-font-head);font-weight:700;font-size:clamp(.8rem,.72rem + .3vw,1rem);letter-spacing:.07em;line-height:1.2;color:#fff}
html body .twt-services .twt-svc__s{font-size:clamp(.68rem,.64rem + .2vw,.82rem);letter-spacing:.12em;color:var(--twt-muted);line-height:1.3}
html body .twt-services--upper .twt-svc__t,html body .twt-services--upper .twt-svc__s{text-transform:uppercase}
html body nav.twt-services a.twt-svc:hover{transform:translateY(-3px)}
html body nav.twt-services a.twt-svc:hover .twt-icon,html body nav.twt-services a.twt-svc:hover svg,html body nav.twt-services a.twt-svc:hover i{color:var(--twt-accent);filter:drop-shadow(0 0 10px rgba(0,212,255,.65))}

/* ---------- Contenido / Elementor ---------- */
html body .twt-main{display:block}
html body .twt-main--page{padding:calc(var(--twt-header-h) + 2rem) 0 4rem}
html body .twt-content{max-width:820px}
html body .twt-entry{margin-bottom:3rem}
html body .twt-entry__title{font-size:clamp(1.8rem,1.3rem + 2vw,2.6rem)}
html body .twt-entry__title a{color:#fff;text-decoration:none}
html body .elementor-page .twt-main{padding:0}
html body .elementor-widget-twt_hero,html body .elementor-widget-twt_hero>.elementor-widget-container{width:100%}

/* ---------- Widgets Twingital Tech (Elementor) ---------- */
html body .elementor-widget[class*="elementor-widget-twt_"],html body .elementor-widget[class*="elementor-widget-twt_"]>.elementor-widget-container{width:100%;max-width:100%}
/* Los widgets quedan centrados con el ancho del sitio; cada widget puede cambiar ancho, margen lateral y posición */
html body .twt-w{position:relative;color:var(--twt-text);width:min(100% - 2*var(--twt-gutter,12px),var(--twt-container,1200px));margin-inline:auto}
html body .twt-sec__head{display:grid;gap:.6rem;justify-items:center;text-align:center;margin:0 0 2.5rem}
html body .twt-sec__head--left{justify-items:start;text-align:start}
html body .twt-sec__head--right{justify-items:end;text-align:end}
html body .twt-sec__title{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:clamp(1.8rem,1.2rem + 2.4vw,3rem);line-height:1.1;color:#fff;margin:0}
html body .twt-sec__sub{color:var(--twt-muted);font-size:1.0625rem;margin:0;max-width:62ch}
html body .twt-cols{--twt-cols:3}
html body .twt-grid{display:grid;grid-template-columns:repeat(var(--twt-cols),minmax(0,1fr));gap:1.5rem}
html body .twt-actions{display:flex;flex-wrap:wrap;gap:1rem}

html body .twt-card{display:flex;flex-direction:column;align-items:start;text-align:start;background-color:rgba(255,255,255,.04);border:1px solid rgba(0,212,255,.18);border-radius:18px;padding:1.75rem;transition:border-color .25s,box-shadow .25s}
html body .twt-card:hover{border-color:rgba(0,212,255,.45)}
html body .twt-ico{flex:none;display:grid;place-items:center;width:56px;height:56px;border-radius:14px;background-color:rgba(30,144,255,.12);border:1px solid rgba(0,212,255,.25);color:var(--twt-accent);margin-bottom:1.1rem;font-size:24px;line-height:1}
html body .twt-ico svg{width:26px;height:26px;fill:currentColor}
html body .twt-ico .twt-icon{fill:none}
html body .twt-ico i{font-size:24px}

/* Servicios */
html body .twt-card__title{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:1.3rem;line-height:1.2;color:#fff;margin:0 0 .5rem}
html body .twt-card__text{margin:0;color:var(--twt-muted)}
html body .twt-card__link{display:inline-flex;align-items:center;gap:.35rem;margin-top:1.1rem;color:var(--twt-accent);font-weight:600;text-decoration:none}
html body .twt-card__link svg{width:1em;height:1em}
html body .twt-card__link:hover{text-decoration:underline;text-underline-offset:4px}

/* Clientes */
html body .twt-clients__grid,html body .twt-marquee ul{list-style:none;margin:0;padding:0}
html body .twt-clients__grid{display:grid;grid-template-columns:repeat(var(--twt-cols),minmax(0,1fr));gap:1rem}
html body .twt-clients__item{display:flex;align-items:center;justify-content:center;min-height:120px;padding:1.25rem 1.5rem;border:1px solid rgba(255,255,255,.1);border-radius:14px;background-color:rgba(255,255,255,.04);transition:border-color .25s,background-color .25s}
html body .twt-clients__item:hover{border-color:rgba(0,212,255,.4)}
html body .twt-clients__item a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;text-decoration:none}
html body .twt-clients__item img{display:block;height:64px;width:auto;max-width:100%;object-fit:contain;filter:grayscale(1) brightness(1.5);opacity:.8;transition:filter .3s,opacity .3s}
html body .twt-clients__item:hover img,html body .twt-clients--color img{filter:none;opacity:1}
html body .twt-clients__name{font-family:var(--twt-font-head);font-weight:700;font-size:1.05rem;color:var(--twt-muted);text-align:center}
html body .twt-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
html body .twt-marquee__track{display:flex;width:max-content;animation:twt-marq var(--twt-speed,30s) linear infinite}
html body .twt-marquee:hover .twt-marquee__track{animation-play-state:paused}
html body .twt-marquee ul{display:flex;gap:1rem;padding:0 .5rem}
html body .twt-marquee .twt-clients__item{flex:none;min-width:220px}
@keyframes twt-marq{to{transform:translateX(-50%)}}

/* CTA */
html body .twt-cta{position:relative;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(2rem,5vw,3.75rem);border-radius:24px;border:1px solid rgba(0,212,255,.28);background:radial-gradient(120% 150% at 0% 0%,rgba(30,144,255,.38),transparent 55%),linear-gradient(135deg,#071430,#0a1f4a 60%,#06122b)}
html body .twt-cta__body{flex:1 1 0;min-width:0;max-width:680px;display:flex;flex-direction:column;align-items:start;text-align:start}
html body .twt-cta__title{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:clamp(1.6rem,1.1rem + 2vw,2.6rem);line-height:1.12;color:#fff;margin:0 0 .6rem}
html body .twt-cta__text{margin:0;color:var(--twt-text);opacity:.88;font-size:1.0625rem}
html body .twt-cta__icon{margin-bottom:1rem}
html body .twt-cta--split .twt-actions{flex:0 0 auto;justify-content:flex-end}
html body .twt-cta--center{flex-direction:column;justify-content:center}
html body .twt-cta--center .twt-cta__body{align-items:center;text-align:center}
html body .twt-cta--center .twt-actions{justify-content:center}

/* Testimonios */
html body .twt-quote{margin:0;gap:1.1rem}
html body .twt-stars{display:flex;gap:2px;color:#ffb020}
html body .twt-star{width:18px;height:18px}
html body .twt-quote__text{margin:0;font-size:1.05rem;line-height:1.65;color:var(--twt-text)}
html body .twt-quote__who{display:flex;align-items:center;gap:.85rem;margin-top:auto;text-align:start}
html body .twt-quote__who strong{display:block;color:#fff;font-family:var(--twt-font-head);font-size:1.05rem}
html body .twt-quote__who small{display:block;color:var(--twt-muted)}
html body .twt-quote__photo{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:none}
html body .twt-quote__photo--ini{display:grid;place-items:center;background:linear-gradient(135deg,var(--twt-primary),var(--twt-accent));color:#03101f;font-weight:800;text-transform:uppercase}

/* Contadores */
html body .twt-counters__grid{display:grid;grid-template-columns:repeat(var(--twt-cols),minmax(0,1fr));gap:0;background:var(--twt-surface);border:1px solid rgba(0,212,255,.18);border-radius:20px;overflow:hidden}
html body .twt-counter{padding:2rem 1rem;text-align:center;background-color:transparent;outline:1px solid rgba(0,212,255,.14);outline-offset:-.5px}
html body .twt-counter__num{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:clamp(2.2rem,1.6rem + 2.5vw,3.5rem);line-height:1.05;color:#fff}
html body .twt-counter__ps{color:var(--twt-accent)}
html body .twt-counter__label{margin-top:.35rem;color:var(--twt-muted)}

/* Proceso */
html body .twt-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--twt-cols),minmax(0,1fr));gap:2rem 1.5rem}
html body .twt-step{position:relative;display:flex;flex-direction:column;align-items:start;text-align:start}
html body .twt-step__n{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--twt-accent);color:var(--twt-accent);font-family:var(--twt-font-head);font-weight:700;font-size:1.1rem;margin-bottom:1rem;background-color:rgba(0,212,255,.07)}
html body .twt-step__title{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:1.25rem;color:#fff;margin:0 0 .4rem}
html body .twt-step__text{margin:0;color:var(--twt-muted)}
@media (min-width:1025px){html body .twt-steps--line .twt-step:not(:last-child)::after{content:"";position:absolute;top:22px;left:calc(44px + .75rem);right:-.75rem;height:1px;background:linear-gradient(90deg,rgba(0,212,255,.55),rgba(0,212,255,.05))}}

/* Planes */
html body .twt-plan{position:relative;gap:1rem}
html body .twt-plan--featured{border-color:rgba(0,212,255,.6);background-color:rgba(30,144,255,.14);box-shadow:0 24px 60px -30px var(--twt-primary)}
html body .twt-plan__badge{position:absolute;top:-13px;left:50%;transform:translateX(-50%);padding:.25rem .9rem;border-radius:999px;background:linear-gradient(135deg,var(--twt-primary),var(--twt-accent));color:#03101f;font-size:.82rem;font-weight:700;white-space:nowrap}
html body .twt-plan__name{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:1.4rem;color:#fff;margin:0}
html body .twt-plan__price{margin:0;display:flex;align-items:baseline;gap:.3rem;color:var(--twt-muted)}
html body .twt-plan__price strong{font-family:var(--twt-font-head);font-size:clamp(2rem,1.5rem + 1.6vw,2.8rem);line-height:1;color:#fff}
html body .twt-plan__price small{font-size:1.1rem;color:var(--twt-accent)}
html body .twt-plan__desc{margin:0;color:var(--twt-muted)}
html body .twt-plan__list{list-style:none;margin:.25rem 0 .75rem;padding:0;display:grid;gap:.6rem;text-align:start}
html body .twt-plan__list li{display:flex;gap:.6rem;align-items:flex-start;color:var(--twt-text)}
html body .twt-check{flex:none;margin-top:.2rem;color:var(--twt-accent)}
html body .twt-plan .twt-btn{margin-top:auto;align-self:stretch}

/* Contacto */
html body .twt-contact__item{gap:.15rem;text-decoration:none;color:var(--twt-text)}
html body .twt-contact__label{color:var(--twt-muted);font-size:.9rem}
html body .twt-contact__value{font-family:var(--twt-font-head);font-weight:700;font-size:1.15rem;color:#fff;overflow-wrap:anywhere}

/* Respaldo responsive de columnas (lo que configures en cada widget tiene prioridad) */
@media (max-width:1024px){html body .twt-cols{--twt-cols:2}}
@media (max-width:767px){html body .twt-cols{--twt-cols:1}html body .twt-clients__grid.twt-cols,html body .twt-counters__grid.twt-cols{--twt-cols:2}}
@media (max-width:767px){
  html body .twt-cta{flex-direction:column;align-items:flex-start}
  html body .twt-cta--center{align-items:center}
  html body .twt-cta .twt-actions{width:100%;flex-direction:column}
  html body .twt-sec__head{margin-bottom:1.75rem}
  html body .twt-counter{padding:1.4rem .75rem}
}
@media (prefers-reduced-motion:reduce){html body .twt-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}}

/* ---------- Footer ---------- */
html body .twt-footer{background:var(--twt-f-bg,var(--twt-surface));color:var(--twt-f-text,var(--twt-muted));font-size:var(--twt-f-fs,15px);border-top:var(--twt-f-bt,1px solid rgba(255,255,255,.08));line-height:1.6}
html body .twt-footer a{color:var(--twt-f-link,var(--twt-text));text-decoration:none}
html body .twt-footer a:hover{color:var(--twt-accent)}
html body .twt-footer p{margin:0}
html body .twt-footer{width:100%}
html body .twt-footer .twt-container{width:min(100% - 2rem,var(--twt-f-w,var(--twt-container)))}
html body .twt-footer__top{padding:var(--twt-f-pad,56px) 0 calc(var(--twt-f-pad,56px)*.6)}
html body .twt-footer__cols{display:grid;grid-template-columns:repeat(var(--twt-fcols,3),minmax(0,1fr));gap:2.5rem}
html body .twt-footer__col{min-width:0}
html body .twt-footer__title{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:1.15em;color:var(--twt-f-title,#fff);margin:0 0 1rem}
html body .twt-footer__brand{margin-bottom:1rem}
html body .twt-footer__brand .custom-logo{max-height:52px;width:auto}
html body .twt-footer__brand .twt-brand__text{color:var(--twt-f-title,#fff);font-family:var(--twt-font-head);font-weight:800;font-size:1.35rem}
html body .twt-footer__body p{margin:0 0 .6rem}
html body .twt-footer__list,html body .twt-footer__menu{list-style:none;margin:0;padding:0}
html body .twt-footer__list{display:grid;gap:.55rem}
html body .twt-footer__menu{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem}
html body .twt-footer__bottom{padding:calc(var(--twt-f-pad,56px)*.4) 0}
html body .twt-footer__bottom--line{border-top:1px solid rgba(255,255,255,.08)}
html body .twt-footer__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 2rem}
html body .twt-footer__bar--left{justify-content:flex-start}
html body .twt-footer__bar--right{justify-content:flex-end;text-align:end}
html body .twt-footer__bar--center{flex-direction:column;justify-content:center;text-align:center}
html body .twt-footer__bar--center .twt-footer__side{justify-content:center}
html body .twt-footer__side{display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.5rem}
html body .twt-footer__credit{margin-top:.35rem;font-size:.85em;opacity:.85}
html body .twt-footer__credit span{color:var(--twt-accent);font-weight:600}
html body .twt-social{list-style:none;margin:0;padding:0;display:flex;gap:.6rem}
html body .twt-social a{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.18);transition:border-color .2s,color .2s,transform .2s}
html body .twt-social a:hover{border-color:var(--twt-accent);transform:translateY(-2px)}
html body .twt-social svg{width:18px;height:18px}
html body .twt-footer--center .twt-footer__col{text-align:center}
html body .twt-footer--center .twt-footer__brand,html body .twt-footer--center .twt-footer__list{justify-items:center}
html body .twt-footer--elementor{padding:0}
@media (max-width:1024px){html body .twt-footer__cols--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767px){
  html body .twt-footer__cols{grid-template-columns:1fr;gap:2rem}
  html body .twt-footer__bar--center{align-items:center}
  html body .twt-footer__bar--right{align-items:flex-end}
}

/* ---------- Widgets de contenido: FAQ, galería, cobertura, comparador, equipo ---------- */
/* FAQ */
html body .twt-faq__list.twt-cols{--twt-cols:1}
html body .twt-faq__list{display:grid;grid-template-columns:repeat(var(--twt-cols),minmax(0,1fr));gap:.9rem;align-items:start}
html body .twt-faq__item{display:block;padding:0;overflow:hidden}
html body .twt-faq__item[open]{border-color:rgba(0,212,255,.45)}
html body .twt-faq__q{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.15rem 1.4rem;cursor:pointer;list-style:none;font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:1.12rem;line-height:1.3;color:#fff}
html body .twt-faq__q::-webkit-details-marker{display:none}
html body .twt-faq__q:focus-visible{outline:2px solid var(--twt-accent);outline-offset:-2px;border-radius:inherit}
html body .twt-faq__icon{position:relative;flex:none;width:18px;height:18px;color:var(--twt-accent)}
html body .twt-faq__icon::before,html body .twt-faq__icon::after{content:"";position:absolute;left:50%;top:50%;width:14px;height:2px;margin:-1px 0 0 -7px;background:currentColor;border-radius:2px;transition:transform .25s}
html body .twt-faq__icon::after{transform:rotate(90deg)}
html body .twt-faq__item[open] .twt-faq__icon::after{transform:rotate(0)}
html body .twt-faq--chevron .twt-faq__icon::before{width:9px;height:9px;margin:-6px 0 0 -5px;background:none;border-right:2px solid currentColor;border-bottom:2px solid currentColor;border-radius:0;transform:rotate(45deg)}
html body .twt-faq--chevron .twt-faq__icon::after{display:none}
html body .twt-faq--chevron .twt-faq__item[open] .twt-faq__icon::before{transform:rotate(225deg);margin-top:-2px}
html body .twt-faq__a{padding:0 1.4rem 1.3rem;color:var(--twt-muted)}
html body .twt-faq__a p{margin:0 0 .75rem}
html body .twt-faq__a p:last-child{margin:0}

/* Galería */
html body .twt-gallery__filters{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:0 0 1.75rem}
html body .twt-gallery__filters button{padding:.55rem 1.1rem;border-radius:999px;border:1px solid rgba(255,255,255,.16);background-color:rgba(255,255,255,.04);color:var(--twt-text);font:inherit;font-weight:600;cursor:pointer;transition:background-color .2s,color .2s,border-color .2s}
html body .twt-gallery__filters button:hover{border-color:var(--twt-accent)}
html body .twt-gallery__filters button.is-active{background-color:var(--twt-primary);border-color:transparent;color:#03101f}
html body .twt-gallery__grid{display:grid;grid-template-columns:repeat(var(--twt-cols),minmax(0,1fr));gap:1rem}
html body .twt-gallery__item{position:relative;margin:0;overflow:hidden;border-radius:16px;aspect-ratio:4/3;background-color:var(--twt-surface)}
html body .twt-gallery__item[hidden]{display:none}
html body .twt-gallery__link{display:block;width:100%;height:100%;color:inherit;text-decoration:none}
html body .twt-gallery__item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}
html body .twt-gallery__link[href]:hover img{transform:scale(1.05)}
html body .twt-gallery__ph{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(135deg,#0d2147,#071225);color:rgba(0,212,255,.5)}
html body .twt-gallery__ph svg{width:48px;height:48px}
html body .twt-gallery__cap{position:absolute;left:0;right:0;bottom:0;padding:.8rem 1rem;background-color:rgba(2,8,23,.78);color:#fff;font-weight:600;font-size:.95rem;line-height:1.3}
html body .twt-gallery--cap-hover .twt-gallery__cap{transform:translateY(100%);transition:transform .3s}
html body .twt-gallery--cap-hover .twt-gallery__item:hover .twt-gallery__cap,html body .twt-gallery--cap-hover .twt-gallery__link:focus-visible .twt-gallery__cap{transform:none}
@media (hover:none){html body .twt-gallery--cap-hover .twt-gallery__cap{transform:none}}
html body .twt-gallery--masonry .twt-gallery__grid{display:block;column-count:var(--twt-cols);column-gap:1rem}
html body .twt-gallery--masonry .twt-gallery__item{aspect-ratio:auto;break-inside:avoid;margin-bottom:1rem}
html body .twt-gallery--masonry .twt-gallery__item img{height:auto}
/* Vista ampliada */
html body .twt-lb{position:fixed;inset:0;z-index:2000;display:grid;place-items:center;background-color:rgba(2,8,23,.94);padding:3.5rem 4.5rem}
html body .twt-lb__f{margin:0;max-width:100%;max-height:100%;display:grid;gap:.75rem;justify-items:center}
html body .twt-lb__f img{max-width:min(100%,1400px);max-height:calc(100vh - 9rem);width:auto;height:auto;border-radius:12px}
html body .twt-lb__f figcaption{color:var(--twt-text);text-align:center}
html body .twt-lb button{position:absolute;display:grid;place-items:center;width:48px;height:48px;padding:0;border-radius:50%;border:1px solid rgba(255,255,255,.25);background-color:rgba(255,255,255,.08);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer}
html body .twt-lb button:hover{background-color:rgba(255,255,255,.18)}
html body .twt-lb__x{top:1rem;right:1rem}
html body .twt-lb__p{left:1rem;top:50%;transform:translateY(-50%)}
html body .twt-lb__n{right:1rem;top:50%;transform:translateY(-50%)}
html body.twt-lb-open{overflow:hidden}
@media (max-width:767px){html body .twt-lb{padding:4rem .75rem}html body .twt-lb__p,html body .twt-lb__n{top:auto;bottom:1rem;transform:none}}

/* Cobertura */
html body .twt-zone{flex-direction:row;align-items:center;gap:.9rem;padding:1.1rem 1.25rem}
html body .twt-zone .twt-ico{margin-bottom:0;width:46px;height:46px}
html body .twt-zone__txt{display:grid;gap:.1rem;min-width:0;text-align:start}
html body .twt-zone__name{font-family:var(--twt-font-head);font-size:1.05rem;color:#fff}
html body .twt-zone__note{color:var(--twt-muted)}
html body .twt-coverage__map{margin-top:1.5rem;border-radius:18px;overflow:hidden;border:1px solid rgba(0,212,255,.2)}
html body .twt-coverage__map iframe{display:block;width:100%;height:360px;border:0}
html body .twt-coverage__foot{margin:1.25rem 0 0;color:var(--twt-muted);text-align:center}
html body .twt-coverage__cta{display:flex;justify-content:center;margin-top:1.25rem}

/* Comparador */
html body .twt-compare__wrap{overflow-x:auto;border:1px solid rgba(0,212,255,.18);border-radius:18px;background-color:var(--twt-surface)}
html body .twt-compare{width:100%;min-width:640px;border-collapse:collapse;text-align:center}
html body .twt-compare th,html body .twt-compare td{padding:1rem 1.1rem;border-bottom:1px solid rgba(255,255,255,.08);color:var(--twt-text)}
html body .twt-compare thead th{font-family:var(--twt-font-head);font-size:1.1rem;color:#fff;border-bottom-color:rgba(0,212,255,.25)}
html body .twt-compare tbody th{text-align:start;font-weight:500;position:sticky;left:0;background-color:var(--twt-surface);z-index:1}
html body .twt-compare thead th:first-child{text-align:start;position:sticky;left:0;background-color:var(--twt-surface);z-index:1}
html body .twt-compare tfoot td{border-bottom:0}
html body .twt-compare .is-hl{background-color:rgba(30,144,255,.12)}
html body .twt-compare__badge{display:block;width:max-content;margin:0 auto .35rem;padding:.12rem .6rem;border-radius:999px;background:linear-gradient(135deg,var(--twt-primary),var(--twt-accent));color:#03101f;font-family:var(--twt-font-body);font-size:.72rem;font-weight:700}
html body .twt-compare__yes{display:inline-grid;color:var(--twt-accent)}
html body .twt-compare__yes svg{width:20px;height:20px}
html body .twt-compare__no{color:rgba(255,255,255,.3)}
html body .twt-compare .twt-btn{padding:.65rem 1.1rem;font-size:.92rem}

/* Equipo */
html body .twt-member{align-items:center;text-align:center;gap:.2rem}
html body .twt-team__photo{flex:none;width:96px;height:96px;border-radius:50%;object-fit:cover;margin-bottom:1rem;border:2px solid rgba(0,212,255,.35)}
html body .twt-team__photo--ini{display:grid;place-items:center;background:linear-gradient(135deg,var(--twt-primary),var(--twt-accent));color:#03101f;font-family:var(--twt-font-head);font-weight:800;font-size:2rem;text-transform:uppercase;border-color:transparent}
html body .twt-team__name{font-family:var(--twt-font-head);font-weight:var(--twt-fw-head);font-size:1.25rem;color:#fff;margin:0}
html body .twt-team__name a{color:inherit;text-decoration:none}
html body .twt-team__name a:hover{color:var(--twt-accent)}
html body .twt-team__role{margin:0 0 .6rem;color:var(--twt-accent);font-weight:600;font-size:.95rem}
html body .twt-team__bio{margin:0;color:var(--twt-muted)}

/* ---------- TwinDesk (integración) ---------- */
html body .twt-nav__track{white-space:nowrap}
html body .twt-footer__track{font-weight:600}
html body .twt-td-box{width:100%;max-width:820px;margin-inline:auto;padding:clamp(1.25rem,3vw,2.25rem);border:1px solid rgba(0,212,255,.2);border-radius:20px;background-color:rgba(255,255,255,.04)}
html body .twt-td-box--plain{border:0;background:none;padding:0;max-width:none}
html body .twt-td-notice{margin:0;padding:1rem;border:1px dashed rgba(255,255,255,.3);border-radius:12px;color:var(--twt-muted)}
html body .twt-td-support .twt-content{max-width:920px}
html body .twt-td-support .twt-entry__title{text-align:center}
html body .twt-wa--hidden{visibility:hidden;pointer-events:none}
/* Modo app: el portal de técnicos ocupa toda la pantalla (sin header, footer ni título) */
html body .twt-td-clean .twt-main,html body .twt-td-clean .twt-main--page{padding:0}
html body .twt-td-clean .twt-container,html body .twt-td-clean .twt-content{width:100%;max-width:none;margin:0;padding:0}
html body .twt-td-clean .twt-entry{margin:0}
html body .twt-td-clean .twt-entry__title{display:none}
html body .twt-td-clean{padding-bottom:env(safe-area-inset-bottom,0px)}

/* ---------- Estado de atención ---------- */
html body .twt-status{display:inline-flex;align-items:center;gap:.5rem;font-weight:600;line-height:1.2}
html body .twt-status__dot{flex:none;width:9px;height:9px;border-radius:50%;background:#8a94a8;font-style:normal}
html body .twt-status[data-state="open"] .twt-status__dot{background:#22c55e;animation:twt-pulse-g 2s infinite}
html body .twt-status[data-state="emerg"] .twt-status__dot{background:#f59e0b}
html body .twt-status[data-state="closed"] .twt-status__dot{background:#ef4444}
html body .twt-status__next{font-weight:400;color:var(--twt-muted);font-size:.92em}
html body .twt-status__next:empty{display:none}
html body .twt-status__next::before{content:"·";margin-right:.5rem}
@keyframes twt-pulse-g{0%{box-shadow:0 0 0 0 rgba(34,197,94,.55)}70%,100%{box-shadow:0 0 0 9px rgba(34,197,94,0)}}
html body .twt-status--lg{font-size:1.25rem;flex-wrap:wrap}
html body .twt-status--lg .twt-status__dot{width:12px;height:12px}
html body .twt-status--lg .twt-status__next{flex-basis:100%;margin-left:calc(12px + .5rem)}
html body .twt-status--lg .twt-status__next::before{content:none}

/* ---------- Barra superior ---------- */
html body .twt-topbar{background:var(--twt-tb-bg,#071225);border-bottom:1px solid rgba(255,255,255,.07);font-size:.875rem;color:var(--twt-text)}
html body .twt-topbar__inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:var(--twt-topbar-h,38px)}
html body .twt-topbar__left,html body .twt-topbar__right{display:flex;align-items:center;flex-wrap:wrap;gap:.25rem 1.25rem;min-width:0}
html body .twt-topbar__right{justify-content:flex-end}
html body .twt-topbar a{display:inline-flex;align-items:center;gap:.4rem;color:var(--twt-text);text-decoration:none}
html body .twt-topbar a:hover{color:var(--twt-accent)}
html body .twt-topbar svg{width:1.05em;height:1.05em;flex:none}
html body .twt-topbar__text{color:var(--twt-muted)}

/* ---------- Horarios (widget) ---------- */
html body .twt-hours__card{gap:1.1rem;max-width:560px;width:100%;margin-inline:auto}
html body .twt-hours__status{padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1);width:100%}
html body .twt-hours__list{list-style:none;margin:0;padding:0;width:100%}
html body .twt-hours__row{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid rgba(255,255,255,.08);color:var(--twt-muted)}
html body .twt-hours__row:last-child{border-bottom:0}
html body .twt-hours__row.is-today{color:#fff;font-weight:700}
html body .twt-hours__row.is-today .twt-hours__day::after{content:"hoy";margin-left:.6rem;padding:.1rem .5rem;border-radius:999px;background:rgba(0,212,255,.15);color:var(--twt-accent);font-size:.72rem;font-weight:700}
html body .twt-hours__row.is-closed .twt-hours__time{opacity:.7}
html body .twt-hours__time{text-align:end}
html body .twt-hours__note{margin:0;color:var(--twt-muted);font-size:.92rem}

/* ---------- Barra fija en celular ---------- */
html body .twt-mbar{display:none}
@media (max-width:767px){
  html body .twt-mbar{position:fixed;left:0;right:0;bottom:0;z-index:95;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:.5rem;padding:.5rem .75rem calc(.5rem + env(safe-area-inset-bottom,0px));background:rgba(5,11,24,.94);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid rgba(0,212,255,.25)}
  html body .twt-mbar__i{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem;padding:.5rem .25rem;border-radius:12px;color:#fff;text-decoration:none;font-size:.78rem;font-weight:600;line-height:1.1;text-align:center}
  html body .twt-mbar__i svg{width:22px;height:22px}
  html body .twt-mbar__i--main{background:linear-gradient(135deg,var(--twt-primary),var(--twt-accent));color:#03101f}
  html body.twt-has-mbar{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
  html body.twt-has-mbar .twt-wa{display:none}
  html body .twt-topbar .twt-topbar__text,html body .twt-topbar .twt-status__next,html body .twt-topbar a span,html body .twt-topbar a.twt-topbar__link--mail{display:none}
  html body .twt-topbar .twt-topbar__inner{flex-wrap:nowrap;gap:.5rem}
  html body .twt-topbar .twt-topbar__left{flex:1 1 0;flex-wrap:nowrap;min-width:0}
  html body .twt-topbar .twt-topbar__right{flex:none;flex-wrap:nowrap;gap:0}
  html body .twt-topbar .twt-status{min-width:0;white-space:nowrap}
  html body .twt-topbar .twt-status__label{overflow:hidden;text-overflow:ellipsis}
  html body .twt-topbar a{padding:.4rem}
  html body .twt-topbar{font-size:.82rem}
  html body.twt-has-mbar .twt-topbar .twt-topbar__right{display:none}
  html body .twt-topbar svg{width:1.25em;height:1.25em}
  html body .twt-topbar--nomobile{display:none}
  html body.twt-has-topbar:has(.twt-topbar--nomobile){--twt-topbar-h:0px}
}

/* ---------- WhatsApp flotante ---------- */
html body .twt-wa{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:90;width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;box-shadow:0 10px 28px -6px rgba(37,211,102,.6);transition:transform .2s}
html body .twt-wa:hover{transform:scale(1.08);color:#fff}
html body .twt-wa .twt-icon{width:28px;height:28px}

/* ---------- Tablet ---------- */
@media (max-width:1024px){
  html body .twt-hero__main{padding:4.5rem 0 2.5rem}
  html body .twt-hero__inner{max-width:620px}
  html body .twt-services .twt-services__list{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:1.25rem}
  html body .twt-services .twt-services__list li,html body .twt-services .twt-services__list li+li{border:0}
  html body .twt-services .twt-services__list li:not(:nth-child(3n+1)){border-left:1px solid rgba(0,212,255,.22)}
}
/* ---------- Menú móvil ---------- */
@media (max-width:960px){
  html body .twt-burger{display:flex}
  html body .twt-nav{position:fixed;inset:var(--twt-header-h) 0 0 0;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:1.5rem;padding:1.5rem 1.25rem 2rem;background:rgba(5,11,24,.98);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);overflow-y:auto;transform:translateX(100%);visibility:hidden;transition:transform .3s ease,visibility .3s}
  html body .twt-nav.is-open{transform:none;visibility:visible}
  html body .twt-menu{flex-direction:column;align-items:stretch;gap:0}
  html body .twt-menu a{display:block;padding:1rem .25rem;font-size:1.15rem;border-bottom:1px solid rgba(255,255,255,.08)}
  html body .twt-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;background:none;border:0;padding:0 0 0 1rem}
  html body .twt-nav .twt-btn{width:100%}
  html body.twt-nav-open{overflow:hidden}
  html body.admin-bar .twt-nav{top:calc(var(--twt-header-h) + 32px)}
}
/* ---------- Celular ---------- */
@media (max-width:767px){
  :root{--twt-bar-h:64px}
  html body.twt-has-topbar{--twt-topbar-h:36px}
  html body .twt-hero{min-height:auto;background-position:var(--twt-bgpos-m,70% 0)}
  html body .twt-hero__main{padding:3.5rem 0 2rem}
  html .twt-header-overlay .twt-hero--theme .twt-hero__main{padding-top:calc(var(--twt-header-h) + 2rem)}
  html body .twt-hero::after{background:linear-gradient(180deg,rgba(2,8,23,.5) 0%,rgba(2,8,23,.85) 45%,var(--twt-bg) 100%)}
  html body .twt-hero__title2{letter-spacing:.26em}
  html body .twt-hero__actions{flex-direction:column;align-items:stretch;gap:.75rem}
  html body .twt-btn{width:100%;white-space:normal;padding:1rem 1.25rem}
  html body .twt-stats{gap:1rem 1.5rem;margin-top:2rem}
  html body .twt-stats dt{font-size:1.3rem}
  html body .twt-stats dd{font-size:.8rem}
  html body .twt-services .twt-services__list{grid-template-columns:repeat(2,minmax(0,1fr));padding:1.25rem 0 1.4rem}
  html body .twt-services .twt-services__list li:not(:nth-child(3n+1)){border-left:0}
  html body .twt-services .twt-services__list li:nth-child(even){border-left:1px solid rgba(0,212,255,.22)}
  html body .twt-services .twt-svc .twt-icon,html body .twt-services .twt-svc svg{width:34px;height:34px}
  html body .twt-services .twt-svc i{font-size:30px}
  html body.admin-bar .twt-nav{top:calc(var(--twt-header-h) + 46px)}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
