
:root{
  --primary:#18d5d0; --primary-dark:#0eaead; --primary-soft:rgba(24,213,208,.12); --primary-border:rgba(24,213,208,.35); --turquoise:var(--primary); --turquoise-2:#62fff8; --whatsapp:#128c7e; --whatsapp-bright:#25d366; --black:#010101; --graphite:#111718; --card:#0b1213; --muted:#aebfc0; --line:rgba(24,213,208,.22); --white:#fff; --radius:8px; --shadow:0 28px 80px rgba(0,0,0,.45); --container:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 20% 0,rgba(24,213,208,.12),transparent 30%),linear-gradient(180deg,#020505,#050909 40%,#010101);color:var(--white);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(100% - 40px,var(--container));margin-inline:auto}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:12px;top:12px;background:#fff;color:#000;z-index:999;padding:10px;border-radius:8px}.section{padding:96px 0}.compact-section{padding:38px 0}.site-header{position:sticky;top:0;z-index:100;background:rgba(1,1,1,.9);border-bottom:1px solid rgba(24,213,208,.18);backdrop-filter:blur(16px)}.navbar{height:76px;display:flex;align-items:center;gap:18px}.brand{display:flex;align-items:center;justify-content:center;flex:0 0 auto}.brand-logo{width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 0 16px rgba(24,213,208,.16))}.nav-toggle{display:none;margin-left:auto;width:44px;height:44px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.04);align-items:center;justify-content:center;flex-direction:column;gap:5px;cursor:pointer}.nav-toggle span{width:22px;height:2px;background:#fff;border-radius:999px;transition:.2s}.nav-menu{margin-left:auto;display:flex;align-items:center;gap:7px}.nav-link,.nav-trigger{min-height:42px;display:inline-flex;align-items:center;padding:9px 12px;border-radius:999px;border:1px solid transparent;background:transparent;color:#d7e3e3;font-weight:850;font-size:.87rem;letter-spacing:0;white-space:nowrap;cursor:pointer}.nav-link:hover,.nav-link:focus,.nav-trigger:hover,.nav-trigger:focus,.nav-group.is-active>.nav-trigger{background:rgba(24,213,208,.12);border-color:rgba(24,213,208,.34);color:#fff;outline:0}.nav-trigger::after{content:"";width:7px;height:7px;margin-left:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.8}.nav-quote{margin-left:6px;min-height:48px}.nav-group{position:relative}.mega-panel{position:fixed;top:76px;left:50%;z-index:101;width:min(920px,calc(100vw - 54px));transform:translateX(-50%) translateY(8px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s ease,transform .16s ease,visibility .16s ease;background:rgba(4,12,14,.98);border:1px solid rgba(24,213,208,.28);border-radius:0 0 22px 22px;box-shadow:0 26px 80px rgba(0,0,0,.55);padding:18px;backdrop-filter:blur(18px)}.mega-panel.compact{width:min(720px,calc(100vw - 54px))}.nav-group.is-active .mega-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}.mega-grid{display:grid;gap:18px}.mega-grid.three-cols{grid-template-columns:repeat(3,1fr)}.mega-grid.two-cols{grid-template-columns:repeat(2,1fr)}.mega-col{padding:8px 10px}.mega-col h4{margin:0 0 8px;color:var(--turquoise);font-size:.86rem;letter-spacing:.02em}.mega-col a{display:block;color:#c7d7d7;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.06);font-weight:700;font-size:.9rem}.mega-col a:hover{color:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;border:1px solid rgba(255,255,255,.16);padding:13px 20px;font-weight:900;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--turquoise);color:#001314;border-color:var(--turquoise);box-shadow:0 12px 32px rgba(24,213,208,.18)}.btn-secondary{background:rgba(255,255,255,.05);color:#fff}.btn-whatsapp{background:#12b981;color:#fff;border-color:#12b981}.btn-small{padding:10px 17px;font-size:.86rem}.home-hero{padding:82px 0 74px}.hero-grid,.page-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.72fr);gap:42px;align-items:center}.eyebrow{color:var(--turquoise);text-transform:uppercase;font-weight:950;letter-spacing:.13em;font-size:.74rem;margin:0 0 12px}h1,h2,h3{line-height:1.04;margin:0;color:#fff;letter-spacing:0}h1{font-size:3.65rem;max-width:860px}h2{font-size:2.85rem}h3{font-size:1.22rem}.hero-lead,.page-lead{font-size:1.18rem;color:#e5eeee;max-width:760px;margin:22px 0 0}.hero-support,.section-head p,.page-hero p,.split-grid p,.info-card p,.service-card p,.portfolio-card p,.timeline p,.footer p,.legal-note{color:var(--muted)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 22px}.hero-media{margin:0;border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:var(--shadow);background:#071011;position:relative;aspect-ratio:4/3}.hero-media.small{aspect-ratio:16/11}.hero-media img{width:100%;height:100%;object-fit:cover}.hero-media figcaption{position:absolute;left:16px;right:16px;bottom:16px;background:rgba(1,1,1,.72);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:11px 13px;color:#dfecec;font-size:.85rem;backdrop-filter:blur(10px)}.page-hero{padding:72px 0 56px;background:linear-gradient(180deg,rgba(24,213,208,.07),transparent)}.statement{border:1px solid var(--line);border-radius:28px;background:linear-gradient(135deg,rgba(24,213,208,.09),rgba(255,255,255,.035));padding:30px;box-shadow:var(--shadow)}.statement p{margin:0;color:#ecffff;font-size:1.18rem;font-weight:800}.section-head{max-width:830px;margin-bottom:34px}.cards-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.compact-grid{grid-template-columns:repeat(3,1fr)}.service-card,.info-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:13px;min-height:260px;padding:26px;border:1px solid rgba(24,213,208,.18);border-radius:var(--radius);background:rgba(12,20,21,.82);box-shadow:0 12px 42px rgba(0,0,0,.23)}.service-card:hover,.info-card:hover,.portfolio-card:hover{border-color:rgba(24,213,208,.52);transform:translateY(-4px)}.service-card img,.info-card img{width:82px;height:82px;object-fit:contain}.service-card span{margin-top:auto;color:var(--turquoise);font-weight:900}.dark-panel{background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(24,213,208,.035));border-block:1px solid rgba(255,255,255,.06)}.portfolio-preview,.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.portfolio-card{border:1px solid rgba(24,213,208,.18);border-radius:24px;background:rgba(16,24,25,.84);overflow:hidden;box-shadow:0 12px 42px rgba(0,0,0,.24);transition:.25s}.portfolio-card img{width:100%;aspect-ratio:16/10;object-fit:cover;background:#071011}.portfolio-card-body{padding:18px}.portfolio-card .category{color:var(--turquoise);font-weight:950;font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.portfolio-card button{width:100%;margin-top:10px}.portfolio-toolbar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:28px}.filter-btn{border:1px solid rgba(24,213,208,.22);background:rgba(255,255,255,.035);color:#e9ffff;border-radius:999px;padding:10px 13px;cursor:pointer;font-weight:800;font-size:.86rem}.filter-btn.active,.filter-btn:hover{background:var(--turquoise);color:#001314}.center-actions{display:flex;justify-content:center;margin-top:28px}.split-grid{display:grid;grid-template-columns:.9fr 1fr;gap:42px;align-items:center}.split-media{margin:0;border-radius:28px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);aspect-ratio:16/10;background:#071011}.split-media img{width:100%;height:100%;object-fit:cover}.feature-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.feature-list span{border:1px solid var(--line);background:rgba(24,213,208,.06);color:#e9ffff;padding:8px 12px;border-radius:999px;font-size:.86rem;font-weight:760}.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.timeline div{padding:24px;border-radius:24px;background:rgba(255,255,255,.04);border:1px solid rgba(24,213,208,.18)}.timeline span{display:inline-flex;width:42px;height:42px;align-items:center;justify-content:center;border-radius:50%;background:rgba(24,213,208,.12);color:var(--turquoise);font-weight:950;margin-bottom:14px}.quote-shell{display:grid;grid-template-columns:1.35fr .75fr;gap:20px;padding:22px;border:1px solid rgba(24,213,208,.18);border-radius:var(--radius);background:rgba(12,20,21,.82);box-shadow:var(--shadow)}.quote-brand-block{grid-column:1/-1;display:flex;align-items:center;gap:16px;border:1px solid rgba(24,213,208,.2);background:linear-gradient(135deg,rgba(24,213,208,.1),rgba(255,255,255,.025));border-radius:22px;padding:16px 18px}.quote-brand-block img{width:72px;height:72px;object-fit:contain}.quote-brand-block span{display:block;color:var(--turquoise);font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;font-weight:950}.quote-brand-block strong{display:block;font-size:1.5rem;line-height:1;color:#fff;letter-spacing:0}.quote-brand-block p{margin:6px 0 0;color:var(--muted);font-size:.92rem}.quote-tabs{display:flex;flex-wrap:wrap;gap:8px;grid-column:1/-1}.quote-tab{border:1px solid rgba(24,213,208,.22);background:#071011;color:#eaffff;border-radius:999px;padding:10px 13px;font-weight:850;cursor:pointer}.quote-tab.active{background:var(--turquoise);color:#001314}.quote-form{display:flex;flex-direction:column;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}label{display:flex;flex-direction:column;gap:8px;color:#e9ffff;font-weight:760}input,textarea,select{width:100%;border:1px solid rgba(24,213,208,.18);background:#081112;color:#fff;border-radius:16px;padding:13px 14px;outline:none;font:inherit}input:focus,textarea:focus,select:focus{border-color:var(--turquoise);box-shadow:0 0 0 4px rgba(24,213,208,.1)}.form-actions{display:flex;flex-wrap:wrap;gap:10px}.quote-summary{border:1px solid rgba(24,213,208,.18);background:#081112;border-radius:22px;padding:20px;height:max-content;position:sticky;top:104px}.quote-summary::before{content:"";display:block;width:64px;height:64px;background:url('/assets/logo/keduin-logo-cuadrado.png') center/contain no-repeat;margin-bottom:12px}.summary-table{display:grid;gap:9px}.summary-table div{border-bottom:1px solid rgba(255,255,255,.07);padding-bottom:8px}.summary-table strong{display:block;color:#fff;font-size:.82rem}.summary-table span{color:var(--muted);font-size:.92rem}.contact-grid{display:grid;grid-template-columns:.82fr 1fr;gap:30px}.contact-list{display:grid;gap:12px;margin-top:20px}.contact-list a,.contact-list div{padding:18px;display:flex;justify-content:space-between;gap:16px;border:1px solid rgba(24,213,208,.18);border-radius:var(--radius);background:rgba(12,20,21,.82)}.contact-list span{color:var(--muted)}.contact-form{padding:24px;display:flex;flex-direction:column;gap:16px;border:1px solid rgba(24,213,208,.18);border-radius:var(--radius);background:rgba(12,20,21,.82)}.home-socials{display:flex;flex-wrap:wrap;gap:10px}.home-socials a{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(24,213,208,.25);background:rgba(255,255,255,.04);border-radius:999px;padding:9px 12px;color:#eaffff;font-weight:850}.home-socials img{width:20px;height:20px}.home-socials.local{margin-top:18px}.footer{border-top:1px solid rgba(255,255,255,.08);padding:56px 0 22px;background:#030606}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr);gap:28px}.footer-logo{width:76px;height:76px;object-fit:contain;margin-bottom:12px}.footer h3{font-size:1rem;margin:0 0 12px}.footer a,.footer span{display:block;color:#b8c8c8;margin:8px 0}.footer a:hover{color:var(--turquoise)}.footer-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.footer-socials a{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.04);border:1px solid rgba(24,213,208,.25);margin:0}.footer-socials img{width:22px;height:22px}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:30px;padding-top:18px;display:flex;justify-content:space-between;gap:20px}.floating-whatsapp{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;align-items:center;gap:8px;border-radius:999px;padding:11px 14px;background:#0d211f;border:1px solid rgba(37,211,102,.65);box-shadow:0 16px 44px rgba(0,0,0,.38);font-weight:950;color:#fff}.floating-whatsapp img{width:34px;height:34px}.heartbeat{animation:heartbeat 1.8s ease-in-out infinite}@keyframes heartbeat{0%,100%{transform:scale(1)}14%{transform:scale(1.08)}28%{transform:scale(1)}42%{transform:scale(1.06)}70%{transform:scale(1)}}.modal{position:fixed;inset:0;z-index:120;display:none}.modal[aria-hidden="false"]{display:grid;place-items:center}.modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}.modal-card{position:relative;width:min(960px,calc(100% - 34px));max-height:90vh;overflow:auto;background:#071011;border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow)}.modal-close{position:absolute;right:14px;top:14px;z-index:2;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.15);background:rgba(1,1,1,.82);color:#fff;font-size:28px;cursor:pointer}.modal-card img{width:100%;aspect-ratio:16/9;object-fit:cover}.modal-body{padding:26px}.modal-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}.reveal.is-visible{opacity:1;transform:none}
@media (max-width:1120px){.nav-link,.nav-trigger{font-size:.82rem;padding-inline:8px}.brand-logo{width:58px;height:58px}.cards-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:980px){.nav-toggle{display:flex}.nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.nav-menu{position:fixed;left:16px;right:16px;top:86px;display:none;flex-direction:column;align-items:stretch;gap:8px;max-height:calc(100vh - 108px);overflow:auto;background:rgba(5,9,10,.98);border:1px solid var(--line);border-radius:24px;padding:16px;box-shadow:var(--shadow)}.nav-menu.is-open{display:flex}.nav-link,.nav-trigger,.nav-quote{width:100%;justify-content:space-between;padding:13px 14px;border:1px solid rgba(24,213,208,.12);background:rgba(255,255,255,.025);border-radius:16px}.nav-quote{justify-content:center;background:var(--turquoise);color:#001314}.nav-group{display:block;width:100%}.mega-panel,.mega-panel.compact{position:static;width:100%;display:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;border-radius:18px;margin-top:8px;padding:10px;box-shadow:none}.nav-group.is-active .mega-panel{display:block}.mega-grid.three-cols,.mega-grid.two-cols{grid-template-columns:1fr}.hero-grid,.page-hero-grid,.split-grid,.quote-shell,.contact-grid{grid-template-columns:1fr}.hero-media{max-width:680px}.portfolio-preview,.portfolio-grid{grid-template-columns:repeat(2,1fr)}.timeline{grid-template-columns:repeat(2,1fr)}.quote-summary{position:static}}
@media (max-width:680px){.container{width:min(100% - 28px,var(--container))}.section{padding:70px 0}.navbar{height:72px}.nav-menu{top:82px;left:12px;right:12px}.brand-logo{width:54px;height:54px}h1{font-size:2.28rem}h2{font-size:1.9rem}.hero-actions .btn,.form-actions .btn{width:100%}.cards-grid,.compact-grid,.portfolio-preview,.portfolio-grid,.timeline,.form-grid,.footer-grid{grid-template-columns:1fr}.service-card,.info-card{min-height:0}.hero-media figcaption{position:static;border-radius:0}.quote-brand-block{align-items:flex-start}.quote-brand-block img{width:60px;height:60px}.footer-bottom{flex-direction:column}.floating-whatsapp span{display:none}.floating-whatsapp{width:58px;height:58px;padding:0;justify-content:center}.floating-whatsapp img{width:38px;height:38px}.contact-list a,.contact-list div{flex-direction:column}.modal-card img{aspect-ratio:16/10}.modal-actions .btn{width:100%}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.heartbeat{animation:none}.btn:hover,.service-card:hover,.info-card:hover,.portfolio-card:hover{transform:none}}

/* V4 - burbuja interna de vista previa de portafolio */
.portfolio-shot{position:relative;width:100%;padding:0;border:0;background:#071011;cursor:pointer;display:block;overflow:hidden;color:#fff;text-align:left}
.portfolio-shot img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .32s ease,filter .32s ease}
.portfolio-shot span{position:absolute;left:14px;bottom:14px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:9px 12px;background:rgba(1,1,1,.78);border:1px solid rgba(24,213,208,.38);box-shadow:0 12px 30px rgba(0,0,0,.28);color:#fff;font-weight:900;font-size:.82rem;backdrop-filter:blur(10px)}
.portfolio-card:hover .portfolio-shot img,.portfolio-shot:focus img{transform:scale(1.035);filter:saturate(1.08)}
.portfolio-card-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.portfolio-card-actions .btn{width:100%;justify-content:center;margin-top:0}
.modal-card-preview{width:min(1180px,calc(100% - 28px));overflow:hidden}.modal-preview-layout{display:grid;grid-template-columns:1.35fr .8fr;gap:0;min-height:620px}.preview-bubble{padding:18px;background:radial-gradient(circle at 20% 10%,rgba(24,213,208,.13),transparent 34%),#040909;border-right:1px solid rgba(24,213,208,.18);display:flex;flex-direction:column;gap:12px}.browser-bar{height:44px;border:1px solid rgba(24,213,208,.18);border-radius:18px;background:rgba(255,255,255,.045);display:flex;align-items:center;gap:8px;padding:0 14px;color:#c8dddd;min-width:0}.browser-bar strong{margin-left:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.86rem;color:#eaffff}.browser-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.35);flex:0 0 auto}.browser-dot:nth-child(2){background:rgba(24,213,208,.55)}.browser-dot:nth-child(3){background:rgba(255,255,255,.18)}.preview-stage{position:relative;flex:1;min-height:420px;border:1px solid rgba(24,213,208,.22);border-radius:22px;background:#071011;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 18px 55px rgba(0,0,0,.3)}.preview-stage img,.preview-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.preview-stage img{object-fit:cover;object-position:top center}.preview-stage iframe{display:none;background:#fff}.preview-bubble.is-live .preview-stage img{display:none}.preview-bubble.is-live .preview-stage iframe{display:block}.preview-note{margin:0;color:#9db3b3;font-size:.86rem}.modal-card-preview .modal-body{padding:34px;align-self:center}.modal-card-preview .modal-body h2{font-size:2.35rem;line-height:.98}.modal-preview-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.modal-preview-controls .btn{padding:11px 14px}.modal-card-preview .modal-actions .btn{flex:1 1 180px}
@media (max-width:980px){.modal-card-preview{max-height:92vh;overflow:auto}.modal-preview-layout{grid-template-columns:1fr;min-height:0}.preview-bubble{border-right:0;border-bottom:1px solid rgba(24,213,208,.18);padding:14px}.preview-stage{min-height:54vw}.modal-card-preview .modal-body{padding:22px}.portfolio-card-actions{grid-template-columns:1fr}}
@media (max-width:680px){.preview-stage{min-height:58vw;border-radius:16px}.browser-bar{height:40px;border-radius:14px}.preview-note{font-size:.8rem}.modal-preview-controls .btn,.modal-card-preview .modal-actions .btn{width:100%;flex-basis:100%}}


/* V5 - portafolio ordenado con capturas reales entregadas por el cliente */
.portfolio-shot,
.portfolio-card img{
  background:linear-gradient(180deg,#071011,#020505);
}
.portfolio-shot img,
.portfolio-card img{
  object-fit:contain;
  object-position:top center;
  padding:0;
}
.preview-stage img{
  object-fit:contain;
  object-position:top center;
  background:#050909;
}
.portfolio-card-body p strong{
  color:#fff;
}


/* V6 - correcciones de menú, footer, botones y páginas de servicios */
.btn-icon{width:22px;height:22px;object-fit:contain;display:inline-block;flex:0 0 auto}.nav-quote .btn-icon{width:19px;height:19px}.home-socials.icon-only a{width:44px;height:44px;padding:0;justify-content:center}.home-socials.icon-only img{width:23px;height:23px}.mega-grid.four-cols{grid-template-columns:repeat(4,1fr)}.service-card img,.info-card img{width:104px;height:104px;align-self:center;margin-bottom:8px}.service-card,.info-card{text-align:center}.service-card h3,.info-card h3{text-align:center}.footer-bottom{align-items:center}.footer-home{display:inline-flex!important;align-items:center;gap:8px;margin:0!important;color:#eaffff!important}.footer-home img{width:28px;height:28px}.developed-by{display:inline-flex!important;align-items:center;justify-content:flex-end;gap:8px;color:#b8c8c8!important;text-align:right}.developed-by img{width:30px;height:30px;object-fit:contain}.copyright{text-align:center}.footer-whatsapp{display:inline-flex!important;align-items:center;gap:8px}.footer-whatsapp img{width:22px;height:22px}.contact-whatsapp strong{display:inline-flex;align-items:center;gap:8px}.contact-whatsapp img{width:24px;height:24px}.portfolio-card-actions.three{grid-template-columns:1fr;}.portfolio-card-actions.three .btn{min-height:46px}.product-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 24px}.product-tab{border:1px solid rgba(24,213,208,.24);background:rgba(255,255,255,.035);color:#eaffff;border-radius:999px;padding:11px 15px;font-weight:900;cursor:pointer}.product-tab.active,.product-tab:hover{background:var(--turquoise);color:#001314}.product-panels{display:grid;gap:18px}.product-panel{display:none;grid-template-columns:160px 1fr;gap:26px;align-items:flex-start;border:1px solid rgba(24,213,208,.2);background:rgba(12,20,21,.82);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.product-panel.active{display:grid}.product-panel img{width:132px;height:132px;object-fit:contain;margin:auto}.product-panel p{color:var(--muted);font-size:1rem}.product-panel ul,.service-detail ul{color:#d7e3e3;line-height:1.8;margin:14px 0 20px}.product-panel li,.service-detail li{margin:6px 0}.accordion-list{display:grid;gap:16px}.service-detail{border:1px solid rgba(24,213,208,.18);border-radius:24px;background:rgba(12,20,21,.82);overflow:hidden}.service-detail summary{list-style:none;display:flex;align-items:center;gap:16px;cursor:pointer;padding:22px 24px;font-weight:950;font-size:1.12rem}.service-detail summary::-webkit-details-marker{display:none}.service-detail summary img{width:62px;height:62px;object-fit:contain}.service-detail summary::after{content:'+';margin-left:auto;color:var(--turquoise);font-size:1.8rem}.service-detail[open] summary::after{content:'−'}.service-detail div{padding:0 24px 24px 102px}.service-detail p,.expanded-cards .info-card p{color:var(--muted)}.expanded-cards .info-card{min-height:420px}.expanded-cards .info-card .btn{margin-top:auto}.btn-whatsapp .btn-icon{filter:none}.contact-form .btn img{width:22px;height:22px}
@media (max-width:980px){.mega-grid.four-cols{grid-template-columns:1fr}.product-panel{grid-template-columns:1fr;text-align:left}.product-panel img{margin:0}.service-detail div{padding:0 20px 22px}.service-detail summary{align-items:flex-start}.developed-by{justify-content:flex-start}.footer-bottom{align-items:flex-start}}
@media (max-width:680px){.product-tabs{flex-direction:column}.product-tab{width:100%;text-align:left}.product-panel{padding:22px}.product-panel img{width:96px;height:96px}.service-detail summary img{width:50px;height:50px}.service-detail summary{padding:18px}.service-card img,.info-card img{width:86px;height:86px}.home-socials.icon-only a{width:42px;height:42px}.footer-bottom{gap:12px}.developed-by img{width:26px;height:26px}}


/* V7 Nosotros unificado */
.about-page section { scroll-margin-top: 110px; }
.about-hero { padding-top: 110px; background: radial-gradient(circle at 18% 10%, rgba(24,213,208,.16), transparent 32%), radial-gradient(circle at 85% 15%, rgba(255,160,64,.12), transparent 28%); }
.about-hero-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(320px,.85fr); gap: 44px; align-items: center; }
.about-hero h1 { font-size: 4.25rem; line-height: .96; letter-spacing: -.06em; margin: 18px 0; }
.about-hero-media { border: 1px solid rgba(255,255,255,.12); border-radius: 30px; overflow: hidden; background: rgba(255,255,255,.05); box-shadow: 0 30px 80px rgba(0,0,0,.35); }
.about-hero-media img { width: 100%; display: block; aspect-ratio: 4/5; object-fit: cover; }
.about-hero-media figcaption { padding: 16px 18px; color: rgba(255,255,255,.72); font-weight: 700; }
.about-anchor-nav { position: sticky; top: 78px; z-index: 50; background: rgba(1,1,1,.88); backdrop-filter: blur(14px); border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.08); }
.about-anchor-nav .container { display: flex; gap: 10px; overflow-x: auto; padding-block: 12px; scrollbar-width: thin; }
.about-anchor-nav a { flex: 0 0 auto; color: rgba(255,255,255,.84); text-decoration: none; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; padding: 9px 14px; font-size: .88rem; font-weight: 800; background: rgba(255,255,255,.04); }
.about-anchor-nav a:hover { border-color: rgba(24,213,208,.55); color: #18d5d0; }
.split-section { display: grid; grid-template-columns: minmax(0,1.1fr) minmax(320px,.9fr); gap: 34px; align-items: center; }
.split-section.reverse { grid-template-columns: minmax(320px,.85fr) minmax(0,1.15fr); }
.split-section.reverse > .highlight-card { order: -1; }
.split-section h2, .section-head h2 { letter-spacing: -.045em; }
.split-section p, .section-head p, .info-card p, .team-card p, .timeline-card p { color: rgba(255,255,255,.72); line-height: 1.75; }
.feature-list { display: grid; gap: 14px; }
.feature-list article, .info-card, .team-card, .timeline-card, .highlight-card { border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.055); border-radius: 24px; padding: 24px; }
.feature-list img, .team-card img { width: 56px; height: 56px; object-fit: contain; margin-bottom: 14px; }
.about-story-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.team-placeholder-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.stats-grid { display: grid; gap: 14px; }
.stats-grid div { border: 1px solid rgba(24,213,208,.22); background: rgba(24,213,208,.08); border-radius: 22px; padding: 24px; }
.stats-grid strong { display: block; color: #18d5d0; font-size: 2.5rem; line-height: 1; }
.stats-grid span { display: block; margin-top: 8px; color: rgba(255,255,255,.75); font-weight: 800; }
.tech-badges { display: flex; flex-wrap: wrap; gap: 10px; }
.tech-badges span { border: 1px solid rgba(24,213,208,.22); background: rgba(24,213,208,.075); color: rgba(255,255,255,.9); border-radius: 999px; padding: 10px 14px; font-weight: 800; }
.timeline-list { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.timeline-card span { display: inline-block; color: #ffd08a; font-weight: 900; text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; margin-bottom: 10px; }
.gallery-preview-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.gallery-preview-grid figure { overflow: hidden; border-radius: 24px; border: 1px solid rgba(255,255,255,.12); background: rgba(255,255,255,.05); }
.gallery-preview-grid img { width: 100%; display: block; aspect-ratio: 16/10; object-fit: cover; }
.gallery-preview-grid figcaption { padding: 14px 16px; color: rgba(255,255,255,.74); font-weight: 800; }
@media (max-width: 980px) { .about-hero-grid, .split-section, .split-section.reverse { grid-template-columns: 1fr; } .split-section.reverse > .highlight-card { order: 0; } .about-story-grid, .team-placeholder-grid, .timeline-list, .gallery-preview-grid { grid-template-columns: 1fr; } .about-anchor-nav { top: 70px; } }
@media (max-width: 560px) { .about-hero { padding-top: 82px; } .about-hero h1 { font-size: 2.35rem; } .feature-list article, .info-card, .team-card, .timeline-card, .highlight-card { padding: 20px; border-radius: 20px; } }


/* V8 - iconografía premium para hero, navegación y redes */
.btn{
  min-height:52px;
  gap:12px;
  padding-inline:20px;
}
.btn-small{
  min-height:46px;
}
.btn svg.btn-svg,
.btn .btn-svg{
  width:19px;
  height:19px;
  min-width:19px;
  display:block;
  flex:0 0 auto;
  stroke-width:2.3;
}
.btn-primary svg.btn-svg{
  color:#001b1d;
}
.btn-secondary svg.btn-svg,
.btn-outline svg.btn-svg{
  color:#ffffff;
}
.btn-whatsapp{
  background:#16a34a;
  border-color:rgba(255,255,255,.12);
  color:#ffffff;
  box-shadow:0 14px 38px rgba(22,163,74,.18);
}
.btn-whatsapp svg.btn-svg,
.btn-whatsapp .whatsapp-svg{
  color:#ffffff;
  fill:currentColor;
}
.btn img.btn-icon{
  width:19px;
  height:19px;
  min-width:19px;
  display:block;
  object-fit:contain;
}
.nav-quote svg.btn-svg{
  width:18px;
  height:18px;
  min-width:18px;
}
.home-socials.icon-only,
.footer-socials{
  display:flex;
  align-items:center;
  gap:12px;
}
.home-socials.icon-only a,
.footer-socials a{
  width:44px;
  height:44px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#ffffff;
  border:1px solid rgba(24,213,208,.45);
  background:rgba(255,255,255,.035);
  transition:background .25s ease,border-color .25s ease,transform .25s ease,box-shadow .25s ease;
}
.home-socials.icon-only a img,
.footer-socials a img{
  width:21px;
  height:21px;
  display:block;
}
.home-socials.icon-only a:hover,
.footer-socials a:hover{
  background:rgba(24,213,208,.14);
  border-color:#18d5d0;
  box-shadow:0 0 0 4px rgba(24,213,208,.08);
  transform:translateY(-2px);
}
.hero-actions .btn{
  min-height:54px;
}
@media (max-width:680px){
  .hero-actions .btn{
    min-height:54px;
  }
  .home-socials.icon-only,
  .footer-socials{
    gap:10px;
  }
  .home-socials.icon-only a,
  .footer-socials a{
    width:42px;
    height:42px;
  }
}

/* V9 - auditoría final: marca oficial, responsive estable y UI más sobria */
body{
  overflow-x:hidden;
}
.container{
  width:100%;
  max-width:var(--container);
  padding-inline:20px;
}
.hero-copy,
.page-hero-grid > div,
.split-grid > div,
.section-head,
.modal-body,
.portfolio-card-body{
  min-width:0;
}
h1,h2,h3,p,a,button,span,li{
  overflow-wrap:break-word;
}
h1,h2,h3,
.nav-link,
.nav-trigger,
.quote-brand-block strong,
.about-hero h1,
.modal-card-preview .modal-body h2{
  letter-spacing:0;
}
h1{
  font-size:3.65rem;
}
h2{
  font-size:2.85rem;
}
.about-hero h1{
  font-size:4.25rem;
}
.hero-lead,
.page-lead{
  font-size:1.18rem;
}
.modal-card-preview .modal-body h2{
  font-size:2.35rem;
}
.service-card,
.info-card,
.portfolio-card,
.timeline div,
.timeline-card,
.team-card,
.highlight-card,
.product-panel,
.service-detail,
.contact-form,
.quote-shell,
.quote-summary,
.statement{
  border-radius:var(--radius);
}
.hero-media,
.split-media,
.about-hero-media,
.modal-card,
.preview-stage,
.gallery-preview-grid figure{
  border-radius:12px;
}
.btn,
.product-tab,
.quote-tab,
.filter-btn,
.feature-list span,
.tech-badges span{
  border-radius:999px;
}
.btn-whatsapp{
  background:var(--whatsapp);
  border-color:rgba(37,211,102,.48);
  color:#fff;
  box-shadow:0 14px 38px rgba(18,140,126,.25);
}
.btn-whatsapp:hover{
  background:#0f7f73;
}
.floating-whatsapp{
  background:#0b201d;
  border-color:rgba(37,211,102,.75);
}
.global-map{
  display:grid;
  place-items:center;
  padding:22px;
}
.global-map img{
  width:100%;
  height:auto;
  object-fit:contain;
}
.portfolio-card-actions.three{
  grid-template-columns:1fr;
}
.portfolio-card-actions.three .btn{
  min-height:46px;
}
.nav-menu{
  min-width:0;
}
.nav-link,
.nav-trigger,
.btn{
  text-align:center;
}
.service-detail summary,
.product-panel,
.info-card,
.service-card{
  min-width:0;
}
@media (max-width:1180px){
  h1{font-size:3.2rem}
  h2{font-size:2.45rem}
  .about-hero h1{font-size:3.5rem}
}
@media (max-width:980px){
  .hero-grid,
  .page-hero-grid,
  .split-grid,
  .quote-shell,
  .contact-grid{
    grid-template-columns:minmax(0,1fr);
  }
  .nav-menu{
    overscroll-behavior:contain;
  }
  .mega-panel,
  .mega-panel.compact{
    max-height:52vh;
    overflow:auto;
  }
  h1{font-size:2.75rem}
  h2{font-size:2.2rem}
  .about-hero h1{font-size:2.8rem}
  .hero-lead,
  .page-lead{font-size:1.08rem}
}
@media (max-width:680px){
  .container{
    padding-inline:14px;
  }
  h1{font-size:2.28rem}
  h2{font-size:1.9rem}
  h3{font-size:1.08rem}
  .about-hero h1{font-size:2.35rem}
  .hero-lead,
  .page-lead{font-size:1rem}
  .section{padding:58px 0}
  .home-hero{padding:56px 0 48px}
  .hero-media,
  .hero-media.small,
  .split-media{
    aspect-ratio:4/3;
  }
  .btn{
    width:100%;
    min-height:52px;
    padding-inline:16px;
    white-space:normal;
  }
  .home-socials.icon-only a,
  .footer-socials a{
    width:42px;
    height:42px;
    flex:0 0 42px;
  }
}
@media (max-width:420px){
  h1{font-size:2rem}
  h2{font-size:1.75rem}
  .about-hero h1{font-size:2.05rem}
  .eyebrow{font-size:.68rem}
  .hero-actions{gap:10px}
}


/* === AJUSTE FINAL PORTAFOLIO NETLIFY - imágenes completas sin recorte === */
.portfolio-section .portfolio-grid,
.portfolio-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:22px !important;
  align-items:stretch !important;
}
.portfolio-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  overflow:hidden !important;
}
.portfolio-shot{
  position:relative !important;
  min-height:0 !important;
  aspect-ratio:16/11 !important;
  padding:14px !important;
  border:0 !important;
  background:
    radial-gradient(circle at top left,rgba(24,213,208,.16),transparent 35%),
    radial-gradient(circle at bottom right,rgba(9,131,242,.18),transparent 42%),
    #050b14 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.portfolio-shot img,
.portfolio-card .portfolio-shot img,
.portfolio-card > img{
  width:100% !important;
  height:100% !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:center center !important;
  border-radius:12px !important;
  background:rgba(0,0,0,.2) !important;
  transform:none !important;
}
.portfolio-card:hover .portfolio-shot img,
.portfolio-shot:focus img{
  transform:none !important;
  filter:saturate(1.04) !important;
}
.portfolio-shot span{
  left:14px !important;
  bottom:14px !important;
}
.portfolio-card-body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
}
.portfolio-card-actions,
.portfolio-card-actions.three{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  margin-top:auto !important;
  padding-top:14px !important;
}
.portfolio-card-actions .btn{
  width:100% !important;
  min-height:46px !important;
  margin-top:0 !important;
  text-align:center !important;
  white-space:normal !important;
}
.modal-card-preview{
  width:min(1280px,calc(100% - 28px)) !important;
  max-height:92vh !important;
  overflow:auto !important;
}
.modal-preview-layout{
  grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr) !important;
  min-height:0 !important;
}
.preview-bubble{
  min-width:0 !important;
  background:
    radial-gradient(circle at 20% 10%,rgba(24,213,208,.14),transparent 34%),
    radial-gradient(circle at 80% 90%,rgba(9,131,242,.16),transparent 42%),
    #040909 !important;
}
.preview-stage{
  position:relative !important;
  min-height:0 !important;
  height:min(76vh,860px) !important;
  overflow:auto !important;
  padding:14px !important;
  display:block !important;
  background:
    radial-gradient(circle at top left,rgba(24,213,208,.12),transparent 36%),
    #050b14 !important;
}
.preview-stage img,
.preview-stage iframe,
.modal-card .preview-stage img,
.modal-card-preview .preview-stage img{
  position:static !important;
  inset:auto !important;
  width:100% !important;
  height:auto !important;
  min-height:100% !important;
  max-height:none !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  object-position:top center !important;
  border:0 !important;
  border-radius:14px !important;
  background:#071011 !important;
}
.preview-stage iframe,
#modalLiveFrame,
#modalLiveButton{
  display:none !important;
}
.preview-note{
  color:#b6caca !important;
}
.modal-preview-controls{
  display:none !important;
}
#modalUrl::before{content:"↗ ";}
@media (max-width:1200px){
  .portfolio-section .portfolio-grid,
  .portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media (max-width:900px){
  .portfolio-section .portfolio-grid,
  .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .modal-preview-layout{grid-template-columns:1fr !important;}
  .preview-stage{height:68vh !important;}
}
@media (max-width:560px){
  .portfolio-section .portfolio-grid,
  .portfolio-grid{grid-template-columns:1fr !important;}
  .portfolio-shot{aspect-ratio:4/3 !important;padding:10px !important;}
  .preview-stage{height:62vh !important;padding:10px !important;border-radius:16px !important;}
  .modal-card-preview{width:calc(100% - 16px) !important;}
}

/* V7 - WhatsApp icons clean/transparent, without square background */
img[src$="assets/icons/social/whatsapp.svg"],
img[src$="/whatsapp.svg"],
.btn-whatsapp .btn-icon,
.footer-whatsapp img,
.floating-whatsapp img,
.contact-whatsapp img {
  background:transparent!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  padding:0!important;
  border-radius:0!important;
  object-fit:contain!important;
}
.btn-whatsapp .btn-icon {
  width:22px;
  height:22px;
  flex:0 0 22px;
}
.footer-whatsapp img,
.contact-whatsapp img {
  width:22px;
  height:22px;
  flex:0 0 22px;
}
.floating-whatsapp img {
  width:34px;
  height:34px;
  flex:0 0 34px;
}
@media (max-width:680px){
  .floating-whatsapp img{width:38px;height:38px;flex-basis:38px}
}

/* V9: CTA superior moderno, corto y alineado a la línea editorial */
.nav-quote{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  flex:0 0 auto;
  gap:0!important;
  min-height:46px;
  min-width:102px;
  padding:11px 22px!important;
  border:1px solid rgba(24,213,208,.9)!important;
  background:linear-gradient(135deg,rgba(24,213,208,.98),rgba(69,235,229,.9))!important;
  color:#001314!important;
  box-shadow:0 0 0 1px rgba(24,213,208,.22),0 12px 30px rgba(24,213,208,.28)!important;
  letter-spacing:.01em;
  text-transform:none;
  font-weight:950;
  line-height:1;
  white-space:nowrap!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
}
.nav-quote .btn-svg,.nav-quote img{display:none!important;}
.nav-quote::before{
  content:"";
  position:absolute;
  inset:1px;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,0) 56%);
  opacity:.55;
}
.nav-quote::after{
  content:"";
  position:absolute;
  inset:auto 18px 7px 18px;
  height:2px;
  border-radius:999px;
  background:rgba(0,19,20,.26);
  opacity:.55;
}
.nav-quote:hover,.nav-quote:focus{
  border-color:rgba(159,252,248,.98)!important;
  background:linear-gradient(135deg,#9ffcf8,#18d5d0)!important;
  box-shadow:0 0 0 1px rgba(159,252,248,.36),0 15px 38px rgba(24,213,208,.38)!important;
}
@media (max-width:980px){.nav-quote{width:100%;margin-left:0;text-align:center;justify-content:center;min-height:46px;padding:12px 18px!important;white-space:nowrap!important;}}


/* V11 - URLs limpias, botón Cotizar editorial y catálogo de servicios */
.nav-quote{
  position:relative!important;
  isolation:isolate;
  overflow:hidden;
  min-width:96px!important;
  min-height:44px!important;
  padding:10px 23px!important;
  border-radius:999px!important;
  border:1px solid rgba(24,213,208,.62)!important;
  background:rgba(7,17,18,.68)!important;
  color:#ffffff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 0 26px rgba(24,213,208,.12)!important;
  text-shadow:none!important;
  line-height:1!important;
  white-space:nowrap!important;
  letter-spacing:0!important;
}
.nav-quote::before,.nav-quote::after{display:none!important;content:none!important;}
.nav-quote:hover,.nav-quote:focus{
  color:#ffffff!important;
  background:rgba(24,213,208,.12)!important;
  border-color:rgba(24,213,208,.92)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 0 34px rgba(24,213,208,.24)!important;
}
.catalog-hero .hero-actions .btn-secondary{background:rgba(255,255,255,.035);border-color:rgba(24,213,208,.32)}
.catalog-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.catalog-main{min-width:0}.catalog-toolbar{position:sticky;top:88px;z-index:15;margin-bottom:22px;padding:16px;border:1px solid rgba(24,213,208,.18);border-radius:24px;background:rgba(5,13,14,.92);box-shadow:0 18px 48px rgba(0,0,0,.28);backdrop-filter:blur(14px)}
.catalog-search{display:flex;align-items:center;gap:10px;margin:0;color:#eaffff;font-weight:850}.catalog-search span{font-size:1.18rem}.catalog-search input{border-radius:999px;background:rgba(255,255,255,.035);border-color:rgba(24,213,208,.25);min-height:50px;font-weight:750}
.catalog-filters{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.catalog-filter{border:1px solid rgba(24,213,208,.24);background:rgba(255,255,255,.035);color:#eaffff;border-radius:999px;padding:9px 12px;font-weight:850;cursor:pointer}.catalog-filter.active,.catalog-filter:hover{background:rgba(24,213,208,.16);border-color:rgba(24,213,208,.7);color:#fff}
.service-catalog-grid{display:grid;grid-template-columns:1fr;gap:18px}.catalog-card{scroll-margin-top:118px;border:1px solid rgba(24,213,208,.18);border-radius:28px;background:linear-gradient(135deg,rgba(12,20,21,.88),rgba(5,12,13,.92));padding:26px;box-shadow:0 14px 48px rgba(0,0,0,.24);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.catalog-card:hover{border-color:rgba(24,213,208,.52);transform:translateY(-3px);box-shadow:0 18px 58px rgba(0,0,0,.32)}
.catalog-card.is-hidden{display:none}.catalog-card-head{display:flex;align-items:center;gap:16px;margin-bottom:14px}.catalog-card-head img{width:76px;height:76px;object-fit:contain;flex:0 0 76px}.catalog-category{display:inline-flex;width:max-content;border:1px solid rgba(24,213,208,.36);border-radius:999px;padding:6px 10px;color:var(--turquoise);font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:950;background:rgba(24,213,208,.055)}
.catalog-card p,.service-cart p,.catalog-empty{color:var(--muted)}.catalog-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-top:18px}.catalog-detail-grid>div{border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);border-radius:20px;padding:18px}.catalog-detail-grid strong{display:block;margin-bottom:8px;color:#fff}.catalog-detail-grid ul{margin:0;padding-left:18px;color:#d7e3e3;line-height:1.75}.catalog-detail-grid li{margin:6px 0}.catalog-card-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.catalog-card-actions .btn{min-height:48px}.service-add-btn.is-added{background:rgba(24,213,208,.14)!important;color:#fff!important;border-color:rgba(24,213,208,.62)!important}
.service-cart{position:sticky;top:96px;border:1px solid rgba(24,213,208,.28);border-radius:28px;background:rgba(5,13,14,.92);padding:20px;box-shadow:0 18px 58px rgba(0,0,0,.35)}.service-cart-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.service-cart-head strong{color:#fff}.service-cart-items{display:grid;gap:9px;margin:16px 0}.cart-empty{display:block;color:var(--muted);border:1px dashed rgba(24,213,208,.24);border-radius:16px;padding:14px}.cart-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(24,213,208,.16);background:rgba(255,255,255,.035);border-radius:16px;padding:10px 12px;color:#fff;font-weight:800}.cart-remove{width:30px;height:30px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.04);color:#fff;cursor:pointer}.service-cart-actions{display:grid;gap:9px}.service-cart-actions .btn{width:100%;min-height:48px}.cart-clear{border:0;background:transparent;color:#b8c8c8;font-weight:850;cursor:pointer;padding:8px}.cart-clear:hover{color:#fff}.catalog-empty{border:1px dashed rgba(24,213,208,.32);border-radius:20px;padding:18px;text-align:center;background:rgba(255,255,255,.025)}
@media (max-width:980px){.catalog-layout{grid-template-columns:1fr}.catalog-toolbar,.service-cart{position:static}.catalog-detail-grid{grid-template-columns:1fr}.catalog-card{scroll-margin-top:92px}.nav-quote{width:100%;justify-content:center!important}}
@media (max-width:680px){.catalog-card{padding:20px}.catalog-card-head{align-items:flex-start}.catalog-card-head img{width:58px;height:58px;flex-basis:58px}.catalog-card-actions .btn{width:100%}.catalog-toolbar{padding:13px;border-radius:20px}.catalog-search{align-items:flex-start}.catalog-search span{padding-top:11px}.service-cart-head{align-items:flex-start;flex-direction:column}}


/* V14 catálogo maestro SKU */
.note-panel{border:1px solid var(--primary-border);background:linear-gradient(135deg,rgba(24,213,208,.11),rgba(255,255,255,.035));border-radius:22px;padding:18px 22px;color:#dff}.sku-pill{display:inline-flex;margin-top:6px;padding:4px 9px;border:1px solid rgba(24,213,208,.34);border-radius:999px;color:var(--turquoise-2);font-size:.72rem;font-weight:900;letter-spacing:.04em}.product-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:10px 12px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.035);color:#d7eeee}.product-meta-row strong{font-size:1.05rem;color:#fff}.product-badge{display:inline-flex;align-items:center;margin-bottom:12px;padding:7px 10px;border-radius:999px;background:rgba(24,213,208,.12);color:#bffffc;font-size:.82rem;font-weight:800}.catalog-group-title{grid-column:1/-1;margin:38px 0 18px;font-size:clamp(1.45rem,2.4vw,2.15rem);letter-spacing:-.03em}.product-card-v14{position:relative;overflow:hidden}.product-card-v14::after{content:"";position:absolute;inset:auto -20% -45% 35%;height:190px;background:radial-gradient(circle,rgba(24,213,208,.13),transparent 66%);pointer-events:none}.product-detail-page .hero-media img{width:180px;margin:auto;filter:drop-shadow(0 0 28px rgba(24,213,208,.28))}.product-hero-meta{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.product-hero-meta span,.product-hero-meta strong{border:1px solid rgba(24,213,208,.25);background:rgba(255,255,255,.045);border-radius:999px;padding:8px 12px}.product-hero-meta strong{color:#fff}.product-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:30px;align-items:start}.detail-main,.spec-card{border:1px solid rgba(24,213,208,.22);background:rgba(5,12,14,.72);border-radius:24px;padding:26px;box-shadow:0 20px 70px rgba(0,0,0,.26)}.detail-main h2{margin-top:28px}.detail-main h2:first-of-type{margin-top:0}.check-list{padding-left:0;list-style:none}.check-list li{position:relative;padding-left:28px;margin:10px 0;color:#d7e8e8}.check-list li::before{content:"✓";position:absolute;left:0;top:0;color:var(--turquoise-2);font-weight:900}.detail-aside{position:sticky;top:96px;display:grid;gap:18px}.faq-list{display:grid;gap:12px}.faq-list details{border:1px solid rgba(24,213,208,.18);border-radius:16px;background:rgba(255,255,255,.035);padding:14px 16px}.faq-list summary{cursor:pointer;font-weight:900;color:#fff}.faq-list p{color:#c3dada;margin-bottom:0}.v14-pricing .catalog-card{min-height:100%}.footer-logo,.developed-by img{object-fit:contain}.brand-logo{object-fit:contain}@media(max-width:900px){.product-detail-grid{grid-template-columns:1fr}.detail-aside{position:static}.catalog-layout{grid-template-columns:1fr}.service-cart{position:relative;top:auto}}@media(max-width:640px){.note-panel{padding:14px}.product-meta-row{align-items:flex-start;flex-direction:column}.detail-main,.spec-card{padding:18px}.catalog-group-title{margin-top:28px}}


/* V15 - imágenes de productos, ofertas destacadas y acceso al carro */
.catalog-card.has-product-image{overflow:hidden;padding-top:0}
.catalog-card-media{margin:0 0 1rem;border-radius:20px;overflow:hidden;aspect-ratio:16/10;background:#061018;border:1px solid rgba(255,255,255,.06)}
.catalog-card-media img{width:100%;height:100%;object-fit:cover;display:block}
.product-hero-figure{max-width:640px}
.product-hero-figure img{width:100%;height:auto;border-radius:24px;border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 50px rgba(0,0,0,.35)}
.service-add-hero,.detail-cart-btn{margin-top:.75rem}
.offers-section{background:linear-gradient(180deg, rgba(10,20,32,.88), rgba(4,10,18,.96))}
.offers-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem}
.offer-card{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 18px 50px rgba(0,0,0,.18)}
.offer-media{margin:0;aspect-ratio:16/10;background:#0c1824}
.offer-media img{width:100%;height:100%;object-fit:cover;display:block}
.offer-body{padding:1rem 1rem 1.2rem;display:flex;flex-direction:column;gap:.85rem;height:100%}
.offer-body h3{margin:0;font-size:1.12rem}
.offer-body p{margin:0;color:var(--muted,#b7c1cf)}
.offer-price{font-size:1.45rem;font-weight:800;color:#7df4ff}
.floating-cart-shortcut{position:fixed;right:24px;bottom:104px;z-index:90;display:flex;align-items:center;gap:.65rem;padding:.9rem 1rem;border-radius:999px;background:#0b1521;color:#fff;border:1px solid rgba(125,244,255,.35);box-shadow:0 12px 30px rgba(0,0,0,.28);text-decoration:none;font-weight:700}
.floating-cart-shortcut:hover{transform:translateY(-2px)}
.floating-cart-shortcut strong{display:inline-flex;align-items:center;justify-content:center;min-width:1.8rem;height:1.8rem;border-radius:999px;background:#15d4ff;color:#02131d;font-size:.92rem;padding:0 .35rem}
.add-cart-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:#0d1620;color:#fff;padding:.9rem 1.15rem;border-radius:14px;border:1px solid rgba(125,244,255,.3);box-shadow:0 14px 30px rgba(0,0,0,.26);opacity:0;pointer-events:none;transition:.25s ease;z-index:120;font-weight:600}
.add-cart-toast.is-visible{opacity:1;transform:translateX(-50%) translateY(0)}
@media (max-width:1100px){.offers-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:760px){.offers-grid{grid-template-columns:1fr}.floating-cart-shortcut{right:14px;bottom:94px;padding:.78rem .95rem}.floating-cart-shortcut span{display:none}}


/* V16 - categorías principales, menú de servicios, buscador superior y tienda en grilla */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.services-mega{width:min(1120px,calc(100vw - 42px))}
.services-mega-grid .mega-col a{display:flex;align-items:center;gap:10px;padding:9px 8px;border-radius:14px}
.services-mega-grid .mega-col a:hover{background:rgba(24,213,208,.10)}
.services-mega-grid .mega-col a img{width:28px;height:28px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(24,213,208,.35))}
.nav-service-search{display:flex;align-items:center;gap:0;margin-left:4px;min-width:210px;max-width:270px;border:1px solid rgba(24,213,208,.25);border-radius:999px;background:rgba(255,255,255,.035);overflow:hidden}
.nav-service-search input{width:100%;min-height:42px;border:0!important;background:transparent!important;color:#f4ffff!important;padding:0 8px 0 15px;font-size:.84rem;font-weight:750;outline:none}
.nav-service-search input::placeholder{color:rgba(234,255,255,.62)}
.nav-service-search button{width:42px;height:42px;border:0;background:transparent;cursor:pointer;position:relative;flex:0 0 42px}
.nav-service-search button::before{content:"";position:absolute;left:12px;top:11px;width:13px;height:13px;border:2px solid #18d5d0;border-radius:50%}
.nav-service-search button::after{content:"";position:absolute;left:25px;top:26px;width:9px;height:2px;background:#18d5d0;transform:rotate(45deg);border-radius:999px}
.main-categories-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1.35rem!important}
.main-category-card{min-height:230px;align-items:flex-start!important;text-align:left!important}
.main-category-card img{width:72px!important;height:72px!important;margin-bottom:.6rem}
.main-category-card h3{font-size:1.25rem!important}
.main-category-card p{max-width:100%!important}
.catalog-toolbar{top:82px}
.catalog-search .search-icon{width:22px;height:22px;display:inline-block;position:relative;flex:0 0 22px}
.catalog-search .search-icon::before{content:"";position:absolute;left:2px;top:2px;width:12px;height:12px;border:2px solid #18d5d0;border-radius:50%}
.catalog-search .search-icon::after{content:"";position:absolute;left:14px;top:15px;width:9px;height:2px;background:#18d5d0;transform:rotate(45deg);border-radius:999px}
.catalog-view-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid rgba(24,213,208,.12);color:#dff;font-size:.84rem;font-weight:850}
.catalog-view-controls button{border:1px solid rgba(24,213,208,.25);background:rgba(255,255,255,.035);color:#eaffff;border-radius:999px;min-width:38px;min-height:34px;padding:6px 10px;font-weight:900;cursor:pointer}
.catalog-view-controls button.active,.catalog-view-controls button:hover{background:rgba(24,213,208,.17);border-color:rgba(24,213,208,.75);color:#fff}
#serviceCatalogGrid.catalog-view-1 .service-catalog-grid{grid-template-columns:1fr}
#serviceCatalogGrid.catalog-view-2 .service-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
#serviceCatalogGrid.catalog-view-4 .service-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
#serviceCatalogGrid.catalog-view-6 .service-catalog-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
#serviceCatalogGrid .service-catalog-grid{gap:16px}
.catalog-card-media{aspect-ratio:1/1!important;border-radius:22px!important}
#serviceCatalogGrid.catalog-view-2 .catalog-card,
#serviceCatalogGrid.catalog-view-4 .catalog-card,
#serviceCatalogGrid.catalog-view-6 .catalog-card{padding:16px;border-radius:22px}
#serviceCatalogGrid.catalog-view-2 .catalog-card-head,
#serviceCatalogGrid.catalog-view-4 .catalog-card-head,
#serviceCatalogGrid.catalog-view-6 .catalog-card-head{align-items:flex-start;gap:10px}
#serviceCatalogGrid.catalog-view-4 .catalog-card-head img,
#serviceCatalogGrid.catalog-view-6 .catalog-card-head img{width:44px;height:44px;flex-basis:44px}
#serviceCatalogGrid.catalog-view-4 .catalog-card h3,
#serviceCatalogGrid.catalog-view-6 .catalog-card h3{font-size:1rem;line-height:1.15}
#serviceCatalogGrid.catalog-view-4 .catalog-card>p,
#serviceCatalogGrid.catalog-view-6 .catalog-card>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.9rem}
#serviceCatalogGrid.catalog-view-6 .catalog-card>p{display:none}
#serviceCatalogGrid.catalog-view-4 .catalog-detail-grid,
#serviceCatalogGrid.catalog-view-6 .catalog-detail-grid{display:none}
#serviceCatalogGrid.catalog-view-4 .catalog-card-actions,
#serviceCatalogGrid.catalog-view-6 .catalog-card-actions{gap:8px}
#serviceCatalogGrid.catalog-view-4 .catalog-card-actions .btn,
#serviceCatalogGrid.catalog-view-6 .catalog-card-actions .btn{width:100%;padding:10px 8px;font-size:.78rem}
#serviceCatalogGrid.catalog-view-6 .product-badge{display:none}
.catalog-anchor{display:block;scroll-margin-top:145px;height:1px}
.category-placeholder-card{border-style:dashed}
@media (max-width:1280px){#serviceCatalogGrid.catalog-view-6 .service-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1100px){
  .nav-service-search{order:20;width:100%;max-width:100%;margin:8px 0 0}
  #serviceCatalogGrid.catalog-view-4 .service-catalog-grid,#serviceCatalogGrid.catalog-view-6 .service-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:760px){
  .main-categories-grid{grid-template-columns:1fr!important}
  #serviceCatalogGrid.catalog-view-2 .service-catalog-grid,#serviceCatalogGrid.catalog-view-4 .service-catalog-grid,#serviceCatalogGrid.catalog-view-6 .service-catalog-grid{grid-template-columns:1fr}
  .catalog-layout{grid-template-columns:1fr!important}
}

/* V16 ajuste: tienda a ancho completo para 4 productos por línea y menú responsive */
.catalog-layout{grid-template-columns:1fr!important}
.service-cart{max-width:760px;width:100%;margin:24px auto 0}
@media (max-width:1180px){
  .nav-toggle{display:flex}
  .nav-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}
  .nav-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .nav-menu{position:fixed;left:16px;right:16px;top:86px;display:none;flex-direction:column;align-items:stretch;gap:8px;max-height:calc(100vh - 108px);overflow:auto;background:rgba(5,9,10,.98);border:1px solid var(--line);border-radius:24px;padding:16px;box-shadow:var(--shadow)}
  .nav-menu.is-open{display:flex}
  .nav-link,.nav-trigger,.nav-quote{width:100%;justify-content:space-between;padding:13px 14px;border:1px solid rgba(24,213,208,.12);background:rgba(255,255,255,.025);border-radius:16px}
  .nav-quote{justify-content:center;background:var(--turquoise);color:#001314}
  .nav-group{display:block;width:100%}
  .mega-panel,.mega-panel.compact,.services-mega{position:static;width:100%;display:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;border-radius:18px;margin-top:8px;padding:10px;box-shadow:none}
  .nav-group.is-active .mega-panel{display:block}
  .mega-grid.three-cols,.mega-grid.two-cols,.services-mega-grid{grid-template-columns:1fr!important}
}


/* V17 - íconos principales cargados por el usuario */
.main-category-card img,.services-mega-grid .mega-col a img{background:transparent!important;mix-blend-mode:normal}
.main-category-card img{object-fit:contain;filter:drop-shadow(0 0 8px rgba(24,213,208,.22))}


/* V18 ajustes Keduin.com */
.home-hero h1{font-size:clamp(2.35rem,4.6vw,3.18rem);max-width:780px;letter-spacing:-.045em}
.home-hero .hero-grid{grid-template-columns:minmax(0,.92fr) minmax(390px,.9fr);gap:36px}
.home-hero .hero-media{aspect-ratio:1/1;min-height:420px}
.home-hero .hero-media img{object-position:center center}
.home-hero .hero-media figcaption{display:none!important}
.main-categories-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important}
.main-category-card{min-height:250px;padding:22px!important}
.main-category-card img{width:68px!important;height:68px!important}
.main-category-card h3{font-size:1.08rem!important;line-height:1.14!important}
.main-category-card p{font-size:.92rem;line-height:1.55}
.home-offer-subtitle{grid-column:1/-1;margin:10px 0 0;color:#eaffff;font-size:1.35rem;letter-spacing:-.025em;border-left:4px solid var(--turquoise);padding-left:14px}
.offers-grid{align-items:stretch}.offer-card{min-height:100%}.offer-body .catalog-card-actions{margin-top:auto}.offer-body .btn{padding:11px 14px;font-size:.86rem}
.home-portfolio-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}.home-portfolio-grid .portfolio-card-body{padding:14px}.home-portfolio-grid .portfolio-card-body h3{font-size:1.02rem}.home-portfolio-grid .portfolio-card-body p{font-size:.88rem;line-height:1.45}.home-portfolio-grid .portfolio-card-actions.three{display:grid;grid-template-columns:1fr;gap:8px}.home-portfolio-grid .portfolio-card-actions .btn{padding:10px 12px;font-size:.8rem;min-height:40px}.portfolio-home-actions{margin-top:30px}
.footer-bottom{justify-content:center!important;text-align:center;align-items:center;flex-wrap:wrap}.copyright{white-space:normal;display:inline-block}.footer-home{display:none!important}.developed-by{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.developed-by img{width:42px;height:42px;display:inline-block;margin:0 0 0 4px}
.floating-cart-shortcut{width:58px;height:58px;right:22px;bottom:104px;padding:0!important;justify-content:center;gap:0}.floating-cart-shortcut .cart-icon{width:28px;height:28px;display:grid;place-items:center;color:#7df4ff}.floating-cart-shortcut .cart-icon svg{width:28px;height:28px}.floating-cart-shortcut strong{position:absolute;right:-6px;top:-8px;min-width:1.55rem;height:1.55rem;font-size:.78rem;border:2px solid #071011}.floating-cart-shortcut span:not(.cart-icon){display:none!important}
.catalog-layout{display:grid!important;grid-template-columns:310px minmax(0,1fr)!important;gap:24px!important;align-items:start}.catalog-sidebar{position:sticky;top:92px;display:grid;gap:16px;align-self:start}.catalog-sidebar-title{border:1px solid rgba(24,213,208,.2);background:linear-gradient(135deg,rgba(24,213,208,.08),rgba(255,255,255,.025));border-radius:22px;padding:18px}.catalog-sidebar-title h3{font-size:1.15rem;margin:0 0 6px}.catalog-sidebar-title p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.55}.catalog-sidebar .catalog-toolbar{position:static!important;margin:0;padding:15px;border-radius:22px}.catalog-sidebar .catalog-filters{display:grid!important;grid-template-columns:1fr;gap:8px}.catalog-sidebar .catalog-filter{width:100%;text-align:left;border-radius:14px;padding:10px 12px;line-height:1.25}.catalog-sidebar .catalog-view-controls{display:grid;grid-template-columns:1fr repeat(4,auto);align-items:center}.catalog-sidebar .service-cart{position:static!important;top:auto!important;margin:0!important;width:100%!important;max-width:none!important;border-radius:22px;padding:17px}.catalog-main{min-width:0}.catalog-search{align-items:center}.catalog-search input{min-width:0}.service-cart-head{align-items:flex-start}.service-cart-head strong{white-space:nowrap}
.about-anchor-nav{border:0!important;background:rgba(4,12,14,.94)!important;box-shadow:0 12px 32px rgba(0,0,0,.2)}.about-anchor-nav .container{align-items:center}.about-anchor-title{flex:0 0 auto;color:#001314;background:var(--turquoise);border-radius:999px;padding:9px 14px;font-size:.88rem;font-weight:950;box-shadow:0 0 20px rgba(24,213,208,.2)}.about-anchor-nav a{border-color:rgba(24,213,208,.18)!important;background:rgba(255,255,255,.035)!important}.about-story-grid .info-card img,#mision-vision-valores .info-card img,.highlight-card img{width:56px;height:56px;object-fit:contain;margin-bottom:14px;filter:drop-shadow(0 0 10px rgba(24,213,208,.18))}.stats-grid div{position:relative;overflow:hidden}.stats-icon{width:46px;height:46px;object-fit:contain;margin-bottom:12px;filter:drop-shadow(0 0 12px rgba(24,213,208,.25))}
@media (max-width:1180px){.home-hero .hero-grid{grid-template-columns:1fr}.home-hero .hero-media{max-width:620px;width:100%;margin-inline:auto}.main-categories-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}.home-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.catalog-layout{grid-template-columns:1fr!important}.catalog-sidebar{position:static;order:-1}.catalog-sidebar .catalog-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.home-hero .hero-media{min-height:0;aspect-ratio:4/5}.main-categories-grid{grid-template-columns:1fr!important}.home-portfolio-grid{grid-template-columns:1fr!important}.catalog-sidebar .catalog-filters{grid-template-columns:1fr}.catalog-sidebar .catalog-view-controls{grid-template-columns:1fr repeat(4,auto)}.floating-cart-shortcut{width:54px;height:54px;right:14px;bottom:94px}.footer-bottom{gap:12px}}


/* V18 categorias finales, imagenes nuevas y catalogo extendido */
.services-mega .mega-col a{display:grid;grid-template-columns:34px 1fr;align-items:center;gap:10px}.services-mega .mega-col a img{width:34px;height:34px;object-fit:contain}.main-category-card img{width:92px;height:92px}.catalog-filter{display:flex!important;align-items:center;gap:8px}.catalog-filter img{width:24px;height:24px;object-fit:contain;flex:0 0 auto}.catalog-category-group{margin:0 0 38px}.catalog-category-group[hidden]{display:none!important}.catalog-group-head{display:grid;grid-template-columns:76px 1fr;gap:18px;align-items:center;margin:10px 0 18px;padding:18px;border:1px solid rgba(24,213,208,.2);border-radius:24px;background:linear-gradient(135deg,rgba(24,213,208,.09),rgba(255,255,255,.025))}.catalog-group-head>img{width:76px;height:76px;object-fit:contain}.catalog-group-head .catalog-group-title{margin:0 0 8px}.catalog-group-head p:last-child{margin:0;color:var(--muted)}.category-services-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.product-hero-image img,.category-hero-image img{width:100%!important;height:100%!important;margin:0!important;object-fit:cover!important;filter:none!important}.product-detail-page .hero-media.product-hero-image{aspect-ratio:1/1}.category-hero-image{aspect-ratio:1/1}.product-detail-page .hero-media.product-hero-image figcaption,.category-hero-image figcaption{background:rgba(1,1,1,.78)}.service-catalog-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.catalog-view-1 .service-catalog-grid,.catalog-view-1.service-catalog-grid{grid-template-columns:1fr}.catalog-view-2 .service-catalog-grid,.catalog-view-2.service-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-view-4 .service-catalog-grid,.catalog-view-4.service-catalog-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.catalog-view-6 .service-catalog-grid,.catalog-view-6.service-catalog-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.catalog-view-6 .catalog-card{font-size:.88rem}.catalog-view-6 .catalog-card-head{gap:9px}.catalog-view-6 .catalog-card-head img{width:42px;height:42px}.catalog-view-6 .catalog-detail-grid{display:none}.catalog-view-6 .catalog-card-actions{display:grid;grid-template-columns:1fr}.catalog-view-6 .btn{padding:10px 12px;font-size:.82rem}@media(max-width:1180px){.service-catalog-grid,.category-services-grid,.catalog-view-4 .service-catalog-grid,.catalog-view-6 .service-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-group-head{grid-template-columns:60px 1fr}.catalog-group-head>img{width:60px;height:60px}}@media(max-width:760px){.service-catalog-grid,.category-services-grid,.catalog-view-2 .service-catalog-grid,.catalog-view-4 .service-catalog-grid,.catalog-view-6 .service-catalog-grid{grid-template-columns:1fr}.catalog-group-head{grid-template-columns:1fr}.catalog-group-head>img{width:72px;height:72px}.services-mega .mega-col a{grid-template-columns:30px 1fr}}


/* V19 auditoría: catálogo 1/2/3, carro acumulativo, SKU y WhatsApp */
#serviceCatalogGrid.catalog-view-1 .service-catalog-grid{grid-template-columns:1fr!important}
#serviceCatalogGrid.catalog-view-2 .service-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
#serviceCatalogGrid.catalog-view-3 .service-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#serviceCatalogGrid.catalog-view-3 .catalog-card{padding:17px;border-radius:22px}
#serviceCatalogGrid.catalog-view-3 .catalog-card-head{align-items:flex-start;gap:10px}
#serviceCatalogGrid.catalog-view-3 .catalog-card-head img{width:48px;height:48px;flex-basis:48px}
#serviceCatalogGrid.catalog-view-3 .catalog-card h3{font-size:1.05rem;line-height:1.16}
#serviceCatalogGrid.catalog-view-3 .catalog-card>p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:.9rem}
#serviceCatalogGrid.catalog-view-3 .catalog-detail-grid{display:none}
#serviceCatalogGrid.catalog-view-3 .catalog-card-actions{gap:8px}
#serviceCatalogGrid.catalog-view-3 .catalog-card-actions .btn{width:100%;padding:10px 10px;font-size:.82rem}
.catalog-sidebar .catalog-view-controls{grid-template-columns:1fr repeat(3,auto)!important}
.catalog-view-controls button[data-catalog-view="4"],.catalog-view-controls button[data-catalog-view="6"]{display:none!important}
.sku-pill{display:inline-flex;margin-top:8px;max-width:max-content;align-items:center;border:1px solid rgba(24,213,208,.22);background:rgba(24,213,208,.07);color:#bffafa;border-radius:999px;padding:4px 9px;font-size:.68rem;font-weight:900;letter-spacing:.03em;line-height:1.1}.catalog-card-head h3{margin-bottom:2px}.service-add-btn.is-added,.detail-cart-btn.is-added,.service-add-hero.is-added{background:rgba(24,213,208,.16);color:#eaffff;border-color:rgba(24,213,208,.65)}.cart-notice{min-height:42px;margin:12px 0;padding:11px 13px;border:1px solid rgba(24,213,208,.2);border-radius:16px;background:rgba(24,213,208,.06);color:#ddffff;font-size:.86rem;font-weight:800;line-height:1.35}.cart-item-v19{display:grid;gap:10px;padding:13px;border:1px solid rgba(24,213,208,.18);border-radius:18px;background:rgba(2,9,10,.58);margin-bottom:10px}.cart-item-v19-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.cart-item-v19-head strong{display:block;color:#fff;font-size:.94rem;line-height:1.22}.cart-item-v19-head small{display:block;color:#9fd7d6;font-size:.72rem;line-height:1.35;margin-top:3px}.cart-item-v19-meta{display:flex;flex-wrap:wrap;gap:8px;color:#eaffff;font-size:.82rem;font-weight:900}.cart-item-v19-meta span{display:inline-flex;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.04);border-radius:999px;padding:5px 8px}.cart-qty{display:inline-flex;align-items:center;gap:8px}.cart-qty button{width:34px;height:34px;border:1px solid rgba(24,213,208,.28);background:rgba(255,255,255,.04);color:#fff;border-radius:50%;font-weight:950;font-size:1.1rem;cursor:pointer}.cart-qty span{min-width:22px;text-align:center;font-weight:950}.cart-field{gap:6px;color:#dff;font-size:.78rem}.cart-field span{font-weight:900;color:#bffafa}.cart-field textarea,.cart-field select{width:100%;border:1px solid rgba(24,213,208,.18);background:#061011;color:#fff;border-radius:12px;padding:10px;font:inherit;resize:vertical}.cart-questions{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:9px 10px;background:rgba(255,255,255,.025)}.cart-questions summary{cursor:pointer;font-size:.8rem;font-weight:900;color:#eaffff}.cart-questions ul{margin:8px 0 0;padding-left:18px;color:#b8cccc;font-size:.78rem}.hero-copy [data-hero-title],.hero-copy [data-hero-subtitle]{transition:opacity .22s ease,transform .22s ease}.hero-copy .is-changing{opacity:.18;transform:translateY(8px)}.hero-actions a[data-hero-primary],.hero-actions a[data-hero-secondary]{min-width:170px}.floating-cart-shortcut{z-index:95}
@media(max-width:1180px){#serviceCatalogGrid.catalog-view-3 .service-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.catalog-sidebar .catalog-view-controls{grid-template-columns:1fr repeat(3,auto)!important}}
@media(max-width:760px){#serviceCatalogGrid.catalog-view-2 .service-catalog-grid,#serviceCatalogGrid.catalog-view-3 .service-catalog-grid{grid-template-columns:1fr!important}.catalog-sidebar .catalog-view-controls{grid-template-columns:1fr repeat(3,auto)!important}.cart-item-v19-head{gap:8px}.cart-item-v19{padding:11px}.cart-field textarea{min-height:76px}.hero-actions a[data-hero-primary],.hero-actions a[data-hero-secondary]{width:100%;min-width:0}}


/* V20 auditoría responsive móvil, filtros compactos y carro WhatsApp */
html,body{max-width:100%;overflow-x:hidden}
h1,h2,h3,.home-hero h1,.home-offer-subtitle{letter-spacing:0!important}
.catalog-card,.offer-card,.service-cart,.detail-main,.spec-card{max-width:100%}
.catalog-card-head>div,.offer-body,.cart-item-v19-head>div,.service-cart-head,.catalog-group-head>div{min-width:0}
.catalog-card h3,.offer-body h3,.cart-item-v19-head strong,.catalog-group-title,.catalog-filter,.catalog-category{overflow-wrap:anywhere}
.catalog-category{width:auto;max-width:100%;white-space:normal;line-height:1.25;text-align:left}
.sku-pill{white-space:normal;overflow-wrap:anywhere}
.catalog-card-actions .btn,.hero-actions .btn,.service-cart-actions .btn,.modal-actions .btn{white-space:normal;text-align:center;line-height:1.2}
.catalog-filter-toggle{display:none;width:100%;min-height:48px;margin-top:12px;border:1px solid rgba(24,213,208,.36);border-radius:16px;background:rgba(24,213,208,.10);color:#eaffff;font:inherit;font-weight:950;cursor:pointer}
.catalog-filter-toggle::after{content:"";width:8px;height:8px;margin-left:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.catalog-filter-toggle[aria-expanded="true"]::after{transform:rotate(225deg) translateY(-1px)}
.cart-remove{display:inline-grid;place-items:center;flex:0 0 auto}
@media(max-width:1180px){
  .home-hero{padding:60px 0 48px}
  .home-hero .hero-media{aspect-ratio:16/9;max-height:380px;min-height:0}
  .home-hero .hero-support,.home-socials.icon-only{display:none}
  .home-hero .hero-actions .btn-whatsapp{display:none}
}
@media(max-width:900px){
  .section{padding:64px 0}
  .page-hero{padding:56px 0 42px}
  .home-hero{padding:54px 0 44px}
  .home-hero .hero-media{aspect-ratio:16/9;max-height:320px;min-height:0}
  .home-hero .hero-support,.home-socials.icon-only{display:none}
  .home-hero .hero-actions .btn-whatsapp{display:none}
  .product-detail-grid{gap:20px}
  .detail-main,.spec-card{border-radius:20px}
}
@media(max-width:760px){
  .container{width:min(100% - 24px,var(--container))}
  .home-hero{padding:52px 0 42px}
  .home-hero h1{font-size:2.05rem!important;line-height:1.07}
  .home-hero .hero-grid{gap:24px}
  .home-hero .hero-media{aspect-ratio:16/11;max-height:220px;border-radius:22px}
  .hero-lead,.page-lead{font-size:1.02rem;line-height:1.55}
  .hero-support{font-size:.95rem}
  .page-hero-grid{gap:24px}
  .page-hero h1{font-size:2.05rem}
  .catalog-sidebar-title{padding:14px;border-radius:18px}
  .catalog-toolbar{padding:12px!important;border-radius:18px!important}
  .catalog-filter-toggle{display:flex;align-items:center;justify-content:center}
  .catalog-toolbar:not(.filters-open) .catalog-filters,
  .catalog-toolbar:not(.filters-open) .catalog-view-controls{display:none!important}
  .catalog-sidebar .catalog-filters{max-height:62vh;overflow:auto;padding-right:2px}
  .catalog-filter{min-height:46px}
  .catalog-sidebar .catalog-view-controls{grid-template-columns:1fr repeat(3,minmax(44px,auto))!important;gap:8px}
  .catalog-view-controls button{min-width:44px;min-height:42px}
  .catalog-group-head{gap:12px;padding:14px;border-radius:18px}
  .catalog-card{padding:16px!important;border-radius:18px!important}
  .catalog-card-head{gap:12px}
  .catalog-card-head img{width:50px!important;height:50px!important;flex-basis:50px!important}
  .catalog-card-media{border-radius:16px!important}
  .product-meta-row{font-size:.92rem}
  .service-cart{padding:14px!important;border-radius:18px!important}
  .service-cart-head strong{white-space:normal}
  .cart-item-v19-head{align-items:flex-start}
  .cart-remove{width:40px;height:40px}
  .cart-qty button{width:40px;height:40px}
  .floating-cart-shortcut{right:14px;bottom:86px}
  .floating-whatsapp{right:14px;bottom:16px}
  .footer{padding-top:42px}
  .footer-grid{gap:18px}
}
@media(max-width:430px){
  .container{width:min(100% - 20px,var(--container))}
  .nav-menu{left:10px;right:10px;padding:12px;border-radius:18px}
  .home-hero h1,.page-hero h1{font-size:1.9rem!important}
  .hero-actions{gap:10px;margin-top:22px}
  .btn{padding:12px 16px}
  .catalog-card-actions{gap:8px}
  .catalog-group-head>img{width:60px!important;height:60px!important}
  .offer-price{font-size:1.22rem}
}

/* V20.2 home mobile services and visible cart manager */
.home-cart-manager{padding-top:24px}
.home-cart-manager .section-head{max-width:860px;margin-bottom:18px}
.home-service-cart{position:relative!important;top:auto!important;max-width:920px!important;margin:0 auto!important}
.home-service-cart .service-cart-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.home-service-cart .service-cart-actions .btn{width:100%}
.home-service-cart .service-cart-actions .cart-clear{grid-column:1/-1;justify-self:center}

@media(max-width:760px){
  .main-categories-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .main-category-card{min-height:0!important;padding:14px 10px!important;border-radius:16px!important;align-items:flex-start!important;text-align:left!important}
  .main-category-card img{width:46px!important;height:46px!important;margin-bottom:6px!important}
  .main-category-card h3{font-size:.84rem!important;line-height:1.18!important;overflow-wrap:anywhere}
  .main-category-card p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;font-size:.74rem!important;line-height:1.34!important}
  .main-category-card span{font-size:.72rem!important;line-height:1.2!important}
  .home-cart-manager{padding:40px 0}
  .home-cart-manager .section-head{margin-bottom:14px}
  .home-service-cart{max-width:100%!important;padding:14px!important}
  .home-service-cart .service-cart-actions{grid-template-columns:1fr}
}

@media(max-width:380px){
  .main-categories-grid{gap:8px!important}
  .main-category-card{padding:12px 8px!important}
  .main-category-card img{width:40px!important;height:40px!important}
  .main-category-card h3{font-size:.78rem!important}
  .main-category-card p{font-size:.7rem!important;-webkit-line-clamp:3}
  .main-category-card span{font-size:.68rem!important}
}

/* V20.3 campaign cards, readable details and compact category labels */
.catalog-card .catalog-category{
  display:block!important;
  width:auto!important;
  max-width:100%!important;
  border:0!important;
  border-radius:0!important;
  padding:0!important;
  background:transparent!important;
  color:var(--turquoise)!important;
  font-size:.64rem!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  text-transform:uppercase;
  margin:0 0 5px!important;
}
.catalog-card-head{align-items:flex-start}
.catalog-card-head img{width:58px!important;height:58px!important;flex-basis:58px!important}
.catalog-card .catalog-detail-grid{
  grid-template-columns:1fr!important;
  gap:10px!important;
  margin-top:14px!important;
}
.catalog-card .catalog-detail-grid>div{
  border-radius:14px!important;
  padding:12px 13px!important;
}
.catalog-card .catalog-detail-grid ul{
  line-height:1.45!important;
  font-size:.88rem!important;
}
.catalog-card .catalog-detail-grid p{
  font-size:.88rem!important;
  line-height:1.5!important;
  margin:0!important;
}
.campaign-unified-card .catalog-card-media{
  aspect-ratio:16/10!important;
  background:#02090d!important;
}
.campaign-unified-card .catalog-card-media img,
.offer-card .offer-media img[src*="campana-"]{
  object-fit:cover!important;
  filter:none!important;
}
.campaign-hero-image{
  aspect-ratio:16/10!important;
  background:#02090d!important;
}
.campaign-hero-image img{
  object-fit:contain!important;
  filter:none!important;
}
@media(max-width:760px){
  .catalog-card-head{gap:10px!important}
  .catalog-card-head img{width:44px!important;height:44px!important;flex-basis:44px!important}
  .catalog-card .catalog-detail-grid{gap:8px!important}
  .catalog-card .catalog-detail-grid>div{padding:11px!important}
}

/* V20.6 horizontal preliminary review carousel */
.client-reviews-section{
  overflow:hidden;
}
.reviews-layout-head{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(190px,260px);
  align-items:end;
  gap:24px;
  margin-bottom:18px;
}
.reviews-layout-head .section-head{
  margin-bottom:0;
}
.reviews-rating-panel{
  border:1px solid rgba(24,213,208,.26);
  border-radius:18px;
  padding:18px;
  background:linear-gradient(135deg,rgba(24,213,208,.10),rgba(255,255,255,.025));
  box-shadow:0 18px 40px rgba(0,0,0,.18);
}
.reviews-rating-panel strong{
  display:block;
  color:#fff;
  font-size:2.5rem;
  line-height:1;
  font-weight:950;
}
.rating-stars,.review-stars{
  color:var(--turquoise);
  letter-spacing:.04em;
  font-weight:950;
}
.reviews-rating-panel small{
  display:block;
  color:var(--muted);
  margin-top:6px;
  line-height:1.35;
}
.reviews-control-row{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  margin:0 0 12px;
}
.reviews-nav{
  width:44px;
  height:44px;
  border:1px solid rgba(24,213,208,.36);
  border-radius:999px;
  background:rgba(24,213,208,.10);
  color:#eaffff;
  font-size:1.5rem;
  font-weight:900;
  cursor:pointer;
}
.reviews-track{
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(280px,360px);
  gap:16px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding:2px;
  padding:2px 2px 18px;
  scrollbar-color:rgba(24,213,208,.55) rgba(255,255,255,.08);
}
.review-card{
  scroll-snap-align:start;
  min-height:260px;
  display:flex;
  flex-direction:column;
  gap:14px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:18px;
  background:rgba(255,255,255,.035);
  padding:18px;
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}
.review-stars{
  font-size:.98rem;
}
.review-stars span{
  color:#fff;
  margin-left:6px;
  font-size:.86rem;
}
.review-card blockquote{
  margin:0;
  color:#dce8e8;
  line-height:1.6;
  font-size:.96rem;
}
.review-card footer{
  margin-top:auto;
  display:grid;
  gap:4px;
}
.review-card strong{
  color:#fff;
  font-size:1rem;
}
.review-card footer span{
  color:var(--muted);
  font-size:.88rem;
  line-height:1.35;
}
@media(max-width:760px){
  .reviews-layout-head{
    grid-template-columns:1fr;
    gap:14px;
  }
  .reviews-rating-panel{
    padding:14px;
  }
  .reviews-rating-panel strong{
    font-size:2.15rem;
  }
  .reviews-control-row{
    justify-content:flex-start;
  }
  .reviews-track{
    grid-auto-columns:minmax(260px,86vw);
    gap:12px;
  }
  .review-card{
    min-height:280px;
    padding:16px;
  }
}

/* V20.8 layered technology backgrounds */
:root{
  --bg-base-tech:linear-gradient(135deg,rgba(24,213,208,.08),rgba(255,255,255,.025) 42%,rgba(1,1,1,0) 78%);
  --bg-network-lines:linear-gradient(135deg,rgba(24,213,208,.07),rgba(255,255,255,.02) 44%,rgba(1,1,1,0) 78%);
  --bg-data-dashboard:linear-gradient(135deg,rgba(24,213,208,.09),rgba(255,255,255,.025) 40%,rgba(1,1,1,0) 80%);
  --bg-hero-keduin:linear-gradient(135deg,rgba(24,213,208,.08),rgba(255,255,255,.03) 45%,rgba(1,1,1,0) 82%);
  --bg-commerce-cart:linear-gradient(135deg,rgba(24,213,208,.08),rgba(255,255,255,.025) 42%,rgba(1,1,1,0) 78%);
  --bg-code-web:linear-gradient(135deg,rgba(24,213,208,.08),rgba(255,255,255,.025) 42%,rgba(1,1,1,0) 78%);
  --bg-mobile-soft:linear-gradient(135deg,rgba(24,213,208,.07),rgba(255,255,255,.025) 46%,rgba(1,1,1,0) 82%);
}
html{
  background:#010507;
}
body{
  background-color:#020608;
  background-image:
    linear-gradient(180deg,rgba(1,7,9,.82),rgba(1,1,1,.92) 58%,rgba(1,1,1,.98)),
    var(--bg-base-tech);
  background-size:cover;
  background-position:center top;
  background-attachment:fixed;
}
.home-hero,
.page-hero,
.offers-section,
.home-cart-manager,
.dark-panel,
.client-reviews-section,
#catalogo-servicios{
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center;
}
.home-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.92),rgba(1,5,7,.66) 46%,rgba(1,5,7,.88)),
    var(--bg-hero-keduin);
}
.page-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.93),rgba(1,5,7,.74) 48%,rgba(1,5,7,.90)),
    var(--bg-network-lines)!important;
  border-bottom:1px solid rgba(24,213,208,.08);
}
.service-template .page-hero,
.category-template .page-hero,
body:has(.product-detail-page) .page-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.94),rgba(1,5,7,.72) 48%,rgba(1,5,7,.90)),
    var(--bg-code-web)!important;
}
.catalog-hero,
#catalogo-servicios,
.offers-section,
.home-cart-manager{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.94),rgba(1,5,7,.79) 46%,rgba(1,5,7,.93)),
    var(--bg-commerce-cart)!important;
}
.dark-panel{
  background-image:
    linear-gradient(180deg,rgba(1,5,7,.91),rgba(1,5,7,.84)),
    var(--bg-network-lines)!important;
  border-block-color:rgba(24,213,208,.10);
}
.client-reviews-section,
body:has(.reviews-track) .client-reviews-section{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.94),rgba(1,5,7,.80) 52%,rgba(1,5,7,.94)),
    var(--bg-data-dashboard);
}
body:has(.quote-shell) .page-hero,
body:has(.contact-grid) .page-hero,
body:has(.portfolio-grid) .page-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.94),rgba(1,5,7,.74) 48%,rgba(1,5,7,.90)),
    var(--bg-network-lines)!important;
}
.site-header,
.mega-panel,
.nav-menu{
  background-color:rgba(1,8,10,.92);
}
.service-card,
.info-card,
.portfolio-card,
.catalog-card,
.offer-card,
.service-cart,
.detail-main,
.spec-card,
.statement,
.contact-form,
.quote-shell{
  backdrop-filter:blur(10px);
}
@media(max-width:760px){
  body,
  .home-hero,
  .page-hero,
  .catalog-hero,
  #catalogo-servicios,
  .offers-section,
  .home-cart-manager,
  .dark-panel,
  .client-reviews-section,
  .service-template .page-hero,
  .category-template .page-hero,
  body:has(.product-detail-page) .page-hero{
    background-image:
      linear-gradient(180deg,rgba(1,5,7,.92),rgba(1,5,7,.82) 48%,rgba(1,1,1,.95)),
      var(--bg-mobile-soft)!important;
    background-size:cover;
    background-position:center top;
    background-attachment:scroll;
  }
}

/* V21 - limpieza visual, carro independiente y portfolio Website Builder */
.nav-cart-link{position:relative;width:46px;height:46px;display:inline-grid;place-items:center;border:1px solid rgba(24,213,208,.34);border-radius:999px;background:rgba(24,213,208,.1);color:#eaffff;flex:0 0 auto}
.nav-cart-link .cart-icon,.nav-cart-link .cart-icon svg{width:24px;height:24px;display:block}
.nav-cart-link strong{position:absolute;right:-7px;top:-8px;min-width:1.55rem;height:1.55rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:2px solid #071011;background:var(--turquoise);color:#001314;font-size:.76rem;font-weight:950;padding:0 .32rem}
.home-hero .hero-media{aspect-ratio:16/10!important;min-height:420px}
.home-hero .hero-media img{transition:opacity .35s ease,transform .45s ease;object-position:center center}
.home-hero .hero-media.is-switching img{opacity:.18;transform:scale(1.02)}
.hero-copy [data-hero-title],.hero-copy [data-hero-subtitle]{overflow-wrap:anywhere}
.hero-copy [data-hero-title].is-typing::after,.hero-copy [data-hero-subtitle].is-typing::after{content:"";display:inline-block;width:2px;height:.9em;margin-left:4px;background:var(--turquoise);vertical-align:-.08em;animation:typingCursor 1.1s ease-in-out infinite}
@keyframes typingCursor{0%,100%{opacity:.25}50%{opacity:1}}
.main-categories-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.main-category-card{min-height:0!important;gap:10px!important;padding:20px!important;border-radius:8px!important;text-align:center!important;align-items:center!important}
.main-category-card img{width:132px!important;height:132px!important;margin:0 auto 6px!important;filter:drop-shadow(0 0 18px rgba(24,213,208,.28))}
.main-category-card h3{font-size:1rem!important;line-height:1.16!important}
.main-category-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:.88rem!important;line-height:1.42!important}
.main-category-card span{display:inline-flex;align-items:center;justify-content:center;min-height:38px;margin-top:auto!important;padding:9px 12px;border-radius:999px;background:rgba(24,213,208,.12);border:1px solid rgba(24,213,208,.28);color:#eaffff!important;font-size:.82rem}
.growth-plans-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.growth-plans-grid .info-card,.builder-card{border-radius:8px!important}
.builder-filter-row{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 20px}
.builder-portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-height:720px;overflow:auto;padding:2px 6px 8px 2px;scrollbar-color:rgba(24,213,208,.55) rgba(255,255,255,.08)}
.builder-card{display:flex;flex-direction:column;gap:10px;min-height:220px;padding:18px;border:1px solid rgba(24,213,208,.18);background:rgba(12,20,21,.82);box-shadow:0 12px 34px rgba(0,0,0,.18)}
.builder-card .category{color:var(--turquoise);font-weight:950;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}
.builder-card h3{font-size:1.08rem;line-height:1.15}
.builder-card p{margin:0;color:var(--muted);font-size:.9rem;line-height:1.48}
.builder-card-actions{display:grid;grid-template-columns:1fr;gap:8px;margin-top:auto}
.builder-card-actions .btn{min-height:42px;padding:10px 12px;font-size:.82rem}
.final-cta-section .statement{border-radius:8px}
.final-cta-section .statement p{max-width:920px}
.cart-quote-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:24px;align-items:start}
.cart-page-service-cart{position:sticky!important;top:96px!important;max-width:none!important;margin:0!important;border-radius:8px!important}
.cart-client-form{border-radius:8px!important}
.cart-client-form .section-head{margin-bottom:4px}
.cart-client-form textarea[readonly]{min-height:190px;color:#dff;background:rgba(255,255,255,.035)}
.cart-item-v19-head{display:grid!important;grid-template-columns:64px minmax(0,1fr) auto;align-items:start}
.cart-item-v21-media{width:56px;height:56px;display:grid;place-items:center;border:1px solid rgba(24,213,208,.22);border-radius:8px;background:rgba(24,213,208,.08);overflow:hidden;color:var(--turquoise);font-weight:950}
.cart-item-v21-media img{width:100%;height:100%;object-fit:cover}
.planes-page .page-hero .hero-media{display:grid;place-items:center;min-height:300px;border-radius:8px}
.planes-page .page-hero .hero-media img{width:150px!important;height:150px!important;object-fit:contain!important;filter:drop-shadow(0 0 26px rgba(24,213,208,.28))}
.planes-page .service-catalog-grid .catalog-card{border-radius:8px!important}
.planes-page .service-catalog-grid .catalog-card-head{align-items:center!important;gap:18px!important}
.planes-page .service-catalog-grid .catalog-card-head img{width:88px!important;height:88px!important;flex-basis:88px!important;object-fit:contain!important;filter:drop-shadow(0 0 16px rgba(24,213,208,.26))}
@media(max-width:1180px){.main-categories-grid,.builder-portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.main-category-card img{width:112px!important;height:112px!important}.cart-quote-layout{grid-template-columns:1fr}.cart-page-service-cart{position:relative!important;top:auto!important}}
@media(max-width:760px){.nav-cart-link{width:100%;min-height:48px;border-radius:16px}.nav-cart-link .cart-icon{margin-right:6px}.home-hero .hero-media{aspect-ratio:4/5!important;max-height:none!important;min-height:0}.main-categories-grid,.builder-portfolio-grid,.growth-plans-grid{grid-template-columns:1fr!important}.main-category-card{text-align:left!important;align-items:flex-start!important;padding:16px!important}.main-category-card img{width:78px!important;height:78px!important;margin:0 0 4px!important}.main-category-card p{-webkit-line-clamp:2}.builder-portfolio-grid{max-height:640px}.cart-item-v19-head{grid-template-columns:52px minmax(0,1fr) auto}.cart-item-v21-media{width:48px;height:48px}.planes-page .service-catalog-grid .catalog-card-head img{width:66px!important;height:66px!important;flex-basis:66px!important}}

/* V21.1 - logo centrado en header movil */
@media(max-width:1180px){
  .site-header .navbar{position:relative;justify-content:center}
  .site-header .brand{position:absolute;left:50%;transform:translateX(-50%);z-index:4;margin:0}
  .site-header .nav-toggle{margin-left:auto;position:relative;z-index:5}
  .site-header .nav-menu{z-index:3}
}

/* V26 - version sin fotos: marcadores para reemplazo manual */
.photo-placeholder{
  width:100%;
  min-height:220px;
  aspect-ratio:16/10;
  display:grid;
  place-items:center;
  padding:18px;
  border:1px dashed rgba(24,213,208,.64);
  border-radius:inherit;
  background:
    linear-gradient(135deg,rgba(24,213,208,.14),rgba(255,255,255,.04) 46%,rgba(24,213,208,.06)),
    rgba(4,14,16,.72);
  color:#eaffff;
  font-weight:950;
  letter-spacing:.08em;
  text-align:center;
  text-transform:uppercase;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035),0 18px 42px rgba(0,0,0,.22);
}
.photo-placeholder span{
  display:block;
  font-size:clamp(1.35rem,3vw,2.45rem);
  line-height:1;
}
.photo-placeholder small{
  display:block;
  margin-top:10px;
  color:#7feeed;
  font-size:.78rem;
  letter-spacing:.04em;
}
.hero-media .photo-placeholder,
.offer-media .photo-placeholder,
.portfolio-shot .photo-placeholder,
.product-hero-image .photo-placeholder,
.catalog-card-media .photo-placeholder{
  height:100%;
  min-height:100%;
}
.catalog-card-media .photo-placeholder span{
  font-size:clamp(1rem,1.6vw,1.45rem);
}





/* V27 - Packs de Marketing Keduin.com */
.nav-pack-link{
  color:#83fbff !important;
  font-weight:900;
}
.smart-pack-home-card,
.diag-pack-banner,
.quote-pack-panel,
.pack-meeting-box{
  border:1px solid rgba(24,213,208,.2);
  border-radius:28px;
  background:linear-gradient(135deg, rgba(24,213,208,.10), rgba(255,255,255,.04));
  box-shadow:0 26px 80px rgba(0,0,0,.28);
}
.smart-pack-home-card{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:28px;
  align-items:center;
  padding:clamp(24px,4vw,42px);
}
.smart-pack-home-card h2,
.smart-pack-explain h2{
  margin:10px 0 14px;
}
.smart-pack-home-card p,
.smart-pack-explain p{
  color:rgba(255,255,255,.76);
  line-height:1.75;
}
.smart-pack-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:18px;
}
.smart-pack-badges span{
  padding:8px 12px;
  border:1px solid rgba(24,213,208,.24);
  border-radius:999px;
  color:#dffcff;
  background:rgba(24,213,208,.08);
  font-weight:800;
  font-size:.88rem;
}
.smart-pack-home-actions{
  display:grid;
  gap:12px;
}
.smart-pack-hero-media{
  display:grid;
  place-items:center;
  padding:28px;
  min-height:320px;
}
.smart-pack-hero-media img{
  width:min(280px,75%);
  filter:drop-shadow(0 24px 70px rgba(24,213,208,.22));
}
.smart-pack-module-grid .catalog-card,
.smart-pack-presets .offer-card,
.smart-pack-catalog-group .catalog-card{
  border-color:rgba(24,213,208,.20);
}
.smart-pack-builder-actions{
  margin-top:26px;
}
.quote-pack-panel{
  padding:clamp(18px,3vw,28px);
  margin:18px 0;
}
.section-head.compact{
  margin-bottom:18px;
}
.quote-check-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px 14px;
  margin:16px 0 18px;
}
.quote-check-grid label{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:12px 13px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.04);
  color:rgba(255,255,255,.86);
  font-weight:750;
}
.quote-check-grid input{
  margin-top:3px;
  accent-color:#18d5d0;
}
.pack-meeting-box{
  padding:18px;
  margin:18px 0;
}
.pack-meeting-box h3{
  margin:6px 0 14px;
}
.diag-pack-banner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  padding:22px;
  margin:4px auto 22px;
}
.diag-pack-banner h2,
.diag-pack-result-box h3{
  margin:10px 0 8px;
  color:#fff;
}
.diag-pack-banner p,
.diag-pack-result-box p{
  color:rgba(232,247,255,.78);
  line-height:1.65;
}
.diag-pack-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:flex-end;
}
.diag-pack-result-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  border:1px solid rgba(0,224,220,.18);
  border-radius:18px;
  background:rgba(0,224,220,.08);
  padding:18px;
  margin:18px 0;
}
@media (max-width: 900px){
  .smart-pack-home-card,
  .diag-pack-banner,
  .diag-pack-result-box{
    grid-template-columns:1fr;
  }
  .diag-pack-actions{
    justify-content:flex-start;
  }
  .quote-check-grid{
    grid-template-columns:1fr;
  }
}


/* V28 - Pack de Marketing por ítems e iconos propios */
.smart-pack-module-grid .catalog-card-head img,
.smart-pack-catalog-group .catalog-card-head img,
.smart-pack-item-process .catalog-card-head img,
.catalog-filter[data-service-filter="packs-inteligentes"] img{
  border-radius:18px;
  background:rgba(2,13,15,.72);
  padding:4px;
  box-shadow:0 14px 34px rgba(0,0,0,.22), 0 0 18px rgba(24,213,208,.12);
}
.smart-pack-item-process .service-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.smart-pack-item-process .catalog-card{border-color:rgba(24,213,208,.22);}
@media(max-width:900px){.smart-pack-item-process .service-catalog-grid{grid-template-columns:1fr;}}

.audiovisual-quick-form{margin-top:18px}.audiovisual-main-product{border-color:rgba(24,213,208,.34)}.audiovisual-main-product .catalog-detail-grid ul{margin-top:8px}

/* V41 - Configuración dentro de la ficha del producto */
.product-configurator-v40{
  margin:22px 0 18px;
  padding:18px;
  border:1px solid rgba(1,209,230,.38);
  border-radius:22px;
  background:linear-gradient(135deg, rgba(1,209,230,.10), rgba(255,255,255,.035));
  box-shadow:0 18px 42px rgba(0,0,0,.18);
}
.product-configurator-v40 .product-config-field{display:block;margin:0 0 12px;}
.product-configurator-v40 .product-config-field span{display:block;margin-bottom:7px;font-weight:800;color:#fff;}
.product-configurator-v40 select,
.product-configurator-v40 textarea{
  width:100%;
  border:1px solid rgba(1,209,230,.35);
  border-radius:14px;
  background:#07151a;
  color:#fff;
  padding:12px 14px;
  font:inherit;
  outline:none;
}
.product-configurator-v40 select:focus,
.product-configurator-v40 textarea:focus{border-color:#01d1e6;box-shadow:0 0 0 3px rgba(1,209,230,.16);}
.product-configurator-v40 .product-config-help{margin:0 0 14px;color:rgba(255,255,255,.78);font-size:.95rem;line-height:1.45;}
.product-configurator-v40 .product-config-note-field{margin-top:10px;}
.cart-field select:invalid{border-color:#01d1e6;}


/* V41 - imágenes de productos y portafolio */
.builder-domain{display:block;margin-top:-4px;color:#7feeed;font-weight:800;font-size:.82rem;word-break:break-word}
.portfolio-shot img{background:#081418}
.product-hero-image img{object-fit:cover!important}


/* V42 - ajustes solicitados por Keduin: íconos visibles, ofertas más grandes y contacto final */
.services-mega .mega-col a img{width:46px!important;height:46px!important;object-fit:contain!important;filter:drop-shadow(0 0 14px rgba(24,213,208,.28))!important;}
.services-mega .mega-col a{grid-template-columns:46px 1fr!important;gap:12px!important;align-items:center!important;}
.main-categories-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.main-category-card{min-height:300px!important;padding:24px!important;align-items:center!important;text-align:center!important;}
.main-category-card img{width:138px!important;height:138px!important;margin:0 auto 10px!important;object-fit:contain!important;filter:drop-shadow(0 0 24px rgba(24,213,208,.32))!important;}
.offers-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;}
.offer-media{aspect-ratio:1/1!important;background:#020607!important;}
.offer-media img{width:100%!important;height:100%!important;object-fit:cover!important;}
.offer-card{border-color:rgba(24,213,208,.20)!important;background:rgba(10,18,21,.92)!important;}
.offer-body{padding:18px!important;display:flex;flex-direction:column;gap:12px;min-height:270px;}
.offer-body p{font-size:.96rem;line-height:1.48;}
.home-offer-subtitle{font-size:1.6rem!important;margin:18px 0 2px!important;}
.portfolio-shot img{width:100%;height:100%;object-fit:cover;display:block;}
.keduin-home-contact{background:linear-gradient(135deg,rgba(24,213,208,.08),rgba(255,255,255,.025));border-top:1px solid rgba(24,213,208,.16);}
.home-contact-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:22px;align-items:stretch;}
.home-contact-card,.home-contact-form,.home-map-card{border:1px solid rgba(24,213,208,.18);border-radius:24px;background:rgba(7,14,16,.86);box-shadow:0 18px 50px rgba(0,0,0,.22);padding:22px;}
.home-contact-list{display:grid;gap:10px;margin:18px 0;}
.home-contact-list a,.home-contact-list span{display:flex;gap:10px;align-items:center;color:#eaffff;font-weight:800;}
.home-contact-list strong{color:var(--turquoise);}
.home-contact-form form{display:grid;gap:12px;}
.home-contact-form textarea{min-height:120px;}
.home-map-frame{width:100%;height:280px;border:0;border-radius:20px;filter:saturate(.85) contrast(1.05);}
.builder-card p{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;}
.client-reviews-section .section-head p{max-width:760px;}
@media(max-width:1180px){.offers-grid,.main-categories-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}.home-contact-grid{grid-template-columns:1fr!important;}}
@media(max-width:760px){.offers-grid,.main-categories-grid{grid-template-columns:1fr!important;}.main-category-card{text-align:left!important;align-items:flex-start!important;}.main-category-card img{width:92px!important;height:92px!important;margin:0 0 6px!important;}.services-mega .mega-col a{grid-template-columns:38px 1fr!important}.services-mega .mega-col a img{width:38px!important;height:38px!important}.offer-body{min-height:0;}.home-map-frame{height:240px;}}


/* V43 Ajustes Keduin: íconos, footer legal, producto y nosotros */
.services-mega .mega-col a{display:grid!important;grid-template-columns:44px 1fr!important;align-items:center!important;gap:12px!important;min-height:52px!important}
.services-mega .mega-col a img{width:42px!important;height:42px!important;object-fit:contain!important;filter:drop-shadow(0 0 10px rgba(24,213,208,.25))!important}
.main-category-card img{width:148px!important;height:148px!important;object-fit:contain!important;filter:drop-shadow(0 0 24px rgba(24,213,208,.34))!important}
.main-category-card{min-height:310px!important}
.catalog-card-media{background:#020607!important}
.catalog-card-media img{object-fit:cover!important}
.catalog-card-actions{display:flex!important;gap:10px!important;flex-wrap:wrap!important;align-items:center!important}
.catalog-card-actions .btn{padding:10px 14px!important;font-size:.83rem!important;line-height:1.15!important;min-height:40px!important}
.footer-legal-hub{display:block!important;margin-top:28px!important;padding:0!important;background:transparent!important;border:0!important}
.footer-legal-accordion{border:1px solid rgba(24,213,208,.22);border-radius:18px;background:rgba(255,255,255,.035);padding:0;overflow:hidden}
.footer-legal-accordion summary{cursor:pointer;list-style:none;padding:16px 18px;font-weight:950;color:#fff;display:flex;align-items:center;justify-content:space-between}
.footer-legal-accordion summary::-webkit-details-marker{display:none}
.footer-legal-accordion summary::after{content:'+';color:var(--turquoise);font-size:1.4rem;line-height:1}
.footer-legal-accordion[open] summary::after{content:'−'}
.footer-legal-menu{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0 18px 18px}
.footer-legal-menu section{border-top:1px solid rgba(255,255,255,.08);padding-top:14px}
.footer-legal-menu a,.footer-legal-main{display:block;color:#c7d7d7;padding:6px 0;font-size:.9rem}
.footer-legal-main{padding:0 18px 18px!important;color:var(--turquoise)!important;font-weight:900}
.team-card img,.info-card img,.feature-list article img,.stats-icon{width:112px!important;height:112px!important;object-fit:contain!important;filter:drop-shadow(0 0 20px rgba(24,213,208,.24))!important}
.timeline-card span{color:var(--turquoise)!important;background:rgba(24,213,208,.12)!important;border:1px solid rgba(24,213,208,.24);border-radius:999px;padding:8px 12px}
.team-work-photo{margin:0 0 24px;border:1px solid rgba(24,213,208,.18);border-radius:28px;overflow:hidden;background:#071011;box-shadow:var(--shadow)}
.team-work-photo img{width:100%;aspect-ratio:16/9;object-fit:cover}
.team-work-photo figcaption{padding:12px 16px;color:var(--muted);font-size:.92rem;background:rgba(0,0,0,.35)}
.search-suggestions{position:absolute;z-index:30;left:0;right:0;top:100%;background:rgba(5,12,14,.98);border:1px solid rgba(24,213,208,.25);border-radius:0 0 16px 16px;box-shadow:0 20px 50px rgba(0,0,0,.42);overflow:hidden;display:none}
.search-suggestions.is-open{display:block}.search-suggestions a{display:block;padding:10px 12px;color:#eaffff;border-bottom:1px solid rgba(255,255,255,.06);font-weight:800}.search-suggestions a small{display:block;color:var(--muted);font-weight:600}.catalog-search{position:relative}
@media(max-width:760px){.main-category-card img{width:96px!important;height:96px!important}.footer-legal-menu{grid-template-columns:1fr}.services-mega .mega-col a{grid-template-columns:38px 1fr!important}.services-mega .mega-col a img{width:36px!important;height:36px!important}.team-card img,.info-card img,.feature-list article img,.stats-icon{width:84px!important;height:84px!important}}


/* V44 ajustes menú servicios, legal y nosotros */
.services-mega .mega-col h4{display:flex;align-items:center;gap:10px}
.services-mega .mega-col h4 img{width:34px;height:34px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(24,213,208,.2))}
.services-mega .mega-col .menu-category-link{display:grid!important;grid-template-columns:46px 1fr!important;gap:12px!important;align-items:center!important;padding-bottom:10px;border-bottom:1px solid rgba(24,213,208,.12);margin-bottom:10px}
.services-mega .mega-col .menu-category-link img{width:42px!important;height:42px!important;object-fit:contain!important;filter:drop-shadow(0 0 10px rgba(24,213,208,.25))!important}
.services-mega .mega-col .text-only-link{display:block!important;padding:8px 0 8px 2px!important;min-height:0!important;color:#dce8e8!important;grid-template-columns:none!important}
.services-mega .mega-col .text-only-link:hover{color:#fff!important;padding-left:8px!important}
.about-mega .mega-col a{display:block!important;padding:8px 0!important}
.about-mega .mega-col h4{display:flex;align-items:center;gap:10px;color:var(--turquoise)}
.about-mega .mega-col h4 img{width:34px;height:34px;object-fit:contain}

.footer-legal-hub{display:block!important;margin-top:28px!important;padding:0!important;background:transparent!important;border:0!important}
.footer-legal-accordion{border:1px solid rgba(24,213,208,.22);border-radius:18px;background:rgba(255,255,255,.035);padding:0;overflow:hidden}
.footer-legal-accordion summary{cursor:pointer;list-style:none}
.footer-legal-accordion>summary{padding:16px 18px;font-weight:950;color:#fff;display:flex;align-items:center;justify-content:space-between}
.footer-legal-accordion>summary::-webkit-details-marker,.footer-legal-group>summary::-webkit-details-marker{display:none}
.footer-legal-accordion>summary::after{content:'+';color:var(--turquoise);font-size:1.4rem;line-height:1}
.footer-legal-accordion[open]>summary::after{content:'−'}
.footer-legal-compact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 18px 18px}
.footer-legal-group{border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.02);overflow:hidden}
.footer-legal-group>summary{padding:12px 14px;font-weight:800;color:#fff;display:flex;align-items:center;justify-content:space-between}
.footer-legal-group>summary::after{content:'+';color:var(--turquoise);font-size:1.1rem}
.footer-legal-group[open]>summary::after{content:'−'}
.footer-legal-links{padding:0 14px 12px}
.footer-legal-links a{display:block;color:#c7d7d7;padding:6px 0;font-size:.9rem}
.footer-legal-main{display:block;padding:0 18px 18px!important;color:var(--turquoise)!important;font-weight:900}

.about-anchor-nav .container{display:flex;align-items:center;gap:10px;flex-wrap:nowrap;overflow-x:auto;padding-bottom:8px}
.about-anchor-title{display:inline-flex;align-items:center;gap:10px;white-space:nowrap;position:sticky;left:0;background:rgba(3,10,14,.95);padding-right:8px;z-index:2}
.about-anchor-title img{width:28px;height:28px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(24,213,208,.25))}
.about-anchor-nav a{white-space:nowrap}
.about-side-nav-wrap{display:none}
@media(min-width:1181px){
  .about-side-nav-wrap{display:block}
  .about-side-nav{position:fixed;left:18px;top:150px;z-index:25;width:240px;max-height:calc(100vh - 180px);overflow:auto;padding:18px;border:1px solid rgba(24,213,208,.18);border-radius:20px;background:rgba(4,10,14,.88);backdrop-filter:blur(10px);box-shadow:0 12px 30px rgba(0,0,0,.25)}
  .about-side-head{display:flex;align-items:center;gap:12px;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.08)}
  .about-side-head img{width:42px;height:42px;object-fit:contain}
  .about-side-head span{display:block;color:var(--muted);font-size:.8rem;margin-top:2px}
  .about-side-nav a{display:block;padding:10px 12px;border-radius:12px;color:#dce8e8}
  .about-side-nav a:hover{background:rgba(24,213,208,.1);color:#fff;padding-left:16px}
}
@media(max-width:980px){.footer-legal-compact{grid-template-columns:1fr}}
@media(max-width:760px){.services-mega .mega-col .menu-category-link{grid-template-columns:38px 1fr!important}.services-mega .mega-col .menu-category-link img{width:34px!important;height:34px!important}.about-anchor-title{position:static}.footer-legal-compact{grid-template-columns:1fr}}


/* V46 ajuste en progreso: eliminar menú horizontal de Nosotros y hacer menú flotante responsive */
.about-anchor-nav{display:none!important}
.about-side-nav-wrap{display:block!important}
@media(max-width:1180px){
  .about-side-nav-wrap{
    display:block!important;
    position:sticky!important;
    top:72px!important;
    z-index:28!important;
    background:linear-gradient(180deg,rgba(2,8,10,.96),rgba(2,8,10,.78))!important;
    border-bottom:1px solid rgba(24,213,208,.16)!important;
    padding:8px 0!important;
    backdrop-filter:blur(10px)!important;
  }
  .about-side-nav-wrap .container{padding-inline:12px!important}
  .about-side-nav{
    position:relative!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    max-height:none!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    padding:10px!important;
    border:1px solid rgba(24,213,208,.18)!important;
    border-radius:18px!important;
    background:rgba(4,10,14,.92)!important;
    box-shadow:0 10px 24px rgba(0,0,0,.22)!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .about-side-head{
    flex:0 0 auto!important;
    display:flex!important;
    align-items:center!important;
    gap:8px!important;
    margin:0 6px 0 0!important;
    padding:0 12px 0 0!important;
    border-bottom:0!important;
    border-right:1px solid rgba(255,255,255,.1)!important;
  }
  .about-side-head img{width:32px!important;height:32px!important}
  .about-side-head strong{font-size:.82rem!important;white-space:nowrap!important}
  .about-side-head span{display:none!important}
  .about-side-nav a{
    flex:0 0 auto!important;
    white-space:nowrap!important;
    padding:9px 12px!important;
    border:1px solid rgba(24,213,208,.18)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.035)!important;
    color:#eaffff!important;
    font-size:.82rem!important;
    line-height:1!important;
  }
}
@media(max-width:560px){
  .about-side-nav-wrap{top:64px!important}
  .about-side-nav{border-radius:14px!important;padding:8px!important}
  .about-side-head strong{display:none!important}
  .about-side-head{padding-right:8px!important}
  .about-side-head img{width:28px!important;height:28px!important}
  .about-side-nav a{font-size:.78rem!important;padding:8px 10px!important}
}

/* V46 en progreso: icono Servicios Mensuales y referencias K402/K406 */
.services-mega .mega-col h4 img[src*="planes-mensuales"]{width:34px!important;height:34px!important;object-fit:contain!important;filter:drop-shadow(0 0 12px rgba(24,213,208,.25))!important}


/* V46 responsive header, menú sólido y carro desplegable */
:root{--header-height-v46:96px;}
.site-header{position:sticky!important;top:0!important;z-index:250!important;background:rgba(1,8,10,.985)!important;border-bottom:1px solid rgba(24,213,208,.26)!important;box-shadow:0 14px 38px rgba(0,0,0,.38)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;}
.navbar{height:var(--header-height-v46)!important;min-height:var(--header-height-v46)!important;}
.brand-logo{width:82px!important;height:82px!important;filter:drop-shadow(0 0 20px rgba(24,213,208,.22))!important;}
.mega-panel{top:var(--header-height-v46)!important;background:rgba(2,10,12,.995)!important;border-color:rgba(24,213,208,.32)!important;box-shadow:0 30px 90px rgba(0,0,0,.72)!important;}
.nav-menu{background:rgba(2,10,12,.985)!important;}
.nav-cart-link{cursor:pointer!important;}
.cart-drawer-backdrop{position:fixed;inset:0;z-index:360;background:rgba(0,0,0,.56);backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;transition:.2s ease;}
.cart-drawer{position:fixed;right:18px;top:calc(var(--header-height-v46) + 14px);z-index:370;width:min(430px,calc(100vw - 28px));max-height:calc(100vh - var(--header-height-v46) - 32px);display:flex;flex-direction:column;border:1px solid rgba(24,213,208,.32);border-radius:24px;background:rgba(3,12,14,.995);box-shadow:0 34px 100px rgba(0,0,0,.7);transform:translateY(-10px) scale(.98);opacity:0;visibility:hidden;pointer-events:none;overflow:hidden;transition:.2s ease;}
body.cart-drawer-open .cart-drawer,body.cart-drawer-open .cart-drawer-backdrop{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0) scale(1);}
.cart-drawer-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(24,213,208,.12),rgba(255,255,255,.03));}
.cart-drawer-title{display:flex;align-items:center;gap:10px;font-weight:950;color:#fff;}
.cart-drawer-title .cart-icon{width:28px;height:28px;color:var(--turquoise);}
.cart-drawer-title .cart-icon svg{width:28px;height:28px;display:block;}
.cart-drawer-close{width:38px;height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#fff;font-size:1.4rem;line-height:1;cursor:pointer;display:grid;place-items:center;}
.cart-drawer-body{padding:14px 16px;overflow:auto;display:grid;gap:12px;}
.cart-drawer-empty{padding:14px;border:1px dashed rgba(24,213,208,.25);border-radius:16px;color:#cfe7e7;background:rgba(24,213,208,.045);}
.cart-drawer-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px;border:1px solid rgba(24,213,208,.16);border-radius:16px;background:rgba(255,255,255,.035);}
.cart-drawer-item img,.cart-drawer-thumb{width:54px;height:54px;border-radius:12px;object-fit:cover;background:rgba(24,213,208,.08);display:grid;place-items:center;color:var(--turquoise);font-weight:950;}
.cart-drawer-item strong{display:block;color:#fff;font-size:.9rem;line-height:1.22;}
.cart-drawer-item small{display:block;color:#9fd7d6;font-size:.74rem;margin-top:3px;line-height:1.3;}
.cart-drawer-remove{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);color:#fff;cursor:pointer;font-size:1.1rem;}
.cart-drawer-summary{padding:12px 16px;border-top:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);display:grid;gap:7px;color:#dfffff;font-size:.86rem;}
.cart-drawer-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:14px 16px 16px;border-top:1px solid rgba(255,255,255,.08);}
.cart-drawer-actions .btn{min-height:42px;padding:10px 12px;font-size:.82rem;}
.cart-drawer-config{color:#f7ffb8!important;}
.about-anchor-nav{display:none!important;}
@media(max-width:1180px){
  :root{--header-height-v46:86px;}
  .site-header .navbar{position:relative!important;justify-content:space-between!important;}
  .site-header .brand{position:static!important;transform:none!important;left:auto!important;margin:0!important;}
  .brand-logo{width:72px!important;height:72px!important;}
  .nav-toggle{margin-left:auto!important;background:rgba(255,255,255,.08)!important;border-color:rgba(24,213,208,.32)!important;}
  .nav-menu{position:fixed!important;top:calc(var(--header-height-v46) + 10px)!important;left:12px!important;right:12px!important;width:auto!important;max-height:calc(100vh - var(--header-height-v46) - 24px)!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:9px!important;overflow:auto!important;background:rgba(2,10,12,.995)!important;border:1px solid rgba(24,213,208,.34)!important;border-radius:22px!important;padding:14px!important;box-shadow:0 28px 80px rgba(0,0,0,.72)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;}
  .nav-menu.is-open{display:flex!important;}
  .nav-link,.nav-trigger,.nav-quote,.nav-cart-link{width:100%!important;min-height:48px!important;justify-content:space-between!important;border-radius:16px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(24,213,208,.16)!important;}
  .nav-quote{justify-content:center!important;background:var(--turquoise)!important;color:#001314!important;}
  .nav-group{width:100%!important;position:relative!important;}
  .mega-panel,.mega-panel.compact{position:static!important;top:auto!important;left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;display:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;margin:8px 0 0!important;border-radius:18px!important;padding:12px!important;background:rgba(0,18,20,.98)!important;box-shadow:none!important;}
  .nav-group.is-active .mega-panel{display:block!important;}
  .mega-grid.three-cols,.mega-grid.two-cols{grid-template-columns:1fr!important;gap:10px!important;}
  .mega-col{padding:8px!important;border:1px solid rgba(255,255,255,.06);border-radius:14px;background:rgba(255,255,255,.025);}
  .services-mega .mega-col .menu-category-link{grid-template-columns:40px 1fr!important;}
  .services-mega .mega-col .menu-category-link img{width:38px!important;height:38px!important;}
  .cart-drawer{right:12px;left:12px;width:auto;top:calc(var(--header-height-v46) + 10px);max-height:calc(100vh - var(--header-height-v46) - 22px);border-radius:20px;}
  .cart-drawer-actions{grid-template-columns:1fr;}
  .about-side-nav-wrap{display:block!important;position:sticky!important;top:var(--header-height-v46)!important;z-index:60!important;background:linear-gradient(180deg,rgba(2,8,10,.96),rgba(2,8,10,.78))!important;border-bottom:1px solid rgba(24,213,208,.16)!important;padding:8px 0!important;backdrop-filter:blur(10px)!important;}
  .about-side-nav-wrap .container{padding-inline:12px!important;}
  .about-side-nav{position:relative!important;left:auto!important;top:auto!important;width:100%!important;max-height:none!important;overflow-x:auto!important;overflow-y:hidden!important;display:flex!important;align-items:center!important;gap:8px!important;padding:10px!important;border:1px solid rgba(24,213,208,.18)!important;border-radius:18px!important;background:rgba(4,10,14,.92)!important;box-shadow:0 10px 24px rgba(0,0,0,.22)!important;-webkit-overflow-scrolling:touch!important;}
  .about-side-head{flex:0 0 auto!important;display:flex!important;align-items:center!important;gap:8px!important;margin:0 6px 0 0!important;padding:0 12px 0 0!important;border-bottom:0!important;border-right:1px solid rgba(255,255,255,.1)!important;}
  .about-side-head img{width:32px!important;height:32px!important;}
  .about-side-head strong{font-size:.82rem!important;white-space:nowrap!important;}
  .about-side-head span{display:none!important;}
  .about-side-nav a{flex:0 0 auto!important;white-space:nowrap!important;padding:9px 12px!important;border:1px solid rgba(24,213,208,.18)!important;border-radius:999px!important;background:rgba(255,255,255,.035)!important;color:#eaffff!important;font-size:.82rem!important;line-height:1!important;}
}
@media(max-width:560px){
  :root{--header-height-v46:78px;}
  .brand-logo{width:64px!important;height:64px!important;}
  .navbar{height:var(--header-height-v46)!important;min-height:var(--header-height-v46)!important;}
  .cart-drawer-item{grid-template-columns:46px minmax(0,1fr) auto;}
  .cart-drawer-item img,.cart-drawer-thumb{width:46px;height:46px;}
  .about-side-head strong{display:none!important;}
  .about-side-head{padding-right:8px!important;}
  .about-side-head img{width:28px!important;height:28px!important;}
  .about-side-nav a{font-size:.78rem!important;padding:8px 10px!important;}
}

/* V47: eliminar placeholders FOTO K visibles */
.dynamic-fallback-image{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.hero-media img,.catalog-card-media img,.product-hero-image img,.category-hero-image img{max-width:100%;display:block}


/* V48 menú rápido Nosotros tipo desplegable + icono misión + ofertas WordPress */
.about-anchor-nav{display:none!important;}
.about-side-nav-wrap{display:block!important;position:sticky!important;top:var(--header-height-v46,96px)!important;z-index:70!important;padding:10px 0!important;background:linear-gradient(180deg,rgba(2,8,10,.96),rgba(2,8,10,.78))!important;border-bottom:1px solid rgba(24,213,208,.14)!important;backdrop-filter:blur(12px)!important;}
.about-quicknav{border:1px solid rgba(24,213,208,.18)!important;border-radius:18px!important;background:rgba(4,10,14,.92)!important;box-shadow:0 10px 24px rgba(0,0,0,.22)!important;overflow:hidden!important;}
.about-quicknav[open]{border-color:rgba(24,213,208,.28)!important;box-shadow:0 18px 38px rgba(0,0,0,.32)!important;}
.about-quicknav-trigger{list-style:none!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:12px 14px!important;cursor:pointer!important;}
.about-quicknav-trigger::-webkit-details-marker{display:none!important;}
.about-quicknav .about-side-head{display:flex!important;align-items:center!important;gap:12px!important;margin:0!important;padding:0!important;border:0!important;}
.about-quicknav .about-side-head img{width:34px!important;height:34px!important;object-fit:contain!important;filter:drop-shadow(0 0 10px rgba(24,213,208,.24))!important;}
.about-side-head-copy{display:flex!important;flex-direction:column!important;gap:2px!important;}
.about-side-head-copy strong{font-size:.92rem!important;line-height:1.1!important;color:#fff!important;}
.about-side-head-copy span{font-size:.76rem!important;line-height:1.1!important;color:var(--muted)!important;}
.about-quicknav-chevron{flex:0 0 auto!important;width:34px!important;height:34px!important;border-radius:999px!important;display:grid!important;place-items:center!important;border:1px solid rgba(24,213,208,.18)!important;background:rgba(255,255,255,.04)!important;color:var(--turquoise)!important;font-size:1.15rem!important;transition:transform .2s ease!important;}
.about-quicknav[open] .about-quicknav-chevron{transform:rotate(180deg)!important;}
.about-quicknav-panel{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px!important;padding:0 14px 14px!important;border-top:1px solid rgba(255,255,255,.06)!important;}
.about-quicknav-panel a{display:flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;padding:10px 12px!important;border-radius:999px!important;border:1px solid rgba(24,213,208,.18)!important;background:rgba(255,255,255,.035)!important;color:#eaffff!important;text-align:center!important;font-size:.84rem!important;line-height:1.15!important;white-space:normal!important;}
.about-quicknav-panel a:hover{background:rgba(24,213,208,.10)!important;color:#fff!important;transform:none!important;padding:10px 12px!important;}
@media(max-width:1180px){
  .about-side-nav-wrap{top:var(--header-height-v46)!important;padding:8px 0!important;}
  .about-quicknav-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
  .about-quicknav-trigger{padding:10px 12px!important;}
  .about-quicknav .about-side-head img{width:30px!important;height:30px!important;}
  .about-side-head-copy strong{font-size:.86rem!important;}
  .about-side-head-copy span{font-size:.72rem!important;}
  .about-quicknav-panel{grid-template-columns:1fr!important;padding:0 12px 12px!important;gap:8px!important;}
  .about-quicknav-panel a{justify-content:flex-start!important;text-align:left!important;min-height:40px!important;font-size:.8rem!important;}
}


/* V48 fondos editoriales Keduin.com */
:root{
  --fondo-home:url('/assets/images/fondos-editoriales/01_fondos_principales/01_fondo-home-hero-keduin.png');
  --fondo-servicios-principales:url('/assets/images/fondos-editoriales/01_fondos_principales/02_fondo-servicios-principales-keduin.png');
  --fondo-tienda:url('/assets/images/fondos-editoriales/01_fondos_principales/03_fondo-tienda-servicios-keduin.png');
  --fondo-paginas-web:url('/assets/images/fondos-editoriales/01_fondos_principales/04_fondo-paginas-web-keduin.png');
  --fondo-campanas:url('/assets/images/fondos-editoriales/01_fondos_principales/05_fondo-campanas-digitales-keduin.png');
  --fondo-produccion:url('/assets/images/fondos-editoriales/01_fondos_principales/06_fondo-produccion-audiovisual-keduin.png');
  --fondo-programacion:url('/assets/images/fondos-editoriales/01_fondos_principales/07_fondo-programacion-sistemas-keduin.png');
  --fondo-infra:url('/assets/images/fondos-editoriales/01_fondos_principales/08_fondo-dominios-correos-hospedaje-keduin.png');
  --fondo-nosotros:url('/assets/images/fondos-editoriales/01_fondos_principales/09_fondo-nosotros-equipo-keduin.png');
  --fondo-revision:url('/assets/images/fondos-editoriales/01_fondos_principales/10_fondo-revision-accesos-keduin.png');
  --fondo-soporte:url('/assets/images/fondos-editoriales/01_fondos_principales/11_fondo-soporte-postventa-keduin.png');
  --fondo-marca:url('/assets/images/fondos-editoriales/01_fondos_principales/12_fondo-marca-digital-keduin.png');
  --fondo-extra-general:url('/assets/images/fondos-editoriales/02_fondos_adicionales/extra_01_fondo-digital-futurista-abstracto.png');
}
body{
  background-image:
    linear-gradient(180deg,rgba(1,7,9,.82),rgba(1,1,1,.92) 58%,rgba(1,1,1,.98)),
    var(--fondo-extra-general)!important;
  background-size:cover!important;
  background-position:center top!important;
}
.home-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.94),rgba(1,5,7,.70) 46%,rgba(1,5,7,.90)),
    var(--fondo-home)!important;
}
.home-main-categories,
.home-main-categories .service-card{
  position:relative;
}
.home-main-categories{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.76) 45%,rgba(1,5,7,.92)),
    var(--fondo-servicios-principales)!important;
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center;
}
.offers-section{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.80) 46%,rgba(1,5,7,.92)),
    var(--fondo-marca)!important;
}
.tienda-page .page-hero,
.tienda-page #catalogo-servicios,
.tienda-page .catalog-sidebar,
.tienda-page .service-cart{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.80) 46%,rgba(1,5,7,.92)),
    var(--fondo-tienda)!important;
}
.paginas-web-page .page-hero,
.paginas-web-page .section:first-of-type{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.76) 46%,rgba(1,5,7,.90)),
    var(--fondo-paginas-web)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.marketing-page .page-hero,
.marketing-page .section:first-of-type{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.76) 46%,rgba(1,5,7,.90)),
    var(--fondo-campanas)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.produccion-page .page-hero,
.produccion-page .section:first-of-type{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.76) 46%,rgba(1,5,7,.90)),
    var(--fondo-produccion)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.infra-page .page-hero,
.planes-page .page-hero,
.planes-page .service-catalog-grid{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.78) 46%,rgba(1,5,7,.90)),
    var(--fondo-infra)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.nosotros-page .about-hero,
.nosotros-page .about-side-nav-wrap,
.nosotros-page .section:first-of-type{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.78) 46%,rgba(1,5,7,.90)),
    var(--fondo-nosotros)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.diagnostico-page .page-hero,
.cotizar-page .page-hero,
.cart-page .page-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.76) 46%,rgba(1,5,7,.90)),
    var(--fondo-revision)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.faq-page .page-hero,
.contact-page .page-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.80) 46%,rgba(1,5,7,.92)),
    var(--fondo-soporte)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.portfolio-page .page-hero,
.brand-page .page-hero,
.brand-page .section:first-of-type{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.95),rgba(1,5,7,.80) 46%,rgba(1,5,7,.92)),
    var(--fondo-marca)!important;
  background-repeat:no-repeat;background-size:cover;background-position:center;
}
.faq-cta-card{
  display:grid;
  grid-template-columns:1.4fr .9fr;
  gap:18px;
  align-items:center;
  margin:18px 0 0;
  padding:22px;
  border:1px solid rgba(24,213,208,.18);
  border-radius:24px;
  background:linear-gradient(135deg,rgba(7,18,22,.92),rgba(3,11,14,.88));
  box-shadow:0 14px 34px rgba(0,0,0,.24);
}
.faq-cta-card h3{margin:0 0 8px;font-size:clamp(1.15rem,2vw,1.5rem)}
.faq-cta-card p{margin:0;color:var(--muted)}
.faq-cta-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}
@media(max-width:860px){
  .faq-cta-card{grid-template-columns:1fr;}
  .faq-cta-actions{justify-content:flex-start}
}
@media(max-width:760px){
  body,
  .home-hero,
  .home-main-categories,
  .offers-section,
  .tienda-page .page-hero,
  .tienda-page #catalogo-servicios,
  .paginas-web-page .page-hero,
  .marketing-page .page-hero,
  .produccion-page .page-hero,
  .infra-page .page-hero,
  .planes-page .page-hero,
  .nosotros-page .about-hero,
  .diagnostico-page .page-hero,
  .faq-page .page-hero,
  .contact-page .page-hero,
  .portfolio-page .page-hero,
  .brand-page .page-hero,
  .cotizar-page .page-hero,
  .cart-page .page-hero{
    background-position:center top!important;
    background-attachment:scroll!important;
  }
}


/* V49 legal visible, sin etiquetas sobre fotos, selección más estética */
.footer-legal-hub{margin-top:28px!important;}
.footer-legal-panel{display:grid;grid-template-columns:minmax(280px,.95fr) minmax(0,2.05fr);gap:22px;padding:24px;border:1px solid rgba(24,213,208,.2);border-radius:24px;background:linear-gradient(135deg,rgba(4,14,18,.96),rgba(3,8,10,.92));box-shadow:0 20px 60px rgba(0,0,0,.24)}
.footer-legal-brand{display:grid;grid-template-columns:76px 1fr;gap:16px;align-items:flex-start;padding-right:8px}
.footer-legal-brand img{width:76px;height:76px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(24,213,208,.24))}
.footer-legal-kicker{margin:2px 0 10px;color:var(--turquoise);font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;font-weight:950}
.footer-legal-text{margin:0 0 14px;color:var(--muted);line-height:1.65}
.footer-legal-compact{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:0!important}
.footer-legal-column{border-left:1px solid rgba(255,255,255,.07);padding-left:16px}
.footer-legal-column:first-child{border-left:0;padding-left:0}
.footer-legal-column h3{margin:0 0 10px;font-size:.98rem;color:#fff}
.footer-legal-column a{display:block;color:#c7d7d7;padding:6px 0;font-size:.88rem;line-height:1.45}
.footer-legal-column a:hover,.footer-legal-main:hover{color:var(--turquoise)}
.footer-legal-main{display:inline-flex;align-items:center;gap:8px;padding:0!important;color:var(--turquoise)!important;font-weight:900}
@media(max-width:1100px){.footer-legal-panel{grid-template-columns:1fr}.footer-legal-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-legal-column{border-left:0;padding-left:0}}
@media(max-width:640px){.footer-legal-brand{grid-template-columns:64px 1fr}.footer-legal-brand img{width:64px;height:64px}.footer-legal-compact{grid-template-columns:1fr}}

/* Sin etiquetas sobre imágenes */
.hero-media figcaption,.about-hero-media figcaption,.gallery-preview-grid figcaption,.team-work-photo figcaption,.product-detail-page .hero-media.product-hero-image figcaption,.category-hero-image figcaption{display:none!important}

/* Mejoras visuales para selección en cotización */
.quote-check-grid{gap:14px 16px!important}
.quote-check-grid label{position:relative;display:block!important;padding:16px 50px 16px 16px!important;border:1px solid rgba(255,255,255,.08)!important;border-radius:18px!important;background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(24,213,208,.03))!important;color:#f2ffff!important;line-height:1.45!important;cursor:pointer;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease,background .2s ease}
.quote-check-grid label:hover{transform:translateY(-2px);border-color:rgba(24,213,208,.32)!important;box-shadow:0 14px 26px rgba(0,0,0,.16)}
.quote-check-grid label input{position:absolute;top:16px;right:16px;width:20px!important;height:20px!important;margin:0!important;appearance:none;-webkit-appearance:none;border:1px solid rgba(24,213,208,.4)!important;border-radius:6px!important;background:rgba(3,11,14,.96)!important;box-shadow:none!important;cursor:pointer}
.quote-check-grid label input:checked{background-color:#18d5d0!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23001314' d='M6.4 11.6 2.7 8l1.4-1.4 2.3 2.3 5.5-5.5L13.3 5z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:12px 12px!important;border-color:#18d5d0!important}
.quote-check-grid label:has(input:checked){border-color:rgba(24,213,208,.45)!important;background:linear-gradient(135deg,rgba(24,213,208,.11),rgba(255,255,255,.03))!important;box-shadow:0 14px 34px rgba(24,213,208,.08)}
.quote-form select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='%23bffafa' d='M5.2 7.5 10 12.3l4.8-4.8 1.4 1.4-6.2 6.2L3.8 8.9z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:14px 14px!important;padding-right:42px!important;border-radius:14px!important}
.quote-form select::-ms-expand{display:none}

/* Tarjetas y botones del diagnóstico sin globos */
.diag-rec-select{display:flex!important;justify-content:flex-end!important;align-items:center!important;gap:10px!important;margin:0 0 12px!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;color:#eaffff!important;font-size:.78rem!important;font-weight:850!important}
.diag-rec-select input{width:20px!important;height:20px!important;appearance:none;-webkit-appearance:none;border:1px solid rgba(0,224,230,.38)!important;border-radius:6px!important;background:#051118!important;cursor:pointer}
.diag-rec-select input:checked{background-color:#00e0e6!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23001314' d='M6.4 11.6 2.7 8l1.4-1.4 2.3 2.3 5.5-5.5L13.3 5z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:12px 12px!important;border-color:#00e0e6!important}
.diag-result-card{padding:18px 18px 20px!important;border:1px solid rgba(0,224,220,.16)!important;border-radius:18px!important;background:linear-gradient(135deg,rgba(4,11,18,.88),rgba(2,8,12,.92))!important;box-shadow:0 18px 40px rgba(0,0,0,.18)}
.diag-service-meta span{border-radius:10px!important;background:rgba(255,255,255,.04)!important;color:#cffefe!important}

/* V50 - encabezado principal fijo durante todo el desplazamiento */
:root{--header-offset-v50:var(--header-height-v46,96px)}
html{scroll-padding-top:calc(var(--header-offset-v50) + 14px)}
body{padding-top:var(--header-offset-v50)!important}
.site-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:1000!important;
  transform:translateZ(0)!important;
  backface-visibility:hidden!important;
  -webkit-backface-visibility:hidden!important;
}
.site-header .navbar{
  width:min(100% - 40px,var(--container))!important;
  margin-inline:auto!important;
}
@media(max-width:1180px){
  body{padding-top:var(--header-offset-v50)!important}
  .site-header .navbar{width:min(100% - 24px,var(--container))!important}
  .nav-menu{z-index:1001!important}
  .mega-panel{z-index:1002!important}
}
@media(max-width:560px){
  body{padding-top:var(--header-offset-v50)!important}
  .site-header .navbar{width:calc(100% - 20px)!important}
}


/* V51 Nosotros: menú tradicional estático y nuevo ícono de Misión */
.nosotros-page .about-side-nav-wrap,
.nosotros-page .about-quicknav{
  display:none!important;
}
.about-content-layout{
  display:grid;
  grid-template-columns:230px minmax(0,1fr);
  gap:28px;
  align-items:start;
  padding-top:28px;
}
.about-static-nav{
  position:sticky;
  top:calc(var(--header-height-v46,96px) + 18px);
  z-index:20;
  padding:18px;
  border:1px solid rgba(24,213,208,.2);
  border-radius:20px;
  background:rgba(4,12,14,.94);
  box-shadow:0 16px 42px rgba(0,0,0,.24);
  backdrop-filter:blur(12px);
}
.about-static-nav-head{
  display:flex;
  align-items:center;
  gap:12px;
  padding-bottom:14px;
  margin-bottom:10px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.about-static-nav-head img{
  width:38px;
  height:38px;
  object-fit:contain;
  filter:drop-shadow(0 0 10px rgba(24,213,208,.22));
}
.about-static-nav-head strong{
  display:block;
  color:#fff;
  font-size:.94rem;
}
.about-static-nav-head span{
  display:block;
  margin-top:2px;
  color:var(--muted);
  font-size:.76rem;
}
.about-static-nav nav{
  display:grid;
  gap:2px;
}
.about-static-nav a{
  display:block;
  padding:10px 8px;
  border-bottom:1px solid rgba(255,255,255,.045);
  color:#d9e8e8;
  font-size:.86rem;
  font-weight:760;
  line-height:1.25;
}
.about-static-nav a:last-child{border-bottom:0}
.about-static-nav a:hover,
.about-static-nav a:focus{
  color:var(--turquoise);
  padding-left:12px;
}
.about-content-main{
  min-width:0;
}
.about-content-main>.section{
  padding-top:62px;
  padding-bottom:62px;
}
.about-content-main>.section:first-child{
  padding-top:0;
}
.about-content-main .container{
  width:100%;
  max-width:none;
}
#mission-vision-values .info-card img,
#mision-vision-valores .info-card img{
  width:112px!important;
  height:112px!important;
  object-fit:contain!important;
}
@media(max-width:980px){
  .about-content-layout{
    grid-template-columns:1fr;
    gap:18px;
    padding-top:18px;
  }
  .about-static-nav{
    position:static;
    top:auto;
  }
  .about-static-nav nav{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:6px 14px;
  }
  .about-static-nav a{
    padding:10px 6px;
  }
}
@media(max-width:560px){
  .about-static-nav nav{
    grid-template-columns:1fr;
  }
  .about-content-main>.section{
    padding-top:48px;
    padding-bottom:48px;
  }
}

/* V52 - logo centrado en el menú móvil */
@media (max-width: 980px){
  .site-header .navbar{
    position:relative!important;
    justify-content:center!important;
  }
  .site-header .brand{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    margin:0!important;
    z-index:4!important;
  }
  .site-header .nav-toggle{
    position:relative!important;
    margin-left:auto!important;
    z-index:5!important;
  }
  .site-header .brand-logo{
    display:block!important;
    margin:0 auto!important;
  }
}
@media (max-width: 560px){
  .site-header .brand-logo{
    width:64px!important;
    height:64px!important;
  }
}

/* ======================================================================
   V54 — LIQUID GLASS REFINADO SOBRE BASE V53 CORRECTA
   Menú circular, contraste alto, sin luces dinámicas ligadas al cursor.
   ====================================================================== */
:root{
  --v54-header-space:104px;
  --v54-glass-bg:rgba(8,15,18,.91);
  --v54-glass-bg-strong:rgba(5,12,15,.975);
  --v54-glass-border:rgba(142,247,243,.22);
  --v54-glass-highlight:rgba(255,255,255,.11);
  --v54-glass-shadow:0 22px 58px rgba(0,0,0,.42);
}
html{scroll-padding-top:calc(var(--v54-header-space) + 18px)!important}
body{padding-top:var(--v54-header-space)!important}

/* El vidrio está concentrado en una cápsula real, no en una franja negra. */
.site-header{
  position:fixed!important;
  inset:0 0 auto 0!important;
  width:100%!important;
  z-index:1200!important;
  padding:12px 0 0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  pointer-events:none!important;
}
.site-header .navbar{
  pointer-events:auto!important;
  width:min(calc(100% - 28px),1480px)!important;
  height:76px!important;
  min-height:76px!important;
  margin-inline:auto!important;
  padding:6px 10px 6px 14px!important;
  gap:8px!important;
  border:1px solid var(--v54-glass-border)!important;
  border-radius:999px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.012) 43%),
    linear-gradient(135deg,rgba(14,25,29,.94),rgba(4,10,13,.94))!important;
  box-shadow:
    inset 0 1px 0 var(--v54-glass-highlight),
    inset 0 -1px 0 rgba(24,213,208,.08),
    var(--v54-glass-shadow)!important;
  backdrop-filter:blur(24px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(145%)!important;
}
.site-header .brand{flex:0 0 auto!important}
.site-header .brand-logo{
  width:62px!important;
  height:62px!important;
  filter:drop-shadow(0 0 14px rgba(24,213,208,.18))!important;
}
.site-header .nav-menu{
  min-width:0!important;
  margin-left:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:3px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  overflow:visible!important;
}
.site-header .nav-link,
.site-header .nav-trigger{
  min-height:40px!important;
  padding:8px 9px!important;
  border:1px solid transparent!important;
  border-radius:999px!important;
  background:transparent!important;
  color:#edf8f8!important;
  font-size:.81rem!important;
  font-weight:850!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-shadow:none!important;
}
.site-header .nav-link:hover,
.site-header .nav-link:focus,
.site-header .nav-trigger:hover,
.site-header .nav-trigger:focus,
.site-header .nav-group.is-active>.nav-trigger{
  color:#fff!important;
  background:rgba(24,213,208,.105)!important;
  border-color:rgba(94,235,230,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
.site-header .nav-trigger::after{margin-left:7px!important;width:6px!important;height:6px!important}
.site-header .nav-service-search{
  min-width:176px!important;
  max-width:205px!important;
  height:44px!important;
  margin-left:5px!important;
  border:1px solid rgba(106,232,227,.22)!important;
  border-radius:999px!important;
  background:rgba(1,7,10,.44)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important;
}
.site-header .nav-service-search input{min-height:42px!important;font-size:.78rem!important;padding-left:14px!important}
.site-header .nav-quote{
  min-width:90px!important;
  min-height:42px!important;
  margin-left:4px!important;
  padding:9px 16px!important;
  border-radius:999px!important;
  background:rgba(4,14,17,.72)!important;
  border-color:rgba(52,225,220,.48)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07)!important;
}
.site-header .nav-cart-link{
  width:42px!important;
  height:42px!important;
  min-height:42px!important;
  margin-inline:3px!important;
  border-radius:50%!important;
  background:rgba(24,213,208,.075)!important;
  border-color:rgba(75,230,225,.28)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.site-header .nav-menu>a.nav-link:last-child{
  min-height:42px!important;
  margin-left:1px!important;
  padding-inline:13px!important;
  border-color:rgba(255,255,255,.10)!important;
  background:rgba(255,255,255,.035)!important;
}

/* Desplegables de vidrio oscuro pero suficientemente sólidos para leer. */
.site-header .mega-panel,
.site-header .mega-panel.compact{
  position:fixed!important;
  top:100px!important;
  left:50%!important;
  width:min(940px,calc(100vw - 36px))!important;
  padding:20px!important;
  border:1px solid rgba(105,239,234,.24)!important;
  border-radius:32px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.008) 32%),
    rgba(5,12,15,.975)!important;
  color:#f4ffff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 30px 86px rgba(0,0,0,.64)!important;
  backdrop-filter:blur(26px) saturate(135%)!important;
  -webkit-backdrop-filter:blur(26px) saturate(135%)!important;
}
.site-header .mega-panel.compact{width:min(760px,calc(100vw - 36px))!important}
.site-header .mega-col{
  padding:13px 15px!important;
  border:1px solid rgba(255,255,255,.065)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.025)!important;
}
.site-header .mega-col h4{color:#5eece7!important;font-weight:900!important}
.site-header .mega-col a{
  color:#dbe8e8!important;
  border-bottom-color:rgba(255,255,255,.07)!important;
}
.site-header .mega-col a:hover{color:#fff!important;background:rgba(24,213,208,.07)!important;border-radius:10px!important;padding-left:8px!important;padding-right:8px!important}

/* Liquid Glass de alto contraste para paneles principales. */
.service-card,.info-card,.portfolio-card,.catalog-card,.offer-card,.service-cart,
.detail-main,.spec-card,.statement,.contact-form,.quote-shell,.quote-summary,
.footer-legal-panel,.about-static-nav{
  border-color:rgba(92,228,223,.18)!important;
  border-radius:30px!important;
  background:
    linear-gradient(145deg,rgba(255,255,255,.035),rgba(255,255,255,.008) 38%),
    linear-gradient(135deg,rgba(10,20,24,.96),rgba(4,10,13,.98))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.055),0 18px 50px rgba(0,0,0,.25)!important;
  backdrop-filter:blur(16px) saturate(120%)!important;
  -webkit-backdrop-filter:blur(16px) saturate(120%)!important;
}

/* Tienda directa: sin portada intermedia. */
.tienda-page .store-direct-section{
  padding-top:34px!important;
  background:
    radial-gradient(circle at 78% 2%,rgba(24,213,208,.09),transparent 28%),
    linear-gradient(180deg,rgba(4,12,15,.34),transparent 38%)!important;
}
.tienda-page .store-direct-intro{
  max-width:980px!important;
  margin:0 0 30px!important;
  padding:4px 0 0!important;
}
.tienda-page .store-direct-intro h1{
  max-width:940px!important;
  font-size:clamp(2.25rem,4.5vw,4rem)!important;
  line-height:1.02!important;
  letter-spacing:-.035em!important;
}
.tienda-page .store-direct-intro>p:last-child{
  max-width:900px!important;
  margin:18px 0 0!important;
  color:#c9dada!important;
  font-size:1.04rem!important;
  line-height:1.7!important;
}
.tienda-page .catalog-sidebar-title,
.tienda-page .catalog-toolbar,
.tienda-page .service-cart{
  border-radius:30px!important;
  background:rgba(6,14,17,.96)!important;
  border-color:rgba(91,230,225,.19)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 18px 48px rgba(0,0,0,.25)!important;
}
.tienda-page .catalog-filter{
  border-radius:999px!important;
  background:rgba(255,255,255,.035)!important;
  color:#eaf8f8!important;
  border-color:rgba(83,222,217,.18)!important;
}
.tienda-page .catalog-filter.active,
.tienda-page .catalog-filter:hover{
  background:rgba(24,213,208,.17)!important;
  border-color:rgba(64,229,224,.62)!important;
  color:#fff!important;
}
.tienda-page .catalog-card{overflow:hidden!important;border-radius:30px!important}
.tienda-page .catalog-card-media{
  overflow:hidden!important;
  margin:-26px -26px 22px!important;
  border-radius:30px 30px 18px 18px!important;
  background:#061014!important;
  border-bottom:1px solid rgba(82,225,220,.16)!important;
}
.tienda-page .catalog-card-media img{
  width:100%!important;
  aspect-ratio:16/9!important;
  object-fit:cover!important;
}
.tienda-page .catalog-card-head>img{
  width:58px!important;
  height:58px!important;
  flex-basis:58px!important;
}

@media(max-width:1450px) and (min-width:1181px){
  .site-header .nav-service-search{display:none!important}
  .site-header .navbar{max-width:1240px!important}
}
@media(max-width:1180px){
  :root{--v54-header-space:94px}
  .site-header{padding-top:10px!important}
  .site-header .navbar{
    width:calc(100% - 24px)!important;
    height:72px!important;
    min-height:72px!important;
    padding:5px 10px!important;
    justify-content:space-between!important;
    border-radius:999px!important;
  }
  .site-header .brand{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    z-index:4!important;
  }
  .site-header .brand-logo{width:60px!important;height:60px!important}
  .site-header .nav-toggle{
    display:flex!important;
    position:relative!important;
    z-index:5!important;
    margin-left:auto!important;
    width:46px!important;
    height:46px!important;
    border-radius:50%!important;
    background:rgba(255,255,255,.055)!important;
    border-color:rgba(91,229,224,.24)!important;
  }
  .site-header .nav-menu{
    position:fixed!important;
    top:94px!important;
    left:12px!important;
    right:12px!important;
    width:auto!important;
    max-height:calc(100vh - 108px)!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    overflow:auto!important;
    padding:14px!important;
    border:1px solid rgba(100,236,231,.22)!important;
    border-radius:30px!important;
    background:rgba(5,12,15,.985)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 28px 78px rgba(0,0,0,.62)!important;
    backdrop-filter:blur(24px) saturate(125%)!important;
    -webkit-backdrop-filter:blur(24px) saturate(125%)!important;
  }
  .site-header .nav-menu.is-open{display:flex!important}
  .site-header .nav-link,.site-header .nav-trigger,.site-header .nav-quote,
  .site-header .nav-cart-link,.site-header .nav-menu>a.nav-link:last-child{
    width:100%!important;
    min-height:48px!important;
    height:auto!important;
    margin:0!important;
    padding:12px 15px!important;
    justify-content:space-between!important;
    border:1px solid rgba(90,225,220,.14)!important;
    border-radius:18px!important;
    background:rgba(255,255,255,.035)!important;
  }
  .site-header .nav-quote{justify-content:center!important;border-radius:999px!important}
  .site-header .nav-cart-link{display:flex!important;border-radius:18px!important}
  .site-header .nav-service-search{display:flex!important;max-width:none!important;width:100%!important;margin:0!important}
  .site-header .mega-panel,.site-header .mega-panel.compact{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    display:none!important;
    transform:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    margin:8px 0 0!important;
    padding:12px!important;
    border-radius:24px!important;
    background:rgba(4,12,15,.995)!important;
    box-shadow:none!important;
  }
  .site-header .nav-group.is-active .mega-panel{display:block!important}
  .site-header .mega-grid.three-cols,.site-header .mega-grid.two-cols{grid-template-columns:1fr!important}
  .tienda-page .catalog-sidebar{position:static!important}
}
@media(max-width:640px){
  :root{--v54-header-space:88px}
  .site-header{padding-top:8px!important}
  .site-header .navbar{width:calc(100% - 16px)!important;height:68px!important;min-height:68px!important}
  .site-header .brand-logo{width:56px!important;height:56px!important}
  .site-header .nav-menu{top:84px!important;left:8px!important;right:8px!important;border-radius:26px!important;padding:11px!important}
  .site-header .mega-col{border-radius:18px!important}
  .tienda-page .store-direct-section{padding-top:24px!important}
  .tienda-page .store-direct-intro{margin-bottom:22px!important}
  .tienda-page .store-direct-intro h1{font-size:2.25rem!important}
  .tienda-page .store-direct-intro>p:last-child{font-size:.96rem!important}
  .tienda-page .catalog-sidebar-title,.tienda-page .catalog-toolbar,.tienda-page .service-cart,
  .tienda-page .catalog-card{border-radius:22px!important}
  .tienda-page .catalog-card-media{margin:-18px -18px 18px!important;border-radius:22px 22px 14px 14px!important}
}
@media(prefers-reduced-transparency:reduce){
  .site-header .navbar,.site-header .nav-menu,.site-header .mega-panel{
    background:#071014!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
}


/* ======================================================================
   V55 — FONDO TECNOLÓGICO ÚNICO + MENÚ OPERABLE + CARRUSELES CONTINUOS
   ====================================================================== */
html{background:#010506!important}
body{
  position:relative!important;
  isolation:isolate!important;
  background:#010506!important;
}
.keduin-tech-background{
  position:fixed;
  inset:0;
  z-index:0;
  width:100%;
  height:100%;
  pointer-events:none;
  user-select:none;
}
body>.skip-link,body>.site-header,body>main,body>.footer,body>.floating-whatsapp,body>.floating-cart-shortcut,body>.modal,body>[class*="legal"]{
  position:relative;
  z-index:1;
}
body>.site-header{position:fixed!important;z-index:1200!important}
body>.floating-whatsapp,body>.floating-cart-shortcut{position:fixed!important;z-index:95!important}
body>.modal{position:fixed!important;z-index:1400!important}

/* Un solo fondo continuo: se eliminan los JPG y cortes entre secciones. */
/* Todas las secciones comparten el mismo fondo Canvas; solo conservan sus tarjetas internas. */
body main section{background-image:none!important}

.section,.home-hero,.page-hero,.catalog-hero,.home-main-categories,.offers-section,.home-cart-manager,
.dark-panel,.client-reviews-section,#catalogo-servicios,.store-direct-section,
.tienda-page .page-hero,.tienda-page #catalogo-servicios,.tienda-page .catalog-sidebar,.tienda-page .service-cart,
.paginas-web-page .page-hero,.paginas-web-page .section:first-of-type,
.marketing-page .page-hero,.marketing-page .section:first-of-type,
.produccion-page .page-hero,.produccion-page .section:first-of-type,
.infra-page .page-hero,.planes-page .page-hero,.planes-page .service-catalog-grid,
.nosotros-page .about-hero,.nosotros-page .about-side-nav-wrap,.nosotros-page .section:first-of-type,
.diagnostico-page .page-hero,.cotizar-page .page-hero,.cart-page .page-hero,
.faq-page .page-hero,.contact-page .page-hero,.portfolio-page .page-hero,.brand-page .page-hero,.brand-page .section:first-of-type{
  background-image:none!important;
  background-color:transparent!important;
}
.dark-panel,.page-hero{border-block-color:rgba(24,213,208,.08)!important}
.footer{
  background:linear-gradient(180deg,rgba(1,6,8,.55),rgba(1,4,5,.94))!important;
  backdrop-filter:blur(7px);
  -webkit-backdrop-filter:blur(7px);
}

/* El cursor puede bajar desde Servicios hasta cualquier opción sin cerrar el panel. */
.site-header .mega-panel,.site-header .mega-panel.compact{
  top:94px!important;
  max-height:calc(100vh - 112px)!important;
  overflow-y:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(82,232,227,.55) rgba(255,255,255,.035);
}
.site-header .mega-panel::before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:-16px;
  height:18px;
  background:transparent;
}
.site-header .nav-group.is-active>.mega-panel{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}
.site-header .mega-col a{transition:background .18s ease,color .18s ease,padding .18s ease!important}

/* Búsqueda instantánea desde la lupa del menú. */
.site-header .nav-service-search{
  position:relative!important;
  overflow:visible!important;
  z-index:1250!important;
}
.service-search-suggestions{
  position:absolute;
  top:calc(100% + 12px);
  right:0;
  width:min(420px,calc(100vw - 28px));
  max-height:min(520px,70vh);
  overflow:auto;
  padding:8px;
  border:1px solid rgba(96,235,230,.28);
  border-radius:24px;
  background:rgba(4,12,15,.985);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07),0 28px 76px rgba(0,0,0,.64);
  backdrop-filter:blur(24px) saturate(130%);
  -webkit-backdrop-filter:blur(24px) saturate(130%);
}
.service-search-suggestions[hidden]{display:none!important}
.service-search-option{
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  align-items:center;
  gap:11px;
  padding:9px;
  border-radius:17px;
  border:1px solid transparent;
  color:#efffff;
}
.service-search-option:hover,.service-search-option:focus,.service-search-option.is-active{
  background:rgba(24,213,208,.105);
  border-color:rgba(71,229,224,.25);
  outline:0;
}
.service-search-option img{
  width:52px;
  height:52px;
  object-fit:cover;
  border-radius:13px;
  background:#071215;
  border:1px solid rgba(255,255,255,.08);
}
.service-search-option span{min-width:0;display:grid;gap:3px}
.service-search-option strong{font-size:.86rem;line-height:1.2;overflow-wrap:anywhere}
.service-search-option small{color:#9fc0c1;font-size:.74rem;line-height:1.25;overflow-wrap:anywhere}
.service-search-all,.service-search-empty{
  display:block;
  margin-top:6px;
  padding:11px 12px;
  border-radius:15px;
  color:#68ece7;
  font-size:.8rem;
  font-weight:900;
  text-align:center;
  background:rgba(24,213,208,.07);
}

/* Calificaciones: movimiento infinito de derecha a izquierda. */
.reviews-control-row[hidden]{display:none!important}
.reviews-marquee-viewport{
  width:100%;
  overflow:hidden;
  padding:2px 0 18px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);
}
.reviews-track.reviews-marquee-track{
  display:flex!important;
  width:max-content!important;
  grid-auto-flow:unset!important;
  grid-auto-columns:unset!important;
  gap:16px!important;
  overflow:visible!important;
  padding:2px 0!important;
  scroll-snap-type:none!important;
  animation:keduinReviewsMarquee 135s linear infinite;
  will-change:transform;
}
.reviews-marquee-viewport:hover .reviews-marquee-track,
.reviews-marquee-viewport:focus-within .reviews-marquee-track{animation-play-state:paused}
.reviews-marquee-track .review-card{flex:0 0 340px;max-width:340px}
@keyframes keduinReviewsMarquee{to{transform:translateX(calc(-50% - 8px))}}

/* Portafolio de inicio: cuatro proyectos visibles y desplazamiento continuo. */
.home-portfolio-marquee-viewport{
  width:100%;
  overflow:hidden;
  padding:4px 0 14px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
}
.home-portfolio-grid.home-portfolio-marquee-track{
  --home-project-width:calc((min(100vw - 40px,1180px) - 48px)/4);
  display:flex!important;
  width:max-content!important;
  grid-template-columns:none!important;
  gap:16px!important;
  animation:keduinPortfolioMarquee 76s linear infinite;
  will-change:transform;
}
.home-portfolio-marquee-viewport:hover .home-portfolio-marquee-track,
.home-portfolio-marquee-viewport:focus-within .home-portfolio-marquee-track{animation-play-state:paused}
.home-portfolio-marquee-track>.portfolio-card{
  flex:0 0 var(--home-project-width)!important;
  width:var(--home-project-width)!important;
  max-width:var(--home-project-width)!important;
}
@keyframes keduinPortfolioMarquee{to{transform:translateX(calc(-50% - 8px))}}

@media(max-width:1180px){
  .site-header .mega-panel,.site-header .mega-panel.compact{
    top:auto!important;
    max-height:52vh!important;
  }
  .site-header .mega-panel::before{display:none}
  .service-search-suggestions{left:0;right:0;width:100%;top:calc(100% + 8px)}
  .home-portfolio-grid.home-portfolio-marquee-track{
    --home-project-width:calc((100vw - 56px)/2.2);
  }
}
@media(max-width:680px){
  .reviews-marquee-track .review-card{flex-basis:82vw;max-width:82vw;min-height:250px}
  .reviews-track.reviews-marquee-track{animation-duration:155s}
  .home-portfolio-grid.home-portfolio-marquee-track{
    --home-project-width:84vw;
    animation-duration:92s;
  }
  .service-search-suggestions{border-radius:20px;padding:7px}
  .service-search-option{grid-template-columns:46px minmax(0,1fr);padding:8px}
  .service-search-option img{width:46px;height:46px}
}
@media(prefers-reduced-motion:reduce){
  .reviews-track.reviews-marquee-track,.home-portfolio-grid.home-portfolio-marquee-track{
    animation:none!important;
    transform:none!important;
  }
  .reviews-marquee-viewport,.home-portfolio-marquee-viewport{overflow-x:auto;mask-image:none;-webkit-mask-image:none}
}

/* V55 diagnóstico integrado al fondo continuo */
.diagnostico-page,.diagnostico-page .diag-shell,.diagnostico-page .diag-hero{background-image:none!important;background-color:transparent!important}


/* ======================================================================
   V56 — MENÚ MÓVIL ACORDEÓN REAL + CARRO DESPLAZABLE + FONDO +20%
   El submenú crece dentro del mismo menú, sin burbujas ni scroll anidado.
   ====================================================================== */
@media (max-width:1180px){
  .site-header .nav-menu{
    height:auto!important;
    max-height:calc(100dvh - 106px)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    scroll-behavior:smooth!important;
    align-content:start!important;
    justify-content:flex-start!important;
  }
  .site-header .nav-group{
    width:100%!important;
    flex:0 0 auto!important;
    overflow:visible!important;
  }
  .site-header .nav-group>.nav-trigger{
    position:relative!important;
    z-index:2!important;
  }
  .site-header .nav-group>.nav-trigger::after{
    transition:transform .24s ease!important;
  }
  .site-header .nav-group.is-active>.nav-trigger::after{
    transform:rotate(45deg)!important;
  }
  /* Acordeón integrado: el contenido amplía la cápsula principal. */
  .site-header .mega-panel,
  .site-header .mega-panel.compact{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    display:grid!important;
    grid-template-rows:0fr!important;
    overflow:hidden!important;
    overscroll-behavior:auto!important;
    margin:0!important;
    padding:0 5px!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    opacity:0!important;
    visibility:visible!important;
    pointer-events:none!important;
    transform:none!important;
    transition:grid-template-rows .28s ease,opacity .2s ease,margin .28s ease,padding .28s ease!important;
  }
  .site-header .mega-panel>.mega-grid{
    min-height:0!important;
    overflow:hidden!important;
  }
  .site-header .nav-group.is-active>.mega-panel{
    display:grid!important;
    grid-template-rows:1fr!important;
    margin:5px 0 4px!important;
    padding:2px 5px 5px 16px!important;
    opacity:1!important;
    pointer-events:auto!important;
    border-left:1px solid rgba(80,232,227,.28)!important;
  }
  .site-header .mega-grid.three-cols,
  .site-header .mega-grid.two-cols{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:0!important;
  }
  .site-header .mega-col{
    padding:10px 0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .site-header .mega-col+.mega-col{
    border-top:1px solid rgba(255,255,255,.07)!important;
  }
  .site-header .mega-col h4{
    margin:0 0 7px!important;
    padding:0 5px!important;
    font-size:.79rem!important;
    letter-spacing:.035em!important;
  }
  .site-header .mega-col a,
  .site-header .mega-col a:hover,
  .site-header .mega-col a:focus{
    min-height:42px!important;
    margin:2px 0!important;
    padding:9px 10px!important;
    border:1px solid transparent!important;
    border-radius:13px!important;
    background:transparent!important;
  }
  .site-header .mega-col a:hover,
  .site-header .mega-col a:focus{
    color:#fff!important;
    border-color:rgba(76,229,224,.18)!important;
    background:rgba(24,213,208,.075)!important;
  }
  .site-header .services-mega .mega-col .menu-category-link{
    grid-template-columns:36px minmax(0,1fr)!important;
  }
  .site-header .services-mega .mega-col .menu-category-link img{
    width:34px!important;
    height:34px!important;
  }
  /* El carro ocupa el alto disponible y solo su contenido central se desplaza. */
  .cart-drawer{
    top:94px!important;
    bottom:8px!important;
    max-height:none!important;
    height:auto!important;
    min-height:0!important;
  }
  .cart-drawer-head,
  .cart-drawer-summary,
  .cart-drawer-actions{
    flex:0 0 auto!important;
  }
  .cart-drawer-body{
    flex:1 1 auto!important;
    min-height:0!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
  }
  body.cart-drawer-open{overflow:hidden!important;touch-action:none!important;}
  body.cart-drawer-open .cart-drawer{touch-action:auto!important;}
}
@media (max-width:640px){
  .site-header .nav-menu{
    max-height:calc(100dvh - 96px)!important;
  }
  .site-header .nav-group.is-active>.mega-panel{
    padding-left:12px!important;
  }
  .cart-drawer{
    top:84px!important;
    bottom:6px!important;
    left:6px!important;
    right:6px!important;
    border-radius:22px!important;
  }
}


/* ======================================================================
   V57 — LIQUID GLASS REAL + TARJETAS ORDENADAS + RESPONSIVE COMPACTO
   ====================================================================== */
:root{
  --v57-glass:linear-gradient(135deg,rgba(255,255,255,.18),rgba(255,255,255,.065));
  --v57-glass-border:rgba(255,255,255,.28);
  --v57-glass-shadow:0 14px 44px rgba(0,0,0,.23),inset 0 1px 0 rgba(255,255,255,.34),inset 0 -1px 0 rgba(255,255,255,.07);
}
.site-header{background:transparent!important;border:0!important;box-shadow:none!important;pointer-events:none!important}
.site-header .navbar{
  pointer-events:auto!important;
  background:var(--v57-glass)!important;
  border:1px solid var(--v57-glass-border)!important;
  box-shadow:var(--v57-glass-shadow)!important;
  backdrop-filter:blur(26px) saturate(165%)!important;
  -webkit-backdrop-filter:blur(26px) saturate(165%)!important;
  border-radius:999px!important;
}
.site-header .nav-menu{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
.site-header .nav-link,.site-header .nav-trigger{background:transparent!important;box-shadow:none!important}
.site-header .nav-link:hover,.site-header .nav-link:focus,.site-header .nav-trigger:hover,.site-header .nav-trigger:focus,.site-header .nav-group.is-active>.nav-trigger{
  background:rgba(255,255,255,.105)!important;border-color:rgba(255,255,255,.18)!important;
}
.site-header .nav-service-search,.site-header .nav-quote,.site-header .nav-cart-link,.site-header .nav-menu>a.nav-link:last-child{
  background:rgba(255,255,255,.075)!important;border-color:rgba(255,255,255,.19)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.site-header .mega-panel,.site-header .mega-panel.compact{
  background:linear-gradient(145deg,rgba(255,255,255,.145),rgba(255,255,255,.055)),rgba(13,25,31,.70)!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:0 26px 78px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.24)!important;
  backdrop-filter:blur(30px) saturate(155%)!important;-webkit-backdrop-filter:blur(30px) saturate(155%)!important;
}
.site-header .mega-col{background:rgba(255,255,255,.035)!important;border-color:rgba(255,255,255,.10)!important;box-shadow:none!important}

/* Product hierarchy: category + icon, product name, discreet SKU. */
.catalog-card-head{display:block!important}
.catalog-card-head>div{min-width:0!important}
.catalog-category-line{display:flex;align-items:center;gap:9px;margin-bottom:8px;min-width:0}
.catalog-category-line>img{width:40px!important;height:40px!important;flex:0 0 40px!important;object-fit:contain!important;filter:drop-shadow(0 0 10px rgba(24,213,208,.22))}
.catalog-category-line .catalog-category{margin:0!important;line-height:1.25!important;font-size:.74rem!important;letter-spacing:.02em!important}
.catalog-card-head h3{font-size:clamp(1.12rem,1.45vw,1.42rem)!important;margin:0 0 4px!important;line-height:1.18!important}
.catalog-card-head .sku-pill{display:block!important;width:max-content!important;max-width:100%;padding:0!important;border:0!important;background:transparent!important;color:rgba(202,225,225,.48)!important;font-size:.61rem!important;font-weight:650!important;letter-spacing:.05em!important}

.service-option-selector{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
.service-option-choice{min-height:54px;padding:9px 8px;border:1px solid rgba(24,213,208,.18);border-radius:14px;background:rgba(255,255,255,.035);color:#dffafa;font:inherit;font-size:.72rem;font-weight:800;line-height:1.3;cursor:pointer;transition:.2s ease}
.service-option-choice:hover,.service-option-choice.is-active{background:rgba(24,213,208,.14);border-color:rgba(64,233,227,.58);color:#fff;transform:translateY(-1px)}
.catalog-card-actions.three-service-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:auto!important}
.catalog-card-actions.three-service-actions .btn{min-width:0!important;min-height:44px!important;padding:9px 8px!important;font-size:.72rem!important;line-height:1.2!important;text-align:center!important;white-space:normal!important}
.is-detail-clickable{cursor:default}

/* Plans: direct and only monthly marketing/production services. */
.plans-direct-hero .plans-direct-copy{max-width:960px}
.plans-direct-hero h1{max-width:900px}
.plans-monthly-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.plans-page .page-hero .hero-media{display:none!important}

/* Portfolio image touches the turquoise border; no second black frame. */
.portfolio-shot{padding:0!important;background:transparent!important;border:1px solid rgba(24,213,208,.48)!important;overflow:hidden!important;border-radius:22px!important;line-height:0!important}
.portfolio-shot img{display:block!important;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;object-fit:cover!important;margin:0!important;background:transparent!important;border:0!important;border-radius:inherit!important}
.portfolio-shot span{line-height:1.2}
.portfolio-card{overflow:hidden!important}

/* Nosotros: normal horizontal sticky section menu, not a floating side panel. */
.nosotros-page .about-section-nav-wrap{display:block!important;position:sticky!important;top:var(--v54-header-space,104px)!important;z-index:65!important;padding:8px 0!important;background:rgba(2,8,11,.56)!important;border-bottom:1px solid rgba(24,213,208,.12)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important}
.about-section-nav{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:9px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:linear-gradient(135deg,rgba(255,255,255,.11),rgba(255,255,255,.035));box-shadow:inset 0 1px 0 rgba(255,255,255,.16);scrollbar-width:thin}
.about-section-nav a{flex:0 0 auto;white-space:nowrap;padding:9px 12px;border-radius:999px;color:#dff4f4;font-size:.8rem;font-weight:820}
.about-section-nav a:hover,.about-section-nav a:focus{color:#fff;background:rgba(24,213,208,.12)}
.nosotros-page .about-content-layout{display:block!important;padding-top:0!important}.nosotros-page .about-static-nav{display:none!important}

/* Hero typewriter copy remains stable while the photo stays fixed. */
.home-hero .hero-copy{min-width:0}
.hero-rotating-title{min-height:clamp(150px,20vw,245px);transition:opacity .22s ease}
.hero-rotating-subtitle{min-height:78px;transition:opacity .22s ease}
.hero-rotating-title.is-copy-changing,.hero-rotating-subtitle.is-copy-changing{opacity:0}
.hero-rotating-title.is-typing::after,.hero-rotating-subtitle.is-typing::after{content:'|';display:inline-block;margin-left:3px;color:var(--turquoise);animation:v57Caret .75s steps(1) infinite}
@keyframes v57Caret{50%{opacity:0}}

/* Mobile: two cards per row and more projects visible in the moving portfolio. */
@media(max-width:760px){
  .main-categories-grid,.offers-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .main-category-card{padding:12px!important;border-radius:20px!important;text-align:left!important;align-items:flex-start!important}
  .main-category-card img{width:58px!important;height:58px!important;margin:0 0 5px!important}
  .main-category-card h3{font-size:.9rem!important;line-height:1.18!important}
  .main-category-card p{font-size:.72rem!important;line-height:1.35!important;-webkit-line-clamp:3!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .main-category-card span{font-size:.7rem!important}
  .offers-grid .offer-card{padding:10px!important;border-radius:20px!important;min-width:0!important}
  .offers-grid .offer-media{margin:-10px -10px 10px!important;border-radius:20px 20px 12px 12px!important}
  .offers-grid .offer-body{padding:0!important}
  .offers-grid .offer-card h3{font-size:.9rem!important;line-height:1.16!important}
  .offers-grid .offer-card p,.offers-grid .mini-feature-list{display:none!important}
  .offers-grid .offer-price{font-size:.82rem!important}
  .offers-grid .catalog-card-actions.three-service-actions{grid-template-columns:1fr!important;gap:5px!important}
  .offers-grid .catalog-card-actions.three-service-actions .btn{min-height:34px!important;padding:7px 5px!important;font-size:.62rem!important}
  .home-portfolio-grid.home-portfolio-marquee-track{--home-project-width:calc((100vw - 42px)/2)!important;gap:10px!important;animation-duration:84s!important}
  .home-portfolio-marquee-track>.portfolio-card{border-radius:18px!important}
  .home-portfolio-marquee-track .portfolio-card-body{padding:10px!important}
  .home-portfolio-marquee-track .portfolio-card-body p,.home-portfolio-marquee-track .portfolio-card-actions{display:none!important}
  .home-portfolio-marquee-track .portfolio-card-body h3{font-size:.8rem!important;line-height:1.15!important;margin:4px 0 0!important}
  .home-portfolio-marquee-track .category{font-size:.6rem!important}
  .home-portfolio-marquee-track .portfolio-shot{border-radius:16px!important}
  .catalog-category-line>img{width:34px!important;height:34px!important;flex-basis:34px!important}
  .catalog-card-head h3{font-size:1.02rem!important}
  .catalog-card-actions.three-service-actions{grid-template-columns:1fr!important}
  .service-option-selector{grid-template-columns:1fr!important}
  .plans-monthly-grid{grid-template-columns:1fr!important}
  .hero-rotating-title{min-height:190px}.hero-rotating-subtitle{min-height:120px}
}

/* Mobile menu: the main glass capsule itself grows. No second dark dialog. */
@media(max-width:1180px){
  .site-header .navbar{display:flex!important;flex-wrap:wrap!important;align-content:flex-start!important;overflow:hidden!important;transition:border-radius .22s ease,max-height .28s ease!important}
  .site-header .navbar.mobile-menu-open{height:auto!important;max-height:calc(100dvh - 16px)!important;border-radius:34px!important;padding-bottom:10px!important}
  .site-header .nav-menu{position:static!important;flex:0 0 100%!important;width:100%!important;max-height:calc(100dvh - 98px)!important;margin:8px 0 0!important;padding:4px 6px 8px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;overflow-y:auto!important}
  .site-header .nav-link,.site-header .nav-trigger,.site-header .nav-quote,.site-header .nav-cart-link,.site-header .nav-menu>a.nav-link:last-child{border:0!important;border-bottom:1px solid rgba(255,255,255,.095)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
  .site-header .nav-quote{margin-top:4px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:999px!important;background:rgba(255,255,255,.10)!important}
  .site-header .nav-cart-link{border-radius:14px!important}
  .site-header .mega-panel,.site-header .mega-panel.compact{background:transparent!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
  .site-header .mega-col{background:transparent!important;border:0!important}
}
@supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
  .site-header .navbar{background:rgba(28,42,49,.88)!important}
  .site-header .mega-panel,.site-header .mega-panel.compact{background:rgba(25,39,46,.94)!important}
}


/* ======================================================================
   V58 — MENÚ MÁS OSCURO, LOGO MÓVIL CORREGIDO Y NAVEGACIÓN REORGANIZADA
   ====================================================================== */
.site-header .navbar{
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.018) 42%),rgba(3,9,12,.86)!important;
  border-color:rgba(176,247,244,.24)!important;
  box-shadow:0 16px 48px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.17),inset 0 -1px 0 rgba(24,213,208,.06)!important;
  backdrop-filter:blur(26px) saturate(145%)!important;-webkit-backdrop-filter:blur(26px) saturate(145%)!important;
}
.site-header .mega-panel,.site-header .mega-panel.compact{
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.009) 36%),rgba(2,8,11,.965)!important;
  border-color:rgba(119,235,231,.25)!important;
  box-shadow:0 30px 86px rgba(0,0,0,.64),inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.site-header .mega-grid.four-cols{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.site-header .services-mega{width:min(1180px,calc(100vw - 36px))!important}
.site-header .mega-col{background:rgba(255,255,255,.018)!important;border-color:rgba(255,255,255,.075)!important}
.site-header .mega-col h4{display:flex;align-items:center;gap:8px;min-height:34px}
.site-header .mega-col h4 img{width:34px;height:34px;object-fit:contain;flex:0 0 34px}
@media(max-width:1180px){
  .site-header .navbar{justify-content:space-between!important;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.015)),rgba(2,8,11,.94)!important}
  .site-header .brand{position:static!important;left:auto!important;top:auto!important;transform:none!important;margin:0 auto 0 0!important;z-index:5!important}
  .site-header .brand-logo{width:58px!important;height:58px!important}
  .site-header .nav-toggle{margin-left:auto!important}
  .site-header .nav-menu{background:transparent!important}
  .site-header .mega-grid.four-cols{grid-template-columns:1fr!important}
  .site-header .nav-group.is-active>.mega-panel{background:rgba(0,0,0,.08)!important}
}
@media(max-width:640px){.site-header .brand-logo{width:54px!important;height:54px!important}}


/* ======================================================================
   V59 — GLASS SUPERIOR TRANSLÚCIDO + SUBMENÚS LEGIBLES + ACCIONES ORDENADAS
   ====================================================================== */
/* La cápsula principal conserva transparencia real y deja ver el fondo. */
.site-header .navbar{
  background:
    linear-gradient(180deg,rgba(255,255,255,.115),rgba(255,255,255,.025) 48%,rgba(255,255,255,.012)),
    rgba(5,13,17,.50)!important;
  border-color:rgba(193,255,252,.29)!important;
  box-shadow:
    0 18px 52px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.26),
    inset 0 -1px 0 rgba(24,213,208,.08)!important;
  backdrop-filter:blur(24px) saturate(165%)!important;
  -webkit-backdrop-filter:blur(24px) saturate(165%)!important;
}

/* Los desplegables sí son más oscuros para que el contenido nunca pierda contraste. */
.site-header .mega-panel,
.site-header .mega-panel.compact{
  background:
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.012) 38%),
    rgba(2,8,12,.955)!important;
  border-color:rgba(112,239,234,.30)!important;
  box-shadow:0 30px 88px rgba(0,0,0,.68),inset 0 1px 0 rgba(255,255,255,.095)!important;
  backdrop-filter:blur(30px) saturate(145%)!important;
  -webkit-backdrop-filter:blur(30px) saturate(145%)!important;
  color:#f4ffff!important;
}
.site-header .mega-panel .mega-col{
  background:rgba(255,255,255,.022)!important;
  border-color:rgba(255,255,255,.085)!important;
}
.site-header .mega-panel h4,
.site-header .mega-panel a,
.site-header .mega-panel span,
.site-header .mega-panel p{
  opacity:1!important;
  color:#f1ffff!important;
  text-shadow:none!important;
}
.site-header .mega-panel a:hover,
.site-header .mega-panel a:focus{
  color:#fff!important;
  background:rgba(24,213,208,.11)!important;
}
.site-header .mega-panel .text-only-link span{color:#dceeee!important}

/* Icono correcto de Planes mensuales en el filtro de tienda. */
.catalog-filter[data-service-filter="planes-mensuales"] img{
  display:block!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  object-fit:contain!important;
  opacity:1!important;
  filter:none!important;
}

/* Botonera compacta, rectangular y simétrica. */
.catalog-card-actions.three-service-actions{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:9px!important;
  align-items:stretch!important;
  width:100%!important;
  margin-top:auto!important;
}
.catalog-card-actions.three-service-actions .btn{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:46px!important;
  height:auto!important;
  padding:9px 10px!important;
  border-radius:14px!important;
  font-size:.72rem!important;
  font-weight:850!important;
  line-height:1.15!important;
  letter-spacing:-.01em!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
.catalog-card-actions.three-service-actions .service-detail-btn{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.20)!important;
  color:#f4ffff!important;
}
.catalog-card-actions.three-service-actions .service-add-btn{
  background:#16d7d0!important;
  border-color:#16d7d0!important;
  color:#001415!important;
}
.catalog-card-actions.three-service-actions .service-whatsapp-btn{
  background:rgba(23,174,128,.92)!important;
  border-color:rgba(57,231,173,.62)!important;
  color:#fff!important;
}
.catalog-card-actions.three-service-actions .btn:hover,
.catalog-card-actions.three-service-actions .btn:focus{
  transform:translateY(-1px)!important;
}

/* En vista de tres columnas hay menos ancho: una fila superior y dos botones iguales abajo. */
#serviceCatalogGrid.catalog-view-3 .catalog-card-actions.three-service-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
#serviceCatalogGrid.catalog-view-3 .catalog-card-actions.three-service-actions .service-detail-btn{
  grid-column:1/-1!important;
}

@media(max-width:1180px){
  .site-header .navbar{
    background:
      linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.022)),
      rgba(3,10,14,.68)!important;
  }
  .site-header .nav-group.is-active>.mega-panel,
  .site-header .nav-group.is-active>.mega-panel.compact{
    background:rgba(2,8,12,.92)!important;
    border:1px solid rgba(112,239,234,.20)!important;
    border-radius:20px!important;
    padding:10px!important;
    margin-top:5px!important;
  }
  .site-header .nav-group.is-active>.mega-panel .mega-col{
    background:rgba(255,255,255,.025)!important;
    border-radius:16px!important;
  }
}

@media(max-width:760px){
  #serviceCatalogGrid .catalog-card-actions.three-service-actions,
  #serviceCatalogGrid.catalog-view-1 .catalog-card-actions.three-service-actions,
  #serviceCatalogGrid.catalog-view-2 .catalog-card-actions.three-service-actions,
  #serviceCatalogGrid.catalog-view-3 .catalog-card-actions.three-service-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
  }
  #serviceCatalogGrid .catalog-card-actions.three-service-actions .service-detail-btn{
    grid-column:1/-1!important;
  }
  #serviceCatalogGrid .catalog-card-actions.three-service-actions .btn{
    min-height:42px!important;
    padding:8px 7px!important;
    border-radius:12px!important;
    font-size:.68rem!important;
  }
  /* Las ofertas compactas del inicio conservan sus botones apilados para evitar desbordes. */
  .offers-grid .catalog-card-actions.three-service-actions{
    grid-template-columns:1fr!important;
  }
  .offers-grid .catalog-card-actions.three-service-actions .service-detail-btn{
    grid-column:auto!important;
  }
}

@supports not ((backdrop-filter:blur(2px)) or (-webkit-backdrop-filter:blur(2px))){
  .site-header .navbar{background:rgba(10,23,29,.90)!important}
  .site-header .mega-panel,.site-header .mega-panel.compact{background:rgba(2,8,12,.98)!important}
}


/* ======================================================================
   V60 — CATÁLOGO ORDENADO + CARRUSELES MANUALES + PORTAFOLIO SIN MARCO
   ====================================================================== */
/* Menú principal de vidrio visible; submenús más oscuros y completamente legibles. */
.site-header .navbar{
  background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.024) 46%,rgba(255,255,255,.008)),rgba(4,12,16,.46)!important;
  backdrop-filter:blur(25px) saturate(168%)!important;-webkit-backdrop-filter:blur(25px) saturate(168%)!important;
}
.site-header .mega-panel,.site-header .mega-panel.compact{
  background:linear-gradient(180deg,rgba(255,255,255,.052),rgba(255,255,255,.008) 36%),rgba(1,7,11,.975)!important;
  color:#f7ffff!important;
}
.site-header .mega-panel *{opacity:1!important}

/* El icono oficial de planes mensuales se carga desde una ruta nueva para evitar caché. */
.catalog-filter[data-service-filter="planes-mensuales"] img,
img[src$="planes-mensuales-v60.png"]{display:block!important;width:27px!important;height:27px!important;min-width:27px!important;object-fit:contain!important;opacity:1!important;filter:none!important}
.catalog-group-head>img[src$="planes-mensuales-v60.png"]{width:76px!important;height:76px!important}

/* Controles de carrusel. */
.carousel-control-row,.reviews-control-row{display:flex!important;justify-content:flex-end;align-items:center;gap:9px;margin:0 0 14px!important}
.carousel-nav,.reviews-nav{display:grid!important;place-items:center;width:46px!important;height:46px!important;min-width:46px!important;border-radius:50%!important;border:1px solid rgba(116,241,237,.40)!important;background:rgba(5,17,21,.76)!important;color:#eaffff!important;font-size:1.8rem!important;line-height:1!important;cursor:pointer!important;box-shadow:0 10px 28px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.12)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;transition:transform .2s ease,background .2s ease,border-color .2s ease!important}
.carousel-nav:hover,.carousel-nav:focus,.reviews-nav:hover,.reviews-nav:focus{transform:translateY(-2px)!important;background:rgba(24,213,208,.17)!important;border-color:rgba(83,238,232,.75)!important;outline:0!important}
.v60-controlled-carousel{overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)!important;-webkit-mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)!important;touch-action:pan-x!important;overscroll-behavior-inline:contain!important}
.v60-controlled-carousel::-webkit-scrollbar{display:none!important}
.home-portfolio-grid.v60-controlled-track,.reviews-track.v60-controlled-track{animation:none!important;transform:none!important;will-change:auto!important}

/* Portafolio: la captura toca directamente la línea turquesa, sin colchón negro. */
.preview-stage{padding:0!important;background:transparent!important;border:1px solid rgba(24,213,208,.48)!important;overflow:auto!important}
.preview-stage img,.modal-card .preview-stage img,.modal-card-preview .preview-stage img{display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;border:0!important;border-radius:20px!important;background:transparent!important;object-fit:contain!important}
.preview-bubble{background:transparent!important;padding:14px!important}
.portfolio-shot{padding:0!important;background:transparent!important}
.portfolio-shot img{background:transparent!important}

/* Los grupos extensos mantienen tarjetas coherentes y botones legibles. */
#serviceCatalogGrid .service-catalog-grid{align-items:stretch!important}
#serviceCatalogGrid .catalog-card{min-width:0!important;height:100%!important}
#serviceCatalogGrid .catalog-card-actions.three-service-actions{margin-top:auto!important}

@media(max-width:760px){
  .carousel-nav,.reviews-nav{width:42px!important;height:42px!important;min-width:42px!important;font-size:1.55rem!important}
  .carousel-control-row,.reviews-control-row{margin-bottom:10px!important}
  .v60-controlled-carousel{mask-image:none!important;-webkit-mask-image:none!important}
  .catalog-group-head>img[src$="planes-mensuales-v60.png"]{width:68px!important;height:68px!important}
}


/* V61 — búsqueda limpia, resultados solo texto y fondo tecnológico más vivo */
.nav-service-search input::-webkit-search-decoration,
.nav-service-search input::-webkit-search-cancel-button,
.nav-service-search input::-webkit-search-results-button,
.nav-service-search input::-webkit-search-results-decoration{display:none!important;-webkit-appearance:none!important;appearance:none!important}
.nav-service-search input[type="search"]{-webkit-appearance:none!important;appearance:none!important}
.site-header .nav-service-search button,
.nav-service-search button{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;width:30px!important;height:30px!important;min-width:30px!important;flex:0 0 30px!important;padding:0!important;margin-right:10px!important}
.site-header .nav-service-search button::before,.nav-service-search button::before{left:6px!important;top:5px!important;width:12px!important;height:12px!important;border-width:2px!important}
.site-header .nav-service-search button::after,.nav-service-search button::after{left:17px!important;top:18px!important;width:8px!important;height:2px!important}
.service-search-suggestions{padding:10px!important}
.service-search-option{display:block!important;padding:11px 13px!important}
.service-search-option img{display:none!important}
.service-search-option span{display:block!important}
.service-search-option strong{display:block!important;font-size:.9rem!important}
.service-search-option small{display:block!important;margin-top:2px!important}
.preview-stage{overflow:hidden!important;display:flex!important;align-items:flex-start!important;justify-content:center!important;background:transparent!important}
.preview-stage img,.modal-card .preview-stage img,.modal-card-preview .preview-stage img{width:100%!important;height:auto!important;object-fit:contain!important;object-position:top center!important;border-radius:20px!important;background:transparent!important}


/* V63 — portadas hero actualizadas + bloque Keduin debajo */
.home-hero .hero-grid{grid-template-columns:minmax(0,.9fr) minmax(380px,.95fr);gap:34px;align-items:center}
.home-hero h1{font-size:clamp(2rem,3.35vw,2.8rem)!important;max-width:720px}
.hero-rotating-title{min-height:clamp(160px,16vw,210px)}
.hero-rotating-subtitle{min-height:110px;max-width:700px}
.hero-slide-media{border-radius:32px!important;aspect-ratio:16/11!important;min-height:460px;background:linear-gradient(180deg,rgba(5,12,14,.96),rgba(5,12,14,.84));}
.hero-slide-media img{width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-slide-media figcaption{display:flex!important;align-items:center;justify-content:center;left:18px;right:auto;bottom:18px;padding:10px 14px;font-size:.8rem;background:rgba(5,12,14,.62);border:1px solid rgba(255,255,255,.18)}
.hero-indicators{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.hero-indicator{width:12px;height:12px;border-radius:999px;border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.12);padding:0;cursor:pointer;transition:transform .2s ease,background .2s ease,border-color .2s ease}
.hero-indicator.is-active{background:var(--turquoise);border-color:var(--turquoise);transform:scale(1.08)}
.keduin-home-intro{padding-top:38px}
.keduin-home-intro-grid{grid-template-columns:minmax(280px,.82fr) minmax(0,1fr);align-items:center}
.about-keduin-media{aspect-ratio:4/5;border-radius:28px;overflow:hidden}
.about-keduin-media img{width:100%;height:100%;object-fit:cover;object-position:center}
.about-keduin-copy p{margin:0 0 16px;color:#d7e3e3}
.about-keduin-highlight{margin-top:24px;padding:24px 26px;border-radius:26px}
.about-keduin-highlight p{margin:0;color:#ecffff;font-size:1.08rem;font-weight:850}
@media (max-width:1180px){.home-hero .hero-grid,.keduin-home-intro-grid{grid-template-columns:1fr}.hero-slide-media{max-width:760px;width:100%;margin-inline:auto;min-height:0}.about-keduin-media{max-width:560px;width:100%;margin-inline:auto}}
@media (max-width:760px){.home-hero h1{font-size:1.9rem!important}.hero-rotating-title{min-height:168px}.hero-rotating-subtitle{min-height:132px}.hero-slide-media{aspect-ratio:16/10!important;max-height:none!important;border-radius:24px!important}.hero-indicators{justify-content:flex-start}.keduin-home-intro{padding-top:22px}.about-keduin-highlight{padding:20px}}


/* V64 — logos de clientes en movimiento + reseñas clicables + hero V2 */
.review-card-link{text-decoration:none;color:inherit;cursor:pointer;transition:transform .22s ease,border-color .22s ease,background .22s ease,box-shadow .22s ease}
.review-card-link:hover,.review-card-link:focus-visible{transform:translateY(-2px);border-color:rgba(24,213,208,.34);background:rgba(255,255,255,.055);box-shadow:0 22px 46px rgba(0,0,0,.24)}
.review-card-visit{display:inline-flex;align-items:center;gap:6px;color:#8ef6f0;font-size:.8rem;font-weight:700;letter-spacing:.02em}
.client-logos-marquee-shell{margin:20px 0 18px}
.client-logos-label{margin:0 0 14px;color:#dfe7e7;font-size:.95rem;letter-spacing:.02em}
.client-logos-marquee{position:relative;width:100%;overflow:hidden;padding:4px 0 10px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.client-logos-track{display:flex;align-items:center;gap:18px;width:max-content;animation:keduinClientLogosMarquee 126s linear infinite;will-change:transform}
.client-logos-marquee:hover .client-logos-track,.client-logos-marquee:focus-within .client-logos-track{animation-play-state:paused}
.client-logo-item{flex:0 0 166px;min-width:166px;height:86px;display:flex;align-items:center;justify-content:center;padding:14px 16px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);box-shadow:0 10px 28px rgba(0,0,0,.14)}
.client-logo-item img{max-width:100%;max-height:100%;object-fit:contain;filter:grayscale(1) brightness(1.12);opacity:.96}
@keyframes keduinClientLogosMarquee{to{transform:translateX(calc(-50% - 9px))}}
@media(max-width:760px){.client-logo-item{flex-basis:138px;min-width:138px;height:76px;padding:12px 14px}.client-logos-track{animation-duration:138s}}
@media(prefers-reduced-motion:reduce){.client-logos-track{animation:none;transform:none}.client-logos-marquee{overflow-x:auto;mask-image:none;-webkit-mask-image:none}}


/* V65 — hero móvil sobre imagen, menú móvil mejorado y previews sin marco negro */
@media (max-width:760px){
  .home-hero .hero-grid{display:grid!important;grid-template-columns:1fr!important;gap:14px!important}
  .home-hero .hero-media{grid-row:1!important;order:1!important}
  .home-hero .hero-copy{grid-row:2!important;order:2!important}
  .hero-mobile-overlay{position:absolute;inset:auto 12px 12px 12px;display:block!important;padding:16px 16px 14px;border-radius:20px;background:linear-gradient(180deg,rgba(1,8,10,.14),rgba(1,8,10,.82) 26%,rgba(1,8,10,.94));backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 44px rgba(0,0,0,.28)}
  .hero-mobile-overlay .eyebrow{margin:0 0 8px!important;font-size:.68rem!important;letter-spacing:.12em!important;color:#b9ffff!important}
  .hero-mobile-title{margin:0 0 8px!important;font-size:1.28rem!important;line-height:1.08!important;color:#fff!important;font-weight:900!important;text-wrap:balance}
  .hero-mobile-subtitle{margin:0!important;font-size:.83rem!important;line-height:1.35!important;color:#dff7f6!important}
  .home-hero .hero-copy > .eyebrow,
  .home-hero .hero-copy > .hero-rotating-title,
  .home-hero .hero-copy > .hero-rotating-subtitle{display:none!important}
  .home-hero .hero-copy{padding-top:0!important}
  .home-hero .hero-support{font-size:.92rem!important;line-height:1.45!important;margin-top:0!important}
  .home-hero .hero-actions{gap:10px!important}
  .home-hero .hero-actions .btn{min-height:44px!important;padding:11px 14px!important;font-size:.86rem!important}
  .home-hero .home-socials{margin-top:12px!important}
  .home-hero .hero-indicators{margin-top:12px!important}
}
@media (min-width:761px){
  .hero-mobile-overlay{display:none!important}
}

@media (max-width:1180px){
  .site-header .navbar{position:relative!important;justify-content:flex-end!important;padding-inline:14px!important;background:linear-gradient(180deg,rgba(255,255,255,.085),rgba(255,255,255,.02) 42%),rgba(4,10,13,.72)!important}
  .site-header .brand{position:absolute!important;left:50%!important;transform:translateX(-50%)!important;margin:0!important;z-index:3!important}
  .site-header .nav-toggle{position:relative!important;z-index:4!important;margin-left:auto!important}
  .site-header .navbar.mobile-menu-open{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.015)),rgba(2,7,9,.94)!important;border-color:rgba(180,255,252,.22)!important;box-shadow:0 18px 48px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.1)!important}
  .site-header .nav-menu{padding:8px 8px 12px!important;max-height:calc(100dvh - 92px)!important}
  .site-header .nav-link,.site-header .nav-trigger,.site-header .nav-quote,.site-header .nav-cart-link,.site-header .nav-menu>a.nav-link:last-child{min-height:46px!important;padding:12px 14px!important;background:rgba(255,255,255,.03)!important;border-bottom:1px solid rgba(255,255,255,.08)!important}
  .site-header .nav-group.is-active>.mega-panel{display:block!important;margin-top:6px!important;padding:12px!important;border:1px solid rgba(24,213,208,.16)!important;border-radius:16px!important;background:rgba(3,10,12,.88)!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}
  .site-header .mega-col{padding:10px!important;border-radius:14px!important;background:rgba(255,255,255,.02)!important;border:1px solid rgba(255,255,255,.05)!important}
  .site-header .mega-col h4,.site-header .mega-col a{color:#f4ffff!important}
}
@media (max-width:640px){
  .site-header .brand-logo{width:56px!important;height:56px!important}
  .site-header .nav-menu{margin-top:10px!important}
}

/* Textos más concretos y legibles en móvil */
@media (max-width:760px){
  .section-head h2{font-size:1.62rem!important;line-height:1.1!important}
  .section-head p{font-size:.9rem!important;line-height:1.45!important;max-width:unset!important}
  .home-main-categories .section-head p:last-child{max-width:34ch!important}
  .main-category-card p,.offers-section .offer-card p,.portfolio-card-body p{font-size:.82rem!important;line-height:1.38!important;display:-webkit-box!important;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
}

/* Previews y tarjetas de portafolio sin fondo negro visible */
.portfolio-shot{padding:0!important;background:transparent!important;border:1px solid rgba(24,213,208,.42)!important;border-radius:22px!important;overflow:hidden!important}
.portfolio-shot img{display:block!important;width:100%!important;height:100%!important;aspect-ratio:16/10!important;object-fit:cover!important;object-position:top center!important;background:transparent!important;border:0!important;border-radius:0!important}
.preview-stage{padding:0!important;background:transparent!important;border:1px solid rgba(24,213,208,.38)!important;border-radius:22px!important;overflow:hidden!important}
.preview-stage img,.modal-card .preview-stage img,.modal-card-preview .preview-stage img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:top center!important;background:transparent!important;border-radius:0!important}
@media (max-width:760px){
  .portfolio-shot{border-radius:18px!important}
  .portfolio-shot img{aspect-ratio:16/11!important}
  .preview-stage{min-height:60vw!important;border-radius:18px!important}
}


/* V66 — hero equilibrado, legal con ecosistema y ajustes finales */
@media (min-width:981px){
  .home-hero .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:42px!important;align-items:center!important}
  .home-hero .hero-copy{max-width:100%!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
  .home-hero .hero-copy > .hero-rotating-title,
  .home-hero .hero-copy > .hero-rotating-subtitle,
  .home-hero .hero-copy > .hero-actions,
  .home-hero .hero-copy > .home-socials,
  .home-hero .hero-copy > .hero-indicators{max-width:560px!important}
  .hero-slide-media{width:100%!important;max-width:none!important;min-height:0!important;aspect-ratio:16/10!important}
}
@media (max-width:760px){
  .hero-mobile-overlay{padding:18px 16px 15px!important}
  .hero-mobile-title{font-size:1.22rem!important}
  .hero-mobile-subtitle{font-size:.8rem!important;line-height:1.32!important}
}

/* Centro legal con el mismo ecosistema tecnológico de fondo */
.legal-page .legal-hero,
.legal-page .legal-document-hero{
  background-image:
    linear-gradient(90deg,rgba(1,5,7,.93),rgba(1,5,7,.72) 48%,rgba(1,5,7,.90)),
    var(--bg-network-lines)!important;
  border-bottom:1px solid rgba(24,213,208,.08)!important;
}
.legal-page .legal-groups-section,
.legal-page .legal-document-section,
.legal-page .legal-process-section,
.legal-page .legal-subnav-wrap{
  background:transparent!important;
}
.legal-page .legal-subnav-wrap{
  background:rgba(2,8,11,.68)!important;
  backdrop-filter:blur(16px)!important;
  -webkit-backdrop-filter:blur(16px)!important;
}
.legal-page .legal-hero-summary,
.legal-page .legal-group-card,
.legal-page .legal-document-card,
.legal-page .legal-sidebar-card,
.legal-page .legal-help-card,
.legal-page .legal-process-steps div,
.legal-page .legal-document-links a{
  background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.01)),rgba(4,11,14,.78)!important;
}
.legal-page .legal-document-intro,
.legal-page .legal-stat-row div{
  background:rgba(24,213,208,.06)!important;
}


/* V67 — portadas V3 integradas y texto 20% menor */
@media (min-width:761px){
  .home-hero h1,
  .home-hero .hero-rotating-title{
    font-size:clamp(1.6rem,2.68vw,2.24rem)!important;
    line-height:1.06!important;
  }
  .home-hero .hero-rotating-subtitle{
    font-size:clamp(.8rem,.92vw,.92rem)!important;
    line-height:1.52!important;
  }
  .home-hero .hero-copy > .eyebrow{
    font-size:.64rem!important;
  }
}
@media (max-width:760px){
  .hero-mobile-title{
    font-size:.98rem!important;
    line-height:1.08!important;
  }
  .hero-mobile-subtitle{
    font-size:.64rem!important;
    line-height:1.34!important;
  }
  .hero-mobile-overlay .eyebrow{
    font-size:.58rem!important;
  }
}


/* ======================================================================
   V68 — hero secuenciado, Google Reviews y limpieza de bloques duplicados
   ====================================================================== */
.hero-rotating-title.is-typing::after{
  content:"";
  display:inline-block;
  width:2px;
  height:.88em;
  margin-left:5px;
  vertical-align:-.06em;
  border-radius:999px;
  background:var(--turquoise);
  box-shadow:0 0 12px rgba(24,213,208,.62);
  animation:keduinTypingCursor .72s steps(1,end) infinite;
}
@keyframes keduinTypingCursor{50%{opacity:0}}

@media (min-width:981px){
  .home-hero{padding:64px 0 58px!important}
  .home-hero .hero-grid{
    grid-template-columns:minmax(0,.94fr) minmax(0,1.06fr)!important;
    gap:42px!important;
    align-items:center!important;
  }
  .home-hero .hero-copy{
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
    align-self:center!important;
  }
  .home-hero .hero-copy>.eyebrow{margin:0 0 12px!important}
  .home-hero .hero-rotating-title{
    min-height:3.15em!important;
    margin:0!important;
    text-wrap:balance;
  }
  .home-hero .hero-rotating-subtitle{
    min-height:3.35em!important;
    margin:14px 0 0!important;
    max-width:600px!important;
  }
  .home-hero .hero-actions{margin:18px 0 16px!important}
  .home-hero .home-socials{margin-top:0!important}
  .home-hero .hero-indicators{margin-top:14px!important}
  .home-hero .hero-slide-media{
    align-self:center!important;
    aspect-ratio:16/10!important;
    min-height:0!important;
  }
}

@media (max-width:760px){
  .home-hero{padding:30px 0 46px!important}
  .home-hero .hero-grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:0!important;
    align-items:start!important;
  }
  .home-hero .hero-copy{display:contents!important}
  .home-hero .hero-copy>.eyebrow{
    display:block!important;
    grid-column:1!important;
    grid-row:1!important;
    margin:0 0 10px!important;
    font-size:.65rem!important;
    line-height:1.35!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    display:block!important;
    grid-column:1!important;
    grid-row:2!important;
    min-height:0!important;
    margin:0 0 17px!important;
    font-size:clamp(1.55rem,7.2vw,2rem)!important;
    line-height:1.08!important;
    text-wrap:balance;
  }
  .home-hero .hero-slide-media{
    grid-column:1!important;
    grid-row:3!important;
    order:initial!important;
    width:100%!important;
    margin:0 0 18px!important;
    aspect-ratio:16/10!important;
    border-radius:24px!important;
  }
  .home-hero .hero-slide-media figcaption,
  .home-hero .hero-mobile-overlay{display:none!important}
  .home-hero .hero-copy>.hero-rotating-subtitle{
    display:block!important;
    grid-column:1!important;
    grid-row:4!important;
    min-height:0!important;
    margin:0 0 17px!important;
    font-size:.92rem!important;
    line-height:1.5!important;
    color:#dceeee!important;
  }
  .home-hero .hero-copy>.hero-actions{
    grid-column:1!important;
    grid-row:5!important;
    margin:0 0 17px!important;
    gap:10px!important;
  }
  .home-hero .hero-copy>.hero-actions .btn{flex:1 1 145px!important}
  .home-hero .hero-copy>.home-socials{
    grid-column:1!important;
    grid-row:6!important;
    margin:0 0 14px!important;
  }
  .home-hero .hero-copy>.hero-indicators{
    grid-column:1!important;
    grid-row:7!important;
    margin:0!important;
  }
  .keduin-home-intro{padding-top:54px!important}
  .keduin-home-intro-grid{gap:28px!important}
}

/* Bloque independiente para las calificaciones de Google. */
.google-reviews-proof{
  display:grid;
  grid-template-columns:minmax(230px,.72fr) minmax(0,1.28fr);
  gap:30px;
  align-items:center;
  margin-top:30px;
  padding:28px 30px;
  border:1px solid rgba(24,213,208,.23);
  border-radius:28px;
  background:linear-gradient(135deg,rgba(255,255,255,.055),rgba(24,213,208,.045)),rgba(4,13,16,.72);
  box-shadow:0 24px 64px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.08);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.google-reviews-visual{display:flex;align-items:center;justify-content:center;min-width:0}
.google-reviews-visual img{width:min(100%,440px);height:auto;object-fit:contain;filter:drop-shadow(0 12px 28px rgba(0,0,0,.24))}
.google-reviews-copy h3{margin:0 0 10px;font-size:clamp(1.4rem,2.1vw,2rem)}
.google-reviews-copy>p:not(.eyebrow){margin:0;color:#c8dddd;max-width:720px}
.google-reviews-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}
.google-review-write.is-pending{opacity:.52;cursor:not-allowed;pointer-events:none;filter:saturate(.45)}
@media(max-width:820px){
  .google-reviews-proof{grid-template-columns:1fr;padding:22px;gap:18px;text-align:center}
  .google-reviews-visual img{width:min(100%,360px)}
  .google-reviews-actions{justify-content:center}
}
@media(max-width:520px){
  .google-reviews-proof{padding:18px;border-radius:22px}
  .google-reviews-actions{display:grid;grid-template-columns:1fr}
  .google-reviews-actions .btn{width:100%}
}

/* Planes: una sola introducción, sin el encabezado duplicado. */
.plans-page .plans-monthly-section{padding-top:70px!important}
.plans-page .plans-monthly-section>.container>.section-head{max-width:900px!important}

/* Nosotros: navegación secundaria completamente transparente. */
.nosotros-page .about-section-nav-wrap,
.nosotros-page .about-side-nav-wrap{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.nosotros-page .about-section-nav{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 0!important;
}
.nosotros-page .about-section-nav a{background:transparent!important;border:1px solid transparent!important}
.nosotros-page .about-section-nav a:hover,
.nosotros-page .about-section-nav a:focus{
  background:rgba(24,213,208,.10)!important;
  border-color:rgba(24,213,208,.22)!important;
}

/* Cotización: un solo encabezado, sin caja negra ni recomendación duplicada. */
.cotizar-page .quote-intro-transparent{
  padding:54px 0 30px!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.cotizar-page .quote-intro-transparent>.container{
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}


/* ======================================================================
   V69 — menú móvil premium, carruseles continuos y ajustes visuales
   ====================================================================== */
body.mobile-menu-open{
  overflow:hidden!important;
}

@media (max-width:980px){
  .site-header .navbar{
    position:relative!important;
    min-height:74px!important;
    height:auto!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:12px!important;
    padding:10px 0!important;
    flex-wrap:nowrap!important;
  }
  .site-header .brand{
    position:relative!important;
    left:auto!important;
    transform:none!important;
    margin-right:auto!important;
    z-index:1004!important;
  }
  .site-header .nav-toggle{
    margin-left:0!important;
    flex:0 0 auto!important;
    width:46px!important;
    height:46px!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.06)!important;
    border-color:rgba(24,213,208,.28)!important;
    box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
  }
  .site-header .nav-menu{
    position:fixed!important;
    top:84px!important;
    left:10px!important;
    right:10px!important;
    bottom:10px!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:8px!important;
    margin:0!important;
    padding:12px!important;
    max-height:none!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.025) 18%,rgba(255,255,255,.015) 100%),rgba(2,10,12,.985)!important;
    border:1px solid rgba(24,213,208,.30)!important;
    border-radius:26px!important;
    box-shadow:0 28px 80px rgba(0,0,0,.72),inset 0 1px 0 rgba(255,255,255,.08)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    z-index:1003!important;
  }
  .site-header .nav-menu.is-open{display:flex!important}
  .site-header .nav-link,
  .site-header .nav-trigger,
  .site-header .nav-quote,
  .site-header .nav-cart-link,
  .site-header .nav-menu>a.nav-link:last-child{
    width:100%!important;
    min-height:46px!important;
    justify-content:space-between!important;
    padding:12px 14px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.035)!important;
    box-shadow:none!important;
  }
  .site-header .nav-quote{justify-content:center!important}
  .site-header .nav-service-search{
    width:100%!important;
    order:98!important;
    margin-top:4px!important;
  }
  .site-header .nav-service-search input{
    min-height:44px!important;
  }
  .site-header .nav-group{
    display:block!important;
    width:100%!important;
  }
  .site-header .nav-group.is-active>.mega-panel,
  .site-header .mega-panel,
  .site-header .mega-panel.compact{
    position:static!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    width:100%!important;
    max-height:none!important;
    margin-top:8px!important;
    padding:12px!important;
    display:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    border-radius:18px!important;
    background:rgba(3,12,15,.92)!important;
    border:1px solid rgba(24,213,208,.18)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  }
  .site-header .nav-group.is-active>.mega-panel{display:block!important}
  .site-header .mega-grid,
  .site-header .mega-grid.three-cols,
  .site-header .mega-grid.two-cols,
  .site-header .mega-grid.four-cols{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .site-header .mega-col{
    padding:0!important;
    border:0!important;
    background:transparent!important;
    border-radius:0!important;
  }
  .site-header .mega-col h4{
    padding:2px 4px 4px!important;
    margin:0 0 2px!important;
  }
  .site-header .mega-col a{
    padding:10px 12px!important;
    border-bottom:0!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.03)!important;
    border:1px solid rgba(255,255,255,.07)!important;
  }
  .site-header .menu-category-link{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
  }
  .site-header .menu-category-link img{
    width:28px!important;
    height:28px!important;
    flex:0 0 28px!important;
    object-fit:contain!important;
  }
}

@media (max-width:640px){
  .site-header .brand-logo{
    width:50px!important;
    height:50px!important;
  }
  .site-header .nav-menu{
    top:78px!important;
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    border-radius:22px!important;
    padding:10px!important;
  }
  .site-header .nav-link,
  .site-header .nav-trigger,
  .site-header .nav-quote,
  .site-header .nav-cart-link,
  .site-header .nav-menu>a.nav-link:last-child{
    min-height:44px!important;
    padding:11px 12px!important;
    font-size:.87rem!important;
  }
  .site-header .menu-category-link img{display:none!important}
}

/* FAQ con fondo integrado al ecosistema general del sitio. */
.faq-page .kfaq-shell{
  position:relative;
  min-height:100vh;
  background:transparent!important;
  overflow:hidden;
  isolation:isolate;
}
.faq-page .kfaq-shell::before,
.faq-page .kfaq-shell::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
}
.faq-page .kfaq-shell::before{
  background:
    radial-gradient(circle at 16% 8%,rgba(24,213,208,.12),transparent 28%),
    radial-gradient(circle at 84% 18%,rgba(24,213,208,.08),transparent 24%),
    repeating-linear-gradient(105deg,transparent 0 68px,rgba(24,213,208,.028) 69px 70px);
  animation:kfaqAmbientDrift 24s linear infinite;
  opacity:.85;
}
.faq-page .kfaq-shell::after{
  inset:-12% -10%;
  background:
    radial-gradient(circle at 22% 22%,rgba(24,213,208,.10),transparent 20%),
    radial-gradient(circle at 72% 46%,rgba(98,255,248,.07),transparent 20%),
    radial-gradient(circle at 50% 88%,rgba(24,213,208,.06),transparent 18%);
  filter:blur(14px);
  animation:kfaqAmbientPulse 18s ease-in-out infinite alternate;
}
@keyframes kfaqAmbientDrift{
  0%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(-18px,10px,0)}
  100%{transform:translate3d(0,0,0)}
}
@keyframes kfaqAmbientPulse{
  0%{transform:scale(1);opacity:.72}
  100%{transform:scale(1.06);opacity:.95}
}
.faq-page .kfaq-hero,
.faq-page .kfaq-panel,
.faq-page .kfaq-hero__bg{
  background:transparent!important;
}
.faq-page .kfaq-sidebar,
.faq-page .kfaq-item,
.faq-page .kfaq-search{
  background:linear-gradient(135deg,rgba(8,22,28,.84),rgba(255,255,255,.035))!important;
  border-color:rgba(24,213,208,.22)!important;
  box-shadow:0 18px 58px rgba(0,0,0,.28)!important;
}

/* Carrusel Nosotros totalmente limpio, sin franja negra posterior. */
.nosotros-page .about-section-nav-wrap,
.nosotros-page .about-side-nav-wrap,
.nosotros-page .about-anchor-nav,
.nosotros-page .about-anchor-title{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
.nosotros-page .about-section-nav{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:8px 0!important;
}
.nosotros-page .about-section-nav a{
  background:rgba(255,255,255,.025)!important;
  border:1px solid rgba(24,213,208,.12)!important;
}
.nosotros-page .about-section-nav a:hover,
.nosotros-page .about-section-nav a:focus{
  background:rgba(24,213,208,.10)!important;
  border-color:rgba(24,213,208,.22)!important;
}

/* Carruseles home/reviews: asegurar avance continuo con flechas. */
.reviews-track.v60-controlled-track,
.home-portfolio-grid.v60-controlled-track{
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
}

/* Calificaciones de Google más equilibradas en móvil. */
@media(max-width:820px){
  .google-reviews-proof{padding:22px 20px!important}
  .google-reviews-visual img{width:min(100%,280px)!important}
}
@media(max-width:520px){
  .google-reviews-visual img{width:min(100%,232px)!important}
}


/* ======================================================================
   V70 — escritura del título más suave, lenta y progresiva
   ====================================================================== */
.hero-rotating-title.is-soft-typing{
  text-rendering:optimizeLegibility;
}
.hero-rotating-title .hero-typed-char{
  display:inline;
  opacity:0;
  filter:blur(1.2px);
  animation:keduinSoftTypedChar .34s cubic-bezier(.22,.61,.36,1) forwards;
}
@keyframes keduinSoftTypedChar{
  0%{opacity:0;filter:blur(1.2px)}
  100%{opacity:1;filter:blur(0)}
}
.hero-rotating-title.is-typing::after{
  width:1px!important;
  height:.74em!important;
  margin-left:4px!important;
  background:rgba(98,255,248,.58)!important;
  box-shadow:none!important;
  animation:keduinSoftCursor 1.15s ease-in-out infinite!important;
}
@keyframes keduinSoftCursor{
  0%,100%{opacity:.25}
  50%{opacity:.7}
}
@media(max-width:760px){
  .hero-rotating-title .hero-typed-char{
    animation-duration:.38s;
  }
}
@media(prefers-reduced-motion:reduce){
  .hero-rotating-title .hero-typed-char{
    opacity:1!important;
    filter:none!important;
    animation:none!important;
  }
}


/* ======================================================================
   V71 — política de devoluciones, footer legal y aceptación en cotización
   ====================================================================== */
.footer-legal-return-link{
  display:inline-flex!important;
  width:max-content;
  margin-top:8px!important;
  color:#d8f8f6!important;
  font-size:.82rem;
  font-weight:850;
  text-decoration:underline;
  text-underline-offset:4px;
}
.footer-legal-return-link:hover{color:var(--turquoise)!important}
.legal-consent{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr);
  gap:10px!important;
  align-items:start;
  margin:4px 0 2px;
  padding:14px 15px;
  border:1px solid rgba(24,213,208,.22);
  border-radius:16px;
  background:rgba(24,213,208,.055);
  color:#d8e8e9;
  font-size:.86rem;
  line-height:1.55;
}
.legal-consent input{width:18px!important;height:18px!important;margin:2px 0 0!important;accent-color:var(--turquoise)}
.legal-consent a,.quote-policy-note a{color:#6ef4ee;text-decoration:underline;text-underline-offset:3px}
.quote-policy-note{line-height:1.6!important}
@media(max-width:520px){.legal-consent{padding:12px;font-size:.82rem}}


/* ======================================================================
   V72 — cápsula móvil reparada, carruseles automáticos y Google reducido
   ====================================================================== */
@media (max-width:1180px){
  .site-header{
    top:0!important;
    padding:7px 8px 0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }
  .site-header .navbar.container{
    position:relative!important;
    width:calc(100% - 4px)!important;
    max-width:1180px!important;
    min-height:70px!important;
    height:auto!important;
    margin:0 auto!important;
    padding:8px 10px!important;
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    overflow:visible!important;
    border:1px solid rgba(182,255,252,.28)!important;
    border-radius:25px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.105),rgba(255,255,255,.022) 58%),rgba(3,11,14,.80)!important;
    box-shadow:0 16px 48px rgba(0,0,0,.40),inset 0 1px 0 rgba(255,255,255,.17)!important;
    backdrop-filter:blur(24px) saturate(150%)!important;
    -webkit-backdrop-filter:blur(24px) saturate(150%)!important;
    pointer-events:auto!important;
  }
  .site-header .brand{
    position:static!important;
    inset:auto!important;
    left:auto!important;
    top:auto!important;
    transform:none!important;
    order:1!important;
    flex:0 0 auto!important;
    margin:0 auto 0 0!important;
    z-index:2!important;
  }
  .site-header .brand-logo{
    width:52px!important;
    height:52px!important;
    object-fit:contain!important;
  }
  .site-header .nav-toggle{
    position:static!important;
    inset:auto!important;
    order:2!important;
    display:flex!important;
    flex:0 0 46px!important;
    width:46px!important;
    height:46px!important;
    margin:0!important;
    z-index:2!important;
    border:1px solid rgba(24,213,208,.28)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.055)!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.10)!important;
  }
  .site-header .navbar.mobile-menu-open{
    max-height:calc(100dvh - 14px)!important;
    overflow:hidden!important;
    border-radius:27px!important;
  }
  .site-header .nav-menu{
    position:static!important;
    inset:auto!important;
    order:10!important;
    flex:0 0 100%!important;
    width:100%!important;
    display:none!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:7px!important;
    max-height:calc(100dvh - 96px)!important;
    margin:2px 0 0!important;
    padding:8px 2px 3px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    border:0!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
    z-index:1!important;
  }
  .site-header .nav-menu.is-open{display:flex!important}
  .site-header .nav-link,
  .site-header .nav-trigger,
  .site-header .nav-quote,
  .site-header .nav-cart-link,
  .site-header .nav-menu>a.nav-link:last-child{
    width:100%!important;
    min-height:45px!important;
    padding:11px 13px!important;
    justify-content:space-between!important;
    border:1px solid rgba(255,255,255,.085)!important;
    border-radius:14px!important;
    background:rgba(255,255,255,.028)!important;
    box-shadow:none!important;
  }
  .site-header .nav-quote{justify-content:center!important;background:rgba(24,213,208,.92)!important;color:#001314!important}
  .site-header .nav-group{display:block!important;width:100%!important}
  .site-header .mega-panel,
  .site-header .mega-panel.compact,
  .site-header .nav-group.is-active>.mega-panel{
    position:static!important;
    inset:auto!important;
    left:auto!important;
    top:auto!important;
    width:100%!important;
    max-height:none!important;
    margin:6px 0 0!important;
    padding:8px!important;
    display:none!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
    border:1px solid rgba(24,213,208,.14)!important;
    border-radius:16px!important;
    background:rgba(1,8,11,.54)!important;
    box-shadow:none!important;
    backdrop-filter:none!important;
    -webkit-backdrop-filter:none!important;
  }
  .site-header .nav-group.is-active>.mega-panel{display:block!important}
  .site-header .mega-grid,
  .site-header .mega-grid.two-cols,
  .site-header .mega-grid.three-cols,
  .site-header .mega-grid.four-cols{grid-template-columns:1fr!important;gap:8px!important}
  .site-header .mega-col{padding:0!important;border:0!important;background:transparent!important}
  .site-header .mega-col a{padding:9px 11px!important;border-radius:12px!important}
}
@media (max-width:520px){
  .site-header{padding-inline:5px!important}
  .site-header .navbar.container{width:100%!important;padding:7px 9px!important;border-radius:22px!important}
  .site-header .brand-logo{width:48px!important;height:48px!important}
  .site-header .nav-toggle{width:44px!important;height:44px!important;flex-basis:44px!important}
  .site-header .navbar.mobile-menu-open{border-radius:24px!important}
  .site-header .nav-menu{max-height:calc(100dvh - 88px)!important}
}

/* Movimiento continuo: no se detiene por pasar el mouse encima. */
.home-portfolio-marquee-viewport,
.reviews-marquee-viewport,
.portfolio-page-marquee-viewport{
  overflow:hidden!important;
  touch-action:pan-y!important;
}
.home-portfolio-grid.v72-controlled-track,
.reviews-track.v72-controlled-track,
.portfolio-page-marquee-track.v72-controlled-track{
  animation:none!important;
  transform:none!important;
  will-change:auto!important;
}
.home-portfolio-marquee-viewport:hover .home-portfolio-marquee-track,
.reviews-marquee-viewport:hover .reviews-marquee-track,
.portfolio-page-marquee-viewport:hover .portfolio-page-marquee-track{
  animation-play-state:running!important;
}

/* Portafolio completo también pasa lentamente de derecha a izquierda. */
.portfolio-page-control-row{justify-content:flex-end!important;margin:0 0 14px!important}
.portfolio-page-marquee-viewport{
  width:100%;
  padding:4px 0 18px;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 2%,#000 98%,transparent);
}
#portfolioGrid.portfolio-page-marquee-track{
  --portfolio-page-card:calc((min(100vw - 40px,1180px) - 36px)/3);
  display:flex!important;
  width:max-content!important;
  grid-template-columns:none!important;
  gap:18px!important;
  padding:0!important;
}
#portfolioGrid.portfolio-page-marquee-track>.portfolio-card{
  flex:0 0 var(--portfolio-page-card)!important;
  width:var(--portfolio-page-card)!important;
  max-width:var(--portfolio-page-card)!important;
}
@media(max-width:900px){
  #portfolioGrid.portfolio-page-marquee-track{--portfolio-page-card:72vw}
}
@media(max-width:560px){
  #portfolioGrid.portfolio-page-marquee-track{--portfolio-page-card:84vw;gap:12px!important}
}

/* Google + cinco estrellas: reducción aproximada de 35 %. */
.google-reviews-visual img{
  width:min(100%,286px)!important;
  max-width:286px!important;
}
@media(max-width:820px){
  .google-reviews-visual img{width:min(100%,205px)!important;max-width:205px!important}
}
@media(max-width:520px){
  .google-reviews-visual img{width:min(100%,178px)!important;max-width:178px!important}
}


/* ======================================================================
   V73 — hero móvil más limpio y menú móvil con bordes más suaves
   ====================================================================== */
@media (max-width:760px){
  .container{width:min(100% - 24px,var(--container))!important}
  .home-hero{padding:24px 0 42px!important}
  .home-hero .hero-grid{gap:0!important}
  .home-hero .hero-copy>.hero-rotating-title{
    font-size:clamp(1.42rem,6.4vw,1.8rem)!important;
    line-height:1.08!important;
    margin:0 0 14px!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    font-size:.88rem!important;
    line-height:1.44!important;
    margin:0 0 15px!important;
  }
  .home-hero .hero-copy>.hero-actions .btn{
    flex:1 1 100%!important;
    width:100%!important;
  }
  .home-hero .hero-slide-media{
    position:relative!important;
    overflow:hidden!important;
    margin:0 0 16px!important;
    aspect-ratio:16/10!important;
    max-width:100%!important;
    border-radius:22px!important;
    background:#061014!important;
    box-shadow:0 18px 42px rgba(0,0,0,.20)!important;
  }
  .home-hero .hero-slide-media::before{
    content:none!important;
  }
  .home-hero .hero-slide-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center center!important;
    background:#061014!important;
    filter:none!important;
  }
  .home-hero .hero-copy>.home-socials,
  .home-hero .hero-copy>.hero-indicators{
    justify-content:flex-start!important;
  }
}
@media (max-width:420px){
  .home-hero .hero-slide-media{
    border-radius:20px!important;
    aspect-ratio:1.62 / 1!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    font-size:clamp(1.3rem,6.1vw,1.62rem)!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    font-size:.84rem!important;
  }
}

@media (max-width:980px){
  .site-header{
    padding-inline:8px!important;
  }
  .site-header .navbar.container{
    width:100%!important;
    padding:8px 10px!important;
    border-radius:26px!important;
  }
  .site-header .navbar.mobile-menu-open{
    border-radius:28px!important;
    padding-bottom:10px!important;
  }
  .site-header .nav-menu{
    margin:6px 0 0!important;
    padding:10px 6px 6px!important;
    border-top:1px solid rgba(255,255,255,.08)!important;
  }
  .site-header .nav-link,
  .site-header .nav-trigger,
  .site-header .nav-quote,
  .site-header .nav-cart-link,
  .site-header .nav-menu>a.nav-link:last-child{
    min-height:47px!important;
    padding:12px 14px!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.025))!important;
    border:1px solid rgba(255,255,255,.10)!important;
  }
  .site-header .mega-panel,
  .site-header .mega-panel.compact,
  .site-header .nav-group.is-active>.mega-panel{
    margin:8px 0 2px!important;
    padding:10px!important;
    border-radius:20px!important;
    background:rgba(2,10,13,.62)!important;
    border:1px solid rgba(24,213,208,.15)!important;
  }
  .site-header .mega-col{
    padding:0!important;
    background:transparent!important;
    border:0!important;
  }
  .site-header .mega-col h4{
    padding:4px 4px 2px!important;
    margin:0 0 4px!important;
  }
  .site-header .mega-col a{
    display:block!important;
    padding:11px 12px!important;
    border-radius:15px!important;
    background:rgba(255,255,255,.028)!important;
    border:1px solid rgba(255,255,255,.07)!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    line-height:1.28!important;
  }
  .site-header .menu-category-link,
  .services-mega .mega-col .menu-category-link{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    grid-template-columns:none!important;
  }
  .site-header .menu-category-link img,
  .services-mega .mega-col .menu-category-link img{
    width:28px!important;
    height:28px!important;
    flex:0 0 28px!important;
  }
  .site-header .menu-category-link span,
  .site-header .mega-col a span{
    display:block!important;
    min-width:0!important;
    white-space:normal!important;
    word-break:keep-all!important;
    overflow-wrap:break-word!important;
    line-height:1.24!important;
  }
}
@media (max-width:520px){
  .site-header{padding-inline:6px!important}
  .site-header .navbar.container{
    padding:8px 10px!important;
    border-radius:24px!important;
  }
  .site-header .navbar.mobile-menu-open{
    border-radius:26px!important;
  }
  .site-header .nav-menu{
    padding:10px 5px 4px!important;
    max-height:calc(100dvh - 90px)!important;
  }
  .site-header .nav-link,
  .site-header .nav-trigger,
  .site-header .nav-quote,
  .site-header .nav-cart-link,
  .site-header .nav-menu>a.nav-link:last-child{
    min-height:45px!important;
    border-radius:17px!important;
  }
  .site-header .mega-panel,
  .site-header .mega-panel.compact,
  .site-header .nav-group.is-active>.mega-panel{
    border-radius:18px!important;
    padding:8px!important;
  }
  .site-header .menu-category-link img,
  .services-mega .mega-col .menu-category-link img{display:none!important}
  .site-header .mega-col a{
    padding:10px 11px!important;
    border-radius:14px!important;
  }
}


/* ======================================================================
   V74 — portada solo texto, fondo más fuerte y transición por desvanecido
   ====================================================================== */
.home-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate;
  padding:72px 0 68px!important;
  background:
    radial-gradient(circle at 14% 18%,rgba(24,213,208,.18),transparent 28%),
    radial-gradient(circle at 78% 20%,rgba(24,213,208,.12),transparent 24%),
    linear-gradient(180deg,rgba(1,8,10,.96),rgba(2,10,13,.90) 54%,rgba(2,10,13,.82));
}
.home-hero::before,
.home-hero::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:-1;
}
.home-hero::before{
  background:
    repeating-linear-gradient(102deg,transparent 0 76px,rgba(24,213,208,.055) 77px 78px),
    repeating-linear-gradient(0deg,transparent 0 82px,rgba(24,213,208,.03) 83px 84px);
  opacity:.9;
}
.home-hero::after{
  inset:-8% -6%;
  background:
    radial-gradient(circle at 12% 16%,rgba(24,213,208,.18),transparent 18%),
    radial-gradient(circle at 82% 28%,rgba(24,213,208,.10),transparent 18%),
    radial-gradient(circle at 62% 78%,rgba(24,213,208,.08),transparent 22%);
  filter:blur(12px);
  animation:v74HeroAmbient 16s ease-in-out infinite alternate;
}
@keyframes v74HeroAmbient{
  0%{transform:translate3d(0,0,0) scale(1)}
  100%{transform:translate3d(-10px,8px,0) scale(1.04)}
}
.home-hero .hero-grid{display:block!important}
.home-hero .hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  gap:0!important;
  max-width:900px!important;
}
.home-hero .hero-slide-media,
.home-hero .hero-media{display:none!important}
.home-hero .hero-copy>.eyebrow,
.home-hero .hero-copy>.hero-rotating-title,
.home-hero .hero-copy>.hero-rotating-subtitle,
.home-hero .hero-copy>.hero-actions,
.home-hero .hero-copy>.home-socials,
.home-hero .hero-copy>.hero-indicators{max-width:820px!important}
.home-hero .hero-copy>.eyebrow{display:block!important;margin:0 0 14px!important}
.home-hero .hero-copy>.hero-rotating-title{
  display:block!important;
  min-height:2.6em!important;
  margin:0 0 18px!important;
  font-size:clamp(1.9rem,3.3vw,3rem)!important;
  line-height:1.05!important;
  letter-spacing:-.02em!important;
  text-wrap:balance;
}
.home-hero .hero-copy>.hero-rotating-subtitle{
  display:block!important;
  min-height:4.3em!important;
  margin:0 0 22px!important;
  font-size:clamp(.95rem,1.14vw,1.14rem)!important;
  line-height:1.58!important;
  color:#def1f0!important;
}
.home-hero .hero-copy>.hero-actions{margin:0 0 18px!important}
.home-hero .hero-copy>.home-socials{margin:0 0 12px!important}
.home-hero .hero-copy>.hero-indicators{display:none!important}
.hero-rotating-title.is-typing::after,
.hero-rotating-title.is-soft-typing::after,
.hero-rotating-title .hero-typed-char{
  animation:none!important;
  opacity:1!important;
  filter:none!important;
}
.home-hero [data-hero-eyebrow],
.home-hero [data-hero-title],
.home-hero [data-hero-subtitle]{transition:opacity .52s ease,transform .52s ease,filter .52s ease}
.home-hero [data-hero-eyebrow].is-fading-out,
.home-hero [data-hero-title].is-fading-out,
.home-hero [data-hero-subtitle].is-fading-out{
  opacity:0!important;
  transform:translateY(8px)!important;
  filter:blur(4px)!important;
}
.home-hero [data-hero-eyebrow].is-fading-in,
.home-hero [data-hero-title].is-fading-in,
.home-hero [data-hero-subtitle].is-fading-in{
  opacity:1!important;
  transform:translateY(0)!important;
  filter:blur(0)!important;
}
@media (max-width:980px){
  .home-hero{padding:54px 0 52px!important}
  .home-hero .hero-copy>.hero-rotating-title{font-size:clamp(1.62rem,5.1vw,2.38rem)!important;min-height:3.05em!important}
  .home-hero .hero-copy>.hero-rotating-subtitle{min-height:5.2em!important;font-size:.98rem!important}
}
@media (max-width:760px){
  .home-hero{padding:42px 0 44px!important}
  .home-hero .hero-grid,
  .home-hero .hero-copy{display:flex!important;flex-direction:column!important}
  .home-hero .hero-copy>.eyebrow{margin:0 0 10px!important;font-size:.67rem!important;line-height:1.35!important}
  .home-hero .hero-copy>.hero-rotating-title{min-height:3.2em!important;margin:0 0 14px!important;font-size:clamp(1.42rem,7.2vw,1.92rem)!important;line-height:1.08!important}
  .home-hero .hero-copy>.hero-rotating-subtitle{min-height:6.1em!important;margin:0 0 16px!important;font-size:.92rem!important;line-height:1.5!important}
  .home-hero .hero-copy>.hero-actions{gap:10px!important;margin:0 0 16px!important}
  .home-hero .hero-copy>.hero-actions .btn{width:100%!important;flex:1 1 100%!important}
  .home-hero .hero-copy>.home-socials{margin:0 0 8px!important}
}
@media (prefers-reduced-motion:reduce){
  .home-hero::after{animation:none!important}
  .home-hero [data-hero-eyebrow],
  .home-hero [data-hero-title],
  .home-hero [data-hero-subtitle]{transition:none!important}
}


/* ======================================================================
   V75 — enlaces Google y portafolios móviles en dos columnas
   ====================================================================== */
.google-review-write.is-pending{
  opacity:1!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  filter:none!important;
}

@media (max-width:760px){
  /* Inicio: todas las webs visibles en una grilla compacta 2 x N. */
  .home-portfolio-control-row{display:none!important}
  #homePortfolioGrid.home-portfolio-mobile-grid,
  .home-portfolio-grid.home-portfolio-mobile-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    overflow:visible!important;
    transform:none!important;
    animation:none!important;
  }
  .home-portfolio-mobile-grid>.portfolio-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    border-radius:17px!important;
  }
  .home-portfolio-mobile-grid .portfolio-shot{
    border-radius:16px!important;
  }
  .home-portfolio-mobile-grid .portfolio-shot img{
    aspect-ratio:16/11!important;
  }
  .home-portfolio-mobile-grid .portfolio-card-body{
    padding:9px!important;
  }
  .home-portfolio-mobile-grid .portfolio-card-body h3{
    margin:4px 0 0!important;
    font-size:.78rem!important;
    line-height:1.14!important;
  }
  .home-portfolio-mobile-grid .category{
    font-size:.58rem!important;
    line-height:1.2!important;
  }
  .home-portfolio-mobile-grid .portfolio-card-body p,
  .home-portfolio-mobile-grid .portfolio-card-actions{
    display:none!important;
  }
  .home-portfolio-mobile-grid+.center-actions,
  #homePortfolioGrid+.center-actions{
    margin-top:20px!important;
  }

  /* Portafolio completo: todos los proyectos en dos columnas. */
  .portfolio-page-control-row,
  .portfolio-page-marquee-viewport>.portfolio-page-control-row{
    display:none!important;
  }
  .portfolio-page .portfolio-page-marquee-viewport{
    overflow:visible!important;
    padding:0!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid,
  .portfolio-page #portfolioGrid.portfolio-mobile-two-column-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    width:100%!important;
    overflow:visible!important;
    transform:none!important;
    animation:none!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid>.portfolio-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    border-radius:17px!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid .portfolio-card-body{
    padding:9px!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid .portfolio-card-body h3{
    margin:4px 0 0!important;
    font-size:.76rem!important;
    line-height:1.15!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid .category{
    font-size:.56rem!important;
    line-height:1.18!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid .portfolio-card-body p,
  #portfolioGrid.portfolio-mobile-two-column-grid .portfolio-card-actions{
    display:none!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid .portfolio-shot{
    border-radius:16px!important;
  }
  #portfolioGrid.portfolio-mobile-two-column-grid .portfolio-shot img{
    aspect-ratio:16/11!important;
  }
  .portfolio-more-actions{
    margin-top:22px!important;
  }

  /* Ejemplos Website Builder también en dos columnas y sin recorte. */
  .portfolio-page .builder-portfolio-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    max-height:none!important;
    overflow:visible!important;
    padding:0!important;
  }
  .portfolio-page .builder-card{
    min-width:0!important;
    min-height:0!important;
    padding:11px!important;
    border-radius:17px!important;
  }
  .portfolio-page .builder-card h3{
    font-size:.78rem!important;
    line-height:1.15!important;
  }
  .portfolio-page .builder-card p{
    display:none!important;
  }
  .portfolio-page .builder-domain{
    font-size:.65rem!important;
    overflow-wrap:anywhere!important;
  }
  .portfolio-page .builder-card-actions{
    margin-top:auto!important;
    gap:6px!important;
  }
  .portfolio-page .builder-card-actions .btn{
    min-height:36px!important;
    padding:7px 6px!important;
    font-size:.62rem!important;
  }
}


/* ======================================================================
   V76 — fondo tecnológico uniforme y portada completamente centrada
   ====================================================================== */
html,
body{
  background:#01090c!important;
}

/* Una sola intensidad visual en todas las áreas y páginas. */
body main,
body main>section,
body main>.section,
body main>.page-hero,
body main>.dark-panel,
body main>.offers-section,
body main>.client-reviews-section,
body main>.home-main-categories,
body main>.home-cart-manager,
body main>#catalogo-servicios,
body main>.store-direct-section,
.faq-page .kfaq-shell,
.faq-page .kfaq-hero,
.faq-page .kfaq-panel,
.legal-page .legal-hero,
.legal-page .legal-document-hero,
.legal-page .legal-groups-section,
.legal-page .legal-document-section,
.legal-page .legal-process-section,
.nosotros-page .about-content-main>.section{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border-top-color:transparent!important;
  border-bottom-color:transparent!important;
}

/* Desactivar fondos decorativos exclusivos que generaban cortes entre secciones. */
.home-hero::before,
.home-hero::after,
.faq-page .kfaq-shell::before,
.faq-page .kfaq-shell::after,
.faq-page .kfaq-hero__bg{
  content:none!important;
  display:none!important;
  background:none!important;
  animation:none!important;
}

.home-hero{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  padding:78px 0 72px!important;
}

/* El bloque completo de portada queda centrado y equilibrado. */
.home-hero .hero-grid{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
}
.home-hero .hero-copy{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  max-width:960px!important;
  margin:0 auto!important;
  text-align:center!important;
}
.home-hero .hero-copy>.eyebrow,
.home-hero .hero-copy>.hero-rotating-title,
.home-hero .hero-copy>.hero-rotating-subtitle,
.home-hero .hero-copy>.hero-actions,
.home-hero .hero-copy>.home-socials{
  width:100%!important;
  max-width:880px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  text-align:center!important;
}
.home-hero .hero-copy>.eyebrow{
  margin-bottom:14px!important;
}
.home-hero .hero-copy>.hero-rotating-title{
  margin-bottom:18px!important;
  text-wrap:balance!important;
}
.home-hero .hero-copy>.hero-rotating-subtitle{
  max-width:760px!important;
  margin-bottom:24px!important;
  text-wrap:balance!important;
}
.home-hero .hero-actions,
.home-hero .home-socials{
  justify-content:center!important;
}
.home-hero .hero-actions{
  margin-bottom:18px!important;
}
.home-hero .home-socials{
  margin-bottom:0!important;
}

/* Eliminar cualquier línea divisoria visual entre bloques principales. */
body main>section+section{
  border-top:0!important;
}
.dark-panel,
.page-hero,
.client-reviews-section,
.offers-section{
  border-block:0!important;
}

@media(max-width:980px){
  .home-hero{
    padding:58px 0 56px!important;
  }
  .home-hero .hero-copy{
    max-width:780px!important;
  }
}

@media(max-width:760px){
  .home-hero{
    padding:46px 0 48px!important;
  }
  .home-hero .hero-copy{
    align-items:center!important;
    text-align:center!important;
  }
  .home-hero .hero-copy>.eyebrow,
  .home-hero .hero-copy>.hero-rotating-title,
  .home-hero .hero-copy>.hero-rotating-subtitle{
    text-align:center!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    min-height:3.15em!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    min-height:6em!important;
    max-width:34rem!important;
  }
  .home-hero .hero-actions{
    width:min(100%,420px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .home-hero .hero-actions .btn{
    width:100%!important;
  }
  .home-hero .home-socials{
    justify-content:center!important;
  }
}


/* ======================================================================
   V77 — ambiente lento, órbita sutil y carrusel pausado al hover
   ====================================================================== */
.keduin-tech-background{opacity:.98;transition:opacity 1.2s ease}
.home-hero .hero-copy>.hero-indicators{
  display:flex!important;
  justify-content:center!important;
  margin-top:14px!important;
}
.hero-carousel-nav{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(24,213,208,.18);
  background:rgba(3,12,15,.38);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.hero-carousel-dots{
  display:flex;
  align-items:center;
  gap:10px;
}
.hero-carousel-arrow{
  width:38px;
  height:38px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:1.2rem;
  font-weight:900;
  cursor:pointer;
  transition:transform .2s ease,background .2s ease,border-color .2s ease;
}
.hero-carousel-arrow:hover,
.hero-carousel-arrow:focus-visible{
  transform:translateY(-1px);
  background:rgba(24,213,208,.14);
  border-color:rgba(24,213,208,.36);
  outline:0;
}
@media (max-width:760px){
  .hero-carousel-nav{padding:7px 10px;gap:10px}
  .hero-carousel-arrow{width:34px;height:34px;font-size:1.08rem}
}
@media (prefers-reduced-motion:reduce){
  .keduin-tech-background{transition:opacity .8s ease}
  .hero-carousel-arrow,
  .hero-indicator,
  .btn{transition:opacity .25s ease,border-color .25s ease,background .25s ease!important}
}


/* ======================================================================
   V78 — interacción de malla restaurada y flechas laterales discretas
   ====================================================================== */
.hero-carousel-nav{display:none!important}
.home-hero .hero-copy>.hero-indicators{
  display:flex!important;
  justify-content:center!important;
  margin-top:14px!important;
}
.home-hero .hero-carousel-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:7px 11px;
  border-radius:999px;
  border:1px solid rgba(24,213,208,.14);
  background:rgba(3,12,15,.24);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
}
.hero-edge-navigation{
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}
.hero-edge-arrow{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:44px;
  height:58px;
  display:flex;
  align-items:center;
  justify-content:center;
  pointer-events:auto;
  border:1px solid rgba(24,213,208,.12);
  background:rgba(2,11,14,.18);
  color:rgba(222,255,253,.58);
  border-radius:20px;
  font-size:1.45rem;
  font-weight:850;
  cursor:pointer;
  opacity:.18;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:opacity .25s ease,background .25s ease,border-color .25s ease,transform .25s ease;
}
.hero-edge-arrow-prev{left:clamp(8px,1.4vw,24px)}
.hero-edge-arrow-next{right:clamp(8px,1.4vw,24px)}
.home-hero:hover .hero-edge-arrow,
.hero-edge-arrow:focus-visible{
  opacity:.86;
  color:#efffff;
  background:rgba(4,18,22,.62);
  border-color:rgba(24,213,208,.34);
}
.hero-edge-arrow:hover{transform:translateY(-50%) scale(1.035)}
.hero-edge-arrow:focus-visible{outline:2px solid rgba(24,213,208,.48);outline-offset:3px}
@media(max-width:760px){
  .hero-edge-navigation{display:none!important}
  .home-hero .hero-carousel-dots{padding:6px 10px;gap:9px}
}
@media(prefers-reduced-motion:reduce){
  .hero-edge-arrow{transition:opacity .2s ease,background .2s ease,border-color .2s ease!important}
  .hero-edge-arrow:hover{transform:translateY(-50%)!important}
}


/* ======================================================================
   V79 — malla más activa y concentrada alrededor del texto de portada
   ====================================================================== */
.home-hero{
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}
.home-hero .keduin-hero-mesh{
  position:absolute;
  inset:0;
  z-index:0;
  display:block;
  width:100%;
  height:100%;
  pointer-events:none;
  opacity:1;
}
.home-hero .hero-grid{
  position:relative!important;
  z-index:1!important;
}
.home-hero .hero-copy{
  position:relative!important;
  z-index:2!important;
}
@media(max-width:760px){
  .home-hero .keduin-hero-mesh{opacity:.92}
}
@media(prefers-reduced-motion:reduce){
  .home-hero .keduin-hero-mesh{opacity:.72}
}


/* V79.2 — malla de portada más visible, rápida y concentrada */
.home-hero .keduin-hero-mesh{
  opacity:1!important;
  filter:saturate(1.08) contrast(1.02);
}
.home-hero .hero-copy::before{
  background:radial-gradient(ellipse at center,rgba(24,213,208,.10) 0%,rgba(24,213,208,.045) 46%,transparent 74%)!important;
  animation-duration:4.8s!important;
}
@media(max-width:760px){
  .home-hero .keduin-hero-mesh{opacity:.98!important}
}
@media(prefers-reduced-motion:reduce){
  .home-hero .keduin-hero-mesh{filter:none!important;opacity:.74!important}
}


/* V79.3 — textos de portada 30 % más grandes */
.home-hero .hero-copy{
  max-width:1160px!important;
}
.home-hero .hero-copy>.eyebrow{
  max-width:1040px!important;
  font-size:clamp(.82rem,1vw,.98rem)!important;
  line-height:1.35!important;
}
.home-hero .hero-copy>.hero-rotating-title{
  max-width:1080px!important;
  font-size:clamp(2.47rem,4.29vw,3.9rem)!important;
  line-height:1.03!important;
  min-height:2.65em!important;
}
.home-hero .hero-copy>.hero-rotating-subtitle{
  max-width:940px!important;
  font-size:clamp(1.24rem,1.48vw,1.48rem)!important;
  line-height:1.52!important;
  min-height:4.2em!important;
}
@media(max-width:980px){
  .home-hero .hero-copy{
    max-width:920px!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    max-width:880px!important;
    font-size:clamp(2.10rem,6.63vw,3.09rem)!important;
    min-height:3em!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    max-width:760px!important;
    font-size:1.27rem!important;
    min-height:5.1em!important;
  }
}
@media(max-width:760px){
  .home-hero .hero-copy>.eyebrow{
    font-size:.87rem!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    max-width:100%!important;
    font-size:clamp(1.85rem,9.36vw,2.50rem)!important;
    line-height:1.06!important;
    min-height:3.15em!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    max-width:38rem!important;
    font-size:1.20rem!important;
    line-height:1.46!important;
    min-height:5.8em!important;
  }
}
@media(max-width:420px){
  .home-hero .hero-copy>.eyebrow{
    font-size:.78rem!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    font-size:clamp(1.72rem,8.9vw,2.18rem)!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    font-size:1.08rem!important;
  }
}


/* ======================================================================
   V80 — continuidad visual entre portada y secciones
   ====================================================================== */
.home-hero{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
}
.home-hero .hero-copy::before{
  content:none!important;
  display:none!important;
  background:none!important;
  animation:none!important;
  box-shadow:none!important;
}
.home-hero .keduin-hero-mesh{
  opacity:.54!important;
  filter:none!important;
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 12%,#000 76%,transparent 100%);
  mask-image:linear-gradient(180deg,transparent 0%,#000 12%,#000 76%,transparent 100%);
}
@media(max-width:760px){
  .home-hero .keduin-hero-mesh{opacity:.42!important}
}
@media(prefers-reduced-motion:reduce){
  .home-hero .keduin-hero-mesh{opacity:.28!important;filter:none!important}
}


/* ======================================================================
   V81 — malla de portada un poco más perceptible, sin fondo adicional
   ====================================================================== */
.home-hero .keduin-hero-mesh{
  opacity:.61!important;
}
@media(max-width:760px){
  .home-hero .keduin-hero-mesh{opacity:.49!important}
}
@media(prefers-reduced-motion:reduce){
  .home-hero .keduin-hero-mesh{opacity:.28!important}
}


/* ======================================================================
   V82 — catálogo y fichas unificados con la tienda
   ====================================================================== */
/* Sin bloques negros independientes en las portadas internas. */
.portfolio-page .page-hero,
.service-template .page-hero,
.product-detail-page .page-hero,
body:has(.product-detail-page) .page-hero{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
  border-block:0!important;
  box-shadow:none!important;
}
.portfolio-page .page-hero::before,
.portfolio-page .page-hero::after,
.service-template .page-hero::before,
.service-template .page-hero::after{
  content:none!important;
  display:none!important;
}

/* Menú interno de Nosotros sin franja negra. */
.nosotros-page .about-section-nav-wrap,
.nosotros-page .about-side-nav-wrap,
.nosotros-page .about-section-nav-wrap>.container,
.nosotros-page .about-section-nav{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
.nosotros-page .about-section-nav-wrap{
  padding-block:7px!important;
}
.nosotros-page .about-section-nav{
  padding:7px!important;
  border-radius:22px!important;
}
.nosotros-page .about-section-nav a{
  background:rgba(4,18,21,.64)!important;
  border:1px solid rgba(24,213,208,.15)!important;
}

/* Portafolio interior: todos los proyectos visibles, sin carrusel ni recorte. */
.portfolio-page .portfolio-page-marquee-viewport,
.portfolio-page .portfolio-page-control-row,
.portfolio-page [data-portfolio-page-controls]{display:none!important}
.portfolio-page #portfolioGrid.portfolio-all-grid-v82,
#portfolioGrid.portfolio-all-grid-v82{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
  overflow:visible!important;
  transform:none!important;
  animation:none!important;
}
.portfolio-page #portfolioGrid.portfolio-all-grid-v82>.portfolio-card{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
}
@media(max-width:960px){
  .portfolio-page #portfolioGrid.portfolio-all-grid-v82,
  #portfolioGrid.portfolio-all-grid-v82{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:520px){
  .portfolio-page #portfolioGrid.portfolio-all-grid-v82,
  #portfolioGrid.portfolio-all-grid-v82{gap:10px!important}
  #portfolioGrid.portfolio-all-grid-v82 .portfolio-card-body{padding:10px!important}
  #portfolioGrid.portfolio-all-grid-v82 .portfolio-card-body h3{font-size:.82rem!important}
  #portfolioGrid.portfolio-all-grid-v82 .category{font-size:.58rem!important}
  #portfolioGrid.portfolio-all-grid-v82 .portfolio-card-body p,
  #portfolioGrid.portfolio-all-grid-v82 .portfolio-card-actions{display:none!important}
}

/* Configurador visible y sencillo en todas las fichas. */
.product-configurator-v40{
  display:grid!important;
  gap:13px!important;
  width:min(100%,760px)!important;
  margin:22px 0 20px!important;
  padding:20px!important;
  border:1px solid rgba(24,213,208,.26)!important;
  border-radius:24px!important;
  background:linear-gradient(135deg,rgba(24,213,208,.09),rgba(255,255,255,.035))!important;
  box-shadow:0 18px 48px rgba(0,0,0,.20)!important;
}
.product-configurator-v40 select,
.product-configurator-v40 textarea{
  background:rgba(2,12,15,.88)!important;
  border-color:rgba(24,213,208,.24)!important;
}
.product-config-help{margin:0!important;color:#cbe1e0!important}

/* Comparador de hospedaje. */
.hosting-guide-v82{padding-top:28px!important}
.hosting-tier-grid-v82{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.hosting-tier-card-v82{
  overflow:hidden;
  padding:18px;
  border:1px solid rgba(24,213,208,.20);
  border-radius:24px;
  background:rgba(4,15,18,.72);
  box-shadow:0 18px 44px rgba(0,0,0,.18);
}
.hosting-tier-card-v82>img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-radius:18px;
  margin-bottom:15px;
}
.hosting-tier-card-v82 h3{margin-bottom:8px}
.hosting-tier-card-v82 p{color:var(--muted)}
.hosting-tier-options-v82{display:grid;gap:8px;margin-top:14px}
.hosting-tier-options-v82 button{
  padding:10px 12px;
  border:1px solid rgba(24,213,208,.20);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:#efffff;
  text-align:left;
  cursor:pointer;
  font-weight:800;
}
.hosting-tier-options-v82 button:hover,
.hosting-tier-options-v82 button.is-selected{
  background:rgba(24,213,208,.16);
  border-color:rgba(24,213,208,.48);
}
@media(max-width:900px){.hosting-tier-grid-v82{grid-template-columns:1fr}}

/* Complementos reales de la misma tienda. */
.canonical-addons-v82{padding-top:34px!important}
.canonical-addon-grid-v82{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.canonical-addon-card-v82{
  display:flex;
  flex-direction:column;
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(24,213,208,.18);
  border-radius:22px;
  background:rgba(4,15,18,.72);
}
.canonical-addon-card-v82>img{
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.canonical-addon-card-v82>div{display:grid;gap:7px;padding:16px;flex:1}
.canonical-addon-card-v82 span{color:var(--turquoise);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.canonical-addon-card-v82 p{margin:0;color:var(--muted);font-size:.88rem}
.canonical-addon-card-v82 strong{margin-top:auto}
.canonical-addon-card-v82>.btn{margin:0 16px 16px}
@media(max-width:900px){.canonical-addon-grid-v82{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){
  .canonical-addon-grid-v82{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .canonical-addon-card-v82>div{padding:10px}
  .canonical-addon-card-v82 h3{font-size:.86rem}
  .canonical-addon-card-v82 p{display:none}
  .canonical-addon-card-v82>.btn{margin:0 10px 10px;padding:9px 8px;font-size:.72rem}
}

/* V82.1 — neutralización definitiva de fondos heredados en portadas internas. */
html body.portfolio-page main .page-hero,
html body.service-template main.product-detail-page .page-hero,
html body main.product-detail-page .page-hero{
  background:transparent!important;
  background-image:none!important;
  background-color:transparent!important;
  border:0!important;
  box-shadow:none!important;
}


/* ======================================================================
   V83 — regreso al fondo V59 + catálogo de hospedaje completo
   ====================================================================== */
html{background:#010506!important}
body{
  position:relative!important;
  isolation:isolate!important;
  background:#010506!important;
}
.keduin-tech-background{
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  opacity:1!important;
  pointer-events:none!important;
  user-select:none!important;
  filter:none!important;
}
body>.skip-link,
body>.site-header,
body>main,
body>.footer,
body>.floating-whatsapp,
body>.floating-cart-shortcut,
body>.modal,
body>[class*="legal"]{
  position:relative;
  z-index:1;
}
body>.site-header{position:fixed!important;z-index:1200!important}
body>.floating-whatsapp,
body>.floating-cart-shortcut{position:fixed!important;z-index:95!important}
body>.modal{position:fixed!important;z-index:1400!important}

/* La malla V59 es el único fondo: sin segunda capa especial en la portada. */
.keduin-hero-mesh,
.home-hero .keduin-hero-mesh{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
}
body main section{background-image:none!important}
.section,
.home-hero,
.page-hero,
.catalog-hero,
.home-main-categories,
.offers-section,
.home-cart-manager,
.dark-panel,
.client-reviews-section,
#catalogo-servicios,
.store-direct-section,
.tienda-page .page-hero,
.tienda-page #catalogo-servicios,
.tienda-page .catalog-sidebar,
.tienda-page .service-cart,
.paginas-web-page .page-hero,
.paginas-web-page .section:first-of-type,
.marketing-page .page-hero,
.marketing-page .section:first-of-type,
.produccion-page .page-hero,
.produccion-page .section:first-of-type,
.infra-page .page-hero,
.planes-page .page-hero,
.planes-page .service-catalog-grid,
.nosotros-page .about-hero,
.nosotros-page .section:first-of-type,
.diagnostico-page,
.diagnostico-page .diag-shell,
.diagnostico-page .diag-hero,
.cotizar-page .page-hero,
.cart-page .page-hero,
.faq-page .kfaq-shell,
.faq-page .kfaq-hero,
.faq-page .kfaq-panel,
.faq-page .kfaq-hero__bg,
.contact-page .page-hero,
.portfolio-page .page-hero,
.brand-page .page-hero,
.brand-page .section:first-of-type,
.legal-page .legal-hero,
.legal-page .legal-document-hero,
.legal-page .legal-groups-section,
.legal-page .legal-document-section,
.legal-page .legal-process-section{
  background-image:none!important;
  background-color:transparent!important;
}
.home-hero::before,
.home-hero::after,
.faq-page .kfaq-shell::before,
.faq-page .kfaq-shell::after,
.faq-page .kfaq-hero__bg::before,
.faq-page .kfaq-hero__bg::after{
  content:none!important;
  display:none!important;
  background:none!important;
  animation:none!important;
}
.dark-panel,
.page-hero{
  border-block-color:rgba(24,213,208,.08)!important;
}
.footer{
  background:linear-gradient(180deg,rgba(1,6,8,.55),rgba(1,4,5,.94))!important;
  backdrop-filter:blur(7px)!important;
  -webkit-backdrop-filter:blur(7px)!important;
}

/* Sin puntos bajo la portada. */
.home-hero .hero-indicators,
.home-hero .hero-carousel-dots{
  display:none!important;
}

/* El menú interno de Nosotros fue retirado del HTML; se neutraliza cualquier copia heredada. */
.nosotros-page .about-side-nav-wrap,
.nosotros-page .about-section-nav-wrap,
.nosotros-page .about-section-nav,
.nosotros-page .about-quicknav,
.nosotros-page .about-static-nav,
.nosotros-page .about-anchor-nav{
  display:none!important;
}

/* Los productos de infraestructura se leen en dos columnas amplias. */
.hosting-products-grid-v83{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:18px!important;
}
.hosting-products-grid-v83>.catalog-card{
  min-width:0!important;
  width:100%!important;
  max-width:none!important;
}
.hosting-products-grid-v83 .service-option-selector{
  grid-template-columns:1fr!important;
}
@media(max-width:760px){
  .hosting-products-grid-v83{
    grid-template-columns:1fr!important;
    gap:14px!important;
  }
}

/* En celular la portada comienza más arriba y conserva el contenido centrado. */
@media(max-width:760px){
  .home-hero{
    padding:20px 0 42px!important;
  }
  .home-hero .hero-copy{
    justify-content:flex-start!important;
    transform:translateY(-2px)!important;
  }
  .home-hero .hero-copy>.eyebrow{
    margin-top:0!important;
    margin-bottom:10px!important;
    max-width:34rem!important;
    font-size:clamp(.72rem,3.1vw,.84rem)!important;
    line-height:1.38!important;
  }
  .home-hero .hero-copy>.hero-rotating-title{
    max-width:36rem!important;
    margin-bottom:14px!important;
    line-height:1.07!important;
  }
  .home-hero .hero-copy>.hero-rotating-subtitle{
    max-width:34rem!important;
    margin-bottom:18px!important;
    line-height:1.48!important;
  }
}


/* V84 — hospedajes visibles, campañas depuradas, soporte eliminado y software en programación */
@media (min-width: 900px){
  .service-catalog-grid:has(.catalog-card[data-main-category="hosting-dominios-servidores"]) {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 899px){
  .service-catalog-grid:has(.catalog-card[data-main-category="hosting-dominios-servidores"]) {
    grid-template-columns: 1fr !important;
  }
}
.campaign-category-clean .category-services-grid{
  align-items:stretch;
}
.campaign-category-clean .category-hero-image img{
  object-fit:cover!important;
  object-position:center!important;
}
