/* Shared promotional-gifts theme for published templates */
:root {
    --brand-amber: #c79a3b;
    --brand-coral: #b91f2d;
    --brand-teal: #1f7a8c;
    --brand-lavender: #6c7486;
    --dark-charcoal: #101828;
    --soft-cream: #f6f2ea;
    --pure-white: #ffffff;
    --gray-mist: #e6e0d6;
    --ink-soft: #475467;
    --navy-deep: #0b1f3a;
    --patriot-blue: #143f6b;
    --shadow-soft: 0 18px 45px rgba(16, 24, 40, 0.12);
    --shadow-pop: 0 22px 50px rgba(11, 31, 58, 0.22);
    --radius-xl: 18px;
    --radius-lg: 12px;
    --radius-md: 8px;
    --radius-sm: 6px;
    --transition-snappy: all 0.22s ease;
}

body {
    background: linear-gradient(180deg, #fbfaf7 0%, var(--soft-cream) 44%, #ffffff 100%) !important;
    color: var(--dark-charcoal);
    font-family: 'Outfit', Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    letter-spacing: 0 !important;
}

.top-ribbon {
    background: linear-gradient(90deg, var(--navy-deep), #132f52) !important;
    color: #f8f4ea !important;
    border-bottom: 1px solid rgba(255,255,255,0.12);
    padding: 9px 0 !important;
}

.top-ribbon::before,
.about-hero-new::before,
.hero-punch::before,
.contact-hero::before,
.cart-hero::before,
.cta-explosion::before,
.cta-section::before,
.value-item-new::after {
    content: none !important;
}

.pulse-icon {
    width: 30px !important;
    height: 30px !important;
    background: rgba(199,154,59,0.18) !important;
    color: #f4d58d !important;
    border: 1px solid rgba(244,213,141,0.42);
    animation: none !important;
}

.top-links a {
    color: rgba(255,255,255,0.82) !important;
    margin-left: 18px !important;
    border-bottom: none !important;
}

.top-links a:hover {
    color: #f4d58d !important;
}

.top-links a:last-child {
    background: rgba(255,255,255,0.08) !important;
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 8px !important;
    padding: 7px 14px !important;
}

.header-block {
    background: rgba(255,255,255,0.94) !important;
    backdrop-filter: blur(16px);
    padding: 16px 0 !important;
    box-shadow: 0 12px 36px rgba(16,24,40,0.08) !important;
    border-bottom: 1px solid rgba(16,24,40,0.08);
}

.header-grid {
    gap: 24px !important;
}

.logo-wild {
    font-size: clamp(1.45rem, 2vw, 2rem) !important;
    letter-spacing: 0.02em !important;
    text-transform: uppercase;
    min-width: 230px;
}

.logo-wild .line1 {
    color: var(--navy-deep) !important;
}

.logo-wild .line1::after {
    content: " Promotional Gifts";
    display: block;
    margin-top: 6px;
    color: var(--brand-coral);
    font-family: 'Outfit', Arial, sans-serif;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.2em;
}

.footer-logo-block .logo-wild .line1 {
    color: #ffffff !important;
}

.header-search {
    max-width: 520px !important;
}

.search-minimal {
    border: 1px solid #d7dce5 !important;
    border-radius: 10px !important;
    background: #f9fafb !important;
    color: var(--dark-charcoal) !important;
    padding: 14px 20px 14px 48px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.9);
}

.search-minimal:focus {
    border-color: var(--patriot-blue) !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(20,63,107,0.12) !important;
}

.search-icon-new {
    left: 18px !important;
    color: var(--brand-coral) !important;
}

.action-link {
    border-radius: 8px !important;
    padding: 11px 18px !important;
    font-weight: 700 !important;
}

.action-link.cart {
    background: #f2f4f7 !important;
    color: var(--navy-deep) !important;
    border: 1px solid #d8dde6;
}

.action-link.cart:hover {
    background: var(--navy-deep) !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
}

.action-link.quote,
.btn-primary,
.btn-block.primary,
.btn-cta,
.add-to-cart-btn {
    background: linear-gradient(135deg, var(--brand-coral), #8f1722) !important;
    color: #fff !important;
    box-shadow: 0 14px 26px rgba(185,31,45,0.22) !important;
}

.action-link.quote:hover,
.btn-primary:hover,
.btn-block.primary:hover,
.btn-cta:hover,
.add-to-cart-btn:hover {
    background: linear-gradient(135deg, #9f1a27, #73111a) !important;
    color: #fff !important;
    transform: translateY(-2px) !important;
}

.cart-badge {
    background: var(--brand-amber) !important;
    color: var(--navy-deep) !important;
    font-weight: 800;
}

.category-strip {
    top: 80px !important;
    background: #ffffff !important;
    border-bottom: 1px solid #e4e7ec !important;
    padding: 10px 0 !important;
}

.category-scroll {
    gap: 10px !important;
    padding-bottom: 4px !important;
}

.category-pill,
.category-filter-btn {
    border-radius: 8px !important;
    background: #f8fafc !important;
    border: 1px solid #e1e6ef !important;
    color: #344054 !important;
    padding: 10px 16px !important;
    font-size: 0.92rem !important;
    font-weight: 700 !important;
}

.category-pill i {
    color: var(--brand-coral) !important;
    font-size: 0.9rem !important;
}

.category-pill:hover,
.category-filter-btn:hover,
.category-filter-btn.active {
    background: var(--navy-deep) !important;
    color: #fff !important;
    border-color: var(--navy-deep) !important;
    box-shadow: 0 12px 24px rgba(11,31,58,0.18) !important;
    transform: translateY(-2px) !important;
}

.breadcrumb-new {
    padding: 24px 0 12px !important;
}

.crumb a,
.crumb span[style] {
    border-radius: 8px !important;
    box-shadow: none !important;
}

.crumb a {
    border: 1px solid #e4e7ec;
    color: var(--ink-soft) !important;
}

.crumb span[style] {
    background: var(--navy-deep) !important;
    color: #fff !important;
}

.about-hero-new,
.hero-punch,
.contact-hero,
.cart-hero {
    min-height: 320px;
    border-radius: 18px !important;
    margin-bottom: 34px !important;
    padding: 54px !important;
    background:
        linear-gradient(105deg, rgba(11,31,58,0.96) 0%, rgba(20,63,107,0.88) 54%, rgba(185,31,45,0.18) 100%),
        url('/images/AJKCFWA75_0_1_1778279481_2563.png') right 8% center / min(40vw, 430px) no-repeat,
        linear-gradient(135deg, var(--navy-deep), var(--patriot-blue)) !important;
    box-shadow: 0 30px 70px rgba(11,31,58,0.22) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
}

.hero-title,
.hero-title-new,
.search-hero-title,
.cta-title-new {
    color: #fff !important;
}

.hero-sub,
.hero-subtitle,
.hero-subtitle-new {
    color: rgba(255,255,255,0.86) !important;
}

.hero-graphic,
.hero-graphic-new {
    background: linear-gradient(145deg, var(--brand-lavender), var(--brand-teal)) !important;
    border-radius: 50% 30% 50% 30% !important;
    box-shadow: var(--shadow-pop) !important;
}

.hero-product-showcase {
    background: rgba(255,255,255,0.94) !important;
    border: 1px solid rgba(255,255,255,0.26);
    border-radius: 18px !important;
    width: min(100%, 280px);
    aspect-ratio: 1 / 1;
    padding: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
    justify-self: center;
}

.hero-product-showcase img {
    display: block;
    max-width: 100%;
    max-height: 230px;
    object-fit: contain;
    filter: drop-shadow(0 18px 28px rgba(11,31,58,0.18));
}

.mission-card,
.value-item-new,
.contact-info-card,
.contact-form-card,
.product-card,
.filter-sidebar,
.cart-items,
.cart-summary,
.order-config-card,
.product-gallery-main,
.related-product-card,
.no-results,
.empty-cart,
.success-message-container {
    border: 1px solid #dfe5ef !important;
    box-shadow: 0 20px 45px rgba(16,24,40,0.1) !important;
    border-radius: 12px !important;
    background: #fff !important;
}

.section-title-new {
    background: var(--brand-amber) !important;
    color: #fff !important;
}

.product-card:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 24px 48px rgba(11,31,58,0.16) !important;
    border-color: rgba(20,63,107,0.34) !important;
}

.product-title,
.results-title,
.cart-title,
.summary-title,
.section-title {
    color: var(--navy-deep) !important;
}

.product-code,
.moq-badge {
    border-radius: 6px !important;
}

.form-control,
.form-select,
.simple-form-control {
    border: 1px solid #d0d5dd !important;
    border-radius: 8px !important;
    color: var(--dark-charcoal) !important;
    background-color: #ffffff !important;
}

.form-control:focus,
.form-select:focus,
.simple-form-control:focus {
    border-color: var(--patriot-blue) !important;
    box-shadow: 0 0 0 4px rgba(20,63,107,0.12) !important;
}

.btn,
.btn-block,
.btn-cta,
.simple-btn,
.action-dialog-btn {
    border-radius: 8px !important;
}

.btn-secondary,
.btn-outline,
.btn-block.outline,
.btn-cta.outline-white {
    border: 1px solid var(--patriot-blue) !important;
    color: var(--patriot-blue) !important;
    background: #fff !important;
}

.btn-secondary:hover,
.btn-outline:hover,
.btn-block.outline:hover,
.btn-cta.outline-white:hover {
    background: var(--patriot-blue) !important;
    color: #fff !important;
}

.cta-explosion,
.cta-section {
    border-radius: 18px !important;
    background: linear-gradient(135deg, #07162a 0%, #0b1f3a 54%, #112f52 100%) !important;
    box-shadow: 0 26px 58px rgba(11,31,58,0.2) !important;
}

.footer-wild {
    margin-top: 70px !important;
    border-radius: 0 !important;
    background: linear-gradient(135deg, #07162a 0%, #0b1f3a 54%, #112f52 100%) !important;
    color: rgba(255,255,255,0.82) !important;
    padding: 60px 0 28px !important;
}

.contact-block-footer {
    border-radius: 12px !important;
    background: rgba(255,255,255,0.06) !important;
    border: 1px solid rgba(255,255,255,0.1);
}

.contact-block-footer h4,
.footer-contact-item i {
    color: #f4d58d !important;
}

.footer-bottom-new {
    border-top-color: rgba(255,255,255,0.12) !important;
    color: rgba(255,255,255,0.62) !important;
}

@media (max-width: 992px) {
    .header-grid { flex-direction: column; align-items: stretch; }
    .header-search { max-width: 100% !important; }
    .category-strip { top: 0 !important; position: relative !important; }
    .about-hero-new,
    .hero-punch,
    .contact-hero,
    .cart-hero {
        grid-template-columns: 1fr !important;
        text-align: center;
        background:
            linear-gradient(105deg, rgba(11,31,58,0.96), rgba(20,63,107,0.88)),
            linear-gradient(135deg, var(--navy-deep), var(--patriot-blue)) !important;
    }
    .hero-product-showcase {
        width: min(100%, 240px);
        max-width: 240px !important;
    }
    .footer-grid { grid-template-columns: 1fr !important; }
}

@media (max-width: 768px) {
    .container { padding-left: 16px; padding-right: 16px; }
    .top-links { display: none !important; }
    .header-actions-new { width: 100%; }
    .action-link { flex: 1; justify-content: center; }
    .about-hero-new,
    .hero-punch,
    .contact-hero,
    .cart-hero,
    .cta-explosion,
    .cta-section {
        padding: 34px 24px 58px !important;
        border-radius: 14px !important;
    }
    .hero-product-showcase {
        width: min(100%, 200px);
        max-width: 200px !important;
        padding: 18px;
    }
    .hero-product-showcase img {
        max-height: 160px;
    }
}
