.container {
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}
.page-content--centered {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
}
.lightP {
    font-size: 20px;
    margin-bottom: 15px;
}
.model a {
    color: #7db2ce !important;
}
.page-heading {
    display: none;
}
.breadcrumbs {
    display: none !important;
}
.body {
    margin: -12px 0 0 0 !important;
}

.footer .container {
    max-width: 113.54286rem !important;
    padding: 0 3.2rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative !important;
    width: 100%;
}

:root {
    --ink: #092735;
    --deep: #213b45;
    --gold: #c8790b;
    --line: #d8c7ad;
    --paper: #f8f5ef;
    --cream: #eee1cc;
}
* {
    box-sizing: border-box;
}
html {
    scroll-behavior: smooth;
}

@scope (#heritage) {
    #heritage {
        margin: 0;
        color: var(--ink);
        background: #fff;
        font-family: Arial, sans-serif;
    }
    h1,
    h2,
    h3,
    strong,
    .price {
        font-family: Georgia, serif;
        color: inherit;
    }
    a {
        color: inherit;
        text-decoration: none;
    }
    p {
        line-height: 1.65;
    }
    .topstrip {
        background: #0d0d0d;
        color: #fff;
        text-align: center;
        font-size: 10px;
        letter-spacing: 0.15em;
        padding: 10px;
        margin-top: 12px;
    }
    .heritage-header {
        height: 92px;
        border-bottom: 1px solid var(--line);
        display: flex;
        align-items: center;
        background: #fff;
    }
    .headerin {
        max-width: 1200px;
        width: 100%;
        margin: auto;
        padding: 0 22px;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .brand {
        display: flex;
        align-items: center;
        gap: 12px;
    }
    .bn {
        width: 38px;
        height: 38px;
        border: 1px solid var(--gold);
        border-radius: 50%;
        display: grid;
        place-items: center;
        font-family: Georgia, serif;
    }
    .brand b {
        display: block;
        font-size: 16px;
    }
    .brand small {
        font-size: 9px;
        letter-spacing: 0.06em;
    }
    nav {
        display: flex;
        gap: 28px;
        font-size: 12px;
    }
    nav a:hover {
        color: var(--gold);
    }
    .breadcrumb {
        max-width: 1200px;
        margin: 0 auto;
        padding: 16px 22px;
        font-size: 11px;
        color: #665b50;
    }
    .heritage-hero {
        max-width: 1200px;
        margin: auto;
        display: grid;
        grid-template-columns: 1.08fr 0.92fr;
        min-height: 520px;
    }
    .heroart {
        background: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 16px;
    }
    .heroart img {
        width: 100%;
        height: 100%;
        max-height: 500px;
        object-fit: contain;
    }
    .herocopy {
        background: var(--deep);
        color: #fff;
        padding: 64px 54px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    .kicker {
		font: 700 12px/1.2 Arial,sans-serif;
        color: var(--gold);
        font-size: 11px;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        font-weight: bold;
    }
    .herocopy .kicker {
        color: #efbd68;
    }
    h1 {
        font-size: 68px;
        line-height: 0.94;
        margin: 20px 0 28px;
        font-weight: 400;
    }
    .lead {
        font: 22px/1.55 Georgia,serif !important;
        max-width: 880px;
    }
    .btn {
        display: inline-block;
        border: 1px solid var(--gold);
        padding: 14px 18px;
        margin-top: 28px;
        font-size: 11px;
        font-weight: bold;
        letter-spacing: 0.06em;
        text-transform: uppercase;
        width: max-content;
    }
    .btn.fill {
        background: var(--gold);
        color: #fff;
    }
    .btn.light {
        color: #fff;
    }
    .archive-journey {
        max-width: 1200px;
        margin: 26px auto 42px;
        padding: 0 22px;
    }
    .archive-journey-inner {
        display: grid;
        grid-template-columns: repeat(4, 1fr);
        border-top: 1px solid var(--line);
        border-bottom: 1px solid var(--line);
    }
    .journey-step {
        padding: 22px 20px 23px;
        border-right: 1px solid var(--line);
        min-height: 115px;
    }
    .journey-step:last-child {
        border-right: 0;
    }
    .journey-step span {
        display: block;
        color: var(--gold);
        font-size: 10px;
        letter-spacing: 0.12em;
        margin-bottom: 7px;
    }
    .journey-step strong {
        display: block;
        font-size: 20px;
        font-weight: 400;
        margin-bottom: 8px;
    }
    .journey-step p {
        font-size: 11px;
        line-height: 1.55;
        margin: 0;
        color: #5c554d;
    }
    .section {
        max-width: 1140px;
        margin: auto;
        padding: 72px 28px;
    }
    h2 {
        font-size: 46px;
        line-height: 1.08;
        font-weight: 400;
        margin: 12px 0 22px;
    }
    h3 {
        font-size: 25px;
        font-weight: 400;
        margin: 10px 0 14px;
    }
    .two {
        display: grid;
        grid-template-columns: 1.55fr 0.65fr;
        gap: 80px;
    }
    .copy p {
        font-size: 16px;
    }
    .facts {
        border-top: 1px solid var(--gold);
    }
    .fact {
        padding: 15px 0;
        border-bottom: 1px solid var(--line);
    }
    .fact small {
        display: block;
        color: #8b7560;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-size: 9px;
        margin-bottom: 5px;
    }
    .fact b {
        font-family: Georgia, serif;
    }
	
	.factbox{border-top:3px solid var(--gold);background:var(--paper);padding:28px}
.factbox dl{margin:0}.factbox dt{font:700 10px Arial;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-top:15px}.factbox dd{margin:4px 0 0}
.artistbox{border:1px solid var(--line);background:#fff;padding:28px;margin-top:34px}
.artistgrid{display:grid;grid-template-columns:1fr 1fr;gap:38px}
.archive-link{display:inline-flex;align-items:center;gap:7px;margin-top:14px;font-size:12px;font-weight:700;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px}	
.history-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:start}
    details {
        border-top: 1px solid var(--line);
        padding: 16px 0;
    }
    details:last-child {
        border-bottom: 1px solid var(--line);
    }
    summary {
        cursor: pointer;
        font:
            20px Georgia,
            serif;
        list-style: none;
    }
    summary::after {
        content: "+";
        float: right;
        color: var(--gold);
    }
    details[open] > summary::after {
        content: "−";
    }
    .detailtext {
        padding: 10px 0 0;
        color: #413b35;
    }
    .research {
        background: var(--deep);
        color: #fff;
    }
    .research .section {
        padding-top: 70px;
        padding-bottom: 70px;
    }
    .research h2 {
        color: #fff;
    }
    .research p {
        max-width: 920px;
        font:
            19px/1.55 Georgia,
            serif;
    }
    .detailgrid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        margin-top: 34px;
    }
    .detailcard {
        border: 1px solid #60727a;
        background: #fff;
        color: var(--ink);
    }
    .detailimg {
        height: 190px;
        overflow: hidden;
        background: #fff;
    }
    .detailimg img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .detailbody {
        padding: 20px;
    }
    .detailbody p {
        font-size: 14px;
    }
    .quote {
        margin-top: 30px;
        background: #fff;
        color: var(--ink);
        border-left: 4px solid var(--gold);
        padding: 26px 30px;
        font:
            20px/1.5 Georgia,
            serif;
    }
    .quote cite {
        display: block;
        margin-top: 12px;
        font:
            11px Arial,
            sans-serif;
        color: #6b5f52;
        letter-spacing: 0.06em;
    }
	.strongquote{background:#fff;color:#17252b;border-left:5px solid var(--gold);padding:28px 32px}.strongquote strong{display:block;font:30px/1.35 Georgia,serif;color:var(--ink);margin:5px 0 12px}.strongquote p{margin:0;font-size:15px}
    .artwork {
        background: var(--paper);
    }
    .art-reveal {
        margin: 28px 0;
        border: 1px solid var(--line);
        padding: 8px;
        background: #fff;
    }
    .art-reveal img {
        display: block;
        width: 100%;
        max-height: 760px;
        object-fit: contain;
    }
    .original {
        background: var(--deep);
        color: #fff;
    }
    .originalgrid {
        display: grid;
        grid-template-columns: 1.4fr 0.7fr;
        gap: 80px;
        align-items: start;
    }
    .original h2 {
        color: #fff;
    }
    .original .price {
        font-size: 48px;
        margin: 28px 0 6px;
    }
    .specs {
        border-top: 1px solid #718087;
    }
    .spec {
        padding: 14px 0;
        border-bottom: 1px solid #718087;
    }
    .spec small {
        display: block;
        color: #d6b778;
        font-size: 9px;
        letter-spacing: 0.1em;
        text-transform: uppercase;
    }
    .spec b {
        font-family: Georgia, serif;
        font-size: 16px;
    }
    .archive {
        background: #f7f2e9;
    }
    .archiveintro {
        max-width: 820px;
    }
	.archive-grid {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 24px;
}
    .archive-card {
        background: #fff;
        border: 1px solid var(--line);
        margin-top: 28px;
        display: grid;
        grid-template-columns: 0.9fr 1.1fr;
    }
    .archive-img {
        padding: 30px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-right: 1px solid var(--line);
    }
    .archive-img img {
        width: 100%;
        max-height: 410px;
        object-fit: contain;
    }
    .archive-body {
        padding: 34px;
    }
    .edition-grid {
        display: grid;
        grid-template-columns: repeat(5, 1fr);
        gap: 8px;
        margin: 20px 0;
    }
    .edition-tile {
        background: #fff;
        border: 1px solid var(--line);
        padding: 11px 6px;
        cursor: pointer;
        color: var(--ink);
    }
    .edition-tile b {
        display: block;
        font-size: 16px;
    }
    .edition-tile span {
        display: block;
        font-size: 12px;
        margin-top: 3px;
    }
    .products {
        background: #fff;
    }
    .productgrid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        margin-top: 30px;
    }
    .prod {
        border: 1px solid var(--line);
        background: #fff;
        display: flex;
        flex-direction: column;
    }
    .prodimg {
        height: 300px;
        padding: 12px;
        display: flex;
        align-items: center;
        justify-content: center;
        position: relative;
        border-bottom: 1px solid var(--line);
        cursor: pointer;
    }
    .prodimg img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .prod-zoom {
        position: absolute;
        right: 10px;
        bottom: 10px;
        background: var(--deep);
        color: #fff;
        padding: 7px 9px;
        font-size: 9px;
        font-weight: bold;
        text-transform: uppercase;
    }
    .prodbody {
        padding: 22px;
        display: flex;
        flex-direction: column;
        flex: 1;
    }
    .product-price {
        font:
            29px Georgia,
            serif;
        margin: 8px 0;
        text-decoration: none;
    }
    .edition-meta {
        font-size: 12px;
        color: #8b6c43;
        margin-bottom: 7px;
    }
    .product-spec {
        font-size: 12px;
        color: #5b554d;
    }
    .prodbody p {
        font-size: 14px;
        flex: 1;
    }
    .prodbody > a {
        border-top: 1px solid var(--line);
        padding-top: 13px;
        font-size: 10px;
        font-weight: bold;
        text-transform: uppercase;
        letter-spacing: 0.05em;
    }
    .questions {
        background: var(--paper);
    }
    .questions-intro {
        max-width: 850px;
        font:
            18px/1.6 Georgia,
            serif;
    }
    .qgrid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 36px;
        margin-top: 32px;
    }
    .question-group h3 {
        font-size: 28px;
    }
    .next {
        background: #132b35;
        color: #fff;
    }
    .next h2 {
        color: #fff;
    }
    .nextgrid {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 14px;
    }
    .nextcard {
        border: 1px solid #62747b;
        padding: 22px;
    }
    .nextcard small {
        display: block;
        color: #e0b66b;
        margin-bottom: 7px;
        text-transform: uppercase;
        letter-spacing: 0.1em;
    }
    .nextcard strong {
        font-size: 22px;
        font-weight: 400;
    }
    .lightbox {
        display: none;
        position: fixed;
        inset: 0;
        background: rgba(0, 0, 0, 0.9);
        z-index: 1000;
        align-items: center;
        justify-content: center;
        padding: 28px;
    }
    .lightbox.open {
        display: flex;
    }
    .lightbox img {
        max-width: 92vw;
        max-height: 90vh;
        object-fit: contain;
        background: #fff;
    }
    .lightbox-close {
        position: absolute;
        right: 25px;
        top: 18px;
        background: none;
        border: 0;
        color: #fff;
        font-size: 36px;
        cursor: pointer;
    }
    /* Fader styles copied to match completed Landing page */
    .archive-promo-fader {
        background: #fff;
        border-top: 1px solid var(--line);
        padding: 64px 0;
    }
    .archive-promo-inner {
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 28px;
        display: grid;
        grid-template-columns: 0.9fr 1.1fr;
        gap: 70px;
        align-items: center;
    }
    .archive-promo-art {
        height: 330px;
        position: relative;
        overflow: hidden;
        background: #fff;
    }
    .archive-promo-fade {
        position: absolute;
        inset: 0;
        opacity: 0;
        transition: opacity 2s ease;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .archive-promo-fade.is-active {
        opacity: 1;
    }
    .archive-promo-fade img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
    .archive-promo-copy h2 {
        font-size: 45px;
        margin: 12px 0 20px;
    }
    .archive-promo-copy p {
        font-size: 15px;
        line-height: 1.7;
    }
    .archive-promo-btn {
        display: inline-block;
        background: var(--gold);
        color: #fff;
        padding: 14px 20px;
        margin-top: 12px;
        font-size: 10px;
        font-weight: bold;
        text-transform: uppercase;
    }
    footer {
        padding: 24px;
        text-align: center;
        background: #0d0d0d;
        color: #bbb;
        font-size: 10px;
        letter-spacing: 0.1em;
    }
	
	.qcols {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 42px;
}
.qgroup h3 {
  border-bottom: 2px solid var(--gold);
  padding-bottom: 12px;
}	
	
    @media (max-width: 850px) {
        nav {
            display: none;
        }
        .heritage-hero,
		.history-grid,
        .two,
		.qcols,
        .originalgrid,
		.archive-grid,
        .archive-card,
        .archive-promo-inner {
            grid-template-columns: 1fr;
        }
        .archive-img {
            border-right: 0;
            border-bottom: 1px solid var(--line);
        }
        h1 {
            font-size: 50px;
        }
        .archive-journey-inner,
        .productgrid,
        .detailgrid,
        .qgrid,
        .nextgrid {
            grid-template-columns: 1fr 1fr;
        }
        .archive-promo-art {
            height: 270px;
        }
        .topstrip {
            margin-top: 100px;
        }
    }
    @media (max-width: 580px) {
        .archive-journey-inner,
        .productgrid,
        .detailgrid,
        .qgrid,
        .nextgrid {
            grid-template-columns: 1fr;
        }
        .journey-step {
            border-right: 0;
            border-bottom: 1px solid var(--line);
        }
        .edition-grid {
            grid-template-columns: repeat(2, 1fr);
        }
        .section {
            padding: 52px 20px;
        }
        .herocopy {
            padding: 42px 28px;
        }
    }

    /* V2: completed Landing-page fader geometry */
    .archive-promo-fader {
        background: #fff !important;
        border-top: 1px solid var(--line);
        padding: 64px 0 !important;
        overflow: hidden;
    }
    .archive-promo-inner {
        max-width: 1200px !important;
        margin: 0 auto !important;
        padding: 0 28px !important;
        display: grid !important;
        grid-template-columns: 0.9fr 1.1fr !important;
        gap: 70px !important;
        align-items: center !important;
    }
    .archive-promo-art {
        height: 330px !important;
        position: relative !important;
        overflow: hidden !important;
        background: #fff !important;
    }
    .archive-promo-fade {
        position: absolute !important;
        inset: 0 !important;
        opacity: 0;
        transition: opacity 1.4s ease !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background: #fff !important;
    }
    .archive-promo-fade.is-active {
        opacity: 1 !important;
    }
    .archive-promo-fade img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
    }
    .archive-promo-copy h2 {
        font-size: 45px;
        line-height: 1.08;
        margin: 12px 0 20px;
    }
    .archive-promo-copy p {
        font-size: 15px;
        line-height: 1.7;
    }
    .archive-promo-btn {
        display: inline-block;
        background: var(--gold);
        color: #fff;
        padding: 14px 20px;
        margin-top: 12px;
        font-size: 10px;
        font-weight: bold;
        text-transform: uppercase;
    }
    @media (max-width: 850px) {
        .archive-promo-inner {
            grid-template-columns: 1fr !important;
        }
        .archive-promo-art {
            height: 270px !important;
        }
    }

    /* V3 — fix: archive-promo-fade elements are the IMG elements themselves */
    .archive-promo-art {
        height: 330px !important;
        position: relative !important;
        overflow: hidden !important;
        background: #fff !important;
    }
    img.archive-promo-fade {
        position: absolute !important;
        inset: 0 !important;
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        max-width: 100% !important;
        max-height: 100% !important;
        object-fit: contain !important;
        object-position: center center !important;
        margin: 0 !important;
        padding: 0 !important;
        opacity: 0 !important;
        transition: opacity 1.4s ease !important;
    }
    img.archive-promo-fade.is-active {
        opacity: 1 !important;
    }
}
.cursor-detail-zoom{
	position:relative;
	overflow:hidden
}
.cursor-detail-zoom img{
	display:block;
	width:100%;
	height:auto;
	transform-origin:50% 50%;
	transition:transform .16s ease-out;
	cursor:zoom-in
}
.cursor-detail-zoom:hover img{
	transform:scale(2.35)
}