:root { color-scheme: dark; --page-gutter: clamp(1.25rem,4vw,2.5rem); }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; overflow-x: hidden; }
a { text-underline-offset: .2em; }
.site-header { position: sticky; top: 0; z-index: 50; padding-block: .85rem; background: rgba(9,11,14,.88); border-bottom: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(16px); }
.site-header > .wp-block-group,
.hero > .wp-block-columns,
.section > .alignwide,
.cta-band > .wp-block-group,
.page-shell > .alignwide,
.site-footer > .wp-block-group { width: min(1180px,calc(100% - (var(--page-gutter) * 2))); margin-inline: auto; }
.site-header .wp-block-navigation-item__content { color: #fff; text-decoration: none; }
.mobile-navigation { display: none; position: relative; }
.mobile-navigation summary { padding: .6rem .8rem; color: #fff; border: 1px solid rgba(255,255,255,.25); border-radius: .55rem; cursor: pointer; font-weight: 750; list-style: none; }
.mobile-navigation summary::-webkit-details-marker { display: none; }
.mobile-navigation summary::after { content: " +"; color: #ff7a1a; }
.mobile-navigation[open] summary::after { content: " −"; }
.mobile-navigation nav { position: absolute; top: calc(100% + .75rem); right: 0; z-index: 100; width: min(18rem,calc(100vw - 2.5rem)); padding: .6rem; background: #12161c; border: 1px solid rgba(255,122,26,.4); border-radius: .8rem; box-shadow: 0 1rem 3rem rgba(0,0,0,.45); }
.mobile-navigation nav a { display: block; padding: .8rem .9rem; color: #fff; border-bottom: 1px solid rgba(255,255,255,.1); text-decoration: none; }
.mobile-navigation nav a:last-child { border-bottom: 0; }
.wp-block-navigation__responsive-container.is-menu-open { padding: 5rem var(--page-gutter) 2rem; color: #fff; background: #090b0e !important; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { align-items: flex-start; width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid rgba(255,255,255,.12); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { display: block; width: 100%; padding-block: .9rem; color: #fff; font-size: 1.15rem; }
.wp-block-navigation__responsive-container-close { top: 1.25rem; right: var(--page-gutter); color: #fff; }
.brand-title a { color: #fff; text-decoration: none; font-weight: 850; letter-spacing: -.03em; }
.brand-title a::before { content: "P"; display: inline-grid; width: 2rem; height: 2rem; margin-right: .55rem; place-items: center; color: #090b0e; background: #ff7a1a; border-radius: .55rem; font-size: 1rem; }
.site-footer { margin-top: 0; padding-block: 4rem 2rem; color: #aab2bd; background: #08090c; border-top: 1px solid rgba(255,122,26,.3); }
.site-footer h3 { color: #fff; font-size: 1rem; }
.site-footer .wp-block-columns { display: grid; grid-template-columns: 1.15fr 1fr 1fr; gap: clamp(2rem,6vw,5rem); }
.site-footer .wp-block-column { min-width: 0; }
.site-footer .wp-block-navigation-item__content { color: #aab2bd; }
.footer-note { padding-top: 1rem; font-size: .8rem; text-align: center; }
.page-shell { min-height: 65vh; padding-block: 4rem; }
.hero { min-height: 78vh; padding-block: clamp(5rem,10vw,9rem); background: radial-gradient(circle at 78% 28%,rgba(255,122,26,.24),transparent 30%),linear-gradient(135deg,#090b0e,#161b23); position: relative; overflow: hidden; }
.hero::after { content: ""; position: absolute; width: 34rem; height: 34rem; right: -10rem; top: 12%; border: 1px solid rgba(255,122,26,.24); border-radius: 50%; box-shadow: 0 0 0 4rem rgba(255,122,26,.03),0 0 0 8rem rgba(255,122,26,.02); }
.hero .wp-block-columns { position: relative; z-index: 1; }
.hero h1 { max-width: 13ch; margin-block: .35rem 1.25rem; font-size: clamp(3rem,7vw,6.5rem); }
.hero h1 mark { color: #ff7a1a; background: transparent; }
.hero-copy { max-width: 54ch; color: #c7ced7; font-size: clamp(1.05rem,2vw,1.25rem); }
.wp-block-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; }
.hero .wp-block-buttons { margin-bottom: 1.75rem; }
.wp-block-buttons .wp-block-button { display: inline-flex; margin: 0; }
.wp-block-buttons .wp-block-button__link { display: inline-flex; align-items: center; min-height: 3rem; padding: .85rem 1.25rem; white-space: normal; }
.eyebrow { margin: 0 0 .65rem; color: #ff7a1a; font-size: .8rem; font-weight: 800; letter-spacing: .14em; }
.stat-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.stat { min-height: 8rem; padding: 1.4rem; background: rgba(255,255,255,.055); border: 1px solid rgba(255,255,255,.11); border-radius: 1rem; }
.stat strong { display: block; color: #ff7a1a; font-size: 2rem; line-height: 1; }
.stat span { display: block; margin-top: .55rem; color: #c7ced7; font-size: .9rem; }
.section { padding-block: clamp(4rem,8vw,7rem); }
.section-light { color: #16191f; background: #fff8f1; }
.section-muted { background: #12161c; }
.section h2 { max-width: 18ch; font-size: clamp(2rem,4vw,3.5rem); }
.lead { max-width: 64ch; color: #aab2bd; font-size: 1.12rem; }
.section-light .lead { color: #515966; }
.card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-top: 2rem; }
.card { padding: 1.55rem; background: #151a21; border: 1px solid rgba(255,255,255,.09); border-radius: 1rem; transition: transform .25s ease,border-color .25s ease; }
.card:hover { transform: translateY(-4px); border-color: rgba(255,122,26,.65); }
.card h3 { margin: .75rem 0 .45rem; font-size: 1.2rem; }
.card p { margin: 0; color: #aab2bd; font-size: .94rem; }
.card .number { color: #ff7a1a; font-weight: 800; }
.product-card { min-height: 18rem; display: flex; flex-direction: column; justify-content: flex-end; background: linear-gradient(180deg,rgba(255,122,26,.08),rgba(9,11,14,.98)),radial-gradient(circle at 70% 20%,rgba(255,122,26,.34),transparent 38%); }
.presentation-grid .product-card { justify-content: flex-start; overflow: hidden; }
.product-card__media { position: relative; height: clamp(12rem,20vw,17rem); margin: -1.55rem -1.55rem 1.25rem; overflow: hidden; background: var(--elmt-ice); }
.product-card__media::after { content: ""; position: absolute; inset: auto 0 0; height: 40%; background: linear-gradient(transparent,rgba(18,36,58,.16)); pointer-events: none; }
.product-card__media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s ease; }
.presentation-grid .product-card:hover .product-card__media img { transform: scale(1.045); }
.process { counter-reset: step; display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin-top: 2rem; }
.process > div { position: relative; padding: 4rem 1.25rem 1.25rem; border-top: 2px solid #ff7a1a; background: #151a21; }
.process > div::before { counter-increment: step; content: "0" counter(step); position: absolute; top: .9rem; color: #ff7a1a; font-size: 1.45rem; font-weight: 850; }
.logo-wall { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1rem; margin-top: 2rem; }
.fake-logo { display: grid; min-height: 7rem; place-items: center; color: #424b56; background: #fff; border-radius: .8rem; font-weight: 850; letter-spacing: .08em; }
.quote-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1rem; margin-top: 1.5rem; }
blockquote { margin: 0; padding: 1.5rem; background: #fff; border-left: 4px solid #ff7a1a; color: #222832; border-radius: .5rem; }
blockquote cite { display: block; margin-top: 1rem; color: #6d7580; font-size: .86rem; font-style: normal; }
.faq details { margin-bottom: .7rem; padding: 1rem 1.15rem; background: #151a21; border: 1px solid rgba(255,255,255,.09); border-radius: .7rem; }
.faq summary { cursor: pointer; font-weight: 750; }
.elmt-form-shell { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(2rem,6vw,6rem); padding: clamp(2rem,5vw,4rem); background: #12161c; border: 1px solid rgba(255,122,26,.35); border-radius: 1.2rem; }
.elmt-form-content { min-width: 0; }
.elmt-contact-form { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
.elmt-contact-form label { display: grid; gap: .35rem; color: #dbe0e6; font-size: .86rem; font-weight: 700; }
.elmt-contact-form label span { color: #8e98a4; font-weight: 400; }
.elmt-contact-form input,.elmt-contact-form select,.elmt-contact-form textarea { width: 100%; padding: .85rem .9rem; color: #fff; background: #090b0e; border: 1px solid #343b45; border-radius: .5rem; font: inherit; }
.elmt-contact-form textarea { min-height: 9rem; max-height: 24rem; resize: none; }
.elmt-contact-form input:focus,.elmt-contact-form select:focus,.elmt-contact-form textarea:focus { outline: 2px solid #ff7a1a; outline-offset: 2px; }
.elmt-contact-form .full { grid-column: 1/-1; }
.elmt-contact-form .check { display: flex; gap: .65rem; align-items: flex-start; justify-content: flex-start; }
.elmt-contact-form .check input[type="checkbox"] { flex: 0 0 1rem; width: 1rem; min-width: 1rem; height: 1rem; margin: .2rem 0 0; padding: 0; accent-color: var(--elmt-navy); }
.elmt-contact-form button { padding: .9rem 1.2rem; border: 0; border-radius: .55rem; color: #090b0e; background: #ff7a1a; font-weight: 850; cursor: pointer; }
.elmt-contact-form button:disabled { opacity: .65; cursor: wait; }
.hp-field { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.form-notice { width: 100%; margin: 0 0 1rem; padding: .85rem 1rem; border-radius: .5rem; }
.form-notice.success { color: #c7f9d4; background: #12361c; }
.form-notice.error { color: #ffd3d3; background: #471919; }
.cta-band { padding-block: clamp(3rem,7vw,5rem); background: #ff7a1a; color: #090b0e; }
.cta-band > .wp-block-group { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; }
.cta-band h2 { margin: 0; color: #090b0e; }
.cta-band .wp-block-button { flex: 0 0 auto; margin: 0; }
.cta-band .wp-block-button__link { color: #fff; background: #090b0e; }
.reveal { opacity: 0; transform: translateY(22px); transition: opacity .55s ease,transform .55s ease; }
.reveal.is-visible { opacity: 1; transform: none; }

/* WooCommerce storefront */
.woocommerce main,
.woocommerce-page main { width: min(1180px,calc(100% - (var(--page-gutter) * 2))); margin-inline: auto; padding-block: clamp(3rem,7vw,6rem); }
.woocommerce .woocommerce-breadcrumb { margin-bottom: 1.25rem; color: #8993a0; font-size: .8rem; }
.woocommerce .woocommerce-breadcrumb a { color: #ff9a52; }
.woocommerce-products-header__title.page-title,
.woocommerce div.product .product_title { margin: 0 0 1.5rem; color: #fff; font-size: clamp(2.4rem,6vw,4.8rem); letter-spacing: -.045em; }
.woocommerce .woocommerce-result-count { color: #9ca6b2; }
.woocommerce .woocommerce-ordering select { padding: .7rem 2.5rem .7rem .85rem; color: #fff; background: #151a21; border: 1px solid #343b45; border-radius: .55rem; }
.woocommerce ul.products { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.25rem; margin-top: 2rem; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product { float: none; width: auto; min-width: 0; margin: 0; padding: 1rem; background: #151a21; border: 1px solid rgba(255,255,255,.09); border-radius: 1rem; transition: transform .2s ease,border-color .2s ease; }
.woocommerce ul.products li.product:hover { transform: translateY(-4px); border-color: rgba(255,122,26,.65); }
.woocommerce ul.products li.product a img { aspect-ratio: 1/1; margin: 0 0 1rem; object-fit: cover; background: radial-gradient(circle at 65% 25%,rgba(255,122,26,.25),transparent 36%),#0b0e12; border-radius: .75rem; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 3rem; padding: 0; color: #fff; font-size: 1.08rem; }
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: #ff7a1a; font-weight: 850; }
.elmt-price-pending { display: inline-flex; align-items: center; min-height: 2rem; padding: .35rem .7rem; color: var(--elmt-navy); background: #eef8f7; border: 1px solid var(--elmt-line); border-radius: 999px; font-size: .88rem; font-weight: 800; }
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button { padding: .85rem 1.1rem; color: #090b0e !important; background: #ff7a1a !important; border: 0; border-radius: .55rem; font-weight: 850; }
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.wc-block-components-button:hover { background: #ff964a !important; }
.single-product .wp-block-group.woocommerce.product { display: block; }
.woocommerce div.product div.images,.woocommerce div.product div.summary { float: none; width: auto; margin: 0; }
.woocommerce div.product div.images img { background: #151a21; border-radius: 1rem; }
.woocommerce div.product form.cart { display: flex; flex-wrap: wrap; gap: .75rem; }
.woocommerce .quantity .qty { min-height: 3rem; color: #fff; background: #0b0e12; border: 1px solid #343b45; border-radius: .5rem; }
.woocommerce-tabs,.related.products { grid-column: 1/-1; }
.woocommerce table.shop_table { overflow: hidden; background: #12161c; border-color: #343b45; border-radius: .8rem; }
.woocommerce table.shop_table td,.woocommerce table.shop_table th { border-color: #343b45; }
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select { padding: .8rem; color: #fff; background: #0b0e12; border: 1px solid #343b45; border-radius: .5rem; }
.woocommerce-info,.woocommerce-message { color: #e8edf3; background: #151a21; border-top-color: #ff7a1a; }
.woocommerce-info::before,.woocommerce-message::before { color: #ff7a1a; }
.elmt-order-next-steps { margin-block: 2rem; padding: clamp(1.5rem,4vw,2.5rem); background: #151a21; border: 1px solid rgba(255,122,26,.45); border-radius: 1rem; }
.elmt-order-next-steps h2 { margin-block: .25rem 1rem; color: #fff; }
.elmt-order-next-steps .button { display: inline-flex; margin-top: .75rem; text-decoration: none; }
.elmt-order-warning { margin-top: 1.25rem; color: #9ca6b2; font-size: .82rem; }

/* Checkout: WooCommerce uses a deliberately minimal template, so provide a
   clear page heading and keep the order summary readable at medium widths. */
.woocommerce-checkout main { width: min(1180px,calc(100% - (var(--page-gutter) * 2))); margin-inline: auto; padding-block: 0 clamp(4rem,8vw,7rem); }
.woocommerce-checkout main::before { content: "Finaliza tu pedido"; display: block; margin: 0 calc(var(--page-gutter) * -1) clamp(2.5rem,6vw,4.5rem); padding: clamp(3rem,7vw,5.5rem) var(--page-gutter); color: #fff; background: radial-gradient(circle at 82% 40%,rgba(255,122,26,.25),transparent 28%),linear-gradient(135deg,#11161d,#090b0e); border-bottom: 1px solid rgba(255,122,26,.3); font-size: clamp(2.5rem,6vw,5rem); font-weight: 850; letter-spacing: -.045em; line-height: .95; }
.woocommerce-checkout .wc-block-components-sidebar-layout { display: grid !important; grid-template-columns: minmax(0,1.55fr) minmax(22rem,.75fr); align-items: start; gap: clamp(2rem,5vw,4rem); }
.woocommerce-checkout .wc-block-components-sidebar-layout > div:empty { display: none; }
.woocommerce-checkout .wc-block-checkout__main,
.woocommerce-checkout .wc-block-checkout__sidebar { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
.woocommerce-checkout .wc-block-checkout__sidebar { position: sticky; top: 6rem; min-width: 0; }
.woocommerce-checkout .wc-block-components-order-summary-item__description { min-width: 0; }
.woocommerce-checkout .wc-block-components-product-name { overflow-wrap: normal; word-break: normal; }
.woocommerce-checkout .wc-block-components-product-metadata__description { display: none; }
.woocommerce-checkout .wc-block-components-text-input label { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }
.woocommerce-checkout .wc-block-components-text-input input { min-height: 3.6rem; padding: .9rem 1rem !important; color: #111820 !important; background: #fff !important; }
.woocommerce-checkout .wc-block-components-text-input input::placeholder { color: #68717c !important; opacity: 1 !important; }
.woocommerce-checkout .wc-block-components-address-form__country { display: none !important; }
.woocommerce-checkout .wc-block-components-address-form__state .wc-blocks-components-select__label { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; }
.woocommerce-checkout .wc-block-components-address-form__state select { min-height: 3.6rem; padding-block: .9rem !important; }
@media (prefers-reduced-motion: reduce) { *,*::before,*::after { scroll-behavior: auto!important; transition: none!important; } .reveal { opacity: 1; transform: none; } }
@media (max-width: 900px) { .card-grid,.quote-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .process,.logo-wall { grid-template-columns: repeat(2,minmax(0,1fr)); } .elmt-form-shell { grid-template-columns: 1fr; } }
@media (max-width: 900px) { .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 980px) { .desktop-navigation { display: none !important; } .mobile-navigation { display: block; } }
@media (max-width: 900px) { .woocommerce-checkout .wc-block-components-sidebar-layout { grid-template-columns: 1fr; } .woocommerce-checkout .wc-block-checkout__sidebar { position: static; grid-row: 2; } .woocommerce-checkout main::before { margin-inline: calc(var(--page-gutter) * -1); } }

/* Pharma ELMT visual direction: white clinical base with navy and mint accents. */
:root { --elmt-navy: #12243a; --elmt-mint: #4aaea9; --elmt-mint-soft: #dff1ef; --elmt-ice: #eef5f5; --elmt-silver: #697985; --elmt-line: #d7e2e3; --elmt-green: #4e9b45; --elmt-red: #a72e3a; color-scheme: light; }
body { color: var(--elmt-navy); background: #f7fafa; }
.site-header { background: rgba(255,255,255,.92); border-bottom-color: var(--elmt-line); box-shadow: 0 .5rem 2rem rgba(18,36,58,.05); }
.site-header .wp-block-navigation-item__content,.brand-title a { color: var(--elmt-navy); }
.brand-title a::before { content: "E"; color: #fff; background: linear-gradient(135deg,var(--elmt-navy),var(--elmt-mint)); }
.mobile-navigation summary { color: var(--elmt-navy); border-color: var(--elmt-line); }
.mobile-navigation summary::after,.eyebrow { color: var(--elmt-mint); }
.mobile-navigation nav { background: #fff; border-color: rgba(74,174,169,.45); box-shadow: 0 1rem 3rem rgba(18,36,58,.15); }
.mobile-navigation nav a { color: var(--elmt-navy); border-bottom-color: var(--elmt-line); }
.hero { min-height: 76vh; color: var(--elmt-navy); background: radial-gradient(circle at 78% 28%,rgba(74,174,169,.18),transparent 30%),linear-gradient(135deg,#fff 0%,#edf5f5 100%); }
.hero::after { border-color: rgba(74,174,169,.25); box-shadow: 0 0 0 4rem rgba(74,174,169,.04),0 0 0 8rem rgba(74,174,169,.025); }
.hero h1,.section h1,.section h2 { color: var(--elmt-navy); }
.hero h1 mark { color: var(--elmt-mint); }
.hero-copy,.lead,.card p,.stat span { color: var(--elmt-silver); }
.hero-identity { align-content: center; }
.hero-logo-stage { position: relative; display: grid; grid-column: 1/-1; min-height: clamp(15rem,31vw,24rem); padding: 2rem; place-content: center; overflow: hidden; color: var(--elmt-navy); background: linear-gradient(145deg,rgba(255,255,255,.95),rgba(223,241,239,.78)); border: 1px solid rgba(74,174,169,.35); border-radius: 1.5rem; box-shadow: 0 2rem 5rem rgba(18,36,58,.12); text-align: center; }
.hero-logo-stage::before { content: "E"; position: absolute; inset: 50% auto auto 50%; color: rgba(18,36,58,.055); font-size: clamp(12rem,26vw,22rem); font-weight: 900; line-height: .7; transform: translate(-50%,-50%) rotate(-8deg); }
.hero-logo-stage::after { content: ""; position: absolute; inset: 12% 10%; border: 1px solid rgba(74,174,169,.3); border-radius: 50%; transform: rotate(-18deg); }
.hero-logo-stage span,.hero-logo-stage strong,.hero-logo-stage small { position: relative; z-index: 1; }
.hero-logo-stage span { color: var(--elmt-mint); font-size: .72rem; font-weight: 800; letter-spacing: .18em; }
.hero-logo-stage strong { margin-block: .4rem; font-size: clamp(2rem,5vw,4rem); letter-spacing: -.05em; }
.hero-logo-stage small { color: var(--elmt-silver); }
.stat { background: rgba(255,255,255,.82); border-color: var(--elmt-line); box-shadow: 0 .75rem 2rem rgba(18,36,58,.06); }
.stat strong,.card .number,.process > div::before { color: var(--elmt-mint); }
.section-muted { background: var(--elmt-ice); }
.section-light { color: var(--elmt-navy); background: #fff; }
.card,.process > div,.faq details { color: var(--elmt-navy); background: #fff; border-color: var(--elmt-line); box-shadow: 0 .8rem 2.2rem rgba(18,36,58,.055); }
.card:hover { border-color: var(--elmt-mint); box-shadow: 0 1.2rem 2.8rem rgba(18,36,58,.1); }
.process > div { border-top-color: var(--elmt-mint); }
.product-card { background: linear-gradient(180deg,rgba(74,174,169,.08),#fff),radial-gradient(circle at 70% 20%,rgba(74,174,169,.22),transparent 38%); }
.card-grid .product-card:nth-child(2) { border-top: 3px solid var(--elmt-green); }
.card-grid .product-card:nth-child(3) { border-top: 3px solid var(--elmt-red); }
.cta-band { color: #fff; background: linear-gradient(135deg,var(--elmt-navy),#1b5667); }
.cta-band h2 { color: #fff; }
.cta-band .wp-block-button__link { color: var(--elmt-navy); background: #fff; }
.wp-block-button__link,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button { color: #fff !important; background: var(--elmt-navy) !important; }
.wp-block-button__link:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.wc-block-components-button:hover { background: #1b5667 !important; }
.is-style-outline .wp-block-button__link { color: var(--elmt-navy) !important; background: transparent !important; border-color: var(--elmt-navy); }
.elmt-form-shell { color: var(--elmt-navy); background: #fff; border-color: var(--elmt-line); box-shadow: 0 1.5rem 4rem rgba(18,36,58,.08); }
.elmt-contact-form label { color: var(--elmt-navy); }
.elmt-contact-form input,.elmt-contact-form select,.elmt-contact-form textarea { color: var(--elmt-navy); background: #f7fafa; border-color: var(--elmt-line); }
.elmt-contact-form input:focus,.elmt-contact-form select:focus,.elmt-contact-form textarea:focus { outline-color: var(--elmt-mint); }
.elmt-contact-form button { color: #fff; background: var(--elmt-navy); }
.woocommerce main,.woocommerce-page main { color: var(--elmt-navy); }
.woocommerce-products-header__title.page-title,.woocommerce div.product .product_title { color: var(--elmt-navy); }
.woocommerce .woocommerce-result-count { color: var(--elmt-silver); }
.woocommerce .woocommerce-ordering select,.woocommerce .quantity .qty { color: var(--elmt-navy); background: #fff; border-color: var(--elmt-line); }
.woocommerce ul.products li.product,.woocommerce table.shop_table,.woocommerce-info,.woocommerce-message,.elmt-order-next-steps { color: var(--elmt-navy); background: #fff; border-color: var(--elmt-line); box-shadow: 0 .8rem 2.2rem rgba(18,36,58,.055); }
.woocommerce ul.products li.product .woocommerce-loop-product__title,.elmt-order-next-steps h2 { color: var(--elmt-navy); }
.woocommerce ul.products li.product a img,.woocommerce div.product div.images img { background: radial-gradient(circle at 65% 25%,rgba(74,174,169,.15),transparent 36%),#edf5f5; }
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price { color: var(--elmt-mint); }
.woocommerce-checkout main::before { color: var(--elmt-navy); background: radial-gradient(circle at 82% 40%,rgba(74,174,169,.2),transparent 28%),linear-gradient(135deg,#fff,#eaf3f3); border-bottom-color: rgba(74,174,169,.35); }
.site-footer { color: #c3d0d6; background: var(--elmt-navy); border-top-color: rgba(74,174,169,.55); }
.site-footer h3,.site-footer .wp-block-navigation-item__content,.site-footer a { color: #fff; }
@media (max-width: 700px) { .hero-logo-stage { min-height: 15rem; margin-top: 1rem; } }
@media (max-width: 700px) { :root { --page-gutter: 1.25rem; } .desktop-navigation { display: none !important; } .mobile-navigation { display: block; } .hero { min-height: auto; padding-block: 4rem; } .section { padding-block: 4rem; } .section h2 { font-size: clamp(2rem,10vw,2.75rem); } .card-grid,.quote-grid,.process,.logo-wall,.elmt-contact-form,.site-footer .wp-block-columns,.woocommerce ul.products { grid-template-columns: 1fr; } .quote-grid { margin-top: 2rem; } .stat-grid { grid-template-columns: 1fr 1fr; margin-top: .5rem; } .site-header { position: relative; } .wp-block-buttons .wp-block-button { width: 100%; } .wp-block-buttons .wp-block-button__link { justify-content: center; width: 100%; } .cta-band > .wp-block-group { align-items: stretch; } .cta-band h2 { width: 100%; } .cta-band .wp-block-button,.cta-band .wp-block-button__link { width: 100%; } .cta-band .wp-block-button__link { justify-content: center; } }

/* Minimal product catalogue and product detail. */
.post-type-archive-product .woocommerce-products-header,
.tax-product_cat .woocommerce-products-header { max-width: 42rem; margin-bottom: 2rem; }
.post-type-archive-product .woocommerce-products-header__title.page-title,
.tax-product_cat .woocommerce-products-header__title.page-title { margin-bottom: .5rem; font-size: clamp(2.4rem,5vw,4rem); }
.post-type-archive-product .woocommerce-result-count,
.post-type-archive-product .woocommerce-ordering,
.tax-product_cat .woocommerce-result-count,
.tax-product_cat .woocommerce-ordering { display: none; }
.woocommerce ul.products { grid-template-columns: repeat(auto-fit,minmax(15rem,20rem)); justify-content: start; gap: 1.5rem; margin-top: 1.25rem; }
.woocommerce ul.products li.product { padding: .7rem; border-radius: 1.1rem; box-shadow: 0 .8rem 2rem rgba(18,36,58,.045); }
.woocommerce ul.products li.product:hover { transform: translateY(-2px); }
.woocommerce ul.products li.product > a:first-child,
.woocommerce ul.products li.product .wc-block-components-product-image > a { display: block; overflow: hidden; border-radius: .8rem; }
.woocommerce ul.products li.product a img { aspect-ratio: 4/5; margin: 0 0 .85rem; object-fit: cover; border-radius: .8rem; }
.woocommerce ul.products li.product .wc-block-components-product-image img { transform: scale(1.55); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { min-height: 0; padding: 0 .35rem; font-size: 1.05rem; }
.woocommerce ul.products li.product .price { padding-inline: .35rem; }
.woocommerce ul.products li.product .elmt-catalog-stock { margin: .35rem .35rem 0; color: var(--elmt-silver); font-size: .78rem; }
.woocommerce ul.products li.product .elmt-catalog-stock strong { color: var(--elmt-navy); font-weight: 850; }
.woocommerce ul.products li.product .elmt-catalog-stock.is-empty,
.woocommerce ul.products li.product .elmt-catalog-stock.is-empty strong { color: var(--elmt-red); }
.woocommerce ul.products li.product .button { width: calc(100% - .7rem); margin: .8rem .35rem .35rem; text-align: center; }

/* Polished catalogue cards: compact, consistent and ready to scale to 20 products. */
.post-type-archive-product ul.products,
.tax-product_cat ul.products {
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(1rem,2.2vw,1.6rem);
  width: 100%;
  max-width: 72rem;
}
.post-type-archive-product ul.products li.product,
.tax-product_cat ul.products li.product {
  position: relative;
  display: flex;
  min-height: 100%;
  padding: .75rem;
  flex-direction: column;
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--elmt-line);
  border-radius: 1.15rem;
  box-shadow: 0 .75rem 2rem rgba(18,36,58,.07);
}
.post-type-archive-product ul.products li.product::before,
.tax-product_cat ul.products li.product::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg,var(--elmt-mint),#79c8c4);
}
.post-type-archive-product ul.products li.product > a:first-child,
.tax-product_cat ul.products li.product > a:first-child {
  display: flex;
  flex: 1;
  flex-direction: column;
  color: inherit;
  text-decoration: none;
}
.post-type-archive-product ul.products li.product a img,
.tax-product_cat ul.products li.product a img {
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0 0 1rem;
  padding: clamp(.7rem,2vw,1.15rem);
  object-fit: contain;
  background: linear-gradient(145deg,#f8fbfb,#edf5f5);
  border: 1px solid rgba(74,174,169,.14);
  border-radius: .85rem;
}
.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title {
  min-height: auto;
  margin: 0;
  padding: 0 .35rem;
  color: var(--elmt-navy);
  font-size: clamp(1.05rem,1.5vw,1.25rem);
  font-weight: 850;
  line-height: 1.15;
  text-align: left;
}
.post-type-archive-product ul.products li.product .elmt-product-category,
.tax-product_cat ul.products li.product .elmt-product-category {
  display: block;
  margin: 0 .35rem .35rem;
  color: var(--elmt-mint);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .1em;
  line-height: 1.2;
  text-transform: uppercase;
}
.post-type-archive-product ul.products li.product .price,
.tax-product_cat ul.products li.product .price {
  display: block;
  order: 3;
  margin: .65rem .35rem 0;
  padding: 0;
  color: var(--elmt-navy);
  font-size: 1.05rem;
  font-weight: 850;
  text-align: left;
}
.post-type-archive-product ul.products li.product .elmt-catalog-stock,
.tax-product_cat ul.products li.product .elmt-catalog-stock {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  order: 4;
  margin: .55rem .35rem 0;
  padding: .35rem .6rem;
  color: #276746;
  background: #e8f6ee;
  border: 1px solid #cce8d7;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 750;
}
.post-type-archive-product ul.products li.product .elmt-catalog-stock::before,
.tax-product_cat ul.products li.product .elmt-catalog-stock::before {
  content: "";
  width: .45rem;
  height: .45rem;
  margin-right: .4rem;
  background: #3b9a68;
  border-radius: 50%;
}
.post-type-archive-product ul.products li.product .elmt-catalog-stock.is-empty,
.tax-product_cat ul.products li.product .elmt-catalog-stock.is-empty {
  color: #9b3030;
  background: #fff0f0;
  border-color: #f0cccc;
}
.post-type-archive-product ul.products li.product .elmt-catalog-stock.is-empty::before,
.tax-product_cat ul.products li.product .elmt-catalog-stock.is-empty::before { background: var(--elmt-red); }
.post-type-archive-product ul.products li.product .button,
.tax-product_cat ul.products li.product .button {
  order: 5;
  width: auto;
  margin: 1rem .35rem .35rem;
  padding: .8rem 1rem;
  text-align: center;
}
.post-type-archive-product ul.products li.product.has-quick-view::after,
.tax-product_cat ul.products li.product.has-quick-view::after {
  content: "Ver detalles";
  display: flex;
  min-height: 2.8rem;
  margin: 1rem .35rem .35rem;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: var(--elmt-navy);
  border-radius: .72rem;
  font-size: .8rem;
  font-weight: 850;
  pointer-events: none;
}

@media (max-width: 900px) {
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 560px) {
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products { grid-template-columns: 1fr; }
  .post-type-archive-product ul.products li.product a img,
  .tax-product_cat ul.products li.product a img { aspect-ratio: 4 / 3; }
}

/* WooCommerce's legacy layout can reintroduce floats and transparent cards.
 * Keep the visual boundary explicit regardless of the generated body classes. */
.woocommerce-page ul.products {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: clamp(1.1rem,2.4vw,1.8rem) !important;
  max-width: 72rem;
  margin-inline: auto !important;
}
.woocommerce-page ul.products::before,
.woocommerce-page ul.products::after { display: none !important; }
.woocommerce-page ul.products li.product {
  float: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: .8rem .8rem 1rem !important;
  overflow: hidden;
  background: #fff !important;
  border: 1.5px solid #ceddde !important;
  border-radius: 1.15rem !important;
  box-shadow: 0 .8rem 2rem rgba(18,36,58,.09) !important;
  transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.woocommerce-page ul.products li.product:hover {
  border-color: rgba(74,174,169,.65) !important;
  box-shadow: 0 1.15rem 2.6rem rgba(18,36,58,.14) !important;
  transform: translateY(-4px);
}
.woocommerce-page ul.products li.product a img {
  overflow: hidden;
  border: 1px solid #dce8e8 !important;
  border-radius: .85rem !important;
}
/* Klow's package is horizontal; keep the full label visible instead of using
 * the square crop and zoom inherited by WooCommerce's Product Collection. */
.woocommerce-page ul.products li.post-132 img,
.woocommerce-page ul.products li.product.post-132 img {
  padding: clamp(1rem,2.6vw,1.8rem) !important;
  object-fit: contain !important;
  transform: none !important;
}
.woocommerce-page ul.products li.product.elmt-product-wide-package img,
.woocommerce-page ul.products li.product.product_cat-peptidos img {
  padding: clamp(.65rem,1.6vw,1rem) !important;
  object-fit: contain !important;
  transform: none !important;
}
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .elmt-product-category,
.woocommerce-page ul.products li.product .price,
.woocommerce-page ul.products li.product .elmt-catalog-stock {
  margin-inline: .45rem;
}
@media (max-width: 900px) {
  .woocommerce-page ul.products { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width: 560px) {
  .woocommerce-page ul.products { grid-template-columns: 1fr !important; }
}

/* Product Collection block used by current WooCommerce versions. */
body li.product,
body li.wc-block-product,
body .wc-block-product-template > li,
body .wp-block-woocommerce-product-template > li,
body .wp-block-post-template > li.type-product {
  position: relative;
  box-sizing: border-box;
  padding: .9rem .9rem 1.1rem !important;
  overflow: hidden;
  background: #fff !important;
  border: 2px solid #ccdcdc !important;
  border-radius: 1.15rem !important;
  box-shadow: 0 .9rem 2.2rem rgba(18,36,58,.11) !important;
  transition: transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
body li.product:hover,
body li.wc-block-product:hover,
body .wc-block-product-template > li:hover,
body .wp-block-woocommerce-product-template > li:hover,
body .wp-block-post-template > li.type-product:hover {
  border-color: var(--elmt-mint) !important;
  box-shadow: 0 1.15rem 2.7rem rgba(18,36,58,.16) !important;
  transform: translateY(-4px);
}
body li.product img,
body li.wc-block-product img,
body .wc-block-product-template > li img,
body .wp-block-woocommerce-product-template > li img,
body .wp-block-post-template > li.type-product img {
  border: 1px solid #d9e6e6 !important;
  border-radius: .8rem !important;
}

.single-product .wp-block-group.woocommerce.product { display: block; }
.single-product main { max-width: 980px; margin-inline: auto; }
.single-product main > .wp-block-columns { display: grid; grid-template-columns: minmax(0,.9fr) minmax(18rem,.75fr); align-items: center; gap: clamp(2rem,6vw,5.5rem); }
.single-product .woocommerce-product-gallery,
.single-product .summary { min-width: 0; }
.single-product .woocommerce-product-gallery { margin: 0 !important; overflow: hidden; background: #fff; border: 1px solid var(--elmt-line); border-radius: 1.1rem; }
.single-product .woocommerce-product-gallery__image { overflow: hidden; }
.single-product .woocommerce-product-gallery img { max-height: 34rem; object-fit: cover; transform: scale(2.05); }
.single-product .summary { display: flex; flex-direction: column; justify-content: center; margin: 0 !important; }
.single-product main > .wp-block-columns > .wp-block-column:last-child { display: flex; flex-direction: column; justify-content: center; }
.single-product .summary .product_title { max-width: 12ch; margin-bottom: .75rem; font-size: clamp(2.5rem,5vw,4.5rem); line-height: .95; }
.single-product .wp-block-post-title { max-width: 12ch; margin: 0 0 .75rem; font-size: clamp(2.5rem,5vw,4.5rem); line-height: .95; }
.single-product .woocommerce-product-details__short-description { max-width: 30rem; color: var(--elmt-silver); font-size: 1rem; }
.single-product .woocommerce-product-details__short-description p { margin: .35rem 0; }
.single-product .wp-block-post-excerpt { max-width: 30rem; color: var(--elmt-silver); font-size: 1rem; }
.single-product .elmt-product-presentation { color: var(--elmt-mint); font-size: 1.15rem; font-weight: 800; }
.single-product .woocommerce-tabs,
.single-product .related.products,
.single-product .wp-block-woocommerce-product-details,
.single-product .wp-block-woocommerce-product-collection,
.single-product .wp-block-woocommerce-product-meta,
.single-product .product_meta,
.single-product .woocommerce-product-gallery__trigger,
.single-product .woocommerce-product-gallery .flex-control-thumbs { display: none !important; }
.single-product .woocommerce-breadcrumb { margin-bottom: 2rem; }
.single-product .summary form.cart { margin-top: 1.25rem; }
.single-product .summary > :last-child { margin-bottom: 0; }

@media (max-width: 760px) {
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); gap: .8rem; }
  .woocommerce ul.products li.product { padding: .5rem; }
  .woocommerce ul.products li.product .button { width: calc(100% - .5rem); margin-inline: .25rem; padding-inline: .55rem; font-size: .8rem; }
  .single-product main > .wp-block-columns { grid-template-columns: 1fr; gap: 1.5rem; }
  .single-product .woocommerce-product-gallery img { max-height: 28rem; }
  .single-product .summary .product_title { font-size: clamp(2.35rem,12vw,3.4rem); }
}

/* Quick product card: selecting a catalogue item opens this compact overlay. */
.section .card-grid + p { margin-top: 1.75rem; }
.woocommerce main,
.woocommerce-page main { padding-top: clamp(1.75rem,4vw,3rem); }
.woocommerce-cart main { padding-top: 1.75rem; }
.woocommerce-cart .wp-block-post-title { margin-bottom: 1.5rem; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block { min-height: 0; }
.woocommerce ul.products li.product.has-quick-view { cursor: zoom-in; }
.woocommerce ul.products li.product.has-quick-view .wp-block-woocommerce-product-button,
.woocommerce ul.products li.product.has-quick-view > .button { display: none; }

.elmt-quick-view { width: min(25rem,calc(100vw - 2rem)); max-height: calc(100vh - 2rem); padding: 0; overflow: visible; color: var(--elmt-navy); background: transparent; border: 0; }
.elmt-quick-view::backdrop { background: rgba(10,25,38,.62); backdrop-filter: blur(10px); }
.elmt-quick-view[open] { animation: elmt-card-in .22s ease-out; }
.elmt-quick-view__card { position: relative; overflow: hidden; background: #fff; border: 1px solid rgba(255,255,255,.7); border-radius: 1.25rem; box-shadow: 0 2rem 6rem rgba(9,27,42,.32); }
.elmt-quick-view__close { position: absolute; top: .75rem; right: .75rem; z-index: 2; display: grid; width: 2.35rem; height: 2.35rem; padding: 0; place-items: center; color: var(--elmt-navy); background: rgba(255,255,255,.9); border: 1px solid var(--elmt-line); border-radius: 50%; font-size: 1.6rem; line-height: 1; cursor: pointer; }
.elmt-quick-view__media { height: min(45vh,23rem); overflow: hidden; background: var(--elmt-ice); }
.elmt-quick-view__media img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.55); }
.elmt-quick-view--full-image .elmt-quick-view__media { padding: clamp(.65rem,2vw,1rem); background: linear-gradient(145deg,#f8fbfb,#edf5f5); }
.elmt-quick-view--full-image .elmt-quick-view__media img { object-fit: contain; transform: none; border-radius: .65rem; }
.elmt-quick-view__content { padding: 1.35rem; }
.elmt-quick-view__content h2 { margin: 0 0 .45rem; color: var(--elmt-navy); font-size: 1.75rem; line-height: 1; }
.elmt-quick-view__meta { display: flex; flex-wrap: wrap; gap: .45rem; margin-bottom: .75rem; }
.elmt-quick-view__meta span { padding: .32rem .55rem; color: var(--elmt-navy); background: var(--elmt-ice); border: 1px solid var(--elmt-line); border-radius: 999px; font-size: .68rem; font-weight: 800; text-transform: capitalize; }
.elmt-quick-view__meta .elmt-quick-view__status { color: #276746; background: #e8f6ee; border-color: #cce8d7; }
.elmt-quick-view__description { min-height: 0; margin: 0; color: var(--elmt-silver); font-size: .92rem; }
.elmt-quick-view__price { margin-top: .85rem; color: var(--elmt-mint); font-size: 1.05rem; font-weight: 800; }
.elmt-quick-view form { display: grid; grid-template-columns: 5.25rem minmax(0,1fr); gap: .7rem; margin-top: 1rem; }
.elmt-quick-view form[hidden],.elmt-quick-view__contact[hidden] { display: none; }
.elmt-quick-view form label { display: grid; gap: .25rem; color: var(--elmt-silver); font-size: .7rem; font-weight: 750; }
.elmt-quick-view form input { width: 100%; min-height: 2.85rem; padding: .65rem; color: var(--elmt-navy); background: #fff; border: 1px solid var(--elmt-line); border-radius: .65rem; font: inherit; font-size: .9rem; }
.elmt-quick-view__add { width: 100%; margin-top: 1rem; padding: .9rem 1rem; color: #fff; background: var(--elmt-navy); border: 0; border-radius: .65rem; font: inherit; font-weight: 800; cursor: pointer; }
.elmt-quick-view form .elmt-quick-view__add { align-self: end; min-height: 2.85rem; margin-top: 0; }
.elmt-quick-view__add:disabled { color: #687985; background: #e6eded; cursor: not-allowed; }
.elmt-quick-view__contact { display: flex; justify-content: center; margin-top: 1rem; padding: .9rem 1rem; color: #fff; background: var(--elmt-navy); border-radius: .65rem; font-weight: 800; text-decoration: none; }
.quick-view-open { overflow: hidden; }
@keyframes elmt-card-in { from { opacity: 0; transform: scale(.94) translateY(12px); } to { opacity: 1; transform: none; } }

@media (max-width: 600px) {
  .elmt-quick-view { width: min(23rem,calc(100vw - 1.25rem)); }
  .elmt-quick-view__media { height: 42vh; }
  .elmt-quick-view__content { padding: 1.1rem; }
  .elmt-quick-view form { grid-template-columns: 5.5rem minmax(0,1fr); }
}

/* Catalogue controls are useful with two products now and scale to the final 20. */
.elmt-catalog-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin: .5rem 0 1.75rem; padding: .85rem; background: #fff; border: 1px solid var(--elmt-line); border-radius: 1rem; box-shadow: 0 .7rem 2rem rgba(18,36,58,.045); }
.elmt-filter-group { display: flex; flex-wrap: wrap; gap: .45rem; }
.elmt-filter-group button { padding: .65rem .9rem; color: var(--elmt-silver); background: transparent; border: 1px solid transparent; border-radius: .65rem; font: inherit; font-size: .86rem; font-weight: 800; cursor: pointer; transition: color .2s ease,background .2s ease,transform .2s ease; }
.elmt-filter-group button:hover { color: var(--elmt-navy); background: var(--elmt-ice); }
.elmt-filter-group button.is-active { color: #fff; background: var(--elmt-navy); }
.elmt-filter-summary { margin: 0; color: var(--elmt-silver); font-size: .8rem; }
.elmt-catalog-empty { display: grid; gap: .3rem; margin: 0 0 1.5rem; padding: 2rem; color: var(--elmt-navy); background: var(--elmt-ice); border: 1px dashed var(--elmt-mint); border-radius: 1rem; text-align: center; }
.elmt-catalog-empty[hidden],li.product[hidden],li.product.is-filtered-out { display: none !important; }
.woocommerce ul.products li.product.is-filtered-in,
body.woocommerce-shop li.wc-block-product.is-filtered-in {
  animation: elmt-product-in .46s cubic-bezier(.2,.75,.25,1) both;
  animation-delay: min(calc(var(--elmt-filter-order,0) * 38ms),228ms);
}
.elmt-filter-group button.is-filter-pulsing { animation: elmt-filter-pulse .34s ease-out; }
@keyframes elmt-product-in {
  from { opacity: 0; transform: translateY(18px) scale(.96); filter: blur(3px); }
  to { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
}
@keyframes elmt-filter-pulse {
  50% { transform: scale(.94); }
}

@media (prefers-reduced-motion: reduce) {
  .woocommerce ul.products li.product.is-filtered-in,
  body.woocommerce-shop li.wc-block-product.is-filtered-in,
  .elmt-filter-group button.is-filter-pulsing { animation: none; }
}

/* COA Analytics keeps page loads light with cropped previews while every card
 * links to a full-resolution, zoomable report. */
.coa-analytics { padding-block: clamp(2.5rem,6vw,5.5rem); }
.page-id-15 { padding-inline:0!important; }
.page-id-15 .wp-site-blocks { padding-inline:0; }
.page-id-15 main.page-shell { width:100%; max-width:none; margin:0; padding-top:0; }
.page-id-15 .coa-analytics { padding-top:clamp(1.5rem,3vw,2.5rem); }
/* Mobile Safari can leave IntersectionObserver reveal targets transparent
 * after returning from an external/in-app browser. COA content must remain
 * readable even when that progressive animation never initializes. */
.page-id-15 .coa-analytics.reveal {
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}
.coa-analytics > .lead { max-width: 46rem; }
.coa-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(1rem,2.5vw,1.6rem); margin-top: 2rem; }
.coa-card { min-width: 0; overflow: hidden; background: #fff; border: 1px solid var(--elmt-line); border-radius: 1rem; box-shadow: 0 .8rem 2.2rem rgba(18,36,58,.07); transition: transform .25s ease,box-shadow .25s ease,border-color .25s ease; }
.coa-card:hover { transform: translateY(-5px); border-color: var(--elmt-mint); box-shadow: 0 1.15rem 2.8rem rgba(18,36,58,.12); }
.coa-card > a { display: block; height: 100%; color: inherit; text-decoration: none; }
.coa-card__preview { aspect-ratio: 4 / 3; margin: 0; overflow: hidden; background: #f5f8f8; border-bottom: 1px solid var(--elmt-line); }
.coa-card__preview img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: top; transition: transform .35s ease; }
.coa-card:hover .coa-card__preview img { transform: scale(1.025); }
.coa-card__body { display: grid; gap: .35rem; padding: 1.1rem 1.2rem 1.25rem; }
.coa-card__body span { color: var(--elmt-mint); font-size: .72rem; font-weight: 900; letter-spacing: .12em; }
.coa-card__body h2 { margin: 0; font-size: clamp(1.25rem,2vw,1.55rem); }
.coa-card__body p { margin: 0; color: var(--elmt-silver); font-size: .9rem; }
.coa-card__body strong { margin-top: .55rem; color: var(--elmt-navy); font-size: .86rem; }

@media (max-width: 800px) {
  .coa-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 540px) {
  .page-id-15 main.page-shell { padding-inline:0; }
  .coa-analytics { width:100%; margin-inline:0; padding-inline:1rem; }
  .coa-grid { grid-template-columns: 1fr; }
  .coa-card__preview { aspect-ratio: 16 / 10; }
}

/* Cart, checkout and order receipt share the same calm storefront language. */
.woocommerce-cart main,.woocommerce-checkout main,.woocommerce-order-received main { max-width: 1180px; }
.woocommerce-cart .wp-block-post-title,.woocommerce-order-received .wp-block-post-title { font-size: clamp(2.25rem,5vw,4.25rem); letter-spacing: -.045em; }
.wc-block-cart,.wc-block-checkout { gap: clamp(1.5rem,4vw,3.5rem) !important; }
.wc-block-cart__main,.wc-block-cart__sidebar,.wc-block-checkout__main,.wc-block-checkout__sidebar { min-width: 0; }
.wc-block-cart-items,.wc-block-components-sidebar,.wc-block-checkout__main { background: #fff; border: 1px solid var(--elmt-line); border-radius: 1rem; box-shadow: 0 .8rem 2.2rem rgba(18,36,58,.055); }
.wc-block-cart-items { overflow: hidden; }
.wc-block-cart__sidebar,.wc-block-checkout__sidebar { padding: 1.15rem !important; }
.wc-block-cart-item__image img,.wc-block-components-order-summary-item__image img { border-radius: .65rem; }
.wc-block-components-totals-wrapper { border-top-color: var(--elmt-line) !important; }
.wc-block-components-button { min-height: 3.25rem; border-radius: .7rem !important; }
.wc-block-cart__submit-container { display: block !important; }
.wp-block-woocommerce-empty-cart-block { padding: clamp(2rem,5vw,4rem); background: #fff; border: 1px solid var(--elmt-line); border-radius: 1rem; box-shadow: 0 .8rem 2.2rem rgba(18,36,58,.055); }
.wp-block-woocommerce-empty-cart-block .wp-block-heading { color: var(--elmt-navy); }
.woocommerce-checkout .wc-block-checkout__main { padding: clamp(1rem,3vw,1.6rem) !important; }
.woocommerce-checkout .wc-block-components-checkout-step { margin-bottom: 1.5rem; }
.woocommerce-checkout .wc-block-components-checkout-step__heading { margin-bottom: .75rem; }
.woocommerce-checkout .wc-block-components-checkout-step__title { color: var(--elmt-navy); font-size: 1.2rem; }
.woocommerce-checkout .wc-block-components-radio-control { overflow: hidden; border: 1px solid var(--elmt-line); border-radius: .8rem; }
.woocommerce-checkout .wc-block-components-radio-control__option { padding: 1rem; }
.woocommerce-order-received .woocommerce-order { max-width: 900px; }
.woocommerce-order-received .woocommerce-notice--success { padding: 1rem 1.15rem; color: #276746; background: #e8f6ee; border: 1px solid #cce8d7; border-radius: .8rem; font-weight: 800; }
.woocommerce-order-received .woocommerce-order-overview,.woocommerce-order-received .woocommerce-table--order-details,.woocommerce-order-received .woocommerce-customer-details { padding: 1.25rem; background: #fff; border: 1px solid var(--elmt-line); border-radius: 1rem; box-shadow: 0 .8rem 2rem rgba(18,36,58,.045); }
.woocommerce-order-received .woocommerce-order-overview { display: grid; grid-template-columns: repeat(auto-fit,minmax(9rem,1fr)); gap: 1rem; }
.woocommerce-order-received .woocommerce-order-overview li { float: none; margin: 0; padding: 0; border: 0; }

/* Mantiene la acción final junto a la confirmación del pedido. */
.woocommerce-order-received main {
  padding-bottom: 1.25rem;
}
.woocommerce-order-received main + .wp-block-buttons {
  width: min(1180px,calc(100% - (var(--page-gutter) * 2)));
  margin: 0 auto clamp(2.5rem,5vw,4rem);
  justify-content: center;
}
.elmt-order-next-steps { color: var(--elmt-navy); background: linear-gradient(145deg,#fff,var(--elmt-ice)); border-color: rgba(74,174,169,.45); }
.elmt-order-disclaimer { padding: .9rem 1rem; background: #f4f7f8; border-left: 3px solid var(--elmt-teal); border-radius: .35rem; }
.woocommerce-order-received .woocommerce-bacs-bank-details { display: none; }
.elmt-order-success-simple {
  display: block;
  position: relative;
  left: 50%;
  width: min(1180px,calc(100vw - (var(--page-gutter) * 2)));
  max-width: none;
  margin: 1.5rem auto 2.5rem;
  transform: translateX(-50%);
  padding: clamp(1.5rem,4vw,2.5rem);
  color: #e8eef5;
  text-align: left;
  background: #0b1a2c;
  border: 1px solid rgba(74,174,169,.45);
  border-radius: 1.25rem;
  box-shadow: 0 1.25rem 3rem rgba(0,0,0,.2);
}
.elmt-order-success-simple h2,.elmt-order-success-simple p { margin: 0; }
.elmt-order-success-header { display:flex; align-items:center; justify-content:space-between; gap:2rem; margin-bottom:1.25rem; }
.elmt-order-success-copy { max-width:58rem; }
.elmt-order-kicker { display:block; margin-bottom:.55rem; color:#4aaea9; font-size:.75rem; font-weight:850; letter-spacing:.14em; }
.elmt-order-success-simple .elmt-order-success-copy h2 { margin:0 0 .75rem; color:#fff; font-size:clamp(1.65rem,3vw,2.25rem); }
.elmt-order-success-copy > p { color:#dbe4ed; line-height:1.6; }
.elmt-order-success-simple .elmt-order-folio {
  display: grid;
  gap: .15rem;
  margin-top: .35rem;
}
.elmt-order-success-simple .elmt-order-folio span { color: var(--elmt-teal); font-size: .72rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.elmt-order-success-simple .elmt-order-folio strong { font-size: clamp(1.15rem,3vw,1.55rem); }
.elmt-order-success-simple .elmt-transfer-details { width: 100%; text-align: left; }
.elmt-order-success-simple .elmt-order-disclaimer { width: 100%; margin-top:1rem; text-align: left; }
.elmt-order-success-logo {
  flex:0 0 auto;
  width: clamp(8rem,16vw,13rem);
  height: clamp(5.5rem,10vw,8rem);
  object-fit: contain;
  mix-blend-mode:screen;
}
.elmt-order-success-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.2rem;
  margin-top: .55rem;
  padding: .8rem 1.35rem;
  color: #fff !important;
  background: var(--elmt-navy);
  border: 1px solid var(--elmt-navy);
  border-radius: .7rem;
  font-weight: 800;
  text-decoration: none;
}
.elmt-order-success-button:hover { color: #fff !important; background: var(--elmt-teal); border-color: var(--elmt-teal); }
.elmt-transfer-details { margin-top: 1.25rem; padding: clamp(1rem,3vw,1.4rem); background: #fff; border: 1px solid var(--elmt-line); border-radius: .85rem; box-shadow: 0 .5rem 1.4rem rgba(18,36,58,.06); }
.elmt-transfer-heading { display: flex; align-items: center; gap: .85rem; padding-bottom: 1rem; border-bottom: 1px solid var(--elmt-line); }
.elmt-transfer-heading .eyebrow { margin: 0 0 .15rem; font-size: .68rem; }
.elmt-transfer-heading h3 { margin: 0; color: var(--elmt-navy); font-size: clamp(1.15rem,2vw,1.4rem); }
.elmt-transfer-icon { display: grid; flex: 0 0 2.7rem; width: 2.7rem; height: 2.7rem; place-items: center; color: #fff; background: var(--elmt-teal); border-radius: .65rem; font-size: 1.25rem; font-weight: 900; }
.elmt-transfer-details dl { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; margin: 0; }
.elmt-transfer-details dl > div { min-width: 0; padding: 1rem 1rem .9rem 0; border-bottom: 1px solid var(--elmt-line); }
.elmt-transfer-details dl > div:nth-child(odd) { margin-right: 1rem; border-right: 1px solid var(--elmt-line); }
.elmt-transfer-details dt { margin-bottom: .25rem; color: var(--elmt-muted); font-size: .75rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.elmt-transfer-details dd { margin: 0; overflow-wrap: anywhere; color: var(--elmt-navy); font-weight: 800; }
.elmt-transfer-pending,.elmt-transfer-note { margin: 1rem 0 0; padding: .8rem .9rem; border-radius: .5rem; font-size: .85rem; }
.elmt-transfer-pending { color: #6f2622; background: #fff1ef; border: 1px solid #f0c0ba; }
.elmt-transfer-note { color: #245e59; background: #edf9f8; border: 1px solid #bfe2df; }
.elmt-order-actions { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: .75rem; margin-top: 1.1rem; }
.elmt-order-actions .button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3.15rem;
  margin-top: 0;
  padding: .8rem 1.15rem;
  border: 1px solid var(--elmt-navy);
  border-radius: .7rem;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
}
.elmt-order-actions .elmt-print-order {
  gap: .65rem;
  color: #fff;
  background: var(--elmt-navy);
  box-shadow: 0 .55rem 1.2rem rgba(18,36,58,.14);
  font: inherit;
  cursor: pointer;
}
.elmt-order-actions .elmt-print-order span {
  display: grid;
  width: 1.65rem;
  height: 1.65rem;
  place-items: center;
  color: var(--elmt-navy);
  background: #fff;
  border-radius: 50%;
  font-size: 1.05rem;
  line-height: 1;
}
.elmt-order-actions .elmt-print-order:hover { color: #fff; background: #1c3550; border-color: #1c3550; }
.elmt-order-actions a.button { color: var(--elmt-navy); background: #fff; border-color: var(--elmt-teal); text-decoration: none; }
.elmt-order-actions a.button:hover { color: #fff; background: var(--elmt-teal); }
.elmt-order-actions a.button.elmt-share-receipt { color:#fff!important; background:#102a3d!important; border-color:#4aaea9; }
.elmt-order-actions a.button.elmt-share-receipt:hover { color:#06101e!important; background:#72c8c3!important; }
.elmt-order-actions a.button.elmt-order-success-button { color:#fff!important; background:#102a3d!important; border-color:#102a3d!important; }
.elmt-order-actions a.button.elmt-order-success-button:hover { color:#06101e!important; background:#72c8c3!important; border-color:#72c8c3!important; }

@media (max-width: 620px) {
  .elmt-order-success-simple { width:calc(100vw - 2rem); padding:1.25rem; }
  .elmt-order-success-header { align-items:flex-start; flex-direction:column-reverse; gap:.75rem; }
  .elmt-order-success-logo { width:7rem; height:4.5rem; }
  .elmt-transfer-details dl { grid-template-columns: 1fr; }
  .elmt-transfer-details dl > div { margin-right: 0 !important; border-right: 0 !important; }
}

@media print {
  @page { margin: 14mm; }
  .woocommerce-order-received .site-header,
  .woocommerce-order-received .site-footer,
  .woocommerce-order-received #wpadminbar,
  .woocommerce-order-received #coming-soon-footer-banner,
  .woocommerce-order-received main + .wp-block-buttons,
  .woocommerce-order-received .elmt-order-actions { display: none !important; }
  .woocommerce-order-received,
  .woocommerce-order-received main { color: #111 !important; background: #fff !important; }
  .woocommerce-order-received main { width: 100% !important; max-width: none !important; padding: 0 !important; }
  .woocommerce-order-received .elmt-order-next-steps,
  .woocommerce-order-received .woocommerce-order-overview,
  .woocommerce-order-received .woocommerce-table--order-details,
  .woocommerce-order-received .woocommerce-customer-details {
    color: #111 !important;
    background: #fff !important;
    box-shadow: none !important;
    break-inside: avoid;
  }
}

/* Shared interaction feedback. */
.wp-element-button,.woocommerce button,.woocommerce a.button,.elmt-filter-group button,.elmt-quick-view__close { transition: transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease; }
.wp-element-button:hover,.woocommerce button:hover,.woocommerce a.button:hover,.elmt-quick-view__contact:hover { transform: translateY(-2px); box-shadow: 0 .65rem 1.5rem rgba(18,36,58,.15); }
.wp-element-button:focus-visible,.woocommerce button:focus-visible,.woocommerce a.button:focus-visible,.elmt-filter-group button:focus-visible,.elmt-quick-view button:focus-visible,.elmt-quick-view a:focus-visible { outline: 3px solid rgba(74,174,169,.45); outline-offset: 3px; }
.is-loading { position: relative; pointer-events: none; opacity: .68; }
.is-loading::after { content: ""; position: absolute; top: 50%; left: 50%; width: 1.2rem; height: 1.2rem; margin: -.6rem; border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: elmt-spin .7s linear infinite; }
@keyframes elmt-spin { to { transform: rotate(360deg); } }

@media (max-width: 900px) {
  .wc-block-cart,.wc-block-checkout,.woocommerce-checkout .wc-block-components-sidebar-layout { grid-template-columns: 1fr !important; }
  .wc-block-cart__sidebar,.wc-block-checkout__sidebar { position: static !important; }
}
@media (max-width: 700px) {
  .elmt-catalog-tools { align-items: stretch; }
  .elmt-filter-group { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); width: 100%; }
  .elmt-filter-group button { width: 100%; }
  .elmt-filter-summary { width: 100%; text-align: center; }
  .woocommerce ul.products { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size: .92rem; }
  .woocommerce-checkout main::before { font-size: clamp(2rem,11vw,3.25rem); }
}
@media (max-width: 430px) {
  .woocommerce ul.products { grid-template-columns: 1fr; }
}

/* Product backs belong to the detail view, never to the catalogue card. */
.elmt-quick-view__gallery {
  display:flex;
  gap:.55rem;
  padding:.75rem 1.35rem 0;
  background:#fff;
}
.elmt-quick-view__gallery[hidden] { display:none; }
.elmt-quick-view__gallery button {
  flex:1;
  min-height:2.55rem;
  padding:.55rem .75rem;
  color:var(--elmt-navy);
  background:var(--elmt-ice);
  border:1px solid var(--elmt-line);
  border-radius:999px;
  font:inherit;
  font-size:.78rem;
  font-weight:800;
  cursor:pointer;
}
.elmt-quick-view__gallery button[aria-pressed="true"] {
  color:#061421;
  background:var(--elmt-mint);
  border-color:var(--elmt-mint);
}

/* Keep the footer content aligned with the rest of the site on wide screens. */
.site-footer > .wp-block-columns,
.site-footer > .wp-block-separator,
.site-footer > .footer-note {
  box-sizing:border-box;
  width:min(1180px,calc(100% - (var(--page-gutter) * 2)));
  margin-inline:auto;
}
.site-footer .wp-block-navigation__container { gap:.85rem; }
.elmt-language-switcher { display:flex; align-items:center; gap:.35rem; color:#7d8c9d; font-size:.76rem; font-weight:850; letter-spacing:.08em; }
.elmt-language-switcher a { color:#aab8c7; text-decoration:none; }
.elmt-language-switcher a[aria-current="page"] { color:var(--elmt-mint); }
.elmt-language-switcher a:hover { color:#fff; }
.page-id-152 main.page-shell {
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}
.page-id-152 .wp-site-blocks { padding-inline:0; }
.page-id-152 main.page-shell > .wp-block-post-content {
  width:100%;
  max-width:none;
  margin:0;
}
.page-id-152 main.page-shell > .wp-block-post-content > * { margin-block-start:0; }

@media (max-width: 700px) {
  .site-footer {
    box-sizing:border-box;
    padding-inline:max(1.25rem,env(safe-area-inset-left));
    padding-top:3.25rem;
    padding-bottom:calc(3rem + env(safe-area-inset-bottom));
  }
  .site-footer .wp-block-columns { gap:2.5rem; }
  .site-footer .wp-block-column { margin:0; }
  .site-footer h3 { margin:0 0 1rem; }
  .site-footer > .wp-block-columns,
  .site-footer > .wp-block-separator,
  .site-footer > .footer-note { width:100%; }
  .site-footer .wp-block-navigation__container { gap:.8rem; }
  .site-footer hr { margin-block:2.5rem 1.5rem; }
  .site-footer .footer-note { margin:0; line-height:1.6; }
  .elmt-quick-view__gallery { padding-inline:1.1rem; }
  .elmt-language-switcher { font-size:.72rem; }
}

/* Branded not-found page. */
.elmt-404-header { position: relative; }
.elmt-404-header > .elmt-404-header__inner { display: flex; justify-content: space-between; width: min(1050px,calc(100% - (var(--page-gutter) * 2))); margin-inline: auto; }
.elmt-404-header .brand-title { margin-right: auto; }
.elmt-404-header .brand-title a::before { display: none; }
.elmt-404-header__hint { margin: 0; color: var(--elmt-silver); font-size: .82rem; font-weight: 750; }
.elmt-404 { display: grid; min-height: min(650px,calc(100svh - 4.5rem)); padding: clamp(2.5rem,5vw,4.5rem) var(--page-gutter); place-items: center; background: radial-gradient(circle at 20% 15%,rgba(74,174,169,.14),transparent 28%),linear-gradient(145deg,#fff,#edf5f5); }
.elmt-404__card { display: grid; grid-template-columns: minmax(17rem,.75fr) minmax(20rem,1fr); align-items: center; gap: clamp(2rem,7vw,6rem); width: min(1050px,100%); }
.elmt-404__visual { position: relative; display: flex; align-items: center; justify-content: center; width: min(100%,24rem); aspect-ratio: 1; min-height: 0; justify-self: center; overflow: hidden; color: var(--elmt-navy); background: rgba(255,255,255,.82); border: 1px solid rgba(74,174,169,.35); border-radius: 50%; box-shadow: 0 2rem 5rem rgba(18,36,58,.11); font-size: clamp(4.5rem,8vw,7rem); font-weight: 900; letter-spacing: -.12em; }
.elmt-404__visual::before,.elmt-404__visual::after { content: ""; position: absolute; border: 1px solid rgba(74,174,169,.25); border-radius: 50%; }
.elmt-404__visual::before { inset: 12%; transform: rotate(18deg); }
.elmt-404__visual::after { inset: 26%; transform: rotate(-22deg); }
.elmt-404__visual strong { position: relative; z-index: 1; display: grid; width: 1em; height: 1em; margin-inline: .08em; place-items: center; color: #fff; background: linear-gradient(135deg,var(--elmt-navy),var(--elmt-mint)); border-radius: .2em; font-size: .7em; letter-spacing: 0; animation: elmt-404-float 3.4s ease-in-out infinite; }
.elmt-404__visual strong img { display: block; width: 82%; height: 82%; object-fit: cover; border-radius: .16em; mix-blend-mode: multiply; transform: scale(1.25); }
.elmt-404__visual span { position: relative; z-index: 1; }
.elmt-404__content h1 { max-width: 13ch; margin: .35rem 0 1rem; color: var(--elmt-navy); font-size: clamp(2.4rem,4.2vw,3.9rem); line-height: .98; letter-spacing: -.05em; }
.elmt-404__content > p:not(.eyebrow) { max-width: 38rem; color: var(--elmt-silver); font-size: 1.05rem; }
.elmt-404__actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-top: 1.5rem; }
.elmt-404__actions a { text-decoration: none; }
.elmt-404__secondary { color: var(--elmt-navy) !important; background: transparent !important; border: 1px solid var(--elmt-navy); }
.elmt-404__contact { width: 100%; margin-top: .35rem; color: var(--elmt-navy); font-weight: 750; }
@keyframes elmt-404-float { 50% { transform: translateY(-7px) rotate(3deg); } }

@media (max-width: 760px) {
  .elmt-404__card { grid-template-columns: 1fr; gap: 1.75rem; text-align: center; }
  .elmt-404__visual { width: min(18rem,82vw); min-height: min(18rem,82vw); margin-inline: auto; }
  .elmt-404__content h1,.elmt-404__content > p { margin-inline: auto; }
  .elmt-404__actions { justify-content: center; }
  .elmt-404-header__hint { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .elmt-404__visual strong { animation: none; }
}

/* Header normalized after selecting the real brand mark in Site Editor. */
.site-header > .elmt-header-inner { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: clamp(1.25rem,3vw,2.75rem); }
.elmt-header-brand,.elmt-header-actions { gap: .65rem; }
.elmt-header-brand { min-width: max-content; }
.elmt-header-brand .brand-title a::before { display: none; }
.elmt-header-logo { flex: 0 0 2.8rem; width: 2.8rem; height: 2.8rem; overflow: hidden; border-radius: 0; }
.elmt-header-logo a,.elmt-header-logo img { display: block; width: 100% !important; height: 100% !important; }
.elmt-header-logo img { object-fit: contain; transform: scale(1.18); transform-origin: center; }
.elmt-header-brand .brand-title { margin: 0; font-size: 1rem; white-space: nowrap; }
.elmt-header-inner .desktop-navigation { justify-self: center; }
.elmt-header-actions { min-width: max-content; }
.elmt-header-actions .wc-block-mini-cart__button,
.elmt-header-actions .wc-block-customer-account__link { color: var(--elmt-navy); }
.elmt-header-actions .wc-block-mini-cart__button,
.elmt-header-actions .wc-block-customer-account__link {
  display: inline-grid;
  min-width: 2.75rem;
  min-height: 2.75rem;
  place-items: center;
  border-radius: 999px;
}

@media (max-width: 980px) {
  .site-header > .elmt-header-inner { grid-template-columns: minmax(0,1fr) auto; }
  .elmt-header-inner .desktop-navigation { display: none !important; }
}
@media (max-width: 520px) {
  .brand-title { display: none; }
  .elmt-header-logo { width: 2.55rem; height: 2.55rem; }
  .elmt-header-actions { gap: .35rem; }
}

/* Long-form legal pages remain readable and easy to audit. */
.legal-page { max-width: 72rem; }
.legal-page .legal-intro { max-width: 55rem; margin-bottom: 2rem; }
.legal-page section { max-width: 55rem; padding-block: clamp(1.6rem,3vw,2.5rem); border-top: 1px solid var(--elmt-line); scroll-margin-top: 7rem; }
.legal-page section h2 { margin: 0 0 1rem; font-size: clamp(1.45rem,3vw,2rem); }
.legal-page section h3 { margin: 1.25rem 0 .55rem; font-size: 1.05rem; }
.legal-page section p,.legal-page section li { color: var(--elmt-silver); }
.legal-page section li + li { margin-top: .45rem; }
.legal-index { display: flex; flex-wrap: wrap; gap: .65rem; max-width: 55rem; margin: 0 0 2rem; padding: 1rem; background: var(--elmt-ice); border: 1px solid var(--elmt-line); border-radius: .85rem; }
.legal-index strong { width: 100%; color: var(--elmt-navy); }
.legal-index a { padding: .45rem .7rem; color: var(--elmt-navy); background: #fff; border: 1px solid var(--elmt-line); border-radius: 999px; font-size: .85rem; font-weight: 700; text-decoration: none; }
.legal-callout { max-width: 55rem; margin: 1.5rem 0; padding: 1.2rem 1.35rem; background: var(--elmt-ice); border-left: 4px solid var(--elmt-mint); border-radius: .25rem .75rem .75rem .25rem; }
.legal-callout h2,.legal-callout h3 { margin-top: 0; }
.legal-callout--warning { border-left-color: #bd3042; }

/* Static preview of the future animated logo. The image can later be swapped
   for a transparent WebM without changing the hero composition. */
.elmt-scroll-logo { --elmt-logo-progress: 0; isolation: isolate; transform: scale(calc(.92 + (var(--elmt-logo-progress) * .16))); transform-origin: 50% 56%; transition: transform .08s linear; }
.elmt-scroll-logo::before { display: none; }
.elmt-scroll-logo::after { inset: 16% 12%; z-index: -1; animation: elmt-orbit-drift 12s ease-in-out infinite alternate; }
.elmt-scroll-logo__orbit { position: absolute; inset: 25%; z-index: -1; border: 1px solid rgba(74,174,169,.24); border-radius: 50%; box-shadow: 0 0 0 2.75rem rgba(74,174,169,.035),0 0 0 5.5rem rgba(18,36,58,.025); }
.elmt-scroll-logo__image { position: relative; z-index: 1; display: block; width: min(62%,15rem); aspect-ratio: 1; margin: auto; object-fit: cover; border-radius: 50%; mix-blend-mode: multiply; filter: contrast(1.08) saturate(.82); animation: elmt-logo-spin 18s linear infinite; }
.elmt-scroll-logo__note { position: absolute; right: 0; bottom: .8rem; left: 0; z-index: 2; margin: 0; color: var(--elmt-silver); font-size: .72rem; letter-spacing: .06em; text-align: center; }
.hero-logo-video { min-height: clamp(20rem,29vw,27rem); padding: 0; overflow: hidden; background: transparent; border: 0; border-radius: 0; box-shadow: none; }
.hero-logo-video::before,.hero-logo-video::after { display: none; }
.hero-logo-video__media { display: block; width: 150%; max-width: none; height: 100%; min-height: inherit; margin-left: -25%; object-fit: contain; mix-blend-mode: multiply; transform: scale(1.22); transform-origin: center; }
.js .elmt-scroll-logo { opacity: 0; animation: elmt-logo-arrive .8s .18s ease-out forwards; }
@keyframes elmt-logo-spin { to { transform: rotate(360deg); } }
@keyframes elmt-logo-arrive { from { opacity: 0; transform: scale(.82) translateY(18px); } to { opacity: 1; transform: scale(calc(.92 + (var(--elmt-logo-progress) * .16))) translateY(0); } }
@keyframes elmt-orbit-drift { to { transform: rotate(18deg) scale(1.04); } }

/* Balance the compact header against the large editorial hero. */
.site-header { padding-block: .65rem; }
.site-header .wp-block-navigation-item__content { font-size: clamp(16px,1.05vw,18px); font-weight: 750; }
.site-header .wp-block-navigation__container { gap: clamp(1.35rem,2.25vw,2.15rem); }
.elmt-header-logo { width: 3.25rem; height: 3.25rem; flex-basis: 3.25rem; }
.elmt-header-brand .brand-title { font-size: clamp(17px,1.1vw,19px); }
.hero { padding-block: clamp(3.25rem,6vw,5.5rem); }

@media (min-width: 981px) {
  .hero { min-height: min(720px,calc(100svh - 6rem)); padding-block: clamp(2.75rem,4.5vw,4.5rem); }
  .hero h1 { max-width: 14ch; font-size: clamp(2.9rem,4.4vw,4.75rem); line-height: .96; }
  .hero-logo-stage { min-height: clamp(13rem,22vw,18.5rem); padding: 1.5rem; }
  .hero-logo-stage.hero-logo-video { min-height: clamp(20rem,29vw,27rem); padding: 0; }
  .hero-logo-stage::before { font-size: clamp(10rem,18vw,16rem); }
  .hero-logo-stage strong { font-size: clamp(2rem,3.5vw,3.25rem); }
  .stat { min-height: 6.5rem; padding: 1.1rem; }
  .hero .wp-block-buttons { margin-bottom: .5rem; }
}

@media (max-width: 980px) {
  .site-header { padding-block: .55rem; }
  .hero { padding-block: clamp(2.75rem,8vw,4.5rem); }
  .hero-logo-video { display: none; }
}
@media (max-width: 520px) {
  .elmt-header-logo { width: 2.75rem; height: 2.75rem; flex-basis: 2.75rem; }
}

@media (prefers-reduced-motion: reduce) {
  .elmt-scroll-logo,.elmt-scroll-logo__image,.elmt-scroll-logo::after { animation: none !important; transform: none !important; }
  .js .elmt-scroll-logo { opacity: 1; }
}

/* Product Collection renders a wc-block list instead of ul.products. Target
 * Klow's attachment directly so its horizontal box is never square-cropped. */
body li.post-132 img[data-image-id="87"] {
  box-sizing: border-box;
  padding: clamp(1rem,2.6vw,1.8rem) !important;
  object-fit: contain !important;
  transform: none !important;
  background: linear-gradient(145deg,#f8fbfb,#edf5f5) !important;
}

/* Uniform Product Collection cards. WooCommerce renders this shop with block
 * markup, so these rules align every card independently of title length. */
body.woocommerce-shop .wc-block-product-template,
body.woocommerce-shop .wp-block-woocommerce-product-template {
  align-items: stretch;
}
body.woocommerce-shop li.wc-block-product {
  display: flex !important;
  height: 100%;
  min-height: 0;
  flex-direction: column;
}
body.woocommerce-shop li.wc-block-product[hidden],
body.woocommerce-shop li.wc-block-product.is-filtered-out {
  display: none !important;
}
body.woocommerce-shop li.wc-block-product .wc-block-components-product-image {
  width: 100%;
  margin: 0 0 1rem !important;
  overflow: hidden;
  background: linear-gradient(145deg,#f8fbfb,#edf5f5);
  border: 1px solid #d9e6e6;
  border-radius: .85rem;
}
body.woocommerce-shop li.wc-block-product .wc-block-components-product-image img {
  display: block;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important;
  object-fit: cover;
}
body.woocommerce-shop li.wc-block-product .wp-block-post-title {
  display: flex;
  min-height: 3.35rem;
  margin: 0 .45rem .25rem !important;
  align-items: center;
  justify-content: center;
  color: var(--elmt-mint);
  font-size: clamp(1.05rem,1.45vw,1.22rem) !important;
  font-weight: 850;
  line-height: 1.15 !important;
  text-align: center;
}
body.woocommerce-shop li.wc-block-product .elmt-product-category {
  min-height: 1.2rem;
  margin: 0 .45rem .35rem;
}
body.woocommerce-shop li.wc-block-product .elmt-catalog-stock {
  min-height: 1.4rem;
  margin: 0 .45rem .55rem;
}
body.woocommerce-shop li.wc-block-product .wp-block-woocommerce-product-price {
  width: 100%;
  min-height: 2rem;
  margin: .45rem 0 .7rem !important;
  color: var(--elmt-navy);
  font-size: 1rem;
  font-weight: 850;
  text-align: center;
}
body.woocommerce-shop li.wc-block-product .wp-block-woocommerce-product-button {
  width: 100%;
  margin-top: 0 !important;
  text-align: center;
}
body.woocommerce-shop li.wc-block-product .wp-block-woocommerce-product-button .wp-block-button__link,
body.woocommerce-shop li.wc-block-product .wp-block-woocommerce-product-button .button {
  display: inline-flex;
  width: calc(100% - .9rem);
  min-height: 3.15rem;
  margin: 0 .45rem !important;
  align-items: center;
  justify-content: center;
  border-radius: .72rem;
}

/* Editorial information banners distinguish this section from the numbered
 * purchase process. On pointer devices the photograph gives way to the copy;
 * on touch devices the copy remains visible over a calm image treatment. */
.info-showcase { overflow: hidden; }
.info-showcase .lead { max-width: 42rem; margin-bottom: 1.75rem; }
.info-banners {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: clamp(.9rem,2vw,1.4rem);
}
.info-banner {
  position: relative;
  isolation: isolate;
  min-height: clamp(22rem,32vw,29rem);
  overflow: hidden;
  color: #fff;
  background: var(--elmt-navy);
  border: 1px solid rgba(74,174,169,.28);
  border-radius: 1.2rem;
  box-shadow: 0 1rem 2.8rem rgba(18,36,58,.13);
  outline: 0;
}
.info-banner::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg,transparent 42%,rgba(8,28,43,.88));
  pointer-events: none;
}
.info-banner > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity .38s ease,transform .55s cubic-bezier(.2,.7,.2,1),filter .38s ease;
}
.info-banner__label {
  position: absolute;
  right: 1.25rem;
  bottom: 1.25rem;
  left: 1.25rem;
  z-index: 2;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1rem;
  transition: opacity .25s ease,transform .3s ease;
}
.info-banner__label span { color: #b9eeee; font-size: .8rem; font-weight: 900; letter-spacing: .12em; }
.info-banner__label strong { max-width: 12rem; color: #fff; font-size: clamp(1.25rem,2vw,1.7rem); line-height: 1; text-align: right; text-shadow: 0 2px 14px rgba(0,0,0,.65); }
.info-banner__content {
  position: absolute;
  inset: 0;
  z-index: 3;
  display: flex;
  padding: clamp(1.5rem,3vw,2.25rem);
  flex-direction: column;
  justify-content: flex-end;
  color: #fff;
  background: radial-gradient(circle at 78% 18%,rgba(74,174,169,.35),transparent 36%),linear-gradient(145deg,#102a3d,#0b1c2a);
}
.info-banner__content > span { margin-bottom: auto; color: #8fd6d2; font-size: .72rem; font-weight: 900; letter-spacing: .14em; }
.info-banner__content h3 { max-width: 12ch; margin: 0 0 .8rem; color: #fff; font-size: clamp(1.65rem,2.6vw,2.35rem); line-height: .98; }
.info-banner__content p { max-width: 25rem; margin: 0; color: rgba(255,255,255,.78); font-size: .95rem; }
.info-showcase__hint { margin: 1rem 0 0; color: var(--elmt-silver); font-size: .76rem; }

@media (hover: hover) and (pointer: fine) {
  .info-banner__content { opacity: 0; transform: translateY(1rem); transition: opacity .32s ease,transform .38s ease; }
  .info-banner:hover > img { opacity: .04; transform: scale(1.06); filter: blur(2px); }
  .info-banner:hover::after { opacity: 0; }
  .info-banner:hover .info-banner__label { opacity: 0; transform: translateY(.75rem); }
  .info-banner:hover .info-banner__content { opacity: 1; transform: none; }
}

@media (max-width: 820px) {
  .info-banners { grid-template-columns: 1fr; }
  .info-banner { min-height: 0; }
  .info-banner::after { display: none; }
  .info-banner > img {
    position: relative;
    display: block;
    height: clamp(13rem,58vw,21rem);
    opacity: 1;
    filter: none;
    transform: none;
  }
  .info-banner__label { display: none; }
  .info-banner__content {
    position: relative;
    min-height: 11rem;
    opacity: 1 !important;
    background: radial-gradient(circle at 85% 10%,rgba(74,174,169,.28),transparent 38%),linear-gradient(145deg,#102a3d,#0b1c2a);
    transform: none !important;
  }
  .info-banner__content > span { margin-bottom: 2.5rem; }
  .info-showcase__hint { display: none; }
}

@media (max-width: 600px) {
  body.woocommerce-shop li.wc-block-product { min-height: 0; }
}

/* Final responsive pass shared by the informational and WooCommerce pages. */
@media (max-width: 980px) {
  :root { --page-gutter: clamp(1.25rem,3.5vw,2rem); }
  .site-header > .elmt-header-inner { width: min(100%,calc(100% - (var(--page-gutter) * 2))); }
  .hero > .wp-block-columns { align-items: center !important; gap: clamp(1.75rem,5vw,3.5rem); }
  .hero h1 { font-size: clamp(2.8rem,7.5vw,4.6rem); }
  .page-shell { padding-block: clamp(2.75rem,6vw,4rem); }
  .woocommerce main,.woocommerce-page main { padding-block: clamp(2rem,5vw,4rem); }
  .woocommerce-checkout main { padding-top: 0; }
}

@media (max-width: 781px) {
  .hero > .wp-block-columns { display: grid; grid-template-columns: 1fr; }
  .hero .wp-block-column { min-width: 0; }
  .hero h1 { max-width: 12ch; font-size: clamp(2.7rem,10vw,4rem); }
  .hero-logo-stage { width: 100%; max-width: 34rem; margin-inline: auto; }
  .section > .alignwide { width: min(100%,calc(100% - (var(--page-gutter) * 2))); }
  .wc-block-cart__main,.wc-block-cart__sidebar,
  .wc-block-checkout__main,.wc-block-checkout__sidebar { width: 100% !important; }
  .wc-block-cart__sidebar,.wc-block-checkout__sidebar { margin-top: 0 !important; }
  .woocommerce-checkout .wc-block-components-sidebar-layout { gap: 1.5rem; }
  .woocommerce-checkout main::before { margin-bottom: 2rem; padding-block: clamp(2.25rem,7vw,3.5rem); }
  .single-product main { width: min(100%,calc(100% - (var(--page-gutter) * 2))); }
}

@media (max-width: 600px) {
  :root { --page-gutter: 1rem; }
  .site-header > .elmt-header-inner { gap: .75rem; }
  .elmt-header-actions { min-width: 0; }
  .mobile-navigation nav { width: min(18rem,calc(100vw - 2rem)); }
  .hero { padding-block: 2.75rem 3.5rem; }
  .hero h1 {
    max-width: 100%;
    font-size: clamp(2.2rem,10.5vw,3.15rem);
    overflow-wrap: normal;
    word-break: normal;
    hyphens: none;
  }
  .hero-copy,.lead { font-size: 1rem; }
  .stat-grid { gap: .7rem; }
  .stat { min-height: 6.75rem; padding: 1rem; }
  .stat strong { font-size: 1.65rem; }
  .section { padding-block: 3.25rem; }
  .card,.process > div,blockquote { padding-inline: 1.1rem; }
  .elmt-form-shell { padding: 1.25rem; border-radius: 1rem; }
  .elmt-contact-form { gap: .85rem; }
  .woocommerce ul.products { gap: .75rem; }
  .woocommerce ul.products li.product a img { margin-bottom: .65rem; }
  .woocommerce ul.products li.product .price { font-size: .88rem; }
  .single-product .woocommerce-product-gallery img.wp-post-image { transform: scale(1.22); }
  .woocommerce-checkout .wc-block-checkout__main,
  .wc-block-cart__sidebar,.wc-block-checkout__sidebar { padding: 1rem !important; border-radius: .8rem; }
  .woocommerce-checkout main,
  .woocommerce-cart main,
  .woocommerce-order-received main,
  .single-product main { padding-inline: 1rem; }
  .wc-block-components-notice-banner,
  .woocommerce-error,
  .woocommerce-message,
  .woocommerce-info { margin-inline: 0 !important; overflow-wrap: anywhere; }
  .wc-block-components-form .wc-block-components-text-input input,
  .wc-block-components-form .wc-block-components-combobox-control input { min-width: 0; }
  .woocommerce-checkout h1,.woocommerce-checkout h2,.woocommerce-checkout h3,
  .woocommerce-cart h1,.woocommerce-order-received h1,
  .single-product h1,.single-product h2 { overflow-wrap: anywhere; }
  .wc-block-cart-items { border-radius: .8rem; }
  .wc-block-cart-item__image { width: 4.5rem !important; }
  .woocommerce-order-received .woocommerce-order-overview { grid-template-columns: 1fr; }
  .elmt-quick-view { max-height: calc(100dvh - 1rem); overflow-y: auto; }
  .elmt-quick-view__media { height: min(38dvh,18rem); }
  .elmt-404 { min-height: auto; padding-block: 2.5rem 3.5rem; }
  .elmt-404__visual { width: min(15rem,72vw); min-height: 0; aspect-ratio: 1; }
  .elmt-404__content h1 { font-size: clamp(2.2rem,11vw,3.1rem); }
}

@media (max-width: 430px) {
  .stat-grid,.elmt-filter-group { grid-template-columns: 1fr; }
  .woocommerce ul.products { grid-template-columns: 1fr; }
  .woocommerce ul.products li.product { width: 100%; }
  .elmt-quick-view form { grid-template-columns: 4.75rem minmax(0,1fr); }
  .elmt-quick-view form .elmt-quick-view__add { min-height: 3rem; }
  .elmt-404__actions { align-items: stretch; }
  .elmt-404__actions a { justify-content: center; width: 100%; text-align: center; }
}

/* Premium sports homepage ------------------------------------------------- */
.home { padding-inline: 0 !important; }
.home .entry-content { margin-top: 0; }
.home .entry-content > * { margin-block-start: 0 !important; }
.home .site-header {
  color: #fff;
  background: rgba(4,10,18,.9);
  border-bottom-color: rgba(92,174,255,.18);
  box-shadow: none;
}
.home header.wp-block-template-part {
  position: sticky;
  top: 0;
  z-index: 999;
}
.home .site-header { position: relative; top: auto; }
body.admin-bar.home header.wp-block-template-part { top: 32px; z-index: 99998; }
.home .site-header .wp-block-navigation-item__content,
.home .site-header .brand-title a { color: #fff; }
.home .site-header .wp-block-navigation__submenu-icon,
.home .site-header .wc-block-mini-cart__button,
.home .site-header .wc-block-customer-account__link,
.home .site-header .wc-block-mini-cart__icon,
.home .site-header .wc-block-customer-account__account-icon { color: #fff !important; }
.home .site-header .wc-block-mini-cart__icon,
.home .site-header .wc-block-customer-account__account-icon { fill: currentColor; }
.home .site-header .wp-block-navigation__submenu-container {
  color: #fff;
  background: #071322 !important;
  border-color: rgba(74,174,169,.35) !important;
}
.home .site-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: #fff !important; }
.home .mobile-navigation summary { color: #fff; border-color: rgba(255,255,255,.28); }
.sports-kicker {
  display: none;
}
.sports-hero__brand-lockup { display:flex; margin-bottom:.5rem; flex-direction:column; align-items:flex-start; gap:0; }
.sports-hero__brand-lockup .sports-kicker { margin: 0; }
.sports-hero__brand-motion { display:block; width:clamp(20rem,27vw,30rem); height:clamp(10rem,14vw,15rem); margin:-2.5rem 0 -1.5rem; object-fit:contain; object-position:left center; opacity:1; mix-blend-mode:screen; filter:brightness(1.75) contrast(1.18) drop-shadow(0 .75rem 1.5rem rgba(0,0,0,.58)); transform:scale(1.12); transform-origin:left center; }
.sports-hero {
  position: relative;
  isolation: isolate;
  display: grid;
  min-height: min(860px,calc(100svh - 4.5rem));
  overflow: hidden;
  color: #fff;
  background: #030914;
}
.sports-hero__image,.sports-hero__shade { position: absolute; inset: 0; width: 100%; height: 100%; }
.sports-hero__image { z-index: -2; object-fit: cover; object-position: center; }
.sports-hero__shade {
  z-index: -1;
  background: linear-gradient(90deg,rgba(2,7,15,.98) 0%,rgba(2,7,15,.88) 34%,rgba(2,7,15,.28) 68%,rgba(2,7,15,.1) 100%),linear-gradient(0deg,rgba(2,7,15,.76),transparent 45%);
}
.sports-hero__content {
  display: flex;
  width: min(1280px,calc(100% - clamp(3rem,9vw,10rem)));
  min-height: inherit;
  margin-inline: auto;
  padding-block: clamp(5.5rem,10vw,9rem) 8rem;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
}
.sports-hero h1 {
  max-width: 10.5ch;
  margin: 0 0 1.75rem;
  color: #fff;
  font-size: clamp(3.25rem,6.2vw,6rem);
  letter-spacing: -.058em;
  line-height: .92;
  text-wrap: balance;
}
.sports-hero h1 mark { color: #4aaea9; background: transparent; }
.sports-hero__content > p:not(.sports-kicker):not(.sports-hero__concept) { max-width: 38rem; margin: 0 0 2.25rem; color: #b7c3d1; font-size: clamp(1rem,1.6vw,1.2rem); line-height: 1.65; }
.sports-hero .wp-block-button__link { color: #06101e !important; background: #4aaea9 !important; border: 1px solid #4aaea9; }
.sports-hero .is-style-outline .wp-block-button__link { color: #fff !important; background: rgba(255,255,255,.04) !important; border-color: rgba(255,255,255,.38); }
.sports-hero__concept { margin: 1.15rem 0 0 !important; color: rgba(255,255,255,.46) !important; font-size: .68rem !important; letter-spacing: .04em; }
.sports-hero__rail {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  display: grid;
  grid-template-columns: repeat(3,1fr);
  padding: 1.25rem max(var(--page-gutter),calc((100vw - 1180px)/2));
  color: #8ca0b7;
  background: rgba(3,10,19,.86);
  border-top: 1px solid rgba(74,174,169,.28);
  backdrop-filter: blur(14px);
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .14em;
}
.sports-hero__rail span { padding-inline: 1rem; text-align: center; }
.sports-hero__rail span + span { border-left: 1px solid rgba(255,255,255,.13); }
.sports-catalog { color: #0a1728; background: #f4f7fa; }
.sports-catalog .sports-kicker {
  display:block;
  margin:0 0 .85rem;
  color:#3b9894;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.16em;
}
.sports-section-heading { display: grid; grid-template-columns: minmax(0,1.3fr) minmax(16rem,.7fr); gap: 2rem; align-items: end; }
.sports-section-heading h2 { max-width: 13ch; margin: 0; color: #09192c; font-size: clamp(2.7rem,5vw,5rem); letter-spacing: -.055em; line-height: .94; }
.sports-section-heading > p { max-width: 31rem; margin: 0 0 .35rem; color: #637386; }
.sports-presentation-grid { margin-top: clamp(2.5rem,5vw,4.5rem); }
.sports-presentation-grid .product-card {
  min-height: 31rem;
  padding: 1.15rem;
  color: #fff;
  background: #071322;
  border: 1px solid rgba(49,104,158,.34);
  border-radius: .55rem;
  box-shadow: 0 1.5rem 3rem rgba(9,25,44,.12);
}
.sports-presentation-grid .product-card__media { height: 19rem; margin: -1.15rem -1.15rem 1.4rem; background: #101d2c; border-radius: .5rem .5rem 0 0; }
.sports-presentation-grid .product-card__media::after { background: linear-gradient(transparent,rgba(4,13,24,.35)); }
.sports-presentation-grid .product-card h3 { color: #fff; font-size: 1.45rem; }
.sports-presentation-grid .product-card p { color: #93a4b8; }
.sports-presentation-grid .product-card .number { color: #4aaea9; }
.sports-catalog__action { margin: 2.5rem 0 0; text-align: center; }
.sports-catalog__action .wp-element-button { color: #fff; background: #09192c; }
.athlete-story { padding-block: clamp(4rem,8vw,7rem); color: #fff; background: radial-gradient(circle at 82% 15%,rgba(74,174,169,.16),transparent 30%),#030914; }
.athlete-story > .alignwide,
.sports-cta > .alignwide { width: min(1180px,calc(100% - (var(--page-gutter) * 2))); margin-inline: auto; }
.sports-section-heading--light h2 { color: #fff; }
.sports-section-heading--light > p { color: #93a4b8; }
.athlete-grid { display: grid; grid-template-columns: 1.4fr .8fr; grid-template-rows: repeat(2,minmax(16rem,1fr)); gap: 1rem; margin-top: clamp(3rem,6vw,5rem); }
.athlete-slot { position: relative; min-width: 0; min-height: 0; margin: 0; overflow: hidden; background: #081526; border: 1px solid rgba(74,174,169,.28); border-radius: .55rem; }
.athlete-slot--featured { grid-row: 1/3; }
.athlete-slot--featured::after,
.athlete-slot--photo::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(2,8,16,.92),transparent 58%); }
.athlete-slot img { width: 100%; height: 100%; object-fit: cover; object-position: 68% center; }
.athlete-slot figcaption { position: absolute; right: 2rem; bottom: 2rem; left: 2rem; z-index: 1; display: grid; gap: .45rem; }
.athlete-slot span { color: #4aaea9; font-size: .69rem; font-weight: 900; letter-spacing: .16em; }
.athlete-slot strong { color: #fff; font-size: clamp(1.7rem,3.5vw,3.2rem); line-height: .95; }
.athlete-slot small { color: #8192a6; }
.athlete-slot--placeholder { display: grid; place-items: center; background: repeating-linear-gradient(135deg,rgba(74,174,169,.035) 0 1px,transparent 1px 18px),radial-gradient(circle at 78% 22%,rgba(74,174,169,.2),transparent 32%),#071321; }
.athlete-slot--placeholder::before { content: "+"; position: absolute; top: 1.2rem; right: 1.35rem; color: rgba(74,174,169,.48); font-size: 2rem; font-weight: 300; }
.athlete-slot--placeholder > div { display: grid; max-width: 18rem; padding: 2rem; gap: .7rem; }
.athlete-slot--placeholder strong { font-size: clamp(1.4rem,2.6vw,2.1rem); }
.athlete-slot--placeholder small { line-height: 1.55; }
.sports-process { color: #fff; background: #071322; }
.sports-process h2 { color: #fff; }
.sports-process .process h3 { color: #fff; }
.sports-process .process > div { background: #0b1a2c; border-top-color: #4aaea9; }
.sports-process .process > div::before { color: #4aaea9; }
.sports-process .process p { color: #93a4b8; }
.sports-service { color: #09192c; background: #fff; }
.sports-service h2 { max-width: 15ch; color: #09192c; }
.sports-service-grid { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 3rem; border-block: 1px solid #d8e1ea; }
.sports-service-grid article { min-height: 16rem; padding: 2rem; }
.sports-service-grid article + article { border-left: 1px solid #d8e1ea; }
.sports-service-grid span { color: #4aaea9; font-size: .75rem; font-weight: 900; letter-spacing: .15em; }
.sports-service-grid h3 { margin: 3.5rem 0 .7rem; color: #09192c; font-size: 1.4rem; }
.sports-service-grid p { color: #68798c; }
.sports-cta { padding-block: clamp(3rem,6vw,5rem); color: #fff; background: radial-gradient(circle at 88% 10%,rgba(74,174,169,.2),transparent 32%),linear-gradient(105deg,#071322,#102a3d); border-block: 1px solid rgba(74,174,169,.3); }
.sports-cta > .alignwide { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.sports-cta h2 { margin: 0; color: #fff; font-size: clamp(2rem,4.5vw,4rem); letter-spacing: -.05em; }
.sports-cta .sports-kicker { color: #8fd6d2; }
.sports-cta .wp-block-button__link { color: #06101e !important; background: #4aaea9 !important; border: 1px solid #4aaea9; box-shadow: 0 10px 28px rgba(74,174,169,.16); }
.sports-cta .is-style-outline .wp-block-button__link { color: #fff !important; background: transparent !important; border-color: rgba(255,255,255,.55); }

@media (max-width: 900px) {
  .sports-section-heading { grid-template-columns: 1fr; align-items: start; }
  .sports-presentation-grid .product-card__media {
    height:auto;
    aspect-ratio:4/3;
  }
  .sports-presentation-grid .product-card__media img {
    object-position:center;
  }
  .athlete-grid { grid-template-columns: 1fr 1fr; grid-template-rows: minmax(25rem,55vw) minmax(16rem,1fr); }
  .athlete-slot--featured { grid-column: 1/3; grid-row: auto; }
  .sports-service-grid { grid-template-columns: 1fr; }
  .sports-service-grid article { min-height: 0; }
  .sports-service-grid article + article { border-top: 1px solid #d8e1ea; border-left: 0; }
  .sports-service-grid h3 { margin-top: 2rem; }
}
@media (max-width: 700px) {
  body.admin-bar.home header.wp-block-template-part { top: 46px; }
  .sports-hero { min-height: 46rem; }
  .sports-hero__image { object-position: 68% center; opacity: .78; }
  .sports-hero__shade { background: linear-gradient(0deg,#020812 10%,rgba(2,8,18,.94) 48%,rgba(2,8,18,.22) 100%); }
  .sports-hero__content { width: calc(100% - 2rem); justify-content: flex-end; padding-block: 5rem 9rem; }
  .sports-hero h1 { max-width: 9ch; margin-bottom: 1.4rem; font-size: clamp(2.65rem,12vw,4.1rem); }
  .sports-hero__content > p:not(.sports-kicker):not(.sports-hero__concept) { max-width: 28rem; }
  .sports-hero__rail { grid-template-columns: 1fr; padding-block: .8rem; }
  .sports-hero__rail span { padding-block: .22rem; }
  .sports-hero__rail span + span { border-left: 0; }
  .sports-hero__concept { display: none; }
  .sports-hero__brand-lockup { margin-bottom:.65rem; }
  .sports-hero__brand-motion { width:14rem; height:7rem; margin:-1rem 0 -.55rem; filter:brightness(1.9) contrast(1.2) drop-shadow(0 .65rem 1.2rem rgba(0,0,0,.62)); transform:scale(1.08); }
  .athlete-story > .alignwide,
  .sports-cta > .alignwide { width: calc(100% - 2rem); }
  .sports-presentation-grid .product-card { min-height: 0; }
  .athlete-grid { grid-template-columns: 1fr; grid-template-rows: auto; }
  .athlete-slot,.athlete-slot--featured { grid-column: auto; grid-row: auto; min-height: 21rem; }
  .athlete-slot--featured { min-height: 28rem; }
  .sports-cta > .alignwide { align-items: flex-start; flex-direction: column; }
  .sports-cta .wp-block-buttons { width: 100%; }
}

/* Global premium sports direction ----------------------------------------- */
:root { color-scheme: dark; }
body { color:#e8eef5; background:#050d18; }
body:not(.home) main { background:radial-gradient(circle at 88% 4%,rgba(74,174,169,.09),transparent 24%),#050d18; }

.site-header,
.home .site-header { color:#fff; background:rgba(4,10,18,.94); border-bottom-color:rgba(74,174,169,.25); box-shadow:0 .75rem 2.5rem rgba(0,0,0,.22); }
.site-header .wp-block-navigation-item__content,
.site-header .brand-title a,
.site-header svg { color:#fff!important; fill:currentColor; }
.site-header .wp-block-navigation__submenu-container { background:#071322!important; border-color:rgba(74,174,169,.3)!important; }
.mobile-navigation summary { color:#fff; border-color:rgba(255,255,255,.3); }
.mobile-navigation nav { background:#071322; border-color:rgba(74,174,169,.4); }
.mobile-navigation nav a { color:#fff; border-bottom-color:rgba(255,255,255,.1); }

body:not(.home) .page-shell,
body:not(.home) .entry-content { color:#e8eef5; }
body:not(.home) .page-shell h1,
body:not(.home) .page-shell h2,
body:not(.home) .page-shell h3,
body:not(.home) .entry-content h1,
body:not(.home) .entry-content h2,
body:not(.home) .entry-content h3 { color:#fff; }
body:not(.home) .lead,
body:not(.home) .entry-content p { color:#a7b4c3; }
.section-light,.section-muted { color:#e8eef5; background:#071322; }
.section-light .lead { color:#a7b4c3; }
.section-light h1,.section-light h2,.section-light h3 { color:#fff; }
.card,.process > div,.faq details,blockquote { color:#e8eef5; background:#0b1a2c; border-color:rgba(74,174,169,.25); box-shadow:0 1.2rem 3rem rgba(0,0,0,.18); }
.card h3,.process h3,.faq summary { color:#fff; }
.card p,.process p,blockquote cite { color:#9eacbc; }
.card:hover { border-color:#4aaea9; }
.process > div { border-top-color:#4aaea9; }
.process > div::before,.card .number { color:#4aaea9; }

.wp-block-button__link,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button { color:#06101e!important; background:#4aaea9!important; border:1px solid #4aaea9; }
.wp-block-button__link:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,.wc-block-components-button:hover { color:#06101e!important; background:#74c7c2!important; }
.is-style-outline .wp-block-button__link { color:#fff!important; background:transparent!important; border-color:rgba(255,255,255,.5); }

.elmt-form-shell { color:#e8eef5; background:#0b1a2c; border-color:rgba(74,174,169,.35); box-shadow:0 1.5rem 4rem rgba(0,0,0,.2); }
.elmt-form-shell h1,.elmt-form-shell h2,.elmt-contact-form label { color:#fff; }
.elmt-contact-form label span { color:#99a8b8; }
.elmt-contact-form input,.elmt-contact-form select,.elmt-contact-form textarea,
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select { color:#fff; background:#06101e; border-color:#304255; }
.elmt-contact-form input:focus,.elmt-contact-form select:focus,.elmt-contact-form textarea:focus { outline-color:#4aaea9; }
.elmt-contact-form button { color:#06101e; background:#4aaea9; }

.woocommerce main,.woocommerce-page main { color:#e8eef5; }
.woocommerce main h1,.woocommerce-page main h1 { color:#fff; }
.woocommerce-products-header__title.page-title,.woocommerce div.product .product_title,
.woocommerce div.product .woocommerce-tabs h2,.woocommerce .related.products h2 { color:#fff; }
.woocommerce .woocommerce-breadcrumb,.woocommerce .woocommerce-result-count { color:#91a1b3; }
.woocommerce .woocommerce-breadcrumb a,.woocommerce a { color:#72c8c3; }
.woocommerce .woocommerce-ordering select,.woocommerce .quantity .qty { color:#fff; background:#071322; border-color:#304255; }
.woocommerce ul.products li.product,
body.woocommerce-shop li.wc-block-product,
.woocommerce table.shop_table,.woocommerce-info,.woocommerce-message,.elmt-order-next-steps { color:#e8eef5; background:#0b1a2c; border-color:rgba(74,174,169,.28); box-shadow:0 1rem 2.5rem rgba(0,0,0,.2); }
body.woocommerce-shop li.wc-block-product { background:#0b1a2c!important; border-color:rgba(74,174,169,.28)!important; box-shadow:0 1rem 2.5rem rgba(0,0,0,.2)!important; }
.woocommerce ul.products li.product:hover,
body.woocommerce-shop li.wc-block-product:hover { border-color:#4aaea9; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-shop li.wc-block-product .wc-block-components-product-name,
.elmt-order-next-steps h2 { color:#fff; }
body.woocommerce-shop li.wc-block-product .wp-block-post-title a { color:#72c8c3; }
.woocommerce ul.products li.product .elmt-catalog-stock,
body.woocommerce-shop li.wc-block-product .elmt-catalog-stock { color:#9eacbc; }
.woocommerce ul.products li.product .elmt-catalog-stock strong,
body.woocommerce-shop li.wc-block-product .elmt-catalog-stock strong { color:#fff; }
.woocommerce ul.products li.product .price,.woocommerce div.product p.price,.woocommerce div.product span.price { color:#72c8c3; }
.elmt-price-pending { color:#dff7f5; background:rgba(74,174,169,.12); border-color:rgba(74,174,169,.35); }
.elmt-quick-view .elmt-price-pending { color:#17304a; background:#eef8f7; border-color:#9fdad6; }
.woocommerce-order-received .elmt-order-disclaimer { color:#20364c; }
.woocommerce-order-received .elmt-order-disclaimer strong { color:#10243a; }
.elmt-shipping-notice {
  display: grid;
  gap: .3rem;
  width: 100%;
  margin: 0 0 1.5rem;
  padding: 1rem 1.15rem;
  color: #d9e7f4;
  background: #10243a;
  border: 1px solid rgba(74, 181, 180, .55);
  border-radius: .85rem;
}
.elmt-shipping-notice strong { color: #58c7c4; }
.elmt-shipping-notice span { line-height: 1.55; }
.elmt-quick-view__shipping {
  margin: .75rem 0;
  padding: .75rem .9rem;
  color: #29445d;
  background: #eef8f8;
  border-left: 3px solid #4ab5b4;
  border-radius: .4rem;
  font-size: .9rem;
  line-height: 1.45;
}
.woocommerce-order-received .elmt-transfer-details dt { color:#66788a; }
.woocommerce-order-received .elmt-transfer-details dd,
.woocommerce-order-received .elmt-transfer-heading h3 { color:#10243a; }
.woocommerce div.product div.images img { background:#dce5e9; }
.woocommerce-tabs .panel,.woocommerce-Tabs-panel { color:#a7b4c3; }

.woocommerce-cart .wc-block-cart-items,
.woocommerce-cart .wc-block-components-sidebar,
.woocommerce-checkout .wc-block-checkout__main,
.woocommerce-checkout .wc-block-checkout__sidebar { color:#e8eef5; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block { padding:clamp(1.25rem,4vw,2.5rem); color:#e8eef5; background:#0b1a2c; border:1px solid rgba(74,174,169,.28); border-radius:1rem; box-shadow:0 1.25rem 3rem rgba(0,0,0,.2); }
.woocommerce-cart .wc-block-cart__empty-cart__title,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2 { color:#fff; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .is-style-dots { color:#4aaea9; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin:2rem 0 0; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product { width:auto!important; max-width:none!important; margin:0; padding:1rem; background:#071322; border:1px solid rgba(74,174,169,.24); border-radius:.8rem; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-image img { width:100%; aspect-ratio:1/1; padding:.45rem; object-fit:contain; background:#fff; border-radius:.55rem; }
.woocommerce-cart .wc-block-grid__product:has(a[href*="/product/klow-100/"]) .wc-block-grid__product-image { aspect-ratio:1/1; background:#fff url("/wp-content/uploads/2026/08/klow-100-01.webp") center/contain no-repeat; border-radius:.55rem; }
.woocommerce-cart .wc-block-grid__product:has(a[href*="/product/klow-100/"]) .wc-block-grid__product-image img { opacity:0; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-title { color:#72c8c3; }
.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__product-add-to-cart { margin-bottom:0; }
.woocommerce-cart .wp-block-cart { color:#e8eef5; }
.woocommerce-cart .wc-block-cart-items,.woocommerce-cart .wc-block-components-sidebar { background:#0b1a2c; border-color:rgba(74,174,169,.28)!important; }
.woocommerce-cart .wc-block-cart-item__wrap a,.woocommerce-cart .wc-block-components-product-name { color:#fff; }
.woocommerce-cart .wc-block-components-quantity-selector { color:#fff; background:#06101e; border-color:#304255; }
.woocommerce-checkout main::before { color:#fff; background:radial-gradient(circle at 82% 40%,rgba(74,174,169,.18),transparent 28%),linear-gradient(135deg,#071322,#102a3d); border-bottom-color:rgba(74,174,169,.35); }
.woocommerce-checkout .wc-block-components-text-input input,
.woocommerce-checkout .wc-block-components-address-form__state select { color:#fff!important; background:#0b1a2c!important; border-color:#304255!important; }
.woocommerce-checkout .wc-block-components-text-input input::placeholder { color:#93a4b8!important; }
.wc-block-components-order-summary,.wc-block-components-totals-wrapper,
.wc-block-components-checkout-step { border-color:rgba(74,174,169,.22)!important; }

.site-footer { color:#aab8c7; background:#071322; border-top-color:rgba(74,174,169,.45); }
.site-footer h3,.site-footer a,.site-footer .wp-block-navigation-item__content { color:#fff; }

.elmt-404__content h1 { color:#fff; }
.elmt-404__content > p:not(.eyebrow) { color:#b7c3d1; }
.elmt-404__secondary { color:#fff!important; background:transparent!important; border-color:rgba(255,255,255,.55); }
.elmt-404__contact { color:#72c8c3; }
.elmt-404-header__hint { color:#fff; }

.site-header .wc-block-mini-cart__button,
.site-header .wc-block-mini-cart__quantity-badge { color:#fff!important; }
.site-header .wc-block-mini-cart__badge { color:#06101e!important; background:#4aaea9!important; }

.woocommerce-shop .elmt-catalog-tools { background:#0b1a2c; border-color:rgba(74,174,169,.28); box-shadow:0 .9rem 2.4rem rgba(0,0,0,.18); }
.woocommerce-shop .elmt-filter-group button { color:#b7c3d1; border-color:rgba(255,255,255,.08); }
.woocommerce-shop .elmt-filter-group button:hover { color:#fff; background:#102a3d; }
.woocommerce-shop .elmt-filter-group button.is-active { color:#06101e; background:#4aaea9; border-color:#4aaea9; }
.woocommerce-shop .elmt-filter-summary { color:#a7b4c3; }

.coa-card { color:#e8eef5; background:#0b1a2c; border-color:rgba(74,174,169,.28); box-shadow:0 1rem 2.5rem rgba(0,0,0,.2); }
.coa-card:hover { border-color:#4aaea9; box-shadow:0 1.2rem 3rem rgba(0,0,0,.28); }
.coa-card__preview { background:#dce5e9; border-bottom-color:rgba(74,174,169,.28); }
.coa-card__body h2 { color:#fff; }
.coa-card__body p { color:#a7b4c3; }
.coa-card__body strong { color:#72c8c3; }

.legal-callout { color:#e8eef5; background:#0b1a2c; border-color:rgba(74,174,169,.28); border-left-color:#4aaea9; box-shadow:0 .8rem 2rem rgba(0,0,0,.16); }
.legal-callout h2,.legal-callout h3 { color:#fff; }
.legal-callout p { color:#b7c3d1!important; }
.woocommerce-account .required { color:#ff8b96!important; }

.elmt-404__visual { color:#fff; background:radial-gradient(circle,rgba(74,174,169,.14),rgba(11,26,44,.96)); border-color:rgba(74,174,169,.45); box-shadow:0 2rem 5rem rgba(0,0,0,.24); }
.elmt-404__visual span { color:#fff; }
.single-product .wp-block-post-excerpt__excerpt { color:#b7c3d1; }
.woocommerce-checkout .wc-block-checkout__main,
.woocommerce-checkout .wc-block-checkout__sidebar { background:#0b1a2c; border-color:rgba(74,174,169,.28); box-shadow:0 1rem 2.5rem rgba(0,0,0,.2); }

@media (max-width: 900px) {
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 520px) {
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block { padding:1rem; }
  .woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid__products { grid-template-columns:1fr; }
}

/* Keep the compact header on one row at every responsive breakpoint. The
 * account block is also hidden defensively while WordPress refreshes an older
 * database-stored template part. */
.site-header .wp-block-woocommerce-customer-account { display:none!important; }

@media (max-width: 980px) {
  .site-header > .elmt-header-inner {
    display:flex;
    min-height:3.25rem;
    align-items:center;
    justify-content:space-between;
    flex-wrap:nowrap;
    gap:clamp(.55rem,2vw,1rem);
  }
  .elmt-header-brand {
    flex:1 1 auto;
    min-width:0;
    flex-wrap:nowrap!important;
  }
  .elmt-header-brand .brand-title {
    display:block;
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .elmt-header-actions {
    display:flex!important;
    flex:0 0 auto;
    min-width:max-content;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:nowrap!important;
    gap:.45rem;
  }
  .elmt-header-actions > * { margin:0!important; }
  .mobile-navigation summary {
    min-height:2.75rem;
    padding:.55rem .72rem;
    white-space:nowrap;
  }
}

@media (max-width: 520px) {
  .site-header { padding-block:.45rem; }
  .site-header > .elmt-header-inner { width:calc(100% - 1.5rem); }
  .elmt-header-logo { width:2.45rem; height:2.45rem; flex-basis:2.45rem; }
  .elmt-header-brand { gap:.45rem; }
  .elmt-header-brand .brand-title { font-size:.92rem; }
  .elmt-header-actions .wc-block-mini-cart__button { min-width:2.5rem; min-height:2.5rem; }
  .mobile-navigation summary { min-height:2.5rem; padding:.48rem .62rem; font-size:.94rem; }
}

@media (max-width: 780px) {
  body.woocommerce-shop .wc-block-product-template,
  body.woocommerce-shop .wp-block-woocommerce-product-template {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media (max-width: 430px) {
  body.woocommerce-shop .wc-block-product-template,
  body.woocommerce-shop .wp-block-woocommerce-product-template {
    grid-template-columns:1fr!important;
  }
}

@media (max-width: 390px) {
  .elmt-header-brand .brand-title { display:none; }
}

/* Checkout uses the full-width sports banner, followed by a comfortably
 * spaced single-column form and order summary on phones and tablets. */
body.woocommerce-checkout { padding-inline:0!important; }

/* Let the catalogue background and header reach the viewport edges while the
 * actual content remains aligned to the shared reading width. */
body.woocommerce-shop { padding-inline:0!important; }
body.woocommerce-shop main {
  box-sizing:border-box;
  width:100%;
  max-width:none;
  margin-inline:0;
  padding-inline:max(1rem,var(--page-gutter));
}
body.woocommerce-shop main > * {
  width:min(1180px,100%);
  margin-inline:auto;
}

.woocommerce-checkout .wc-block-checkout__main::before {
  content:"Disponibilidad por confirmar · Máximo 5 unidades por producto";
  display:block;
  margin:0 0 1.25rem;
  padding:.85rem 1rem;
  color:#dff7f5;
  background:rgba(74,174,169,.12);
  border:1px solid rgba(74,174,169,.35);
  border-radius:.75rem;
  font-size:.88rem;
  font-weight:750;
  line-height:1.45;
}

@media (max-width: 900px) {
  body.woocommerce-checkout main {
    width:100%;
    max-width:none;
    margin-inline:0;
    padding-inline:0!important;
  }
  body.woocommerce-checkout main::before {
    box-sizing:border-box;
    width:100%;
    margin:0 0 clamp(2rem,7vw,3rem)!important;
    padding:clamp(2.75rem,10vw,4.5rem) max(1.25rem,var(--page-gutter));
  }
  body.woocommerce-checkout .wc-block-checkout {
    width:min(100% - 2rem,46rem);
    margin-inline:auto!important;
  }
  body.woocommerce-checkout .wc-block-components-sidebar-layout {
    gap:clamp(2.25rem,7vw,3.25rem)!important;
  }
  body.woocommerce-checkout .wc-block-checkout__sidebar {
    margin-top:0!important;
    padding:1.2rem!important;
  }
  body.woocommerce-checkout .wc-block-components-checkout-order-summary__title {
    min-height:3.5rem;
    padding:.8rem 0;
    align-items:center;
  }
}

@media (max-width: 430px) {
  body.woocommerce-checkout .wc-block-checkout { width:calc(100% - 1.25rem); }
  body.woocommerce-checkout .wc-block-checkout__main,
  body.woocommerce-checkout .wc-block-checkout__sidebar { padding:1rem!important; }
  body.woocommerce-checkout .wc-block-components-checkout-order-summary__title-text {
    font-size:1rem;
  }
}

/* The translated home uses the regular page template, so explicitly retain
 * the light catalogue section's home-page contrast. */
.page-id-152 .sports-catalog { color:#0a1728; background:#f4f7fa; }
.page-id-152 .sports-catalog .sports-section-heading h2 { color:#09192c; }
.page-id-152 .sports-catalog .sports-section-heading > p { color:#637386; }
