/* WordPress-specific integration styles. */
.admin-bar .site-header { top: 32px; margin-top: 0; }
.navbar-collapse > .menu-primary-container { margin-left: auto; }
.site-header .navbar-collapse { overflow: visible; }
.site-header .navbar-toggler { width: 56px; height: 44px; display: none !important; place-items: center; padding: 0; border: 1px solid #d7d9dd; border-radius: 7px; background: #fff; transition: border-color .25s ease, background-color .25s ease, box-shadow .25s ease; }
.site-header .navbar-toggler:hover,
.site-header .navbar-toggler:focus-visible,
.site-header .navbar-toggler[aria-expanded="true"] { border-color: rgba(233,68,90,.55); background: #fff7f8; box-shadow: 0 6px 18px rgba(35,48,80,.10); outline: 0; }
.site-header .navbar-toggler:focus { box-shadow: 0 0 0 3px rgba(233,68,90,.14); }
.site-header .navbar-toggler-icon { width: 26px; height: 18px; position: relative; display: block; background-color: transparent; background-image: linear-gradient(#34383d,#34383d) !important; background-position: center; background-repeat: no-repeat; background-size: 100% 2px; transition: background-size .2s ease, transform .38s cubic-bezier(.4,0,.2,1); }
.site-header .navbar-toggler-icon::before,
.site-header .navbar-toggler-icon::after { content: ""; width: 100%; height: 2px; position: absolute; left: 0; border-radius: 2px; background: #34383d; transition: top .3s cubic-bezier(.4,0,.2,1), bottom .3s cubic-bezier(.4,0,.2,1), transform .3s cubic-bezier(.4,0,.2,1), background-color .25s ease; }
.site-header .navbar-toggler-icon::before { top: 0; }
.site-header .navbar-toggler-icon::after { bottom: 0; }
.site-header .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon { background-size: 0 2px; transform: rotate(180deg); }
.site-header .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before { top: 8px; background-color: var(--brand-pink); transform: rotate(45deg); }
.site-header .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after { bottom: 8px; background-color: var(--brand-pink); transform: rotate(-45deg); }
.site-header .navbar-nav .menu-item { position: relative; }
.site-header .navbar-nav > .menu-item { display: flex; align-items: center; }
.site-header .navbar-nav .nav-link,
.site-header .sub-menu .dropdown-link { position: relative; transition: color .25s ease, background-color .25s ease, transform .25s ease; }
.site-header .navbar-nav > .menu-item > .nav-link::before { content: ""; position: absolute; right: 25px; bottom: 5px; left: 25px; height: 2px; border-radius: 2px; background: linear-gradient(90deg,var(--brand-pink),var(--brand-blue)); transform: scaleX(0); transform-origin: left center; transition: transform .3s ease; }
.site-header .navbar-nav > .menu-item:hover > .nav-link::before,
.site-header .navbar-nav > .menu-item > .nav-link:focus-visible::before,
.site-header .navbar-nav > .menu-item > .nav-link.active::before { transform: scaleX(1); }
.site-header .navbar-nav > .menu-item:hover > .nav-link,
.site-header .navbar-nav > .menu-item > .nav-link:focus-visible,
.site-header .navbar-nav > .menu-item > .nav-link.active { color: var(--brand-pink) !important; outline: 0; }
.site-header .navbar-nav > .menu-item-has-children > .nav-link { padding-right: 44px !important; }
.site-header .submenu-toggle { width: 32px; height: 32px; display: inline-grid; place-items: center; flex: 0 0 32px; margin: 0; padding: 0; border: 0; border-radius: 50%; background: transparent; color: #111; }
.site-header .submenu-toggle span { width: 8px; height: 8px; display: block; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .2s ease; }
.site-header .submenu-toggle:hover,
.site-header .submenu-toggle:focus-visible { background: #fff2f4; color: var(--brand-pink); outline: 0; }
.site-header .sub-menu { min-width: 250px; position: absolute; top: 100%; left: 0; z-index: 20; margin: 0; padding: 10px; list-style: none; border: 1px solid #ececf0; border-radius: 14px; background: #fff; box-shadow: 0 18px 48px rgba(24,40,72,.16); opacity: 0; visibility: hidden; pointer-events: none; transform: translateY(10px); transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s; }
.site-header .sub-menu .menu-item { display: flex; align-items: center; }
.site-header .sub-menu .dropdown-link { width: 100%; display: block; padding: 11px 14px; border-radius: 9px; color: #24262b; font-size: 14px; line-height: 22px; font-weight: 500; text-decoration: none; }
.site-header .sub-menu .dropdown-link:hover,
.site-header .sub-menu .dropdown-link:focus,
.site-header .sub-menu .dropdown-link.active,
.site-header .sub-menu .current-menu-item > .dropdown-link { background: linear-gradient(90deg,rgba(233,68,90,.12),rgba(18,100,169,.08)); color: var(--brand-pink); outline: 0; transform: translateX(3px); }
.site-header .current-menu-ancestor > .nav-link { color: var(--brand-pink) !important; }
.site-header .sub-menu .sub-menu { top: -10px; left: calc(100% + 8px); }
.site-header .menu-item-has-children:hover > .sub-menu,
.site-header .menu-item-has-children:focus-within > .sub-menu,
.site-header .menu-item-has-children.submenu-open > .sub-menu { opacity: 1; visibility: visible; pointer-events: auto; transform: none; transition-delay: 0s; }
.site-header .menu-item-has-children.submenu-open > .submenu-toggle span { transform: translateY(2px) rotate(225deg); }
.site-header .header-options-cta { margin-left: 16px; }
.site-header .header-options-cta > .nav-link { min-height: 58px; display: inline-flex; align-items: center; justify-content: center; gap: 15px; border-radius: 30px; background: #de3e4f; color: #fff; padding: 14px 25px; font-family: "Poppins",sans-serif; font-size: 16px; line-height: 26px; font-weight: 500; text-transform: uppercase; letter-spacing: .1em; }
.site-header .header-options-cta > .nav-link::after { content: ""; width: 30px; height: 30px; flex: 0 0 30px; background: url("../icons/arrow-circle.svg") center/contain no-repeat; }
.site-header .header-options-cta > .nav-link:hover,
.site-header .header-options-cta > .nav-link:focus { background: #d8344c; color: #fff; transform: translateY(-1px); }

@media (min-width: 1200px) {
  .site-header .navbar-nav > .menu-item-has-children > .submenu-toggle { position: absolute; right: 8px; }
}
.inner-footer-links-row .menu-footer-container { display: contents; }
.inner-footer-nav { margin: 0; padding-left: 0; list-style: none; }
.inner-footer-nav li { list-style: none; }
.product-card-link { color: inherit; text-decoration: none; }
.product-card-link:hover { color: inherit; }
.archive-products { padding-block: 100px; }
.archive-products .products-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.single-product-main { padding-block: 100px; }
.product-detail-gallery { display: grid; gap: 20px; }
.product-gallery-stage { min-height: 0; aspect-ratio: 1.48; }
.product-gallery-stage .product-pack-image { transition: opacity .18s ease, transform .18s ease; }
.product-gallery-stage .product-pack-image.is-switching { opacity: .18; transform: scale(.98); }
.product-gallery-thumbs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.product-gallery-thumb { min-width: 0; aspect-ratio: 1.45; padding: 10px; overflow: hidden; border: 2px solid transparent; border-radius: 14px; background: #f1f2f5; cursor: pointer; transition: border-color .25s ease, background-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.product-gallery-thumb img { width: 100%; height: 100%; display: block; object-fit: contain; }
.product-gallery-thumb:hover,
.product-gallery-thumb:focus-visible,
.product-gallery-thumb.is-active { border-color: var(--brand-pink); background: #fff; box-shadow: 0 8px 22px rgba(26,88,163,.12); outline: 0; transform: translateY(-2px); }
.blog-index { padding-block: 100px; }
.blog-index-card { margin-bottom: 48px; }

/* Gravity Forms is intentionally restyled to match the Figma contact form. */
.whitewings-gravity-form .gform_heading { display: none; }
.whitewings-gravity-form .gform_fields { display: grid; gap: 24px; }
.whitewings-gravity-form .gfield_label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; }
.whitewings-gravity-form input[type="text"],
.whitewings-gravity-form input[type="email"],
.whitewings-gravity-form input[type="tel"],
.whitewings-gravity-form textarea { width: 100%; display: block; margin: 0; border: 1px solid #dedede; border-radius: 34px; background: #fff; padding: 14px 24px; color: #333; font-family: "Poppins",sans-serif; font-size: 18px; line-height: 30px; outline: none; }
.whitewings-gravity-form input[type="text"],
.whitewings-gravity-form input[type="email"],
.whitewings-gravity-form input[type="tel"] { height: 61px; }
.whitewings-gravity-form textarea { height: 138px; min-height: 138px; resize: vertical; border-radius: 20px; }
.whitewings-gravity-form input:focus,
.whitewings-gravity-form textarea:focus { border-color: var(--brand-pink); box-shadow: 0 0 0 3px rgba(233,68,90,.12); }
.whitewings-gravity-form .gform_footer { margin-top: 24px; padding: 0; }
.whitewings-gravity-form .gform_button { width: 100%; height: 58px; border: 0; border-radius: 30px; background: #df3e51; color: #fff; font: 500 16px/26px "Poppins",sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.contact-panel:has(.gform_validation_error) { height: auto; min-height: 780px; }
.contact-form:has(.gform_validation_error) { height: auto; min-height: 619px; }
.whitewings-gravity-form .gform_validation_errors { margin: 0 0 18px; padding: 14px 20px; border: 1px solid #df3e51; border-radius: 12px; color: #a7192d; }
.whitewings-gravity-form .gform_validation_errors .gform_submission_error { margin: 0; color: #a7192d; font: 600 16px/1.5 "Poppins",sans-serif; letter-spacing: 0; text-transform: none; }
.whitewings-gravity-form .validation_message { margin-top: 6px; color: #a7192d; font: 500 12px/1.45 "Poppins",sans-serif; }
.whitewings-gravity-form .gform_confirmation_wrapper { min-height: 420px; display: flex; align-items: center; justify-content: center; }
.whitewings-gravity-form .gform_confirmation_message { width: 100%; margin: 0; padding: 28px 32px; border: 1px solid #b9e3c5; border-radius: 18px; background: #eefaf2; color: #18813b; font: 600 20px/1.6 "Poppins",sans-serif; text-align: center; }

@media (max-width: 991.98px) {
  .contact-panel:has(.gform_validation_error) { min-height: 0; }
}

@media (max-width: 767.98px) {
  .whitewings-gravity-form .gform_confirmation_wrapper { min-height: 220px; }
  .whitewings-gravity-form .gform_confirmation_message { padding: 24px 20px; font-size: 17px; }
}

@media (max-width: 1199.98px) {
  .site-header .navbar-toggler { display: grid !important; }
  .navbar-collapse > .menu-primary-container { margin-left: 0; }
  .site-header .navbar-collapse { max-height: calc(100vh - 76px); overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
  .site-header .navbar-nav > .menu-item,
  .site-header .sub-menu .menu-item { display: flex; flex-wrap: wrap; align-items: center; }
  .site-header .navbar-nav .nav-link { flex: 1 1 auto; }
  .site-header .navbar-nav .nav-link,
  .site-header .sub-menu .dropdown-link { min-height: 54px; display: flex; align-items: center; padding: 15px 24px !important; font-size: 15px; line-height: 24px; }
  .site-header .navbar-nav > .menu-item-has-children > .nav-link { padding-right: 25px !important; }
  .site-header .submenu-toggle { width: 54px; height: 54px; flex-basis: 54px; margin: 0; }
  .site-header .sub-menu { width: 100%; min-width: 0; max-height: 0; position: static; flex: 0 0 100%; margin: 0; padding: 0; border: 0; border-radius: 0; background: #fafafa; box-shadow: none; opacity: 1; visibility: visible; pointer-events: none; transform: none; overflow: hidden; transition: max-height .3s ease, padding .3s ease; }
  .site-header .sub-menu .menu-item { min-height: 54px; }
  .site-header .sub-menu .dropdown-link { border-radius: 0; }
  .site-header .navbar-nav > .menu-item > .nav-link::before { right: 24px; bottom: 7px; left: 24px; }
  .site-header .menu-item-has-children:hover > .sub-menu,
  .site-header .menu-item-has-children:focus-within > .sub-menu { max-height: 0; padding-block: 0; pointer-events: none; }
  .site-header .menu-item-has-children.submenu-open > .sub-menu { max-height: 600px; padding-block: 8px; pointer-events: auto; }
  .site-header .sub-menu .sub-menu { margin-left: 12px; }
  .site-header .header-options-cta { margin: 8px 0 0; }
  .site-header .header-options-cta > .nav-link { width: 100%; }
  .archive-products .products-grid { grid-template-columns: 1fr; }
}

.btn-brand,
.inner-footer .btn-brand,
.site-header .header-options-cta > .nav-link,
.contact-submit,
.whitewings-gravity-form .gform_button {
  background-color: var(--brand-pink);
  background-image: linear-gradient(110deg,#de3e4f 0%,#de3e4f 38%,#f06b7d 56%,#1264a9 100%);
  background-size: 250% 100%;
  background-position: left center;
  color: #fff;
  transition: background-position .5s ease, box-shadow .3s ease, color .25s ease, transform .25s ease;
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  line-height: 26px;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .1em;
}

.btn-brand:hover,
.btn-brand:focus-visible,
.site-header .header-options-cta > .nav-link:hover,
.site-header .header-options-cta > .nav-link:focus-visible,
.contact-submit:hover,
.contact-submit:focus-visible,
.whitewings-gravity-form .gform_button:hover,
.whitewings-gravity-form .gform_button:focus-visible {
  background-color: var(--brand-pink);
  background-image: linear-gradient(110deg,#de3e4f 0%,#de3e4f 38%,#f06b7d 56%,#1264a9 100%);
  background-size: 250% 100%;
  background-position: right center;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(18,100,169,.24);
  transform: translateY(-2px);
  outline: 0;
}

.btn-brand:hover > img,
.btn-brand:focus-visible > img,
.site-header .header-options-cta > .nav-link:hover::after,
.site-header .header-options-cta > .nav-link:focus-visible::after { animation: whitewings-button-arrow .6s ease both; }

@keyframes whitewings-button-arrow {
  0%,100% { transform: translateX(0); }
  50% { transform: translateX(4px); }
}

@media (prefers-reduced-motion: reduce) {
  .btn-brand,
  .site-header .header-options-cta > .nav-link,
  .contact-submit,
  .whitewings-gravity-form .gform_button { transition: none; }
  .site-header .navbar-toggler,
  .site-header .navbar-toggler-icon,
  .site-header .navbar-toggler-icon::before,
  .site-header .navbar-toggler-icon::after { transition: none; }
  .btn-brand:hover > img,
  .btn-brand:focus-visible > img,
  .site-header .header-options-cta > .nav-link:hover::after,
  .site-header .header-options-cta > .nav-link:focus-visible::after { animation: none; }
}

/* Keep the footer CTA button visually centred against the heading, not the tag. */
.inner-footer-title-row { display: flex; align-items: center; justify-content: space-between; gap: 48px; margin-top: 18px; }
.inner-footer-title-row h2 { min-width: 0; flex: 1 1 auto; margin: 0; }
.inner-footer-title-line { display: block; }
.inner-footer-title-row .btn-brand { flex: 0 0 auto; }

@media (max-width: 991.98px) {
  .inner-footer-title-row { flex-direction: column; align-items: flex-start; gap: 24px; }
}

@media (max-width: 1199.98px) {
  :root {
    --ww-section-space: 32px;
    --ww-panel-space: 32px;
    --ww-heading-gap: 28px;
    --ww-body-size: 16px;
    --ww-body-line: 1.65;
    --ww-h2-size: clamp(26px, 2.7vw, 32px);
    --ww-h2-line: 1.25;
    --ww-h3-size: clamp(21px, 2vw, 24px);
  }

  body,
  .inner-page { font-size: var(--ww-body-size); line-height: var(--ww-body-line); }

  .section-tag,
  .eyebrow { padding: 6px 14px 5px; font-size: 12px; line-height: 16px; }

  .site-header .navbar-nav .nav-link,
  .site-header .sub-menu .dropdown-link { font-size: 14px; line-height: 22px; }

  .section p,
  .inner-copy p,
  .default-page-content .entry-content,
  .single-product-main,
  .blog-index { font-size: var(--ww-body-size); line-height: var(--ww-body-line); }

  .section,
  .inner-section:not(.about-principles),
  .about-overview,
  .about-purpose,
  .about-faq,
  .contact-intro,
  .archive-products,
  .single-product-main,
  .blog-index,
  .default-page-content {
    padding-block: var(--ww-section-space);
  }

  .section.products-section { padding-block: 0; }
  .section.features-section,
  .section.manufacturing-section { padding-bottom: 0; }

  .gradient-panel,
  .manufacturing-panel,
  .principles-panel,
  .contact-panel {
    min-height: 0;
    padding-block: var(--ww-panel-space);
  }

  .section-heading,
  .products-section .section-heading,
  .faq-section .section-heading,
  .contact-intro .section-heading {
    margin-bottom: var(--ww-heading-gap);
  }

  /* The raised home-page feature icons need additional clearance. */
  .features-section .section-heading {
    margin-bottom: 72px;
  }

  .about .row,
  .about-overview .row,
  .manufacturing-panel .row,
  .principles-panel .row,
  .single-product-main .row {
    --bs-gutter-y: 28px;
  }

  .contact-panel .row { --bs-gutter-y: 0; gap: 28px; }
  .contact-cards,
  .archive-products .products-grid { gap: 24px; }
  .blog-index-card { margin-bottom: 24px; }
  .accordion { gap: 18px; }
  .accordion-button {
    min-height: 60px;
    padding: 16px 24px;
    font-size: clamp(18px, 2vw, 22px);
    line-height: 1.3;
  }
  .accordion-body { padding: 0 24px 24px; font-size: 15px; line-height: 25px; }

  .product-card h3,
  .contact-card h3,
  .default-page-content .entry-content h3 { font-size: var(--ww-h3-size); line-height: 1.25; }
  .product-card > p { font-size: 15px; line-height: 24px; }
  .sizes-label { font-size: 13px; line-height: 20px; }
  .size-list li { font-size: clamp(16px, 1.7vw, 20px); line-height: 1.25; }

  .feature strong { font-size: 14px; line-height: 21px; }
  .feature small { font-size: 15px; line-height: 22px; }
  .check-list,
  .principles-copy .check-list { font-size: 15px; line-height: 26px; }
  .check-list li { line-height: inherit; }

  .contact-card p,
  .contact-card a { font-size: 16px; line-height: 25px; }
  .contact-form input,
  .contact-form textarea,
  .whitewings-gravity-form input[type="text"],
  .whitewings-gravity-form input[type="email"],
  .whitewings-gravity-form input[type="tel"],
  .whitewings-gravity-form textarea { font-size: 15px; line-height: 24px; }

  .btn-brand,
  .inner-footer .btn-brand,
  .site-header .header-options-cta > .nav-link,
  .contact-submit,
  .whitewings-gravity-form .gform_button { font-size: 14px; line-height: 22px; }

  .inner-hero h1 { font-size: 42px; line-height: 1.12; }
  .single-product-main h1,
  .error-404-content h1 { font-size: 36px; line-height: 1.2; }
  .error-404-message { font-size: 16px; line-height: 1.65; }
  .error-404-code { font-size: clamp(110px, 15vw, 180px); }

  .whitewings-gravity-form .gform_validation_errors .gform_submission_error { font-size: 14px; line-height: 1.5; }
  .whitewings-gravity-form .gform_confirmation_message { font-size: 16px; line-height: 1.55; }

  .inner-footer p,
  .inner-footer a { font-size: 15px; line-height: 24px; }
  .inner-footer .footer-location-link { font-size: 14px !important; line-height: 22px !important; }
  .footer-label { font-size: 11px; line-height: 18px; }
  .inner-footer-nav a { font-size: 13px; line-height: 20px; }
  .inner-footer-bottom { font-size: 12px; line-height: 20px; }
  .error-404-section { min-height: 0; padding-block: var(--ww-section-space); }

  .inner-footer-about,
  .inner-footer-contact { min-height: 0; padding-top: var(--ww-section-space); }
  .inner-footer-cta { padding-bottom: var(--ww-section-space); }
  .inner-footer-main,
  .inner-footer-contact .inner-footer-main { padding-block: var(--ww-section-space) 28px; }
  .inner-footer-links-row,
  .inner-footer-contact .inner-footer-links-row { padding-bottom: 24px; }
  .inner-footer-bottom { padding-block: 18px; }

  main h2,
  .site-footer h2,
  .inner-footer h2 {
    font-family: "Inter Tight", sans-serif;
    font-size: var(--ww-h2-size) !important;
    line-height: var(--ww-h2-line) !important;
    font-weight: 700;
    letter-spacing: 0;
  }
}

@media (min-width: 1200px) and (max-width: 1679.98px) {
  .features-section .section-heading { margin-bottom: 76px; }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  .section.about .row {
    --bs-gutter-y: 0;
    display: grid;
    grid-template-columns: minmax(0, 44fr) minmax(0, 56fr);
    column-gap: 32px;
    margin: 0;
  }

  .section.about .row > [class*="col-"] {
    width: auto;
    max-width: none;
    margin: 0;
    padding: 0;
  }

  .section.about .about-image { width: 100%; aspect-ratio: 4 / 3; }
  .section.about .home-about-copy,
  .section.about .home-about-copy p { max-width: none; }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  .products-section .row > .col-md-6:last-child:nth-child(odd) {
    margin-right: auto;
    margin-left: auto;
  }
}

@media (max-width: 767.98px) {
  :root {
    --ww-body-size: 15px;
    --ww-h2-size: 24px;
    --ww-h2-line: 30px;
    --ww-h3-size: 20px;
  }

  .section-tag,
  .eyebrow { padding: 4px 10px; font-size: 10px; line-height: 14px; }

  main h2,
  .site-footer h2,
  .inner-footer h2 {
    margin: 14px 0 18px;
    font-family: "Inter Tight", sans-serif;
    font-size: var(--ww-h2-size) !important;
    line-height: var(--ww-h2-line) !important;
    font-weight: 700;
    letter-spacing: 0;
  }

  .section-heading p { font-size: 14px; line-height: 22px; }
  .accordion-button { min-height: 54px; padding: 15px 18px; font-size: 18px; line-height: 24px; }
  .accordion-body { padding: 0 18px 20px; font-size: 14px; line-height: 23px; }

  .product-card h3,
  .contact-card h3,
  .default-page-content .entry-content h3 { font-size: var(--ww-h3-size); line-height: 26px; }
  .product-card > p { font-size: 14px; line-height: 22px; }
  .sizes-label { font-size: 12px; line-height: 18px; }
  .size-list li { font-size: 15px; line-height: 20px; }

  .feature strong { font-size: 12px; line-height: 18px; letter-spacing: 1px; }
  .feature small { font-size: 13px; line-height: 19px; }
  .features-grid { gap: 48px 12px; }
  .feature { min-height: 104px; padding: 42px 8px 14px; }
  .feature-icon { top: -36px; width: 72px; height: 72px; }
  .feature-icon img { width: 40px; height: 40px; }
  .check-list,
  .principles-copy .check-list { font-size: 14px; line-height: 23px; }

  .contact-card p,
  .contact-card a { font-size: 14px; line-height: 23px; }
  .contact-card > img {
    width: 48px;
    height: 48px;
    margin-bottom: 16px;
  }
  .contact-card:nth-child(2) > img,
  .contact-card:nth-child(3) > img { width: 44px; height: 44px; }
  .contact-form input,
  .contact-form textarea,
  .whitewings-gravity-form input[type="text"],
  .whitewings-gravity-form input[type="email"],
  .whitewings-gravity-form input[type="tel"],
  .whitewings-gravity-form textarea { font-size: 14px; line-height: 22px; }

  .btn-brand,
  .inner-footer .btn-brand,
  .site-header .header-options-cta > .nav-link,
  .contact-submit,
  .whitewings-gravity-form .gform_button {
    height: 46px;
    min-height: 46px;
    gap: 9px;
    padding: 0 16px;
    border-radius: 24px;
    font-size: 12px;
    line-height: 18px;
  }
  .btn-brand > img,
  .inner-footer .btn-brand > img { width: 24px; height: 24px; flex-basis: 24px; }
  .site-header .header-options-cta > .nav-link::after { width: 24px; height: 24px; flex-basis: 24px; }

  .inner-hero h1 { font-size: 32px; line-height: 1.15; }
  .single-product-main h1,
  .error-404-content h1 { font-size: 30px; line-height: 1.2; }
  .error-404-message { font-size: 14px; line-height: 1.65; }
  .error-404-code { font-size: 110px; }

  .whitewings-gravity-form .gform_validation_errors .gform_submission_error { font-size: 13px; }
  .whitewings-gravity-form .gform_confirmation_message { font-size: 15px; line-height: 1.5; }

  .inner-footer p,
  .inner-footer a { font-size: 14px; line-height: 22px; }
  .inner-footer .footer-location-link { font-size: 13px !important; line-height: 21px !important; }
  .inner-footer-nav a,
  .inner-footer-bottom { font-size: 12px; line-height: 19px; }
}

@media screen and (max-width: 782px) {
  html #wpadminbar { position: fixed; }
  .admin-bar .site-header { top: 46px; }
}

@media (max-width: 767.98px) {
  .product-detail-gallery { gap: 12px; }
  .product-gallery-thumbs { gap: 8px; }
  .product-gallery-thumb { padding: 6px; border-radius: 10px; }
}

/* Global brand treatment for all bold headings, from hero through footer. */
:root { --ww-heading-color: #1a58a3; }

h1,
h2,
h3,
h4,
h5,
h6,
.accordion-button,
.accordion-button.collapsed:hover,
.accordion-button:not(.collapsed),
.footer-label {
  color: var(--ww-heading-color) !important;
}
