/* Shared finish for the explicit secondary-page allowlist in head.tpl.
 * Homepage, product, category and checkout never load this sheet. */
body:is(#new-products,#best-sales,#prices-drop,#search,#manufacturer,#contact,#cart,#my-account,#identity,#addresses,#address,#history,#order-detail,#order-follow,#order-return,#order-slip,#discount,#authentication,#registration,#password,#password-infos,#guest-tracking,#cms,#sitemap,#pagenotfound,[id^="module-"]) #wrapper #main {
  padding-top: 0 !important;
}
/* Remove the extra entrance layer owned by each directory/form module. */
body#manufacturer #wrapper #main .skrupt-brands--editorial { padding-top: 0; }
body#contact #wrapper #main .vapochat-contact { margin-top: 0; }
body#module-skruptdocuments-directory #wrapper #main .skd-library { padding-top: 0; }
body#module-skruptdocuments-directory #wrapper #main .skd-library__hero { margin-top: 0; }
/* Keep one 24px space inside the heading; title weights come from page-hero.css (hero role). */
body #wrapper #main .vvp-page-hero[data-hero-layout="intro"] {
  --vvp-hero-space-start: 24px;
}
body #wrapper #main .vvp-page-hero[data-hero-layout="intro"] h1 {
  margin-top: 0; font-family: var(--vvp-font-ui,Inter,system-ui,sans-serif);
  font-size: 40px; line-height: 1.2; letter-spacing: -.65px;
}
body #wrapper #main .vvp-page-hero[data-hero-layout="intro"] h1 .vvp-title__lead { font-weight: 600; }
body #wrapper #main .vvp-page-hero[data-hero-layout="intro"] h1 .vvp-title__soft { font-weight: 400; }
/* Their breadcrumb now supplies navigation; omit the redundant module topline. */
body:is(#module-skruptcookiesconsent-privacycenter,#module-skruptcookiesconsent-customerprivacy,#module-skruptcookiesconsent-orderwithdrawal) #wrapper { padding-top: 0; }
body:is(#module-skruptcookiesconsent-privacycenter,#module-skruptcookiesconsent-customerprivacy,#module-skruptcookiesconsent-orderwithdrawal) #wrapper #main .skrupt-rgpd__topline { display: none; }
body#module-skruptcookiesconsent-orderwithdrawal #wrapper #main .skrupt-rgpd__hero > .skrupt-return__hero-mark { display: none; }
body #wrapper #main .skrupt-rgpd__hero .vvp-page-hero[data-hero-layout="intro"] { padding: 0 !important; }
body #wrapper #main .skrupt-rgpd__hero .vvp-page-hero::before { content: none; }
/* The cart keeps its rows, quantities and fixed mobile action. */
body#cart #wrapper #main .cart-summary {
  border: 1px solid var(--vvp-ui-panel-line); border-radius: var(--vvp-ds-radius-panel); box-shadow: none;
}
body#cart .vvp-cart-dock__action { background: var(--vvp-ds-action); }
body#cart .vvp-cart-dock__action:hover { background: var(--vvp-ds-action-hover,var(--vvp-ds-action)); }
/* Saved products used a 900 weight, unlike the rest of the account. */
body:is(#cart,#module-nxtalwishlist-wishlist) #wrapper #main .product-line-info > a.label {
  color: var(--vvp-ds-action); font-family: var(--vvp-font-ui,Inter,system-ui,sans-serif);
  font-size: 16px; font-weight: 600; line-height: 1.45;
}
body#module-nxtalwishlist-wishlist #wrapper #main .product-line-grid-body .product-price {
  font-weight: 600; color: var(--vvp-ds-action);
}
@media (max-width: 767.98px) {
  body #wrapper #main .vvp-page-hero[data-hero-layout="intro"] h1 { font-size: 28px; line-height: 36px; letter-spacing: -.4px; }
}

/* A single focus ring belongs to the search group, not to both its layers. */
body#manufacturer #wrapper #main .skrupt-brands__search:focus-within,
body#module-skruptdocuments-directory #wrapper #main .skd-library__search:focus-within {
  outline: 2px solid var(--vvp-ds-focus,var(--vvp-ds-action)); outline-offset: 2px;
}
body#manufacturer #wrapper #main .skrupt-brands__search input:focus-visible,
body#module-skruptdocuments-directory #wrapper #main .skd-library__search input:focus-visible {
  outline: 0 !important; box-shadow: none !important;
}
@media (max-width: 767.98px) {
  body#module-skruptdocuments-directory #wrapper #main .skd-library__search {
    display: grid; grid-template-columns: 20px minmax(0,1fr); gap: 8px 10px;
    padding: 12px; border-radius: var(--vvp-ui-control-radius,12px);
  }
  body#module-skruptdocuments-directory #wrapper #main .skd-library__search input { min-height: 40px; font-size: 16px; }
  body#module-skruptdocuments-directory #wrapper #main .skd-library__search button { grid-column: 1 / -1; width: 100%; margin-top: 4px; }
}

/* Data export choices: one left-aligned text column beside the native radio. */
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__formats > div { display: grid; grid-template-columns: repeat(auto-fit,minmax(160px,1fr)); gap: 12px; }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format { display: grid; grid-template-columns: 20px minmax(0,1fr); align-items: start; gap: 12px; padding: 16px; text-align: left; }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format > input { width: 20px; height: 20px; margin: 2px 0 0; accent-color: var(--vvp-ds-action); }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format > span { display: grid; align-content: start; gap: 4px; min-width: 0; }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format :is(strong,small) { display: block; width: auto; margin: 0; padding: 0; text-align: left; }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format strong { font-size: 16px; line-height: 24px; font-weight: 600; color: var(--vvp-ds-action); }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format small { font-size: 14px; line-height: 20px; color: var(--vvp-ds-muted); }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format:focus-within { outline: 2px solid var(--vvp-ds-action); outline-offset: 2px; }
body#module-skruptcookiesconsent-customerprivacy #wrapper #main .skrupt-rgpd__format > input:focus-visible { outline: 0; }
body #wrapper #main .skrupt-rgpd__account-status { padding: 16px 24px; }
body #wrapper #main .skrupt-rgpd__account-status dl { display: flex; flex-wrap: wrap; gap: 16px 48px; margin: 0; }
body #wrapper #main .skrupt-rgpd__account-status dl > div { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 12px; }
body #wrapper #main .skrupt-rgpd__account-status dt { margin: 0; font-size: 14px; font-weight: 400; color: var(--vvp-ds-muted); }
body #wrapper #main .skrupt-rgpd__account-status dd { margin: 0; font-size: 16px; font-weight: 600; color: var(--vvp-ds-action); }
body#cms #wrapper #main .page-cms > p:empty:not([id]) { display: none; }
body#cms #wrapper #main .vvp-cms-empty { padding: 32px; border: 1px solid var(--vvp-ui-panel-line); border-radius: var(--vvp-ds-radius-panel); background: #fff; }
body#cms #wrapper #main .vvp-cms-empty h2 { margin-top: 0; }
@media (max-width:767.98px) {
  body #wrapper #main .skrupt-rgpd__account-status { padding: 16px 20px; }
  body #wrapper #main .skrupt-rgpd__account-status dl { display: grid; gap: 12px; }
  body #wrapper #main .skrupt-rgpd__account-status dl > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px; }
  body#cms #wrapper #main .vvp-cms-empty { padding: 24px; }
}

body#cms #wrapper #main .vvp-cms-empty > a.btn-primary,
body#cms #wrapper #main .vvp-cms-empty > a.btn-primary:hover { color: #fff; text-decoration: none; }

/* These account forms already place labels above their fields. */
body #wrapper #main .form-group > .form-control-label { text-align: left; }

/* Editorial module: retain native details behavior and expose its open state. */
body#module-skruptpages-guide #wrapper #main .vvp-reader-outline > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; font-family: var(--vvp-font-ui,Inter,system-ui,sans-serif); font-weight: 600; border-bottom: 1px solid var(--vvp-ui-panel-line,#dce1e9); list-style: none; }
body#module-skruptpages-guide #wrapper #main .vvp-reader-outline > summary::-webkit-details-marker { display: none; }
body#module-skruptpages-guide #wrapper #main .vvp-reader-outline > summary::after { content: "+"; flex: 0 0 auto; font-size: 24px; font-weight: 400; }
body#module-skruptpages-guide #wrapper #main .vvp-reader-outline[open] > summary::after { content: "−"; }
body#module-skruptpages-guide #wrapper #main .skg-prose :is(h2,h3) { font-family: var(--vvp-font-ui,Inter,system-ui,sans-serif); font-weight: 600; }
