/* Storefront: Unified Clinical Navy, Aqua & High-Conversion Product Catalogue */
body.shop-page{background:#ffffff;color:#44566a}
.shop-page h1,.shop-page h2,.shop-page h3{color:#12304f}
.shop-page :is(a,button,input,select,summary):focus-visible{outline:2px solid #0e8f98;outline-offset:3px}
.shop-shell{max-width:1360px;margin:auto;padding:0 48px}
.shop-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:#0e8f98;margin:0 0 12px}
.shop-hero{background:linear-gradient(135deg,#0b1e33 0%,#0b2238 55%,#12304f 100%);color:#cbd5e1;overflow:hidden;position:relative}
.shop-hero::before{content:'';position:absolute;inset:0;opacity:.08;background-image:radial-gradient(#1ecfcb 1px,transparent 1px);background-size:24px 24px;pointer-events:none}
.shop-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center;padding-top:44px;padding-bottom:50px;position:relative;z-index:2}
.shop-breadcrumb{font-size:11.5px;color:#94a3b8;margin:0 0 20px;letter-spacing:.04em}
.shop-breadcrumb a{text-decoration:underline;text-underline-offset:4px;color:#cbd5e1}
.shop-hero .shop-kicker{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:rgba(20,184,166,.15);border:1px solid rgba(45,212,191,.35);color:#1ecfcb;margin-bottom:18px}
.shop-hero h1{color:#ffffff;font-size:clamp(38px,4.5vw,58px);line-height:1.08;font-weight:300;letter-spacing:-.03em;max-width:610px}
.shop-hero h1 em{display:inline;font-family:'Playfair Display',Georgia,serif;font-weight:400;color:#8ee8e6}
.shop-hero-copy>p:not(.shop-kicker):not(.shop-breadcrumb){font-size:15.5px;line-height:1.75;max-width:480px;margin:18px 0 0;font-weight:300;color:#cbd5e1}
.shop-hero-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:26px;font-size:13.5px}
.shop-primary-action{display:inline-flex;align-items:center;justify-content:center;gap:14px;background:linear-gradient(90deg,#11a0a8 0%,#0a7a86 100%);color:#ffffff;padding:15px 26px;border-radius:14px;font-weight:700;box-shadow:0 10px 24px -6px rgba(14,143,152,.5);transition:filter .2s,transform .2s}
.shop-primary-action:hover{filter:brightness(1.07);transform:translateY(-2px)}
.shop-primary-action span{font-size:17px;line-height:1}
.shop-secondary-action{color:#8ee8e6;border:1px solid rgba(142,232,230,.35);background:rgba(255,255,255,.06);padding:14px 22px;border-radius:14px;font-weight:600;transition:all .2s}
.shop-secondary-action:hover{background:rgba(255,255,255,.12);border-color:#1ecfcb;color:#ffffff}
.shop-promise-row{display:flex;gap:24px;font-size:12px;font-weight:500;color:#cbd5e1;margin-top:24px}
.shop-promise-row span:before{content:'✓';margin-right:8px;color:#1ecfcb;font-weight:700}
.shop-hero-visual{position:relative;min-height:390px;margin-right:20px}
.shop-editorial-portrait{width:100%;height:390px;object-fit:cover;object-position:60% center;border-radius:24px;border:1px solid rgba(255,255,255,.16);box-shadow:0 25px 50px -12px rgba(0,0,0,.45)}
.shop-photo-caption{position:absolute;top:16px;right:16px;background:rgba(11,30,51,.88);backdrop-filter:blur(8px);border:1px solid rgba(30,207,203,.35);color:#1ecfcb;padding:6px 14px;border-radius:999px;font-size:10px;font-weight:700;letter-spacing:.12em}
.shop-treatment-inset{position:absolute;bottom:18px;left:-24px;display:flex;align-items:center;background:rgba(11,30,51,.92);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.15);padding:10px;gap:16px;max-width:300px;border-radius:18px;box-shadow:0 20px 35px -10px rgba(0,0,0,.45)}
.shop-treatment-inset img{width:88px;height:92px;object-fit:cover;border-radius:12px}
.shop-treatment-inset>div{padding-right:12px;color:#ffffff}
.shop-treatment-inset span{display:block;font-size:9px;font-weight:700;letter-spacing:.12em;margin-bottom:4px;color:#1ecfcb}
.shop-treatment-inset strong{font-family:'Playfair Display',Georgia,serif;font-style:italic;font-size:20px;line-height:1.15;font-weight:400;color:#8ee8e6}
.shop-hero-edition{display:none}
.shop-category-section{max-width:1360px!important;padding:44px 48px 28px!important;margin:auto}
.shop-category-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:24px}
.shop-category-heading h2{font-size:32px;letter-spacing:-.03em;font-weight:800;line-height:1.15;color:#12304f}
.shop-category-heading h2 em{font-family:'Playfair Display',Georgia,serif;font-weight:400;color:#0e8f98}
.shop-category-heading>a{font-size:13px;font-weight:600;color:#0e8f98;display:flex;gap:10px;border-bottom:2px solid rgba(14,143,152,.3);padding-bottom:4px}
.shop-category-section #category-tiles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;padding:0;overflow:visible}
.shop-category-section .cat-tile{height:auto;min-width:0;display:block;border:1px solid #e2e8f0;border-radius:18px;background:#ffffff!important;color:#12304f!important;text-align:left;box-shadow:0 6px 18px -10px rgba(18,48,79,.1)!important;padding:10px;transition:transform .25s,border-color .25s,box-shadow .25s}
.shop-category-section .cat-tile:hover{transform:translateY(-3px)!important;border-color:#0e8f98;box-shadow:0 14px 28px -12px rgba(14,143,152,.22)!important}
.shop-category-image{position:relative;display:block;height:130px;border-radius:12px;overflow:hidden;background:#f8fafc}
.shop-category-image>img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.cat-tile:hover .shop-category-image>img{transform:scale(1.06)}
.shop-category-index{position:absolute;top:8px;left:10px;font-size:10px;font-weight:700;background:rgba(11,30,51,.85);color:#1ecfcb;padding:3px 9px;border-radius:999px;letter-spacing:.08em}
.shop-category-label{display:flex;justify-content:space-between;align-items:center;padding:12px 4px 4px;border-bottom:0;font-size:13px;font-weight:700;color:#12304f}
.shop-category-label>span{font-size:18px;font-weight:600;color:#0e8f98}
.cat-tile[aria-pressed=true]{border:2px solid #0e8f98;background:#e6f5f6!important}
.cat-tile[aria-pressed=true] .shop-category-label{color:#0e8f98}
.shop-page #catalogo{max-width:1360px;padding:20px 48px 70px;scroll-margin-top:105px}
.shop-catalog-layout{display:block}
.shop-page #filters-panel{padding:24px;background:#ffffff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 12px 30px -15px rgba(18,48,79,.12);max-height:calc(100dvh - 125px);overflow:auto;scrollbar-width:thin;top:100px;scroll-margin-top:100px}
.shop-results{min-width:0}
.shop-results-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px;padding-top:24px;border-top:1px solid #e2e8f0}
.shop-results-heading .shop-kicker{margin-bottom:8px}
.shop-results-heading h2{font-size:32px;letter-spacing:-.03em;font-weight:800;line-height:1.2;color:#12304f}
.shop-results-heading h2>span{font-family:Outfit,Arial,sans-serif;font-size:13px;font-weight:600;color:#0e8f98;background:#e6f5f6;padding:4px 12px;border-radius:999px;letter-spacing:0;vertical-align:middle;margin-left:10px}
.shop-results-heading p:not(.shop-kicker){margin-top:8px;font-size:13.5px;color:#64748b}
.shop-search-row{display:flex;gap:12px;align-items:center;margin-bottom:26px}
.shop-catalog-search{position:relative;flex:1;min-width:0}
.shop-catalog-search label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.shop-catalog-search input{width:100%;height:48px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:0 45px 0 18px;color:#12304f;font-size:13.5px;transition:all .2s}
.shop-catalog-search input:focus{background:#ffffff;border-color:#0e8f98;box-shadow:0 0 0 3px rgba(14,143,152,.12);outline:none}
.shop-catalog-search svg{position:absolute;width:18px;height:18px;right:16px;top:15px;color:#0e8f98;pointer-events:none}
.shop-page #sort-select{height:48px;border:1px solid #e2e8f0;border-radius:14px;font-size:13px;font-weight:500;color:#12304f;max-width:195px;background:#f8fafc;padding:0 14px}
.shop-mobile-filter{display:flex!important}
.shop-filter-toggle{display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(90deg,#11a0a8 0%,#0a7a86 100%);color:#fff;border:0;border-radius:14px;height:48px!important;padding:0 22px;font-size:13px;font-weight:700;white-space:nowrap;box-shadow:0 6px 18px -6px rgba(14,143,152,.45);transition:filter .2s}
.shop-filter-toggle:hover{filter:brightness(1.06)}
.shop-filter-toggle[aria-expanded=true]{background:#12304f;color:#ffffff}
.shop-page #active-filters-bar{border-radius:14px;background:#f8fafc;border-color:#e2e8f0}
.shop-page #products-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.shop-page #products-grid>.shop-product-card{border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 8px 24px -14px rgba(18,48,79,.14);background:#ffffff;overflow:hidden;padding:12px;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}
.shop-page #products-grid>.shop-product-card:hover{transform:translateY(-4px)!important;box-shadow:0 20px 36px -14px rgba(18,48,79,.22);border-color:rgba(14,143,152,.35)}
.shop-product-card>.shop-product-image{aspect-ratio:1/1;background:#ffffff;border:1px solid #f1f5f9;border-radius:14px;overflow:hidden;position:relative}
.shop-product-card .shop-product-image img{width:100%;height:100%;padding:6px!important;object-fit:contain;background:#ffffff}
.shop-product-card .shop-product-image>span:last-child{display:none}
.shop-product-card .shop-product-image>.btn-teal{display:inline-block;background:linear-gradient(90deg,#11a0a8 0%,#0a7a86 100%);color:#ffffff;box-shadow:0 4px 10px rgba(14,143,152,.3);border-radius:999px;font-size:10.5px;font-weight:700;padding:4px 11px;left:10px;top:10px}
.shop-product-info{padding:14px 4px 4px!important;flex:1;display:flex;flex-direction:column}
.shop-card-category{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#0e8f98;margin-bottom:6px}
.shop-product-card h3{font-size:15.5px;line-height:1.4;letter-spacing:-.01em;font-weight:700;color:#12304f;min-height:44px;margin-bottom:12px}
.shop-product-card .shop-product-bottom{display:grid;grid-template-columns:1fr;gap:12px;border-top:1px solid #f1f5f9;padding-top:12px;margin-top:auto}
.shop-product-pack{display:block;font-size:11px;font-weight:500;color:#64748b;margin-bottom:4px}
.shop-product-old{font-size:12px;color:#94a3b8;margin-right:8px}
.shop-product-price{display:inline-block;font-size:21px;color:#12304f;font-weight:800;letter-spacing:-.02em}
.shop-add-button{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;height:42px;border:0;border-radius:12px;color:#ffffff;background:linear-gradient(135deg,#0b1e33 0%,#12304f 100%);font-size:12.5px;font-weight:700;box-shadow:0 6px 16px -4px rgba(11,30,51,.35);transition:background .2s,filter .2s,transform .2s,box-shadow .2s}
.shop-add-button:hover{background:#12304f;filter:brightness(1.15);transform:translateY(-1px);box-shadow:0 10px 20px -4px rgba(11,30,51,.45)}
.shop-add-button svg{width:16px;height:16px}
.shop-page #shop-pagination{border-color:#e2e8f0;margin-top:36px}
.shop-page #no-results{background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;padding:50px 25px}
.shop-advanced-filters{border-top:1px solid #e2e8f0;margin:0 0 16px;padding-top:15px}
.shop-advanced-filters>summary{font-size:13px;color:#12304f;font-weight:700;cursor:pointer;padding-bottom:13px}
.shop-advanced-filters>div{border-top:0!important;padding-top:0!important}
.shop-consult{background:linear-gradient(135deg,#0b1e33 0%,#0b2238 55%,#12304f 100%);color:#cbd5e1}
.shop-consult .shop-shell{display:flex;justify-content:space-between;align-items:center;padding-top:56px;padding-bottom:56px;gap:50px}
.shop-consult .shop-kicker{color:#1ecfcb}
.shop-consult h2{font-size:34px;letter-spacing:-.03em;line-height:1.2;font-weight:800;color:#fff}
.shop-consult h2 em{color:#8ee8e6;font-family:'Playfair Display',Georgia,serif;font-weight:400}
.shop-consult p:not(.shop-kicker){font-size:14.5px;line-height:1.8;max-width:520px;margin-top:14px;color:#cbd5e1}
.shop-consult button{background:linear-gradient(90deg,#11a0a8 0%,#0a7a86 100%);color:#ffffff;font-weight:700;padding:15px 26px;border-radius:14px;font-size:13.5px;flex-shrink:0;box-shadow:0 10px 24px -6px rgba(14,143,152,.5);transition:filter .2s,transform .2s}
.shop-consult button:hover{filter:brightness(1.07);transform:translateY(-2px)}
.shop-page .footer{padding:52px 0 24px;background:#ffffff;border-top:1px solid #e2e8f0}
.shop-page .footer.footer-blue{background:linear-gradient(180deg,#0b1e33 0%,#071525 100%)!important;border-top:1px solid rgba(255,255,255,.08)!important;color:#94a3b8!important;padding:56px 0 28px}
.shop-page .footer.footer-blue .footer-brand p{color:#94a3b8!important;font-size:13px;line-height:1.85;margin-top:18px}
.shop-page .footer.footer-blue h3{color:#ffffff!important;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;margin-bottom:18px}
.shop-page .footer.footer-blue .footer-links a{color:#cbd5e1!important;text-decoration:none!important;transition:color .2s,transform .2s;display:inline-block}
.shop-page .footer.footer-blue .footer-links a:hover{color:#1ecfcb!important;transform:translateX(3px)}
.shop-page .footer.footer-blue .footer-bottom{border-top:1px solid rgba(255,255,255,.08)!important;color:#64748b!important;margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:12px}
.shop-page .footer.footer-blue .footer-bottom a{color:#94a3b8!important;text-decoration:none!important;transition:color .2s}
.shop-page .footer.footer-blue .footer-bottom a:hover{color:#1ecfcb!important;text-decoration:underline!important}
.shop-page .footer .container{max-width:1360px;margin:auto;padding:0 48px}
.shop-page .footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:45px}
.shop-page .footer .logo img{width:174px;height:38px;object-fit:contain}
.shop-page .footer p{font-size:13px;color:#64748b;line-height:1.85;margin-top:18px;max-width:290px}
.shop-page .footer h3{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#12304f;margin-bottom:17px;font-weight:700}
.shop-page .footer-links{display:grid;gap:10px;font-size:13px;color:#475569}
.shop-page .footer-links a:hover{color:#0e8f98}
.shop-page .footer-bottom{display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#64748b;border-top:1px solid #e2e8f0;margin-top:38px;padding-top:20px}
.shop-page .footer-bottom a{text-decoration:underline}
@media(min-width:1024px){.shop-catalog-layout.filters-open{display:grid;grid-template-columns:265px minmax(0,1fr);gap:28px;align-items:start}.shop-catalog-layout.filters-open #products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1150px){.shop-shell{padding:0 32px}.shop-hero-grid{padding-top:35px;padding-bottom:35px;gap:45px}.shop-hero h1{font-size:44px}.shop-hero-visual,.shop-editorial-portrait{height:360px;min-height:360px}.shop-category-section{padding:34px 32px 24px!important}.shop-page #catalogo{padding:20px 32px 55px}.shop-page #products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-catalog-layout.filters-open #products-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-product-price{font-size:19px}}
@media(max-width:1023px){.shop-page #filters-panel{max-height:none;overflow:visible;position:static;margin-bottom:25px}.shop-page #filters-panel .shop-filter-search{display:none}.shop-catalog-layout.filters-open #products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.shop-category-image{height:110px}.shop-hero h1{font-size:40px}.shop-hero-visual,.shop-editorial-portrait{height:340px;min-height:340px}.shop-treatment-inset{left:-15px}.shop-treatment-inset img{width:76px;height:82px}.shop-treatment-inset strong{font-size:18px}.shop-hero-actions{gap:14px}.shop-primary-action{padding:14px 20px;font-size:12.5px}}
@media(max-width:700px){.shop-shell{padding-left:20px;padding-right:20px}.shop-hero-grid{grid-template-columns:1fr;gap:28px;padding-top:24px;padding-bottom:32px}.shop-breadcrumb{margin-bottom:18px}.shop-hero h1{font-size:36px;max-width:500px}.shop-hero-copy>p:not(.shop-kicker):not(.shop-breadcrumb){font-size:14px;margin-top:16px}.shop-hero-actions{margin-top:20px}.shop-promise-row{font-size:11px;margin-top:18px;gap:16px}.shop-hero-visual{min-height:260px;height:260px;margin:0}.shop-editorial-portrait{height:260px;min-height:260px;border-radius:20px;object-position:center 38%}.shop-treatment-inset{left:12px;bottom:12px;max-width:255px}.shop-treatment-inset img{width:68px;height:72px}.shop-treatment-inset strong{font-size:17px}.shop-category-section{padding:28px 20px 18px!important}.shop-category-heading{align-items:start;gap:18px;margin-bottom:18px}.shop-category-heading h2{font-size:26px}.shop-category-heading>a{display:none}.shop-category-section #category-tiles{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 10px;margin:0 -4px;scrollbar-width:thin}.shop-category-section .cat-tile{flex:0 0 148px;scroll-snap-align:start}.shop-category-image{height:105px}.shop-category-label{font-size:12px;padding-top:10px}.shop-page #catalogo{padding:16px 20px 45px}.shop-results-heading{padding-top:20px;margin-bottom:18px}.shop-results-heading h2{font-size:26px}.shop-results-heading h2>span{font-size:11px;margin-left:6px}.shop-results-heading p:not(.shop-kicker){font-size:12px;line-height:1.6;max-width:290px}.shop-search-row{gap:10px;flex-wrap:wrap;margin-bottom:22px}.shop-catalog-search{flex-basis:100%}.shop-catalog-search input{font-size:13px;height:46px}.shop-page #sort-select{flex:1;max-width:none;height:44px}.shop-filter-toggle{height:44px!important;padding:0 18px}.shop-page #products-grid,.shop-catalog-layout.filters-open #products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.shop-product-card>.shop-product-image{aspect-ratio:1/1;border-radius:12px}.shop-card-category{font-size:9px;letter-spacing:.06em;margin-bottom:5px;line-height:1.4}.shop-product-info{padding-top:10px!important}.shop-product-card h3{font-size:13px;min-height:38px;line-height:1.4;margin-bottom:8px}.shop-product-pack{font-size:10px;min-height:14px;margin-bottom:3px}.shop-product-price{font-size:17px;display:block}.shop-product-old{font-size:10px;display:block;min-height:14px;margin-bottom:1px}.shop-add-button{font-size:11px;gap:6px;height:38px;border-radius:10px}.shop-add-button svg{width:14px;height:14px}.shop-product-card .shop-product-image>.btn-teal{font-size:9.5px;padding:3px 8px;left:8px;top:8px}.shop-consult .shop-shell{flex-direction:column;align-items:start;gap:24px;padding-top:38px;padding-bottom:38px}.shop-consult h2{font-size:26px}.shop-page .footer .container{padding:0 20px}.shop-page .footer-grid{grid-template-columns:1fr 1fr;gap:28px}.shop-page .footer-brand{grid-column:1/-1}.shop-page .footer-bottom{flex-direction:column;gap:12px}.shop-page>a[aria-label="Chatear por WhatsApp"]{display:none}}
@media(prefers-reduced-motion:reduce){.shop-page *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media(max-width:700px){.shop-page .floating-contact-btn{display:none!important}}
