/* WP Amazon Affiliate Pro — single-product CSS
 * Aesthetic: editorial spec-sheet. Warm-paper background, deep ink,
 * cobalt accent. Fraunces (display serif) + IBM Plex Sans (body) +
 * JetBrains Mono (data). Hairline rules. Tabular numerals on prices.
 * Scoped under .wpaap-product-article so nothing bleeds into theme.
 */

.wpaap-product-article {
    /* ── Tokens ────────────────────────────────────────────── */
    --wpaap-paper:        #F4EFE5;
    --wpaap-paper-deep:   #ECE5D6;
    --wpaap-ink:          #14110D;
    --wpaap-ink-soft:     #4A453C;
    --wpaap-ink-faint:    #8A8276;
    --wpaap-rule:         #1A1814;
    --wpaap-rule-soft:    rgba(20, 17, 13, 0.14);
    /* Single accent palette — Amazon amber. Bright for decorative
       fills/strokes/markers; deep for text-bearing uses (link colors,
       hover states) where the bright amber would fail readability on
       warm paper. CTA button uses the bright amber direct. */
    --wpaap-accent:       #FFA41C;
    --wpaap-accent-deep:  #A85F00;
    --wpaap-warn:         #B33A1F;
    --wpaap-savings:      #0C5B2C;
    --wpaap-cta:          #FFA41C;
    --wpaap-cta-hover:    #F0890E;

    --wpaap-display:      'Fraunces', 'Iowan Old Style', 'Palatino Linotype', Georgia, serif;
    --wpaap-sans:         'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif;
    --wpaap-mono:         'Geist Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;

    /* Subtle paper-grain noise — 240×240 SVG, base64 inline so no asset hop */
    --wpaap-grain: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.05 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");

    background: var(--wpaap-paper);
    color: var(--wpaap-ink);
    font-family: var(--wpaap-sans);
    font-size: 17px;
    line-height: 1.6;
    font-feature-settings: 'ss01', 'cv11';
    position: relative;
    isolation: isolate;
    padding: clamp(28px, 5vw, 64px) clamp(20px, 4vw, 56px);
    border: 1px solid var(--wpaap-rule);
    box-shadow:
        0 1px 0 var(--wpaap-rule-soft),
        0 24px 60px -32px rgba(20, 17, 13, 0.25);
    /* `overflow: clip` clips the paper-grain pseudo-element without
       creating a scroll container, so the descendant
       .wpaap-product-image-col can still position: sticky against the
       viewport. `overflow: hidden` would establish a scroll-port and
       break sticky entirely. Fallback to `hidden` for browsers that
       don't support `clip` (ancient mobile WebViews). */
    overflow: hidden;
    overflow: clip;
}

.wpaap-product-article::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: var(--wpaap-grain);
    opacity: 0.7;
    mix-blend-mode: multiply;
    pointer-events: none;
    z-index: 0;
}

.wpaap-product-article > * { position: relative; z-index: 1; }

.wpaap-product-main {
    max-width: 1180px;
    margin: clamp(20px, 3vw, 40px) auto;
    padding: 0 clamp(12px, 3vw, 28px);
    box-sizing: border-box;
}

/* ── Breadcrumb ────────────────────────────────────────────── */
.wpaap-product-breadcrumb {
    font-family: var(--wpaap-mono);
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--wpaap-ink-soft);
    margin: 0 0 clamp(28px, 4vw, 48px);
    padding-bottom: 14px;
    border-bottom: 1px solid var(--wpaap-rule);
    /* Flex layout so we can ellipsize the current-page label when it
       overflows the viewport width on mobile. inline-flex keeps the
       baseline behavior on desktop where everything fits. */
    display: flex;
    align-items: baseline;
    flex-wrap: nowrap;
    min-width: 0;
    overflow: hidden;
}
.wpaap-product-breadcrumb a {
    /* HOME and any category links — bold + underlined per-spec, with
       deep-amber accent on hover to match the rest of the chrome. */
    color: var(--wpaap-ink);
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1.5px;
    transition: color 120ms ease, text-decoration-color 120ms ease;
    flex-shrink: 0;
}
.wpaap-product-breadcrumb a:hover {
    color: var(--wpaap-accent-deep);
    text-decoration-color: var(--wpaap-accent-deep);
}
.wpaap-product-breadcrumb [aria-current="page"] {
    color: var(--wpaap-ink);
    font-weight: 500;
    /* Allowed to shrink and ellipsize within the flex row so the
       current title never overflows the article edge. */
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.wpaap-product-breadcrumb-sep {
    margin: 0 10px;
    color: var(--wpaap-ink-faint);
    flex-shrink: 0;
}

@media (max-width: 560px) {
    /* Tighter spacing on phones so HOME › Title stays on one line. */
    .wpaap-product-breadcrumb { font-size: 10px; letter-spacing: 0.14em; }
    .wpaap-product-breadcrumb-sep { margin: 0 6px; }
}

/* ── Layout: sticky image left, scrolling content right ─── */
.wpaap-product-layout {
    /* Site headers are often sticky and 60–80px tall. Keeps the image
       below them. Themes can override by setting --wpaap-sticky-top. */
    --wpaap-sticky-top: clamp(20px, 5vh, 96px);

    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: clamp(28px, 5vw, 64px);
    align-items: start;
    animation: wpaapRise 700ms cubic-bezier(0.2, 0.7, 0.2, 1) both;
}

.wpaap-product-image-col {
    position: sticky;
    top: var(--wpaap-sticky-top);
    align-self: start;
    /* Sidebar is locked to the image's 16:9 ratio — no height cap, no
       padding. The frame's aspect-ratio fully drives the column size. */
}

.wpaap-product-image-frame {
    position: relative;
    margin: 0;
    width: 100%;
    aspect-ratio: 16 / 9;
    background: var(--wpaap-ink);
    border: 1px solid var(--wpaap-rule);
    overflow: hidden;
    box-shadow: 8px 8px 0 0 var(--wpaap-rule);
    display: flex;
    align-items: center;
    justify-content: center;
}
.wpaap-product-image-frame::before {
    /* Fine-rule inner mat — gives the framed-print feel even with cover */
    content: '';
    position: absolute;
    inset: 12px;
    border: 1px solid rgba(244, 239, 229, 0.10);
    pointer-events: none;
    z-index: 2;
}
.wpaap-product-image-frame img {
    width: 100%;
    height: 100%;
    display: block;
    transition: transform 600ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.wpaap-product-image-frame.is-cover img {
    /* Curated 1200×675 featured image — fill the frame edge-to-edge */
    object-fit: cover;
}
.wpaap-product-image-frame.is-contain {
    /* Fallback API images are square product photos, often on white */
    background: var(--wpaap-paper-deep);
    padding: clamp(28px, 4vw, 56px);
    box-sizing: border-box;
}
.wpaap-product-image-frame.is-contain::before {
    border-color: var(--wpaap-rule-soft);
}
.wpaap-product-image-frame.is-contain img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 14px 24px rgba(20, 17, 13, 0.18));
}
.wpaap-product-image-frame:hover img { transform: scale(1.02); }

.wpaap-product-image-caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    padding: 28px 16px 14px;
    text-align: center;
    font-family: var(--wpaap-mono);
    font-size: 10px;
    letter-spacing: 0.32em;
    text-transform: uppercase;
    color: rgba(244, 239, 229, 0.62);
    /* Soft veil so the caption stays legible against any image content */
    background: linear-gradient(
        to bottom,
        rgba(20, 17, 13, 0) 0%,
        rgba(20, 17, 13, 0.55) 100%
    );
    pointer-events: none;
}
.wpaap-product-image-frame.is-contain .wpaap-product-image-caption {
    color: var(--wpaap-ink-faint);
    background: linear-gradient(
        to bottom,
        rgba(236, 229, 214, 0) 0%,
        rgba(236, 229, 214, 0.85) 100%
    );
}

.wpaap-product-hero-image-placeholder {
    width: 50%;
    aspect-ratio: 1 / 1;
    background:
        repeating-linear-gradient(45deg,
            rgba(244, 239, 229, 0.08) 0 1px,
            transparent 1px 12px);
    border: 1px solid rgba(244, 239, 229, 0.12);
}

/* Content column scrolls naturally — sticky image stays put */
.wpaap-product-content-col {
    min-width: 0;
}

/* The hero now lives inside the sticky sidebar, directly below the
   image frame. It's just the meta block (brand → title → price → CTA). */
.wpaap-product-hero {
    margin: clamp(20px, 2.5vw, 32px) 0 0;
}
.wpaap-product-hero-meta { min-width: 0; }

.wpaap-product-brand {
    margin: 0 0 14px;
    font-family: var(--wpaap-mono);
    font-size: 11px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--wpaap-ink);
    display: inline-block;
    padding: 4px 10px 3px;
    border: 1px solid var(--wpaap-rule);
    background: var(--wpaap-paper-deep);
}

.wpaap-product-title.entry-title {
    margin: 0 0 18px;
    font-family: var(--wpaap-display);
    font-weight: 460;
    font-style: normal;
    font-variation-settings: 'opsz' 144, 'SOFT' 30, 'WONK' 0;
    font-size: clamp(34px, 5.6vw, 64px);
    line-height: 1.02;
    letter-spacing: -0.02em;
    color: var(--wpaap-ink);
    text-wrap: balance;
}

.wpaap-product-rank {
    margin: 0 0 28px;
    padding-top: 14px;
    border-top: 1px solid var(--wpaap-rule);
    display: flex;
    flex-direction: column;
    gap: 4px;
    font-family: var(--wpaap-mono);
}
.wpaap-product-rank::before {
    content: '◆ Best Sellers Rank';
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--wpaap-ink-faint);
}
.wpaap-product-rank-value {
    font-size: 13px;
    letter-spacing: 0.04em;
    color: var(--wpaap-ink);
    font-feature-settings: 'tnum';
}
.wpaap-product-rank-recorded {
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--wpaap-ink-faint);
    font-feature-settings: 'tnum';
}

/* ── Pricing — heroic ─────────────────────────────────────── */
.wpaap-product-pricing {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 18px 22px;
    margin: 6px 0 18px;
    padding: 24px 0 22px;
    border-top: 1px solid var(--wpaap-rule);
    border-bottom: 1px solid var(--wpaap-rule);
}

.wpaap-product-price-current {
    font-family: var(--wpaap-display);
    font-weight: 500;
    font-variation-settings: 'opsz' 144, 'SOFT' 50;
    font-size: clamp(40px, 6vw, 68px);
    line-height: 1;
    letter-spacing: -0.025em;
    color: var(--wpaap-ink);
    font-feature-settings: 'tnum', 'lnum';
}

.wpaap-product-price-list {
    font-family: var(--wpaap-mono);
    font-size: 18px;
    color: var(--wpaap-ink-faint);
    text-decoration: line-through;
    text-decoration-thickness: 1px;
    text-decoration-color: var(--wpaap-ink-faint);
    font-feature-settings: 'tnum';
}

.wpaap-product-price-savings {
    font-family: var(--wpaap-mono);
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    /* Tomato — strong red-orange so the discount badge reads as a
       price cut at a glance. White text for AAA contrast on the
       saturated fill. */
    background: #D7401C;
    color: #FFFFFF;
    padding: 6px 10px 5px;
    align-self: center;
    font-weight: 700;
    border: 1px solid #B33218;
}

/* ── CTA ───────────────────────────────────────────────────── */
.wpaap-product-cta-row {
    margin: 24px 0;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    align-items: center;
}

.wpaap-product-cta {
    --shadow-x: 6px;
    --shadow-y: 6px;
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 14px;
    width: 100%;
    padding: 18px 28px;
    background: var(--wpaap-cta);
    color: var(--wpaap-ink);
    font-family: var(--wpaap-mono);
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--wpaap-ink);
    box-shadow: var(--shadow-x) var(--shadow-y) 0 0 var(--wpaap-ink);
    transition: transform 160ms cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 160ms cubic-bezier(0.2, 0.7, 0.2, 1),
                background 160ms ease;
}
.wpaap-product-cta::after {
    content: '↗';
    font-family: var(--wpaap-display);
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 0;
    transition: transform 200ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.wpaap-product-cta:hover {
    background: var(--wpaap-cta-hover);
    transform: translate(2px, 2px);
    box-shadow: 4px 4px 0 0 var(--wpaap-ink);
    color: var(--wpaap-ink);
}
.wpaap-product-cta:hover::after { transform: translate(2px, -2px); }
.wpaap-product-cta:focus-visible {
    /* Bright amber outline on a bright amber button would vanish —
       use the deep amber (burnt umber) for the focus ring instead. */
    outline: 2px solid var(--wpaap-accent-deep);
    outline-offset: 4px;
}

.wpaap-product-cta-row { width: 100%; }

/* ── Share button — secondary, outline ────────────────────── */
.wpaap-product-share-row {
    margin: 14px 0 0;
    width: 100%;
}
.wpaap-product-share {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    padding: 14px 22px;
    background: transparent;
    color: var(--wpaap-ink);
    font-family: var(--wpaap-mono);
    font-size: 12px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--wpaap-ink);
    cursor: pointer;
    transition: background 160ms ease, color 160ms ease;
    -webkit-tap-highlight-color: transparent;
}
.wpaap-product-share:hover {
    background: var(--wpaap-ink);
    color: var(--wpaap-paper);
}
.wpaap-product-share:focus-visible {
    outline: 2px solid var(--wpaap-accent-deep);
    outline-offset: 4px;
}
.wpaap-product-share.is-flashed {
    background: var(--wpaap-accent);
    color: var(--wpaap-ink);
    border-color: var(--wpaap-ink);
}
.wpaap-product-share-icon {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    /* SVG share/upload glyph — arrow rising out of a tray. Inline so
       theme servers and offline previews don't need an asset round-trip.
       Color is `currentColor` via CSS mask so it follows hover/flashed states. */
    background-color: currentColor;
    -webkit-mask: var(--wpaap-share-icon) center / contain no-repeat;
    mask: var(--wpaap-share-icon) center / contain no-repeat;
}
.wpaap-product-article {
    --wpaap-share-icon: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='square' stroke-linejoin='round'%3E%3Cpath d='M12 16V3'/%3E%3Cpath d='M7 8l5-5 5 5'/%3E%3Cpath d='M4 14v6h16v-6'/%3E%3C/svg%3E");
    --wpaap-chart-icon: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 20h18'/%3E%3Cpath d='M5 16l4-5 4 3 6-9'/%3E%3C/svg%3E");
    --wpaap-list-icon: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='8' y1='6' x2='21' y2='6'/%3E%3Cline x1='8' y1='12' x2='21' y2='12'/%3E%3Cline x1='8' y1='18' x2='21' y2='18'/%3E%3Cline x1='3' y1='6' x2='3.01' y2='6'/%3E%3Cline x1='3' y1='12' x2='3.01' y2='12'/%3E%3Cline x1='3' y1='18' x2='3.01' y2='18'/%3E%3C/svg%3E");
    --wpaap-grid-icon: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='7' height='7'/%3E%3Crect x='14' y='3' width='7' height='7'/%3E%3Crect x='14' y='14' width='7' height='7'/%3E%3Crect x='3' y='14' width='7' height='7'/%3E%3C/svg%3E");
}

/* ── Jumplink to price history ──────────────────────────── */
.wpaap-product-jumplink-row {
    margin: 10px 0 0;
    width: 100%;
}
.wpaap-product-jumplink {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 12px 18px;
    background: transparent;
    color: var(--wpaap-ink-soft);
    font-family: var(--wpaap-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px dashed var(--wpaap-rule);
    transition: color 160ms ease, border-color 160ms ease, background 160ms ease;
}
.wpaap-product-jumplink:hover {
    color: var(--wpaap-ink);
    border-color: var(--wpaap-ink);
    background: var(--wpaap-paper-deep);
    text-decoration: none;
}
.wpaap-product-jumplink:focus-visible {
    outline: 2px solid var(--wpaap-accent-deep);
    outline-offset: 4px;
}
.wpaap-product-jumplink-icon {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
    background-color: currentColor;
    -webkit-mask: var(--wpaap-chart-icon) center / contain no-repeat;
    mask: var(--wpaap-chart-icon) center / contain no-repeat;
}
.wpaap-product-jumplink-icon--specs {
    -webkit-mask-image: var(--wpaap-list-icon);
    mask-image: var(--wpaap-list-icon);
}
.wpaap-product-jumplink-icon--related {
    -webkit-mask-image: var(--wpaap-grid-icon);
    mask-image: var(--wpaap-grid-icon);
}

/* Mobile-only jumplinks for Full Specs / Related Products. The
   sticky sidebar already keeps everything visible on desktop, so
   we hide these to avoid redundant CTAs there. */
.wpaap-product-jumplink-row--mobile { display: none; }
@media (max-width: 880px) {
    .wpaap-product-jumplink-row--mobile { display: block; }
}

/* Sticky-header offset for the smooth scroll target. */
#wpaap-price-history,
#wpaap-product-specs,
#wpaap-product-related {
    scroll-margin-top: var(--wpaap-sticky-top, 80px);
}

/* ── Mobile back-to-top link at the bottom of jump-target sections ─ */
.wpaap-product-back-to-top { display: none; }
@media (max-width: 880px) {
    .wpaap-product-back-to-top {
        display: block;
        margin: 28px 0 0;
        text-align: center;
    }
}
.wpaap-product-back-link {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 22px;
    background: transparent;
    color: var(--wpaap-ink);
    font-family: var(--wpaap-mono);
    font-size: 11px;
    font-weight: 500;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    text-decoration: none;
    border: 1px solid var(--wpaap-ink);
    transition: background 160ms ease, color 160ms ease;
    -webkit-tap-highlight-color: transparent;
}
.wpaap-product-back-link:hover,
.wpaap-product-back-link:focus {
    background: var(--wpaap-ink);
    color: var(--wpaap-paper);
    text-decoration: none;
}
.wpaap-product-back-link:focus-visible {
    outline: 2px solid var(--wpaap-accent-deep);
    outline-offset: 3px;
}
.wpaap-product-back-arrow {
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
}

.wpaap-product-cta-disabled {
    font-family: var(--wpaap-mono);
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--wpaap-warn);
    padding: 14px 20px;
    border: 1px dashed var(--wpaap-warn);
}

.wpaap-product-cta-row--bottom {
    margin: 56px 0 0;
    padding-top: 36px;
    border-top: 1px solid var(--wpaap-rule);
    justify-content: flex-start;
}

/* ── Sections ──────────────────────────────────────────────── */
.wpaap-product-section {
    margin: 0 0 clamp(40px, 5vw, 64px);
    padding-top: clamp(32px, 4vw, 52px);
    border-top: 1px solid var(--wpaap-rule);
    position: relative;
}

.wpaap-product-section-title {
    margin: 0 0 28px;
    font-family: var(--wpaap-display);
    font-weight: 700;
    font-style: normal;
    font-variation-settings: 'opsz' 36, 'SOFT' 30;
    font-size: clamp(22px, 2.4vw, 28px);
    line-height: 1;
    letter-spacing: -0.015em;
    color: var(--wpaap-ink);
    text-transform: none;
}

/* ── Summary ──────────────────────────────────────────────── */
.wpaap-product-summary {
    border-top: none;
    padding-top: 0;
}
.wpaap-product-summary-body {
    font-family: var(--wpaap-display);
    font-weight: 380;
    font-variation-settings: 'opsz' 36, 'SOFT' 50;
    font-size: clamp(20px, 2.2vw, 24px);
    line-height: 1.45;
    color: var(--wpaap-ink-soft);
    max-width: 70ch;
    text-wrap: pretty;
}
.wpaap-product-summary-body p { margin: 0 0 14px; }
.wpaap-product-summary-body p:last-child { margin-bottom: 0; }
.wpaap-product-summary-body strong {
    color: var(--wpaap-ink);
    font-weight: 600;
}

/* ── Highlights ───────────────────────────────────────────── */
.wpaap-product-highlights-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 360px), 1fr));
    gap: 0;
    border-top: 1px solid var(--wpaap-rule-soft);
}
.wpaap-product-highlights-list li {
    position: relative;
    padding: 18px 18px 18px 44px;
    border-bottom: 1px solid var(--wpaap-rule-soft);
    border-right: 1px solid var(--wpaap-rule-soft);
    line-height: 1.5;
    color: var(--wpaap-ink);
    font-size: 16px;
}
.wpaap-product-highlights-list li:last-child { border-right-color: transparent; }
.wpaap-product-highlights-list li::before {
    content: '';
    position: absolute;
    left: 18px;
    top: 26px;
    width: 12px;
    height: 1px;
    background: var(--wpaap-accent);
}
.wpaap-product-highlights-list li::after {
    content: '';
    position: absolute;
    left: 26px;
    top: 22px;
    width: 7px;
    height: 7px;
    background: var(--wpaap-accent);
    border-radius: 50%;
}
/* Legacy HTML highlights fallback */
.wpaap-product-highlights-body ul:not(.wpaap-product-highlights-list) {
    margin: 0;
    padding: 0 0 0 20px;
}

/* ── Specs table ──────────────────────────────────────────── */
.wpaap-product-specs-table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
    border-top: 1px solid var(--wpaap-rule);
    border-bottom: 1px solid var(--wpaap-rule);
    font-size: 15px;
}
.wpaap-product-specs-table th,
.wpaap-product-specs-table td {
    padding: 14px 16px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--wpaap-rule-soft);
}
.wpaap-product-specs-table tr:last-child th,
.wpaap-product-specs-table tr:last-child td { border-bottom: none; }
.wpaap-product-specs-table th {
    width: 38%;
    font-family: var(--wpaap-mono);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--wpaap-ink);
    background: var(--wpaap-paper-deep);
}
.wpaap-product-specs-table td {
    font-family: var(--wpaap-mono);
    font-size: 14px;
    line-height: 1.5;
    color: var(--wpaap-ink);
    font-feature-settings: 'tnum';
    word-break: break-word;
}
.wpaap-product-specs-table tr:hover td { background: rgba(255, 164, 28, 0.07); }

/* ── Description ─────────────────────────────────────────── */
.wpaap-product-description-body {
    font-size: 17px;
    line-height: 1.7;
    color: var(--wpaap-ink-soft);
    max-width: 70ch;
}
.wpaap-product-description-body p { margin: 0 0 14px; }
.wpaap-product-description-body strong { color: var(--wpaap-ink); }
.wpaap-product-description-body a {
    color: var(--wpaap-accent-deep);
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
}

/* ── Price history ────────────────────────────────────────── */
.wpaap-product-history-title {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}
.wpaap-product-alpha-badge {
    display: inline-flex;
    align-items: center;
    padding: 5px 10px 4px;
    background: var(--wpaap-cta);
    color: var(--wpaap-ink);
    border: 1px solid var(--wpaap-ink);
    font-family: var(--wpaap-mono);
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    line-height: 1;
    box-shadow: 3px 3px 0 0 var(--wpaap-ink);
    transform: rotate(-1.5deg);
    transform-origin: left center;
}

.wpaap-product-alpha-disclaimer {
    margin: 0 0 24px;
    padding: 14px 18px;
    background: rgba(255, 164, 28, 0.10);
    border: 1px solid var(--wpaap-rule);
    border-left: 3px solid var(--wpaap-cta);
    font-family: var(--wpaap-sans);
    font-size: 13px;
    line-height: 1.55;
    color: var(--wpaap-ink-soft);
}
.wpaap-product-alpha-disclaimer strong {
    font-family: var(--wpaap-mono);
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--wpaap-ink);
    margin-right: 6px;
}
.wpaap-product-alpha-disclaimer a {
    color: var(--wpaap-accent-deep);
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
}
.wpaap-product-alpha-disclaimer a:hover {
    color: var(--wpaap-ink);
}

/* ── Savings-from-launch banner ───────────────────────────── */
.wpaap-product-launch-savings {
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 0 0 24px;
    padding: 18px 22px;
    background: var(--wpaap-ink);
    color: var(--wpaap-paper);
    border: 1px solid var(--wpaap-ink);
    box-shadow: 6px 6px 0 0 var(--wpaap-cta);
}
.wpaap-product-launch-savings-pct {
    font-family: var(--wpaap-display);
    font-weight: 700;
    font-variation-settings: 'opsz' 144, 'SOFT' 30;
    font-size: clamp(36px, 5vw, 56px);
    line-height: 1;
    letter-spacing: -0.02em;
    color: var(--wpaap-cta);
    font-feature-settings: 'tnum';
    flex-shrink: 0;
}
.wpaap-product-launch-savings-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}
.wpaap-product-launch-savings-headline {
    font-family: var(--wpaap-mono);
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--wpaap-cta);
}
.wpaap-product-launch-savings-detail {
    font-family: var(--wpaap-mono);
    font-size: 12px;
    line-height: 1.5;
    color: rgba(244, 239, 229, 0.78);
    font-feature-settings: 'tnum';
}

/* ── Stats grid ───────────────────────────────────────────── */
.wpaap-product-history-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0;
    margin: 0 0 24px;
    border: 1px solid var(--wpaap-rule);
}
.wpaap-product-history-stat {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px 18px;
    border-right: 1px solid var(--wpaap-rule-soft);
    border-bottom: 1px solid var(--wpaap-rule-soft);
    background: var(--wpaap-paper-deep);
}
/* Last item per row gets no right border, last row no bottom border —
   approximated with negative margin trick on the parent. Acceptable
   visual: every cell has trailing rules; the outer container clips them. */
.wpaap-product-history-summary { overflow: hidden; }
.wpaap-product-history-stat:last-child { border-right: none; }

.wpaap-product-history-label {
    font-family: var(--wpaap-mono);
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: var(--wpaap-ink-faint);
}
.wpaap-product-history-value {
    font-family: var(--wpaap-display);
    font-weight: 500;
    font-variation-settings: 'opsz' 72;
    font-size: 22px;
    line-height: 1;
    color: var(--wpaap-ink);
    font-feature-settings: 'tnum';
}
.wpaap-product-history-meta {
    font-family: var(--wpaap-mono);
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--wpaap-ink-faint);
    font-feature-settings: 'tnum';
}

/* Launch stat — bold + amber accent so it reads as the anchor point */
.wpaap-product-history-stat--launch {
    background: var(--wpaap-paper);
    border-top: 3px solid var(--wpaap-cta);
    margin-top: -1px;
}
.wpaap-product-history-stat--launch .wpaap-product-history-label {
    color: var(--wpaap-ink);
    font-weight: 600;
}
.wpaap-product-history-stat--launch .wpaap-product-history-value {
    font-weight: 700;
    font-variation-settings: 'opsz' 144, 'SOFT' 30;
    font-size: 26px;
    color: var(--wpaap-ink);
}

@media (max-width: 560px) {
    .wpaap-product-launch-savings {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
        padding: 16px 18px;
        box-shadow: 4px 4px 0 0 var(--wpaap-cta);
    }
    .wpaap-product-launch-savings-pct { font-size: 42px; }
}

/* ── Price freshness line + disclosure ───────────────────── */
.wpaap-product-price-asof {
    margin: -2px 0 20px;
    font-family: var(--wpaap-mono);
    /* Bumped from 10px+faint to 12px+ink so the freshness stamp
       reads as load-bearing data, not decorative metadata. */
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--wpaap-ink);
    font-feature-settings: 'tnum';
    display: flex;
    align-items: center;
    gap: 9px;
}
.wpaap-product-price-asof::before {
    content: '';
    width: 8px;
    height: 8px;
    background: var(--wpaap-accent);
    border: 1px solid var(--wpaap-ink);
    flex-shrink: 0;
}

/* Affiliate disclosure block sits at the bottom of the sticky meta
   column. The shortcode actually outputs `.wpaap-top-disclosure`
   (legacy `.amazon-disclosure-block` selectors are kept for older
   markup). Without explicit spacing the block hugs the jumplink
   button above it, so we force a clear gap. */
.wpaap-product-hero-meta .wpaap-top-disclosure,
.wpaap-product-hero-meta .amazon-disclosure-block,
.wpaap-product-hero-meta .amazon-disclosure {
    margin-top: 22px !important;
    font-family: var(--wpaap-mono) !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    letter-spacing: 0.04em !important;
    color: var(--wpaap-ink-faint) !important;
    background: transparent !important;
    border: none !important;
    border-left: 2px solid var(--wpaap-accent) !important;
    padding: 6px 0 6px 14px !important;
    border-radius: 0 !important;
}
/* Inner span / paragraph reset so theme styles can't push the text
   in unexpected directions inside our scoped column. */
.wpaap-product-hero-meta .wpaap-top-disclosure__text,
.wpaap-product-hero-meta .wpaap-top-disclosure p {
    margin: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

/* ── Reveal animation ─────────────────────────────────────── */
@keyframes wpaapRise {
    from { opacity: 0; transform: translateY(14px); }
    to   { opacity: 1; transform: translateY(0); }
}
.wpaap-product-section {
    animation: wpaapRise 700ms cubic-bezier(0.2, 0.7, 0.2, 1) both;
}
.wpaap-product-section:nth-of-type(1) { animation-delay: 80ms; }
.wpaap-product-section:nth-of-type(2) { animation-delay: 140ms; }
.wpaap-product-section:nth-of-type(3) { animation-delay: 200ms; }
.wpaap-product-section:nth-of-type(4) { animation-delay: 260ms; }
.wpaap-product-section:nth-of-type(5) { animation-delay: 320ms; }

@media (prefers-reduced-motion: reduce) {
    .wpaap-product-hero,
    .wpaap-product-section { animation: none; }
    .wpaap-product-cta,
    .wpaap-product-cta::after,
    .wpaap-product-hero-image img { transition: none; }
}

/* ── Selection & focus ─────────────────────────────────────── */
.wpaap-product-article ::selection {
    background: var(--wpaap-accent);
    color: var(--wpaap-paper);
}
.wpaap-product-article a:focus-visible {
    outline: 2px solid var(--wpaap-accent);
    outline-offset: 3px;
}

/* ── Responsive ────────────────────────────────────────────── */
@media (max-width: 880px) {
    /* Single column — image stacks on top, no sticky on narrow viewports
       where the image would otherwise eat too much screen real estate. */
    .wpaap-product-layout {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .wpaap-product-image-col {
        position: static;
        top: auto;
    }
    .wpaap-product-image-frame {
        box-shadow: 5px 5px 0 0 var(--wpaap-rule);
    }
    .wpaap-product-specs-table {
        font-size: 14px;
    }
    .wpaap-product-specs-table th,
    .wpaap-product-specs-table td { padding: 12px 12px; }
    .wpaap-product-specs-table th { width: 42%; }
}

@media (max-width: 880px) {
    /* Display-serif titles set at desktop tightness (1.02) become
       cramped on mobile when they wrap to 2-3 lines. Loosen the
       leading once we're in stacked layout. */
    .wpaap-product-title.entry-title {
        line-height: 1.18;
    }
}

@media (max-width: 560px) {
    .wpaap-product-article {
        padding: 24px 18px;
        box-shadow: 0 1px 0 var(--wpaap-rule-soft);
    }
    .wpaap-product-pricing { gap: 12px 16px; padding: 18px 0 16px; }
    .wpaap-product-cta { padding: 16px 22px; font-size: 12px; }
    .wpaap-product-history-stat { padding: 12px 14px; }
    .wpaap-product-highlights-list { grid-template-columns: 1fr; }
    .wpaap-product-highlights-list li { border-right: none; }
    .wpaap-product-title.entry-title { line-height: 1.22; }
}

/* ── Linked blogs carousel ──────────────────────────────────── */
.wpaap-lb-carousel {
    position: relative;
    margin: 0 -8px;
}
.wpaap-lb-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(320px, 1fr);
    gap: 18px;
    padding: 4px 8px 16px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 8px;
    scrollbar-width: thin;
    scrollbar-color: var(--wpaap-rule-soft) transparent;
    -ms-overflow-style: none;
}
.wpaap-lb-track::-webkit-scrollbar { height: 6px; }
.wpaap-lb-track::-webkit-scrollbar-track { background: transparent; }
.wpaap-lb-track::-webkit-scrollbar-thumb {
    background: var(--wpaap-rule-soft);
    border-radius: 3px;
}
@media (min-width: 760px) {
    .wpaap-lb-track { grid-auto-columns: minmax(360px, 48%); }
}
@media (min-width: 1100px) {
    .wpaap-lb-track { grid-auto-columns: minmax(400px, 44%); }
}
.wpaap-lb-card {
    scroll-snap-align: start;
    background: var(--wpaap-paper-deep);
    border: 1px solid var(--wpaap-rule);
    min-width: 0;
    transition: transform 200ms cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 200ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.wpaap-lb-card:hover {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 0 var(--wpaap-ink);
}
.wpaap-lb-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: 1px solid var(--wpaap-rule);
    background: var(--wpaap-paper);
    color: var(--wpaap-ink);
    font-size: 20px;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: background 150ms, box-shadow 150ms;
    padding: 0;
}
.wpaap-lb-arrow:hover {
    background: var(--wpaap-paper-deep);
    box-shadow: 0 2px 6px rgba(0,0,0,0.12);
}
.wpaap-lb-arrow:focus-visible {
    outline: 2px solid var(--wpaap-accent);
    outline-offset: 2px;
}
.wpaap-lb-arrow[disabled] {
    opacity: 0.3;
    pointer-events: none;
}
.wpaap-lb-arrow--prev { left: -10px; }
.wpaap-lb-arrow--next { right: -10px; }
.wpaap-lb-arrow span { display: block; transform: translateY(-2px); }
@media (max-width: 600px) {
    .wpaap-lb-arrow { display: none; }
}
.wpaap-linked-blogs-link {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 0;
    color: inherit;
    text-decoration: none;
    height: 100%;
}
.wpaap-linked-blogs-thumb {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--wpaap-paper);
    border-right: 1px solid var(--wpaap-rule-soft);
}
.wpaap-linked-blogs-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 300ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.wpaap-lb-card:hover .wpaap-linked-blogs-thumb img {
    transform: scale(1.04);
}
.wpaap-linked-blogs-thumb--placeholder {
    background:
        repeating-linear-gradient(45deg,
            rgba(20, 17, 13, 0.06) 0 1px,
            transparent 1px 10px),
        var(--wpaap-paper);
}
.wpaap-linked-blogs-body {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 12px 14px;
    min-width: 0;
}
.wpaap-linked-blogs-date {
    font-family: var(--wpaap-mono);
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--wpaap-ink-faint);
}
.wpaap-linked-blogs-title-line {
    font-family: var(--wpaap-display);
    font-weight: 500;
    font-variation-settings: 'opsz' 36, 'SOFT' 50;
    font-size: 17px;
    line-height: 1.25;
    color: var(--wpaap-ink);
    /* Two-line clamp keeps cards aligned at the same height. */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.wpaap-linked-blogs-excerpt {
    font-size: 13px;
    line-height: 1.5;
    color: var(--wpaap-ink-soft);
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.wpaap-linked-blogs-link:hover .wpaap-linked-blogs-title-line {
    color: var(--wpaap-accent-deep);
}

@media (max-width: 560px) {
    .wpaap-lb-track { grid-auto-columns: minmax(280px, 88vw); }
    .wpaap-linked-blogs-link { grid-template-columns: 96px 1fr; }
    .wpaap-linked-blogs-body { padding: 10px 12px; }
    .wpaap-linked-blogs-title-line { font-size: 15px; }
    .wpaap-linked-blogs-excerpt { -webkit-line-clamp: 2; font-size: 12px; }
}

/* ── Related products carousel ─────────────────────────────── */
.wpaap-related-carousel {
    position: relative;
    /* Negative margin lets the track bleed to the article edge so the
       cards feel cinematic on wide layouts. The article already has
       its own padding, which we cancel here. */
    margin: 0 -8px;
}
.wpaap-related-track {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(220px, 1fr);
    gap: 18px;
    padding: 4px 8px 16px;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-padding-left: 8px;
    scrollbar-width: thin;
    scrollbar-color: var(--wpaap-rule-soft) transparent;
    /* Hide the scrollbar visually but keep it accessible. */
    -ms-overflow-style: none;
}
.wpaap-related-track::-webkit-scrollbar { height: 6px; }
.wpaap-related-track::-webkit-scrollbar-track { background: transparent; }
.wpaap-related-track::-webkit-scrollbar-thumb {
    background: var(--wpaap-rule-soft);
    border-radius: 3px;
}

@media (min-width: 760px) {
    .wpaap-related-track { grid-auto-columns: minmax(240px, 25%); }
}
@media (min-width: 1100px) {
    .wpaap-related-track { grid-auto-columns: minmax(240px, 22%); }
}

.wpaap-related-card {
    scroll-snap-align: start;
    background: var(--wpaap-paper-deep);
    border: 1px solid var(--wpaap-rule);
    transition: transform 200ms cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 200ms cubic-bezier(0.2, 0.7, 0.2, 1);
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.wpaap-related-card:hover {
    transform: translate(-2px, -2px);
    box-shadow: 4px 4px 0 0 var(--wpaap-ink);
}
.wpaap-related-card-link {
    display: flex;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
    height: 100%;
}
.wpaap-related-card-image {
    margin: 0;
    aspect-ratio: 1 / 1;
    background: var(--wpaap-paper);
    border-bottom: 1px solid var(--wpaap-rule-soft);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    padding: 16px;
    box-sizing: border-box;
}
.wpaap-related-card-image img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    transition: transform 300ms cubic-bezier(0.2, 0.7, 0.2, 1);
}
.wpaap-related-card:hover .wpaap-related-card-image img { transform: scale(1.04); }
.wpaap-related-card-placeholder {
    width: 60%;
    aspect-ratio: 1 / 1;
    background: repeating-linear-gradient(
        45deg,
        rgba(20, 17, 13, 0.06) 0 1px,
        transparent 1px 10px
    );
}
.wpaap-related-card-body {
    padding: 14px 16px 18px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    min-width: 0;
    flex: 1;
}
.wpaap-related-card-brand {
    margin: 0;
    font-family: var(--wpaap-mono);
    font-size: 10px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: var(--wpaap-ink-faint);
}
.wpaap-related-card-title {
    margin: 0;
    font-family: var(--wpaap-display);
    font-weight: 500;
    font-variation-settings: 'opsz' 36, 'SOFT' 50;
    font-size: 16px;
    line-height: 1.25;
    color: var(--wpaap-ink);
    /* Clamp to two lines so cards stay aligned regardless of title length. */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.wpaap-related-card-price {
    margin: auto 0 0;
    padding-top: 8px;
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 6px;
    font-family: var(--wpaap-mono);
    font-feature-settings: 'tnum';
}
.wpaap-related-card-sale {
    font-size: 15px;
    font-weight: 700;
    color: var(--wpaap-ink);
}
.wpaap-related-card-mrp {
    font-size: 12px;
    font-weight: 400;
    color: var(--wpaap-ink-faint);
    text-decoration: line-through;
}
.wpaap-related-card-link:hover .wpaap-related-card-title {
    color: var(--wpaap-accent-deep);
}

/* ── Carousel arrows ────────────────────────────────────────── */
.wpaap-related-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 4;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--wpaap-paper);
    color: var(--wpaap-ink);
    border: 1px solid var(--wpaap-ink);
    box-shadow: 3px 3px 0 0 var(--wpaap-ink);
    cursor: pointer;
    font-family: var(--wpaap-display);
    font-size: 28px;
    line-height: 1;
    padding: 0;
    transition: transform 160ms cubic-bezier(0.2, 0.7, 0.2, 1),
                box-shadow 160ms cubic-bezier(0.2, 0.7, 0.2, 1),
                opacity 160ms ease;
}
.wpaap-related-arrow:hover {
    transform: translateY(-50%) translate(2px, 2px);
    box-shadow: 1px 1px 0 0 var(--wpaap-ink);
    background: var(--wpaap-accent);
}
.wpaap-related-arrow:focus-visible {
    outline: 2px solid var(--wpaap-accent-deep);
    outline-offset: 3px;
}
.wpaap-related-arrow[disabled] {
    opacity: 0.32;
    cursor: not-allowed;
    pointer-events: none;
    box-shadow: none;
}
.wpaap-related-arrow--prev { left: -10px; }
.wpaap-related-arrow--next { right: -10px; }
.wpaap-related-arrow span { display: block; transform: translateY(-2px); }

@media (max-width: 560px) {
    /* On very narrow viewports the arrows clutter the layout — let
       the user thumb-swipe the track and hide the buttons. */
    .wpaap-related-arrow { display: none; }
    .wpaap-related-carousel { margin: 0 -18px; }
    .wpaap-related-track { padding-left: 18px; padding-right: 18px; scroll-padding-left: 18px; }
    .wpaap-related-track { grid-auto-columns: minmax(180px, 60%); }
}
