:root {
    --aero-blue: #22b8ed;
    --aero-blue-dark: #087eae;
    --aero-ink: #171b25;
    --aero-muted: #616977;
    --aero-line: #dbeaf2;
    --aero-green: #00b67a;
    --aero-orange: #f28a18;
}

* { box-sizing: border-box; }

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

body {
    margin: 0;
    color: var(--aero-ink);
    background: #fff;
    font-family: Inter, Arial, sans-serif;
}

a { color: inherit; text-decoration: none; }
img,
video,
iframe { max-width: 100%; }

.aero-header,
.aero-main,
.aero-footer {
    width: 100%;
    max-width: 100%;
    overflow-x: clip;
}

.aero-page-width,
.aero-section,
.aero-page,
.aero-shop-shell,
.aero-product-page {
    width: min(1220px, calc(100% - 32px));
    max-width: 100%;
    margin-inline: auto;
}

.aero-trustbar {
    border-bottom: 1px solid #edf1f4;
    background: #fff;
    font-size: clamp(15px, 1vw, 20px);
}

.aero-trustbar .aero-page-width {
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(8px, 1vw, 18px);
    color: #4c5260;
}

.aero-trust-brand,
.aero-trust-excellent,
.aero-rating { color: #151820; }

.aero-trust-brand {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 1.15em;
}

.aero-trust-star,
.aero-review-summary span,
.aero-review-grid span,
.aero-product-mini-rating span,
.aero-rating-line span,
.aero-review-score span { color: var(--aero-green); }

.aero-trust-star { font-size: 1.5em; line-height: 0.75; }
.aero-trust-stars { display: inline-flex; gap: 5px; }
.aero-trust-stars span {
    width: 26px;
    height: 26px;
    display: grid;
    place-items: center;
    background: var(--aero-green);
    color: #fff;
    font-size: 16px;
}

.aero-trust-divider {
    width: 2px;
    height: 30px;
    background: #d5d8dd;
}

.aero-menu-row {
    background: #fff;
    border-bottom: 8px solid var(--aero-blue);
}

.aero-menu-inner {
    min-height: 128px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: clamp(12px, 1.6vw, 28px);
    width: min(1500px, calc(100% - 32px));
}

.aero-main-nav {
    display: flex;
    align-items: center;
    gap: clamp(14px, 1.7vw, 30px);
    flex: 1 1 auto;
    min-width: 420px;
    max-width: none;
    overflow: visible;
    font-size: clamp(17px, 1.25vw, 24px);
    font-weight: 700;
    color: #091323;
    white-space: nowrap;
}

.aero-main-nav::-webkit-scrollbar { display: none; }

.aero-main-nav > a,
.aero-nav-trigger {
    min-height: 56px;
    display: inline-flex;
    align-items: center;
}

.aero-nav-menu { position: relative; }
.aero-nav-menu::after {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: min(860px, calc(100vw - 48px));
    height: 24px;
}

.aero-nav-trigger { gap: 10px; cursor: default; }

.aero-nav-menu:hover .aero-nav-trigger {
    padding-inline: 12px;
    border-radius: 999px;
    background: #f3f6f9;
    color: #17324a;
}

.aero-nav-trigger::after {
    content: "";
    width: 12px;
    height: 12px;
    border-right: 3px solid currentColor;
    border-bottom: 3px solid currentColor;
    transform: rotate(45deg) translateY(-3px);
}

.aero-nav-panel {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    z-index: 30;
    display: none;
    padding: 18px;
    border: 1px solid #e0e9ef;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(13, 42, 64, 0.16);
    white-space: normal;
}

.aero-nav-menu:hover .aero-nav-panel { display: grid; }

.aero-mega-menu {
    width: min(860px, calc(100vw - 48px));
    grid-template-columns: 250px minmax(0, 1fr);
    gap: 18px;
}

.aero-mega-menu-wide {
    width: min(960px, calc(100vw - 48px));
    grid-template-columns: 340px minmax(0, 1fr);
}

.aero-mega-list {
    display: grid;
    gap: 6px;
    align-content: start;
    padding-right: 14px;
    border-right: 1px solid #e4edf2;
}

.aero-mega-list-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aero-mega-list a {
    display: grid;
    gap: 2px;
    padding: 11px 12px;
    border-radius: 6px;
    color: #17212b;
    font-size: 14px;
    font-weight: 900;
}

.aero-mega-list a:hover { background: #eef8fd; color: var(--aero-blue-dark); }
.aero-mega-list small {
    color: #7a8791;
    font-size: 11px;
    font-weight: 800;
}

.aero-mega-products {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.aero-mega-product {
    display: grid;
    gap: 8px;
    padding: 10px;
    border: 1px solid #e2ebf0;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 8px 22px rgba(18, 39, 57, 0.05);
}

.aero-mega-image {
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    border-radius: 6px;
    background: #f4f9fc;
    overflow: hidden;
}

.aero-mega-image img { width: 100%; height: 100%; object-fit: contain; }
.aero-mega-product strong {
    min-height: 38px;
    display: -webkit-box;
    overflow: hidden;
    color: #17212b;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 850;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow-wrap: anywhere;
}
.aero-mega-product small { color: var(--aero-blue-dark); font-size: 13px; font-weight: 950; }

.aero-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
    color: #111821;
    font-size: clamp(24px, 1.9vw, 40px);
    font-weight: 950;
}

.aero-mark {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: radial-gradient(circle at 50% 50%, #fff 0 34%, var(--aero-blue) 35% 100%);
    color: var(--aero-blue);
    font-size: 30px;
    box-shadow: -18px 0 0 -12px var(--aero-blue), -30px 8px 0 -24px var(--aero-blue);
}

.aero-brand-text { display: grid; line-height: 0.9; }
.aero-brand-text strong { color: var(--aero-blue); }
.aero-brand-text small { color: #111821; font-size: 0.66em; font-weight: 950; }

.aero-header-actions {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 0 0 auto;
}

.aero-header-icon,
.aero-header-cart,
.aero-account-link {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #0d1b2d;
}

.aero-header-icon {
    width: 48px;
    border-radius: 50%;
    background: #fff;
}

.aero-header-icon::before,
.aero-cart-icon,
.aero-account-link span {
    content: "";
    display: block;
    background: currentColor;
    -webkit-mask-position: center;
            mask-position: center;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-size: contain;
            mask-size: contain;
}

.aero-header-search::before {
    width: 24px;
    height: 24px;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
            mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E");
}

.aero-header-cart {
    position: relative;
    width: 58px;
    height: 58px;
    min-height: 58px;
    border-radius: 50%;
    background: var(--aero-blue);
    color: #fff;
    box-shadow: 0 12px 28px rgba(34, 184, 237, 0.22);
}

.aero-cart-icon {
    width: 27px;
    height: 27px;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h8.98a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E");
            mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='21' r='1'/%3E%3Ccircle cx='19' cy='21' r='1'/%3E%3Cpath d='M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h8.98a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12'/%3E%3C/svg%3E");
}

.aero-header-cart strong {
    position: absolute;
    top: -7px;
    right: -4px;
    min-width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    padding: 0 5px;
    border: 2px solid #fff;
    border-radius: 999px;
    background: #fff;
    color: #0f2135;
    font-size: 12px;
    font-weight: 950;
    box-shadow: 0 5px 14px rgba(22, 45, 68, 0.16);
}

.aero-account-link {
    gap: 9px;
    padding: 0 17px;
    border: 1px solid #dce6ee;
    border-radius: 999px;
    background: #f5f8fb;
    font-size: 16px;
    font-weight: 850;
    white-space: nowrap;
}

.aero-account-link span {
    width: 21px;
    height: 21px;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
            mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");
}

.aero-cart,
.aero-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #payment #place_order {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 0 20px;
    border: 0;
    border-radius: 999px;
    background: var(--aero-blue);
    color: #fff;
    font-weight: 900;
    cursor: pointer;
}

.aero-cart {
    flex: 0 0 auto;
    background: var(--aero-orange);
}
.aero-button-secondary { color: var(--aero-blue-dark); background: #eaf8fe; }

.aero-sale-marquee {
    overflow: hidden;
    background: var(--aero-blue);
    color: #fff;
    font-weight: 800;
    text-transform: uppercase;
}

.aero-marquee-track {
    display: flex;
    width: max-content;
    max-width: none;
    animation: aero-marquee 24s linear infinite;
}

.aero-marquee-track span {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 13px 34px;
    white-space: nowrap;
}

.aero-marquee-track b {
    display: inline-grid;
    place-items: center;
    font-size: 1.08em;
    line-height: 1;
}
@keyframes aero-marquee {
    from { transform: translateX(0); }
    to { transform: translateX(-50%); }
}

.aero-main { min-height: 70vh; }
.aero-hero {
    background: linear-gradient(180deg, #fff 0%, #f7fbfe 100%);
    padding: clamp(42px, 6vw, 84px) 0 22px;
}

.aero-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 0.78fr);
    gap: clamp(24px, 4vw, 52px);
    align-items: center;
}

.aero-hero-copy { padding: 0; }
.aero-eyebrow,
.aero-section-head p,
.aero-feature-band p,
.aero-newsletter p {
    margin: 0 0 10px;
    color: var(--aero-blue-dark);
    font-weight: 900;
    text-transform: uppercase;
    font-size: 13px;
}

.aero-hero h1,
.aero-section h2,
.aero-newsletter h2 {
    margin: 0;
    color: var(--aero-ink);
    line-height: 0.98;
    letter-spacing: 0;
}

.aero-hero h1 {
    max-width: 760px;
    font-size: clamp(38px, 5.4vw, 72px);
}

.aero-hero p {
    max-width: 680px;
    margin: 28px 0;
    color: var(--aero-muted);
    font-size: clamp(18px, 2vw, 23px);
    line-height: 1.55;
    font-weight: 650;
}

.aero-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.aero-hero-panel {
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 18px 48px rgba(10, 84, 118, 0.16);
    background: #eaf5fa;
}

.aero-hero-panel img {
    display: block;
    width: 100%;
    height: min(430px, 40vw);
    min-height: 280px;
    object-fit: cover;
}

.aero-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin-top: 24px;
    background: #fff;
    border-radius: 8px;
    box-shadow: 0 12px 34px rgba(28, 52, 76, 0.08);
    overflow: hidden;
}

.aero-benefits div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 22px;
}

.aero-benefits span {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: var(--aero-blue-dark);
    background: #eef8fc;
    font-size: 14px;
    font-weight: 950;
}

.aero-collection-strip {
    margin: 0;
    padding: 36px 0 18px;
    background: #f4f7fa;
    overflow: hidden;
}

.aero-collection-inner {
    width: min(1220px, calc(100% - 32px));
    margin-inline: auto;
}

.aero-collection-label {
    margin: 0 0 24px;
    color: #8b95a3;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: 0;
    text-transform: uppercase;
}

.aero-collection-row {
    display: flex;
    align-items: flex-start;
    gap: clamp(18px, 2.4vw, 34px);
    overflow-x: auto;
    overflow-y: visible;
    padding: 0 0 18px;
    scrollbar-width: none;
}

.aero-collection-row::-webkit-scrollbar { display: none; }

.aero-collection-strip a {
    flex: 0 0 clamp(128px, 12vw, 168px);
    display: grid;
    justify-items: center;
    gap: 14px;
    color: #2a3c4f;
    font-size: 15px;
    font-weight: 950;
    text-align: center;
}

.aero-collection-image {
    width: clamp(126px, 12vw, 166px);
    aspect-ratio: 1;
    display: grid;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 18px 45px rgba(25, 48, 68, 0.08);
}

.aero-collection-image img {
    width: 76%;
    height: 76%;
    object-fit: contain;
}

.aero-collection-strip strong {
    display: block;
    color: #2e4054;
    font-size: 16px;
    line-height: 1.2;
}

.aero-collection-strip .aero-collection-more {
    align-self: center;
    flex-basis: 54px;
}

.aero-collection-more span {
    width: 54px;
    height: 54px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #18324b;
    font-size: 38px;
    line-height: 1;
    box-shadow: 0 14px 35px rgba(20, 42, 60, 0.12);
}

.aero-chip,
.aero-size-grid a {
    min-height: 86px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    border: 1px solid #d9e8ef;
    border-radius: 8px;
    background: #fff;
    color: #1b2a34;
    font-size: 20px;
    font-weight: 900;
    box-shadow: 0 8px 26px rgba(18, 39, 57, 0.05);
}

.aero-section,
.aero-page,
.aero-shop-shell { padding: clamp(52px, 7vw, 86px) 0; }

.aero-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 24px;
}

.aero-section h2,
.aero-page h1,
.woocommerce-products-header__title.page-title,
.aero-newsletter h2 { font-size: clamp(32px, 4vw, 48px); }

.aero-section-head a { color: var(--aero-blue-dark); font-weight: 900; }
.aero-chip-grid,
.aero-size-grid,
.aero-category-grid,
.aero-product-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
}

.aero-chip,
.aero-size-grid a { justify-content: center; }

.aero-category-card,
.aero-product-card,
.woocommerce ul.products li.product {
    border: 1px solid #e3edf2;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 14px 36px rgba(18, 39, 57, 0.06);
}

.aero-category-card {
    display: flex;
    min-height: 118px;
    flex-direction: column;
    justify-content: space-between;
    padding: 18px;
}

.aero-category-card span,
.aero-product-card strong { color: var(--aero-ink); font-weight: 900; }
.aero-category-card small,
.aero-product-card .aero-price { color: var(--aero-muted); font-weight: 800; }

.aero-product-card {
    position: relative;
    display: flex;
    min-height: 330px;
    flex-direction: column;
    gap: 10px;
    padding: 14px;
}

.aero-product-card::before,
.woocommerce ul.products li.product::before {
    content: "Sale";
    width: fit-content;
    margin-bottom: 2px;
    padding: 5px 9px;
    border-radius: 999px;
    background: #fff0f0;
    color: #d93232;
    font-size: 12px;
    font-weight: 900;
}

.aero-product-image {
    order: -1;
    display: grid;
    aspect-ratio: 1;
    place-items: center;
    overflow: hidden;
    border-radius: 8px;
    background: linear-gradient(160deg, #f5fbff, #e9f7fd);
}

.aero-product-image img,
.woocommerce ul.products li.product a img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.aero-price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
    color: var(--aero-blue-dark);
    font-size: 18px;
    font-weight: 950;
}

.aero-feature-band {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 34px;
    align-items: center;
    padding: clamp(34px, 5vw, 56px);
    border-radius: 8px;
    background: #eff9fd;
}

.aero-feature-band ul {
    margin: 20px 0 26px;
    padding-left: 20px;
    color: var(--aero-muted);
    line-height: 1.8;
    font-weight: 650;
}

.aero-reviews {
    display: grid;
    grid-template-columns: 0.32fr 1fr;
    gap: 24px;
}

.aero-review-summary,
.aero-review-grid article {
    border: 1px solid #e1edf3;
    border-radius: 8px;
    background: #fff;
    padding: 22px;
    box-shadow: 0 10px 30px rgba(18, 39, 57, 0.05);
}

.aero-review-summary strong {
    display: block;
    margin-top: 8px;
    font-size: 24px;
}

.aero-review-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}

.aero-review-grid h3 { margin: 10px 0 8px; font-size: 18px; }
.aero-review-grid p,
.aero-review-summary p { color: var(--aero-muted); line-height: 1.55; }
.aero-review-grid small { color: var(--aero-blue-dark); font-weight: 900; }

.aero-newsletter {
    padding: 48px 0;
    background: #111826;
    color: #fff;
}

.aero-newsletter-inner {
    display: grid;
    grid-template-columns: 1fr 0.8fr;
    gap: 28px;
    align-items: center;
}

.aero-newsletter h2,
.aero-newsletter span { color: #fff; }
.aero-newsletter span { display: block; margin-top: 10px; color: #d3e5ee; }

.aero-newsletter-form {
    display: flex;
    min-width: min(420px, 100%);
    border: 1px solid #d8e3ea;
    background: #fff;
    border-radius: 999px;
    overflow: hidden;
}

.aero-newsletter-form input {
    min-width: 0;
    flex: 1;
    border: 0;
    padding: 12px 16px;
    background: transparent;
    color: var(--aero-ink);
}

.aero-newsletter-form button {
    border: 0;
    padding: 12px 20px;
    background: var(--aero-blue);
    color: #fff;
    font-weight: 900;
}

.woocommerce ul.products {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none; }
.woocommerce ul.products li.product {
    width: auto !important;
    margin: 0 !important;
    padding: 14px;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--aero-ink);
    font-size: 16px;
    line-height: 1.35;
}

.woocommerce .related.products,
.woocommerce .upsells.products {
    width: min(1180px, calc(100% - 32px));
    margin: 52px auto;
}

.woocommerce .related.products > h2,
.woocommerce .upsells.products > h2 {
    margin: 0 0 22px;
    color: var(--aero-ink);
    font-size: clamp(28px, 2.4vw, 40px);
    line-height: 1.1;
    font-weight: 950;
}

.woocommerce .related.products ul.products,
.woocommerce .upsells.products ul.products,
.woocommerce-page .related.products ul.products,
.woocommerce-page .upsells.products ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 22px !important;
    clear: both;
}

.woocommerce .related.products ul.products li.product,
.woocommerce .upsells.products ul.products li.product,
.woocommerce-page .related.products ul.products li.product,
.woocommerce-page .upsells.products ul.products li.product,
.woocommerce-page ul.products.columns-4 li.product,
.woocommerce ul.products.columns-4 li.product {
    position: relative;
    float: none !important;
    width: auto !important;
    min-width: 0;
    min-height: 390px;
    display: flex;
    flex-direction: column;
    padding: 16px !important;
    overflow: hidden;
}

.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale {
    top: 14px !important;
    left: 14px !important;
    right: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 5px 12px !important;
    border-radius: 999px !important;
    background: #fff0f0 !important;
    color: #d93232 !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    font-weight: 950 !important;
}

.woocommerce ul.products li.product::before {
    display: none;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
    display: flex;
    flex: 1;
    flex-direction: column;
    color: inherit;
}

.woocommerce ul.products li.product a img {
    width: 100% !important;
    height: 178px !important;
    margin: 8px 0 16px !important;
    object-fit: contain;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    min-height: 58px;
    margin: 0 0 12px !important;
    padding: 0 !important;
    color: var(--aero-ink);
    font-size: 18px !important;
    line-height: 1.25 !important;
    font-weight: 950;
}

.woocommerce ul.products li.product .price {
    min-height: 52px;
    margin: auto 0 16px !important;
    color: var(--aero-blue-dark) !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 950 !important;
}

.woocommerce ul.products li.product .price del {
    display: block;
    color: #74adc4;
    opacity: 1;
}

.woocommerce ul.products li.product .price ins {
    text-decoration: none;
}

.woocommerce ul.products li.product .button {
    width: 100%;
    min-height: 46px;
    justify-content: center;
    align-self: stretch;
    margin-top: auto !important;
    padding: 12px 18px !important;
    border-radius: 999px !important;
    background: var(--aero-blue) !important;
    color: #fff !important;
    font-size: 15px !important;
    line-height: 1.15 !important;
    white-space: normal;
    text-align: center;
}

.woocommerce div.product {
    display: grid;
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    gap: 48px;
    width: min(1180px, calc(100% - 32px));
    margin: 34px auto;
}

.woocommerce div.product > .woocommerce-product-gallery,
.woocommerce div.product > div.images {
    grid-column: 1;
}

.woocommerce div.product > .summary,
.woocommerce div.product > div.summary {
    grid-column: 2;
}

.woocommerce div.product > .aero-product-offers,
.woocommerce div.product > .related.products,
.woocommerce div.product > .upsells.products {
    grid-column: 1 / -1;
}

.woocommerce div.product div.images,
.woocommerce div.product div.summary {
    width: auto !important;
    float: none !important;
}

.woocommerce div.product .product_title {
    color: #121d35;
    font-size: clamp(28px, 2.35vw, 40px);
    line-height: 1.08;
    font-weight: 950;
}

.woocommerce div.product div.images img {
    border-radius: 8px;
    object-fit: contain;
    background: #fff;
}

.woocommerce div.product form.cart {
    display: grid;
    grid-template-columns: minmax(128px, 168px) minmax(180px, 1fr) minmax(160px, 0.8fr);
    gap: 12px;
    align-items: stretch;
    margin-top: 24px;
    padding-top: 22px;
    border-top: 1px solid #e4e4e4;
}

.woocommerce div.product form.cart div.quantity {
    grid-column: 1;
    float: none !important;
    width: 100%;
    height: 58px;
    margin: 0 !important;
}

.aero-quantity-control {
    display: grid;
    grid-template-columns: 42px minmax(42px, 1fr) 42px;
    align-items: center;
    width: 100%;
    height: 58px;
    overflow: hidden;
    border: 1px solid #d7d7d7;
    border-radius: 18px;
    background: #fff;
}

.aero-qty-btn {
    width: 100%;
    height: 100%;
    border: 0;
    background: transparent;
    color: #888;
    font-size: 26px;
    line-height: 1;
    font-weight: 400;
    cursor: pointer;
}

.aero-qty-btn:hover,
.aero-qty-btn:focus {
    color: var(--aero-blue-dark);
    outline: none;
}

.woocommerce div.product form.cart .quantity .qty {
    width: 100% !important;
    height: 100% !important;
    min-height: 0;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #2b2f36;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    box-shadow: none !important;
    appearance: textfield;
    -moz-appearance: textfield;
}

.woocommerce div.product form.cart .quantity .qty::-webkit-outer-spin-button,
.woocommerce div.product form.cart .quantity .qty::-webkit-inner-spin-button {
    margin: 0;
    appearance: none;
}

.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart .aero-buy-now-button {
    position: relative;
    width: 100%;
    min-height: 58px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    margin: 0 !important;
    padding: 0 22px !important;
    border-radius: 999px !important;
    color: #fff !important;
    font-size: clamp(17px, 1.45vw, 22px) !important;
    line-height: 1.1 !important;
    font-weight: 950 !important;
    box-shadow: none !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button {
    grid-column: 2;
    background: #69b6e7 !important;
}

.woocommerce div.product form.cart .aero-buy-now-button {
    grid-column: 3;
    background: var(--aero-orange) !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button::before {
    content: "";
    width: 22px;
    height: 22px;
    margin-right: 10px;
    background: currentColor;
    flex: 0 0 auto;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8h12l-1 12H7L6 8Z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3Cpath d='M19 13v6'/%3E%3Cpath d='M16 16h6'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 8h12l-1 12H7L6 8Z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3Cpath d='M19 13v6'/%3E%3Cpath d='M16 16h6'/%3E%3C/svg%3E") center / contain no-repeat;
}

.aero-product-sidebar-promos { display: grid; gap: 12px; margin: 14px 0; }
.aero-product-mini-sale { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.aero-flash-pill,
.aero-coupon-pill {
    min-height: 38px;
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 0 14px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 950;
    text-transform: uppercase;
}

.aero-flash-pill { background: #a7e36d; color: #172945; }
.aero-coupon-pill { background: #ff8d16; color: #fff; }
.aero-coupon-pill code,
.aero-sale-pill code {
    padding: 6px 10px;
    border-radius: 6px;
    background: #fff;
    color: #f27b10;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 13px;
    letter-spacing: 1px;
}

.aero-product-mini-rating { display: flex; align-items: center; gap: 10px; font-size: 18px; }
.aero-product-mini-rating strong { color: #000; font-size: 18px; }
.aero-product-mini-stock {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #111827;
    font-size: 15px;
    font-weight: 850;
}

.aero-product-mini-stock i {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #55ace0;
}

.aero-product-mini-services {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.aero-product-mini-services span {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-height: 72px;
    padding: 12px;
    border: 1px solid #e3eaf0;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 8px 24px rgba(18, 39, 57, 0.06);
}

.aero-product-mini-services i {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--aero-blue);
    color: #fff;
    font-style: normal;
    font-size: 13px;
    font-weight: 950;
}

.aero-product-mini-services strong { color: var(--aero-ink); font-size: 14px; line-height: 1.2; }
.aero-product-mini-services small,
.aero-rating-line small { color: #65717d; font-size: 12px; }

.aero-product-offers {
    width: 100%;
    background: linear-gradient(180deg, #fff 0%, #f7fcff 48%, #fff 100%);
    padding: 28px 0 70px;
}

.aero-product-topline {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 16px;
    align-items: center;
    margin-bottom: 18px;
}

.aero-sale-pill,
.aero-rating-line { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.aero-sale-pill {
    padding: 10px 14px;
    border: 1px solid #bdeaf8;
    border-radius: 8px;
    background: linear-gradient(90deg, #e8f9ff 0%, #fff 100%);
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(34, 184, 237, 0.08);
}

.aero-service-grid,
.aero-offer-grid,
.aero-review-card-grid,
.aero-feature-icons { display: grid; gap: 16px; }
.aero-service-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 28px; }
.aero-service-grid article,
.aero-offer-card,
.aero-faq,
.aero-customer-reviews {
    border: 1px solid #dcecf4;
    border-radius: 8px;
    background: linear-gradient(180deg, #fff 0%, #fbfeff 100%);
    box-shadow: 0 12px 30px rgba(18, 39, 57, 0.06);
}

.aero-service-grid article {
    padding: 18px 22px;
    border-color: #d8edf6;
    background: linear-gradient(180deg, #fff 0%, #f4fbfe 100%);
}
.aero-service-grid strong { display: block; margin-bottom: 6px; color: var(--aero-ink); font-size: 18px; }
.aero-service-grid span,
.aero-product-story p,
.aero-faq p,
.aero-rating-line small { color: var(--aero-muted); }

.aero-product-story {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 0.55fr;
    gap: 16px;
    align-items: center;
    padding: 28px;
    border-radius: 8px;
    background: linear-gradient(135deg, #edfaff 0%, #fff 72%);
    border: 1px solid #cfeaf5;
    box-shadow: 0 14px 38px rgba(34, 184, 237, 0.08);
}

.aero-product-story h2,
.aero-offer-head h2,
.aero-faq h2 {
    margin: 0;
    color: var(--aero-ink);
    font-size: clamp(28px, 3vw, 42px);
    line-height: 1.05;
}

.aero-feature-icons { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.aero-feature-icons span {
    min-height: 56px;
    display: grid;
    place-items: center;
    padding: 12px;
    border: 1px solid #d1eef8;
    border-radius: 8px;
    background: linear-gradient(180deg, #e4f7fe 0%, #f5fcff 100%);
    color: var(--aero-blue-dark);
    font-weight: 900;
    text-align: center;
}

.aero-customer-reviews {
    width: 100%;
    margin: 44px auto 0;
    padding: clamp(34px, 5vw, 66px) clamp(18px, 4vw, 44px);
    border: 0 !important;
    background: #eef1f4;
    box-shadow: none !important;
}

.aero-customer-reviews > h2 {
    margin: 0 0 36px;
    color: #172945;
    font-size: clamp(36px, 4vw, 58px);
    line-height: 1;
    text-align: center;
}

.aero-review-summary-card {
    display: grid;
    grid-template-columns: 0.32fr 1fr;
    gap: 42px;
    align-items: center;
    max-width: 980px;
    margin: 0 auto 42px;
    padding: 34px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 44px rgba(25, 42, 62, 0.08);
}

.aero-review-score { text-align: center; }
.aero-review-score strong { display: block; font-size: 74px; line-height: 0.9; color: #172945; }
.aero-review-score small { display: block; margin-top: 12px; color: var(--aero-muted); }
.aero-review-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
    margin-top: 18px;
}
.aero-review-badges span {
    padding: 7px 12px;
    border-radius: 999px;
    background: #e7f8ff;
    color: #0297d6;
    font-size: 12px;
    font-weight: 900;
}
.aero-review-bars { display: grid; gap: 14px; }
.aero-review-bars div {
    display: grid;
    grid-template-columns: 86px 1fr 44px;
    gap: 16px;
    align-items: center;
}

.aero-review-bars span { color: #ffb400; font-size: 13px; letter-spacing: 0; }
.aero-review-bars i {
    position: relative;
    height: 6px;
    border-radius: 999px;
    background: #ebedef;
    overflow: hidden;
}
.aero-review-bars i::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: var(--bar);
    border-radius: inherit;
    background: #ffb400;
}

.aero-review-card-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 980px;
    margin: 0 auto;
    gap: 26px;
}

.aero-review-card-grid article,
.aero-review-card {
    position: relative;
    display: grid;
    gap: 16px;
    align-content: start;
    min-height: 420px;
    padding: 42px 22px 24px;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 18px 46px rgba(25, 42, 62, 0.08);
}

.aero-floating-stars {
    position: absolute;
    top: -18px;
    left: 50%;
    transform: translateX(-50%);
    padding: 8px 18px;
    border-radius: 999px;
    background: #fff;
    color: #ffb400;
    letter-spacing: 0;
    box-shadow: 0 10px 24px rgba(25, 42, 62, 0.12);
}

.aero-review-person {
    display: grid;
    grid-template-columns: 42px 1fr;
    gap: 12px;
    align-items: center;
}

.aero-review-avatar {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #dff5fd;
    color: var(--aero-blue-dark);
    font-size: 13px;
    font-weight: 950;
}

.aero-review-person strong {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    align-items: center;
    color: #25364d;
    font-size: 14px;
}

.aero-review-person em {
    color: var(--aero-green);
    font-style: normal;
    font-size: 11px;
}

.aero-review-person small {
    display: block;
    margin-top: 3px;
    color: #7a8491;
    font-size: 12px;
    line-height: 1.45;
}

.aero-review-card p {
    margin: 0;
    color: var(--aero-muted);
    font-weight: 650;
    line-height: 1.55;
}

.aero-review-photo {
    width: 100%;
    aspect-ratio: 4 / 3;
    object-fit: contain;
    border-radius: 8px;
    background: #f4fbfe;
}

.aero-offer-head { margin: 44px 0 18px; }
.aero-offer-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.aero-offer-card {
    position: relative;
    padding: 22px;
    overflow: hidden;
}
.aero-offer-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 5px;
    background: linear-gradient(90deg, var(--aero-blue), #77d9f6);
}
.aero-offer-card-featured {
    border-color: var(--aero-blue);
    background: linear-gradient(180deg, #f0fbff 0%, #fff 100%);
    box-shadow: 0 18px 44px rgba(34, 184, 237, 0.2);
}
.aero-best-value {
    position: absolute;
    top: -13px;
    right: 16px;
    padding: 6px 10px;
    border-radius: 999px;
    background: linear-gradient(90deg, var(--aero-blue), #10a9df);
    color: #fff;
    font-size: 12px;
    font-weight: 950;
}
.aero-offer-card h3 { margin: 0 0 12px; color: var(--aero-ink); font-size: 20px; text-transform: uppercase; }
.aero-offer-card > strong { display: block; margin-bottom: 14px; color: var(--aero-blue-dark); font-size: 26px; font-weight: 950; }
.aero-offer-card ul { margin: 0; padding-left: 18px; color: var(--aero-muted); line-height: 1.7; font-weight: 650; }
.aero-product-lower { margin-top: 42px; }
.aero-faq { padding: 24px; }
.aero-faq details { padding: 16px 0; border-bottom: 1px solid #e8f1f6; }
.aero-faq details:last-child { border-bottom: 0; }
.aero-faq summary { cursor: pointer; color: var(--aero-ink); font-weight: 900; }

.aero-footer {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
    margin-top: 0;
    padding: 38px max(24px, calc((100% - 1180px) / 2));
    background: #111826;
    color: #fff;
}
.aero-footer p { color: #cfe2ef; }

@media (max-width: 1280px) {
    .aero-menu-inner {
        min-height: 108px;
        gap: 12px;
    }

    .aero-main-nav {
        min-width: 0;
        gap: 12px;
        font-size: 15px;
    }

    .aero-brand {
        gap: 8px;
        font-size: 24px;
    }

    .aero-mark {
        width: 42px;
        height: 42px;
        font-size: 21px;
    }

    .aero-header-actions {
        gap: 7px;
    }

    .aero-header-icon {
        width: 42px;
        min-height: 42px;
    }

    .aero-header-cart {
        width: 50px;
        height: 50px;
        min-height: 50px;
    }

    .aero-account-link {
        min-height: 44px;
        padding-inline: 12px;
        font-size: 15px;
    }

    .aero-hero h1 {
        max-width: 640px;
        font-size: clamp(38px, 5vw, 62px);
    }

    .aero-hero p {
        max-width: 590px;
        font-size: 19px;
    }
}

@media (max-width: 1120px) {
    .aero-menu-inner {
        min-height: auto;
        display: grid;
        grid-template-columns: 1fr auto;
        padding-block: 18px;
    }

    .aero-main-nav {
        grid-column: 1 / -1;
        order: 2;
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 4px;
    }

    .aero-brand {
        order: 1;
    }

    .aero-header-actions {
        order: 1;
        justify-self: end;
    }
}

@media (max-width: 990px) {
    .aero-hero-grid,
    .aero-feature-band,
    .aero-reviews,
    .aero-newsletter-inner,
    .woocommerce div.product,
    .aero-product-topline,
    .aero-product-story,
    .aero-review-summary-card { grid-template-columns: 1fr; }

    .woocommerce div.product {
        display: block !important;
        width: min(100% - 28px, 1180px);
    }

    .woocommerce div.product > .woocommerce-product-gallery,
    .woocommerce div.product > div.images,
    .woocommerce div.product > .summary,
    .woocommerce div.product > div.summary,
    .woocommerce div.product > .aero-product-offers,
    .woocommerce div.product > .related.products,
    .woocommerce div.product > .upsells.products {
        display: block;
        grid-column: auto !important;
        width: 100% !important;
        max-width: none !important;
    }

    .aero-product-offers,
    .aero-product-offers .aero-product-page,
    .woocommerce .related.products,
    .woocommerce .upsells.products {
        width: 100% !important;
        max-width: none !important;
    }

    .aero-menu-inner { display: grid; }
    .aero-main-nav { overflow-x: auto; padding-bottom: 2px; }
    .aero-mega-menu,
    .aero-mega-menu-wide { width: min(720px, calc(100vw - 28px)); grid-template-columns: 1fr; }
    .aero-mega-list { padding-right: 0; padding-bottom: 12px; border-right: 0; border-bottom: 1px solid #e4edf2; }

    .woocommerce div.product form.cart {
        grid-template-columns: minmax(126px, 155px) minmax(160px, 1fr) minmax(145px, 0.8fr);
        gap: 10px;
    }

    .aero-collection-strip,
    .aero-chip-grid,
    .aero-size-grid,
    .aero-category-grid,
    .aero-product-grid,
    .woocommerce ul.products,
    .aero-service-grid,
    .aero-offer-grid,
    .aero-review-card-grid,
    .aero-footer { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .woocommerce .related.products ul.products,
    .woocommerce .upsells.products ul.products,
    .woocommerce-page .related.products ul.products,
    .woocommerce-page .upsells.products ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 640px) {
    .aero-page-width,
    .aero-section,
    .aero-page,
    .aero-shop-shell,
    .aero-product-page { width: min(100% - 22px, 1220px); }

    .aero-trustbar .aero-page-width { flex-wrap: wrap; gap: 8px; padding: 10px 0; line-height: 1.2; }
    .aero-hero h1 { font-size: 40px; }

    .aero-menu-inner {
        grid-template-columns: 1fr;
        justify-items: center;
        gap: 14px;
    }

    .aero-brand,
    .aero-header-actions,
    .aero-main-nav {
        justify-self: center;
    }

    .aero-main-nav {
        order: 3;
        justify-content: flex-start;
    }

    .aero-header-actions {
        order: 2;
    }

    .aero-account-link {
        min-height: 42px;
        padding-inline: 13px;
        font-size: 14px;
    }

    .aero-header-icon {
        width: 42px;
        min-height: 42px;
    }

    .aero-header-cart {
        width: 48px;
        height: 48px;
        min-height: 48px;
    }

    .aero-benefits,
    .aero-collection-strip,
    .aero-chip-grid,
    .aero-size-grid,
    .aero-category-grid,
    .aero-product-grid,
    .woocommerce ul.products,
    .aero-service-grid,
    .aero-offer-grid,
    .aero-review-card-grid,
    .aero-feature-icons,
    .aero-footer { grid-template-columns: 1fr; }

    .woocommerce .related.products,
    .woocommerce .upsells.products { width: min(100% - 22px, 1180px); }

    .woocommerce div.product form.cart {
        grid-template-columns: 1fr 1fr;
    }

    .woocommerce div.product form.cart div.quantity { grid-column: 1 / -1; }
    .woocommerce div.product form.cart .single_add_to_cart_button { grid-column: 1; }
    .woocommerce div.product form.cart .aero-buy-now-button { grid-column: 2; }

    .woocommerce div.product form.cart div.quantity,
    .aero-quantity-control,
    .woocommerce div.product form.cart .single_add_to_cart_button,
    .woocommerce div.product form.cart .aero-buy-now-button {
        height: 54px;
        min-height: 54px;
    }

    .woocommerce .related.products ul.products,
    .woocommerce .upsells.products ul.products,
    .woocommerce-page .related.products ul.products,
    .woocommerce-page .upsells.products ul.products {
        grid-template-columns: 1fr !important;
    }

    .aero-mega-list-grid,
    .aero-mega-products,
    .aero-product-mini-services { grid-template-columns: 1fr; }
    .aero-section { padding: 42px 0; }
}
