/* ============================================================
   Afrotunda — Artisan & Trust Infrastructure Styles
   Brand: #5e1600 (dark red) · #d88b34 (amber) · #161616 (near-black)
   ============================================================ */

/* ── Tokens ─────────────────────────────────────────────────
   All --at-* tokens come from the child theme's design-tokens.css
   (loaded on every page). Do NOT redefine them here — a duplicate
   :root block clobbers the design system depending on load order.
   Fallback values below cover the theme being swapped out.
   ─────────────────────────────────────────────────────────── */

/* ============================================================
   MAKER CHIP — compact attribution in the buy rail (below Add-to-cart)
   ============================================================ */

.afrotunda-maker-chip {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin: 14px 0 4px;
    padding: 12px 14px;
    background: var(--at-cream, #f9f6f4);
    border: 1px solid var(--at-border);
    border-radius: var(--at-radius);
    font-family: var(--at-font-body, sans-serif);
}

/* Portrait circle */
.afrotunda-maker-chip__portrait-link {
    flex-shrink: 0;
    display: block;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    overflow: hidden;
    border: 2px solid var(--at-amber);
    transition: border-color 0.2s;
}
.afrotunda-maker-chip__portrait-link:hover {
    border-color: var(--at-red);
}
.afrotunda-maker-chip__portrait {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Info column */
.afrotunda-maker-chip__info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}
.afrotunda-maker-chip__label {
    font-family: var(--at-font-display, sans-serif);
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--at-slate);
}
.afrotunda-maker-chip__name {
    font-family: var(--at-font-display, sans-serif);
    font-size: 15px;
    font-weight: 800;
    color: var(--at-red);
    text-decoration: none;
}
.afrotunda-maker-chip__name:hover {
    color: var(--at-amber);
    text-decoration: underline;
}
.afrotunda-maker-chip__meta {
    font-size: 12px;
    color: var(--at-slate);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Read-story link (anchors to the full section below) */
.afrotunda-maker-chip__link {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-family: var(--at-font-display, sans-serif);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--at-amber);
    text-decoration: none;
    transition: color 0.2s;
}
.afrotunda-maker-chip__link:hover {
    color: var(--at-red);
}
.afrotunda-maker-chip__link svg {
    transition: transform 0.2s;
}
.afrotunda-maker-chip__link:hover svg {
    transform: translateX(2px);
}

/* Story excerpt — full-width row beneath the portrait/name/link row */
.afrotunda-maker-chip__excerpt {
    flex-basis: 100%;
    margin: 0;
    padding-top: 10px;
    border-top: 1px solid var(--at-border);
    font-size: 13px;
    line-height: 1.6;
    color: var(--at-slate);
}

@media (max-width: 480px) {
    .afrotunda-maker-chip__link span {
        /* keep the arrow, drop the label when space is tight */
    }
}

/* ============================================================
   TRUST SIGNALS — below the maker chip (tightened/denser)
   ============================================================ */

.afrotunda-trust-signals {
    margin: 14px 0 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.afrotunda-trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 12px;
    background: var(--at-white);
    border: 1px solid var(--at-border);
    border-radius: var(--at-radius);
    font-family: var(--at-font-body, sans-serif);
    font-size: 13px;
    line-height: 1.4;
}

.afrotunda-trust-icon {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    color: var(--at-white);
}
.afrotunda-trust-icon svg {
    width: 14px;
    height: 14px;
}
.afrotunda-trust-shipping .afrotunda-trust-icon  { background: #1a5fa8; }
.afrotunda-trust-returns  .afrotunda-trust-icon  { background: #2d7d46; }
.afrotunda-trust-secure   .afrotunda-trust-icon  { background: var(--at-red); }

.afrotunda-trust-text {
    display: flex;
    flex-direction: column;
    gap: 1px;
}
.afrotunda-trust-text strong {
    font-weight: 700;
    font-size: 12.5px;
    color: var(--at-black);
}
.afrotunda-trust-text span {
    font-size: 11.5px;
    color: var(--at-slate);
}
.afrotunda-trust-text a {
    color: var(--at-amber);
    font-weight: 600;
    margin-left: 4px;
    text-decoration: underline;
}
.afrotunda-trust-text a:hover {
    color: var(--at-red);
}

/* Trust badges strip */
.afrotunda-trust-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 4px 0 20px;
}
.afrotunda-badge {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    background: var(--at-cream, #f9f6f4);
    border: 1px solid var(--at-border);
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--at-slate);
    font-family: var(--at-font-display, sans-serif);
}
.afrotunda-badge svg {
    color: var(--at-amber);
}

/* ============================================================
   VENDOR STORY — on Dokan store / author pages
   ============================================================ */

.afrotunda-vendor-story {
    margin: 40px 0;
    padding: 0 0 40px;
    border-bottom: 1px solid var(--at-border);
    font-family: var(--at-font-body, sans-serif);
}

.afrotunda-vendor-story__inner {
    max-width: 960px;
    margin: 0 auto;
    padding: 0 20px;
}

/* Eyebrow — now renders BELOW the gallery as a centred sign-off line */
.afrotunda-vendor-story__eyebrow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    font-family: var(--at-font-display, sans-serif);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: var(--at-ls-eyebrow, 0.18em);
    color: var(--at-amber);
    margin: 36px 0 0;
}
.afrotunda-vendor-story__eyebrow::before,
.afrotunda-vendor-story__eyebrow::after {
    content: '';
    width: 28px;
    height: 1.5px;
    background: currentColor;
    flex-shrink: 0;
}

.afrotunda-vendor-story__title {
    font-size: 2rem;
    font-weight: 800;
    color: var(--at-red);
    margin: 0 0 6px;
    line-height: 1.2;
}

.afrotunda-vendor-story__location {
    display: inline-block;
    font-size: 1rem;
    font-weight: 600;
    color: var(--at-slate);
    margin-left: 12px;
}

.afrotunda-vendor-story__craft {
    font-size: 14px;
    color: var(--at-slate);
    margin: 0 0 24px;
}

/* Body: portrait + content side by side */
.afrotunda-vendor-story__body {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 32px;
    align-items: start;
}

@media (max-width: 680px) {
    .afrotunda-vendor-story__body {
        grid-template-columns: 1fr;
    }
}

.afrotunda-vendor-story__portrait-wrap {
    position: sticky;
    top: 80px;
}
.afrotunda-vendor-story__portrait {
    width: 100%;
    border-radius: var(--at-radius);
    border: 3px solid var(--at-amber);
    display: block;
}

/* Quote */
.afrotunda-vendor-story__quote {
    margin: 0 0 20px;
    padding: 16px 20px;
    background: var(--at-cream, #f9f6f4);
    border-left: 4px solid var(--at-amber);
    border-radius: 0 var(--at-radius) var(--at-radius) 0;
}
.afrotunda-vendor-story__quote p {
    font-family: var(--at-font-serif, serif);
    font-size: 17px;
    font-style: italic;
    color: var(--at-black);
    line-height: 1.65;
    margin: 0 0 8px;
}
.afrotunda-vendor-story__quote cite {
    font-family: var(--at-font-display, sans-serif);
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--at-amber);
    font-style: normal;
}

/* Long story text */
.afrotunda-vendor-story__text {
    font-size: 15px;
    line-height: 1.75;
    color: var(--at-slate);
    margin-bottom: 20px;
}
.afrotunda-vendor-story__text p {
    margin-bottom: 14px;
}

/* Impact */
.afrotunda-vendor-story__impact {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px 18px;
    background: #f0fdf4;
    border: 1px solid #bbf7d0;
    border-radius: var(--at-radius);
    font-size: 14px;
    color: #166534;
    line-height: 1.6;
}
.afrotunda-vendor-story__impact-icon {
    font-size: 18px;
    flex-shrink: 0;
    margin-top: 1px;
}

/* Gallery */
.afrotunda-vendor-story__gallery {
    margin-top: 36px;
}
.afrotunda-vendor-story__gallery-title {
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--at-red);
    margin-bottom: 16px;
    border-bottom: 2px solid var(--at-amber);
    padding-bottom: 8px;
}
.afrotunda-vendor-story__gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 12px;
}
.afrotunda-vendor-story__gallery-item {
    margin: 0;
    border-radius: var(--at-radius);
    overflow: hidden;
    aspect-ratio: 4/3;
}
.afrotunda-vendor-story__gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.afrotunda-vendor-story__gallery-item:hover img {
    transform: scale(1.04);
}

/* ── Low-stock urgency notice (single product) ─────────────────────────── */
.afrotunda-low-stock {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 14px;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--at-red, #5e1600);
}
.afrotunda-low-stock__dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    animation: afrotunda-low-stock-pulse 2s ease-in-out infinite;
}
@keyframes afrotunda-low-stock-pulse {
    0%, 100% { opacity: 1; }
    50%      { opacity: 0.35; }
}
@media (prefers-reduced-motion: reduce) {
    .afrotunda-low-stock__dot { animation: none; }
}

/* ── Multi-vendor shipping note (cart + checkout) ──────────────────────── */
.afrotunda-maker-shipping-note {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    margin: 14px 0;
    padding: 11px 14px;
    border: 1px solid var(--at-mist, #ece8e6);
    border-radius: 8px;
    background: var(--at-tint-red-soft, rgba(94, 22, 0, 0.03));
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--at-slate, #4B4F58);
}
.afrotunda-maker-shipping-note__icon {
    flex: 0 0 auto;
    margin-top: 2px;
    color: var(--at-red, #5e1600);
}


/* ── Header wishlist icon (next to the cart, desktop + mobile popup) ───── */
.afro-wishlist-link {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    margin-right: 2px;
    color: inherit;
    line-height: 1;
}
.afro-wishlist-link:hover {
    color: var(--at-red, #5e1600);
}
.afro-wishlist-count {
    position: absolute;
    top: -2px;
    right: -3px;
    min-width: 16px;
    height: 16px;
    padding: 0 4px;
    border-radius: 9px;
    background: var(--at-red, #5e1600);
    color: var(--at-white, #fff);
    font-size: 10px;
    font-weight: 700;
    line-height: 16px;
    text-align: center;
    font-family: var(--at-font-display, sans-serif);
}
.afro-wishlist-count.is-empty {
    display: none;
}

/* ── Wishlist page ──────────────────────────────────────────────────────── */
.afro-wishlist-page__guest-note {
    margin: 20px 0 0;
    font-size: 0.85rem;
    color: var(--at-slate, #4B4F58);
}
.afro-wishlist-empty {
    padding: 56px 24px;
    text-align: center;
    border: 1px dashed var(--at-border, #ddd5c8);
    border-radius: 10px;
    background: var(--at-cream, #faf7f3);
}
.afro-wishlist-empty__title {
    margin: 0 0 6px;
    font-family: var(--at-font-display, sans-serif);
    font-size: 1.3rem;
    font-weight: 700;
    color: var(--at-ink, #161616);
}
.afro-wishlist-empty__sub {
    margin: 0 0 20px;
    color: var(--at-slate, #4B4F58);
}

/* ── Back-in-stock capture (sold-out PDPs) ─────────────────────────────── */
.afrotunda-bis {
    margin: 14px 0;
    padding: 16px 18px;
    border: 1px solid var(--at-border, #ddd5c8);
    border-radius: 10px;
    background: var(--at-sand, #f0ebe6);
}
.afrotunda-bis__title {
    margin: 0 0 4px;
    font-family: var(--at-font-display, sans-serif);
    font-weight: 700;
    font-size: 1rem;
    color: var(--at-ink, #161616);
}
.afrotunda-bis__sub {
    margin: 0 0 12px;
    font-size: 0.85rem;
    line-height: 1.5;
    color: var(--at-slate, #4B4F58);
}
.afrotunda-bis__form {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.afrotunda-bis__email {
    flex: 1 1 200px;
    padding: 10px 12px;
    border: 1px solid var(--at-border, #ddd5c8);
    border-radius: 8px;
    font-size: 0.9rem;
}
.afrotunda-bis__hp {
    position: absolute !important;
    left: -9999px !important;
    width: 1px;
    height: 1px;
    opacity: 0;
}
.afrotunda-bis__btn {
    flex: 0 0 auto;
    padding: 10px 18px;
    border: none;
    border-radius: 8px;
    background: var(--at-red, #5e1600);
    color: var(--at-white, #fff);
    font-family: var(--at-font-display, sans-serif);
    font-weight: 700;
    font-size: 0.85rem;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    cursor: pointer;
    transition: background 0.2s;
}
.afrotunda-bis__btn:hover {
    background: var(--at-red-mid, #7a2008);
}
.afrotunda-bis__btn:disabled {
    opacity: 0.6;
    cursor: default;
}
.afrotunda-bis__msg {
    margin: 8px 0 0;
    font-size: 0.85rem;
}
.afrotunda-bis__msg.is-ok    { color: var(--at-success, #1b5e20); }
.afrotunda-bis__msg.is-error { color: var(--at-danger, #b71c1c); }

/* ── Vendor story: Instagram link (merged section footer) ──────────────── */
.afrotunda-vendor-story__instagram {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-top: 14px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--at-red, #5e1600);
    text-decoration: none;
}
.afrotunda-vendor-story__instagram:hover {
    color: var(--at-amber, #d88b34);
}

/* ── Header language switcher (TranslatePress shortcode, beside cart) ──── */
.afro-header-lang {
    display: inline-flex;
    align-items: center;
    margin-right: 4px;
}
.afro-header-lang .trp-shortcode-switcher__wrapper {
    margin: 0;
}

/* ── Meet the maker (homepage rotating story block) ────────────────────── */
.afrotunda-mtm {
    margin: 8px 0;
}
.afrotunda-mtm__inner {
    display: flex;
    align-items: center;
    gap: 36px;
    background: var(--at-espresso, #2a1a10);
    padding: 40px 44px;
    position: relative;
    overflow: hidden;
}
.afrotunda-mtm__portrait-link {
    flex: 0 0 auto;
    line-height: 0;
}
.afrotunda-mtm__portrait {
    width: 168px;
    height: 168px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid var(--at-amber, #d88b34);
}
.afrotunda-mtm__body {
    min-width: 0;
}
.afrotunda-mtm__eyebrow {
    display: block;
    font-family: var(--at-font-display, sans-serif);
    font-weight: 700;
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.16em;
    color: var(--at-amber, #d88b34);
    margin-bottom: 10px;
}
.afrotunda-mtm__quote {
    margin: 0 0 14px;
    padding: 0;
    border: none;
    font-family: var(--at-font-serif, serif);
    font-style: italic;
    font-size: 1.35rem;
    line-height: 1.45;
    color: var(--at-white, #fff);
}
.afrotunda-mtm__quote::before { content: '\201C'; }
.afrotunda-mtm__quote::after  { content: '\201D'; }
.afrotunda-mtm__line {
    margin: 0 0 14px;
    font-size: 0.95rem;
    line-height: 1.6;
    color: rgba(255, 255, 255, 0.85);
}
.afrotunda-mtm__who {
    margin: 0 0 18px;
    color: var(--at-white, #fff);
    font-size: 0.95rem;
}
.afrotunda-mtm__who strong {
    font-family: var(--at-font-display, sans-serif);
    font-weight: 700;
    letter-spacing: 0.02em;
}
.afrotunda-mtm__meta {
    display: inline-block;
    margin-left: 10px;
    font-size: 0.82rem;
    color: rgba(255, 255, 255, 0.6);
}
.afrotunda-mtm__cta {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 11px 22px;
    background: var(--at-amber, #d88b34);
    color: var(--at-white, #fff) !important;
    font-family: var(--at-font-display, sans-serif);
    font-weight: 700;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-decoration: none !important;
    transition: background 0.2s;
}
.afrotunda-mtm__cta:hover {
    background: var(--at-red, #5e1600);
}
@media (max-width: 680px) {
    .afrotunda-mtm__inner {
        flex-direction: column;
        text-align: center;
        gap: 22px;
        padding: 32px 22px;
    }
    .afrotunda-mtm__portrait {
        width: 132px;
        height: 132px;
    }
}

/* ── Header language switcher alignment ─────────────────────────────────
   TP's injected style bottom-aligns the flag+label and the Astra woo-cart
   element isn't a flex container, so the switcher drifted off the icon
   line. Make the whole element a centered flex row — no pixel nudges. */
.ast-header-woo-cart {
    display: flex !important;
    align-items: center !important;
}
.afro-header-lang,
.afro-header-lang .trp-shortcode-switcher__wrapper,
.afro-header-lang .trp-language-switcher,
.afro-header-lang .trp-current-language-item__wrapper {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1;
}
.afro-header-lang .trp-language-switcher .trp-language-item,
.afro-header-lang .trp-language-item {
    display: inline-flex !important;
    align-items: center !important;
    padding: 0 5px !important;
}
.afro-header-lang .trp-flag-image {
    display: inline-block;
    vertical-align: middle;
}
.afro-header-lang .trp-language-item-name {
    line-height: 1;
}
