/* Premium product detail composition: commerce first, detail second. */
body:has(.pdp-hero) .catalog-cart-dock { display: none !important; }
body:has(.pdp-hero) { padding-bottom: 0 !important; }

.pdp-hero {
    position: relative;
    overflow: clip;
    padding-block: clamp(38px, 5vw, 76px) !important;
    background:
        radial-gradient(circle at 82% 8%, rgba(190, 151, 87, .14), transparent 30%),
        linear-gradient(135deg, rgba(250, 248, 243, .98), rgba(243, 238, 229, .94)),
        url("/static/img/paper-bg.png") center / cover !important;
}

.pdp-hero::before {
    display: none;
}

.pdp-container {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
    grid-auto-rows: min-content;
    column-gap: clamp(28px, 3.2vw, 64px);
    width: calc(100% - clamp(28px, 4vw, 80px));
    max-width: none;
    align-items: start;
}

.pdp-container > *:not(.product-gallery) {
    grid-column: 2;
}

.pdp-container > .product-gallery {
    grid-column: 1;
    grid-row: 1 / span 12;
    align-self: start;
    min-width: 0;
    margin: 0 !important;
}

.pdp-container .product-badges {
    margin: 0 0 18px;
    justify-content: flex-start;
}

.pdp-container .product-title {
    max-width: 19ch;
    margin: 2px 0 14px !important;
    color: #211d17;
    font: 500 clamp(30px, 2.65vw, 46px)/1.02 "Cormorant Garamond", Georgia, serif !important;
    letter-spacing: -.018em;
    text-align: left;
    text-wrap: balance;
}

.pdp-container .product-collections {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 22px !important;
    justify-content: flex-start;
}

.pdp-container .catalog-current-category {
    padding: 7px 12px;
    border: 1px solid rgba(122, 92, 47, .2);
    border-radius: 999px;
    background: rgba(255, 255, 255, .45);
    color: #6d5738;
    font-size: 10px;
    letter-spacing: .14em;
    text-transform: uppercase;
}

.pdp-container .product-gallery__viewport {
    overflow: hidden;
    border: 1px solid rgba(128, 98, 53, .15);
    border-radius: clamp(24px, 3vw, 42px);
    background: rgba(255, 255, 255, .7);
    box-shadow: 0 18px 55px rgba(67, 49, 24, .09);
}

.pdp-container .product-gallery .gallery-item img,
.pdp-container #productGallery .gallery-item img {
    width: 100%;
    height: clamp(510px, 67vh, 760px) !important;
    object-fit: contain;
    padding: clamp(12px, 2vw, 28px);
}

.pdp-container .product-material-wrap {
    width: fit-content;
    max-width: 100%;
    margin: 0 0 16px;
}

.pdp-container .product-material-badge {
    display: inline-grid;
    grid-template-columns: auto auto;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 6px 7px 6px 14px;
    border: 1px solid rgba(114, 87, 46, .16);
    border-radius: 999px;
    background: rgba(255, 255, 255, .48);
    box-shadow: 0 7px 22px rgba(70, 50, 23, .045);
    box-sizing: border-box;
}

.pdp-container .product-material-label { color:#8f764f; font:600 8px/1 Inter,sans-serif; letter-spacing:.18em; text-transform:uppercase; }
.pdp-container .product-material-value { display:inline-flex; align-items:center; gap:8px; min-height:30px; margin:0; padding:5px 13px; border-radius:999px; background:#fffdfa; color:#302a22; font:600 13px/1.15 Inter,sans-serif; box-shadow:inset 0 0 0 1px rgba(114,87,46,.09); }
.pdp-container .product-material-value::before { content:""; width:12px; height:1px; background:#b88b47; }

.pdp-commerce {
    overflow: hidden;
    padding: clamp(24px, 3vw, 36px);
    border: 1px solid rgba(137, 103, 52, .17);
    border-radius: 28px;
    background: rgba(255, 255, 255, .74);
    box-shadow: 0 16px 48px rgba(62, 44, 20, .08);
    backdrop-filter: blur(18px);
}

.pdp-commerce__eyebrow {
    margin-bottom: 17px;
    color: #9a773f;
    font: 600 9px/1.2 Inter, sans-serif;
    letter-spacing: .22em;
    text-transform: uppercase;
}

.pdp-commerce__price-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 22px;
}

.pdp-commerce .purchase-price { display: grid; gap: 7px; }
.pdp-commerce .purchase-price > span {
    color: #786c5d;
    font-size: 11px;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.pdp-commerce .purchase-price strong {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 9px;
    color: #1f1b16;
    font: 500 clamp(31px, 3vw, 43px)/1 "Cormorant Garamond", serif;
}
.pdp-commerce .purchase-price del { color: #9a9185; font-size: .55em; }

.pdp-commerce__rating {
    display: grid;
    grid-template-columns: auto auto;
    align-items: center;
    gap: 1px 6px;
    color: #8d6a34;
    text-decoration: none;
}
.pdp-commerce__rating > span { font-size: 17px; }
.pdp-commerce__rating > strong { color: #2d271f; font-size: 16px; }
.pdp-commerce__rating > small { grid-column: 1 / -1; color: #81786d; font-size: 10px; }

.pdp-commerce__form .purchase-button {
    width: 100%;
    min-height: 58px;
    border: 1px solid rgba(236, 208, 158, .35);
    border-radius: 999px;
    background: linear-gradient(135deg, #25211b, #675231);
    color: #fff;
    box-shadow: 0 15px 34px rgba(51, 38, 20, .2);
    cursor: pointer;
    transition: background-color .35s ease, box-shadow .35s ease;
}
.pdp-commerce__form .purchase-button:hover {
    background: linear-gradient(135deg, #3a3022, #8a6937);
    box-shadow: 0 16px 36px rgba(51, 38, 20, .22);
}
.pdp-commerce__form .purchase-button svg { width: 18px; fill: none; stroke: currentColor; stroke-width: 1.45; }

.pdp-commerce__cart {
    display: grid;
    grid-template-columns: 1fr auto auto;
    gap: 10px;
    align-items: center;
    margin-top: 12px;
    padding: 13px 4px 16px;
    border-bottom: 1px solid rgba(117, 89, 47, .14);
    color: #746b60;
    font-size: 11px;
    text-decoration: none;
}
.pdp-commerce__cart strong { color: #332c23; font-weight: 600; }

.pdp-assurances { display: grid; gap: 13px; padding-top: 20px; }
.pdp-assurances > div { display: grid; grid-template-columns: 34px 1fr; gap: 10px; align-items: center; }
.pdp-assurances > div > span {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border: 1px solid rgba(153, 114, 52, .25);
    border-radius: 50%;
    color: #9b7539;
}
.pdp-assurances p { display: grid; gap: 2px; margin: 0; }
.pdp-assurances strong { color: #332c23; font: 600 11px/1.2 Inter, sans-serif; }
.pdp-assurances small { color: #81776a; font-size: 10px; }

.pdp-container.fade-in { animation: none !important; }
.pdp-container .product-gallery__track { transition: transform .46s ease-out; }
.pdp-container .product-gallery .gallery-item img { transition: none; }
.pdp-container .product-gallery .gallery-item:hover img { transform: none; }
.pdp-container .product-gallery__arrow { transition: opacity .35s ease, background-color .35s ease, color .35s ease; }
.pdp-container .product-gallery__arrow:hover { transform: none; }
.pdp-container .product-gallery__nav button { transition: opacity .35s ease, border-color .35s ease; }
.pdp-container .product-gallery__nav button::after { transition: transform .35s ease; }
.product-gallery__video-thumb,
.product-gallery__audio-thumb {
    position: absolute;
    inset: 50% auto auto 50%;
    display: grid;
    place-items: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: rgba(28, 23, 17, .78);
    color: #fff;
    font: 600 9px/1 Inter, sans-serif;
    transform: translate(-50%, -50%);
}
.product-gallery__audio-thumb { position: static; width: 100%; height: 100%; border-radius: 6px; transform: none; }

/* The details now read as a considered editorial sequence. */
.pdp-hero + .ring-section { border-top: 1px solid rgba(133, 101, 52, .12); }
.product-discussion { scroll-margin-top: 100px; }

@media (max-width: 980px) {
    .pdp-container {
        grid-template-columns: minmax(0, 1fr) minmax(300px, .76fr);
        gap: 30px;
    }
    .pdp-container .product-title { font-size: clamp(34px, 5vw, 48px) !important; }
    .pdp-container .product-gallery .gallery-item img,
    .pdp-container #productGallery .gallery-item img { height: min(58svh, 600px) !important; }
}

@media (max-width: 760px) {
    .pdp-hero { padding-top: 28px !important; }
    .pdp-hero::before { display: none; }
    .pdp-container {
        display: flex;
        flex-direction: column;
        width: calc(100% - 28px);
        gap: 0;
    }
    .pdp-container .product-badges { order: 1; margin-bottom: 13px; }
    .pdp-container .product-title { order: 2; max-width: none; margin-bottom: 14px !important; font-size: clamp(32px, 9.5vw, 44px) !important; line-height: 1.02 !important; }
    .pdp-container > .promotion-badge { order: 3; }
    .pdp-container .product-collections { order: 4; margin-bottom: 18px !important; }
    .pdp-container > .product-gallery { order: 5; width: 100%; }
    .pdp-container .product-material-wrap { order: 6; width: 100%; margin: 14px 0; }
    .pdp-container .pdp-commerce { order: 7; width: 100%; margin-top: 4px; }
    .pdp-container .product-gallery .gallery-item img,
    .pdp-container #productGallery .gallery-item img { height: min(58svh, 520px) !important; padding: 8px; }
    .pdp-commerce { padding: 23px 20px; border-radius: 23px; }
    .pdp-commerce__price-row { align-items: start; }
    .pdp-assurances { grid-template-columns: repeat(3, 1fr); gap: 8px; }
    .pdp-assurances > div { grid-template-columns: 1fr; align-items: start; }
    .pdp-assurances small { display: none; }
}

@media (max-width: 430px) {
    .pdp-container { width: calc(100% - 22px); }
    .pdp-container .product-gallery .gallery-item img,
    .pdp-container #productGallery .gallery-item img { height: min(50svh, 430px) !important; }
    .pdp-commerce__price-row { gap: 10px; }
    .pdp-commerce .purchase-price strong { font-size: 33px; }
    .pdp-commerce__cart { grid-template-columns: 1fr auto; }
    .pdp-commerce__cart > span:last-child { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    .pdp-commerce__form .purchase-button { transition: none; }
}
.pdp-commercial-status,.mr-product-card__commercial-status{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 16px}.availability-badge,.material-price-badge{display:inline-flex;align-items:center;min-height:30px;padding:7px 12px;border:1px solid rgba(121,91,43,.22);border-radius:999px;background:rgba(255,253,247,.84);color:#725a35;font:600 10px/1.2 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase}.availability-badge:before{content:"";width:7px;height:7px;margin-right:7px;border-radius:50%;background:#ad843f;box-shadow:0 0 0 4px rgba(173,132,63,.1)}.availability-badge--in_stock:before{background:#4f8565;box-shadow:0 0 0 4px rgba(79,133,101,.12)}.pdp-commercial-status{justify-content:center;margin:0 auto 18px}.material-price-badge{background:transparent;color:#756b5d;font-weight:500}.mr-product-card__commercial-status{margin-bottom:12px}.mr-product-card__commercial-status .availability-badge,.mr-product-card__commercial-status .material-price-badge{min-height:25px;padding:5px 9px;font-size:8px}@media(max-width:760px){.pdp-commercial-status{justify-content:flex-start}.pdp-commercial-status .availability-badge,.pdp-commercial-status .material-price-badge{font-size:9px}}
@media(max-width:760px){.pdp-container .product-material-wrap{width:100%;margin-bottom:12px}.pdp-container .product-material-badge{width:100%;grid-template-columns:1fr auto}.pdp-container .product-material-value{max-width:58vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}
@media(max-width:760px){.pdp-container .product-title{font-size:clamp(28px,8vw,38px)!important;line-height:1.04!important}}
