
main{
  margin-block-start: 0 !important;

}
.site-apglos-sw {
  --sw-amber: #f5a623;
  --sw-amber-dark: #d48f1e;
  --sw-amber-light: #fdf0d5;
  --sw-navy: #091e42;
  --sw-white: #ffffff;
  --sw-surface: #f5f5f5;
  --sw-border: #e0e0e0;
  --sw-radius: 1rem;
  --sw-radius-sm: 0.5rem;
  --sw-page-gutter: max(1.5rem, 4vw);
  --sw-max-width: 1100px;

  /* Override WP's constrained-layout content widths */
  --wp--style--global--content-size: var(--sw-max-width);
  --wp--style--global--wide-size: var(--sw-max-width);
}

/* ==========================================================================
   GLOBAL: 16px body, black/white text
   ========================================================================== */

.site-apglos-sw {
  font-size: 16px !important;
}

.site-apglos-sw p,
.site-apglos-sw li,
.site-apglos-sw td,
.site-apglos-sw label,
.site-apglos-sw input,
.site-apglos-sw select,
.site-apglos-sw textarea {
  color: #000;
  font-size: 1rem;
}

.site-apglos-sw h1,
.site-apglos-sw h2,
.site-apglos-sw h3,
.site-apglos-sw h4,
.site-apglos-sw h5,
.site-apglos-sw h6 {
  color: #000;
}

/* ==========================================================================
   WIDTH SYSTEM
   Principle: only ONE element in each nesting chain provides max-width +
   gutter padding.  All deeper containers are transparent.
   ========================================================================== */

/* 1. Strip constraints from the outermost WP wrappers so sections can span
      the full viewport (homepage uses alignfull post-content; products/shop
      use has-global-padding + is-layout-constrained). */
.site-apglos-sw main > .wp-block-group,
.site-apglos-sw main > .wp-block-group > .wp-block-post-content,
.site-apglos-sw main > .wp-block-group > .entry-content {
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 2. Full-width sections: background spans viewport, gutter on sides. */
.site-apglos-sw .wp-block-group.alignfull {
  max-width: none;
  padding-left: var(--sw-page-gutter);
  padding-right: var(--sw-page-gutter);
}

/* 3. Direct children of alignfull: centred at --sw-max-width, NO extra padding
      (the parent already provides the gutter).
      Exclude the hero (.has-primary-background-color) — it has its own sizing. */
.site-apglos-sw .wp-block-group.alignfull:not(.has-primary-background-color) > .wp-block-heading,
.site-apglos-sw .wp-block-group.alignfull:not(.has-primary-background-color) > p,
.site-apglos-sw .wp-block-group.alignfull:not(.has-primary-background-color) > .wp-block-buttons,
.site-apglos-sw .wp-block-group.alignfull:not(.has-primary-background-color) > .wp-block-list,
.site-apglos-sw .wp-block-group.alignfull > .wp-block-columns,
.site-apglos-sw .wp-block-group.alignfull > .wp-block-group,
.site-apglos-sw .wp-block-group.alignfull > .wp-block-image,
.site-apglos-sw .wp-block-group.alignfull > figure {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--sw-max-width);
  padding-left: 0;
  padding-right: 0;
}

/* 4. Wide groups (e.g. "Get Started"): constrained + gutter. */
.site-apglos-sw .wp-block-group.alignwide {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--sw-max-width);
  padding-left: var(--sw-page-gutter);
  padding-right: var(--sw-page-gutter);
}

/* 5. Columns inside an already-constrained parent (alignfull or alignwide
      group) must NOT add their own max-width/padding — they fill the parent. */
.site-apglos-sw .wp-block-group.alignfull > .wp-block-columns.alignwide,
.site-apglos-sw .wp-block-group.alignwide > .wp-block-columns.alignwide {
  max-width: var(--sw-max-width);
  padding-left: 0;
  padding-right: 0;
}

/* 6. Top-level alignwide columns (direct children of post-content, not inside
      a group) — these need their own max-width + gutter. */
.site-apglos-sw .wp-block-post-content > .wp-block-columns.alignwide,
.site-apglos-sw .entry-content > .wp-block-columns.alignwide {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--sw-max-width);
  padding-left: var(--sw-page-gutter);
  padding-right: var(--sw-page-gutter);
}

/* 7. Standalone blocks (headings, paragraphs, lists, images) that are direct
      children of post-content — centred at max-width with gutter. */
.site-apglos-sw .wp-block-post-content > .wp-block-heading,
.site-apglos-sw .wp-block-post-content > p,
.site-apglos-sw .wp-block-post-content > .wp-block-list,
.site-apglos-sw .wp-block-post-content > .wp-block-image,
.site-apglos-sw .wp-block-post-content > figure,
.site-apglos-sw .entry-content > .wp-block-heading,
.site-apglos-sw .entry-content > p,
.site-apglos-sw .entry-content > .wp-block-list,
.site-apglos-sw .entry-content > .wp-block-image,
.site-apglos-sw .entry-content > figure {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--sw-max-width);
  padding-left: var(--sw-page-gutter);
  padding-right: var(--sw-page-gutter);
}

/* 8. Shop / WooCommerce: all alignwide elements inside post-content */
.site-apglos-sw .wp-block-post-content > .alignwide,
.site-apglos-sw .wp-block-post-content > .wp-block-woocommerce-product-collection.alignwide {
  box-sizing: border-box;
  margin-left: auto;
  margin-right: auto;
  max-width: var(--sw-max-width);
  padding-left: var(--sw-page-gutter);
  padding-right: var(--sw-page-gutter);
}

/* ==========================================================================
   GLOBAL: hide page titles and breadcrumbs
   ========================================================================== */

.site-apglos-sw main > .wp-block-group > .wp-block-post-title,
.site-apglos-sw main > .wp-block-post-title,
.site-apglos-sw .wp-block-post-content > .wp-block-post-title,
.site-apglos-sw .wp-block-post-content > .wp-block-query-title {
  display: none !important;
}

.site-apglos-sw .woocommerce-breadcrumb,
.site-apglos-sw .wp-block-woocommerce-breadcrumbs {
  display: none !important;
}

/* ==========================================================================
   GLOBAL: buttons — amber bg, WHITE text
   ========================================================================== */

.site-apglos-sw .wp-element-button,
.site-apglos-sw .wp-block-button__link {
  background: var(--sw-amber) !important;
  border: 0;
  border-radius: 4px;
  color: var(--sw-white) !important;
  font-weight: 600;
}

.site-apglos-sw .wp-element-button:hover,
.site-apglos-sw .wp-block-button__link:hover {
  background: var(--sw-amber-dark) !important;
  color: var(--sw-white) !important;
}

/* ==========================================================================
   GLOBAL: inline icons
   ========================================================================== */

.site-apglos-sw .apglos-inline-icon {
  display: inline-block;
  height: 1.25rem;
  vertical-align: middle;
  width: 1.25rem;
}

/* ==========================================================================
   HEADER — logo left, centred pill menu, contact button right
   ========================================================================== */

.site-apglos-sw .apglos-site-header--sw {
  background: var(--sw-white);
  border-bottom: 1px solid var(--sw-border);
  padding: 0.6rem var(--sw-page-gutter);
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 100;
}

.site-apglos-sw .sw-header__row {
  align-items: center;
  display: grid;
  grid-template-columns: auto 1fr auto;
  margin: 0 auto;
  max-width: var(--sw-max-width);
}

.site-apglos-sw .sw-header__logo {
  flex-shrink: 0;
}

.site-apglos-sw .sw-header__logo img {
  display: block;
  height: auto;
  max-width: 140px;
}

.site-apglos-sw .sw-header__nav {
  display: flex;
  justify-content: center;
}

/* Pill-shaped golden menu */
.site-apglos-sw .sw-header__menu {
  align-items: stretch;
  background: var(--sw-amber);
  border-radius: 999px;
  display: flex;
  list-style: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
}

.site-apglos-sw .sw-header__item {
  display: flex;
}

/* White vertical divider between items */
.site-apglos-sw .sw-header__item + .sw-header__item {
  border-left: 1px solid rgba(255, 255, 255, 0.5);
}

.site-apglos-sw .sw-header__menu a {
  align-items: center;
  color: var(--sw-white);
  display: flex;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 0.55rem 1.1rem;
  text-decoration: none;
  white-space: nowrap;
}

.site-apglos-sw .sw-header__menu a:hover {
  background: var(--sw-amber-dark);
  color: var(--sw-white);
}

/* Active page highlight */
.site-apglos-sw .sw-header__item--active a {
  background: var(--sw-amber-dark);
}

/* Contact button — separate from pill, rounded, on the right */
.site-apglos-sw .sw-header__contact-button {
  align-items: center;
  background: var(--sw-amber);
  border-radius: 999px;
  color: var(--sw-white);
  display: flex;
  font-size: 0.85rem;
  font-weight: 700;
  padding: 0.55rem 1.3rem;
  text-decoration: none;
  white-space: nowrap;
  margin-right: 10px;
}

.site-apglos-sw .sw-header__contact-button:hover {
  background: var(--sw-amber-dark);
  color: var(--sw-white);
}

@media (max-width: 781px) {
  .site-apglos-sw .sw-header__row { gap: 0.5rem; }
  .site-apglos-sw .sw-header__logo img { max-width: 90px; }

  .site-apglos-sw .sw-header__menu a {
    font-size: 0.65rem;
    padding: 0.4rem 0.6rem;
  }

  .site-apglos-sw .sw-header__contact-button {
    font-size: 0.65rem;
    padding: 0.4rem 0.7rem;
  }
}

@media (max-width: 480px) {
  .site-apglos-sw .sw-header__menu a {
    font-size: 0.55rem;
    padding: 0.35rem 0.4rem;
  }

  .site-apglos-sw .sw-header__contact-button {
    font-size: 0.55rem;
    padding: 0.35rem 0.5rem;
  }

  .site-apglos-sw .sw-header__logo img { max-width: 70px; }
}

/* ==========================================================================
   HERO — white box, bg image: width-matched, bottom-aligned
   ========================================================================== */

.site-apglos-sw .has-primary-background-color {
  background: var(--sw-navy) url("../images/sw-hero-bg.png") center bottom / 100% auto no-repeat !important;
  align-items: center;
  display: flex;
  flex-direction: column;
  min-height: 280px;
  padding: 2rem var(--sw-page-gutter) !important;
  position: relative;
}

/* Slight darkening overlay */
.site-apglos-sw .has-primary-background-color::before {
  background: rgba(0, 0, 0, 0.15);
  content: "";
  inset: 0;
  position: absolute;
}

/* White box behind content */
.site-apglos-sw .has-primary-background-color::after {
  background: rgba(255, 255, 255, 0.93);
  border-radius: var(--sw-radius);
  bottom: 1rem;
  content: "";
  left: 50%;
  max-width: 550px;
  position: absolute;
  top: 1rem;
  transform: translateX(-50%);
  width: calc(100% - 6rem);
  z-index: 1;
}

/* Content above box — left-aligned */
.site-apglos-sw .has-primary-background-color > * {
  max-width: 480px;
  padding: 0 1.5rem;
  position: relative;
  text-align: left;
  z-index: 2;
}

/* Reset per-element bg (keep max-width from the > * rule) */
.site-apglos-sw .has-primary-background-color > .wp-block-heading,
.site-apglos-sw .has-primary-background-color > p,
.site-apglos-sw .has-primary-background-color > .wp-block-buttons {
  background: none;
}

/* Hero text */
.site-apglos-sw .has-primary-background-color h1,
.site-apglos-sw .has-primary-background-color h2 {
  color: #000 !important;
  text-align: left !important;
}

/* Subtitle — italic */
.site-apglos-sw .has-primary-background-color h2 {
  font-size: 0.9rem !important;
  font-style: italic;
  font-weight: 400;
  margin-bottom: 0.25rem;
}

.site-apglos-sw .has-primary-background-color h1 {
  font-size: 1.8rem !important;
  margin-bottom: 0.5rem;
  margin-top: 0;
}

.site-apglos-sw .has-primary-background-color p {
  color: #000 !important;
  font-size: 1rem !important;
  line-height: 1.5;
  text-align: left !important;
}

/* CTA button — pill shape, white text */
.site-apglos-sw .has-primary-background-color .wp-block-button__link {
  background: var(--sw-amber) !important;
  border-radius: 999px !important;
  color: var(--sw-white) !important;
  font-size: 0.85rem;
  padding: 0.6rem 1.5rem;
}

.site-apglos-sw .has-primary-background-color .wp-block-buttons {
  justify-content: flex-start !important;
  margin-top: 0.5rem;
}

/* Mobile: full-width white box, no rounded corners */
@media (max-width: 1000px) {
  .site-apglos-sw .has-primary-background-color::after {
    border-radius: 0;
    left: 0;
    max-width: none;
    transform: none;
    width: 100%;
  }

  .site-apglos-sw .has-primary-background-color > * {
    max-width: 100%;
  }
}

/* ==========================================================================
   USP FEATURE STRIP — amber-light with black text, large icons
   ========================================================================== */

.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-columns,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-columns {
  gap: 1rem;
  margin-left: auto;
  margin-right: auto;
}

.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column {
  background: var(--sw-amber-light) !important;
  border: none !important;
  border-radius: var(--sw-radius);
  padding: 8px;
  text-align: center;
}

.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column h3,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column h3 {
  color: #000 !important;
  font-size: 1rem;
  margin-bottom: 0.3rem;
}

.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column p,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column p {
  color: #000 !important;
  font-size: 1rem;
}

/* Icons — 4x enlarged */
.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column::before,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column::before {
  background: var(--sw-amber);
  border-radius: 50%;
  content: "";
  display: block;
  height: 58px;
  margin: 0 auto 0.6rem;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: 48px;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 48px;
  width: 80px;
}

.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column:nth-child(1)::before,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column:nth-child(1)::before {
  mask-image: url("../icons/laptop.svg"); -webkit-mask-image: url("../icons/laptop.svg");
}
.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column:nth-child(2)::before,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column:nth-child(2)::before {
  mask-image: url("../icons/crane.svg"); -webkit-mask-image: url("../icons/crane.svg");
}
.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column:nth-child(3)::before,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column:nth-child(3)::before {
  mask-image: url("../icons/navigation.svg"); -webkit-mask-image: url("../icons/navigation.svg");
}
.site-apglos-sw .entry-content > .wp-block-group.alignfull + .wp-block-group.alignfull .wp-block-column:nth-child(4)::before,
.site-apglos-sw .wp-block-post-content > .wp-block-group.alignfull:nth-child(2) .wp-block-column:nth-child(4)::before {
  mask-image: url("../icons/database.svg"); -webkit-mask-image: url("../icons/database.svg");
}

/* ==========================================================================
   "Get Started in Minutes" — no grey bg, two-column text boxes full width
   ========================================================================== */

.site-apglos-sw .has-surface-background-color {
  background: transparent !important;
  border-radius: 0;
}

/* The two text columns inside "Get Started" — amber-light boxes */
.site-apglos-sw .has-surface-background-color .wp-block-columns .wp-block-column {
  background: var(--sw-amber-light);
  border-radius: var(--sw-radius);
  padding: 1.5rem;
}

/* Columns inside "Get Started" fill the parent (parent already has max-width + gutter) */
.site-apglos-sw .has-surface-background-color .wp-block-columns.alignwide {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

/* ==========================================================================
   Column cards — amber-light bg with black text (all pages)
   ========================================================================== */

.site-apglos-sw .wp-block-columns.alignwide > .wp-block-column {
  background: var(--sw-amber-light);
  border: 1px solid rgba(245, 166, 35, 0.15);
  border-radius: var(--sw-radius);
  padding: 1rem 0.75rem;
  text-align: center;
}

.site-apglos-sw .wp-block-columns.alignwide > .wp-block-column h3,
.site-apglos-sw .wp-block-columns.alignwide > .wp-block-column p {
  color: #000 !important;
}

/* ==========================================================================
   App Store badges — same height, aligned, clickable, reduced padding
   ========================================================================== */

.site-apglos-sw .wp-block-image img[alt*="Google Play"],
.site-apglos-sw .wp-block-image img[alt*="App Store"] {
  height: 48px;
  max-width: none;
  width: auto;
}

.site-apglos-sw .wp-block-columns.alignwide:has(img[alt*="Google Play"]) > .wp-block-column,
.site-apglos-sw .wp-block-columns.alignwide:has(img[alt*="App Store"]) > .wp-block-column {
  background: transparent;
  border: none;
  padding: 0.5rem 0;
}

.site-apglos-sw .wp-block-columns.alignwide:has(img[alt*="Google Play"]) {
  align-items: center;
  gap: 1rem;
}

/* ==========================================================================
   SHOP / PRODUCTS — WooCommerce
   ========================================================================== */

.site-apglos-sw .wc-block-grid__product,
.site-apglos-sw .wp-block-woocommerce-product-template .wp-block-post {
  border: 1px solid var(--sw-border);
  border-radius: var(--sw-radius);
  overflow: hidden;
  padding: 1rem;
}

.site-apglos-sw .wc-block-grid__product:hover,
.site-apglos-sw .wp-block-woocommerce-product-template .wp-block-post:hover {
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.site-apglos-sw .wc-block-grid__product .wp-element-button,
.site-apglos-sw .wp-block-woocommerce-product-template .wp-element-button {
  background: var(--sw-amber) !important;
  color: var(--sw-white) !important;
  font-size: 0.85rem;
}

.site-apglos-sw .wc-block-grid__product-image img,
.site-apglos-sw .wp-block-woocommerce-product-image img {
  border-radius: var(--sw-radius-sm);
}

/* ==========================================================================
   CTA / CONTACT FORM — same font size as rest of page
   ========================================================================== */

.site-apglos-sw .sw-cta {
  background: var(--sw-surface);
  padding: 2rem 0 1rem;
}

.site-apglos-sw .sw-cta__inner {
  margin: 0 auto;
  max-width: var(--sw-max-width);
  padding: 0 var(--sw-page-gutter);
  text-align: center;
}

.site-apglos-sw .sw-cta__heading {
  color: var(--sw-navy);
  font-size: 1.5rem;
  margin: 0 0 0.5rem;
  text-transform: uppercase;
}

.site-apglos-sw .sw-cta__text {
  color: #000;
  font-size: 1rem;
  margin: 0 auto 1rem;
  max-width: 700px;
}

.site-apglos-sw .sw-cta__form {
  display: grid;
  gap: 0.5rem;
  margin: 0 auto;
  max-width: 700px;
}

.site-apglos-sw .sw-cta__form .form-row--3 { display: grid; gap: 0; grid-template-columns: repeat(3, 1fr); }
.site-apglos-sw .sw-cta__form .form-row--2 { display: grid; gap: 0; grid-template-columns: repeat(2, 1fr); }
.site-apglos-sw .sw-cta__form p { margin: 0; }

.site-apglos-sw .sw-cta__form *,
.site-apglos-sw .sw-cta__form *::before,
.site-apglos-sw .sw-cta__form *::after { box-sizing: border-box; }

/* No rounded inner corners */
.site-apglos-sw .sw-cta__form .form-row--3 p:first-child input { border-radius: var(--sw-radius-sm) 0 0 var(--sw-radius-sm); }
.site-apglos-sw .sw-cta__form .form-row--3 p:nth-child(2) input { border-radius: 0; }
.site-apglos-sw .sw-cta__form .form-row--3 p:last-child input { border-radius: 0 var(--sw-radius-sm) var(--sw-radius-sm) 0; }
.site-apglos-sw .sw-cta__form .form-row--2 p:first-child input { border-radius: var(--sw-radius-sm) 0 0 var(--sw-radius-sm); }
.site-apglos-sw .sw-cta__form .form-row--2 p:last-child select { border-radius: 0 var(--sw-radius-sm) var(--sw-radius-sm) 0; }

.site-apglos-sw .sw-cta__form .form-row--2 p { display: flex; }
.site-apglos-sw .sw-cta__form .form-row--2 p select { flex: 1; }

.site-apglos-sw .sw-cta__form input,
.site-apglos-sw .sw-cta__form select,
.site-apglos-sw .sw-cta__form textarea {
  background: var(--sw-white);
  border: 1px solid var(--sw-border);
  border-radius: var(--sw-radius-sm);
  box-sizing: border-box;
  color: #000;
  font-family: inherit;
  font-size: 1rem;
  min-height: 2.75rem;
  padding: 0.7rem 1rem;
  width: 100%;
}

.site-apglos-sw .sw-cta__form .form-row--3 p + p input,
.site-apglos-sw .sw-cta__form .form-row--2 p + p input,
.site-apglos-sw .sw-cta__form .form-row--2 p + p select { border-left: 0; }

.site-apglos-sw .sw-cta__form input:focus,
.site-apglos-sw .sw-cta__form select:focus,
.site-apglos-sw .sw-cta__form textarea:focus { border-color: var(--sw-amber); outline: none; z-index: 1; }

.site-apglos-sw .sw-cta__form .form-row--submit { margin-top: 0.25rem; text-align: right; }

.site-apglos-sw .sw-cta__form button {
  background: var(--sw-amber);
  border: 0;
  border-radius: 4px;
  color: var(--sw-white);
  cursor: pointer;
  font-family: inherit;
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  padding: 0.7rem 2rem;
  text-transform: uppercase;
}

.site-apglos-sw .sw-cta__form button:hover { background: var(--sw-amber-dark); }
.site-apglos-sw .sw-cta__form .form-feedback { min-height: 0.5rem; }
.site-apglos-sw .sw-cta__form .form-feedback--success { color: #2e7d32; }
.site-apglos-sw .sw-cta__form .form-feedback--error { color: #c62828; }

@media (max-width: 600px) {
  .site-apglos-sw .sw-cta__form .form-row--3,
  .site-apglos-sw .sw-cta__form .form-row--2 { grid-template-columns: 1fr; }

  .site-apglos-sw .sw-cta__form .form-row--3 p input,
  .site-apglos-sw .sw-cta__form .form-row--2 p input,
  .site-apglos-sw .sw-cta__form .form-row--2 p select {
    border-left: 1px solid var(--sw-border) !important;
    border-radius: var(--sw-radius-sm) !important;
  }
}

/* ==========================================================================
   FOOTER BAR — dark navy, 2 cols: logo left, contact right
   ========================================================================== */

.site-apglos-sw .apglos-site-footer--sw {
  margin-top: 0;
  width: 100%;
}

.site-apglos-sw .sw-footer-bar {
  background: var(--sw-navy);
  color: var(--sw-white);
  padding: 1.5rem 0;
}

.site-apglos-sw .sw-footer-bar__inner {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  max-width: var(--sw-max-width);
  padding: 0 var(--sw-page-gutter);
}

.site-apglos-sw .sw-footer-bar__logo-wrap {
  background: var(--sw-white);
  border-radius: var(--sw-radius-sm);
  display: inline-block;
  padding: 0.4rem 0.6rem;
}

.site-apglos-sw .sw-footer-bar__logo {
  display: block;
  height: auto;
  max-width: 110px;
}

/* Contact details */
.site-apglos-sw .sw-footer-bar__contact {
  list-style: none;
  margin: 0;
  padding: 0;
  text-align: right;
}

.site-apglos-sw .sw-footer-bar__contact li {
  color: var(--sw-white);
  font-size: 0.85rem;
  margin-bottom: 0.25rem;
}

.site-apglos-sw .sw-footer-bar__contact a {
  color: var(--sw-white);
  text-decoration: none;
}

.site-apglos-sw .sw-footer-bar__contact a:hover { text-decoration: underline; }

@media (max-width: 600px) {
  .site-apglos-sw .sw-footer-bar__inner {
    flex-direction: column;
    gap: 1rem;
    text-align: center;
  }
  .site-apglos-sw .sw-footer-bar__contact { text-align: center; }
}

/* ==========================================================================
   RESPONSIVE — column padding
   ========================================================================== */

@media (max-width: 781px) {
  .site-apglos-sw .wp-block-columns.alignwide > .wp-block-column {
    padding: 0.75rem;
  }
}

/* ── WooCommerce — SW colour overrides ── */
/* Structural shop / product / cart / checkout styles live in shared.css;
   only accent colours and layout fixes are set here. */

.site-apglos-sw {
  --wc-accent: var(--sw-amber);
  --wc-accent-dark: var(--sw-amber-dark);
  --wc-heading: var(--sw-navy);
  --wc-page-width: var(--sw-max-width);
}

.site-apglos-sw .cart_totals.calculated_shipping {
  margin-bottom: 2rem;
}

/* ── Single product page — exempt product columns from amber-light cards ── */
.site-apglos-sw .woocommerce .wp-block-columns > .wp-block-column,
.site-apglos-sw .woocommerce-page .wp-block-columns > .wp-block-column {
  background: transparent;
  border: none;
  text-align: left;
}

/* Related product cards: restore white card styling */
.site-apglos-sw .related.products ul.products li.product {
  background: #fff;
  border: 1px solid var(--sw-border);
  border-radius: var(--sw-radius);
  padding: 1rem;
  text-align: center;
}
