/* Majestic — content pages: FAQ (/faq-2/), full gallery (/gallery/), photo viewer and the home Modern Majestic band. */
.mj-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}

/* FAQ */
.faq-intro{padding-block:34px 56px}
.faq-intro h1{font-size:clamp(42px,4.8vw,70px);max-width:850px}
.faq-lede{font-size:16px;color:var(--muted);margin-top:22px;max-width:560px}
.faq-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:72px;align-items:start;padding-bottom:100px}
.faq-topics{position:sticky;top:28px}
.faq-topics .eyebrow{margin-bottom:12px}
.faq-topics ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.faq-topics li{border-bottom:1px solid var(--line)}
.faq-topics a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:46px;padding:10px 0;font-size:13px}
.faq-topics a>span{font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.faq-content{min-width:0;max-width:880px}
.faq-topic,.faq-item{scroll-margin-top:28px}
.faq-topic+.faq-topic{margin-top:64px}
.faq-topic>h2{font-size:clamp(28px,2.6vw,38px);margin-bottom:20px}
.faq-item{border-top:1px solid var(--line)}
.faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-item>summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;padding:19px 0;font-size:17px;line-height:1.45;list-style:none;cursor:pointer}
.faq-item>summary::-webkit-details-marker{display:none}
.faq-item>summary::after{content:'';flex:0 0 13px;height:13px;background:linear-gradient(currentColor,currentColor) center/13px 1.5px no-repeat,linear-gradient(currentColor,currentColor) center/1.5px 13px no-repeat}
.faq-item[open]>summary::after{background-size:13px 1.5px,0 0}
.faq-item>summary:hover{color:#806628}
.faq-answer{max-width:760px;padding:0 0 30px;font-size:15px;line-height:1.7;color:var(--muted)}
.faq-answer>*+*{margin-top:14px}
.faq-answer ul,.faq-answer ol{margin-bottom:0;padding-left:20px}
.faq-answer>:first-child{margin-top:0}
.faq-answer li+li{margin-top:6px}
.faq-answer strong{color:var(--ink);font-weight:600}
.faq-answer a:not(.text-button){color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.faq-answer .faq-subhead{margin-top:28px;font-size:19px;color:var(--ink)}
.faq-note{font-size:12px;line-height:1.6}
.faq-fit,.faq-ral{list-style:none;padding-left:0!important}
.faq-fit li{padding:12px 0;border-top:1px solid var(--line)}
.faq-answer .faq-fit li+li,.faq-answer .faq-ral li+li{margin-top:0}
.faq-specs li+li{margin-top:10px}
.faq-ral{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;max-width:560px}
.faq-ral li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}
.faq-ral li>span:last-child{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}
.faq-figures{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;align-items:start}
.faq-figures--wide{grid-template-columns:minmax(0,480px)}
.faq-figures--portrait{grid-template-columns:repeat(auto-fill,minmax(130px,220px))}
.faq-figures figure{margin:0;min-width:0}
.faq-figures img{display:block;width:auto;max-width:100%;height:auto;background:#fff;border:1px solid var(--line)}
.faq-figures figcaption{margin-top:8px;font-size:12px}
.faq-table{position:relative;overflow-x:auto;border:1px solid var(--line);background:#fff;overscroll-behavior-x:contain}
.faq-table table{width:100%;min-width:720px;border-collapse:collapse;font-size:13px;line-height:1.5;color:var(--ink)}
.faq-table caption{padding:14px 16px;text-align:left;font-size:12px;color:var(--muted)}
.faq-table th,.faq-table td{padding:12px 14px;border-top:1px solid var(--line);text-align:left;vertical-align:top}
.faq-table thead th{font:400 17px/1.2 Georgia,'Times New Roman',serif;background:var(--soft)}
.faq-table tbody th{width:128px;font-size:12px;font-weight:600;color:var(--muted)}
.faq-table thead th:first-child,.faq-table tbody th{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 var(--line)}
.faq-table thead th:first-child{background:var(--soft)}
.faq-table td{font-variant-numeric:tabular-nums}
.faq-scroll-hint{display:none}
.faq-help{margin-top:72px;padding:40px;background:var(--soft)}
.faq-help h2{font-size:clamp(28px,2.6vw,38px)}
.faq-help>p{max-width:460px;margin-top:14px;font-size:15px;color:var(--muted)}
.faq-help-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:26px}

/* Full gallery: every photograph edge to edge and large; the home page keeps the mosaic. */
.gallery-page .full-gallery-grid{display:flex;flex-direction:column;gap:4px}
.gallery-page .full-gallery-grid figure{position:relative;margin:0}
.gallery-page .full-gallery-grid .gallery-open{display:block;width:100%;height:auto;min-height:0;aspect-ratio:auto}
.gallery-page .full-gallery-grid .gallery-open img{display:block;width:100%;height:auto;max-height:100svh;object-fit:cover}
.gallery-page .full-gallery-grid figcaption{padding:90px max(22px,4.4vw) 30px;font-size:15px}
/* Photographs open larger on click; the pointer says so instead of an icon on every photo. */
.gallery-open{cursor:zoom-in}
.product-rail-button .rail-icon{display:block}

/* Photo viewer: the enlarged photograph fills the screen. */
.gallery-dialog{width:100vw;height:100svh;max-width:none;max-height:none;margin:0;padding:0;background:#0f1010;color:#f4f1ea}
.gallery-dialog[open]{display:flex;flex-direction:column;justify-content:center}
.gallery-dialog img{width:100%;height:auto;max-width:100vw;max-height:calc(100svh - 64px);margin:0 auto;object-fit:contain}
.gallery-dialog p{padding:16px 90px 0 max(22px,4.4vw);font-size:14px;color:#d9d4c9}
.gallery-dialog>button{top:max(16px,env(safe-area-inset-top));right:16px}

/* Home page band */
.mm-band{border-top:1px solid var(--line)}
.mm-band-inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 40px;padding-block:26px}
.mm-band-inner.has-media{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;padding-block:40px}
.mm-band-image{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.mm-band-copy .text-button{display:inline-block;margin-top:20px}
.mm-band p{font:21px/1.4 Georgia,'Times New Roman',serif;letter-spacing:-.01em}
.mm-band-kicker{color:var(--muted)}
.mm-band strong{font-weight:600}

@media(max-width:900px){
.faq-layout{grid-template-columns:minmax(0,1fr);gap:36px}
.faq-topics{position:static}
.faq-topics ul{display:flex;flex-wrap:wrap;gap:8px;border:0}
.faq-topics li{border:0}
.faq-topics a{min-height:40px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;background:#fff}
}
@media(max-width:760px){.faq-scroll-hint{display:inline}.mm-band-inner.has-media{grid-template-columns:minmax(0,1fr);gap:24px}}
@media(max-width:600px){
.faq-intro{padding-block:20px 34px}
.faq-intro h1{font-size:44px}
.faq-lede{font-size:14px}
.faq-topic+.faq-topic{margin-top:48px}
.faq-item>summary{gap:18px;padding:17px 0;font-size:16px}
.faq-answer{font-size:14px}
.faq-ral{grid-template-columns:minmax(0,1fr)}
.faq-table th,.faq-table td{padding:10px 12px}
.faq-table tbody th{width:96px}
.faq-help{margin-top:56px;padding:28px 22px}
.gallery-page .full-gallery-grid figcaption{padding:60px 18px 18px;font-size:13px}
.mm-band-inner{padding-block:22px}
.mm-band p{font-size:18px}
}
