/* Dawson R7.1 (opt-in layout bsg-dawson-preview only). Loaded last, after the R7 stylesheets. */

/* 320 px fit: the theme sets min-width 320px on html and body, so a 320 px window with a classic scrollbar (8 px)
   scrolls sideways. Nothing on this page needs it. */
html:has(body.page-layout-bsg-dawson-preview),
body.page-layout-bsg-dawson-preview {
    min-width: 0;
}

/* The action line now follows the short introduction, above the form's top divider. */
.page-layout-bsg-dawson-preview .product-view__short-description + .dawson-spec-links {
    margin: 16px 0 24px;
}

/* "design your own" lands on the Custom Options content: keep its heading (the summary, 48 px) clear of the
   sticky header: 66 px below 768, 112 px from 768, 140 px from 1024 (measured on staging 14 Nov). */
.page-layout-bsg-dawson-preview #dawson-custom-design { scroll-margin-top: 130px; }
@media (min-width: 768px) {
    .page-layout-bsg-dawson-preview #dawson-custom-design { scroll-margin-top: 176px; }
}
@media (min-width: 1024px) {
    .page-layout-bsg-dawson-preview #dawson-custom-design { scroll-margin-top: 206px; }
}

/* Back and Next beneath the upper Add to Quote button. Side by side while both fit: Back on two lines (150 px:
   arrow 16, gap 6, "Back to Banquette" 127 at 14 px Manrope 500, measured in the page) + gap 8 + Next with a name
   column of at least 114 px (180 px) = 338 px, so a 375 px phone (details column 339 px) keeps them side by side
   and narrower windows stack them; long names wrap. Sizes in px: this theme's root font is 14 px. */
.page-layout-bsg-dawson-preview .bsg-dawson-nav {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin: 0;
    padding: 14px 0;
    border-bottom: 1px solid var(--bsg-rule);
    background: transparent;
    color: var(--bsg-brown);
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav a {
    box-sizing: border-box;
    min-height: 44px;
    color: var(--bsg-brown);
    text-decoration: none;
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav a:focus-visible {
    outline: 2px solid var(--bsg-brown);
    outline-offset: 3px;
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav__back {
    flex: 0 0 150px;
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 0;
    font: 500 14px/1.35 var(--bsg-text);
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav__arrow { flex: 0 0 auto; }
.page-layout-bsg-dawson-preview .bsg-dawson-nav__next {
    flex: 1 1 180px;
    min-width: 0;
    max-width: 336px;
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    text-align: right;
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav__text { min-width: 0; }
.page-layout-bsg-dawson-preview .bsg-dawson-nav__label {
    display: block;
    margin: 0 0 2px;
    font: 500 12px/1.4 var(--bsg-mono);
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav__name {
    display: block;
    font: 500 14px/1.35 var(--bsg-text);
    overflow-wrap: anywhere;
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav a:hover .bsg-dawson-nav__back-text,
.page-layout-bsg-dawson-preview .bsg-dawson-nav a:hover .bsg-dawson-nav__name {
    text-decoration: underline;
    text-underline-offset: .16em;
}
.page-layout-bsg-dawson-preview .bsg-dawson-nav__thumb {
    box-sizing: border-box;
    flex: 0 0 56px;
    width: 56px;
    height: 56px;
    border: 1px solid var(--bsg-rule);
    background: #fff;
    object-fit: contain;
}
