.elementor-kit-114{--e-global-color-primary:#1C3556;--e-global-color-secondary:#34996D;--e-global-color-text:#1D1D1B;--e-global-color-accent:#1C3556;--e-global-color-ggnavyd:#132945;--e-global-color-gggreeni:#2A7F5A;--e-global-color-gggreenl:#62C79A;--e-global-color-gglime:#A7FF83;--e-global-color-ggteal:#04646D;--e-global-color-ggwhite:#FEFFFF;--e-global-color-ggs1:#F2F5F6;--e-global-color-ggs2:#E8EDEF;--e-global-color-ggmint:#EBF5EF;--e-global-color-ggmuted:#5A6A73;--e-global-color-ggline:#E3E9EB;--e-global-color-ggborder:#CAD5DA;--e-global-color-ggondark:#BFCFDA;--e-global-color-ggonline:#FFFFFF66;--e-global-color-ggstep:#FFFFFF0F;--e-global-color-ggph:#2A4669;--e-global-color-ggbrand:#9AA8AF;--e-global-color-ggclear:#FFFFFF00;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-weight:500;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:15.5px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.2em;--e-global-typography-ggdisplay-font-family:"Montserrat";--e-global-typography-ggdisplay-font-size:56px;--e-global-typography-ggdisplay-font-weight:700;--e-global-typography-ggdisplay-line-height:1.05em;--e-global-typography-ggdisplay-letter-spacing:-1.6px;--e-global-typography-ggh2-font-family:"Montserrat";--e-global-typography-ggh2-font-size:44px;--e-global-typography-ggh2-font-weight:700;--e-global-typography-ggh2-line-height:1.08em;--e-global-typography-ggh2-letter-spacing:-1.2px;--e-global-typography-ggh2s-font-family:"Montserrat";--e-global-typography-ggh2s-font-size:40px;--e-global-typography-ggh2s-font-weight:700;--e-global-typography-ggh2s-line-height:1.1em;--e-global-typography-ggh2s-letter-spacing:-1px;--e-global-typography-ggstat-font-family:"Montserrat";--e-global-typography-ggstat-font-size:34px;--e-global-typography-ggstat-font-weight:500;--e-global-typography-ggstat-line-height:1.25em;--e-global-typography-ggstat-letter-spacing:-0.8px;--e-global-typography-ggh3l-font-family:"Montserrat";--e-global-typography-ggh3l-font-size:32px;--e-global-typography-ggh3l-font-weight:700;--e-global-typography-ggh3l-line-height:1.12em;--e-global-typography-ggh3l-letter-spacing:-0.8px;--e-global-typography-ggh3-font-family:"Montserrat";--e-global-typography-ggh3-font-size:19px;--e-global-typography-ggh3-font-weight:700;--e-global-typography-ggh3-line-height:1.2em;--e-global-typography-ggh3-letter-spacing:-0.3px;--e-global-typography-ggh4-font-family:"Montserrat";--e-global-typography-ggh4-font-size:15.5px;--e-global-typography-ggh4-font-weight:600;--e-global-typography-ggh4-line-height:1.35em;--e-global-typography-ggh4-letter-spacing:-0.1px;--e-global-typography-gglabel-font-family:"Montserrat";--e-global-typography-gglabel-font-size:11.5px;--e-global-typography-gglabel-font-weight:600;--e-global-typography-gglabel-text-transform:uppercase;--e-global-typography-gglabel-line-height:1.3em;--e-global-typography-gglabel-letter-spacing:1.2px;--e-global-typography-ggmono-font-family:"Montserrat";--e-global-typography-ggmono-font-size:10.5px;--e-global-typography-ggmono-font-weight:600;--e-global-typography-ggmono-text-transform:uppercase;--e-global-typography-ggmono-line-height:1.3em;--e-global-typography-ggmono-letter-spacing:1px;--e-global-typography-ggfact-font-family:"Montserrat";--e-global-typography-ggfact-font-size:14px;--e-global-typography-ggfact-font-weight:500;--e-global-typography-ggfact-line-height:1.45em;--e-global-typography-gglead-font-family:"Montserrat";--e-global-typography-gglead-font-size:18px;--e-global-typography-gglead-font-weight:400;--e-global-typography-gglead-line-height:1.55em;--e-global-typography-ggsmall-font-family:"Montserrat";--e-global-typography-ggsmall-font-size:13.5px;--e-global-typography-ggsmall-font-weight:400;--e-global-typography-ggsmall-line-height:1.45em;--e-global-typography-ggbrand-font-family:"Montserrat";--e-global-typography-ggbrand-font-size:20px;--e-global-typography-ggbrand-font-weight:700;--e-global-typography-ggbrand-line-height:1.2em;--e-global-typography-ggbrand-letter-spacing:0.4px;background-color:#FEFFFF;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-114 button,.elementor-kit-114 input[type="button"],.elementor-kit-114 input[type="submit"],.elementor-kit-114 .elementor-button{background-color:var( --e-global-color-primary );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );line-height:var( --e-global-typography-accent-line-height );color:var( --e-global-color-ggwhite );border-radius:10px 10px 10px 10px;padding:16px 24px 16px 24px;}.elementor-kit-114 button:hover,.elementor-kit-114 button:focus,.elementor-kit-114 input[type="button"]:hover,.elementor-kit-114 input[type="button"]:focus,.elementor-kit-114 input[type="submit"]:hover,.elementor-kit-114 input[type="submit"]:focus,.elementor-kit-114 .elementor-button:hover,.elementor-kit-114 .elementor-button:focus{background-color:var( --e-global-color-ggnavyd );color:var( --e-global-color-ggwhite );}.elementor-kit-114 e-page-transition{background-color:#FFBC7D;}.elementor-kit-114 p{margin-block-end:14px;}.elementor-kit-114 a{color:var( --e-global-color-primary );}.elementor-kit-114 a:hover{color:var( --e-global-color-gggreeni );}.elementor-kit-114 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-ggdisplay-font-family ), Sans-serif;font-size:var( --e-global-typography-ggdisplay-font-size );font-weight:var( --e-global-typography-ggdisplay-font-weight );line-height:var( --e-global-typography-ggdisplay-line-height );letter-spacing:var( --e-global-typography-ggdisplay-letter-spacing );}.elementor-kit-114 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-ggh2-font-family ), Sans-serif;font-size:var( --e-global-typography-ggh2-font-size );font-weight:var( --e-global-typography-ggh2-font-weight );line-height:var( --e-global-typography-ggh2-line-height );letter-spacing:var( --e-global-typography-ggh2-letter-spacing );}.elementor-kit-114 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-ggh3-font-family ), Sans-serif;font-size:var( --e-global-typography-ggh3-font-size );font-weight:var( --e-global-typography-ggh3-font-weight );line-height:var( --e-global-typography-ggh3-line-height );letter-spacing:var( --e-global-typography-ggh3-letter-spacing );}.elementor-kit-114 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-ggh4-font-family ), Sans-serif;font-size:var( --e-global-typography-ggh4-font-size );font-weight:var( --e-global-typography-ggh4-font-weight );line-height:var( --e-global-typography-ggh4-line-height );letter-spacing:var( --e-global-typography-ggh4-letter-spacing );}.elementor-kit-114 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-gglabel-font-family ), Sans-serif;font-size:var( --e-global-typography-gglabel-font-size );font-weight:var( --e-global-typography-gglabel-font-weight );text-transform:var( --e-global-typography-gglabel-text-transform );line-height:var( --e-global-typography-gglabel-line-height );letter-spacing:var( --e-global-typography-gglabel-letter-spacing );}.elementor-kit-114 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-ggsmall-font-family ), Sans-serif;font-size:var( --e-global-typography-ggsmall-font-size );font-weight:var( --e-global-typography-ggsmall-font-weight );line-height:var( --e-global-typography-ggsmall-line-height );}.elementor-kit-114 img{border-radius:0px 0px 0px 0px;}.elementor-kit-114 label{color:var( --e-global-color-primary );}.elementor-kit-114 input:not([type="button"]):not([type="submit"]),.elementor-kit-114 textarea,.elementor-kit-114 .elementor-field-textual{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );color:var( --e-global-color-text );background-color:var( --e-global-color-ggs1 );border-style:solid;border-width:0px 0px 0px 0px;border-radius:10px 10px 10px 10px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1296px;}.e-con{--container-max-width:1296px;--container-default-padding-top:0px;--container-default-padding-right:32px;--container-default-padding-bottom:0px;--container-default-padding-left:32px;}.elementor-widget:not(:last-child){--kit-widget-spacing:16px;}.elementor-element{--widgets-spacing:16px 16px;--widgets-spacing-row:16px;--widgets-spacing-column:16px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-114{--e-global-typography-ggdisplay-font-size:46px;--e-global-typography-ggh2-font-size:38px;--e-global-typography-ggh2s-font-size:34px;--e-global-typography-ggstat-font-size:28px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-114 h1{font-size:var( --e-global-typography-ggdisplay-font-size );line-height:var( --e-global-typography-ggdisplay-line-height );letter-spacing:var( --e-global-typography-ggdisplay-letter-spacing );}.elementor-kit-114 h2{font-size:var( --e-global-typography-ggh2-font-size );line-height:var( --e-global-typography-ggh2-line-height );letter-spacing:var( --e-global-typography-ggh2-letter-spacing );}.elementor-kit-114 h3{font-size:var( --e-global-typography-ggh3-font-size );line-height:var( --e-global-typography-ggh3-line-height );letter-spacing:var( --e-global-typography-ggh3-letter-spacing );}.elementor-kit-114 h4{font-size:var( --e-global-typography-ggh4-font-size );line-height:var( --e-global-typography-ggh4-line-height );letter-spacing:var( --e-global-typography-ggh4-letter-spacing );}.elementor-kit-114 h5{font-size:var( --e-global-typography-gglabel-font-size );line-height:var( --e-global-typography-gglabel-line-height );letter-spacing:var( --e-global-typography-gglabel-letter-spacing );}.elementor-kit-114 h6{font-size:var( --e-global-typography-ggsmall-font-size );line-height:var( --e-global-typography-ggsmall-line-height );}.elementor-kit-114 button,.elementor-kit-114 input[type="button"],.elementor-kit-114 input[type="submit"],.elementor-kit-114 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-114 input:not([type="button"]):not([type="submit"]),.elementor-kit-114 textarea,.elementor-kit-114 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-114{--e-global-typography-text-font-size:15px;--e-global-typography-ggdisplay-font-size:32px;--e-global-typography-ggdisplay-line-height:1.1em;--e-global-typography-ggh2-font-size:30px;--e-global-typography-ggh2s-font-size:28px;--e-global-typography-ggstat-font-size:23px;--e-global-typography-ggh3l-font-size:24px;--e-global-typography-ggh3-font-size:16px;--e-global-typography-gglead-font-size:15.5px;--e-global-typography-ggbrand-font-size:16px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-114 h1{font-size:var( --e-global-typography-ggdisplay-font-size );line-height:var( --e-global-typography-ggdisplay-line-height );letter-spacing:var( --e-global-typography-ggdisplay-letter-spacing );}.elementor-kit-114 h2{font-size:var( --e-global-typography-ggh2-font-size );line-height:var( --e-global-typography-ggh2-line-height );letter-spacing:var( --e-global-typography-ggh2-letter-spacing );}.elementor-kit-114 h3{font-size:var( --e-global-typography-ggh3-font-size );line-height:var( --e-global-typography-ggh3-line-height );letter-spacing:var( --e-global-typography-ggh3-letter-spacing );}.elementor-kit-114 h4{font-size:var( --e-global-typography-ggh4-font-size );line-height:var( --e-global-typography-ggh4-line-height );letter-spacing:var( --e-global-typography-ggh4-letter-spacing );}.elementor-kit-114 h5{font-size:var( --e-global-typography-gglabel-font-size );line-height:var( --e-global-typography-gglabel-line-height );letter-spacing:var( --e-global-typography-gglabel-letter-spacing );}.elementor-kit-114 h6{font-size:var( --e-global-typography-ggsmall-font-size );line-height:var( --e-global-typography-ggsmall-line-height );}.elementor-kit-114 button,.elementor-kit-114 input[type="button"],.elementor-kit-114 input[type="submit"],.elementor-kit-114 .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-114 input:not([type="button"]):not([type="submit"]),.elementor-kit-114 textarea,.elementor-kit-114 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:0px;--container-default-padding-right:16px;--container-default-padding-bottom:0px;--container-default-padding-left:16px;}}
/* Start custom CSS *//* G&G Medical — estilos del sitio (Site Settings > Custom CSS)
   Solo cubre lo que Elementor no ofrece como control nativo:
   formas diagonales, mezcla de fotos, carrusel de productos y detalles de interacción.
   Los colores vienen de los Colores Globales (var(--e-global-color-*)). */

/* ---------- utilidades ---------- */
.gg-label .elementor-heading-title{display:flex;align-items:center;gap:10px}
.gg-label .elementor-heading-title::before{content:"";width:18px;height:3px;border-radius:2px;background:var(--e-global-color-secondary);transform:skewX(-30deg);flex:0 0 auto}
.gg-btn .elementor-button-icon svg,.gg-btn .elementor-button-icon i{fill:var(--e-global-color-gggreenl);color:var(--e-global-color-gggreenl)}
.gg-btn--light .elementor-button-icon svg,.gg-btn--light .elementor-button-icon i,
.gg-more .elementor-button-icon svg,.gg-more .elementor-button-icon i{fill:var(--e-global-color-secondary);color:var(--e-global-color-secondary)}
.gg-btn .elementor-button-icon,.gg-more .elementor-button-icon{transition:transform .2s ease}
.gg-btn .elementor-button:hover .elementor-button-icon,.gg-more .elementor-button:hover .elementor-button-icon{transform:translateX(3px)}
.gg-blend img{mix-blend-mode:multiply}

/* ---------- header ---------- */
.gg-hdr-main{transition:min-height .2s ease,box-shadow .2s ease;backdrop-filter:saturate(1.4) blur(10px);-webkit-backdrop-filter:saturate(1.4) blur(10px)}
.gg-hdr-main.elementor-sticky--effects{min-height:64px!important;box-shadow:0 8px 24px -16px rgba(22,34,43,.25);border-bottom:1px solid var(--e-global-color-ggline)}
.gg-search .elementor-search-form__container{border-radius:10px!important;overflow:hidden;background:var(--e-global-color-ggs1)!important;transition:box-shadow .2s ease,background .2s ease}
.gg-search .elementor-search-form__container:focus-within{background:#fff!important;box-shadow:0 0 0 2px var(--e-global-color-secondary)}
.gg-search .elementor-search-form__input{background:transparent!important}
.gg-mega .e-n-menu-title{background:var(--e-global-color-primary);border-radius:10px;transition:background .2s ease}
.gg-mega .e-n-menu-title:hover,.gg-mega .e-n-menu-title[aria-expanded="true"],.gg-mega .e-n-menu-item:hover .e-n-menu-title{background:var(--e-global-color-ggnavyd)}
.gg-mega .e-n-menu-title,.gg-mega .e-n-menu-title-text,.gg-mega .e-n-menu-title-container{color:#fff!important}
.gg-mega .e-n-menu-dropdown-icon svg{fill:var(--e-global-color-gggreenl)}
.gg-mega .e-n-menu-content>.e-con{box-shadow:0 30px 60px -20px rgba(22,34,43,.25);border-top:1px solid var(--e-global-color-ggline)}
.gg-mega-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px!important}
.gg-mega-item{border-radius:10px;transition:background .2s ease}
.gg-mega-item:hover{background:var(--e-global-color-ggs1)}
.gg-mega-item .gg-mi{border-radius:10px;background:var(--e-global-color-ggs1)}
.gg-mega-item:hover .gg-mi{background:#fff}
.gg-mega-promo{position:relative;overflow:hidden}
.gg-mega-promo::after{content:"";position:absolute;right:-30px;top:-10px;width:90px;height:8px;background:var(--e-global-color-secondary);transform:rotate(-38deg)}
.gg-cart .elementor-menu-cart__toggle .elementor-button{background:transparent!important;border:0!important;color:var(--e-global-color-primary)!important;padding:12px!important;border-radius:10px}
.gg-cart .elementor-menu-cart__toggle .elementor-button:hover{background:var(--e-global-color-ggs1)!important}
.gg-cart .elementor-button-icon-qty[data-counter]{background:var(--e-global-color-secondary)!important}
.gg-nav .elementor-icon-list-item a:hover .elementor-icon-list-text{color:var(--e-global-color-primary)}

/* ---------- hero ---------- */
.gg-slide{position:relative!important;isolation:isolate;overflow:hidden}
.gg-slide::after{content:"";position:absolute;z-index:-1;right:-60px;top:-20px;width:300px;height:120px;pointer-events:none;
  background:linear-gradient(90deg,transparent 0 104px,var(--e-global-color-gglime) 104px 108px,transparent 108px 130px,var(--e-global-color-secondary) 130px 144px,transparent 144px 160px,var(--e-global-color-primary) 160px);transform:skewX(-36deg)}
.gg-slide--dark::after{background:linear-gradient(90deg,transparent 0 104px,var(--e-global-color-gglime) 104px 108px,transparent 108px 130px,var(--e-global-color-secondary) 130px 144px,transparent 144px 160px,#243F63 160px)}
.gg-slide-copy .elementor-heading-title{text-wrap:balance}
.gg-stage{position:relative}
.gg-stage::before{content:"";position:absolute;top:auto;opacity:1;mix-blend-mode:normal;left:12%;right:12%;bottom:13%;height:42px;border-radius:50%;background:radial-gradient(closest-side,rgba(22,34,43,.16),rgba(22,34,43,0));pointer-events:none}
.gg-stage img{mix-blend-mode:multiply;transform:scale(.96) translateY(8px);transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.gg-hero .swiper-slide-active .gg-stage img{transform:none}
.gg-chip{position:absolute!important;right:28px;bottom:92px;z-index:4;width:auto!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 10px 30px -14px rgba(22,34,43,.35)}
.gg-chip::after{content:"";width:16px;height:16px;margin-left:4px;background:var(--e-global-color-secondary);
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/contain no-repeat}
.gg-chip .gg-blend{border-radius:8px;background:var(--e-global-color-ggs1)}
.gg-chips .elementor-icon-list-item{padding:6px 12px!important;border-radius:999px;background:rgba(255,255,255,.75);margin:0!important}
.gg-chips .elementor-icon-list-items{gap:6px}
.gg-chips .elementor-icon-list-item::after,.gg-checks .elementor-icon-list-item::after{display:none!important}
/* controles del carrusel */
.gg-hero .elementor-swiper-button{width:48px;height:48px;border-radius:50%;background:#fff;color:var(--e-global-color-primary);display:grid;place-items:center;top:auto!important;bottom:44px;transform:none;box-shadow:0 4px 14px -6px rgba(22,34,43,.3);transition:background .2s ease,color .2s ease;z-index:6}
.gg-hero .elementor-swiper-button svg{width:20px;height:20px;fill:currentColor}
.gg-hero .elementor-swiper-button:hover{background:var(--e-global-color-primary);color:#fff}
.gg-hero .elementor-swiper-button-prev{left:auto!important;right:100px!important}
.gg-hero .elementor-swiper-button-next{right:44px!important}
.gg-hero .swiper-pagination{bottom:56px!important;left:80px!important;width:auto!important;display:flex;gap:6px;text-align:left;z-index:6}
.gg-hero .swiper-pagination-bullet{width:26px!important;height:4px!important;border-radius:2px!important;margin:0!important;background:rgba(28,53,86,.2)!important;opacity:1!important;transition:width .25s ease,background .25s ease}
.gg-hero .swiper-pagination-bullet-active{width:52px!important;background:var(--e-global-color-secondary)!important}

/* ---------- marcas ---------- */
.gg-brand-ph .elementor-heading-title{border:1.5px dashed var(--e-global-color-ggborder);border-radius:8px;padding:8px 14px}

/* ---------- categorías ---------- */
.gg-cgrid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:250px 250px 132px;gap:14px!important}
.gg-cgrid>.e-con{width:auto!important;min-width:0}
.gg-t-gen{grid-column:1 / 3;grid-row:1 / 3}
.gg-t-lab{grid-column:1 / 3}
.gg-t-home{grid-column:3 / 5}
.gg-tile{position:relative!important;overflow:hidden;transition:transform .3s cubic-bezier(.2,.7,.2,1),background-color .3s ease}
.gg-tile:hover{transform:translateY(-4px)}
.gg-tile:not(.gg-t-home):hover{background-color:var(--e-global-color-ggs2)!important}
.gg-t-home:hover{background-color:#DFEFE5!important}
.gg-tile img{mix-blend-mode:multiply;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.gg-tile:hover img{transform:scale(1.04)}
.gg-tile::after{content:"";position:absolute;right:18px;top:18px;width:40px;height:40px;border-radius:50%;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231C3556' stroke-width='2.2'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .25s ease,background-color .25s ease}
.gg-tile:hover::after{background:var(--e-global-color-secondary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2.2'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center/16px no-repeat;transform:rotate(-45deg)}
.gg-t-row::after{top:50%;margin-top:-20px}
.gg-t-gen::before{content:"";position:absolute;top:auto;left:auto;right:-30px;bottom:-30px;mix-blend-mode:normal;width:220px;height:16px;background:var(--e-global-color-secondary);transform:rotate(-38deg);opacity:.9}
.gg-subs .elementor-icon-list-item{padding:6px 12px!important;border-radius:999px;background:#fff;margin:0!important}
.gg-subs .elementor-icon-list-items{gap:6px}
.gg-subs .elementor-icon-list-item::after{display:none!important}

/* ---------- productos (WooCommerce Products → fila deslizable) ---------- */
.gg-products ul.products{display:flex!important;flex-wrap:nowrap!important;gap:16px!important;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:12px!important;scrollbar-width:none;grid-template-columns:none!important}
.gg-products ul.products::-webkit-scrollbar{display:none}
.gg-products ul.products::before,.gg-products ul.products::after{display:none!important}
.gg-products ul.products li.product{flex:0 0 272px!important;width:272px!important;max-width:none!important;margin:0!important;scroll-snap-align:start;position:relative;display:flex!important;flex-direction:column;padding:0!important;background:transparent!important;border:0!important}
.gg-products ul.products li.product a.woocommerce-LoopProduct-link{display:flex;flex-direction:column}
.gg-products ul.products li.product a img{height:272px!important;width:100%!important;object-fit:contain;background:#fff;border-radius:12px;padding:14% 12% 12%!important;margin:0 0 16px!important;mix-blend-mode:normal;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
.gg-products ul.products li.product:hover a img{transform:scale(1.03)}
.gg-products .woocommerce-loop-product__title{font-size:16.5px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:-.015em;color:var(--e-global-color-primary)!important;padding:0!important;margin:0!important}
.gg-products .price{margin-top:8px!important;font-size:15px!important;font-weight:600!important;color:var(--e-global-color-primary)!important}
.gg-products li.product .button{position:absolute!important;left:12px;right:12px;top:216px;margin:0!important;height:44px;display:flex!important;align-items:center;justify-content:center;border-radius:8px!important;opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease,background .2s ease}
.gg-products li.product:hover .button,.gg-products li.product .button:focus-visible{opacity:1;transform:none}
.gg-products .onsale{left:12px!important;top:12px!important;right:auto!important;margin:0!important;min-height:0!important;min-width:0!important;line-height:1.2!important;padding:5px 9px!important;border-radius:6px!important;background:var(--e-global-color-ggmint)!important;color:var(--e-global-color-gggreeni)!important;font-size:11.5px!important;font-weight:600!important}

/* ---------- institucional ---------- */
.gg-photo{position:relative;overflow:hidden;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.05) 0 1px,transparent 1px 14px)}
.gg-photo[style*="background-image"],.gg-photo.has-photo{background-image:none}
.gg-photo::before{content:"";position:absolute;opacity:1;mix-blend-mode:normal;left:-20px;top:30px;width:150px;height:10px;background:var(--e-global-color-secondary);transform:rotate(-38deg)}
.gg-photo::after{content:"";position:absolute;left:-6px;top:56px;width:90px;height:4px;background:var(--e-global-color-gglime);transform:rotate(-38deg)}
.gg-ph-label .elementor-heading-title{display:inline-block;background:rgba(19,41,69,.7);border-radius:8px;padding:10px 14px}

/* ---------- CTA final / pie ---------- */
.gg-final{position:relative!important;overflow:hidden}
.gg-final::after{content:"";position:absolute;right:-40px;top:-14px;width:240px;height:14px;background:var(--e-global-color-secondary);transform:rotate(-30deg)}
.gg-ftr{position:relative!important;overflow:hidden}
.gg-ftr::after{content:"";position:absolute;right:60px;top:-30px;width:10px;height:150px;background:var(--e-global-color-secondary);transform:skewX(-34deg);pointer-events:none}
.gg-ftr-links .elementor-icon-list-icon{display:none}
.gg-wa{position:fixed!important;right:24px;bottom:24px;z-index:80;width:auto!important;margin:0!important}
.gg-wa .elementor-button{border-radius:999px!important;height:56px;box-shadow:0 12px 30px -10px rgba(22,34,43,.45)}
.gg-wa .elementor-button:hover{transform:translateY(-2px)}


/* ================= Capa "ficha técnica" ================= */
.gg-fontload{display:none!important}
:focus-visible{outline:2px solid var(--e-global-color-secondary);outline-offset:3px}
/* anotaciones del hero: línea guía + punto + etiqueta */
.gg-anno{position:absolute!important;inset:0;width:auto!important;max-width:none!important;margin:0!important;pointer-events:none;z-index:3}
.gg-anno .anno{position:absolute;inset:0}
.gg-anno svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.gg-anno line{stroke:var(--e-global-color-primary);stroke-opacity:.5;stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:2000;stroke-dashoffset:2000;transition:stroke-dashoffset .9s cubic-bezier(.6,0,.2,1) .35s}
.gg-anno .dot{position:absolute;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:var(--e-global-color-secondary);box-shadow:0 0 0 5px rgba(52,153,109,.16);transform:scale(0);transition:transform .35s cubic-bezier(.2,.9,.3,1.3) .25s}
.gg-anno .tl{position:absolute;display:flex;align-items:center;gap:8px;font-family:var(--e-global-typography-gglabel-font-family),"Montserrat",sans-serif;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--e-global-color-primary);background:rgba(255,255,255,.9);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:6px;padding:7px 10px;white-space:nowrap;box-shadow:0 0 0 1px rgba(28,53,86,.08);opacity:0;transition:opacity .4s ease 1.05s,transform .4s ease 1.05s}
.gg-anno .tl i{width:6px;height:6px;background:var(--e-global-color-secondary);flex:0 0 auto}
.gg-anno .tl.r{transform:translate(0,-50%) translateY(4px)}
.gg-anno .tl.l{transform:translate(-100%,-50%) translateY(4px)}
.swiper-slide-active .gg-anno line,.elementor-editor-active .gg-anno line{stroke-dashoffset:0}
.swiper-slide-active .gg-anno .dot,.elementor-editor-active .gg-anno .dot{transform:scale(1)}
.swiper-slide-active .gg-anno .tl.r,.elementor-editor-active .gg-anno .tl.r{opacity:1;transform:translate(0,-50%)}
.swiper-slide-active .gg-anno .tl.l,.elementor-editor-active .gg-anno .tl.l{opacity:1;transform:translate(-100%,-50%)}
/* tarjetas de producto: título condensado + fila de precio tipo ficha */
.gg-products .woocommerce-loop-product__title{font-size:16px!important;line-height:1.3!important}
.gg-products .price{display:grid!important;grid-template-columns:86px minmax(0,1fr);align-items:baseline;gap:10px;margin-top:14px!important;padding:8px 0!important;border-top:1px solid #D5DEE2;border-bottom:1px solid #E1E7EA}
.gg-products .price::before{content:"Precio";font-family:var(--e-global-typography-gglabel-font-family),"Montserrat",sans-serif;font-size:10.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--e-global-color-ggmuted)}
@media (prefers-reduced-motion:reduce){.gg-anno line,.gg-anno .dot,.gg-anno .tl,.gg-stage img{transition:none!important}}

/* ---------- tablet ---------- */
@media (max-width:1024px){
  .gg-cgrid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
  .gg-t-gen{grid-column:1 / 3;grid-row:auto;min-height:400px}
  .gg-t-sq{min-height:260px}
  .gg-t-lab,.gg-t-home{grid-column:auto;min-height:132px}
  .gg-mega-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* ---------- móvil ---------- */
@media (max-width:767px){
  .gg-slide::after,.gg-chip,.gg-hero .elementor-swiper-button{display:none!important}
  .gg-hero .swiper-pagination{left:20px!important;bottom:20px!important}
  .gg-chips .elementor-icon-list-item:nth-child(n+4){display:none}
  .gg-cgrid{gap:10px!important}
  .gg-t-gen{min-height:400px}
  .gg-t-sq{min-height:210px}
  .gg-t-sq::after{display:none}
  .gg-t-lab,.gg-t-home{grid-column:1 / 3;min-height:104px}
  .gg-products ul.products li.product{flex-basis:72%!important;width:72%!important}
  .gg-products ul.products li.product a img{height:230px!important}
  .gg-products li.product .button{opacity:1;transform:none;top:178px;height:40px}
  .gg-mega-grid{grid-template-columns:1fr}
  .gg-mega-promo{display:none!important}
  .gg-final::after{width:120px;right:-50px;top:-24px}
  .gg-wa{right:16px;bottom:16px}
  .gg-fact{width:100%!important;border-left-width:0!important;padding:14px 0!important}
  .gg-fact+.gg-fact{border-top:1px solid var(--e-global-color-ggline)!important}
  .gg-wa .elementor-button-text{display:none}
  .gg-wa .elementor-button{width:56px;padding:0!important;display:flex;align-items:center;justify-content:center}
  .gg-wa .elementor-button-content-wrapper{justify-content:center;gap:0}
}/* End custom CSS */