@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap");

:root {
    --royal-blue-950: #022c22;
    --royal-blue-900: #064e3b;
    --royal-blue-800: #065f46;
    --royal-blue-700: #047857;
    --royal-blue-600: #059669;
    --royal-gold-500: #f4c430;
    --royal-gold-400: #ffd84d;
    --royal-gold-300: #ffeeb3;
    --royal-cream: #f7f9f3;
    --royal-ink: #0f2f25;
    --royal-text-soft: #d8f5e9;
    --royal-card: rgba(255, 255, 255, 0.94);
    --royal-shadow: 0 18px 50px rgba(6, 78, 59, 0.14);
    --royal-shadow-strong: 0 26px 70px rgba(6, 78, 59, 0.2);
    --royal-border: rgba(6, 120, 87, 0.14);
    --royal-gold-gradient: linear-gradient(135deg, #fff9e6 0%, #ffd84d 38%, #d4a017 100%);
    --royal-blue-gradient: linear-gradient(135deg, #022c22 0%, #065f46 52%, #059669 100%);
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "Manrope", "Segoe UI", sans-serif !important;
    color: var(--royal-ink);
    background:
        radial-gradient(circle at top right, rgba(255, 215, 106, 0.14), transparent 22%),
        linear-gradient(180deg, #f4fbf7 0%, #eefcf5 42%, #f7f9f3 100%);
}

h1,
h2,
h3,
h4,
.font-serif,
.royal-heading {
    font-family: "Cormorant Garamond", Georgia, serif !important;
    letter-spacing: 0.02em;
}

a,
button,
input,
textarea,
select {
    transition: all 0.28s ease;
}

.promo-bar,
.main-header,
.modern-footer,
.breadcrumbs_area,
.royal-band,
.royal-surface-dark {
    position: relative;
    overflow: hidden;
}

.promo-bar::before,
.main-header::before,
.modern-footer::before,
.breadcrumbs_area::before,
.royal-band::before,
.royal-surface-dark::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(118deg, transparent 0%, transparent 17%, rgba(255, 215, 106, 0.95) 18%, rgba(255, 215, 106, 0.2) 20%, transparent 22%),
        linear-gradient(292deg, transparent 0%, transparent 70%, rgba(255, 215, 106, 0.92) 71%, rgba(255, 215, 106, 0.24) 73%, transparent 76%);
    opacity: 0.75;
    pointer-events: none;
}

.promo-bar > *,
.main-header > *,
.modern-footer > *,
.breadcrumbs_area > *,
.royal-band > *,
.royal-surface-dark > * {
    position: relative;
    z-index: 1;
}

.promo-bar {
    background: linear-gradient(90deg, #064e3b 0%, #065f46 48%, #047857 100%) !important;
    box-shadow: 0 10px 30px rgba(6, 78, 59, 0.18);
}

.promo-bar a,
.promo-bar marquee,
.promo-bar span {
    color: #fff5cf !important;
}

.main-header {
    background: linear-gradient(180deg, rgba(6, 78, 59, 0.96) 0%, rgba(6, 95, 70, 0.93) 100%) !important;
    box-shadow: 0 14px 36px rgba(6, 78, 59, 0.2) !important;
    border-bottom: 1px solid rgba(244, 196, 48, 0.24);
}

.main-header .logo-section img {
    filter: drop-shadow(0 10px 24px rgba(255, 215, 106, 0.16));
}

.search-input,
.mobile-search-bar .search-input {
    background: rgba(255, 255, 255, 0.96) !important;
    border: 1.5px solid rgba(255, 215, 106, 0.32) !important;
    color: #102554 !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9);
}

.search-input:focus,
.mobile-search-bar .search-input:focus {
    border-color: var(--royal-gold-500) !important;
    box-shadow: 0 0 0 4px rgba(231, 185, 62, 0.16) !important;
}

.search-icon,
.search-input:focus ~ .search-icon,
.search-input:not(:placeholder-shown) ~ .search-icon {
    color: #0e2d67 !important;
}

.search-btn,
.newsletter-btn,
.coupon-apply,
.coupon-apply-btn,
.apply-coupon-btn,
.place-order-btn-black {
    background: var(--royal-gold-gradient) !important;
    color: #102554 !important;
    border: 1px solid rgba(255, 245, 207, 0.45) !important;
    box-shadow: 0 12px 28px rgba(201, 143, 22, 0.28) !important;
}

.search-btn:hover,
.newsletter-btn:hover,
.coupon-apply:hover,
.coupon-apply-btn:hover,
.apply-coupon-btn:hover,
.place-order-btn-black:hover {
    transform: translateY(-2px) scale(1.02);
    box-shadow: 0 18px 34px rgba(201, 143, 22, 0.34) !important;
}

.header-icon,
.mobile-menu-toggle,
.mobile-search-toggle {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 215, 106, 0.2) !important;
    color: #fff5cf !important;
    backdrop-filter: blur(12px);
}

.header-icon i,
.mobile-menu-toggle i,
.mobile-search-toggle i {
    color: #fff5cf !important;
}

.header-icon:hover,
.mobile-menu-toggle:hover,
.mobile-search-toggle:hover {
    background: rgba(255, 215, 106, 0.16) !important;
    border-color: rgba(255, 215, 106, 0.45) !important;
    transform: translateY(-2px);
}

.badge {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
    font-weight: 800 !important;
    box-shadow: 0 8px 20px rgba(231, 185, 62, 0.3);
}

.nav-menu {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.97) 0%, rgba(245, 248, 255, 0.95) 100%) !important;
    border-radius: 0 0 28px 28px;
    box-shadow: 0 18px 36px rgba(7, 19, 48, 0.08);
    border: 1px solid rgba(19, 52, 124, 0.08);
    border-top: none;
}

.nav-link,
.mobile-nav-link,
.dropdown-menu a,
.dropdown-menu-header a {
    color: #0f2f25 !important;
}

.nav-link:hover,
.mobile-nav-link:hover,
.dropdown-menu a:hover,
.dropdown-menu-header a:hover {
    color: #d4a017 !important;
}

.nav-link i,
.mobile-nav-link i {
    color: var(--royal-gold-500) !important;
}

.dropdown-menu,
.dropdown-menu-header,
.mobile-nav-menu {
    background: rgba(255, 255, 255, 0.98) !important;
    border: 1px solid rgba(19, 52, 124, 0.09) !important;
    box-shadow: var(--royal-shadow) !important;
}

.mobile-nav-menu {
    background:
        radial-gradient(circle at top right, rgba(255, 215, 106, 0.14), transparent 30%),
        linear-gradient(180deg, #fefefe 0%, #eef4ff 100%) !important;
}

.modern-footer {
    background: linear-gradient(145deg, #022c22 0%, #064e3b 46%, #065f46 100%) !important;
    color: var(--royal-text-soft) !important;
    box-shadow: 0 -16px 40px rgba(6, 78, 59, 0.2);
}

.footer-col h4,
.newsletter-section h4,
.social-link,
.app-button,
.modern-footer .contact-info i {
    color: #fff4c8 !important;
}

.footer-col h4:after,
.footer-col ul li a:before {
    background: var(--royal-gold-gradient) !important;
}

.footer-col ul li a,
.contact-info,
.contact-info a,
.copyright,
.modern-footer p {
    color: #d5e1ff !important;
}

.footer-col ul li a:hover,
.contact-info a:hover {
    color: #ffd76a !important;
}

.newsletter-section {
    background:
        radial-gradient(circle at top left, rgba(255, 255, 255, 0.18), transparent 35%),
        linear-gradient(135deg, rgba(9, 30, 72, 0.96) 0%, rgba(19, 52, 124, 0.95) 58%, rgba(33, 80, 182, 0.94) 100%) !important;
    border: 1px solid rgba(255, 215, 106, 0.34);
    box-shadow: var(--royal-shadow-strong);
}

.newsletter-input {
    background: rgba(255, 255, 255, 0.98) !important;
    color: #112b61 !important;
}

.social-link,
.app-button,
.payment-method-icon {
    background: rgba(255, 255, 255, 0.08) !important;
    border-color: rgba(255, 215, 106, 0.24) !important;
}

.social-link:hover,
.app-button:hover {
    background: rgba(255, 215, 106, 0.16) !important;
    color: #fff4c8 !important;
}

.breadcrumbs_area {
    background: linear-gradient(135deg, #071330 0%, #10306e 56%, #2356bf 100%) !important;
    color: white !important;
}

.breadcrumbs_area .breadcrumb_content h3 {
    font-size: clamp(2rem, 3vw, 2.8rem);
}

.breadcrumbs_area .breadcrumb_content ul li,
.breadcrumbs_area .breadcrumb_content ul li a {
    color: #e7efff !important;
}

.shop_area,
.royal-section-soft {
    background:
        radial-gradient(circle at top left, rgba(33, 80, 182, 0.07), transparent 26%),
        linear-gradient(180deg, #f8fbff 0%, #eef4ff 64%, #f6f2e8 100%) !important;
}

.filter_widget,
.product_card,
.product-card,
.cart-item-card,
.summary-box,
.coupon-box,
.coupons-drawer-content,
.reward-section,
.royal-glass-card {
    background: var(--royal-card) !important;
    border: 1px solid var(--royal-border) !important;
    box-shadow: var(--royal-shadow) !important;
    backdrop-filter: blur(10px);
}

.filter_widget h3,
.summary-title,
.price-summary-title,
.coupon-label {
    color: #0d2354 !important;
}

.filter_widget h3 {
    background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%) !important;
}

.filter_widget.open h3,
.filter_widget h3:hover {
    background: linear-gradient(180deg, #eef4ff 0%, #e7edf9 100%) !important;
}

.checkbox_item input[type="checkbox"],
.checkbox_item input[type="radio"] {
    accent-color: #c98f16 !important;
}

.product_badge,
.product_badge_offer,
.product_badge_stock {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
    box-shadow: 0 10px 24px rgba(201, 143, 22, 0.26);
}

.product_card:hover,
.product-card:hover,
.cart-item-card:hover,
.summary-box:hover {
    transform: translateY(-4px);
    box-shadow: var(--royal-shadow-strong) !important;
}

.heart_btn,
.wishlist_heart .heart_btn,
.product_card .heart_btn {
    background: rgba(8, 23, 53, 0.9) !important;
    color: #ffd76a !important;
    border: 1px solid rgba(255, 215, 106, 0.25) !important;
}

.heart_btn.active,
.wishlist_heart .heart_btn.active {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
}

.product_title,
.product-card h3,
.product_info h3,
.item-title {
    color: #091b45 !important;
}

.product_category,
.product_price_original,
.product_rating span,
.item-meta,
.price-row-label {
    color: #60739a !important;
}

.product_price_current,
.price-row-total,
.item-price {
    color: #9b6c05 !important;
    font-weight: 800 !important;
}

.royal-home section[id],
.royal-home .product-card,
.royal-home article,
.royal-home .feature-card {
    position: relative;
}

.royal-home .heroSwiper::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(110deg, transparent 0%, transparent 8%, rgba(255, 215, 106, 0.95) 9%, rgba(255, 215, 106, 0.18) 11%, transparent 13%),
        linear-gradient(292deg, transparent 0%, transparent 80%, rgba(255, 215, 106, 0.9) 81%, rgba(255, 215, 106, 0.15) 83%, transparent 86%);
    z-index: 2;
    pointer-events: none;
}

.royal-home .product-card,
.royal-home article,
.royal-home section .rounded-2xl,
.royal-home section .rounded-3xl {
    box-shadow: var(--royal-shadow);
}

.royal-home .product-card:hover,
.royal-home article:hover {
    box-shadow: var(--royal-shadow-strong);
}

.royal-home .product-card .bg-red-500,
.royal-home .product-card .bg-green-500,
.royal-home .product-card .bg-green-100,
.royal-home .product-card .bg-red-100 {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
}

.royal-home .product-card .bg-white,
.royal-home article.bg-white,
.royal-home section .bg-white {
    border-color: rgba(19, 52, 124, 0.08) !important;
}

.royal-home .product-card .text-brand-600,
.royal-home .text-brand-600,
.royal-home .text-brand-700,
.royal-home .text-brand-800 {
    color: #c98f16 !important;
}

.royal-home .bg-brand-50 {
    background: linear-gradient(180deg, #eff4ff 0%, #f7f4ea 100%) !important;
}

.royal-home .bg-brand-900 {
    background: linear-gradient(135deg, #071330 0%, #0d2354 62%, #163d8f 100%) !important;
}

.royal-home .bg-brand-800 {
    background: rgba(255, 215, 106, 0.12) !important;
    color: #ffd76a !important;
}

.royal-home .bg-brand-100,
.royal-home .bg-yellow-200 {
    background: rgba(255, 215, 106, 0.15) !important;
}

.royal-home .bg-brand-500,
.royal-home .bg-brand-600,
.royal-home .hover\:bg-brand-700:hover,
.royal-home .hover\:bg-brand-400:hover {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
}

.royal-home .shadow-brand-200 {
    box-shadow: 0 18px 34px rgba(201, 143, 22, 0.24) !important;
}

.royal-home .text-white {
    text-shadow: 0 2px 18px rgba(8, 23, 53, 0.22);
}

.royal-product-page {
    background:
        radial-gradient(circle at top right, rgba(255, 215, 106, 0.13), transparent 20%),
        linear-gradient(180deg, #f8fbff 0%, #eef4ff 56%, #f6f2e8 100%);
}

.royal-product-page nav,
.royal-product-page main,
.royal-product-page section {
    position: relative;
    z-index: 1;
}

.royal-product-page .sticky-sidebar > .relative,
.royal-product-page .thumbSwiper,
.royal-product-page .accordion-content > div,
.royal-product-page #milk-interest-form,
.royal-product-page .mb-6.p-4,
.royal-product-page .swiper.relatedSwiper .group {
    box-shadow: var(--royal-shadow);
    border-color: rgba(19, 52, 124, 0.08) !important;
}

.royal-product-page .sticky-sidebar > .relative,
.royal-product-page #milk-interest-form,
.royal-product-page .mb-6.p-4.bg-gray-50,
.royal-product-page .accordion-content > div,
.royal-product-page .swiper.relatedSwiper .group {
    background: rgba(255, 255, 255, 0.92) !important;
}

.royal-product-page a:hover,
.royal-product-page .group:hover span {
    color: #9b6c05 !important;
}

.royal-product-page .thumb-active,
.royal-product-page .variant-active {
    border-color: #c98f16 !important;
    background: linear-gradient(135deg, #143373 0%, #0b1f4d 100%) !important;
    color: #fff7d6 !important;
}

.royal-product-page .pincode-line {
    background: var(--royal-gold-gradient) !important;
}

.royal-product-page [id="addToCartBtn"],
.royal-product-page [id="buyNowBtn"],
.royal-product-page button[name="submit_milk_interest"],
.royal-product-page button[name="submit_review"],
.royal-product-page .fixed.bottom-0 button,
.royal-product-page .fixed.bottom-0 a {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
    border: 1px solid rgba(201, 143, 22, 0.28) !important;
    box-shadow: 0 16px 32px rgba(201, 143, 22, 0.22);
}

.royal-product-page [id="buyNowBtn"] {
    background: linear-gradient(135deg, #0a1d47 0%, #12367d 100%) !important;
    color: #fff4c8 !important;
}

.royal-product-page .fixed.bottom-0 {
    background: rgba(8, 23, 53, 0.94) !important;
    border-top-color: rgba(255, 215, 106, 0.22) !important;
    backdrop-filter: blur(12px);
}

.royal-product-page .text-green-600,
.royal-product-page .text-green-700,
.royal-product-page .text-green-800,
.royal-product-page .hover\:text-green-700:hover {
    color: #9b6c05 !important;
}

.royal-product-page .bg-green-100,
.royal-product-page .bg-red-50,
.royal-product-page .bg-green-50 {
    background: rgba(255, 215, 106, 0.14) !important;
}

.royal-product-page .border-green-600,
.royal-product-page .hover\:border-green-400:hover,
.royal-product-page .focus\:border-green-500:focus {
    border-color: #c98f16 !important;
}

.royal-cart-page {
    background:
        radial-gradient(circle at top left, rgba(255, 215, 106, 0.12), transparent 22%),
        linear-gradient(180deg, #f8fbff 0%, #edf4ff 52%, #f6f2e8 100%) !important;
}

.royal-cart-page .progress-step.active .progress-circle {
    background: linear-gradient(135deg, #0f2d69 0%, #2356bf 100%) !important;
    border-color: #ffd76a !important;
    box-shadow: 0 10px 24px rgba(19, 52, 124, 0.24) !important;
}

.royal-cart-page .progress-step.active .progress-label,
.royal-cart-page .item-remove,
.royal-cart-page .view-coupons-link {
    color: #9b6c05 !important;
}

.royal-cart-page .reward-section {
    background: linear-gradient(135deg, rgba(255, 239, 173, 0.9) 0%, rgba(255, 248, 219, 0.98) 100%) !important;
    border-left-color: #c98f16 !important;
}

.royal-cart-page .coupon-input,
.royal-cart-page .coupon-code-input {
    border-color: rgba(19, 52, 124, 0.16) !important;
    background: rgba(255, 255, 255, 0.95) !important;
}

.royal-cart-page .coupon-input:focus,
.royal-cart-page .coupon-code-input:focus {
    border-color: #c98f16 !important;
    box-shadow: 0 0 0 4px rgba(231, 185, 62, 0.15) !important;
}

.royal-cart-page .summary-box,
.royal-cart-page .coupon-box,
.royal-cart-page .coupons-drawer-content {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98) 0%, rgba(245, 248, 255, 0.95) 100%) !important;
}

.royal-cart-page .price-row.total,
.royal-cart-page .price-row-total,
.royal-cart-page .item-price,
.royal-cart-page .order-total {
    color: #0f2d69 !important;
}

.royal-catalog-page .shop_content_wrapper {
    align-items: start;
}

.royal-catalog-page .products_grid,
.royal-shell .products_grid {
    gap: 28px !important;
}

.royal-catalog-page .product_card .product_image_wrapper,
.royal-shell .product_card .product_image_wrapper,
.royal-home .product-card .img-zoom {
    background:
        radial-gradient(circle at top right, rgba(255, 215, 106, 0.12), transparent 28%),
        linear-gradient(180deg, #f9fbff 0%, #f2f6ff 100%) !important;
}

.royal-catalog-page .product_info,
.royal-shell .product_info {
    padding-top: 22px !important;
}

.royal-catalog-page .product_rating i,
.royal-shell .product_rating i {
    color: #e7b93e !important;
}

.royal-shell .bg-slate-50,
.royal-shell .hover\:bg-slate-50:hover {
    background: linear-gradient(180deg, #f8fbff 0%, #eef4ff 100%) !important;
}

.royal-shell .bg-slate-100,
.royal-shell .hover\:bg-slate-100:hover {
    background: rgba(19, 52, 124, 0.08) !important;
}

.royal-shell .bg-slate-900,
.royal-shell .hover\:bg-slate-900:hover {
    background: linear-gradient(135deg, #0a1d47 0%, #12367d 100%) !important;
    color: #fff4c8 !important;
}

.royal-shell .border-slate-200,
.royal-shell .border-slate-200\/70,
.royal-shell .border-slate-300 {
    border-color: rgba(19, 52, 124, 0.12) !important;
}

.royal-shell .text-slate-900,
.royal-shell .text-slate-800 {
    color: #091b45 !important;
}

.royal-shell .text-slate-700,
.royal-shell .text-slate-600,
.royal-shell .text-slate-500 {
    color: #5f739a !important;
}

.royal-shell .text-emerald-700,
.royal-shell .text-emerald-600,
.royal-shell .hover\:text-emerald-700:hover {
    color: #9b6c05 !important;
}

.royal-shell .bg-emerald-600,
.royal-shell .hover\:bg-emerald-700:hover,
.royal-shell .focus\:ring-emerald-500:focus {
    background: var(--royal-gold-gradient) !important;
    color: #0b1f4d !important;
    box-shadow: 0 14px 30px rgba(201, 143, 22, 0.22) !important;
}

.royal-shell .from-emerald-100\/70,
.royal-shell .via-sky-100\/70,
.royal-shell .to-white {
    background-image: none !important;
}

@media (max-width: 991px) {
    .newsletter-section {
        width: 100% !important;
    }

    .nav-menu {
        border-radius: 0;
    }
}

@media (max-width: 767px) {
    .breadcrumbs_area .breadcrumb_content h3 {
        font-size: 2rem;
    }

    .royal-home .heroSwiper::after {
        opacity: 0.42;
    }
}
