/**
 * GT-035 WCAG 2.2 AA closure layer.
 *
 * This file is intentionally loaded after every component stylesheet. Rules
 * are limited to audited contrast, visible focus and pointer-target defects;
 * component layout and visual identity remain in their canonical owners.
 */

/* One deterministic, two-colour keyboard indicator over light and dark UI. */
html body :is(a, button, input, select, textarea, summary, [tabindex]):focus-visible,
html body .screen-reader-text:focus {
  outline: 3px solid #f3dcac !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 6px #7f2a21 !important;
}

/* The footer now has a real painted background, not only negative-z pseudos. */
.site-footer {
  background-color: #1e3d2c;
}
.footer-v7__logo span,
.footer-v7 p,
.footer-v7__links a,
.footer-v7__bottom,
.footer-v7__bottom a {
  color: #f3dcac;
  opacity: 1;
}
/* WCAG 2.2 target size: compact cards keep their typography, not a 13px hitbox. */
@media (max-width: 820px) {
  .program-card__actions .card-text-link {
    min-height: 32px;
    padding-block: 6px;
    font-size: 12px;
    line-height: 1.35;
  }
}
.franchise-hero__breadcrumbs a,
body.search .breadcrumbs a {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
}

@media (max-width: 920px) {
  .site-header {
    width: 100%;
    max-width: 100vw;
    min-width: 0;
  }
  .site-header__inner {
    width: 100%;
    min-width: 0;
    grid-template-columns: minmax(0, 92px) minmax(0, 1fr) auto;
  }
  .site-header :is(.brand, .header-actions) {
    min-width: 0;
  }
  .mobile-menu__icons {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
  .mobile-menu__icons a {
    min-height: 44px;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-inline: 8px;
    border: 1px solid rgba(243,220,172, .42);
    border-radius: 999px;
    background: #1e3d2c;
    color: #f3dcac;
    font-size: 12px;
    opacity: 1;
  }
}

/* The lead dialog keeps a visible 2px brand focus without the global 11px halo. */
.lead-dialog :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus-visible {
  outline: 2px solid #7f2a21 !important;
  outline-offset: 2px !important;
  box-shadow: none !important;
}

/* Shared commercial breadcrumbs: small text needs the opaque dark token. */
.grandthai-woo-flow :is(.wc-breadcrumbs, .breadcrumbs),
.grandthai-woo-flow :is(.wc-breadcrumbs, .breadcrumbs) :is(a, li, span) {
  color: #284e37;
  opacity: 1;
}
.grandthai-woo-flow .wc-flow-steps li,
.grandthai-woo-flow .wc-flow-steps li > span,
.grandthai-woo-flow :is(
  .wc-product-options,
  .wc-summary-card dt,
  .wc-safe-note small,
  .wc-form-card__head p,
  .wc-fields label > small,
  .wc-choice-grid small,
  .wc-payment-choice small,
  .wc-branch-choice small,
  .wc-legal-note,
  .wc-order-product small,
  .wc-summary-help
) {
  color: #284e37;
  opacity: 1;
}
.grandthai-woo-flow .wc-flow-steps :is(.is-active, .is-complete) > span {
  color: #f3dcac;
}

/* Certificates, subscriptions and deposits. */
.grandthai-canonical-sertifikaty .cert-hero__content > :is(.section-label, p),
.grandthai-canonical-sertifikaty .occasion-card small {
  color: #7f2a21;
  opacity: 1;
}
.grandthai-canonical-sertifikaty .cert-review h3,
.grandthai-canonical-sertifikaty .corporate-box__content :is(h2, p, span) {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-sertifikaty .mobile-cert-bar small {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-abonementy .steps-grid article > span,
.grandthai-canonical-depozity .deposit-steps article > span {
  color: #7f2a21;
  opacity: 1;
}
.grandthai-canonical-depozity .deposit-value small {
  color: #f3dcac;
  opacity: 1;
}

/* SPA overview, programs, etiquette and face massage. */
.grandthai-canonical-spa-programmy [data-goal-filter] > span,
.grandthai-canonical-spa-programmy .spap-ritual article > span {
  color: #7f2a21;
  opacity: 1;
}
.grandthai-canonical-spa-programmy .spap-reviews .spap-section-head :is(.section-label, p),
.grandthai-canonical-spa-programmy p[data-match-text],
.spa-seo-hub-page .seo-rating small {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-spa-salon .spa-direction-card > div,
.grandthai-canonical-spa-salon .spa-gallery button > span {
  padding: 14px;
  border-radius: 16px;
  background: rgba(30, 61, 44, .96);
}
.grandthai-canonical-spa-salon .spa-direction-card > div :is(span, h3, p, a),
.grandthai-canonical-spa-salon .spa-gallery button > span,
.grandthai-canonical-spa-salon figcaption small {
  color: #f3dcac;
  opacity: 1;
}
.spa-etiquette-page .spa-etiquette-lead,
.face-massage-page .face-lead {
  color: #284e37;
  opacity: 1;
}
.spa-etiquette-page .spa-etiquette-journey__list p,
.face-massage-page :is(.face-heading--light, .face-journey) p {
  color: #f3dcac;
  opacity: 1;
}

/* Thai-massage price table and branches hub. */
.grandthai-canonical-tayskiy-massazh .price-row--head > span,
.grandthai-canonical-tayskiy-massazh .price-row--head .woocommerce-Price-currencySymbol {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-tayskiy-massazh .price-row:not(.price-row--head) b .woocommerce-Price-currencySymbol {
  color: #7f2a21;
  opacity: 1;
}
.grandthai-canonical-tayskiy-massazh .price-row:not(.price-row--head) b .woocommerce-Price-amount,
.back-massage-page .back-card-meta strong .woocommerce-Price-amount {
  display: inline-block;
  padding-inline: 2px;
  border-radius: 3px;
  background: #f8e9c4;
}
.back-massage-page .back-card-meta strong,
.back-massage-page .back-card-meta strong .woocommerce-Price-currencySymbol {
  color: #284e37;
  opacity: 1;
}

/* Prices first-visit copy needs one deterministic surface at narrow widths. */
.canonical-page-prices .prices-first-visit .first-visit__content {
  background: #284e37;
}
.canonical-page-prices .prices-first-visit .first-visit__content > :is(.section-label, p) {
  color: #f3dcac;
  opacity: 1;
}

/* Quiz choices keep an explicit AA pair in both selection states. */
.canonical-page-uslugi .choice-card > span {
  background: #f8e9c4;
  color: #284e37;
  opacity: 1;
}
.canonical-page-uslugi .choice-card > input:checked + span {
  background: #284e37;
  color: #f3dcac;
}
.canonical-page-uslugi .quiz-form :is(input, button) {
  isolation: isolate;
}
.canonical-page-uslugi .quiz-form input {
  background-color: #f8e9c4;
}
.branches-hub-page .branches-hub-proof__grid :is(span, small),
.branches-hub-page .branches-hub-final__box p {
  color: #f3dcac;
  opacity: 1;
}

/* Promotions, about, branch and reviews/contact cards. */
.grandthai-canonical-akcii :is(.promo-hero__facts, .promo-card__conditions, .promo-code__label) small {
  color: #284e37;
  opacity: 1;
}
.grandthai-canonical-akcii .promo-page .breadcrumbs :is(a, li),
.grandthai-canonical-akcii .breadcrumbs :is(a, li) {
  color: #284e37;
  opacity: 1;
}
.grandthai-canonical-akcii .breadcrumbs a:hover {
  color: #7f2a21;
}
.grandthai-canonical-akcii :is(
  .promo-card--featured .promo-card__conditions,
  .promo-card--featured .promo-code__label,
  .promo-birthday .promo-code__label
) small {
  color: #f3dcac;
}
.grandthai-canonical-akcii figcaption > :is(span, p),
.thai-page figcaption :is(span, small, p) {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-about .founder-card__role {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-okskaya .branch-visit-step > b {
  color: #7f2a21;
  opacity: 1;
}
.grandthai-canonical-okskaya .branch-hero__offer span,
.grandthai-canonical-okskaya .branch-hero__phone > span,
.grandthai-canonical-okskaya .branch-picker__choices button,
.grandthai-canonical-okskaya .branch-picker__choices button span {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-okskaya .branch-picker__choices button:is(:hover, :focus-visible),
.grandthai-canonical-okskaya .branch-picker__choices button:is(:hover, :focus-visible) span {
  color: #284e37;
}
.grandthai-canonical-okskaya .branch-picker__choices button:focus-visible {
  background: #f8e9c4;
}
.grandthai-canonical-otzyvy .rc-theme-card b {
  color: #7f2a21;
  opacity: 1;
}
.grandthai-canonical-otzyvy .rc-choice-card__body {
  padding: 14px;
  border-radius: 16px;
  background: rgba(30, 61, 44, .96);
}
.grandthai-canonical-otzyvy .rc-choice-card__body :is(h3, p),
.grandthai-canonical-otzyvy .rc-final h2 {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-otzyvy .rc-avatar {
  background: #284e37;
  color: #f3dcac;
}
.grandthai-canonical-kontakty .rc-requisites span,
.grandthai-canonical-kontakty .rc-requisites strong {
  color: #284e37;
  opacity: 1;
}
.grandthai-canonical-kontakty .rc-branch-facts :is(strong, span),
.grandthai-canonical-kontakty .rc-route-list :is(strong, span) {
  color: #f3dcac;
  opacity: 1;
}

/* Corporate page: verified dark copy on paper and cream copy on media. */
.corporate-clients-page .corporate-intro__grid :is(p, small),
.corporate-clients-page .corporate-heading:not(.corporate-heading--light) :is(p, small),
.corporate-clients-page .corporate-benefits > .container > .corporate-heading :is(p, small),
.corporate-clients-page .corporate-trust__copy :is(p, small),
.corporate-clients-page .corporate-form :is(p, small),
.corporate-clients-page .gt-editor-content :is(p, small),
.corporate-clients-page .corporate-seo article :is(p, small) {
  color: #284e37;
  opacity: 1;
}
.corporate-clients-page .corporate-heading--light :is(.corporate-kicker, p),
.corporate-clients-page .corporate-format-grid article > div :is(h3, p),
.corporate-clients-page .corporate-process__list p {
  color: #f3dcac;
  opacity: 1;
}

/* Franchise: replace translucent small copy and photo-only contrast with AA surfaces. */
.franchise-page .franchise-model__copy :is(p, li, span, small),
.franchise-page .franchise-model__points :is(p, li, span, small),
.franchise-page .franchise-economics__copy :is(p, li, span, small),
.franchise-page .franchise-economics__card:not(.franchise-economics__card--accent) :is(p, li, span, small),
.franchise-page .franchise-economics__visual-card :is(p, li, span, small),
.franchise-page .franchise-support__copy :is(p, li, span, small),
.franchise-page .franchise-form :is(p, li, span, small),
.franchise-page .franchise-city__visual-card :is(p, li, span, small),
.franchise-page .franchise-form__lead,
.franchise-page .franchise-contact-note,
.franchise-page .privacy-check span {
  color: #284e37 !important;
  opacity: 1;
}
.franchise-page :is(
  .franchise-disclaimer,
  .franchise-fit-card:nth-child(1) p
) {
  color: #284e37;
  opacity: 1;
}
.franchise-page .franchise-fit-card:nth-child(1) .franchise-fit-card__number {
  color: #7f2a21;
  opacity: 1;
}
.franchise-page :is(
  .franchise-fit-card:nth-child(2),
  .franchise-fit-card:nth-child(3)
) .franchise-fit-card__number {
  color: #f3dcac;
  opacity: 1;
}
.franchise-page :is(
  .franchise-hero__lead,
  .franchise-hero__note,
  .franchise-hero__facts span,
  .franchise-economics__card--accent p,
  .franchise-economics__card--accent small,
  .franchise-economics__list span,
  .franchise-launch p,
  .franchise-fit-card:nth-child(2) p,
  .franchise-fit-card:nth-child(3) p,
  .franchise-city__copy > p,
  .franchise-final__copy > p,
  .franchise-final__materials span,
  .franchise-final__contact
) {
  color: #f3dcac !important;
  opacity: 1;
}
.franchise-page .franchise-model__points article > span {
  color: #f3dcac !important;
}
.franchise-page :is(
  .franchise-hero__photo-main figcaption,
  .franchise-model__mosaic figcaption,
  .franchise-person figcaption,
  .franchise-gallery__item span,
  .franchise-launch__photo figcaption
) {
  padding: 12px;
  border-radius: 14px;
  background: rgba(30, 61, 44, .96);
  color: #f3dcac;
}
.franchise-page :is(
  .franchise-hero__photo-main figcaption,
  .franchise-model__mosaic figcaption,
  .franchise-person figcaption,
  .franchise-gallery__item span,
  .franchise-launch__photo figcaption
) :is(strong, span) {
  color: #f3dcac;
  opacity: 1;
}
.franchise-page .franchise-final__copy,
.franchise-page .franchise-final__materials article {
  background: rgba(91, 28, 22, .96);
}
.franchise-page .franchise-final__copy {
  padding: 20px;
  border-radius: 24px;
}
.franchise-page .franchise-income-card::after {
  background: linear-gradient(180deg, rgba(30, 61, 44, .22) 18%, rgba(30, 61, 44, .98) 100%);
}
.franchise-page .franchise-form :is(input, select, textarea),
.franchise-page .franchise-form__status {
  background-color: #f8e9c4;
}

/* Interaction panels expose opaque surfaces so native controls are measurable. */
.lead-branch-picker,
.lead-branch-picker__control,
.canonical-page-prices .prices-first-visit .btn-light {
  background-color: #f8e9c4;
  background-image: none;
}
.franchise-page .franchise-form :is(h3, legend),
.franchise-page [data-franchise-messenger] {
  color: #284e37;
}
.franchise-page .franchise-contact-options input:checked + span,
.franchise-page .franchise-contact-options > a:is(:hover, :focus-visible) {
  color: #f3dcac !important;
}
.franchise-page .franchise-hero__breadcrumbs {
  background-color: transparent;
}
.franchise-page .franchise-hero__breadcrumbs :is(a, span, li) {
  color: #f3dcac;
  opacity: 1;
}
.franchise-page .franchise-form :is(input, textarea)::placeholder {
  color: #284e37;
  opacity: 1;
}

/* Legal documents and editorial/system pages. */
.grandthai-canonical-policy .tp-toc a,
.grandthai-canonical-soglasie .tp-toc a {
  color: #284e37;
}
.grandthai-canonical-policy .tp-toc a:is(:hover, .is-active),
.grandthai-canonical-soglasie .tp-toc a:is(:hover, .is-active) {
  color: #f3dcac;
}
.grandthai-canonical-policy .tp-summary-list li > span,
.grandthai-canonical-soglasie .tp-summary-list li > span {
  color: #284e37;
}
.grandthai-canonical-policy :is(.tp-hero__summary, .tp-sidebar-card, .tp-final__box) :is(h2, p, small, span),
.grandthai-canonical-soglasie :is(.tp-hero__summary, .tp-sidebar-card, .tp-final__box) :is(h2, p, small, span) {
  color: #f3dcac;
  opacity: 1;
}
.ba-lead,
.ba-toc a {
  color: #284e37;
}
.ba-final__box h2,
.ba-side-card > span,
.ba-hero__media figcaption span,
.ba-inline-media figcaption {
  color: #f3dcac;
  opacity: 1;
}
.sys-code,
.sys-final h2,
.sys-art-caption span {
  color: #f3dcac;
  opacity: 1;
}
.sys-art-caption {
  background: rgba(30, 61, 44, .96);
}

/* Product review metadata is small text on the dark service-card surface. */
:is(.single-product, .single-gt_service) .review-product footer :is(strong, span) {
  color: #f3dcac;
  opacity: 1;
}
:is(.single-product, .single-gt_service) .product-price del {
  color: #284e37;
  opacity: 1;
}

/* Exact R12 rendered residues: explicit text ownership on known dark surfaces. */
.grandthai-canonical-sertifikaty .format-card--green h3,
.grandthai-canonical-spa-salon .spa-final-cta__box h2,
.face-massage-page .face-heading--light h2,
.grandthai-canonical-kontakty :is(.rc-route__info h3, .rc-branch-copy h2),
.franchise-page .franchise-income-card__body p,
.franchise-page .franchise-package-card--photo .franchise-package-card__content p {
  color: #f3dcac;
  opacity: 1;
}
/* SPA and branch breadcrumbs are an explicit visible contract. These pages
   render them inside hero cards, so they must not collapse into low-contrast
   legacy typography or disappear under a later component cascade. */
:is(
  .grandthai-canonical-spa-salon .spa-hero .breadcrumbs,
  .grandthai-canonical-spa-programmy .spap-breadcrumbs,
  .grandthai-canonical-spa-seo-hub .seo-breadcrumbs,
  .grandthai-canonical-okskaya .branch-breadcrumbs
) {
  position: relative;
  z-index: 2;
  display: flex !important;
  min-height: 24px;
  align-items: center;
  visibility: visible !important;
  opacity: 1 !important;
  font-size: 12px;
}
:is(
  .grandthai-canonical-spa-salon .spa-hero .breadcrumbs,
  .grandthai-canonical-spa-programmy .spap-breadcrumbs,
  .grandthai-canonical-spa-seo-hub .seo-breadcrumbs,
  .grandthai-canonical-okskaya .branch-breadcrumbs
) a {
  display: inline-flex;
  min-height: 24px;
  align-items: center;
}
.grandthai-canonical-spa-salon .spa-hero .breadcrumbs,
.grandthai-canonical-spa-salon .spa-hero .breadcrumbs :is(a, li) {
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-spa-programmy .spap-breadcrumbs :is(a, li),
.grandthai-canonical-spa-seo-hub .seo-breadcrumbs :is(a, li),
.grandthai-canonical-okskaya .branch-breadcrumbs :is(a, li) {
  color: #284e37;
  opacity: 1;
}

/* GT-035 final deterministic surfaces. Axe cannot infer text contrast through
   image nodes and decorative pseudo layers, so visible copy owns the same
   opaque brand colour that was already painted immediately behind it. */
.corporate-clients-page :is(
  .corporate-audience-card p,
  .corporate-config__content li small,
  .corporate-faq details p
) {
  color: #284e37;
  opacity: 1;
}
.grandthai-canonical-soglasie .tp-note :is(span, p) {
  color: #284e37;
  opacity: 1;
}
.grandthai-canonical-sertifikaty .corporate-box__list > span {
  background: #7f2a21;
  color: #f3dcac;
  opacity: 1;
}
.grandthai-canonical-depozity .deposit-card__image > span {
  isolation: isolate;
  background-color: #f8e9c4;
  background-image: none;
  color: #284e37;
  opacity: 1;
}
.franchise-page .franchise-package-card--photo .franchise-package-card__content {
  background-color: #1e3d2c;
  background-image: none;
}
.franchise-page .franchise-package-card--photo .franchise-package-card__content :is(h3, p) {
  color: #f3dcac;
  opacity: 1;
}
.franchise-page .franchise-hero__breadcrumbs .breadcrumbs__label {
  background-color: transparent;
  color: #f3dcac;
  opacity: 1;
}
.franchise-page .franchise-hero {
  background:
    radial-gradient(circle at 16% 18%, rgba(243, 220, 172, .17), transparent 28%),
    radial-gradient(circle at 88% 84%, rgba(127, 42, 33, .42), transparent 34%),
    #284e37;
}
.franchise-page .franchise-hero::before {
  content: none;
}
.franchise-page .franchise-final {
  background:
    radial-gradient(circle at 90px 50px, transparent 269px, rgba(243, 220, 172, .25) 269px, rgba(243, 220, 172, .25) 270px, transparent 271px),
    linear-gradient(90deg, rgba(127, 42, 33, .94), rgba(127, 42, 33, .76)),
    url('../canonical/franshiza-spa-salona/images/lounge.webp') center / cover no-repeat;
}
.franchise-page .franchise-final::before,
.franchise-page .franchise-final::after {
  content: none;
}
.franchise-page .franchise-hero__breadcrumbs .breadcrumbs__separator {
  color: #f3dcac;
  opacity: 1;
}
.franchise-page .franchise-contact-options > a > .franchise-messenger-label {
  background-color: transparent !important;
  color: #284e37 !important;
  opacity: 1;
}
.franchise-page #franchise-max-note {
  background-color: transparent;
  color: #284e37;
  opacity: 1;
}
.franchise-page .privacy-check a {
  background-color: #f8e9c4;
  color: #7f2a21;
  text-decoration-line: underline !important;
  text-decoration-color: #7f2a21 !important;
  text-decoration-thickness: .08em;
  text-underline-offset: 2px;
  border: 0 !important;
  opacity: 1;
}
.home .offer-note > a {
  text-decoration-line: underline;
  text-decoration-thickness: .1em;
  text-underline-offset: 3px;
}
body.search .gt-page-hero--content h1 {
  background-color: #284e37;
  color: #f3dcac;
  -webkit-text-fill-color: #f3dcac;
}
.canonical-system-404 .sys-eyebrow {
  align-self: flex-start;
  padding: 5px 10px;
  border-radius: 999px;
  background-color: transparent;
  color: #7f2a21;
  line-height: 1.5;
  opacity: 1;
}
.canonical-system-404 .sys-hero {
  background:
    linear-gradient(115deg, rgba(18, 51, 34, .92), rgba(40, 78, 55, .82)),
    url('../canonical/system/images/hero-bg.webp') center / cover no-repeat;
}
.canonical-system-404 .sys-hero::before {
  content: none;
}
.canonical-system-404 .sys-code {
  isolation: isolate;
  padding: 12px 18px;
  border-radius: 18px;
  background-color: #1e3d2c;
  background-image: none;
  color: #f3dcac;
  line-height: 1;
  opacity: 1;
}
.grandthai-woo-flow .wc-form-card__head > span {
  isolation: isolate;
  background-color: #284e37;
  background-image: none;
  color: #f3dcac;
  -webkit-text-fill-color: #f3dcac;
  opacity: 1;
}
@media (max-width: 920px) {
  .grandthai-woo-flow .wc-summary-card {
    top: auto !important;
  }
}
.grandthai-woo-flow .wc-form-card__head h2 {
  background-color: #f8e9c4;
  color: #284e37;
  -webkit-text-fill-color: #284e37;
  opacity: 1;
}
.grandthai-woo-flow #place_order,
.grandthai-woo-flow #place_order:disabled {
  background-color: #284e37 !important;
  background-image: none !important;
  color: #f3dcac !important;
  filter: none !important;
  opacity: 1 !important;
}
.footer-v7__bottom > span {
  background-color: transparent;
  color: #f3dcac;
  opacity: 1;
}

@media (max-width: 820px) {
  :is(
    .grandthai-canonical-spa-salon .spa-hero .breadcrumbs,
    .grandthai-canonical-spa-programmy .spap-breadcrumbs,
    .grandthai-canonical-spa-seo-hub .seo-breadcrumbs,
    .grandthai-canonical-okskaya .branch-breadcrumbs
  ) {
    font-size: 11px;
  }
}

/* Remove group opacity from audited captions; preserve hierarchy with colour. */
.hero-trust small {
  color: #f3dcac;
  opacity: 1;
}
:is(
  .about-hero__caption,
  .standards-media figcaption,
  .promo-card figcaption,
  .hero-trust small,
  .back-massage-page figcaption,
  .face-massage-page figcaption,
  .spa-etiquette-page figcaption,
  .grandthai-canonical-okskaya figcaption
) :is(span, small, p) {
  color: #f3dcac;
  opacity: 1;
}

/* Exact 320 CSS px closure for the five R9/R11 root-overflow routes. */
@media (max-width: 360px) {
  .hero__background {
    transform: none;
  }
  .canonical-page-prices .price-list__head {
    align-items: stretch;
    flex-direction: column;
    gap: 14px;
  }
  .canonical-page-prices .price-result {
    width: 100%;
    max-width: 100%;
  }
  .grandthai-canonical-spa-salon .spa-section-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .grandthai-canonical-spa-salon .spa-section-head .slider-controls {
    max-width: 100%;
    flex-wrap: wrap;
  }
  .grandthai-canonical-tayskiy-massazh .intent-grid--six,
  .grandthai-canonical-tayskiy-massazh .why-grid--six,
  body.home .intent-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .figure-correction-page .figure-meaning__grid,
  .figure-correction-page .figure-meaning__grid article {
    min-width: 0;
  }
}
