:root {
            scroll-behavior: smooth;
        }

        .product-detail-page {
            --pd-yellow: #FFD700;
            --pd-black: #111315;
            --pd-text: #17191c;
            --pd-muted: #626b76;
            --pd-light: #8a94a0;
            --pd-white: #ffffff;
            --pd-soft: #f7f7f7;
            --pd-gold: #FFD700;
            --pd-shadow-sm: 0 14px 38px rgba(17, 19, 21, 0.07);
            --pd-shadow-md: 0 24px 70px rgba(17, 19, 21, 0.11);
            --pd-shadow-lg: 0 36px 110px rgba(17, 19, 21, 0.16);
            position: relative;
            overflow: hidden;
            min-height: 100vh;
            color: var(--pd-text);
            background: radial-gradient(circle at 8% 0%, rgba(255, 215, 0, 0.10), transparent 30rem), radial-gradient(circle at 94% 8%, rgba(17, 19, 21, 0.05), transparent 30rem), linear-gradient(180deg, #ffffff 0%, #f7f7f7 48%, #ffffff 100%);
        }

            .product-detail-page::before {
                content: "";
                position: fixed;
                inset: 0;
                pointer-events: none;
                z-index: 0;
                background-image: linear-gradient(rgba(17, 19, 21, 0.024) 1px, transparent 1px), linear-gradient(90deg, rgba(17, 19, 21, 0.024) 1px, transparent 1px);
                background-size: 54px 54px;
                opacity: 0.4;
                mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.72), transparent 72%);
            }

        .pd-shell {
            width: min(92vw, 1320px);
            margin-inline: auto;
            position: relative;
            z-index: 2;
        }

        .pd-hero {
            position: relative;
            overflow: hidden;
            min-height: clamp(245px, 30vw, 390px);
            display: flex;
            align-items: center;
            color: #ffffff;
            background: radial-gradient(circle at 18% 18%, rgba(255, 215, 0, 0.15), transparent 24rem), linear-gradient(135deg, #2f3338 0%, #25282d 48%, #17191c 100%);
            margin-bottom: clamp(1.5rem, 3vw, 2.4rem);
            box-shadow: 0 16px 46px rgba(0, 0, 0, 0.16);
            isolation: isolate;
        }

            .pd-hero::after {
                content: "";
                position: absolute;
                left: 0;
                right: 0;
                bottom: 0;
                height: 4px;
                background: var(--pd-yellow);
                box-shadow: 0 -10px 30px rgba(255, 215, 0, 0.22);
                z-index: 5;
            }

        .pd-hero-bg {
            position: absolute;
            inset: 0;
            z-index: 0;
            background-image: url('@productImage');
            background-size: cover;
            background-position: center;
            background-repeat: no-repeat;
            opacity: 0.4;
            transform: scale(1.04);
            filter: saturate(1.03) contrast(1.04) brightness(0.92);
            animation: pdHeroImageFloat 8s ease-out both;
        }

            .pd-hero-bg::before {
                content: "";
                position: absolute;
                inset: 0;
                background: linear-gradient(90deg, rgba(31, 34, 38, 0.94) 0%, rgba(31, 34, 38, 0.70) 52%, rgba(31, 34, 38, 0.38) 100%), radial-gradient(circle at 16% 20%, rgba(255, 215, 0, 0.18), transparent 22rem);
            }

        .pd-hero-content {
            position: relative;
            z-index: 4;
            width: 100%;
            padding: clamp(2.2rem, 4.2vw, 3.6rem) 0 clamp(2rem, 3.8vw, 3.2rem);
        }

        .pd-hero-grid {
            display: grid;
            grid-template-columns: minmax(0, 1fr) minmax(210px, 285px);
            gap: clamp(1.1rem, 3vw, 2.2rem);
            align-items: center;
        }

        .pd-hero-copy {
            max-width: 860px;
            animation: pdFadeUp 0.78s cubic-bezier(0.22, 1, 0.36, 1) both;
        }

        .pd-breadcrumb .breadcrumb {
            margin-bottom: 0.9rem;
            --bs-breadcrumb-divider-color: rgba(255, 215, 0, 0.76);
        }

        .pd-breadcrumb .breadcrumb-item,
        .pd-breadcrumb .breadcrumb-item.active {
            color: rgba(255, 255, 255, 0.78);
        }

            .pd-breadcrumb .breadcrumb-item a {
                color: var(--pd-yellow);
                text-decoration: none;
                font-weight: 850;
            }

                .pd-breadcrumb .breadcrumb-item a:hover,
                .pd-breadcrumb .breadcrumb-item a:focus {
                    color: #ffffff;
                }

        .pd-kicker,
        .pd-section-label {
            display: inline-flex;
            align-items: center;
            gap: 0.52rem;
            width: fit-content;
            margin-bottom: 0.8rem;
            padding: 0.48rem 0.82rem;
            border-radius: 999px;
            border: 1px solid rgba(255, 215, 0, 0.36);
            background: rgba(255, 215, 0, 0.12);
            color: var(--pd-yellow);
            font-size: 0.72rem;
            font-weight: 950;
            letter-spacing: 0.13em;
            text-transform: uppercase;
        }

        .pd-section-label {
            color: var(--pd-gold);
        }

        .pd-hero-title {
            margin: 0;
            color: #ffffff;
            max-width: 820px;
            font-size: clamp(1.9rem, 4.2vw, 4.35rem);
            font-weight: 950;
            line-height: 0.98;
            letter-spacing: -0.062em;
            text-wrap: balance;
            text-shadow: 0 16px 40px rgba(0, 0, 0, 0.32);
        }

        .pd-hero-subtitle {
            max-width: 700px;
            margin: 0.8rem 0 0;
            color: rgba(255, 255, 255, 0.86);
            font-size: clamp(0.94rem, 0.9rem + 0.2vw, 1.05rem);
            line-height: 1.62;
        }

        .pd-hero-actions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.72rem;
            margin-top: 1rem;
        }

        .pd-btn {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
            min-height: 2.8rem;
            padding: 0.7rem 1.08rem;
            border-radius: 999px;
            border: 0;
            text-decoration: none;
            font-weight: 900;
            transition: transform 0.24s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.24s ease, background-color 0.24s ease, color 0.24s ease;
        }

        .pd-btn-primary {
            color: #101010;
            background: var(--pd-yellow);
            box-shadow: 0 15px 36px rgba(255, 215, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.42);
        }

            .pd-btn-primary:hover,
            .pd-btn-primary:focus {
                color: #050505;
                background: var(--pd-yellow);
                transform: translateY(-3px);
                box-shadow: 0 22px 52px rgba(255, 215, 0, 0.38), inset 0 1px 0 rgba(255, 255, 255, 0.54);
            }

        .pd-btn-secondary {
            color: #ffffff;
            border: 1px solid rgba(255, 255, 255, 0.24);
            background: rgba(255, 255, 255, 0.08);
            backdrop-filter: blur(14px);
            -webkit-backdrop-filter: blur(14px);
        }

            .pd-btn-secondary:hover,
            .pd-btn-secondary:focus {
                color: #101010;
                background: var(--pd-yellow);
                border-color: var(--pd-yellow);
                transform: translateY(-3px);
            }

        .pd-hero-card {
            position: relative;
            overflow: hidden;
            padding: 1rem;
            border-radius: 24px;
            background: radial-gradient(circle at 82% 0%, rgba(255, 215, 0, 0.18), transparent 8rem), linear-gradient(180deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.04));
            box-shadow: 0 24px 60px rgba(0, 0, 0, 0.30);
            color: #ffffff;
            backdrop-filter: blur(16px);
            -webkit-backdrop-filter: blur(16px);
            animation: pdScaleIn 0.78s cubic-bezier(0.22, 1, 0.36, 1) 0.08s both;
            transition: transform 0.42s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.42s ease;
        }

            .pd-hero-card:hover {
                transform: translateY(-7px);
                box-shadow: 0 30px 76px rgba(0, 0, 0, 0.36);
            }

        .pd-hero-icon {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 3rem;
            height: 3rem;
            margin-bottom: 0.75rem;
            border-radius: 18px;
            color: #101010;
            background: var(--pd-yellow);
            box-shadow: 0 14px 34px rgba(255, 215, 0, 0.28);
            font-size: 1.2rem;
        }

        .pd-hero-card strong {
            display: block;
            color: #ffffff;
            font-size: 1.08rem;
            font-weight: 950;
            line-height: 1.1;
            letter-spacing: -0.035em;
        }

        .pd-hero-card span {
            display: block;
            margin-top: 0.45rem;
            color: rgba(255, 255, 255, 0.74);
            font-size: 0.82rem;
            line-height: 1.45;
            font-weight: 700;
        }

        .pd-main {
            position: relative;
            z-index: 2;
            padding-bottom: clamp(2.6rem, 5vw, 4.2rem);
        }

        .pd-detail-grid {
            display: grid;
            grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
            gap: clamp(1rem, 2.8vw, 2.2rem);
            align-items: stretch;
        }

        .pd-media-card,
        .pd-info-card,
        .pd-rich-card,
        .pd-spec-card,
        .pd-related-card {
            position: relative;
            overflow: hidden;
            border: 0;
            border-radius: 32px;
            background: radial-gradient(circle at 96% 0%, rgba(255, 215, 0, 0.11), transparent 12rem), linear-gradient(180deg, #ffffff 0%, #f8f8f6 100%);
            box-shadow: 0 20px 60px rgba(17, 19, 21, 0.08), inset 0 1px 0 rgba(255, 255, 255, 0.95);
            isolation: isolate;
            transition: transform 0.44s cubic-bezier(.16, 1, .3, 1), box-shadow 0.44s ease;
        }

            .pd-media-card:hover,
            .pd-info-card:hover,
            .pd-rich-card:hover,
            .pd-spec-card:hover,
            .pd-related-card:hover {
                transform: translateY(-8px);
                box-shadow: 0 34px 96px rgba(17, 19, 21, 0.14), 0 16px 42px rgba(255, 215, 0, 0.12), inset 0 1px 0 rgba(255, 255, 255, 1);
            }

            .pd-media-card::before,
            .pd-info-card::before,
            .pd-rich-card::before,
            .pd-spec-card::before,
            .pd-related-card::before {
                content: "";
                position: absolute;
                inset: 0 0 auto;
                height: 5px;
                background: var(--pd-yellow);
                z-index: 5;
            }

        .pd-media-card {
            padding: 0.75rem;
            animation: pdRevealLeft 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
        }

        .pd-image-wrap {
            position: relative;
            overflow: hidden;
            min-height: clamp(320px, 34vw, 455px);
            border-radius: 26px;
            background: radial-gradient(circle at center, rgba(255, 215, 0, 0.14), transparent 56%), linear-gradient(135deg, #ffffff, #f2f2f2);
        }

            .pd-image-wrap img {
                display: block;
                width: 100%;
                height: clamp(320px, 34vw, 455px);
                object-fit: cover;
                object-position: center;
                transform: scale(1.002);
                transition: transform 0.9s cubic-bezier(.16, 1, .3, 1), filter 0.36s ease;
            }

        .pd-media-card:hover .pd-image-wrap img {
            transform: scale(1.06);
            filter: saturate(1.06) contrast(1.04) brightness(1.02);
        }

        .pd-placeholder {
            min-height: clamp(320px, 34vw, 455px);
            display: grid;
            place-items: center;
            color: var(--pd-yellow);
            background: radial-gradient(circle at center, rgba(255, 215, 0, 0.16), transparent 55%), linear-gradient(135deg, #3a3e44, #292c30);
            font-size: clamp(3rem, 7vw, 5rem);
        }

        .pd-info-card {
            padding: clamp(1.25rem, 2.5vw, 2rem);
            display: flex;
            flex-direction: column;
            justify-content: center;
            animation: pdRevealRight 0.9s cubic-bezier(0.16, 1, 0.3, 1) both;
        }

        .pd-title-main {
            margin: 0;
            color: var(--pd-black);
            font-size: clamp(1.8rem, 3.6vw, 3.45rem);
            font-weight: 950;
            line-height: 0.98;
            letter-spacing: -0.065em;
            text-wrap: balance;
        }

            .pd-title-main::after,
            .pd-related-title::after,
            .pd-rich-title::after,
            .pd-spec-title::after {
                content: "";
                display: block;
                width: 5rem;
                height: 4px;
                margin-top: 0.8rem;
                border-radius: 999px;
                background: var(--pd-yellow);
                box-shadow: 0 10px 28px rgba(255, 215, 0, 0.24);
            }

        .pd-pill {
            display: inline-flex;
            align-items: center;
            gap: 0.45rem;
            width: fit-content;
            padding: 0.46rem 0.7rem;
            border-radius: 999px;
            background: rgba(255, 215, 0, 0.12);
            color: var(--pd-gold);
            font-size: 0.79rem;
            font-weight: 900;
            text-decoration: none;
            border: 0;
        }

        .pd-meta-row {
            display: flex;
            flex-wrap: wrap;
            gap: 0.55rem;
            margin-top: 0.95rem;
        }

        .pd-description-lead {
            margin-top: 1rem;
            margin-bottom: 0;
            color: #4f565e;
            font-size: clamp(0.97rem, 0.94rem + 0.16vw, 1.05rem);
            line-height: 1.7;
            font-weight: 500;
        }

        .pd-actions-row {
            display: flex;
            flex-wrap: wrap;
            gap: 0.65rem;
            margin-top: 1.05rem;
        }

        .pd-rich-card,
        .pd-spec-card {
            margin-top: clamp(1rem, 2.5vw, 1.8rem);
            padding: clamp(1.3rem, 2.8vw, 2.2rem);
            animation: pdFadeUp 0.82s cubic-bezier(0.22, 1, 0.36, 1) 0.08s both;
        }

            .pd-rich-card::after,
            .pd-spec-card::after {
                content: "";
                position: absolute;
                width: 17rem;
                height: 17rem;
                right: -8.5rem;
                top: -8.5rem;
                border-radius: 999px;
                background: rgba(255, 215, 0, 0.10);
                z-index: -1;
                pointer-events: none;
            }

        .pd-rich-head,
        .pd-spec-head {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 1rem;
            margin-bottom: 1rem;
        }

        .pd-rich-title-wrap,
        .pd-spec-title-wrap {
            min-width: 0;
        }

        .pd-rich-title,
        .pd-spec-title {
            margin: 0;
            color: var(--pd-black);
            font-size: clamp(1.45rem, 2.8vw, 2.6rem);
            font-weight: 950;
            line-height: 1;
            letter-spacing: -0.055em;
            text-wrap: balance;
        }

        .pd-rich-icon,
        .pd-spec-icon {
            flex: 0 0 auto;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            width: 3.25rem;
            height: 3.25rem;
            border-radius: 20px;
            color: #101010;
            background: var(--pd-yellow);
            box-shadow: 0 14px 34px rgba(255, 215, 0, 0.28), inset 0 1px 0 rgba(255, 255, 255, 0.42);
        }

        .pd-content-text {
            color: var(--pd-muted);
            line-height: 1.85;
            font-size: 0.98rem;
            max-width: 1040px;
        }

            .pd-content-text p {
                margin-bottom: 0.85rem;
            }

                .pd-content-text p:last-child {
                    margin-bottom: 0;
                }

            .pd-content-text strong {
                color: var(--pd-black);
            }

            .pd-content-text a {
                color: var(--pd-gold);
                font-weight: 850;
                text-underline-offset: 0.2em;
            }

            .pd-content-text ul,
            .pd-content-text ol {
                padding-left: 1.25rem;
            }

            .pd-content-text li {
                margin-bottom: 0.55rem;
            }

        .pd-mini-spec {
            color: var(--pd-muted);
            line-height: 1.8;
            margin-top: 1rem;
        }

            .pd-mini-spec p {
                margin-bottom: 0.55rem;
            }

                .pd-mini-spec p:last-child {
                    margin-bottom: 0;
                }

        .pd-related-section {
            margin-top: clamp(2.2rem, 4.5vw, 3.6rem);
            padding-top: clamp(1.9rem, 4vw, 3rem);
            position: relative;
        }

            .pd-related-section::before {
                content: "";
                position: absolute;
                inset: 0 8% auto;
                height: 1px;
                background: linear-gradient(90deg, transparent, rgba(255, 215, 0, 0.52), transparent);
            }

        .pd-related-head {
            max-width: 820px;
            margin-bottom: clamp(1rem, 2vw, 1.6rem);
        }

        .pd-related-title {
            margin: 0;
            color: var(--pd-black);
            font-size: clamp(1.85rem, 3.7vw, 3.2rem);
            font-weight: 950;
            line-height: 1;
            letter-spacing: -0.06em;
        }

            .pd-related-title span {
                color: var(--pd-gold);
            }

        .pd-related-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: clamp(0.9rem, 1.8vw, 1.25rem);
        }

        .pd-related-card {
            display: flex;
            flex-direction: column;
            min-height: 100%;
            border-radius: 26px;
        }

        .pd-related-image {
            position: relative;
            overflow: hidden;
            height: 170px;
            background: radial-gradient(circle at center, rgba(255, 215, 0, 0.14), transparent 56%), #ffffff;
        }

            .pd-related-image img {
                display: block;
                width: 100%;
                height: 100%;
                object-fit: cover;
                transition: transform 0.82s cubic-bezier(.16, 1, .3, 1), filter 0.34s ease;
            }

        .pd-related-card:hover .pd-related-image img {
            transform: scale(1.08);
            filter: saturate(1.06) contrast(1.04);
        }

        .pd-related-placeholder {
            height: 100%;
            display: grid;
            place-items: center;
            color: var(--pd-yellow);
            background: linear-gradient(135deg, #ffffff, #f7f7f7);
            font-size: 2.4rem;
        }

        .pd-related-body {
            display: flex;
            flex-direction: column;
            flex: 1 1 auto;
            padding: 1rem;
        }

        .pd-related-name {
            margin: 0;
            color: var(--pd-black);
            font-size: 1.05rem;
            line-height: 1.18;
            font-weight: 950;
            letter-spacing: -0.035em;
        }

        .pd-related-category {
            margin: 0.5rem 0 0.8rem;
            color: var(--pd-gold);
            font-size: 0.78rem;
            font-weight: 950;
            letter-spacing: 0.12em;
            text-transform: uppercase;
        }

        .pd-related-body .pd-btn {
            width: 100%;
            margin-top: auto;
            min-height: 2.55rem;
            font-size: 0.86rem;
        }

        @keyframes pdFadeUp {
            from

        {
            opacity: 0;
            transform: translateY(24px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }

        }

        @keyframes pdRevealLeft {
            from

        {
            opacity: 0;
            transform: translateX(-30px) scale(0.985);
            filter: blur(8px);
        }

        to {
            opacity: 1;
            transform: translateX(0) scale(1);
            filter: blur(0);
        }

        }

        @keyframes pdRevealRight {
            from

        {
            opacity: 0;
            transform: translateX(30px) scale(0.985);
            filter: blur(8px);
        }

        to {
            opacity: 1;
            transform: translateX(0) scale(1);
            filter: blur(0);
        }

        }

        @keyframes pdScaleIn {
            from

        {
            opacity: 0;
            transform: translateY(16px) scale(0.96);
        }

        to {
            opacity: 1;
            transform: translateY(0) scale(1);
        }

        }

        @keyframes pdHeroImageFloat {
            from

        {
            transform: scale(1.075) translateY(10px);
        }

        to {
            transform: scale(1.04) translateY(0);
        }

        }

        .product-detail-page a:focus-visible {
            outline: 3px solid rgba(255, 215, 0, 0.55);
            outline-offset: 3px;
            border-radius: 10px;
        }

        @media (max-width: 1199.98px) {
            .pd-related-grid

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

        }

        @media (max-width: 991.98px) {
            .pd-hero-grid, .pd-detail-grid

        {
            grid-template-columns: 1fr;
        }

        .pd-hero-card {
            max-width: 360px;
        }

        .pd-info-card {
            justify-content: flex-start;
        }

        .pd-image-wrap,
        .pd-image-wrap img,
        .pd-placeholder {
            min-height: 340px;
            height: 340px;
        }

        }

        @media (max-width: 767.98px) {
            .pd-shell

        {
            width: 100%;
            padding-inline: 1rem;
        }

        .pd-hero {
            min-height: auto;
        }

        .pd-hero-content {
            padding: 2rem 0;
        }

        .pd-hero-copy,
        .pd-info-card,
        .pd-related-head,
        .pd-rich-card,
        .pd-spec-card {
            text-align: center;
        }

        .pd-breadcrumb .breadcrumb {
            justify-content: center;
        }

        .pd-kicker,
        .pd-section-label,
        .pd-meta-row {
            margin-inline: auto;
            justify-content: center;
        }

        .pd-hero-card {
            max-width: none;
        }

        .pd-hero-subtitle {
            margin-inline: auto;
        }

        .pd-hero-actions,
        .pd-actions-row {
            justify-content: center;
        }

        .pd-btn {
            width: 100%;
        }

        .pd-title-main::after,
        .pd-related-title::after,
        .pd-rich-title::after,
        .pd-spec-title::after {
            margin-inline: auto;
        }

        .pd-image-wrap,
        .pd-image-wrap img,
        .pd-placeholder {
            min-height: 260px;
            height: 260px;
        }

        .pd-info-card {
            padding: 1.15rem;
        }

        .pd-rich-head,
        .pd-spec-head {
            flex-direction: column-reverse;
            justify-content: center;
        }

        .pd-content-text,
        .pd-mini-spec {
            text-align: left;
        }

        .pd-related-grid {
            grid-template-columns: 1fr;
        }

        }

        @media (prefers-reduced-motion: reduce) {
            : root

        {
            scroll-behavior: auto;
        }

        *,
        *::before,
        *::after {
            animation-duration: 0.01ms !important;
            animation-iteration-count: 1 !important;
            transition-duration: 0.01ms !important;
            scroll-behavior: auto !important;
        }

        }
