/* Bommiiy Gift Collection — minimal UI/account polish.
   Loaded AFTER existing CSS; leaves the existing store design and components in place. */
:root {
    --bgc-rose: #b72a5b;
    --bgc-ink: #452b36;
}

body {
    font-family: 'Jost', 'DM Sans', Arial, sans-serif;
}

/* More legible small copy, without changing the original hero heading scale. */
.announcement {
    font-size: 14px !important;
    letter-spacing: .01em;
    line-height: 1.5;
}

.announcement a {
    font-size: 14px;
}

.brand-name small {
    font-size: 11px !important;
    letter-spacing: 2.2px;
}

.header .nav-links>a:not(.bgc-mobile-account) {
    font-size: 16px !important;
    font-weight: 650;
}

.header .nav-text-link,
.header .bgc-account-login {
    font-size: 16px !important;
}

.header .bgc-account-join {
    font-size: 16px !important;
    font-weight: 750;
    min-height: 49px;
}

.header .bgc-nav-account {
    display: flex;
    gap: 12px;
    align-items: center;
}

.header .bgc-customer-greeting {
    display: inline-block;
    color: #a5305e;
    font-size: 15px;
    font-weight: 650;
    white-space: nowrap;
}

.bgc-nav-logout {
    margin: 0;
}

.bgc-nav-logout button {
    cursor: pointer;
    border: 0;
    background: none;
    padding: 7px 4px;
    color: #7e5568;
    font: 650 14px/1.4 'Jost', Arial, sans-serif;
}

.bgc-nav-logout button:hover {
    color: var(--bgc-rose);
}

.bgc-mobile-welcome {
    display: none;
    color: #a52c57;
    font-size: 17px;
    font-weight: 750;
    padding: 12px;
}

.bgc-mobile-logout {
    display: none;
    margin: 0;
}

.bgc-mobile-logout button {
    background: #fff4f8;
    border: 1px solid #eed8e1;
    color: #a32959;
    border-radius: 12px;
    width: 100%;
    padding: 13px 16px;
    text-align: left;
    font: 700 16px 'Jost', Arial, sans-serif;
}

.bgc-home .eyebrow,
.bgc-home .bgc-how-card-kicker {
    font-size: 14px !important;
}

.bgc-home .hero-details {
    font-size: 15px !important;
}

.bgc-home .category-card strong {
    font-size: 19px !important;
}

.bgc-home .category-card small {
    font-size: 15px !important;
}

.bgc-home .bgc-product-card .product-meta,
.bgc-home .bgc-occasion-badge {
    font-size: 13px !important;
}

.bgc-home .bgc-product-card .product-view {
    font-size: 16px !important;
}

.bgc-home .bgc-sale-badge {
    font-size: 13px !important;
}

.bgc-home .bgc-price-was {
    font-size: 15px !important;
}

.bgc-home .bgc-price-now {
    font-size: 21px !important;
}

.bgc-home .bgc-how-subtitle,
.bgc-home .bgc-how-card p {
    font-size: 17px !important;
}

.bgc-home .bgc-how-card h3 {
    font-size: clamp(24px, 2.2vw, 29px);
}

.bgc-home .bgc-how-card {
    transition: transform .32s ease, box-shadow .32s ease, border-color .32s ease;
}

.bgc-home .bgc-how-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 20px 35px rgba(137, 42, 79, .13);
    border-color: #ebcad7;
}

.bgc-home .bgc-how-card .step-icon {
    transition: transform .32s ease;
}

.bgc-home .bgc-how-card:hover .step-icon {
    transform: translateY(-4px) rotate(-8deg) scale(1.07);
}

.bgc-home .bgc-wish-open,
.bgc-home .bgc-price-stack .bgc-price-request {
    font-size: 15px !important;
}

.footer p,
.footer a,
.footer .muted-note {
    font-size: 15px;
    line-height: 1.75;
}

.footer h4 {
    font-size: 17px;
}

.bgc-premium-footer .bgc-footer-mini,
.footer-bottom {
    font-size: 13px !important;
}

/* Gentle shimmer for existing interactive buttons. No flashing / no forced motion. */
.bgc-home .btn-primary,
.bgc-home .btn-light,
.bgc-home .product-add,
.header .bgc-account-join,
.bgc-premium-footer .bgc-footer-shop,
.bgc-premium-footer .bgc-footer-chat,
.bgc-account .bgc-account-primary {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    transition: transform .25s ease, box-shadow .25s ease;
}

.bgc-home .btn-primary:hover,
.bgc-home .btn-light:hover,
.header .bgc-account-join:hover,
.bgc-account .bgc-account-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(170, 42, 88, .22);
}

.bgc-home .btn-primary::before,
.bgc-home .btn-light::before,
.bgc-home .product-add::before,
.header .bgc-account-join::before,
.bgc-premium-footer .bgc-footer-shop::before,
.bgc-premium-footer .bgc-footer-chat::before,
.bgc-account .bgc-account-primary::before {
    content: '';
    position: absolute;
    width: 35%;
    top: -90%;
    bottom: -90%;
    left: -75%;
    transform: skewX(-23deg);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .48), transparent);
    pointer-events: none;
    animation: bgc-account-shine 6.5s ease-in-out infinite;
}

@keyframes bgc-account-shine {

    0%,
    46%,
    100% {
        left: -75%;
        opacity: 0;
    }

    51% {
        opacity: 1;
    }

    60% {
        left: 150%;
        opacity: 0;
    }
}

/* Customer account — same palette as original site. */
.bgc-account {
    padding: clamp(54px, 7vw, 92px) 0 100px;
    background: linear-gradient(145deg, #fff9f6 0%, #fff0f5 54%, #fffbf9 100%);
}

.bgc-account .bgc-account-hero {
    background: #fff;
    border: 1px solid #f2dce4;
    border-radius: 28px;
    box-shadow: 0 15px 45px rgba(143, 50, 83, .08);
    padding: clamp(25px, 4vw, 49px);
    position: relative;
    overflow: hidden;
}

.bgc-account .bgc-account-hero::after {
    content: '✿';
    position: absolute;
    right: -5px;
    top: -100px;
    color: #fbe1e9;
    font: 280px/1 'Playfair Display', serif;
    pointer-events: none;
}

.bgc-account .bgc-account-kicker {
    display: inline-block;
    font: 800 14px 'Jost', sans-serif;
    letter-spacing: 1.7px;
    color: #c13367;
    position: relative;
    z-index: 1;
}

.bgc-account h1 {
    margin: 14px 0 10px;
    color: #402734;
    font: 600 clamp(37px, 5vw, 60px)/1.12 'Playfair Display', serif;
    position: relative;
    z-index: 1;
}

.bgc-account h1 em {
    color: #b72a5b;
    font-style: italic;
}

.bgc-account .bgc-account-hero p {
    max-width: 640px;
    color: #7d5c6a;
    font-size: 17px;
    line-height: 1.7;
    position: relative;
    z-index: 1;
}

.bgc-account .bgc-account-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px;
    position: relative;
    z-index: 1;
}

.bgc-account .bgc-account-primary,
.bgc-account .bgc-account-secondary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 13px 23px;
    min-height: 52px;
    border-radius: 100px;
    font: 750 16px 'Jost', sans-serif;
    text-decoration: none;
}

.bgc-account .bgc-account-primary {
    color: #fff;
    background: linear-gradient(115deg, #ad2857, #c43a71);
    box-shadow: 0 8px 20px rgba(183, 42, 91, .18);
}

.bgc-account .bgc-account-secondary {
    color: #a12854;
    border: 1px solid #edcbd8;
    background: #fff9fb;
}

.bgc-account .bgc-account-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    margin-top: 26px;
}

.bgc-account .bgc-account-card {
    background: #fff;
    border: 1px solid #f1dee6;
    border-radius: 22px;
    padding: 29px;
    box-shadow: 0 12px 29px rgba(122, 40, 79, .04);
}

.bgc-account .bgc-account-card h2 {
    margin: 0 0 15px;
    font: 600 27px 'Playfair Display', serif;
    color: #472a39;
}

.bgc-account .bgc-account-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 10px;
    border-bottom: 1px solid #f4e8ec;
    padding: 11px 0;
}

.bgc-account .bgc-account-row span {
    font: 700 15px 'Jost', sans-serif;
    color: #8d6b7c;
}

.bgc-account .bgc-account-row strong {
    font: 650 16px 'Jost', sans-serif;
    color: #472d39;
    overflow-wrap: anywhere;
}

.bgc-account .bgc-account-card p,
.bgc-account .bgc-account-card li {
    font-size: 16px;
    line-height: 1.7;
    color: #745768;
}

.bgc-account .bgc-account-orders {
    margin: 22px 0 0;
}

.bgc-account .bgc-account-orders li {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border-bottom: 1px solid #f6e4eb;
    padding: 9px 0;
}

.bgc-account .bgc-account-orders a {
    color: #a52c57;
    font-weight: 700;
}

.bgc-account .bgc-account-signout {
    margin-top: 22px;
}

.bgc-account .bgc-account-signout button {
    border: 0;
    padding: 9px 0;
    color: #8d516b;
    background: transparent;
    font: 700 15px 'Jost', sans-serif;
    cursor: pointer;
}

@media(max-width:1280px) {
    .header .bgc-nav-account {
        display: none;
    }

    .header .nav-links .bgc-mobile-welcome {
        display: block;
    }

    .header .nav-links .bgc-mobile-logout {
        display: block;
    }
}

@media(max-width:720px) {
    .announcement {
        font-size: 12px !important;
    }

    .bgc-home .eyebrow {
        font-size: 13px !important;
    }

    .bgc-home .category-card small {
        font-size: 14px !important;
    }

    .bgc-home .bgc-product-card .product-meta {
        font-size: 12px !important;
    }

    .bgc-home .bgc-how-card p {
        font-size: 16px !important;
    }

    .bgc-home .bgc-price-now {
        font-size: 18px !important;
    }

    .bgc-account .bgc-account-grid {
        grid-template-columns: 1fr;
    }

    .bgc-account .bgc-account-hero::after {
        font-size: 185px;
        top: -45px;
    }

    .bgc-account .bgc-account-orders li {
        flex-wrap: wrap;
    }
}

@media(prefers-reduced-motion:reduce) {

    .bgc-home .bgc-how-card,
    .bgc-home .bgc-how-card .step-icon {
        transition: none !important;
    }

    .bgc-home .btn-primary::before,
    .bgc-home .btn-light::before,
    .bgc-home .product-add::before,
    .header .bgc-account-join::before,
    .bgc-premium-footer .bgc-footer-shop::before,
    .bgc-premium-footer .bgc-footer-chat::before,
    .bgc-account .bgc-account-primary::before {
        animation: none !important;
    }
}