        :root {

            --ink: #123328;
            --ink-soft: #3d5b50;

            --pine: #1f4d3d;
            --pine-dark: #0f2c22;
            --pine-mid: #2c6650;

            --mint-50: #f4f9f6;
            --mint-100: #e6f1ea;
            --mint-200: #d3e6db;

            --paper: #fbfaf6;
            --white: #ffffff;

            --amber: #e2a73b;
            --amber-dark: #c98a1f;

            --berry: #c23b3b;
            --berry-soft: #fdecea;

            --line: rgba(18, 51, 40, 0.12);

            --shadow-sm: 0 2px 8px rgba(15, 44, 34, 0.06);
            --shadow-md: 0 10px 30px rgba(15, 44, 34, 0.10);
            --shadow-lg: 0 20px 50px rgba(15, 44, 34, 0.16);

            --radius-sm: 10px;
            --radius-md: 16px;
            --radius-lg: 26px;

            --font-display: 'Fraunces', serif;
            --font-body: 'Inter', sans-serif;
            --font-mono: 'Space Mono', monospace;
        }


        /* =========================================================
           RESET
        ========================================================= */

        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            background: var(--paper);
            color: var(--ink);
            font-family: var(--font-body);
            line-height: 1.5;
        }

        button,
        input,
        select {
            font: inherit;
        }

        button {
            border: 0;
        }

        img {
            max-width: 100%;
        }

        a {
            color: inherit;
            text-decoration: none;
        }

        .container {
            width: min(1280px, calc(100% - 48px));
            margin: auto;
        }


        /* =========================================================
           TOP BAR
        ========================================================= */

        .topbar {
            background: var(--pine-dark);
            color: rgba(255, 255, 255, 0.82);
            font-size: 12px;
        }

        .topbar-inner {
            min-height: 38px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 20px;
        }

        .topbar-left,
        .topbar-right {
            display: flex;
            align-items: center;
            gap: 22px;
        }

        .topbar-item {
            display: flex;
            align-items: center;
            gap: 7px;
        }

        .topbar-dot {
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #8cc7aa;
        }


       /* =========================================================
        HEADER
        ========================================================= */

        .site-header {
            position: sticky;
            top: 0;
            z-index: 100;
            background: rgba(251, 250, 246, 0.96);
            backdrop-filter: blur(14px);
            border-bottom: 1px solid var(--line);
        }

        .header-main {
            min-height: 78px;
            display: grid;
            grid-template-columns: 220px minmax(250px, 1fr) auto;
            align-items: center;
            gap: 35px;
        }

        .brand {
            display: flex;
            align-items: center;
            gap: 11px;
        }

        .brand-mark {
            width: 42px;
            height: 42px;
            border-radius: 14px;
            background: var(--pine);
            color: white;
            display: grid;
            place-items: center;
            font-family: var(--font-display);
            font-size: 23px;
            box-shadow: var(--shadow-sm);
        }

        .brand-text {
            display: flex;
            flex-direction: column;
            line-height: 1;
        }

        .brand-name {
            font-family: var(--font-display);
            font-size: 22px;
            font-weight: 700;
            letter-spacing: -0.8px;
        }

        .brand-subtitle {
            margin-top: 5px;
            font-size: 8px;
            color: var(--ink-soft);
            letter-spacing: 1.5px;
            text-transform: uppercase;
        }


        /* =========================================================
        SEARCH
        ========================================================= */

        .site-header .search {
            height: 46px;
            display: flex;
            align-items: center;
            border: 1px solid var(--line);
            background: var(--white);
            border-radius: var(--radius-md);
            overflow: hidden;
            transition: 0.2s ease;
        }

        .site-header .search:focus-within {
            border-color: var(--pine-mid);
            box-shadow: 0 0 0 4px var(--mint-100);
        }

        .search-icon {
            width: 50px;
            text-align: center;
            color: var(--ink-soft);
            font-size: 17px;
        }

        .site-header .search input {
            border: 0;
            outline: 0;
            background: transparent;
            width: 100%;
            color: var(--ink);
            font-size: 13px;
        }

        .site-header .search button {
            height: 100%;
            min-width: 105px;
            border: 0;
            background: var(--pine);
            color: white;
            font-size: 12px;
            font-weight: 700;
        }


        /* =========================================================
        HEADER ACTIONS
        ========================================================= */

        .header-actions {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .header-action {
            min-width: 50px;
            text-align: center;
            color: var(--ink-soft);
            position: relative;
            font-size: 10px;
        }

        .header-action-icon {
            display: block;
            font-size: 19px;
            color: var(--ink);
            line-height: 1;
            margin-bottom: 5px;
        }

        .cart-badge {
            position: absolute;
            top: -5px;
            right: 4px;
            min-width: 17px;
            height: 17px;
            padding: 0 4px;
            border-radius: 50px;
            background: var(--amber);
            color: var(--pine-dark);
            display: grid;
            place-items: center;
            font-size: 9px;
            font-weight: 800;
        }


        /* =========================================================
        NAVIGATION
        ========================================================= */

        .category-nav{
            background:var(--pine);
            color:white;
        }

        .category-nav ul{   
            display:flex;
            align-items:center;
            overflow:auto;
            scrollbar-width:none;
        }

        .category-nav li{list-style:none}

        .category-nav a{
            display:block;
            white-space:nowrap;
            padding:14px 18px;
            color:rgba(255,255,255,.82);
            font-size:13px;
            font-weight:600;
            border-bottom:2px solid transparent;
        }

        .category-nav a:hover,
        .category-nav a.active{
            color:white;
            border-bottom-color:var(--amber);
            background:rgba(255,255,255,.05);
        }
  

        /* =========================================================
           HERO
        ========================================================= */

        .shop-hero{
            background:
                radial-gradient(circle at 85% 30%,rgba(226,167,59,.13),transparent 24%),
                linear-gradient(135deg,var(--mint-100),var(--mint-50));
            border-bottom:1px solid var(--line);
            padding:50px 0;
        }

        .breadcrumb{
            display:flex;
            gap:8px;
            font-size:12px;
            color:var(--ink-soft);
            margin-bottom:16px;
        }

        .breadcrumb span:last-child{
            color:var(--pine);
            font-weight:700;
        }

        .shop-title-row{
            display:flex;
            justify-content:space-between;
            align-items:end;
            gap:25px;
        }

        .shop-title h1{
            font-family:"Fraunces",serif;
            color:var(--pine-dark);
            font-size:clamp(30px,3vw,35px);
            line-height:1;
        }

        .shop-title p{
            margin-top:10px;
            color:var(--ink-soft);
            max-width:620px;
            line-height:1.6;
            font-size:14px;
        }

        .shop-stat{
            background:white;
            border:1px solid var(--line);
            padding:16px 22px;
            border-radius:14px;
            min-width:155px;
        }

        .shop-stat strong{
            display:block;
            font-size:22px;
            color:var(--pine-dark);
        }

        .shop-stat span{
            color:var(--ink-soft);
            font-size:12px;
        }


        /* =========================================================
           CATEGORY SECTION
        ========================================================= */

        .categories-section {
            padding: 70px 0;
        }

        .section-heading {
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 30px;
            margin-bottom: 26px;
        }

        .eyebrow {
            display: inline-block;
            margin-bottom: 9px;
            color: var(--pine-mid);
            font-family: var(--font-mono);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.12em;
        }

        .section-heading h2 {
            font-family: var(--font-display);
            font-size: clamp(32px, 4vw, 48px);
            line-height: 1;
        }

        .section-heading p {
            margin-top: 11px;
            color: var(--ink-soft);
            font-size: 14px;
        }

        .category-navigation {
            display: flex;
            gap: 10px;
        }

        .category-arrow {
            width: 46px;
            height: 46px;
            display: grid;
            place-items: center;
            border: 1px solid var(--line);
            border-radius: 50%;
            background: var(--white);
            color: var(--pine);
            cursor: pointer;
            font-size: 20px;
            box-shadow: var(--shadow-sm);
            transition: 0.25s ease;
        }

        .category-arrow:hover {
            background: var(--pine);
            color: white;
            transform: translateY(-2px);
        }

        .category-slider-wrapper {
            overflow: hidden;
            padding: 5px 2px 15px;
        }

        .category-slider {
            display: flex;
            gap: 18px;
            overflow-x: auto;
            overflow-y: hidden;
            scrollbar-width: none;
            scroll-behavior: smooth;
            scroll-snap-type: x proximity;
            cursor: grab;
            user-select: none;
        }

        .category-slider::-webkit-scrollbar {
            display: none;
        }

        .category-slider.dragging {
            cursor: grabbing;
            scroll-behavior: auto;
        }

        .category-card {
            flex: 0 0 220px;
            overflow: hidden;
            border: 1px solid var(--line);
            border-radius: var(--radius-md);
            background: var(--white);
            scroll-snap-align: start;
            box-shadow: var(--shadow-sm);
            transition: 0.3s ease;
        }

        .category-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-md);
        }

        .category-image {
            height: 155px;
            overflow: hidden;
            background: var(--mint-100);
        }

        .category-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }

        .category-card:hover .category-image img {
            transform: scale(1.07);
        }

        .category-card-content {
            padding: 17px;
        }

        .category-card h3 {
            margin-bottom: 5px;
            font-size: 17px;
        }

        .category-card span {
            color: var(--ink-soft);
            font-size: 13px;
        }


        /* =========================================================
           SHOP LAYOUT
        ========================================================= */

        .shop-section {
            padding-bottom: 80px;
        }

        .shop-layout {
            display: grid;
            grid-template-columns: 260px minmax(0, 1fr);
            gap: 34px;
        }


        /* =========================================================
           FILTER SIDEBAR
        ========================================================= */



        /* =========================================================
        FILTER SIDEBAR
        ========================================================= */

        .filters {
            position: sticky;
            top: 145px;
            background: var(--white);
            border: 1px solid var(--line);
            border-radius: var(--radius-lg);
            overflow: hidden;
            box-shadow: var(--shadow-sm);
        }

        .filter-header {
            padding: 21px 20px;
            border-bottom: 1px solid var(--line);
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        .filter-header h2 {
            font-family: var(--font-display);
            font-size: 20px;
        }

        .clear-filters {
            border: 0;
            background: none;
            color: var(--berry);
            font-size: 11px;
            font-weight: 700;
        }

        .filter-block {
            border-bottom: 1px solid var(--line);
        }

        .filter-block:last-child {
            border-bottom: 0;
        }

        .filter-toggle {
            width: 100%;
            min-height: 56px;
            padding: 0 20px;
            border: 0;
            background: var(--white);
            color: var(--ink);
            display: flex;
            align-items: center;
            justify-content: space-between;
            font-size: 13px;
            font-weight: 700;
        }

        .filter-chevron {
            color: var(--pine-mid);
            transition: transform .25s;
        }

        .filter-block.open .filter-chevron {
            transform: rotate(180deg);
        }

        .filter-content {
            display: none;
            padding: 0 20px 19px;
        }

        .filter-block.open .filter-content {
            display: block;
        }

        .filter-search {
            position: relative;
            margin-bottom: 12px;
        }

        .filter-search input {
            width: 100%;
            height: 38px;
            border-radius: var(--radius-sm);
            border: 1px solid var(--line);
            padding: 0 12px;
            outline: none;
            color: var(--ink);
            background: var(--mint-50);
            font-size: 11px;
        }

        .filter-option {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 9px;
            padding: 7px 0;
            color: var(--ink-soft);
            font-size: 11px;
        }

        .filter-option-left {
            display: flex;
            align-items: center;
            gap: 9px;
            min-width: 0;
            cursor: pointer;
        }

        .filter-option input {
            width: 15px;
            height: 15px;
            accent-color: var(--pine);
            flex: 0 0 auto;
        }

        .filter-count {
            padding: 2px 6px;
            border-radius: 50px;
            background: var(--mint-50);
            color: var(--ink-soft);
            font-family: var(--font-mono);
            font-size: 8px;
        }

        .price-inputs {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 9px;
        }

        .price-field label {
            display: block;
            color: var(--ink-soft);
            font-size: 9px;
            margin-bottom: 5px;
        }

        .price-field input {
            width: 100%;
            height: 38px;
            padding: 0 10px;
            border: 1px solid var(--line);
            border-radius: var(--radius-sm);
            outline: none;
            color: var(--ink);
            background: var(--mint-50);
            font-size: 11px;
        }

        .apply-price {
            width: 100%;
            height: 38px;
            margin-top: 10px;
            border: 0;
            border-radius: var(--radius-sm);
            background: var(--mint-100);
            color: var(--pine);
            font-size: 11px;
            font-weight: 800;
        }

        .show-more {
            border: 0;
            background: none;
            color: var(--pine);
            margin-top: 8px;
            font-size: 10px;
            font-weight: 700;
        }


        /* =========================================================
           PRODUCTS TOOLBAR
        ========================================================= */

       


        /* =========================================================
        PRODUCTS AREA
        ========================================================= */

        .products-area {
            min-width: 0;
        }

        .products-header {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: space-between;
            gap: 18px;
            margin-bottom: 25px;
        }

        .products-title h2 {
            font-family: var(--font-display);
            font-size: 31px;
            letter-spacing: -1px;
        }

        .products-title p {
            margin-top: 3px;
            color: var(--ink-soft);
            font-size: 11px;
        }

        .products-controls {
            display: flex;
            align-items: center;
            gap: 9px;
        }

        .control-select {
            height: 43px;
            padding: 0 35px 0 13px;
            border: 1px solid var(--line);
            border-radius: var(--radius-sm);
            outline: none;
            background: var(--white);
            color: var(--ink-soft);
            font-size: 11px;
        }

        .view-toggle {
            height: 43px;
            display: flex;
            border: 1px solid var(--line);
            border-radius: var(--radius-sm);
            overflow: hidden;
            background: var(--white);
        }

        .view-button {
            width: 43px;
            border: 0;
            background: transparent;
            color: var(--ink-soft);
        }

        .view-button.active {
            background: var(--mint-100);
            color: var(--pine);
        }

        .mobile-filter {
            display: none;
            height: 43px;
            padding: 0 15px;
            border: 0;
            border-radius: var(--radius-sm);
            background: var(--pine);
            color: white;
            font-size: 11px;
            font-weight: 700;
        }


        /* =========================================================
        ACTIVE FILTER CHIPS
        ========================================================= */

        .active-filters {
            display: none;
            flex-wrap: wrap;
            gap: 8px;
            margin-bottom: 18px;
        }

        .active-filters.visible {
            display: flex;
        }

        .filter-chip {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            min-height: 32px;
            padding: 0 10px 0 12px;
            border-radius: 50px;
            background: var(--mint-100);
            color: var(--pine);
            font-size: 10px;
            font-weight: 700;
        }

        .filter-chip button {
            border: 0;
            background: none;
            color: var(--pine);
            font-size: 14px;
        }


        /* =========================================================
           PRODUCTS GRID
        ========================================================= */

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


        /* =========================================================
           PRODUCT CARD
        ========================================================= */

        .product-card {
            position: relative;
            overflow: hidden;
            display: flex;
            flex-direction: column;
            border: 1px solid var(--line);
            border-radius: var(--radius-md);
            background: var(--white);
            box-shadow: var(--shadow-sm);
            transition: 0.3s ease;
        }

        .product-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-md);
        }

        .product-image {
            position: relative;
            height: 210px;
            overflow: hidden;
            background: var(--mint-50);
        }

        .product-image img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transition: transform 0.5s ease;
        }

        .product-card:hover .product-image img {
            transform: scale(1.05);
        }

        .discount-badge {
            position: absolute;
            top: 14px;
            left: 14px;
            padding: 7px 11px;
            border-radius: 100px;
            background: var(--berry);
            color: white;
            font-size: 11px;
            font-weight: 700;
        }

        .wishlist-button {
            position: absolute;
            top: 14px;
            right: 14px;
            width: 42px;
            height: 42px;
            display: grid;
            place-items: center;
            border-radius: 50%;
            background: rgba(255,255,255,0.92);
            color: var(--ink-soft);
            cursor: pointer;
            box-shadow: var(--shadow-sm);
            transition: 0.2s ease;
        }

        .wishlist-button.active {
            color: var(--berry);
        }

        .product-info {
            flex: 1;
            padding: 19px 20px 12px;
        }

        .product-brand {
            margin-bottom: 7px;
            color: var(--pine-mid);
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.1em;
        }

        .product-title {
            min-height: 32px;
            /* margin-bottom: 9px; */
            color: var(--ink);
            font-size: 15px;
            line-height: 1.7;
            font-weight: 700;
        }

        .rating-row {
            display: flex;
            align-items: center;
            gap: 7px;
            margin-bottom: 12px;
        }

        .stars {
            color: var(--amber);
            font-size: 13px;
            letter-spacing: 1px;
        }

        .rating-text {
            color: var(--ink-soft);
            font-size: 12px;
        }

        .product-meta {
            display: flex;
            flex-wrap: wrap;
            gap: 7px;
            margin-bottom: 13px;
        }

        .meta-pill {
            padding: 5px 8px;
            border-radius: 7px;
            background: var(--mint-50);
            color: var(--ink-soft);
            font-size: 11px;
        }

        .stock-status {
            display: flex;
            align-items: center;
            gap: 6px;
            margin-bottom: 5px;
            color: var(--pine-mid);
            font-size: 12px;
            font-weight: 600;
        }

        .stock-dot {
            width: 7px;
            height: 7px;
            border-radius: 50%;
            background: #5caa7c;
        }

        .price-row {
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .current-price {
            color: var(--ink);
            font-size: 17px;
            font-weight: 800;
        }

        .old-price {
            color: #8b9c95;
            font-size: 13px;
            text-decoration: line-through;
        }


        /* PRODUCT ACTIONS */

        .product-actions {
            padding: 10px 20px 20px;
        }

        .quantity-control {
            display: flex;
            align-items: center;
            justify-content: space-between;
            height: 40px;
            margin-bottom: 10px;
            padding: 4px;
            border: 1px solid var(--line);
            border-radius: 10px;
            background: var(--mint-50);
        }

        .quantity-button {
            width: 30px;
            height: 30px;
            display: grid;
            place-items: center;
            border-radius: 7px;
            background: var(--white);
            color: var(--pine);
            cursor: pointer;
            box-shadow: var(--shadow-sm);
        }

        .quantity-value {
            min-width: 30px;
            text-align: center;
            font-size: 14px;
            font-weight: 700;
        }

        .add-cart-button {
            width: 100%;
            /* height: 48px; */
            padding: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 8px;
            border: 1.5px solid var(--pine);
            border-radius: 10px;
            background: transparent;
            color: var(--pine);
            font-weight: 700;
            cursor: pointer;
            transition: 0.25s ease;
            font-size: 13px;
        }

        .add-cart-button svg {
            width: 15px;
            height: 15px;
            fill: none;
            stroke: currentColor;
            stroke-width: 1.8;
        }

        .add-cart-button:hover {
            background: var(--pine);
            color: white;
        }


        /* =========================================================
           LIST VIEW
        ========================================================= */

        .products-grid.list-view {
            display: flex;
            flex-direction: column;
            gap: 16px;
        }

        .products-grid.list-view .product-card {
            display: grid;
            grid-template-columns: 240px minmax(280px, 1fr) 260px;
            align-items: stretch;
        }

        .products-grid.list-view .product-image {
            height: 100%;
            min-height: 250px;
        }

        .products-grid.list-view .product-info {
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: 26px;
        }

        .products-grid.list-view .product-title {
            min-height: auto;
            font-size: 20px;
        }

        .products-grid.list-view .product-actions {
            display: flex;
            flex-direction: column;
            justify-content: center;
            padding: 25px;
            border-left: 1px solid var(--line);
        }


        /* =========================================================
           EMPTY MESSAGE
        ========================================================= */

        .empty-message {
            grid-column: 1 / -1;
            display: none;
            padding: 70px 20px;
            text-align: center;
            border: 1px dashed var(--line);
            border-radius: var(--radius-md);
            color: var(--ink-soft);
        }

        .empty-message.show {
            display: block;
        }


        /* =========================================================
           Load More Button
        ========================================================= */

        .load-more {
            display: flex;
            justify-content: center;
            margin-top: 50px;
        }
        .add-more-btn {
            padding: 12px 50px;
            border-radius: 10px;
            background-color: var(--pine);
            color: var(--white);
            font-size: 13px;
            font-weight: 700;
            cursor: pointer;
            transition: 0.25s ease;
        }

        .add-more-btn:hover {
            background-color: var(--pine-dark);
        }


        /* =========================================================
           FOOTER
        ========================================================= */

        .site-footer {
            margin-top: 80px;
            padding: 60px 0 25px;
            background: var(--pine-dark);
            color: white;
        }

        .footer-grid {
            display: grid;
            grid-template-columns: 1.5fr repeat(3, 1fr);
            gap: 50px;
        }

        .footer-brand p {
            max-width: 330px;
            margin-top: 18px;
            color: rgba(255,255,255,0.65);
            font-size: 13px;
        }

        .footer-column h4 {
            margin-bottom: 17px;
            font-size: 13px;
        }

        .footer-column a {
            display: block;
            margin-bottom: 11px;
            color: rgba(255,255,255,0.62);
            font-size: 13px;
        }

        .footer-bottom {
            margin-top: 50px;
            padding-top: 20px;
            border-top: 1px solid rgba(255,255,255,0.12);
            color: rgba(255,255,255,0.45);
            font-size: 12px;
        }


        /* =========================================================
           RESPONSIVE
        ========================================================= */

        @media (max-width: 1200px) {

            .products-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }

            .shop-layout {
                grid-template-columns: 230px minmax(0, 1fr);
            }

            .products-grid.list-view .product-card {
                grid-template-columns: 210px minmax(250px, 1fr) 230px;
            }
        }

        @media (max-width: 1000px) {

            .header-main {
                grid-template-columns: auto 1fr auto;
                gap: 20px;
            }

            .shop-layout {
                grid-template-columns: 1fr;
            }

            .filter-sidebar {
                display: none;
            }

            .hero-box {
                grid-template-columns: 1fr;
            }

            .hero-image {
                min-height: 300px;
            }

            .footer-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 800px) {

            .products-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
            }

            .products-toolbar {
                align-items: flex-start;
                flex-direction: column;
            }

            .products-toolbar-right {
                width: 100%;
            }

            .sort-control {
                flex: 1;
            }

            .sort-control select {
                width: 100%;
            }

            .products-grid.list-view .product-card {
                grid-template-columns: 180px 1fr;
            }

            .products-grid.list-view .product-actions {
                grid-column: 1 / -1;
                border-left: 0;
                padding-top: 0;
            }

            .nav-links {
                overflow-x: auto;
                max-width: 100%;
                padding-bottom: 2px;
            }

            .delivery-info {
                display: none;
            }
        }

        @media (max-width: 620px) {

            .container {
                width: min(100% - 28px, 1440px);
            }

            .topbar {
                display: none;
            }

            .header-main {
                grid-template-columns: 1fr auto;
                padding: 14px 0;
            }

            .header-search {
                grid-column: 1 / -1;
                grid-row: 2;
            }

            .main-nav {
                display: none;
            }

            .logo-text {
                font-size: 21px;
            }

            .header-icon:first-child {
                display: none;
            }

            .hero {
                padding: 25px 0;
            }

            .hero-content {
                padding: 38px 25px;
            }

            .hero h1 {
                font-size: 43px;
            }

            .hero-image {
                min-height: 240px;
            }

            .section-heading {
                align-items: flex-start;
                flex-direction: column;
            }

            .category-navigation {
                align-self: flex-end;
            }

            .category-card {
                flex-basis: 185px;
            }

            .category-image {
                height: 130px;
            }

            .products-grid {
                grid-template-columns: 1fr;
            }

            .products-toolbar-right {
                flex-direction: column;
                align-items: stretch;
            }

            .view-switcher {
                width: 100%;
            }

            .view-button {
                flex: 1;
            }

            .products-grid.list-view .product-card {
                display: block;
            }

            .products-grid.list-view .product-image {
                height: 240px;
                min-height: 0;
            }

            .products-grid.list-view .product-actions {
                padding: 10px 20px 20px;
            }

            .promo-strip {
                align-items: flex-start;
                flex-direction: column;
                padding: 28px;
            }

            .footer-grid {
                grid-template-columns: 1fr;
                gap: 30px;
            }
        }



        /* =========================================================
           FINAL RESPONSIVE OVERRIDES + MOBILE OFF-CANVAS MENU
        ========================================================= */

        .mobile-menu-toggle {
            display: none;
            width: 48px;
            height: 48px;
            padding: 0;
            align-items: center;
            justify-content: center;
            flex-direction: column;
            gap: 5px;
            border-radius: 12px;
            background: var(--pine);
            cursor: pointer;
            box-shadow: var(--shadow-sm);
        }

        .mobile-menu-toggle span {
            display: block;
            width: 21px;
            height: 2px;
            border-radius: 20px;
            background: var(--white);
            transition: transform .25s ease, opacity .25s ease;
        }

        .mobile-menu-toggle.active span:nth-child(1) {
            transform: translateY(7px) rotate(45deg);
        }

        .mobile-menu-toggle.active span:nth-child(2) {
            opacity: 0;
        }

        .mobile-menu-toggle.active span:nth-child(3) {
            transform: translateY(-7px) rotate(-45deg);
        }

        .mobile-menu-overlay {
            position: fixed;
            inset: 0;
            z-index: 999;
            background: rgba(15, 44, 34, .58);
            opacity: 0;
            visibility: hidden;
            transition: opacity .3s ease, visibility .3s ease;
            backdrop-filter: blur(2px);
        }

        .mobile-menu-overlay.active {
            opacity: 1;
            visibility: visible;
        }

        .mobile-menu-drawer {
            position: fixed;
            top: 0;
            left: 0;
            z-index: 1000;
            width: min(88vw, 390px);
            height: 100dvh;
            display: flex;
            flex-direction: column;
            overflow: hidden;
            background: var(--paper);
            box-shadow: 18px 0 50px rgba(15, 44, 34, .20);
            transform: translateX(-105%);
            transition: transform .35s cubic-bezier(.22,.8,.2,1);
        }

        .mobile-menu-drawer.active {
            transform: translateX(0);
        }

        .mobile-menu-top {
            min-height: 88px;
            padding: 18px 20px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 14px;
            border-bottom: 1px solid var(--line);
            background: var(--white);
        }

        .mobile-brand .brand-mark {
            width: 43px;
            height: 43px;
        }

        .mobile-menu-close {
            width: 42px;
            height: 42px;
            display: grid;
            place-items: center;
            flex: 0 0 auto;
            border-radius: 50%;
            background: var(--mint-100);
            color: var(--pine-dark);
            font-size: 30px;
            line-height: 1;
            cursor: pointer;
            transition: .2s ease;
        }

        .mobile-menu-close:hover {
            background: var(--pine);
            color: var(--white);
        }

        .mobile-menu-content {
            flex: 1;
            overflow-y: auto;
            overscroll-behavior: contain;
            -webkit-overflow-scrolling: touch;
            padding-bottom: calc(20px + env(safe-area-inset-bottom));
        }

        .mobile-menu-section {
            border-bottom: 1px solid var(--line);
        }

        .mobile-menu-link {
            width: 100%;
            min-height: 62px;
            padding: 0 22px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 16px;
            background: transparent;
            color: var(--ink);
            font-size: 16px;
            font-weight: 700;
            letter-spacing: .01em;
            text-align: left;
            cursor: pointer;
            transition: background .2s ease, color .2s ease;
        }

        .mobile-menu-link:hover {
            background: var(--mint-50);
        }

        .mobile-menu-link.active {
            color: var(--pine);
            background: var(--mint-100);
            box-shadow: inset 4px 0 0 var(--amber);
        }

        .mobile-menu-chevron {
            color: var(--pine-mid);
            font-size: 20px;
            transition: transform .25s ease;
        }

        .mobile-menu-section.open .mobile-menu-chevron {
            transform: rotate(180deg);
        }

        .mobile-submenu {
            display: grid;
            grid-template-rows: 0fr;
            overflow: hidden;
            background: var(--mint-50);
            transition: grid-template-rows .3s ease;
        }

        .mobile-submenu > * {
            min-height: 0;
        }

        .mobile-menu-section.open .mobile-submenu {
            grid-template-rows: 1fr;
        }

        .mobile-submenu a {
            display: block;
            padding: 11px 25px 11px 42px;
            color: var(--ink-soft);
            font-size: 13px;
            font-weight: 500;
            transition: color .2s ease, background .2s ease;
        }

        .mobile-submenu a:hover {
            color: var(--pine);
            background: rgba(31, 77, 61, .05);
        }

        .hot-deals-link {
            color: var(--berry);
        }

        .mobile-menu-account {
            margin-top: 18px;
            padding: 0 20px 10px;
        }

        .mobile-menu-account a {
            min-height: 48px;
            margin-bottom: 8px;
            padding: 0 16px;
            display: flex;
            align-items: center;
            border: 1px solid var(--line);
            border-radius: var(--radius-sm);
            background: var(--white);
            color: var(--ink);
            font-size: 13px;
            font-weight: 700;
        }

        body.menu-open {
            overflow: hidden;
        }

        @media (max-width: 1000px) {
            .shop-layout {
                grid-template-columns: 1fr;
            }

            .filters {
                display: none;
            }

            .mobile-filter {
                display: inline-flex;
                align-items: center;
                justify-content: center;
            }

            .products-grid {
                grid-template-columns: repeat(3, minmax(0, 1fr));
            }
        }

        @media (max-width: 800px) {
            .topbar {
                display: none;
            }

            .header-main {
                min-height: auto;
                grid-template-columns: minmax(0, 1fr) auto;
                gap: 12px;
                padding: 12px 0;
            }

            .mobile-menu-toggle {
                display: flex;
                order: 3;
            }

            .brand {
                min-width: 0;
            }

            .brand-mark {
                width: 40px;
                height: 40px;
                border-radius: 12px;
                font-size: 21px;
            }

            .brand-name {
                font-size: 21px;
            }

            .site-header .search {
                grid-column: 1 / -1;
                grid-row: 2;
                width: 100%;
                height: 46px;
            }

            .site-header .search button {
                min-width: 82px;
            }

            .header-actions,
            .category-nav {
                display: none;
            }

            .shop-hero {
                padding: 32px 0;
            }

            .shop-title-row {
                align-items: flex-start;
                flex-direction: column;
            }

            .shop-title h1 {
                font-size: clamp(30px, 6vw, 42px);
                line-height: 1.2;
            }

            .shop-stat {
                width: 100%;
            }

            .categories-section {
                padding: 42px 0;
            }

            .category-slider-wrapper {
                margin-right: -14px;
            }

            .category-slider {
                gap: 14px;
                padding-right: 14px;
            }

            .category-card {
                flex-basis: min(72vw, 250px);
            }

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

            .product-image {
                height: 175px;
            }

            .product-info {
                padding: 14px 14px 10px;
            }

            .product-title {
                min-height: 0px;
                font-size: 13px;
            }

            .product-actions {
                padding: 8px 14px 14px;
            }

            .products-header {
                align-items: stretch;
                flex-direction: column;
            }

            .products-controls {
                width: 100%;
                display: grid;
                grid-template-columns: auto minmax(0, 1fr) auto;
            }

            .control-select {
                width: 100%;
                min-width: 0;
            }

            .products-grid.list-view {
                grid-template-columns: 1fr;
            }

            .products-grid.list-view .product-card {
                display: block;
            }
        }

        @media (max-width: 560px) {
            .container {
                width: min(100% - 28px, 1440px);
            }

            .brand-subtitle {
                display: none;
            }

            .search-icon {
                width: 42px;
            }

            .site-header .search input {
                font-size: 12px;
            }

            .site-header .search button {
                min-width: 70px;
                font-size: 11px;
            }

            .products-grid {
                gap: 10px;
            }

            .product-image {
                height: 145px;
            }

            .product-info {
                padding: 12px;
            }

            .product-brand {
                font-size: 9px;
            }

            .product-title {
                font-size: 12px;
                line-height: 1.4;
                margin-bottom: 9px;
            }

            .rating-row {
                margin-bottom: 8px;
            }

            .stars {
                font-size: 10px;
            }

            .rating-text {
                font-size: 10px;
            }

            .product-meta {
                gap: 4px;
                margin-bottom: 9px;
            }

            .meta-pill {
                padding: 4px 6px;
                font-size: 9px;
            }

            .category-card {
                flex-basis: 72vw;
            }

            .products-controls {
                grid-template-columns: 1fr auto;
            }

            .mobile-filter {
                grid-column: 1 / -1;
                order: -1;
                width: 100%;
            }
        }

        @media (max-width: 390px) {
            .products-grid {
                grid-template-columns: 1fr;
            }

            .product-image {
                height: 220px;
            }
        }

    

        /* =========================================================
           MULTI-LEVEL DESKTOP DROPDOWN MENU
        ========================================================= */
        .category-nav { position: relative; z-index: 1200; }
        .desktop-menu { overflow: visible !important; position: relative; }
        .desktop-menu > li { position: relative; }
        .desktop-menu-toggle,
        .desktop-submenu-toggle {
            width: 100%; border: 0; background: transparent; color: inherit; font: inherit;
            cursor: pointer; text-align: left;
        }
        .desktop-menu-toggle {
            min-height: 48px; padding: 0 18px; display: inline-flex; align-items: center; gap: 7px;
            color: rgba(255,255,255,.82); font-size: 13px; font-weight: 600; white-space: nowrap;
        }
        .desktop-menu-toggle:hover,
        .desktop-menu > li.menu-open > .desktop-menu-toggle { color: var(--white); background: rgba(255,255,255,.06); }
        .desktop-menu-chevron { font-size: 14px; transition: transform .2s ease; }
        .desktop-menu > li.menu-open > .desktop-menu-toggle .desktop-menu-chevron { transform: rotate(180deg); }
        .desktop-dropdown {
            position: absolute; top: calc(100% + 7px); left: 0; z-index: 1300;
            min-width: 240px; margin: 0; padding: 8px; list-style: none;
            background: var(--white); border: 1px solid var(--line); border-radius: 14px;
            box-shadow: var(--shadow-lg); opacity: 0; visibility: hidden; transform: translateY(8px);
            pointer-events: none; transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
        }
        .has-dropdown.menu-open > .desktop-dropdown { opacity: 1; visibility: visible; transform: translateY(0); pointer-events: auto; }
        .desktop-dropdown li { position: relative; }
        .desktop-dropdown a,
        .desktop-submenu-toggle {
            min-height: 42px; padding: 10px 12px; display: flex; align-items: center; justify-content: space-between;
            gap: 12px; border-radius: 9px; color: var(--ink); font-size: 13px; font-weight: 650; white-space: nowrap;
        }
        .desktop-dropdown a { border-bottom: 0; }
        .desktop-dropdown a:hover,
        .desktop-submenu-toggle:hover,
        .desktop-dropdown li.menu-open > .desktop-submenu-toggle { color: var(--pine); background: var(--mint-50); }
        .desktop-dropdown .desktop-dropdown { top: -8px; left: calc(100% + 7px); transform: translateX(8px); }
        .desktop-dropdown .has-dropdown.menu-open > .desktop-dropdown { transform: translateX(0); }
        .desktop-dropdown .level-4 { min-width: 180px; }

        /* Mobile menu: nested levels can expand independently up to 4+ levels. */
        .mobile-menu-drawer { touch-action: pan-y; }
        .mobile-menu-content { min-height: 0; }
        .mobile-menu-section .mobile-submenu { max-height: 0; display: block; overflow: hidden; background: var(--mint-50); transition: max-height .32s ease; }
        .mobile-menu-section.open > .mobile-submenu { max-height: 1400px; }
        .mobile-menu-section.level-2 > .mobile-menu-link { padding-left: 42px; font-size: 14px; }
        .mobile-menu-section.level-3 > .mobile-menu-link { padding-left: 60px; font-size: 13px; }
        .mobile-menu-section.level-4 > .mobile-menu-link { padding-left: 78px; font-size: 12px; }
        .mobile-menu-link.level-2 { padding-left: 42px; font-size: 14px; }
        .mobile-menu-link.level-3 { padding-left: 60px; font-size: 13px; }
        .mobile-menu-link.level-4 { padding-left: 78px; font-size: 12px; }
        .mobile-menu-link.level-5 { padding-left: 96px; font-size: 12px; }
        .mobile-menu-section.level-2 > .mobile-submenu { background: rgba(31,77,61,.035); }
        .mobile-menu-section.level-3 > .mobile-submenu { background: rgba(31,77,61,.06); }
        .mobile-menu-section.level-4 > .mobile-submenu { background: rgba(31,77,61,.08); }
        .mobile-menu-section.open > .mobile-menu-link .mobile-menu-chevron { transform: rotate(180deg); }
        .mobile-menu-drawer.active { pointer-events: auto; }
        html.menu-open, body.menu-open { overflow: hidden; height: 100%; overscroll-behavior: none; }
        @media (max-width: 800px) {
            .mobile-menu-drawer { width: min(92vw, 410px); max-width: calc(100vw - 18px); }
            .mobile-menu-top { min-height: 76px; padding: 14px 16px; position: sticky; top: 0; z-index: 2; }
            .mobile-menu-content { padding-bottom: 30px; }
        }
        @media (max-width: 560px) {
            .header-main { grid-template-columns: minmax(0, 1fr) auto; }
            .mobile-menu-toggle { width: 44px; height: 44px; }
            .site-header .search { min-width: 0; }
            .site-header .search input { min-width: 0; }
        }


/* ======================================================================
   WooCommerce bridge — keeps the supplied design authoritative.
   OceanWP/WooCommerce selectors are neutralised inside our shell.
   ====================================================================== */
.owpp-site .woocommerce ul.products::before,.owpp-site .woocommerce ul.products::after{display:none!important}
.owpp-site .pharma-archive .products-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.owpp-site .pharma-archive .products-grid>.product-card{width:auto!important;max-width:none!important;margin:0!important;float:none!important;clear:none!important}
.owpp-site .pharma-archive .product-card-inner{height:100%;display:flex;flex-direction:column}
.owpp-site .pharma-archive .product-image a{display:block;height:100%}
.owpp-site .pharma-archive .product-image img{height:100%!important;width:100%!important;object-fit:cover!important}
.owpp-site .pharma-archive .product-title a{color:inherit}
.owpp-site .pharma-archive .price-row .price{margin:0!important}
.owpp-site .pharma-archive .price-row .price ins{text-decoration:none}
.owpp-site .pharma-archive .price-row .woocommerce-Price-amount{font-size:17px;font-weight:800;color:var(--ink)}
.owpp-site .pharma-archive .price-row del .woocommerce-Price-amount{font-size:13px;color:#8b9c95;font-weight:400}
.owpp-site .pharma-archive .add-cart-wrap .button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px}
.owpp-site .pharma-archive .add-cart-wrap .added_to_cart{display:none}
.owpp-site .pharma-archive .quantity-value{border:0;background:transparent;text-align:center;width:40px}
.owpp-site .pharma-archive .filter-submit{width:calc(100% - 40px);margin:15px 20px 20px;padding:12px;border-radius:10px;background:var(--pine);color:#fff;font-weight:700;cursor:pointer}
.owpp-site .pharma-archive .filter-toggle-row{padding:14px 20px!important}
.owpp-site .pharma-archive .category-placeholder{display:grid;place-items:center;width:100%;height:100%;font:700 60px var(--font-display);color:var(--pine);background:var(--mint-100)}
.owpp-site .pharma-archive .archive-description{margin-top:10px;color:var(--ink-soft);max-width:700px;font-size:14px;line-height:1.7}
.owpp-site .pharma-archive .archive-description p:last-child{margin-bottom:0}
.owpp-site .pharma-archive .empty-message{grid-column:1/-1;padding:70px 20px;text-align:center;border:1px dashed var(--line);border-radius:var(--radius-md);color:var(--ink-soft)}
.owpp-site .pharma-archive .empty-message h3{font-family:var(--font-display);font-size:28px;color:var(--ink)}
.owpp-site .pharma-archive .empty-message p{margin:8px 0 20px}
.owpp-site .pharma-archive .products-grid.list-view{display:flex!important;flex-direction:column;gap:16px}
.owpp-site .pharma-archive .products-grid.list-view .product-card{display:grid!important;grid-template-columns:240px minmax(280px,1fr) 260px}
.owpp-site .pharma-archive .products-grid.list-view .product-image{height:100%;min-height:250px}
.owpp-site .pharma-archive .products-grid.list-view .product-info{display:flex;flex-direction:column;justify-content:center;padding:26px}
.owpp-site .pharma-archive .products-grid.list-view .product-title{min-height:auto;font-size:20px}
.owpp-site .pharma-archive .products-grid.list-view .product-actions{display:flex;flex-direction:column;justify-content:center;padding:25px;border-left:1px solid var(--line)}
.owpp-site .pharma-archive .filter-chip{border:0;cursor:pointer}
.owpp-site .pharma-archive .loading{opacity:.55;pointer-events:none;transition:opacity .18s ease}
.owpp-site .wishlist-badge{position:absolute;top:-5px;right:2px;min-width:17px;height:17px;padding:0 4px;border-radius:50px;background:var(--amber);color:var(--pine-dark);display:grid;place-items:center;font-size:9px;font-weight:800}
.owpp-site .wishlist-button.is-wished,.owpp-site .header-action.is-wished{color:var(--berry)}
.owpp-site .ajax-add-to-cart.is-loading{opacity:.65;cursor:wait}
.owpp-site .owpp-toast{position:fixed;right:20px;bottom:20px;z-index:99999;max-width:min(420px,calc(100vw - 40px));padding:13px 16px;border-radius:12px;background:var(--pine-dark);color:#fff;box-shadow:var(--shadow-lg);font:600 13px var(--font-body);opacity:0;transform:translateY(12px);transition:.25s ease;pointer-events:none}
.owpp-site .owpp-toast.show{opacity:1;transform:translateY(0)}
.owpp-site .owpp-wishlist-modal{position:fixed;inset:0;z-index:99998;background:rgba(15,44,34,.56);display:none;align-items:flex-end;justify-content:center}
.owpp-site .owpp-wishlist-modal.active{display:flex}
.owpp-site .owpp-wishlist-sheet{width:min(560px,100%);max-height:80vh;overflow:auto;background:var(--paper);border-radius:24px 24px 0 0;padding:20px;box-shadow:0 -20px 60px rgba(15,44,34,.2)}
.owpp-site .owpp-wishlist-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:15px;border-bottom:1px solid var(--line);margin-bottom:15px}
.owpp-site .owpp-wishlist-head h3{font:700 24px var(--font-display);color:var(--ink)}
.owpp-site .owpp-wishlist-close{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:#fff;font-size:24px;cursor:pointer}
.owpp-site .owpp-wishlist-item{display:grid;grid-template-columns:70px 1fr auto;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.owpp-site .owpp-wishlist-item img{width:70px;height:70px;object-fit:cover;border-radius:10px;background:var(--mint-50)}
.owpp-site .owpp-wishlist-remove{border:0;background:transparent;color:var(--berry);cursor:pointer;font-size:12px;font-weight:700}
.owpp-site .owpp-wishlist-empty{text-align:center;padding:35px 10px;color:var(--ink-soft)}
@media(max-width:1000px){.owpp-site .pharma-archive .products-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.owpp-site .pharma-archive .products-grid.list-view .product-card{display:block!important}}
@media(max-width:800px){.owpp-site .pharma-archive .products-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.owpp-site .pharma-archive .products-grid.list-view{display:grid!important;grid-template-columns:1fr!important}.owpp-site .pharma-archive .products-grid.list-view .product-card{display:block!important}.owpp-site .pharma-archive .products-grid.list-view .product-image{height:240px;min-height:0}.owpp-site .pharma-archive .products-grid.list-view .product-info{padding:14px}.owpp-site .pharma-archive .products-grid.list-view .product-actions{border-left:0;padding:8px 14px 14px}.owpp-site .pharma-archive .product-card{transform:none!important}}
@media(max-width:560px){.owpp-site .pharma-archive .products-grid{gap:10px}.owpp-site .pharma-archive .product-image{height:175px}.owpp-site .pharma-archive .product-info{padding:12px}.owpp-site .pharma-archive .product-title{font-size:12px;line-height:1.4}.owpp-site .pharma-archive .product-actions{padding:8px 12px 12px}.owpp-site .pharma-archive .add-cart-button{font-size:11px;padding:9px}.owpp-site .owpp-wishlist-item{grid-template-columns:55px 1fr auto}.owpp-site .owpp-wishlist-item img{width:55px;height:55px}}

/* Mobile filter drawer used by the AJAX archive. */
.owpp-site .hc-filter-overlay{position:fixed;inset:0;background:rgba(15,44,34,.56);opacity:0;visibility:hidden;z-index:1200;transition:.25s ease}
.owpp-site .hc-filter-overlay.active{opacity:1;visibility:visible}
.owpp-site .hc-mobile-filter-panel{position:fixed;left:0;right:0;bottom:0;z-index:1201;max-height:86dvh;background:var(--paper);border-radius:24px 24px 0 0;box-shadow:0 -18px 50px rgba(15,44,34,.18);transform:translateY(105%);transition:transform .32s cubic-bezier(.22,.8,.2,1);overflow:auto;padding-bottom:max(16px,env(safe-area-inset-bottom))}
.owpp-site .hc-mobile-filter-panel.active{transform:translateY(0)}
.owpp-site .hc-mobile-filter-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px 18px;background:var(--paper);border-bottom:1px solid var(--line)}
.owpp-site .hc-mobile-filter-head strong{font:700 20px var(--font-display);color:var(--ink)}
.owpp-site .hc-mobile-filter-close{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;background:var(--white);font-size:24px;color:var(--ink);cursor:pointer}
.owpp-site .hc-mobile-filter-panel .filters{display:block;padding:12px 18px 22px;width:auto;background:transparent;position:static;box-shadow:none;border:0}
body.owpp-site.hc-filter-open{overflow:hidden}
.owpp-site .mobile-filter{display:none}
@media(max-width:1000px){.owpp-site .pharma-archive .mobile-filter{display:inline-flex;align-items:center;justify-content:center}.owpp-site .pharma-archive .products-controls{width:100%}.owpp-site .pharma-archive .products-header{align-items:stretch;flex-direction:column}}
@media(min-width:1001px){.owpp-site .hc-filter-overlay,.owpp-site .hc-mobile-filter-panel{display:none!important}}

body.admin-bar .site-header{top:32px}
@media(max-width:782px){body.admin-bar .site-header{top:46px}}

/* ======================================================================
   v2.1 UX fixes
   ====================================================================== */
.catalog-logo{display:block;width:auto;max-width:210px;max-height:52px;object-fit:contain}
.mobile-catalog-logo{max-width:180px;max-height:46px}

/* Dynamic WP admin menu + active states */
.desktop-menu > li.current-menu-item > a,
.desktop-menu > li.current-menu-ancestor > a,
.desktop-menu > li.current-menu-parent > a,
.desktop-menu > li.menu-item-has-children.current-menu-ancestor > .desktop-menu-toggle,
.desktop-menu > li.menu-item-has-children.current-menu-parent > .desktop-menu-toggle,
.desktop-menu > li.menu-item-has-children.is-active-parent > .desktop-menu-toggle{
    color:var(--white)!important;
    border-bottom-color:var(--amber)!important;
    background:rgba(255,255,255,.05)!important;
}
.desktop-menu > li.menu-item-has-children{position:relative}
.desktop-menu > li.menu-item-has-children > .sub-menu{
    position:absolute;top:calc(100% + 7px);left:0;z-index:1300;min-width:240px;margin:0;padding:8px;list-style:none;
    background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);
    opacity:0;visibility:hidden;transform:translateY(8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}
.desktop-menu > li.menu-item-has-children.menu-open > .sub-menu{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.desktop-menu .sub-menu li{position:relative;list-style:none}
.desktop-menu .sub-menu a,
.desktop-menu .sub-menu .desktop-menu-toggle{min-height:42px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-radius:9px;color:var(--ink);font-size:13px;font-weight:650;white-space:nowrap;border:0}
.desktop-menu .sub-menu a{border-bottom:0}
.desktop-menu .sub-menu a:hover,
.desktop-menu .sub-menu .desktop-menu-toggle:hover,
.desktop-menu .sub-menu li.current-menu-item > a,
.desktop-menu .sub-menu li.current-menu-ancestor > .desktop-menu-toggle,
.desktop-menu .sub-menu li.menu-open > .desktop-menu-toggle{color:var(--pine);background:var(--mint-50)}
.desktop-menu .sub-menu .sub-menu{position:absolute;top:-8px;left:calc(100% + 7px);z-index:1301;min-width:240px;margin:0;padding:8px;list-style:none;background:var(--white);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateX(8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.desktop-menu .sub-menu li.menu-item-has-children.menu-open > .sub-menu{opacity:1;visibility:visible;transform:translateX(0);pointer-events:auto}
.hot-deal-icon{display:inline-block;margin-right:5px;font-size:.9em;line-height:1}

/* Desktop filter accordions remain interactive after every AJAX refresh. */
.filters .filter-toggle{cursor:pointer;user-select:none}
.filters .filter-toggle:focus-visible{outline:2px solid var(--pine-mid);outline-offset:-2px}

/* Visible AJAX progress: never leave the shopper wondering whether the filter/sort fired. */
.pharma-archive{position:relative}
.pharma-archive.loading .products-content{position:relative}
.pharma-archive.loading .products-content:after{
    content:"";position:absolute;inset:0;z-index:20;background:rgba(251,250,246,.62);backdrop-filter:blur(1.5px);border-radius:18px;pointer-events:none;
}
.owpp-ajax-status{
    position:fixed;right:24px;bottom:24px;z-index:2500;display:flex;align-items:center;gap:10px;padding:11px 15px;border:1px solid var(--line);border-radius:999px;background:var(--white);box-shadow:var(--shadow-md);color:var(--pine-dark);font-size:12px;font-weight:700;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s ease;pointer-events:none
}
.owpp-ajax-status.show{opacity:1;visibility:visible;transform:translateY(0)}
.owpp-ajax-spinner{width:16px;height:16px;border:2px solid var(--mint-200);border-top-color:var(--pine);border-radius:50%;animation:owpp-spin .7s linear infinite}
@keyframes owpp-spin{to{transform:rotate(360deg)}}
.pharma-archive.loading #sortProducts{opacity:.7}

/* Search archive keeps the exact same catalog shell, with a dedicated search state. */
.pharma-archive.is-search-archive .shop-title h1{max-width:850px}
.pharma-archive.is-search-archive .shop-title .archive-description{margin-top:10px}
.search-no-results{grid-column:1/-1}

/* Mobile menu action cards: icon + label, including wishlist/cart. */
.mobile-menu-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:18px 16px 24px}
.mobile-menu-actions a.mobile-action-card{position:relative;min-height:78px;margin:0;padding:12px 8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);font-size:11px;font-weight:700;text-align:center}
.mobile-menu-actions a.mobile-action-card:hover{background:var(--mint-50);color:var(--pine)}
.mobile-action-icon{position:relative;font-size:22px;line-height:1;color:var(--pine)}
.mobile-badge{position:absolute;top:-7px;right:-10px}
.mobile-menu-list,.mobile-menu-list ul{margin:0;padding:0;list-style:none}
.mobile-menu-list > li{border-bottom:1px solid var(--line);list-style:none}
.mobile-menu-list .mobile-menu-link{border:0}
.mobile-menu-list .menu-item-has-children > .mobile-submenu{max-height:0;overflow:hidden;background:var(--mint-50);transition:max-height .3s ease}
.mobile-menu-list .menu-item-has-children.menu-open > .mobile-submenu{max-height:1400px}
.mobile-menu-list .mobile-submenu a{display:flex;align-items:center;min-height:48px;padding:11px 24px 11px 42px;color:var(--ink-soft);font-size:13px;font-weight:600}
.mobile-menu-list .mobile-submenu a:hover,.mobile-menu-list .mobile-submenu a.active{background:rgba(31,77,61,.06);color:var(--pine)}
.mobile-menu-list .mobile-submenu .mobile-submenu a{padding-left:60px}
.mobile-menu-list .mobile-submenu .mobile-submenu .mobile-submenu a{padding-left:78px}
.mobile-menu-list .menu-item-has-children > .mobile-menu-link.is-active-parent,
.mobile-menu-list > li.current-menu-item > .mobile-menu-link{color:var(--pine);background:var(--mint-100);box-shadow:inset 4px 0 0 var(--amber)}

/* Keep search action on one line at every supported width. */
.site-header .search button{white-space:nowrap;flex:0 0 105px;display:flex;align-items:center;justify-content:center;line-height:1;padding-inline:12px}

@media (max-width:800px){
    .site-header .search button{flex-basis:84px;min-width:84px}
    .mobile-menu-list .mobile-menu-link{min-height:58px;padding-left:22px;padding-right:22px}
    .mobile-menu-actions{grid-template-columns:repeat(3,1fr)}
    .owpp-ajax-status{right:14px;bottom:14px}
}
@media (max-width:560px){
    .site-header .search button{flex-basis:78px;min-width:78px;font-size:11px;padding-inline:8px}
    .products-grid{grid-template-columns:1fr!important;gap:14px}
    .product-image{height:220px}
    .mobile-menu-actions{gap:7px;padding-left:14px;padding-right:14px}
}
@media (max-width:390px){
    .site-header .search button{flex-basis:72px;min-width:72px;font-size:10px}
    .search-icon{width:36px}
    .mobile-menu-actions a.mobile-action-card{font-size:10px}
}

/* ======================================================================
   v4 polish: Font Awesome header, search, menu and account UI
   ====================================================================== */
.header-action-icon i,.mobile-action-icon i,.search-icon i,.site-header .search button i{font-size:inherit;line-height:1}
.header-avatar{width:30px;height:30px;margin:0 auto 5px;display:flex;align-items:center;justify-content:center;border-radius:50%;overflow:visible}
.header-user-avatar{width:30px!important;height:30px!important;border-radius:50%;object-fit:cover;display:block}
.header-avatar > i{font-size:25px}
.header-actions .header-action{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:54px}
.site-header .search{position:relative;z-index:200}
.site-header .search button{gap:7px}
.owpp-search-suggestions{position:absolute;left:50%;transform:translateX(-50%);top:calc(100% + 5px);width:min(700px,calc(100% - 40px));z-index:1500;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);overflow:hidden;display:none}
.owpp-search-suggestions.show{display:block}
.owpp-search-suggestion{display:flex;align-items:center;gap:12px;padding:10px 13px;border-bottom:1px solid var(--line);background:#fff}
.owpp-search-suggestion:last-child{border-bottom:0}
.owpp-search-suggestion:hover{background:var(--mint-50)}
.owpp-search-suggestion img{width:44px;height:44px;border-radius:8px;object-fit:cover;background:var(--mint-50);flex:0 0 44px}
.owpp-search-suggestion-main{min-width:0;flex:1}.owpp-search-suggestion-main strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;color:var(--ink)}
.owpp-search-suggestion-meta{display:flex;gap:7px;align-items:center;margin-top:3px;color:var(--ink-soft);font-size:10px}.owpp-search-suggestion-type{padding:2px 7px;border-radius:99px;background:var(--mint-100);color:var(--pine);font-weight:700}
.owpp-search-suggestion-price{font-weight:700;color:var(--pine)}
.search-empty{padding:16px;color:var(--ink-soft);font-size:12px;text-align:center}

/* Proper right-opening desktop navigation */
.desktop-menu{position:relative;overflow:visible!important}
.desktop-menu > li{position:relative}
.desktop-menu > li > .desktop-menu-toggle{display:flex;align-items:center;gap:8px}
.desktop-menu > li > .desktop-dropdown{position:absolute;top:calc(100% + 2px);left:0}
.desktop-menu .desktop-dropdown .desktop-dropdown{top:-8px;left:calc(100% + 7px)}
.desktop-menu .desktop-dropdown li.has-dropdown > .desktop-submenu-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:15px}
.desktop-submenu-toggle .desktop-menu-chevron{transform:rotate(-90deg);margin-left:auto}
.desktop-menu > li.menu-item-has-children > .desktop-menu-toggle .desktop-menu-chevron{transition:transform .2s ease}
.desktop-menu > li.menu-open > .desktop-menu-toggle .desktop-menu-chevron{transform:rotate(180deg)}
.desktop-menu .desktop-dropdown li.menu-open > .desktop-submenu-toggle .desktop-menu-chevron{transform:rotate(0deg)}
.desktop-menu .desktop-dropdown{min-width:245px}
.desktop-menu .desktop-dropdown a,.desktop-menu .desktop-submenu-toggle{font-family:var(--font-body)!important}
.hot-deal-icon{color:var(--amber);margin-right:5px}

/* Account dashboard / wishlist endpoint */
body.woocommerce-account .woocommerce{max-width:1180px;margin:45px auto;padding:0 24px}
body.woocommerce-account .woocommerce-MyAccount-navigation{width:245px!important;margin-right:30px}
body.woocommerce-account .woocommerce-MyAccount-navigation ul{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:var(--shadow-sm)}
body.woocommerce-account .woocommerce-MyAccount-navigation li{border:0!important;margin:0!important}
body.woocommerce-account .woocommerce-MyAccount-navigation a{display:flex!important;align-items:center;gap:10px;padding:14px 17px!important;font-family:var(--font-body);font-weight:600;color:var(--ink-soft)}
body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{background:var(--mint-100);color:var(--pine);box-shadow:inset 4px 0 var(--amber)}
body.woocommerce-account .woocommerce-MyAccount-content{width:calc(100% - 275px)!important;border:1px solid var(--line);border-radius:22px;background:#fff;padding:28px!important;box-shadow:var(--shadow-sm)}
body.woocommerce-account .woocommerce-MyAccount-content h2,body.woocommerce-account .woocommerce-MyAccount-content h3{font-family:var(--font-display);color:var(--ink)}
.owpp-account-panel-head{display:flex;justify-content:space-between;gap:25px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:18px}
.owpp-account-panel-head i{font-size:30px;color:var(--berry);padding:14px;background:var(--berry-soft);border-radius:14px}
.owpp-account-kicker{font:700 10px var(--font-mono);letter-spacing:1.2px;color:var(--pine-mid)}
.owpp-account-panel-head h2{font-size:30px;margin:5px 0 5px}.owpp-account-panel-head p{margin:0;color:var(--ink-soft);font-size:13px}
.owpp-account-wishlist-list{display:grid;gap:10px}
.owpp-account-wishlist-list .owpp-wishlist-item{display:grid;grid-template-columns:76px 1fr auto;gap:14px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--mint-50)}

@media(max-width:1000px){
 body.woocommerce-account .woocommerce{margin:25px auto}
 body.woocommerce-account .woocommerce-MyAccount-navigation,body.woocommerce-account .woocommerce-MyAccount-content{width:100%!important;margin:0 0 18px!important}
 .owpp-search-suggestions{width:calc(100% - 28px)}
}
@media(max-width:800px){
 .header-actions{display:none!important}
 .owpp-search-suggestions{position:fixed;left:14px;right:14px;top:calc(var(--owpp-mobile-search-top, 120px));transform:none;width:auto}
 .mobile-menu-actions{grid-template-columns:repeat(3,1fr)}
 .mobile-action-icon{position:relative}
 .mobile-action-icon i{font-size:22px}
}

/* v4: make all catalog controls use Font Awesome glyphs consistently */
.pharma-archive .wishlist-button i{font-size:15px;line-height:1}
.pharma-archive .add-cart-button i{font-size:12px}
.site-header .search button i{font-size:11px}
.desktop-menu-chevron,.mobile-menu-chevron{font-size:10px;transition:transform .2s ease}
.owpp-wishlist-empty i{font-size:30px;color:var(--berry);margin-bottom:8px}


/* v5 authoritative fixes */
.mobile-header-actions{display:none;align-items:center;justify-content:center;gap:4px;min-width:0}
.mobile-header-action{position:relative;width:40px;height:40px;display:grid;place-items:center;border-radius:11px;color:var(--ink);background:var(--white);border:1px solid var(--line);font-size:18px;flex:0 0 40px}
.mobile-header-action:active{transform:scale(.97)}
.mobile-header-action .mobile-header-badge{top:1px;right:0;min-width:14px;height:14px;padding:0 3px;font-size:8px;line-height:14px;position:absolute}
.mobile-header-action .wishlist-badge{display:none;background:var(--berry);color:#fff;border-radius:50%}
.mobile-header-action .cart-badge{background:var(--amber);color:var(--pine-dark);border-radius:50%}
.catalog-logo{display:block!important;width:auto;height:auto;object-fit:contain;object-position:left center}
.site-header .search button{white-space:nowrap!important;display:inline-flex!important;align-items:center;justify-content:center;gap:7px;flex:0 0 auto}
.owpp-search-suggestion-price{white-space:nowrap;color:var(--ink-soft)}
.owpp-search-suggestion-price *{font-size:inherit}
/* Admin-menu mobile walker: the submenu belongs to the LI, not .mobile-menu-section. */
.mobile-menu-list > li{position:relative;border-bottom:1px solid var(--line)}
.mobile-menu-list > li > .mobile-menu-link,
.mobile-menu-list > li > .mobile-submenu-toggle{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;background:var(--white);color:var(--ink);font-size:15px;font-weight:700;text-align:left}
.mobile-menu-list .menu-item-has-children > .mobile-submenu-toggle .mobile-menu-chevron{transition:transform .25s ease}
.mobile-menu-list .menu-item-has-children.menu-open > .mobile-submenu{display:block;max-height:2000px;overflow:visible}
.mobile-menu-list .mobile-submenu{display:block;max-height:0;overflow:hidden;padding:0;margin:0;background:var(--mint-50);transition:max-height .32s ease}
.mobile-menu-list .mobile-submenu .menu-item{list-style:none;border-top:1px solid rgba(18,51,40,.07)}
.mobile-menu-list .mobile-submenu .mobile-menu-link,
.mobile-menu-list .mobile-submenu .mobile-submenu-toggle{min-height:46px;padding:0 18px 0 38px;display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;color:var(--ink-soft);font-size:14px;font-weight:600;text-align:left}
.mobile-menu-list .mobile-submenu .mobile-submenu .mobile-menu-link,
.mobile-menu-list .mobile-submenu .mobile-submenu .mobile-submenu-toggle{padding-left:56px;font-size:13px}
.mobile-menu-list .mobile-submenu .mobile-submenu .mobile-submenu .mobile-menu-link,
.mobile-menu-list .mobile-submenu .mobile-submenu .mobile-submenu .mobile-submenu-toggle{padding-left:74px;font-size:12px}
.mobile-menu-list .menu-item-has-children.menu-open > .mobile-submenu-toggle .mobile-menu-chevron{transform:rotate(180deg)}
.mobile-menu-list .mobile-submenu .menu-item-has-children.menu-open > .mobile-submenu-toggle .mobile-menu-chevron{transform:rotate(180deg)}
.owpp-account-wishlist-list .owpp-wishlist-remove{cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:9px;padding:8px 12px;color:var(--berry);font-weight:700}
.owpp-account-wishlist-list .owpp-wishlist-remove:hover{background:var(--berry-soft)}
@media(max-width:800px){
 .header-main{grid-template-columns:minmax(0,1fr) auto auto!important;gap:7px!important;align-items:center}
 .mobile-header-actions{display:flex;order:2}
 .mobile-menu-toggle{order:3;width:42px;height:42px;flex:0 0 42px}
 .mobile-menu-toggle span{width:20px}
 .brand{grid-column:1;grid-row:1;min-width:0;overflow:hidden}
 .brand .catalog-logo{max-width:100%!important}
 .site-header .search{grid-column:1/-1!important;grid-row:2!important}
 .header-actions,.category-nav{display:none!important}
 .mobile-header-action{width:38px;height:38px;flex-basis:38px;font-size:17px}
}
@media(max-width:390px){
 .mobile-header-actions{gap:2px}
 .mobile-header-action{width:35px;height:35px;flex-basis:35px;font-size:16px}
 .mobile-menu-toggle{width:39px;height:39px;flex-basis:39px}
}
/* Search/archive must never inherit OceanWP's search result wrapper. */
body.owpp-catalog.search .site-content,body.owpp-catalog.search #main,body.owpp-catalog.search #content-wrap{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}

/* v5 icon/interaction normalization */
.topbar i{margin-right:5px;color:var(--mint-200)}
.filter-toggle .filter-chevron{font-size:10px;transition:transform .2s ease;color:var(--pine-mid)}
.filter-block.open .filter-toggle .filter-chevron{transform:rotate(180deg)}
.mobile-filter,.view-button{gap:7px}
.view-button i,.mobile-filter i{font-size:12px}
@media(max-width:800px){
 .mobile-menu-list .menu-item-has-children > .mobile-submenu{max-height:0!important;overflow:hidden!important;display:block!important}
 .mobile-menu-list .menu-item-has-children.menu-open > .mobile-submenu{max-height:3000px!important;overflow:visible!important}
 .mobile-menu-list .menu-item-has-children.menu-open > .mobile-submenu-toggle .mobile-menu-chevron{transform:rotate(180deg)!important}
 .mobile-header-actions{visibility:visible!important;opacity:1!important}
 .mobile-header-action i{pointer-events:none}
}


/* ======================================================================
   v6 — archive/search/menu/pagination polish
   ====================================================================== */
.owpp-site .pharma-archive.is-search-archive .shop-hero,
.owpp-site.owpp-product-search .pharma-archive .shop-hero{min-height:0!important;height:auto!important;display:block!important;padding:50px 0!important}
.owpp-site .pharma-archive.is-search-archive .shop-title-row{display:flex!important;align-items:flex-end!important}
.owpp-site .pharma-archive.is-search-archive .shop-title h1{height:auto!important;display:block!important;margin:0!important}
.owpp-site .pharma-archive .products-header{min-height:46px;height:auto!important;display:flex!important;align-items:center!important}
.owpp-site .pharma-archive .products-controls{display:flex!important;align-items:center!important;gap:10px!important}
.owpp-site .pharma-archive .control-select{height:43px!important;min-height:43px!important;line-height:43px!important;display:block!important}

/* Green catalog controls on every archive. */
.owpp-site .pharma-archive .qty-minus,
.owpp-site .pharma-archive .qty-plus,
.owpp-site .pharma-archive .add-cart-button,
.owpp-site .pharma-archive .filter-submit,
.owpp-site .pharma-archive .mobile-filter{background:var(--pine)!important;color:#fff!important;border-color:var(--pine)!important}
.owpp-site .pharma-archive .qty-minus:hover,
.owpp-site .pharma-archive .qty-plus:hover,
.owpp-site .pharma-archive .add-cart-button:hover,
.owpp-site .pharma-archive .filter-submit:hover,
.owpp-site .pharma-archive .mobile-filter:hover{background:var(--pine-dark)!important;color:#fff!important}
.owpp-site .pharma-archive .quantity-control{border-color:rgba(31,77,61,.18)!important;background:var(--mint-50)!important}

/* AJAX load-more pagination: one responsive control instead of numbered pages. */
.owpp-load-more-wrap{display:flex;justify-content:center;align-items:center;gap:12px;margin:42px 0 8px;min-height:48px}
.owpp-load-more{min-width:170px;height:44px;padding:0 28px;border:0;border-radius:10px;background:var(--pine);color:#fff;font:700 12px var(--font-body);cursor:pointer;box-shadow:0 6px 18px rgba(31,77,61,.14);transition:transform .2s ease,background .2s ease,opacity .2s ease}
.owpp-load-more:hover{background:var(--pine-dark);transform:translateY(-1px)}
.owpp-load-more:disabled{opacity:.6;cursor:not-allowed;transform:none}
.owpp-load-more.is-loading{pointer-events:none}
.owpp-load-more.is-loading i{animation:owpp-spin .7s linear infinite}
.owpp-load-more-status{font-size:11px;color:var(--ink-soft)}

/* Professional hover navigation. Parent items remain real links. */
.desktop-menu>li>.desktop-menu-link{display:flex!important;align-items:center;gap:8px;white-space:nowrap}
.desktop-menu .desktop-menu-chevron{font-size:10px;margin-left:2px;transition:transform .18s ease}
.desktop-menu>li:hover>.desktop-menu-link .desktop-menu-chevron{transform:rotate(180deg)}
.desktop-menu>li>.desktop-dropdown,
.desktop-menu .desktop-dropdown .desktop-dropdown{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.desktop-menu>li:hover>.desktop-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.desktop-menu .desktop-dropdown li:hover>.desktop-dropdown{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(0)}
.desktop-menu .desktop-dropdown{min-width:260px;padding:8px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);z-index:1300}
.desktop-menu .desktop-dropdown a{display:flex!important;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:10px 13px!important;border:0!important;border-radius:9px;color:var(--ink)!important;background:#fff!important;font-size:13px;font-weight:600}
.desktop-menu .desktop-dropdown a:hover{background:var(--mint-100)!important;color:var(--pine)!important}
.desktop-menu .desktop-dropdown .has-dropdown>a{padding-right:10px!important}
.desktop-menu .desktop-dropdown .has-dropdown>a .desktop-menu-chevron{transform:rotate(-90deg);margin-left:auto}
.desktop-menu .desktop-dropdown .has-dropdown:hover>a .desktop-menu-chevron{transform:rotate(0deg)}
.desktop-menu>li>.desktop-dropdown{top:calc(100% + 1px)!important;left:0!important;transform:translateY(7px)}
.desktop-menu .desktop-dropdown .desktop-dropdown{top:-8px!important;left:calc(100% + 7px)!important;transform:translateX(7px)}
.desktop-menu>li.current-menu-item>.desktop-menu-link,
.desktop-menu>li.current-menu-ancestor>.desktop-menu-link,
.desktop-menu>li.current-menu-parent>.desktop-menu-link{color:#fff!important;background:rgba(255,255,255,.06)!important;border-bottom-color:var(--amber)!important}
.desktop-menu .desktop-dropdown li.current-menu-item>a,
.desktop-menu .desktop-dropdown li.current-menu-ancestor>a{background:var(--mint-100)!important;color:var(--pine)!important}

/* Header actions share one baseline and one icon box. */
.header-actions{align-items:stretch!important;height:52px}
.header-actions .header-action{height:52px;min-width:54px;display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:3px;line-height:1.1}
.header-action-icon{width:30px;height:28px;display:flex!important;align-items:center;justify-content:center;margin:0!important;position:relative;line-height:1!important}
.header-action-icon i{font-size:19px!important;line-height:1!important}
.header-user-avatar{width:28px!important;height:28px!important;border-radius:50%!important;object-fit:cover!important}
.header-action>span:last-child{font-size:9px;line-height:1.1}

/* Mobile header actions: three equal-height controls. */
@media(max-width:800px){
 .mobile-header-actions{height:42px;align-items:center!important;gap:4px!important}
 .mobile-header-action{width:40px!important;height:40px!important;flex:0 0 40px!important;border-radius:11px!important;display:grid!important;place-items:center!important}
 .mobile-header-action i{font-size:17px!important}
 .mobile-menu-toggle{width:42px!important;height:42px!important;flex:0 0 42px!important;margin:0!important}
 .header-main{align-items:center!important}
}
@media(max-width:370px){
 .mobile-header-actions{gap:2px!important}
 .mobile-header-action{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:15px!important}
 .mobile-menu-toggle{width:38px!important;height:38px!important;flex-basis:38px!important}
}

/* Wishlist rows never overflow the mobile account content. */
body.woocommerce-account .woocommerce-MyAccount-content{min-width:0;overflow:hidden}
.owpp-account-wishlist-list{min-width:0;width:100%}
.owpp-account-wishlist-list .owpp-wishlist-item{width:100%;min-width:0;grid-template-columns:64px minmax(0,1fr) auto!important}
.owpp-account-wishlist-list .owpp-wishlist-item>div{min-width:0}
.owpp-account-wishlist-list .owpp-wishlist-item strong{display:block;overflow-wrap:anywhere;word-break:break-word}
.owpp-account-wishlist-list .owpp-wishlist-remove{white-space:nowrap;flex:0 0 auto}

/* Keep logo dimensions authoritative over OceanWP's img rules. */
.owpp-site .catalog-logo{display:block!important;width:var(--owpp-logo-w,210px)!important;height:var(--owpp-logo-h,52px)!important;max-width:var(--owpp-logo-w,210px)!important;max-height:var(--owpp-logo-h,52px)!important;object-fit:contain!important;object-position:left center!important}
@media(max-width:800px){.owpp-site .catalog-logo{width:min(var(--owpp-logo-w,210px),100%)!important;height:min(var(--owpp-logo-h,52px),44px)!important;max-width:100%!important}}

/* Mobile account wishlist: stacked cards on narrow screens. */
@media(max-width:560px){
 body.woocommerce-account .woocommerce{padding:0 14px!important}
 body.woocommerce-account .woocommerce-MyAccount-content{padding:18px!important;border-radius:18px!important}
 .owpp-account-panel-head{gap:12px}
 .owpp-account-panel-head h2{font-size:27px}
 .owpp-account-panel-head i{font-size:24px;padding:11px}
 .owpp-account-wishlist-list .owpp-wishlist-item{grid-template-columns:58px minmax(0,1fr)!important;gap:10px!important;padding:11px!important}
 .owpp-account-wishlist-list .owpp-wishlist-item img{width:58px!important;height:58px!important}
 .owpp-account-wishlist-list .owpp-wishlist-remove{grid-column:2;justify-self:start;padding:7px 12px!important}
}

/* Sale pricing: current price first, crossed regular price on the right. */
.owpp-site .pharma-archive .price-row{display:flex!important;align-items:baseline!important;gap:10px!important;width:100%}
.owpp-site .pharma-archive .price-row del{order:2!important;margin-left:auto!important;color:#8b9c95!important;text-decoration:line-through!important;white-space:nowrap!important}
.owpp-site .pharma-archive .price-row ins{order:1!important;text-decoration:none!important;white-space:nowrap!important}
.owpp-site .pharma-archive .price-row ins .woocommerce-Price-amount{font-weight:800!important}
.owpp-site .pharma-archive .price-row del .woocommerce-Price-amount{font-size:13px!important;font-weight:500!important;color:#8b9c95!important}

/* Mobile grid/list switcher is compact and visually distinct. */
@media(max-width:800px){
 .owpp-site .pharma-archive .products-controls{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;align-items:stretch!important;gap:8px!important}
 .owpp-site .pharma-archive .mobile-filter{width:100%!important}
 .owpp-site .pharma-archive .view-toggle{height:43px!important;display:flex!important;width:auto!important}
 .owpp-site .pharma-archive .view-button{width:43px!important;height:41px!important;min-width:43px!important;display:grid!important;place-items:center!important}
}

/* Real mobile list view: horizontal card, not a resized grid card. */
@media(max-width:800px){
 .owpp-site .pharma-archive .products-grid.list-view{display:flex!important;flex-direction:column!important;gap:12px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-card{display:grid!important;grid-template-columns:128px minmax(0,1fr)!important;grid-template-rows:auto auto!important;min-width:0!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-image{grid-column:1;grid-row:1 / span 2;width:100%!important;height:100%!important;min-height:150px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-info{grid-column:2;grid-row:1;padding:15px 14px 8px!important;min-width:0!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-title{font-size:15px!important;line-height:1.45!important;min-height:0!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-actions{grid-column:2;grid-row:2;display:flex!important;flex-direction:column!important;padding:5px 14px 14px!important;border-left:0!important;min-width:0!important}
 .owpp-site .pharma-archive .products-grid.list-view .quantity-control{width:100%!important}
 .owpp-site .pharma-archive .products-grid.list-view .add-cart-wrap,.owpp-site .pharma-archive .products-grid.list-view .add-cart-button{width:100%!important}
 .owpp-site .pharma-archive .products-grid.list-view .wishlist-button{width:36px!important;height:36px!important;top:9px!important;right:9px!important}
}
@media(max-width:560px){
 .owpp-site .pharma-archive .products-grid.list-view .product-card{grid-template-columns:102px minmax(0,1fr)!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-image{min-height:132px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-info{padding:12px 12px 6px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-title{font-size:13px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-brand,.owpp-site .pharma-archive .products-grid.list-view .stock-status,.owpp-site .pharma-archive .products-grid.list-view .rating-row,.owpp-site .pharma-archive .products-grid.list-view .product-meta{font-size:10px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-actions{padding:4px 12px 12px!important}
}

/* Wishlist/header badge uses the same amber brand accent on mobile. */
.owpp-site .mobile-header-action .wishlist-badge{background:var(--amber)!important;color:var(--pine-dark)!important}


/* ======================================================================
   v6.3 final responsive/list + desktop menu corrections
   ====================================================================== */
/* Keep the archive list card inside its available content width. */
.owpp-site .pharma-archive .products-grid.list-view{width:100%!important;min-width:0!important;display:flex!important;flex-direction:column!important;gap:16px!important}
.owpp-site .pharma-archive .products-grid.list-view .product-card{width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;overflow:hidden!important;display:grid!important;grid-template-columns:minmax(180px,220px) minmax(0,1fr) minmax(190px,220px)!important}
.owpp-site .pharma-archive .products-grid.list-view .product-image,
.owpp-site .pharma-archive .products-grid.list-view .product-info,
.owpp-site .pharma-archive .products-grid.list-view .product-actions{min-width:0!important;box-sizing:border-box!important}
.owpp-site .pharma-archive .products-grid.list-view .product-image{height:100%!important;min-height:230px!important}
.owpp-site .pharma-archive .products-grid.list-view .product-info{overflow:hidden!important}
.owpp-site .pharma-archive .products-grid.list-view .product-actions{width:auto!important;max-width:100%!important;overflow:hidden!important;padding:22px!important}
.owpp-site .pharma-archive .products-grid.list-view .quantity-control,
.owpp-site .pharma-archive .products-grid.list-view .add-cart-wrap,
.owpp-site .pharma-archive .products-grid.list-view .add-cart-button{max-width:100%!important;box-sizing:border-box!important}

/* At tablet widths use a two-column card: image + details/actions. */
@media(max-width:1100px) and (min-width:801px){
 .owpp-site .pharma-archive .products-grid.list-view .product-card{grid-template-columns:190px minmax(0,1fr)!important;grid-template-rows:auto auto!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-image{grid-column:1;grid-row:1 / span 2;min-height:210px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-info{grid-column:2;grid-row:1;padding:22px 20px 10px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-actions{grid-column:2;grid-row:2;border-left:0!important;padding:8px 20px 20px!important;display:flex!important;flex-direction:row!important;gap:10px!important;align-items:center!important}
 .owpp-site .pharma-archive .products-grid.list-view .quantity-control{flex:1 1 180px!important;width:auto!important}
 .owpp-site .pharma-archive .products-grid.list-view .add-cart-wrap{flex:1 1 220px!important}
}

/* Mobile list view remains a genuine compact horizontal card. */
@media(max-width:800px){
 .owpp-site .pharma-archive .products-grid.list-view .product-card{grid-template-columns:112px minmax(0,1fr)!important;grid-template-rows:auto auto!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-image{grid-column:1;grid-row:1 / span 2;min-height:150px!important;height:100%!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-info{grid-column:2;grid-row:1;padding:13px 12px 6px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-actions{grid-column:2;grid-row:2;border-left:0!important;padding:5px 12px 12px!important;display:flex!important;flex-direction:column!important;gap:8px!important}
 .owpp-site .pharma-archive .products-grid.list-view .quantity-control,.owpp-site .pharma-archive .products-grid.list-view .add-cart-wrap{width:100%!important;flex:none!important}
}
@media(max-width:480px){
 .owpp-site .pharma-archive .products-grid.list-view .product-card{grid-template-columns:92px minmax(0,1fr)!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-image{min-height:128px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-info{padding:11px 10px 4px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-actions{padding:4px 10px 10px!important}
 .owpp-site .pharma-archive .products-grid.list-view .product-title{font-size:13px!important}
}

/* ======================================================================
   Desktop admin-menu hover dropdown — restore v6.1 behavior and keep the
   pointer path connected so the submenu does not vanish while moving into it.
   ====================================================================== */
@media(min-width:801px){
 .owpp-site .category-nav,.owpp-site .category-nav .container,.owpp-site .desktop-menu,.owpp-site .desktop-menu>li{overflow:visible!important}
 .owpp-site .desktop-menu{display:flex!important;align-items:stretch!important;position:relative!important;z-index:1300!important}
 .owpp-site .desktop-menu>li{position:relative!important;display:block!important}
 .owpp-site .desktop-menu>li>.desktop-menu-link{min-height:48px!important;padding:0 18px!important;display:flex!important;align-items:center!important;gap:7px!important;white-space:nowrap!important;color:rgba(255,255,255,.88)!important;text-decoration:none!important}
 .owpp-site .desktop-menu>li>.desktop-menu-link:hover,.owpp-site .desktop-menu>li:hover>.desktop-menu-link,.owpp-site .desktop-menu>li.current-menu-item>.desktop-menu-link,.owpp-site .desktop-menu>li.current-menu-ancestor>.desktop-menu-link,.owpp-site .desktop-menu>li.current-menu-parent>.desktop-menu-link{color:#fff!important;background:rgba(255,255,255,.06)!important}
 .owpp-site .desktop-menu>li>.desktop-dropdown{position:absolute!important;top:100%!important;left:0!important;z-index:1400!important;display:block!important;width:max-content!important;min-width:240px!important;margin:0!important;padding:8px!important;list-style:none!important;background:#fff!important;border:1px solid var(--line)!important;border-radius:14px!important;box-shadow:var(--shadow-lg)!important;opacity:0!important;visibility:hidden!important;transform:translateY(6px)!important;pointer-events:none!important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important}
 .owpp-site .desktop-menu>li>.desktop-dropdown:before{content:"";position:absolute;left:0;right:0;top:-10px;height:10px;background:transparent}
 .owpp-site .desktop-menu>li:hover>.desktop-dropdown,.owpp-site .desktop-menu>li.menu-open>.desktop-dropdown{opacity:1!important;visibility:visible!important;transform:translateY(0)!important;pointer-events:auto!important}
 .owpp-site .desktop-menu .desktop-dropdown li{position:relative!important;display:block!important;width:100%!important}
 .owpp-site .desktop-menu .desktop-dropdown a{min-height:42px!important;padding:10px 12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;border:0!important;border-radius:9px!important;color:var(--ink)!important;background:#fff!important;font-size:13px!important;font-weight:650!important;white-space:nowrap!important;text-decoration:none!important}
 .owpp-site .desktop-menu .desktop-dropdown a:hover,.owpp-site .desktop-menu .desktop-dropdown li:hover>a{color:var(--pine)!important;background:var(--mint-50)!important}
 .owpp-site .desktop-menu .desktop-dropdown .desktop-dropdown{position:absolute!important;top:-8px!important;left:calc(100% + 7px)!important;z-index:1401!important;min-width:240px!important;margin:0!important;padding:8px!important;display:block!important;opacity:0!important;visibility:hidden!important;transform:translateX(7px)!important;pointer-events:none!important;transition:opacity .16s ease,transform .16s ease,visibility .16s ease!important}
 .owpp-site .desktop-menu .desktop-dropdown li:has(> .desktop-dropdown):after{content:"";position:absolute;left:100%;top:0;width:9px;height:100%;background:transparent}
 .owpp-site .desktop-menu .desktop-dropdown li:hover>.desktop-dropdown,.owpp-site .desktop-menu .desktop-dropdown li.menu-open>.desktop-dropdown{opacity:1!important;visibility:visible!important;transform:translateX(0)!important;pointer-events:auto!important}
 .owpp-site .desktop-menu-chevron{font-size:11px!important;line-height:1!important;flex:0 0 auto!important}
 .owpp-site .desktop-menu .desktop-dropdown .desktop-menu-chevron{transform:rotate(-90deg)!important;margin-left:auto!important}
}

/* Do not render a secondary load-more status label. */
.owpp-site .owpp-load-more-status{display:none!important}

/* =========================================================
   v6.3.1 — PRODUCT DETAIL + POLISHED DESKTOP MENU
   Only affects the single-product screen and menu dropdowns.
========================================================= */

/* Desktop menu: hover-first, zero-gap dropdowns so the pointer never loses
   the parent while moving into a submenu. */
@media (min-width: 801px) {
    .owpp-site .category-nav,
    .owpp-site .category-nav .container,
    .owpp-site .desktop-menu,
    .owpp-site .desktop-menu > li { overflow: visible !important; }

    .owpp-site .desktop-menu > li.has-dropdown:hover > .desktop-dropdown,
    .owpp-site .desktop-menu > li.has-dropdown:focus-within > .desktop-dropdown,
    .owpp-site .desktop-dropdown li.has-dropdown:hover > .desktop-dropdown,
    .owpp-site .desktop-dropdown li.has-dropdown:focus-within > .desktop-dropdown {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: none;
    }

    .owpp-site .desktop-menu > li.has-dropdown > .desktop-dropdown {
        top: 100%;
        left: 0;
        margin-top: 0;
        min-width: 286px;
        padding: 8px;
        border-radius: 0 0 14px 14px;
        border-top: 2px solid var(--amber);
    }

    .owpp-site .desktop-dropdown li.has-dropdown > .desktop-dropdown {
        top: -8px;
        left: 100%;
        margin-left: 0;
        min-width: 286px;
        border-radius: 12px;
        border-top: 1px solid var(--line);
        transform: translateX(7px);
    }

    .owpp-site .desktop-dropdown li.has-dropdown:hover > .desktop-dropdown,
    .owpp-site .desktop-dropdown li.has-dropdown:focus-within > .desktop-dropdown {
        transform: translateX(0);
    }

    /* Invisible hover bridges remove the tiny dead zone at submenu edges. */
    .owpp-site .desktop-menu > li.has-dropdown > .desktop-dropdown::before {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        top: -10px;
        height: 10px;
    }
    .owpp-site .desktop-dropdown li.has-dropdown > .desktop-dropdown::before {
        content: "";
        position: absolute;
        left: -10px;
        top: 0;
        bottom: 0;
        width: 10px;
    }

    .owpp-site .desktop-menu-link,
    .owpp-site .desktop-menu-toggle {
        min-height: 48px;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        color: rgba(255,255,255,.9);
        font-size: 13px;
        font-weight: 700;
    }

    .owpp-site .desktop-menu-link {
        padding: 0 18px;
    }

    .owpp-site .desktop-menu-link:hover,
    .owpp-site .desktop-menu > li:hover > .desktop-menu-link,
    .owpp-site .desktop-menu > li:focus-within > .desktop-menu-link,
    .owpp-site .desktop-menu > li.menu-open > .desktop-menu-link {
        color: #fff;
        background: rgba(255,255,255,.06);
        border-bottom-color: var(--amber);
    }

    .owpp-site .desktop-dropdown a,
    .owpp-site .desktop-submenu-toggle {
        position: relative;
        width: 100%;
        min-height: 44px;
        padding: 10px 13px;
        border: 0;
        border-radius: 9px;
        color: var(--ink);
        background: transparent;
        font-size: 13px;
        font-weight: 650;
        line-height: 1.35;
    }

    .owpp-site .desktop-dropdown a:hover,
    .owpp-site .desktop-submenu-toggle:hover,
    .owpp-site .desktop-dropdown li:hover > .desktop-submenu-toggle,
    .owpp-site .desktop-dropdown li:focus-within > .desktop-submenu-toggle {
        color: var(--pine-dark);
        background: var(--mint-100);
    }

    .owpp-site .desktop-submenu-toggle > span:last-child,
    .owpp-site .desktop-dropdown .fa-chevron-right {
        color: var(--pine-mid);
        flex: 0 0 auto;
    }

    .owpp-site .hot-deal-icon { color: var(--amber); margin-right: 6px; }
}

/* =========================================================
   SINGLE PRODUCT
========================================================= */
.owpp-site.owpp-single-product #main,
.owpp-site.owpp-single-product #content-wrap,
.owpp-site.owpp-single-product .content-area,
.owpp-site.owpp-single-product .woocommerce,
.owpp-site.owpp-single-product .site-main {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.owpp-single-product-page {
    background: var(--paper);
    color: var(--ink);
}

.owpp-product-breadcrumb-wrap {
    border-bottom: 1px solid var(--line);
    background: var(--paper);
}

.owpp-product-breadcrumb-wrap .breadcrumb {
    margin: 0;
    padding: 18px 0;
}

.owpp-product-hero {
    padding: 34px 0 80px;
}

.owpp-product-main {
    display: grid;
    grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
    gap: 48px;
    align-items: start;
}

.owpp-product-gallery {
    min-width: 0;
}

.owpp-product-main-image {
    position: relative;
    display: grid;
    place-items: center;
    min-height: 520px;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 26px;
    background: var(--mint-50);
    box-shadow: var(--shadow-sm);
}

.owpp-product-main-image > img {
    width: 100%;
    height: 520px;
    object-fit: contain;
    display: block;
    padding: 28px;
}

.owpp-product-sale {
    position: absolute;
    z-index: 2;
    top: 18px;
    left: 18px;
    padding: 7px 11px;
    border-radius: 999px;
    background: var(--berry);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
}

.owpp-single-wishlist {
    position: absolute;
    z-index: 3;
    top: 18px;
    right: 18px;
    width: 48px;
    height: 48px;
    display: grid;
    place-items: center;
    border: 1px solid var(--line);
    border-radius: 50%;
    background: rgba(255,255,255,.95);
    color: var(--pine);
    font-size: 19px;
    cursor: pointer;
    box-shadow: var(--shadow-sm);
}

.owpp-single-wishlist.is-wished { color: var(--berry); }

.owpp-product-thumbs {
    display: flex;
    gap: 10px;
    margin-top: 12px;
    overflow-x: auto;
    scrollbar-width: none;
}
.owpp-product-thumbs::-webkit-scrollbar { display: none; }

.owpp-product-thumb {
    flex: 0 0 78px;
    width: 78px;
    height: 78px;
    padding: 5px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    cursor: pointer;
    overflow: hidden;
}
.owpp-product-thumb.is-active { border: 2px solid var(--pine); padding: 4px; }
.owpp-product-thumb img { width: 100%; height: 100%; object-fit: cover; border-radius: 7px; }

.owpp-product-summary {
    min-width: 0;
    padding: 10px 0 0;
}

.owpp-product-eyebrow,
.owpp-section-kicker {
    color: var(--pine-mid);
    font: 700 10px var(--font-mono);
    letter-spacing: .13em;
    text-transform: uppercase;
}

.owpp-product-summary h1 {
    margin: 9px 0 12px;
    color: var(--pine-dark);
    font: 700 clamp(30px, 4vw, 48px)/1.08 var(--font-display);
    letter-spacing: -1px;
}

.owpp-product-status-row {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 20px;
    align-items: center;
    margin-bottom: 22px;
}

.owpp-stock,
.owpp-rating {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    font-weight: 650;
}
.owpp-stock { color: var(--pine-mid); }
.owpp-stock i { font-size: 7px; color: #4eae78; }
.owpp-stock.out-of-stock i { color: var(--berry); }
.owpp-rating { color: var(--ink-soft); }
.owpp-rating > span { color: var(--amber); letter-spacing: 1px; }

.owpp-product-price {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 13px;
    padding: 18px 0;
    border-top: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
}
.owpp-product-price .owpp-current-price,
.owpp-product-price .woocommerce-Price-amount {
    color: var(--pine-dark);
    font-size: 27px;
    font-weight: 800;
}
.owpp-product-price del,
.owpp-product-price del .woocommerce-Price-amount {
    color: #8c9893;
    font-size: 15px;
    font-weight: 600;
}

.owpp-short-description {
    margin: 20px 0;
    color: var(--ink-soft);
    font-size: 14px;
    line-height: 1.75;
}
.owpp-short-description p { margin: 0 0 8px; }

.owpp-product-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 20px 0;
}

.owpp-product-fact {
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: var(--white);
}
.owpp-product-fact span {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 5px;
    color: var(--ink-soft);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .04em;
}
.owpp-product-fact span i { color: var(--pine); width: 15px; text-align: center; }
.owpp-product-fact strong {
    display: block;
    overflow-wrap: anywhere;
    color: var(--ink);
    font-size: 13px;
    line-height: 1.45;
}

.owpp-product-identifiers {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 18px;
    margin: 6px 0 22px;
    color: var(--ink-soft);
    font-size: 10px;
}
.owpp-product-identifiers strong { color: var(--ink); }

.owpp-buy-box {
    display: grid;
    grid-template-columns: minmax(150px, .5fr) minmax(0, 1fr);
    gap: 10px;
    align-items: stretch;
}

.owpp-product-quantity {
    min-height: 52px;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) 48px;
    align-items: center;
    overflow: hidden;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--mint-50);
}
.owpp-product-quantity .quantity-button {
    width: 100%;
    height: 100%;
    background: var(--pine);
    color: #fff;
    font-size: 19px;
    cursor: pointer;
}
.owpp-product-quantity .quantity-value {
    width: 100%;
    height: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: var(--ink);
    text-align: center;
    font-weight: 800;
    appearance: textfield;
}
.owpp-product-quantity .quantity-value::-webkit-inner-spin-button,
.owpp-product-quantity .quantity-value::-webkit-outer-spin-button { appearance: none; margin: 0; }

.owpp-product-add {
    min-height: 52px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border-radius: 12px;
    background: var(--pine);
    color: #fff !important;
    font-size: 13px;
    font-weight: 800;
    cursor: pointer;
    transition: transform .2s ease, background .2s ease;
}
.owpp-product-add:hover { background: var(--pine-dark); transform: translateY(-1px); }
.owpp-product-add.is-loading { opacity: .7; pointer-events: none; }
.owpp-out-of-stock-message {
    min-height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    border-radius: 12px;
    background: var(--mint-100);
    color: var(--ink-soft);
    font-size: 13px;
    font-weight: 700;
}

.owpp-product-content-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(280px, .6fr);
    gap: 22px;
    margin-top: 48px;
}

.owpp-product-description-panel,
.owpp-product-details-panel {
    padding: 28px;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: var(--white);
    box-shadow: var(--shadow-sm);
}

.owpp-product-description-panel h2,
.owpp-product-details-panel h2,
.owpp-related-heading h2 {
    margin: 6px 0 18px;
    color: var(--pine-dark);
    font: 700 28px/1.15 var(--font-display);
}

.owpp-rich-content {
    color: var(--ink-soft);
    font-size: 14px;
    line-height: 1.8;
}
.owpp-rich-content p { margin: 0 0 12px; }
.owpp-rich-content ul,
.owpp-rich-content ol { padding-left: 20px; margin: 0 0 12px; }
.owpp-rich-content img { border-radius: 12px; }
.owpp-muted { color: var(--ink-soft); font-size: 13px; }

.owpp-product-details-panel dl { margin: 0; }
.owpp-product-details-panel dl > div {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--line);
}
.owpp-product-details-panel dl > div:last-child { border-bottom: 0; }
.owpp-product-details-panel dt { color: var(--ink-soft); font-size: 11px; font-weight: 700; }
.owpp-product-details-panel dd { margin: 0; color: var(--ink); font-size: 12px; font-weight: 700; overflow-wrap: anywhere; }

.owpp-related-products { margin-top: 58px; }
.owpp-related-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 20px;
    margin-bottom: 20px;
}
.owpp-related-heading h2 { margin-bottom: 0; }
.owpp-related-heading > a { color: var(--pine); font-size: 12px; font-weight: 800; white-space: nowrap; }
.owpp-related-heading > a i { margin-left: 6px; }
.owpp-related-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}
.owpp-related-grid .product-card { min-width: 0; }

@media (max-width: 900px) {
    .owpp-product-main { grid-template-columns: 1fr; gap: 28px; }
    .owpp-product-main-image,
    .owpp-product-main-image > img { min-height: 430px; height: 430px; }
    .owpp-product-content-grid { grid-template-columns: 1fr; }
    .owpp-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
    .owpp-product-hero { padding: 18px 0 50px; }
    .owpp-product-main-image,
    .owpp-product-main-image > img { min-height: 310px; height: 310px; }
    .owpp-product-main-image > img { padding: 18px; }
    .owpp-product-summary { padding-top: 0; }
    .owpp-product-summary h1 { font-size: 31px; }
    .owpp-product-facts { grid-template-columns: 1fr; }
    .owpp-buy-box { grid-template-columns: 1fr; }
    .owpp-product-content-grid { margin-top: 30px; }
    .owpp-product-description-panel,
    .owpp-product-details-panel { padding: 20px; border-radius: 16px; }
    .owpp-product-description-panel h2,
    .owpp-product-details-panel h2,
    .owpp-related-heading h2 { font-size: 25px; }
    .owpp-related-grid { grid-template-columns: 1fr; }
    .owpp-related-heading { align-items: flex-start; }
}

/* =========================================================
   v6.3.2 — SINGLE PRODUCT POLISH + PROFESSIONAL NAV
========================================================= */

/* Taxonomy links: every Brand/Category/Manufacturer/Ingredient/Form value
   points to its real WooCommerce archive. */
.owpp-site.owpp-single-product .owpp-product-brand-links a,
.owpp-site.owpp-single-product .owpp-product-fact strong a,
.owpp-site.owpp-single-product .owpp-product-details-panel dd a,
.owpp-site.owpp-single-product .owpp-identifier-category a {
    color: var(--pine) !important;
    text-decoration: none !important;
    border-bottom: 1px solid rgba(31,77,61,.22);
    transition: color .18s ease, border-color .18s ease;
}
.owpp-site.owpp-single-product .owpp-product-brand-links a:hover,
.owpp-site.owpp-single-product .owpp-product-fact strong a:hover,
.owpp-site.owpp-single-product .owpp-product-details-panel dd a:hover,
.owpp-site.owpp-single-product .owpp-identifier-category a:hover {
    color: var(--pine-dark) !important;
    border-bottom-color: var(--pine);
}

/* Main product image: fill the presentation frame cleanly. */
.owpp-site.owpp-single-product .owpp-product-main-image {
    background: var(--mint-50);
}
.owpp-site.owpp-single-product .owpp-product-main-image > img {
    width: 100% !important;
    height: 520px !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
}
.owpp-site.owpp-single-product .owpp-product-thumb {
    padding: 3px !important;
    background: var(--white);
    box-shadow: var(--shadow-sm);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.owpp-site.owpp-single-product .owpp-product-thumb:hover {
    transform: translateY(-2px);
    border-color: var(--pine-mid);
    box-shadow: var(--shadow-md);
}
.owpp-site.owpp-single-product .owpp-product-thumb.is-active {
    border-color: var(--pine) !important;
    box-shadow: 0 0 0 3px var(--mint-100), var(--shadow-sm);
}
.owpp-site.owpp-single-product .owpp-product-thumb img {
    object-fit: cover !important;
    object-position: center !important;
}

/* More useful SKU + Category presentation. */
.owpp-site.owpp-single-product .owpp-product-identifiers {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin: 16px 0 24px;
}
.owpp-site.owpp-single-product .owpp-product-identifiers > span {
    min-width: 0;
    padding: 12px 14px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--mint-50);
    color: var(--ink-soft);
    font-size: 11px;
    line-height: 1.5;
}
.owpp-site.owpp-single-product .owpp-product-identifiers strong {
    display: block;
    margin-bottom: 4px;
    color: var(--pine-dark);
    font: 700 10px var(--font-mono);
    letter-spacing: .06em;
    text-transform: uppercase;
}
.owpp-site.owpp-single-product .owpp-product-identifiers strong i {
    margin-right: 5px;
    color: var(--pine-mid);
}
.owpp-site.owpp-single-product .owpp-identifier-sku {
    border-left: 3px solid var(--amber) !important;
}
.owpp-site.owpp-single-product .owpp-identifier-category {
    border-left: 3px solid var(--pine) !important;
}

/* Brand-colour purchase controls. */
.owpp-site.owpp-single-product .owpp-product-quantity {
    border-color: var(--pine-mid);
    background: var(--mint-50);
}
.owpp-site.owpp-single-product .owpp-product-quantity .quantity-button,
.owpp-site.owpp-single-product .owpp-product-add {
    background: var(--pine) !important;
    color: #fff !important;
}
.owpp-site.owpp-single-product .owpp-product-quantity .quantity-button:hover,
.owpp-site.owpp-single-product .owpp-product-add:hover {
    background: var(--pine-dark) !important;
}

/* Four related products on desktop, then gracefully collapse. */
.owpp-site.owpp-single-product .owpp-related-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 18px;
}
.owpp-site.owpp-single-product .owpp-related-grid .product-card {
    min-width: 0;
    width: 100% !important;
}
.owpp-site.owpp-single-product .owpp-related-grid .product-image {
    height: 245px;
}
.owpp-site.owpp-single-product .owpp-related-grid .product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
.owpp-site.owpp-single-product .owpp-related-grid .quantity-button,
.owpp-site.owpp-single-product .owpp-related-grid .add-cart-button {
    background: var(--pine) !important;
    color: #fff !important;
    border-color: var(--pine) !important;
}
.owpp-site.owpp-single-product .owpp-related-grid .quantity-button:hover,
.owpp-site.owpp-single-product .owpp-related-grid .add-cart-button:hover {
    background: var(--pine-dark) !important;
    border-color: var(--pine-dark) !important;
}
.owpp-site.owpp-single-product .owpp-related-grid .quantity-control {
    border-color: rgba(31,77,61,.18) !important;
    background: var(--mint-50) !important;
}

/* Native WooCommerce review system, presented inside the custom design. */
.owpp-site.owpp-single-product .owpp-product-reviews {
    margin-top: 48px;
    padding: 30px;
    border: 1px solid var(--line);
    border-radius: 20px;
    background: var(--white);
    box-shadow: var(--shadow-sm);
}
.owpp-site.owpp-single-product .owpp-reviews-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    margin: 7px 0 24px;
    padding-bottom: 20px;
    border-bottom: 1px solid var(--line);
}
.owpp-site.owpp-single-product .owpp-reviews-heading h2 {
    margin: 0 0 6px;
    color: var(--pine-dark);
    font: 700 28px/1.15 var(--font-display);
}
.owpp-site.owpp-single-product .owpp-reviews-heading p {
    margin: 0;
    color: var(--ink-soft);
    font-size: 13px;
}
.owpp-site.owpp-single-product .owpp-review-summary {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    border-radius: 12px;
    background: var(--mint-50);
    white-space: nowrap;
}
.owpp-site.owpp-single-product .owpp-review-summary strong {
    color: var(--pine-dark);
    font-size: 22px;
}
.owpp-site.owpp-single-product .owpp-review-summary .stars {
    color: var(--amber);
    letter-spacing: 1px;
}
.owpp-site.owpp-single-product .owpp-native-reviews #reviews,
.owpp-site.owpp-single-product .owpp-native-reviews #comments {
    margin: 0;
}
.owpp-site.owpp-single-product .owpp-native-reviews #comments h2,
.owpp-site.owpp-single-product .owpp-native-reviews .comment-reply-title {
    color: var(--pine-dark);
    font-family: var(--font-display);
}
.owpp-site.owpp-single-product .owpp-native-reviews ol.commentlist {
    margin: 0 0 26px;
    padding: 0;
}
.owpp-site.owpp-single-product .owpp-native-reviews ol.commentlist li {
    padding: 18px 0 !important;
    border-bottom: 1px solid var(--line) !important;
}
.owpp-site.owpp-single-product .owpp-native-reviews .star-rating {
    color: var(--amber);
}
.owpp-site.owpp-single-product .owpp-native-reviews .comment-form-rating .stars a {
    color: var(--amber);
}
.owpp-site.owpp-single-product .owpp-native-reviews input[type="text"],
.owpp-site.owpp-single-product .owpp-native-reviews input[type="email"],
.owpp-site.owpp-single-product .owpp-native-reviews textarea,
.owpp-site.owpp-single-product .owpp-native-reviews select {
    width: 100%;
    border: 1px solid var(--line) !important;
    border-radius: 10px !important;
    background: var(--mint-50) !important;
    color: var(--ink) !important;
    padding: 11px 13px !important;
    box-shadow: none !important;
}
.owpp-site.owpp-single-product .owpp-native-reviews input:focus,
.owpp-site.owpp-single-product .owpp-native-reviews textarea:focus,
.owpp-site.owpp-single-product .owpp-native-reviews select:focus {
    outline: 0;
    border-color: var(--pine-mid) !important;
    box-shadow: 0 0 0 3px var(--mint-100) !important;
}
.owpp-site.owpp-single-product .owpp-native-reviews .form-submit .submit {
    border: 0 !important;
    border-radius: 11px !important;
    background: var(--pine) !important;
    color: #fff !important;
    padding: 12px 20px !important;
    font-weight: 800 !important;
}
.owpp-site.owpp-single-product .owpp-native-reviews .form-submit .submit:hover {
    background: var(--pine-dark) !important;
}


/* ========================================================================
   PRODUCT REVIEWS — review-only UI polish
   This block does not alter the rest of the approved v6.3.3 design.
   ======================================================================== */
.owpp-site.owpp-single-product .owpp-reviews-ui #comments { margin: 0; }
.owpp-site.owpp-single-product .owpp-review-notice {
    display:flex; align-items:flex-start; gap:12px; margin:0 0 20px; padding:14px 16px;
    border:1px solid var(--line); border-radius:12px; background:var(--mint-50); color:var(--ink);
}
.owpp-site.owpp-single-product .owpp-review-notice > i { margin-top:2px; color:var(--pine); }
.owpp-site.owpp-single-product .owpp-review-notice div { display:flex; flex-direction:column; gap:3px; }
.owpp-site.owpp-single-product .owpp-review-notice strong { color:var(--pine-dark); font-size:14px; }
.owpp-site.owpp-single-product .owpp-review-notice span { font-size:13px; color:var(--ink-soft); }
.owpp-site.owpp-single-product .owpp-review-notice-error { background:#fff8f6; border-color:rgba(190,70,45,.18); }
.owpp-site.owpp-single-product .owpp-review-notice-error > i { color:#b7462e; }
.owpp-site.owpp-single-product .owpp-review-list .comment_container { display:flex; align-items:flex-start; gap:14px; }
.owpp-site.owpp-single-product .owpp-review-list .comment_container img.avatar { width:52px !important; height:52px !important; min-width:52px; border-radius:50% !important; object-fit:cover; border:1px solid var(--line); margin:0 !important; }
.owpp-site.owpp-single-product .owpp-review-list .comment-text { flex:1; min-width:0; margin:0 !important; padding:0 !important; border:0 !important; }
.owpp-site.owpp-single-product .owpp-review-list .comment-text::before,
.owpp-site.owpp-single-product .owpp-review-list .comment-text::after { display:none !important; }
.owpp-site.owpp-single-product .owpp-review-list .star-rating { float:none !important; width:5.5em; margin:0 0 7px !important; color:var(--amber) !important; font-size:13px; }
.owpp-site.owpp-single-product .owpp-review-list .meta { margin:0 0 7px !important; color:var(--ink-soft) !important; font-size:12px !important; line-height:1.4; }
.owpp-site.owpp-single-product .owpp-review-list .meta .woocommerce-review__author { color:var(--pine-dark); font-size:14px; font-weight:800; }
.owpp-site.owpp-single-product .owpp-review-list .meta .woocommerce-review__dash { margin:0 4px; }
.owpp-site.owpp-single-product .owpp-review-list .description { color:var(--ink); font-size:14px; line-height:1.7; }
.owpp-site.owpp-single-product .owpp-review-list .description p { margin:0 !important; }
.owpp-site.owpp-single-product .owpp-review-list-header {
    display:flex; align-items:center; justify-content:space-between; gap:18px; margin:0 0 6px; padding:0 0 14px;
}
.owpp-site.owpp-single-product .owpp-review-list-kicker { display:block; margin-bottom:5px; color:var(--pine); font-size:10px; font-weight:800; letter-spacing:.13em; }
.owpp-site.owpp-single-product .owpp-review-list-header h3 { margin:0; color:var(--pine-dark); font:700 21px/1.25 var(--font-display); }
.owpp-site.owpp-single-product .owpp-review-count-badge {
    display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; padding:8px 11px; border-radius:999px;
    background:var(--mint-50); color:var(--pine-dark); font-size:12px; font-weight:800;
}
.owpp-site.owpp-single-product .owpp-native-reviews .owpp-review-list ol.commentlist { margin:0; padding:0; list-style:none; }
.owpp-site.owpp-single-product .owpp-native-reviews .owpp-review-list ol.commentlist > li {
    margin:0 !important; padding:20px 0 !important; border-bottom:1px solid var(--line) !important;
}
.owpp-site.owpp-single-product .owpp-native-reviews .owpp-review-list ol.commentlist > li:last-child { border-bottom:0 !important; }
.owpp-site.owpp-single-product .owpp-no-reviews {
    display:flex; align-items:center; gap:14px; margin:8px 0 24px; padding:18px; border:1px solid var(--line);
    border-radius:14px; background:var(--mint-50);
}
.owpp-site.owpp-single-product .owpp-no-reviews-icon { width:42px; height:42px; display:grid; place-items:center; flex:0 0 auto; border-radius:50%; background:var(--white); color:var(--pine); font-size:18px; }
.owpp-site.owpp-single-product .owpp-no-reviews h3 { margin:0 0 3px; color:var(--pine-dark); font:700 17px/1.2 var(--font-display); }
.owpp-site.owpp-single-product .owpp-no-reviews p { margin:0; color:var(--ink-soft); font-size:13px; }
.owpp-site.owpp-single-product .owpp-review-form-wrapper {
    margin-top:22px; padding-top:24px; border-top:1px solid var(--line);
}
.owpp-site.owpp-single-product .owpp-review-form .comment-reply-title { margin:0 0 18px !important; font:700 21px/1.25 var(--font-display); color:var(--pine-dark); }
.owpp-site.owpp-single-product .owpp-review-form form { margin:0; }
.owpp-site.owpp-single-product .owpp-review-form form .comment-form-author,
.owpp-site.owpp-single-product .owpp-review-form form .comment-form-email { width:calc(50% - 8px); display:inline-block; vertical-align:top; }
.owpp-site.owpp-single-product .owpp-review-form form .comment-form-author { margin-right:12px; }
.owpp-site.owpp-single-product .owpp-review-form form label { display:block; margin:0 0 7px; color:var(--ink); font-size:13px; font-weight:700; }
.owpp-site.owpp-single-product .owpp-review-form form .required { color:#b7462e; }
.owpp-site.owpp-single-product .owpp-review-form input[type="text"],
.owpp-site.owpp-single-product .owpp-review-form input[type="email"],
.owpp-site.owpp-single-product .owpp-review-form textarea,
.owpp-site.owpp-single-product .owpp-review-form select {
    width:100%; box-sizing:border-box; border:1px solid var(--line) !important; border-radius:11px !important;
    background:var(--mint-50) !important; color:var(--ink) !important; padding:12px 13px !important;
    box-shadow:none !important; font:inherit; transition:border-color .2s ease, box-shadow .2s ease;
}
.owpp-site.owpp-single-product .owpp-review-form textarea { min-height:150px; resize:vertical; line-height:1.55; }
.owpp-site.owpp-single-product .owpp-review-form input:focus,
.owpp-site.owpp-single-product .owpp-review-form textarea:focus,
.owpp-site.owpp-single-product .owpp-review-form select:focus {
    outline:0; border-color:var(--pine-mid) !important; box-shadow:0 0 0 3px var(--mint-100) !important;
}
.owpp-site.owpp-single-product .owpp-review-form .comment-form-rating { margin:0 0 16px; }
.owpp-site.owpp-single-product .owpp-review-form .comment-form-rating select { max-width:310px; }
.owpp-site.owpp-single-product .owpp-review-form .comment-form-comment { margin:0 0 16px; }
.owpp-site.owpp-single-product .owpp-review-form .form-submit { margin:0; text-align:right; }
.owpp-site.owpp-single-product .owpp-review-form .form-submit .submit {
    border:0 !important; border-radius:11px !important; background:var(--pine) !important; color:#fff !important;
    padding:12px 20px !important; font-weight:800 !important; cursor:pointer; transition:background .2s ease, transform .2s ease;
}
.owpp-site.owpp-single-product .owpp-review-form .form-submit .submit:hover { background:var(--pine-dark) !important; transform:translateY(-1px); }
.owpp-site.owpp-single-product .owpp-review-login-notice {
    display:flex; align-items:center; gap:10px; margin-top:22px; padding:13px 15px; border:1px solid var(--line);
    border-radius:11px; background:var(--mint-50); color:var(--ink-soft); font-size:13px;
}
.owpp-site.owpp-single-product .owpp-review-login-notice i { color:var(--pine); }
@media (max-width:600px) {
    .owpp-site.owpp-single-product .owpp-review-list-header { align-items:flex-start; }
    .owpp-site.owpp-single-product .owpp-review-list-header h3 { font-size:18px; }
    .owpp-site.owpp-single-product .owpp-review-count-badge { padding:7px 9px; }
    .owpp-site.owpp-single-product .owpp-review-form form .comment-form-author,
    .owpp-site.owpp-single-product .owpp-review-form form .comment-form-email { width:100%; display:block; margin-right:0; }
    .owpp-site.owpp-single-product .owpp-review-form .comment-form-rating select { max-width:none; }
    .owpp-site.owpp-single-product .owpp-review-form .form-submit { text-align:stretch; }
    .owpp-site.owpp-single-product .owpp-review-form .form-submit .submit { width:100%; }
}

/* Professional desktop navigation: CSS hover is authoritative, while JS
   keeps keyboard/accessibility state in sync. The small invisible bridges
   eliminate the hover-gap problem when moving into a submenu. */
@media (min-width: 801px) {
    .owpp-site .category-nav,
    .owpp-site .category-nav .container,
    .owpp-site .desktop-menu { overflow: visible !important; }
    .owpp-site .desktop-menu > li { position: relative; }
    .owpp-site .desktop-menu > li > .desktop-menu-link {
        min-height: 50px;
        padding: 0 18px;
        display: inline-flex;
        align-items: center;
        gap: 8px;
        border: 0 !important;
        border-bottom: 3px solid transparent !important;
        color: rgba(255,255,255,.92) !important;
        background: transparent !important;
        font-weight: 700;
    }
    .owpp-site .desktop-menu > li:hover > .desktop-menu-link,
    .owpp-site .desktop-menu > li:focus-within > .desktop-menu-link,
    .owpp-site .desktop-menu > li > .desktop-menu-link.active {
        color: #fff !important;
        border-bottom-color: var(--amber) !important;
        background: rgba(255,255,255,.07) !important;
    }
    .owpp-site .desktop-dropdown {
        top: calc(100% + 1px) !important;
        left: 0 !important;
        min-width: 285px !important;
        padding: 8px !important;
        border-radius: 0 !important;
        border: 1px solid rgba(18,51,40,.12) !important;
        box-shadow: 0 12px 28px rgba(15,44,34,.18) !important;
        background: #fff !important;
        transform: translateY(5px) !important;
        z-index: 99999 !important;
    }
    .owpp-site .desktop-dropdown::before {
        content: "";
        position: absolute;
        top: -9px;
        left: 0;
        right: 0;
        height: 10px;
        background: transparent;
    }
    .owpp-site .desktop-menu > li.has-dropdown:hover > .desktop-dropdown,
    .owpp-site .desktop-menu > li.has-dropdown:focus-within > .desktop-dropdown,
    .owpp-site .desktop-menu > li.has-dropdown.menu-open > .desktop-dropdown {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }
    .owpp-site .desktop-dropdown > li > .desktop-menu-link,
    .owpp-site .desktop-dropdown > li > .desktop-submenu-toggle,
    .owpp-site .desktop-dropdown > li > a {
        min-height: 44px;
        width: 100%;
        padding: 10px 16px !important;
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        border: 0 !important;
        border-radius: 4px !important;
        color: #184f86 !important;
        background: #fff !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        text-decoration: none !important;
        white-space: nowrap;
    }
    .owpp-site .desktop-dropdown > li:hover > a,
    .owpp-site .desktop-dropdown > li:hover > .desktop-submenu-toggle,
    .owpp-site .desktop-dropdown > li:focus-within > a,
    .owpp-site .desktop-dropdown > li:focus-within > .desktop-submenu-toggle,
    .owpp-site .desktop-dropdown > li.menu-open > .desktop-submenu-toggle {
        color: var(--pine-dark) !important;
        background: var(--mint-50) !important;
    }
    .owpp-site .desktop-dropdown .desktop-menu-chevron,
    .owpp-site .desktop-dropdown .desktop-submenu-toggle > i {
        flex: 0 0 auto;
        color: var(--pine) !important;
        font-size: 13px !important;
    }
    .owpp-site .desktop-dropdown .desktop-dropdown {
        top: -1px !important;
        left: calc(100% + 1px) !important;
        transform: translateX(5px) !important;
    }
    .owpp-site .desktop-dropdown .desktop-dropdown::before {
        top: 0;
        left: -9px;
        right: auto;
        width: 10px;
        height: 100%;
    }
    .owpp-site .desktop-dropdown .has-dropdown:hover > .desktop-dropdown,
    .owpp-site .desktop-dropdown .has-dropdown:focus-within > .desktop-dropdown,
    .owpp-site .desktop-dropdown .has-dropdown.menu-open > .desktop-dropdown {
        transform: translateX(0) !important;
    }
}

@media (max-width: 1000px) {
    .owpp-site.owpp-single-product .owpp-related-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .owpp-site.owpp-single-product .owpp-related-grid .product-image { height: 220px; }
}
@media (max-width: 600px) {
    .owpp-site.owpp-single-product .owpp-product-main-image,
    .owpp-site.owpp-single-product .owpp-product-main-image > img { height: 310px !important; min-height: 310px !important; }
    .owpp-site.owpp-single-product .owpp-product-summary h1 { font-size: clamp(28px, 8vw, 34px); line-height: 1.12; letter-spacing: -.4px; }
    .owpp-site.owpp-single-product .owpp-product-eyebrow { font-size: 9px; }
    .owpp-site.owpp-single-product .owpp-product-status-row { gap: 8px 14px; margin-bottom: 15px; }
    .owpp-site.owpp-single-product .owpp-product-price { padding: 14px 0; }
    .owpp-site.owpp-single-product .owpp-product-price .owpp-current-price,
    .owpp-site.owpp-single-product .owpp-product-price .woocommerce-Price-amount { font-size: 23px; }
    .owpp-site.owpp-single-product .owpp-product-identifiers { grid-template-columns: 1fr; }
    .owpp-site.owpp-single-product .owpp-product-fact { padding: 12px; }
    .owpp-site.owpp-single-product .owpp-product-content-grid { gap: 14px; }
    .owpp-site.owpp-single-product .owpp-product-reviews { margin-top: 30px; padding: 20px 16px; border-radius: 16px; }
    .owpp-site.owpp-single-product .owpp-reviews-heading { align-items: flex-start; flex-direction: column; gap: 12px; }
    .owpp-site.owpp-single-product .owpp-reviews-heading h2 { font-size: 24px; }
    .owpp-site.owpp-single-product .owpp-review-summary { width: 100%; justify-content: space-between; }
    .owpp-site.owpp-single-product .owpp-related-grid { grid-template-columns: 1fr; gap: 14px; }
    .owpp-site.owpp-single-product .owpp-related-grid .product-image { height: 230px; }
    .owpp-site.owpp-single-product .owpp-related-heading { gap: 10px; }
    .owpp-site.owpp-single-product .owpp-related-heading h2 { font-size: 24px; }
}


/* ================================================================
   v6.3.3 — FINAL DESKTOP MENU + CHECKOUT POLISH
   Only affects desktop navigation and WooCommerce block checkout.
   Existing archive/product/wishlist/search styles are untouched.
   ================================================================ */

/* ----------------------------------------------------------------
   DESKTOP NAVIGATION
   Hover-only multi-level dropdowns with a continuous pointer path.
   ---------------------------------------------------------------- */
@media (min-width: 801px) {
    .owpp-site .category-nav,
    .owpp-site .category-nav > .container,
    .owpp-site .desktop-menu,
    .owpp-site .desktop-menu > li,
    .owpp-site .desktop-dropdown,
    .owpp-site .desktop-dropdown > li {
        overflow: visible !important;
    }

    .owpp-site .category-nav {
        position: relative !important;
        z-index: 99990 !important;
    }

    .owpp-site .category-nav > .container {
        position: relative !important;
        z-index: 99991 !important;
    }

    .owpp-site .desktop-menu {
        position: relative !important;
        z-index: 99992 !important;
    }

    .owpp-site .desktop-menu > li,
    .owpp-site .desktop-dropdown > li {
        position: relative !important;
    }

    /* Top-level dropdown */
    .owpp-site .desktop-menu > li > .desktop-dropdown {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        width: max-content !important;
        min-width: 286px !important;
        max-width: min(420px, 90vw) !important;
        margin: 0 !important;
        padding: 8px !important;
        display: block !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateY(5px) !important;
        z-index: 99993 !important;
        background: #fff !important;
        border: 1px solid rgba(18,51,40,.13) !important;
        border-top: 2px solid var(--amber) !important;
        border-radius: 0 0 12px 12px !important;
        box-shadow: 0 14px 32px rgba(15,44,34,.18) !important;
    }

    .owpp-site .desktop-menu > li:hover > .desktop-dropdown,
    .owpp-site .desktop-menu > li:focus-within > .desktop-dropdown,
    .owpp-site .desktop-menu > li.menu-open > .desktop-dropdown {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateY(0) !important;
    }

    /* The transparent bridge prevents hover loss between levels. */
    .owpp-site .desktop-menu > li > .desktop-dropdown::before {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        right: 0 !important;
        top: -12px !important;
        height: 12px !important;
        background: transparent !important;
    }

    /* All nested levels open to the RIGHT, with zero dead-zone. */
    .owpp-site .desktop-dropdown .has-dropdown > .desktop-dropdown {
        position: absolute !important;
        top: -9px !important;
        left: 100% !important;
        width: max-content !important;
        min-width: 286px !important;
        max-width: min(420px, 90vw) !important;
        margin: 0 !important;
        padding: 8px !important;
        display: block !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateX(5px) !important;
        z-index: 99994 !important;
        background: #fff !important;
        border: 1px solid rgba(18,51,40,.13) !important;
        border-radius: 10px !important;
        box-shadow: 0 14px 32px rgba(15,44,34,.18) !important;
    }

    .owpp-site .desktop-dropdown .has-dropdown:hover > .desktop-dropdown,
    .owpp-site .desktop-dropdown .has-dropdown:focus-within > .desktop-dropdown,
    .owpp-site .desktop-dropdown .has-dropdown.menu-open > .desktop-dropdown {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
    }

    /* Horizontal bridge belongs to the parent LI, so moving right keeps it open. */
    .owpp-site .desktop-dropdown .has-dropdown::after {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        right: -12px !important;
        width: 12px !important;
        height: 100% !important;
        background: transparent !important;
    }

    /* Never let OceanWP button/link defaults distort submenu rows. */
    .owpp-site .desktop-dropdown > li > .desktop-menu-link,
    .owpp-site .desktop-dropdown > li > .desktop-submenu-toggle,
    .owpp-site .desktop-dropdown > li > a {
        width: 100% !important;
        min-height: 46px !important;
        margin: 0 !important;
        padding: 10px 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 18px !important;
        box-sizing: border-box !important;
        border: 0 !important;
        border-radius: 5px !important;
        color: #184f86 !important;
        background: #fff !important;
        font-size: 17px !important;
        font-weight: 500 !important;
        line-height: 1.25 !important;
        text-decoration: none !important;
        white-space: nowrap !important;
        text-align: left !important;
        cursor: pointer !important;
    }

    .owpp-site .desktop-dropdown > li > .desktop-menu-link:hover,
    .owpp-site .desktop-dropdown > li > .desktop-submenu-toggle:hover,
    .owpp-site .desktop-dropdown > li:hover > a,
    .owpp-site .desktop-dropdown > li:focus-within > a,
    .owpp-site .desktop-dropdown > li.menu-open > .desktop-submenu-toggle {
        color: #184f86 !important;
        background: #f3f8f6 !important;
    }

    .owpp-site .desktop-dropdown .desktop-menu-chevron {
        flex: 0 0 auto !important;
        margin-left: auto !important;
        color: #184f86 !important;
        font-size: 13px !important;
        transition: transform .18s ease !important;
    }

    .owpp-site .desktop-dropdown .desktop-submenu-toggle .desktop-menu-chevron {
        transform: rotate(-90deg) !important;
    }

    .owpp-site .desktop-dropdown .has-dropdown:hover > .desktop-submenu-toggle .desktop-menu-chevron,
    .owpp-site .desktop-dropdown .has-dropdown:focus-within > .desktop-submenu-toggle .desktop-menu-chevron,
    .owpp-site .desktop-dropdown .has-dropdown.menu-open > .desktop-submenu-toggle .desktop-menu-chevron {
        transform: rotate(0deg) !important;
    }

    /* Keep deeper levels usable instead of clipping at the viewport edge. */
    .owpp-site .desktop-dropdown .desktop-dropdown .desktop-dropdown {
        z-index: 99995 !important;
    }
}

/* ----------------------------------------------------------------
   WOOCOMMERCE BLOCK CHECKOUT — visual polish only
   ---------------------------------------------------------------- */
body.woocommerce-checkout .wc-block-checkout {
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 42px 24px 70px !important;
    box-sizing: border-box !important;
}

body.woocommerce-checkout .wc-block-checkout__main,
body.woocommerce-checkout .wc-block-checkout__sidebar {
    min-width: 0 !important;
}

body.woocommerce-checkout .wc-block-checkout__main {
    padding-right: 24px !important;
}

body.woocommerce-checkout .wc-block-checkout__sidebar {
    position: sticky !important;
    top: 25px !important;
}

/* Checkout sections */
body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step {
    margin: 0 0 18px !important;
    padding: 24px !important;
    border: 1px solid #dfe9e4 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 7px 24px rgba(15,44,34,.055) !important;
}

body.woocommerce-checkout .wc-block-components-checkout-step__heading-container {
    margin-bottom: 18px !important;
}

body.woocommerce-checkout .wc-block-components-checkout-step__title {
    margin: 0 !important;
    color: #143f33 !important;
    font-family: Georgia, "Times New Roman", serif !important;
    font-size: 23px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Inputs */
body.woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input,
body.woocommerce-checkout .wc-block-components-textarea {
    border: 1px solid #d4e1db !important;
    border-radius: 9px !important;
    background: #f8fbf9 !important;
    color: #183f35 !important;
    box-shadow: none !important;
}

body.woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wc-block-components-textarea:focus {
    border-color: #1f5b4b !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(31,91,75,.10) !important;
    outline: none !important;
}

/* Error/payment notice */
body.woocommerce-checkout .wc-block-components-notice-banner {
    border-radius: 10px !important;
}

/* Order summary */
body.woocommerce-checkout .wc-block-components-order-summary {
    border: 1px solid #dfe9e4 !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: 0 7px 24px rgba(15,44,34,.055) !important;
    overflow: hidden !important;
}

body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-panel__button,
body.woocommerce-checkout .wc-block-components-order-summary .wc-block-components-totals-wrapper {
    padding-left: 20px !important;
    padding-right: 20px !important;
}

/* Order total */
body.woocommerce-checkout .wc-block-components-totals-item__label,
body.woocommerce-checkout .wc-block-components-totals-item__value {
    color: #143f33 !important;
}

body.woocommerce-checkout .wc-block-components-totals-item__value {
    font-weight: 700 !important;
}

/* Place order */
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wc-block-checkout__actions button {
    min-height: 52px !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: var(--pine, #1f5b4b) !important;
    color: #fff !important;
    font-weight: 800 !important;
    box-shadow: none !important;
    transition: transform .18s ease, background .18s ease !important;
}

body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wc-block-checkout__actions button:hover {
    background: var(--pine-dark, #143f33) !important;
    transform: translateY(-1px) !important;
}

/* Mobile checkout */
@media (max-width: 782px) {
    body.woocommerce-checkout .wc-block-checkout {
        padding: 24px 14px 50px !important;
    }

    body.woocommerce-checkout .wc-block-checkout__main {
        padding-right: 0 !important;
    }

    body.woocommerce-checkout .wc-block-checkout__sidebar {
        position: static !important;
        margin-top: 18px !important;
    }

    body.woocommerce-checkout .wc-block-checkout__main .wc-block-components-checkout-step {
        padding: 18px !important;
        border-radius: 13px !important;
    }

    body.woocommerce-checkout .wc-block-components-checkout-step__title {
        font-size: 21px !important;
    }
}

/* Review-only: reviewer identity, verification and readable review cards. */
.owpp-site.owpp-single-product .owpp-review-list .commentlist > li.review { padding:24px 0 !important; }
.owpp-site.owpp-single-product .owpp-review-list .owpp-review-verified { display:inline-flex; align-items:center; gap:4px; margin-left:8px; color:var(--pine); font-size:11px; font-weight:700; }
.owpp-site.owpp-single-product .owpp-review-list .owpp-review-verified i { font-size:11px; }
.owpp-site.owpp-single-product .owpp-review-list .woocommerce-review__published { color:var(--ink-soft); }
@media (max-width:640px) {
    .owpp-site.owpp-single-product .owpp-review-list .owpp-review-verified { display:block; margin:4px 0 0; }
}
/* Header responsive breakpoint control.
 * Default: switch to the mobile-menu header at 1200px.
 * 1200px and below: hide desktop navigation, show hamburger and desktop actions.
 * 800px and below: preserve the existing compact two-row mobile header.
 */
@media (min-width: 801px) and (max-width: 1200px) {
    .owpp-site .header-main {
        grid-template-columns: minmax(140px, 150px) minmax(220px, 1fr) auto auto !important;
        gap: 16px !important;
        align-items: center !important;
    }

    .owpp-site .category-nav {
        display: none !important;
    }

    .owpp-site .mobile-header-actions {
        display: contents !important;
        order: 3 !important;
    }

    .owpp-site .mobile-header-action {
        display: none !important;
    }

    .owpp-site .mobile-menu-toggle {
        display: flex !important;
        order: 4 !important;
        width: 42px !important;
        height: 42px !important;
        flex: 0 0 42px !important;
        margin: 0 !important;
    }

    .owpp-site .header-actions {
        display: flex !important;
        order: 4 !important;
        align-items: stretch !important;
        height: 52px !important;
    }
}
