.product-page { background: #090c11; }
.product-page .top { position: sticky; background: #090c11ed; border-bottom: 1px solid var(--line); }
.product-page .veil { z-index: 0; }
.product-page > main, .product-page > .reviews, .product-page > .foot { position: relative; z-index: 1; }
.product-wrap { max-width: 76rem; margin: 0 auto; padding-inline: clamp(1.25rem, 4vw, 3rem); }
.product-crumbs { display: flex; flex-wrap: wrap; gap: .6rem; margin: 2rem 0 1rem; font-size: .7rem; color: #9e9689; }
.product-hero { display: grid; grid-template-columns: 1fr 1.05fr; gap: clamp(2rem, 5vw, 5rem); align-items: start; padding-block: 2rem 4rem; }
.product-visual { position: sticky; top: 7rem; background: radial-gradient(ellipse, #96714e12, transparent 65%); }
.product-visual__image { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; filter: drop-shadow(0 20px 30px #0006); }
.product-visual p { color: #999184; text-align: center; font-size: .7rem; max-width: 23rem; margin: 0 auto; }
.product-summary .sec__eyebrow { text-align: left; margin-bottom: 1rem; }
.product-summary h1 { font-size: clamp(3rem, 6vw, 5.2rem); line-height: 1.05; margin: 0; }
.product-summary__size { font-size: .8rem; color: #b9a186; margin: .8rem 0 2rem; }
.product-copy { font-size: .9rem; line-height: 1.9; color: #c0b7a9; }
.product-copy p { margin: 0 0 1.15rem; }
.product-buy { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; margin-top: 2rem; }
.product-buy > div { min-width: 0; padding: 1.1rem; border: 1px solid #c4a17c38; border-radius: 4px; display: flex; flex-direction: column; align-items: start; }
.product-buy span { font-size: .67rem; color: #b1a799; }
.product-buy strong { display: block; font-family: var(--display); font-size: 1.75rem; font-weight: 400; margin: .4rem 0 1rem; }
.product-buy .btn { padding: .7rem .9rem; font-size: .65rem; letter-spacing: .02em; width: 100%; text-align: center; margin-top: auto; }
.product-summary__help { color: #999184; font-size: .7rem; margin-top: 1rem; }
.product-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(2rem, 7vw, 7rem); }
.product-detail-grid h2 { font-size: 2.5rem; text-align: left; margin-bottom: 1.8rem; }
.product-detail-grid .sec__eyebrow { text-align: left; }
.product-detail-grid p, .product-detail-grid li { color: #b9b0a2; font-size: .88rem; line-height: 1.9; }
.product-detail-grid ul { padding-left: 1rem; }
.product-detail-grid li { padding: .4rem 0; }
.product-detail-grid a { font-size: .8rem; }
.product-details { border-block: 1px solid var(--line); background: #13171d77; }
.product-film { padding-top: 2rem; }
.product-film video { display: block; margin: 3rem auto 0; max-width: min(100%, 34rem); max-height: 70svh; width: auto; height: auto; border-radius: 6px; background: #11161b; }
.product-related__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1.5rem; margin-top: 3rem; }
.product-related__grid a { text-align: center; font: 300 1.5rem var(--display); }
.product-related__grid img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; margin-bottom: 1.5rem; transition: transform .3s; }
.product-related__grid a:hover img { transform: translateY(-5px); }
.collection { padding-block: clamp(3rem, 8vw, 6rem); }
.collection > h1 { font-size: clamp(3rem, 7vw, 5rem); text-align: center; }
.collection__intro { max-width: 40rem; text-align: center; color: #b7ad9d; font-size: .9rem; margin: 1.5rem auto 3.5rem; }
.collection-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 3vw, 2.5rem); }
.collection-card { min-width: 0; display: block; padding: 1.5rem; border: 1px solid #c4a17c25; border-radius: 3px 24px 3px 3px; background: linear-gradient(140deg, #ffffff05, #ffffff01); transition: border-color .3s, background .3s; }
.collection-card:hover { border-color: #c4a17c77; background: #b08d5809; }
.collection-card img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; transition: transform .4s; }
.collection-card:hover img { transform: translateY(-6px); }
.collection-card h2 { text-align: left; font-size: clamp(1.6rem, 3vw, 2.2rem); color: #e7dfd1; margin-top: 1.2rem; }
.collection-card p { color: #a69c8e; font-size: .7rem; margin: .6rem 0 1.3rem; }
.collection-card > span { display: flex; align-items: center; justify-content: space-between; border-top: 1px solid var(--line); padding-top: 1rem; font-size: .75rem; }
.collection-card i { font-style: normal; font-size: 1.2rem; }
.catalogue-links { max-width: 55rem; margin: 2.5rem auto; text-align: center; }
.catalogue-links p { font-size: .7rem; color: #a69c8e; }
.catalogue-links__items { display: flex; flex-wrap: wrap; justify-content: center; gap: .5rem 1.2rem; font-size: .75rem; }
.catalogue-links__all { display: inline-block; margin-top: 1.3rem; font-size: .8rem; border-bottom: 1px solid var(--gold-dim); }
@media(max-width: 760px) {
 .product-hero, .product-detail-grid { grid-template-columns: minmax(0, 1fr); }
 .product-hero { gap: 1.5rem; padding-top: 0; }
 .product-visual { position: static; }
 .product-visual__image { max-width: 420px; margin-inline: auto; }
 .product-summary h1 { font-size: 3.4rem; }
 .product-buy { gap: .6rem; }
 .product-buy > div { padding: .9rem; }
 .product-buy strong { font-size: 1.55rem; }
 .product-buy .btn { padding-inline: .6rem; }
 .collection-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
 .collection-card { padding: .85rem; }
 .collection-card h2 { font-size: 1.6rem; }
 .product-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width: 370px) { .product-buy { grid-template-columns: 1fr; } }
