/* Maison Vermeil — subpage styles */
.sub-hero { padding: calc(var(--banner-h) + 160px) 24px 80px; background: var(--noir-2); text-align: center; position: relative; overflow: hidden; border-bottom: 1px solid var(--line); }
.sub-hero::before { content:""; position: absolute; inset: 0; background-image: url('https://makemonlab.studio/themes/_shared/jewelbox-img/heritage-vault.jpg'); background-size: cover; background-position: center; opacity: 0.18; }
.sub-hero::after { content:""; position: absolute; inset: 0; background: radial-gradient(circle at center, transparent 30%, rgba(20,17,13,0.85) 100%); }
.sub-breadcrumb { font-family: "Inter", sans-serif; font-size: 0.74rem; color: var(--ink-3); margin-bottom: 24px; letter-spacing: 0.18em; position: relative; z-index: 2; text-transform: uppercase; }
.sub-breadcrumb a { color: var(--gold); transition: color .25s; }
.sub-breadcrumb a:hover { color: var(--gold-soft); }
.sub-eyebrow { display: inline-block; padding: 6px 0; color: var(--gold); font-family: "Inter", sans-serif; font-size: 0.74rem; letter-spacing: 0.24em; margin-bottom: 16px; font-weight: 500; position: relative; z-index: 2; }
.sub-eyebrow::before { content:""; display: inline-block; width: 18px; height: 1px; background: var(--gold); vertical-align: middle; margin-right: 12px; }
.sub-eyebrow::after { content:""; display: inline-block; width: 18px; height: 1px; background: var(--gold); vertical-align: middle; margin-left: 12px; }
.sub-hero h1 { font-family: "Playfair Display", serif; font-size: clamp(2.8rem, 6vw, 4.6rem); margin: 0 0 20px; position: relative; z-index: 2; color: var(--cream); }
.sub-hero p { max-width: 680px; margin: 0 auto 40px; font-size: 1.1rem; position: relative; z-index: 2; font-family: "Cormorant Garamond", serif; font-style: italic; color: var(--ink); }
.sub-intro-stats { max-width: 800px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 1px; background: var(--line-2); position: relative; z-index: 2; }
.sub-stat { background: var(--noir); padding: 24px 16px; text-align: center; }
.sub-stat-num { font-family: "Playfair Display", serif; font-size: 2rem; color: var(--gold); display: block; line-height: 1; margin-bottom: 8px; }
.sub-stat-label { font-family: "Inter", sans-serif; font-size: 0.7rem; color: var(--ink-3); letter-spacing: 0.16em; }

.sub-section { padding: 100px 24px; max-width: 1280px; margin: 0 auto; }
.sub-section-head { text-align: center; margin-bottom: 64px; }
.sub-section-head h2 { font-family: "Playfair Display", serif; margin-bottom: 16px; }
.sub-section-head p { color: var(--ink-3); font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 1.1rem; }

/* Masters detail page */
.master-detail-list { display: flex; flex-direction: column; gap: 80px; max-width: 1100px; margin: 0 auto; }
.master-detail-card { display: grid; grid-template-columns: 0.8fr 1fr; gap: 56px; align-items: center; padding: 48px 0; border-bottom: 1px solid var(--line-2); }
.master-detail-card:nth-child(even) { grid-template-columns: 1fr 0.8fr; }
.master-detail-card:nth-child(even) .master-detail-photo { order: 2; }
.master-detail-photo { aspect-ratio: 4/5; background-size: cover; background-position: center; position: relative; }
.master-detail-photo::before, .master-detail-photo::after { content:""; position: absolute; width: 32px; height: 32px; border: 1px solid var(--gold); }
.master-detail-photo::before { top: -8px; left: -8px; border-right: none; border-bottom: none; }
.master-detail-photo::after { bottom: -8px; right: -8px; border-left: none; border-top: none; }
.master-detail-since { font-family: "Cormorant Garamond", serif; font-style: italic; color: var(--gold); font-size: 0.92rem; margin-bottom: 12px; letter-spacing: 0.1em; }
.master-detail-card h3 { font-family: "Playfair Display", serif; font-size: 2rem; margin-bottom: 12px; color: var(--cream); }
.master-detail-role { color: var(--gold); font-family: "Inter", sans-serif; font-size: 0.78rem; letter-spacing: 0.16em; margin-bottom: 24px; }
.master-detail-bio { color: var(--ink); line-height: 1.8; margin-bottom: 24px; font-size: 1.05rem; font-family: "Cormorant Garamond", serif; }
.master-detail-quote { font-family: "Cormorant Garamond", serif; font-style: italic; color: var(--gold); font-size: 1.1rem; padding-left: 20px; border-left: 1px solid var(--gold); }

/* Collections grid */
.coll-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 32px; max-width: 1280px; margin: 0 auto; }
.coll-detail-card { background: var(--noir); border: 1px solid var(--line); transition: border-color .3s, transform .35s; }
.coll-detail-card:hover { border-color: var(--gold); transform: translateY(-6px); }
.coll-detail-img { aspect-ratio: 1; background-size: cover; background-position: center; background-color: #1a1612; }
.coll-detail-body { padding: 28px; }
.coll-detail-tag { display: inline-block; padding: 4px 10px; color: var(--gold); border: 1px solid var(--gold); font-family: "Inter", sans-serif; font-size: 0.66rem; letter-spacing: 0.2em; margin-bottom: 12px; }
.coll-detail-card h3 { font-family: "Playfair Display", serif; font-size: 1.3rem; margin-bottom: 8px; color: var(--cream); }
.coll-detail-item { font-family: "Cormorant Garamond", serif; font-style: italic; color: var(--ink-3); font-size: 0.96rem; margin-bottom: 16px; }
.coll-detail-meta-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; padding-top: 16px; border-top: 1px solid var(--line); }
.coll-detail-meta-grid div { font-family: "Inter", sans-serif; }
.coll-detail-meta-grid em { display: block; color: var(--ink-3); font-style: normal; font-size: 0.7rem; letter-spacing: 0.16em; margin-bottom: 4px; }
.coll-detail-meta-grid strong { color: var(--gold); font-family: "Playfair Display", serif; font-size: 1rem; font-weight: 600; }

/* Heritage timeline */
.heritage-timeline { max-width: 900px; margin: 0 auto; position: relative; padding-left: 60px; }
.heritage-timeline::before { content:""; position: absolute; left: 16px; top: 0; bottom: 0; width: 1px; background: var(--gold); opacity: 0.4; }
.heritage-event { position: relative; padding: 32px 0; border-bottom: 1px dashed var(--line-2); }
.heritage-event::before { content:""; position: absolute; left: -52px; top: 36px; width: 12px; height: 12px; border: 2px solid var(--gold); border-radius: 50%; background: var(--noir); }
.heritage-year { font-family: "Playfair Display", serif; font-style: italic; color: var(--gold); font-size: 1.6rem; margin-bottom: 8px; }
.heritage-event h3 { font-family: "Playfair Display", serif; color: var(--cream); margin-bottom: 12px; font-size: 1.3rem; }
.heritage-event p { font-family: "Cormorant Garamond", serif; color: var(--ink); font-size: 1.05rem; line-height: 1.7; }

/* Secondary content */
.sub-secondary { background: var(--noir-2); padding: 100px 24px; border-top: 1px solid var(--line); }
.sub-faq-grid { max-width: 1100px; margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 24px; }
.sub-faq-item { background: var(--noir); padding: 32px; border: 1px solid var(--line); transition: border-color .3s; }
.sub-faq-item:hover { border-color: var(--gold); }
.sub-faq-item h3 { font-family: "Playfair Display", serif; color: var(--gold); margin-bottom: 12px; font-size: 1.1rem; }
.sub-faq-item p { font-family: "Cormorant Garamond", serif; font-size: 1rem; line-height: 1.7; }

/* Related */
.sub-related { padding: 80px 24px; max-width: 1280px; margin: 0 auto; border-top: 1px solid var(--line); }
.sub-rel-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; }
.sub-rel-card { background: var(--noir-2); border: 1px solid var(--line); padding: 32px 28px; transition: border-color .3s, transform .3s; cursor: pointer; }
.sub-rel-card:hover { border-color: var(--gold); transform: translateY(-4px); }
.sub-rel-card .label { font-family: "Inter", sans-serif; font-size: 0.7rem; color: var(--gold); margin-bottom: 12px; display: block; letter-spacing: 0.2em; }
.sub-rel-card h3 { font-family: "Playfair Display", serif; margin-bottom: 8px; color: var(--cream); }
.sub-rel-card p { font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 0.94rem; }

.sub-footer-cta { padding: 100px 24px; text-align: center; background: linear-gradient(135deg, var(--burgundy-deep), var(--noir)); border-top: 1px solid var(--gold); }
.sub-footer-cta-mark { font-family: "Playfair Display", serif; font-style: italic; color: var(--gold); font-size: 2rem; margin-bottom: 16px; }
.sub-footer-cta h3 { font-family: "Playfair Display", serif; font-size: clamp(1.8rem, 4vw, 2.6rem); margin-bottom: 12px; color: var(--cream); }
.sub-footer-cta p { color: var(--ink); margin-bottom: 32px; font-family: "Cormorant Garamond", serif; font-style: italic; font-size: 1.1rem; }
.sub-footer-cta .btn { display: inline-block; padding: 14px 32px; font-family: "Inter", sans-serif; font-size: 0.78rem; font-weight: 600; letter-spacing: 0.22em; transition: all .3s; margin: 0 8px; }
.sub-footer-cta .btn-primary { background: var(--gold); color: var(--noir); }
.sub-footer-cta .btn-primary:hover { background: var(--gold-soft); transform: translateY(-2px); }
.sub-footer-cta .btn-ghost { background: transparent; color: var(--gold); border: 1px solid var(--gold); }
.sub-footer-cta .btn-ghost:hover { background: var(--gold); color: var(--noir); }

@media (max-width: 768px) {
    .master-detail-card, .master-detail-card:nth-child(even) { grid-template-columns: 1fr; gap: 32px; padding: 32px 0; }
    .master-detail-card:nth-child(even) .master-detail-photo { order: 0; }
    .heritage-timeline { padding-left: 40px; }
    .sub-section { padding: 64px 16px; }
}
