/**
 * Bushsports Adventure theme — layout system + outdoor expedition aesthetic.
 * Loads after Elementor. Fixes spacing rhythm and max-width across all pages.
 */
@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Source+Sans+3:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap");

/* ── Design tokens ───────────────────────────────────────── */
:root {
  --adv-font-display: "Bebas Neue", "Arial Narrow", sans-serif;
  --adv-font-body: "Source Sans 3", system-ui, sans-serif;
  --adv-slate: #1a2332;
  --adv-slate-mid: #2a3544;
  --adv-forest: #2d5a3d;
  --adv-forest-deep: #1e3d2a;
  --adv-sky: #3d7a8c;
  --adv-sunset: #e85d04;
  --adv-sunset-bright: #f48c06;
  --adv-sand: #f5f0e8;
  --adv-sand-dark: #e8e0d4;
  --adv-cream: #faf8f5;
  --adv-text: #1a2332;
  --adv-muted: #5c6570;
  --adv-border: rgba(26, 35, 50, 0.1);
  --adv-radius: 12px;
  --adv-radius-lg: 20px;
  --adv-shadow: 0 12px 40px rgba(26, 35, 50, 0.14);
  --adv-shadow-sm: 0 4px 16px rgba(26, 35, 50, 0.08);
  /* Shop card tints — forest + sky (two-tone adventure palette) */
  --adv-card-tint-forest: #eef4ef;
  --adv-card-tint-sky: #edf5f7;
  --adv-sky-deep: #2d6270;
  --adv-card-border: rgba(26, 35, 50, 0.08);
  /* Layout rhythm — fixes inconsistent Elementor spacing */
  --adv-content-max: 1180px;
  --adv-product-desc-max: 900px; /* ~⅓ wider than previous ~65ch text column */
  --adv-section-y: clamp(2.5rem, 5vw, 4.5rem);
  --adv-section-x: clamp(1.25rem, 4vw, 2rem);
  --adv-block-gap: clamp(1.25rem, 3vw, 2rem);
  --adv-header-h: 76px;
}

/* ── Base ────────────────────────────────────────────────── */
html {
  scroll-behavior: smooth;
}

body.bs-adventure-site {
  font-family: var(--adv-font-body) !important;
  font-size: 1.0625rem;
  color: var(--adv-text) !important;
  background: var(--adv-cream) !important;
  background-image:
    radial-gradient(ellipse 120% 80% at 50% -20%, rgba(61, 122, 140, 0.12), transparent 50%),
    linear-gradient(180deg, var(--adv-cream) 0%, var(--adv-sand) 100%) !important;
  line-height: 1.7 !important;
  -webkit-font-smoothing: antialiased;
}

/* ── Layout system (structure fixes) ─────────────────────── */
body.bs-adventure-site #content.site-main {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

/* Hide duplicate theme page title — Elementor blocks carry headings */
body.bs-adventure-site .page-header {
  display: none !important;
}

/* All main content sections: consistent width + vertical rhythm */
body.bs-adventure-site main#content .elementor[data-elementor-type="wp-page"] {
  width: 100%;
}

body.bs-adventure-site main .e-con.e-parent:not(.elementor-location-header *):not(.elementor-location-footer *) {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.bs-adventure-site main .e-con.e-parent > .e-con-inner {
  width: 100% !important;
  max-width: var(--adv-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: var(--adv-section-y) var(--adv-section-x) !important;
  gap: var(--adv-block-gap) !important;
  box-sizing: border-box;
}

/* Remove empty section gaps (whitespace in HTML breaks :empty) */
body.bs-adventure-site main .e-con-inner:not(:has(*)) {
  display: none !important;
  padding: 0 !important;
  min-height: 0 !important;
}

body.bs-adventure-site main .e-con.e-parent:has(> .e-con-inner:not(:has(*))) {
  display: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  min-height: 0 !important;
}

/* Two-column image + text rows — even split, aligned center */
body.bs-adventure-site main .e-con.e-parent > .e-con-inner {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
}

body.bs-adventure-site main .e-con.e-parent > .e-con-inner > .e-con.e-child {
  flex: 1 1 min(100%, 340px) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: var(--adv-block-gap) !important;
}

/* Widget spacing inside columns */
body.bs-adventure-site main .elementor-widget {
  margin-bottom: 0 !important;
}

body.bs-adventure-site main .elementor-widget:not(:last-child) {
  margin-bottom: var(--adv-block-gap) !important;
}

body.bs-adventure-site main p {
  margin-top: 0;
  margin-bottom: 1em;
  max-width: 65ch;
}

body.bs-adventure-site main ul,
body.bs-adventure-site main ol {
  margin: 0 0 1.25em;
  padding-left: 1.35em;
  max-width: 65ch;
}

/* Elementor pages only — not WooCommerce product descriptions */
body.bs-adventure-site.single-product main#content .elementor p,
body.bs-adventure-site.single-product main#content .elementor ul,
body.bs-adventure-site.single-product main#content .elementor ol {
  max-width: 65ch;
}

/* Alternating section backgrounds for adventure “trail” rhythm */
body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:nth-child(odd) {
  background: transparent;
}

body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:nth-child(even) {
  background: rgba(255, 255, 255, 0.55) !important;
  border-top: 1px solid var(--adv-border);
  border-bottom: 1px solid var(--adv-border);
}

/* Full-bleed hero band (first section) */
body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child {
  background: linear-gradient(
    135deg,
    var(--adv-slate) 0%,
    var(--adv-forest-deep) 45%,
    var(--adv-sky) 100%
  ) !important;
  border: none !important;
  position: relative;
  overflow: hidden;
}

body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
  opacity: 0.6;
}

body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child > .e-con-inner {
  position: relative;
  z-index: 1;
}

body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child,
body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child h2,
body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child p,
body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child a {
  color: #fff !important;
}

body.bs-adventure-site main .elementor[data-elementor-type="wp-page"] > .e-con.e-parent:first-child a:hover {
  color: var(--adv-sunset-bright) !important;
}

/* Homepage hero — Elementor flexbox (not .e-con.e-parent); static hosts shrink without width rules */
body.bs-adventure-site .elementor.elementor-36 > .elementor-element-822176c,
body.bs-adventure-site .elementor.elementor-36 .elementor-element-822176c.e-flexbox-base,
body.bs-adventure-site .elementor .e-822176c-aaa282a {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  box-sizing: border-box;
  padding: clamp(1.5rem, 4vw, 2.5rem) var(--adv-section-x) !important;
  margin: 0 !important;
  mix-blend-mode: normal !important;
  background: linear-gradient(
    135deg,
    var(--adv-slate) 0%,
    var(--adv-forest-deep) 45%,
    var(--adv-sky) 100%
  );
}

body.bs-adventure-site .elementor-36 .elementor-element.elementor-element-cdf1d23 {
  width: 100% !important;
  max-width: var(--adv-content-max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center;
}

body.bs-adventure-site .elementor-36 .elementor-element.elementor-element-cdf1d23 img {
  width: min(100%, 900px) !important;
  max-width: 100% !important;
  height: auto !important;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

/* Images — adventure card frames */
body.bs-adventure-site main img {
  border-radius: var(--adv-radius-lg);
  box-shadow: var(--adv-shadow);
  width: 100%;
  height: auto;
  display: block;
}

body.bs-adventure-site main .e-image-link-base {
  display: block;
  border-radius: var(--adv-radius-lg);
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

body.bs-adventure-site main .e-image-link-base:hover {
  transform: scale(1.02);
  box-shadow: var(--adv-shadow);
}

/* ── Typography ──────────────────────────────────────────── */
body.bs-adventure-site .elementor-heading-title,
body.bs-adventure-site main h1,
body.bs-adventure-site main h2:not(.woocommerce-loop-product__title),
body.bs-adventure-site main h3,
body.bs-adventure-site .widget-title {
  font-family: var(--adv-font-display) !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.1 !important;
  text-transform: uppercase;
  color: var(--adv-slate) !important;
}

body.bs-adventure-site main h2:not(.woocommerce-loop-product__title) {
  font-size: clamp(1.75rem, 4vw, 2.5rem) !important;
  margin-bottom: 0.75em !important;
}

body.bs-adventure-site main h3 {
  font-size: clamp(1.35rem, 3vw, 1.75rem) !important;
}

body.bs-adventure-site main h2:not(.woocommerce-loop-product__title) a,
body.bs-adventure-site main h3 a {
  color: inherit !important;
  text-decoration: none !important;
  border-bottom: 3px solid var(--adv-sunset);
  transition: color 0.2s ease, border-color 0.2s ease;
}

body.bs-adventure-site main h2:not(.woocommerce-loop-product__title) a:hover,
body.bs-adventure-site main h3 a:hover {
  color: var(--adv-forest) !important;
  border-color: var(--adv-forest);
}

/* ── Header ──────────────────────────────────────────────── */
body.bs-adventure-site .elementor-location-header {
  position: sticky !important;
  top: 0;
  z-index: 1000;
}

body.bs-adventure-site .elementor-location-header > .e-con.e-parent:first-child {
  background: rgba(26, 35, 50, 0.94) !important;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 3px solid var(--adv-sunset) !important;
  box-shadow: var(--adv-shadow-sm) !important;
  min-height: var(--adv-header-h);
}

body.bs-adventure-site .elementor-location-header .elementor-shape-top {
  display: none !important;
}

body.bs-adventure-site .elementor-location-header img {
  max-height: 48px;
  filter: brightness(1.1);
}

body.bs-adventure-site .elementor-nav-menu .elementor-item,
body.bs-adventure-site .elementor-nav-menu .elementor-sub-item {
  font-family: var(--adv-font-display) !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.12em !important;
  color: rgba(255, 255, 255, 0.92) !important;
  text-decoration: none !important;
  padding: 0.35em 0.6em !important;
  transition: color 0.2s ease;
}

body.bs-adventure-site .elementor-nav-menu .elementor-item:hover,
body.bs-adventure-site .elementor-nav-menu .elementor-sub-item:hover {
  color: var(--adv-sunset-bright) !important;
}

body.bs-adventure-site .elementor-nav-menu--dropdown {
  background: var(--adv-slate) !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: var(--adv-radius) !important;
  padding: 0.5rem 0 !important;
}

body.bs-adventure-site .elementor-menu-toggle {
  background: var(--adv-sunset) !important;
  color: #fff !important;
  border-radius: 8px !important;
}

/* ── Buttons & CTAs ──────────────────────────────────────── */
body.bs-adventure-site .elementor-button,
body.bs-adventure-site .elementor-button-link,
body.bs-adventure-site .wp-element-button,
body.bs-adventure-site .wpcf7-submit,
body.bs-adventure-site button[type="submit"] {
  font-family: var(--adv-font-display) !important;
  font-size: 1.05rem !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 0.9em 1.8em !important;
  background: linear-gradient(180deg, var(--adv-sunset-bright) 0%, var(--adv-sunset) 100%) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 0 var(--adv-forest-deep), var(--adv-shadow-sm) !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
  text-decoration: none !important;
}

body.bs-adventure-site .elementor-button:hover,
body.bs-adventure-site .wpcf7-submit:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 0 var(--adv-forest-deep), var(--adv-shadow) !important;
  color: #fff !important;
}

body.bs-adventure-site .elementor-widget-call-to-action .elementor-cta {
  border-radius: var(--adv-radius-lg) !important;
  overflow: hidden;
  border: 2px solid rgba(255, 255, 255, 0.15);
}

/* ── Footer (original layout, theme colours) ─────────────── */
html[data-bs-theme="adventure"] .elementor-location-footer,
body.bs-adventure-site .elementor-location-footer {
  background: var(--adv-slate) !important;
  color: rgba(255, 255, 255, 0.88) !important;
  margin-top: var(--adv-section-y);
  border-top: 4px solid var(--adv-sunset);
}

/* Beat Elementor post-3023 footer container (#0E1D06) */
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-2123ca97,
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-2123ca97:not(.elementor-motion-effects-element-type-background),
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-2123ca97 > .elementor-motion-effects-container > .elementor-motion-effects-layer,
body.bs-adventure-site .elementor-location-footer .elementor-element-2123ca97,
body.bs-adventure-site .elementor-location-footer .elementor-element-2123ca97:not(.elementor-motion-effects-element-type-background),
body.bs-adventure-site .elementor-location-footer .elementor-element-2123ca97 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
  background-color: var(--adv-slate) !important;
  background-image: none !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .e-con-inner,
body.bs-adventure-site .elementor-location-footer .e-con-inner {
  max-width: var(--adv-content-max) !important;
  margin: 0 auto !important;
  padding: var(--adv-section-y) var(--adv-section-x) !important;
}

/* Override legacy inline lime/yellow from WordPress export */
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-widget-text-editor span[style],
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-widget-text-editor [style*="color"],
body.bs-adventure-site .elementor-location-footer .elementor-widget-text-editor span[style],
body.bs-adventure-site .elementor-location-footer .elementor-widget-text-editor [style*="color"] {
  color: rgba(255, 255, 255, 0.88) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-widget-text-editor span[style] b,
body.bs-adventure-site .elementor-location-footer .elementor-widget-text-editor span[style] b {
  color: var(--adv-sunset-bright) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-widget-text-editor span[style] > strong:only-child,
body.bs-adventure-site .elementor-location-footer .elementor-widget-text-editor span[style] > strong:only-child {
  color: var(--adv-sunset-bright) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-widget-text-editor span[style] strong,
body.bs-adventure-site .elementor-location-footer .elementor-widget-text-editor span[style] strong {
  color: rgba(255, 255, 255, 0.88) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer p,
html[data-bs-theme="adventure"] .elementor-location-footer span,
html[data-bs-theme="adventure"] .elementor-location-footer strong,
html[data-bs-theme="adventure"] .elementor-location-footer h3,
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-heading-title,
body.bs-adventure-site .elementor-location-footer p,
body.bs-adventure-site .elementor-location-footer span,
body.bs-adventure-site .elementor-location-footer strong,
body.bs-adventure-site .elementor-location-footer h3,
body.bs-adventure-site .elementor-location-footer .elementor-heading-title {
  color: rgba(255, 255, 255, 0.88) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-widget-text-editor b,
body.bs-adventure-site .elementor-location-footer .elementor-widget-text-editor b {
  color: var(--adv-sunset-bright) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer a,
body.bs-adventure-site .elementor-location-footer a {
  color: rgba(255, 255, 255, 0.9) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer a:hover,
body.bs-adventure-site .elementor-location-footer a:hover {
  color: var(--adv-sunset-bright) !important;
}

/* Footer CTA band — Elementor post-3023 defaults */
html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__content,
body.bs-adventure-site .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__content {
  background-color: var(--adv-sand) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__title,
body.bs-adventure-site .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__title {
  color: var(--adv-muted) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__description,
body.bs-adventure-site .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__description {
  color: var(--adv-slate) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__button,
body.bs-adventure-site .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__button {
  color: #fff !important;
  background-color: var(--adv-sunset) !important;
  border-color: var(--adv-sunset) !important;
  border-radius: 999px !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__button:hover,
body.bs-adventure-site .elementor-location-footer .elementor-element-5b8550ce .elementor-cta__button:hover {
  color: #fff !important;
  background-color: var(--adv-sunset-bright) !important;
  border-color: var(--adv-sunset-bright) !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-social-icon,
body.bs-adventure-site .elementor-location-footer .elementor-social-icon {
  color: #fff !important;
  fill: #fff !important;
}

html[data-bs-theme="adventure"] .elementor-location-footer .elementor-social-icon:hover,
body.bs-adventure-site .elementor-location-footer .elementor-social-icon:hover {
  color: var(--adv-sunset-bright) !important;
  fill: var(--adv-sunset-bright) !important;
}

/* ── Forms ───────────────────────────────────────────────── */
body.bs-adventure-site .bushsports-enquiry-form,
body.bs-adventure-site .wpcf7-form {
  max-width: 640px;
  margin: 0 auto;
  background: #fff;
  border-radius: var(--adv-radius-lg);
  padding: clamp(1.5rem, 4vw, 2.5rem);
  box-shadow: var(--adv-shadow);
  border: 1px solid var(--adv-border);
  border-top: 4px solid var(--adv-sunset);
}

body.bs-adventure-site .bushsports-enquiry-form input,
body.bs-adventure-site .bushsports-enquiry-form textarea,
body.bs-adventure-site .wpcf7-form input,
body.bs-adventure-site .wpcf7-form textarea {
  font-family: var(--adv-font-body) !important;
  width: 100%;
  box-sizing: border-box;
  border: 2px solid var(--adv-sand-dark) !important;
  border-radius: 8px !important;
  padding: 0.8rem 1rem !important;
  background: var(--adv-cream) !important;
}

body.bs-adventure-site .bushsports-enquiry-form input:focus,
body.bs-adventure-site .bushsports-enquiry-form textarea:focus {
  border-color: var(--adv-sky) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(61, 122, 140, 0.2) !important;
}

/* ── WooCommerce shop / product archives ───────────────────── */
html[data-bs-theme="adventure"] body.woocommerce #primary,
html[data-bs-theme="adventure"] body.woocommerce-page #primary,
body.bs-adventure-site.woocommerce #primary,
body.bs-adventure-site.woocommerce-page #primary,
body.bs-adventure-site.woocommerce .content-area,
body.bs-adventure-site.woocommerce-page .content-area {
  max-width: var(--adv-content-max);
  margin: 0 auto;
  padding: var(--adv-section-y) var(--adv-section-x);
  box-sizing: border-box;
  width: 100%;
  float: none !important;
}

html[data-bs-theme="adventure"] body.woocommerce .site-main#main,
html[data-bs-theme="adventure"] body.woocommerce-page .site-main#main,
body.bs-adventure-site.woocommerce .site-main,
body.bs-adventure-site.woocommerce-page .site-main {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
}

body.bs-adventure-site .woocommerce-products-header {
  text-align: center;
  margin-bottom: 0.5rem;
}

body.bs-adventure-site .woocommerce-products-header__title.page-title:empty {
  display: none !important;
}

body.bs-adventure-site .woocommerce-products-header::after {
  content: "Signature adventures for teams, schools & groups across Australia.";
  display: block;
  max-width: 42rem;
  margin: 0.35rem auto 1.75rem;
  font-family: var(--adv-font-body);
  font-size: 1.05rem;
  line-height: 1.6;
  color: var(--adv-muted);
  text-align: center;
}

body.bs-adventure-site .woocommerce-breadcrumb {
  margin-bottom: 1rem;
  font-size: 0.9rem;
  color: var(--adv-muted);
}

html[data-bs-theme="adventure"] body.woocommerce .woocommerce-ordering,
html[data-bs-theme="adventure"] body.woocommerce-page .woocommerce-ordering,
body.bs-adventure-site .woocommerce-ordering {
  float: none !important;
  order: 3 !important;
  align-self: flex-start !important;
  margin-bottom: 1.25rem;
}

html[data-bs-theme="adventure"] body.woocommerce .woocommerce-result-count,
html[data-bs-theme="adventure"] body.woocommerce-page .woocommerce-result-count,
body.bs-adventure-site .woocommerce-result-count {
  float: none !important;
  order: 2 !important;
  margin-bottom: 1.25rem;
}

html[data-bs-theme="adventure"] body.woocommerce ul.products,
html[data-bs-theme="adventure"] body.woocommerce-page ul.products,
body.bs-adventure-site.woocommerce ul.products {
  order: 4 !important;
}

html[data-bs-theme="adventure"] body.woocommerce .woocommerce-pagination,
html[data-bs-theme="adventure"] body.woocommerce-page .woocommerce-pagination,
body.bs-adventure-site.woocommerce .woocommerce-pagination,
body.bs-adventure-site.woocommerce-page .woocommerce-pagination {
  order: 5 !important;
  float: none !important;
  width: 100% !important;
  clear: both !important;
  align-self: center !important;
  margin-top: 2rem !important;
}

body.bs-adventure-site .woocommerce-ordering select {
  font-family: var(--adv-font-body);
  padding: 0.5rem 0.75rem;
  border-radius: 8px;
  border: 1px solid var(--adv-border);
}

/* Signature-dish style card grid */
html[data-bs-theme="adventure"] body.woocommerce ul.products,
html[data-bs-theme="adventure"] body.woocommerce-page ul.products,
html[data-bs-theme="adventure"] body.woocommerce ul.products.columns-1,
html[data-bs-theme="adventure"] body.woocommerce ul.products.columns-2,
html[data-bs-theme="adventure"] body.woocommerce ul.products.columns-3,
html[data-bs-theme="adventure"] body.woocommerce ul.products.columns-4,
html[data-bs-theme="adventure"] body.woocommerce ul.products.columns-5,
html[data-bs-theme="adventure"] body.woocommerce ul.products.columns-6,
body.bs-adventure-site.woocommerce ul.products,
body.bs-adventure-site.woocommerce-page ul.products,
body.bs-adventure-site.woocommerce ul.products,
body.bs-adventure-site.woocommerce ul.products.columns-1,
body.bs-adventure-site.woocommerce ul.products.columns-2,
body.bs-adventure-site.woocommerce ul.products.columns-3,
body.bs-adventure-site.woocommerce ul.products.columns-4,
body.bs-adventure-site.woocommerce ul.products.columns-5,
body.bs-adventure-site.woocommerce ul.products.columns-6 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  grid-auto-flow: row !important;
  gap: 1.25rem !important;
  padding: 0 !important;
  margin: 0 auto 2.5rem !important;
  list-style: none !important;
  width: 100% !important;
  max-width: var(--adv-content-max) !important;
  clear: both !important;
  justify-items: stretch !important;
}

html[data-bs-theme="adventure"] .woocommerce ul.products::before,
html[data-bs-theme="adventure"] .woocommerce ul.products::after,
body.bs-adventure-site.woocommerce ul.products::before,
body.bs-adventure-site.woocommerce ul.products::after {
  display: none !important;
  content: none !important;
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product,
html[data-bs-theme="adventure"] .woocommerce-page ul.products li.product,
html[data-bs-theme="adventure"] .woocommerce ul.products.columns-4 li.product,
body.bs-adventure-site.woocommerce ul.products li.product,
body.bs-adventure-site.woocommerce-page ul.products li.product,
body.bs-adventure-site.woocommerce ul.products.columns-1 li.product,
body.bs-adventure-site.woocommerce ul.products.columns-2 li.product,
body.bs-adventure-site.woocommerce ul.products.columns-3 li.product,
body.bs-adventure-site.woocommerce ul.products.columns-4 li.product,
body.bs-adventure-site.woocommerce ul.products.columns-5 li.product,
body.bs-adventure-site.woocommerce ul.products.columns-6 li.product {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0.85rem 0.85rem 1rem !important;
  clear: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  border-radius: 22px !important;
  overflow: visible !important;
  background: #fff !important;
  box-shadow: 0 8px 28px rgba(26, 35, 50, 0.07) !important;
  border: 2px solid var(--adv-card-border) !important;
  box-sizing: border-box !important;
}

/* Two-tone cards: forest green + sky (matches header / expedition palette) */
body.bs-adventure-site.woocommerce ul.products li.product:nth-child(odd),
html[data-bs-theme="adventure"] .woocommerce ul.products li.product:nth-child(odd) {
  --adv-card-tint: var(--adv-card-tint-forest);
  --adv-card-accent: var(--adv-forest);
  --adv-card-accent-deep: var(--adv-forest-deep);
}

body.bs-adventure-site.woocommerce ul.products li.product:nth-child(even),
html[data-bs-theme="adventure"] .woocommerce ul.products li.product:nth-child(even) {
  --adv-card-tint: var(--adv-card-tint-sky);
  --adv-card-accent: var(--adv-sky);
  --adv-card-accent-deep: var(--adv-sky-deep);
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product .woocommerce-loop-product__link,
body.bs-adventure-site.woocommerce ul.products li.product .woocommerce-loop-product__link {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  grid-template-rows: auto auto auto auto !important;
  gap: 0.25rem 0 !important;
  flex: 1 1 auto !important;
  text-decoration: none !important;
  color: inherit !important;
  padding: 0 0 0.85rem !important;
  margin: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: var(--adv-card-tint, var(--adv-card-tint-forest)) !important;
}

/* Decorative cart-style badge on image (visual only) */
html[data-bs-theme="adventure"] .woocommerce ul.products li.product .woocommerce-loop-product__link::before,
body.bs-adventure-site.woocommerce ul.products li.product .woocommerce-loop-product__link::before {
  content: "";
  position: absolute;
  top: 0.65rem;
  right: 0.65rem;
  z-index: 2;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%231a2332' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 6h15l-1.5 9h-12z'/%3E%3Ccircle cx='9' cy='20' r='1'/%3E%3Ccircle cx='18' cy='20' r='1'/%3E%3Cpath d='M6 6L4 2H2'/%3E%3C/svg%3E") center / 1.1rem no-repeat;
  box-shadow: 0 4px 14px rgba(26, 35, 50, 0.12);
  pointer-events: none;
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product img,
body.bs-adventure-site.woocommerce ul.products li.product img {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 0 0.15rem !important;
  border-radius: 14px !important;
  box-shadow: 0 6px 18px rgba(26, 35, 50, 0.1) !important;
}

html[data-bs-theme="adventure"] .woocommerce-loop-product__title,
body.bs-adventure-site .woocommerce-loop-product__title {
  grid-column: 1 !important;
  grid-row: 2 !important;
  font-family: var(--adv-font-body) !important;
  font-size: 1.12rem !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--adv-text) !important;
  margin: 0 !important;
  padding: 0.65rem 1rem 0 !important;
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
  max-width: none !important;
  align-self: start !important;
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product .star-rating,
body.bs-adventure-site.woocommerce ul.products li.product .star-rating {
  grid-column: 1 !important;
  grid-row: 3 !important;
  align-self: start !important;
  justify-self: start !important;
  margin: 0 0 0.35rem 1rem !important;
  flex-shrink: 0 !important;
}

/* Meta line under title / stars */
html[data-bs-theme="adventure"] .woocommerce ul.products li.product .woocommerce-loop-product__link::after,
body.bs-adventure-site.woocommerce ul.products li.product .woocommerce-loop-product__link::after {
  content: "Team building · Outdoor adventure";
  grid-column: 1 !important;
  grid-row: 3 !important;
  font-size: 0.88rem !important;
  line-height: 1.55 !important;
  color: var(--adv-muted) !important;
  margin: 0 !important;
  padding: 0 1rem !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product:has(.star-rating) .woocommerce-loop-product__link::after,
body.bs-adventure-site.woocommerce ul.products li.product:has(.star-rating) .woocommerce-loop-product__link::after {
  content: "Rated by groups — book your next adventure.";
  grid-row: 4 !important;
}

/* Star ratings — WooCommerce.woff2 is not in the static mirror; use Unicode stars */
body.bs-adventure-site .star-rating {
  float: none !important;
  display: inline-block !important;
  position: relative !important;
  height: 1.35em !important;
  width: 6.25em !important;
  line-height: 1.35 !important;
  font-family: var(--adv-font-body) !important;
  font-size: 1.1rem !important;
  overflow: hidden !important;
  vertical-align: middle;
  margin: 0 0.35rem 0 0 !important;
}

body.bs-adventure-site .star-rating::before {
  content: "★★★★★" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  float: none !important;
  letter-spacing: 0.1em;
  color: var(--adv-sand-dark) !important;
  font-family: inherit !important;
}

body.bs-adventure-site .star-rating span {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  float: none !important;
  overflow: hidden !important;
  padding-top: 0 !important;
  height: 100% !important;
  max-width: 100%;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

body.bs-adventure-site .star-rating span::before {
  content: "★★★★★" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  letter-spacing: 0.1em;
  color: var(--adv-sunset-bright) !important;
  font-family: inherit !important;
  font-size: 1.1rem !important;
  line-height: 1.35 !important;
}

body.bs-adventure-site .woocommerce-product-rating {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.35rem 0.75rem;
  margin-bottom: 1rem !important;
}

body.bs-adventure-site .woocommerce-product-rating .star-rating {
  margin: 0 !important;
}

body.bs-adventure-site .woocommerce-review-link {
  font-size: 0.95rem;
  color: var(--adv-muted);
  text-decoration: none;
}

body.bs-adventure-site .woocommerce-review-link:hover {
  color: var(--adv-sunset);
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product .button,
html[data-bs-theme="adventure"] .woocommerce ul.products li.product a.button,
html[data-bs-theme="adventure"] .woocommerce-page ul.products li.product .button,
html[data-bs-theme="adventure"] .woocommerce-page ul.products li.product a.button,
body.bs-adventure-site.woocommerce ul.products li.product .button,
body.bs-adventure-site.woocommerce ul.products li.product a.button,
body.bs-adventure-site.woocommerce-page ul.products li.product .button,
body.bs-adventure-site.woocommerce-page ul.products li.product a.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45rem !important;
  align-self: center !important;
  margin: 0.85rem auto 0 !important;
  width: auto !important;
  min-width: 11rem !important;
  max-width: calc(100% - 1.5rem) !important;
  float: none !important;
  text-align: center !important;
  font-family: var(--adv-font-body) !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  font-style: italic !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  line-height: 1.35 !important;
  padding: 0.75em 1.65em !important;
  border-radius: 999px !important;
  background: var(--adv-card-accent, var(--adv-forest)) !important;
  color: #fff !important;
  border: none !important;
  box-shadow: 0 4px 0 var(--adv-card-accent-deep, var(--adv-forest-deep)) !important;
  text-decoration: none !important;
  transition: transform 0.18s ease, box-shadow 0.18s ease !important;
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product .button::after,
html[data-bs-theme="adventure"] .woocommerce ul.products li.product a.button::after,
body.bs-adventure-site.woocommerce ul.products li.product .button::after,
body.bs-adventure-site.woocommerce ul.products li.product a.button::after {
  content: "→";
  font-style: normal;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1;
}

html[data-bs-theme="adventure"] .woocommerce ul.products li.product .button:hover,
html[data-bs-theme="adventure"] .woocommerce ul.products li.product a.button:hover,
body.bs-adventure-site.woocommerce ul.products li.product .button:hover,
body.bs-adventure-site.woocommerce ul.products li.product a.button:hover {
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 0 var(--adv-card-accent-deep, var(--adv-forest-deep)) !important;
}

/* Beat WooCommerce float widths on archive */
html[data-bs-theme="adventure"] body.woocommerce .woocommerce ul.products.columns-4 li.product,
html[data-bs-theme="adventure"] body.woocommerce-page .woocommerce ul.products.columns-4 li.product,
html.bs-adventure-site body.woocommerce .woocommerce ul.products li.product {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
}

body.bs-adventure-site .woocommerce-pagination {
  margin-top: 2rem;
  text-align: center;
}

body.bs-adventure-site .woocommerce-pagination .page-numbers {
  display: inline-flex;
  gap: 0.35rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

body.bs-adventure-site .woocommerce-pagination .page-numbers li {
  margin: 0;
}

body.bs-adventure-site .woocommerce-pagination .page-numbers a,
body.bs-adventure-site .woocommerce-pagination .page-numbers span {
  display: inline-block;
  padding: 0.5rem 0.85rem;
  border-radius: 8px;
  border: 1px solid var(--adv-border);
  text-decoration: none;
}

body.bs-adventure-site .woocommerce-pagination .page-numbers .current {
  background: var(--adv-forest);
  color: #fff;
  border-color: var(--adv-forest);
}

@media (max-width: 1024px) {
  html[data-bs-theme="adventure"] body.woocommerce ul.products,
  html[data-bs-theme="adventure"] body.woocommerce-page ul.products,
  body.bs-adventure-site.woocommerce ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1.5rem !important;
  }
}

@media (max-width: 640px) {
  html[data-bs-theme="adventure"] body.woocommerce ul.products,
  html[data-bs-theme="adventure"] body.woocommerce-page ul.products,
  body.bs-adventure-site.woocommerce ul.products {
    grid-template-columns: 1fr !important;
    gap: 1.25rem !important;
  }

  body.bs-adventure-site.woocommerce ul.products li.product {
    padding: 0.75rem !important;
  }
}

/* ── Single product — centered, wider description ────────── */
body.bs-adventure-site.single-product #primary,
body.bs-adventure-site.single-product .site-main {
  max-width: var(--adv-content-max);
  margin-left: auto !important;
  margin-right: auto !important;
  float: none !important;
  width: 100% !important;
}

body.bs-adventure-site.single-product div.product {
  max-width: 100%;
  margin: 0 auto;
  overflow: hidden;
}

body.bs-adventure-site.single-product div.product::after {
  content: "";
  display: table;
  clear: both;
}

body.bs-adventure-site.single-product div.product .woocommerce-product-gallery,
body.bs-adventure-site.single-product div.product .summary.entry-summary {
  float: none !important;
  width: 100% !important;
  max-width: var(--adv-product-desc-max);
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

body.bs-adventure-site.single-product div.product .summary.entry-summary {
  margin-bottom: 2rem !important;
  text-align: center;
}

body.bs-adventure-site.single-product .product_title {
  font-family: var(--adv-font-display) !important;
  font-size: clamp(1.5rem, 3.5vw, 2.25rem) !important;
  text-transform: uppercase;
  line-height: 1.15 !important;
  max-width: var(--adv-product-desc-max);
  margin-left: auto !important;
  margin-right: auto !important;
}

body.bs-adventure-site.single-product .woocommerce-product-details__short-description {
  text-align: left;
  max-width: var(--adv-product-desc-max);
  margin: 0 auto 1.5rem;
}

body.bs-adventure-site.single-product div.product .woocommerce-tabs.wc-tabs-wrapper {
  clear: both !important;
  float: none !important;
  width: 100% !important;
  max-width: var(--adv-product-desc-max) !important;
  margin: 2rem auto 3rem !important;
  padding: 0 var(--adv-section-x);
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs,
body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs.wc-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  gap: 0.5rem;
  margin: 0 auto 1.5rem !important;
  padding: 0 !important;
  list-style: none !important;
  border: none !important;
  overflow: visible !important;
  text-align: center !important;
}

/* WooCommerce default: full-width line + left padding on tab bar */
body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs::before,
body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs::after {
  display: none !important;
  content: none !important;
  border: none !important;
}

body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  float: none !important;
}

body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs li::before,
body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs li::after {
  display: none !important;
  content: none !important;
  border: none !important;
  box-shadow: none !important;
}

body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs li a {
  display: inline-block;
  padding: 0.65rem 1.25rem !important;
  border-radius: 8px !important;
  border: 1px solid var(--adv-border) !important;
  background: #fff !important;
  font-family: var(--adv-font-body) !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--adv-text) !important;
  text-decoration: none !important;
}

body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs li.active a,
body.bs-adventure-site.single-product .woocommerce-tabs ul.tabs li a:hover {
  background: var(--adv-forest) !important;
  color: #fff !important;
  border-color: var(--adv-forest) !important;
}

body.bs-adventure-site.single-product .woocommerce-Tabs-panel,
body.bs-adventure-site.single-product #tab-description,
body.bs-adventure-site.single-product #tab-reviews {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  padding: 2rem !important;
  background: #fff;
  border-radius: var(--adv-radius-lg);
  border: 1px solid var(--adv-border);
  box-shadow: var(--adv-shadow-sm);
  box-sizing: border-box;
}

body.bs-adventure-site.single-product #tab-description > h2:first-child,
body.bs-adventure-site.single-product .woocommerce-Tabs-panel--description > h2:first-child {
  text-align: center;
  margin-top: 0 !important;
  border-bottom: 2px solid var(--adv-sunset);
  padding-bottom: 0.5rem;
}

body.bs-adventure-site.single-product #tab-description p,
body.bs-adventure-site.single-product #tab-description ul,
body.bs-adventure-site.single-product #tab-description ol,
body.bs-adventure-site.single-product #tab-description h2,
body.bs-adventure-site.single-product #tab-description h3,
body.bs-adventure-site.single-product #tab-description h4,
body.bs-adventure-site.single-product #tab-reviews p,
body.bs-adventure-site.single-product #tab-reviews .commentlist {
  max-width: none !important;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

body.bs-adventure-site.single-product #tab-description p,
body.bs-adventure-site.single-product #tab-description li {
  text-align: left;
}

body.bs-adventure-site.single-product #tab-description img,
body.bs-adventure-site.single-product #tab-description .aligncenter {
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100%;
  height: auto;
}

body.bs-adventure-site.single-product #tab-description img.alignright,
body.bs-adventure-site.single-product #tab-description .alignright {
  float: right;
  margin: 0 0 1rem 1.5rem;
  max-width: min(320px, 45%);
}

body.bs-adventure-site.single-product #tab-description::after {
  content: "";
  display: table;
  clear: both;
}

@media (min-width: 900px) {
  body.bs-adventure-site.single-product div.product .woocommerce-product-gallery {
    max-width: 420px;
    margin-bottom: 1.5rem !important;
  }
}

@media (max-width: 640px) {
  body.bs-adventure-site.single-product div.product .woocommerce-tabs.wc-tabs-wrapper {
    padding: 0 0.75rem;
  }

  body.bs-adventure-site.single-product #tab-description img.alignright,
  body.bs-adventure-site.single-product #tab-description .alignright {
    float: none;
    margin: 1rem auto;
    max-width: 100%;
  }
}

/* ── Enquiry page (/enquiry/) ─────────────────────────────── */
body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .page-header {
  display: none !important;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .page-content {
  max-width: var(--adv-content-max);
  margin: 0 auto;
  padding: var(--adv-section-y) var(--adv-section-x);
  box-sizing: border-box;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .page-content > p {
  max-width: none;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-columns.has-2-columns,
body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-columns.is-layout-flex {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 2rem !important;
  width: 100% !important;
  max-width: var(--adv-content-max) !important;
  margin: 0 auto 2rem !important;
  align-items: start !important;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-column {
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .bushsports-enquiry-form {
  max-width: 100%;
  margin: 0 auto;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-column figure {
  margin: 1rem 0 0;
}

body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-column iframe {
  display: block;
  width: 100% !important;
  max-width: 100%;
  min-height: 420px;
  height: auto;
  border: 0;
  border-radius: var(--adv-radius-lg);
  box-shadow: var(--adv-shadow-sm);
}

@media (max-width: 900px) {
  body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-columns.has-2-columns,
  body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-columns.is-layout-flex {
    grid-template-columns: 1fr !important;
  }

  body.bs-adventure-site main#content:has(.bushsports-enquiry-form) .wp-block-column iframe {
    min-height: 320px;
  }
}

/* ── WordPress pages (non-product: main#content.type-page) ─── */
body.bs-adventure-site main#content.type-page {
  max-width: var(--adv-content-max);
  margin-left: auto;
  margin-right: auto;
  padding: 0 var(--adv-section-x) var(--adv-section-y);
  box-sizing: border-box;
  width: 100%;
}

body.bs-adventure-site main#content.type-page .page-header {
  padding-top: var(--adv-section-y);
  text-align: center;
  box-sizing: border-box;
}

body.bs-adventure-site main#content.type-page .page-header .entry-title {
  margin: 0;
}

body.bs-adventure-site main#content.type-page .page-content {
  width: 100%;
  box-sizing: border-box;
}

body.bs-adventure-site main#content.type-page .page-content > p,
body.bs-adventure-site main#content.type-page .page-content > h2,
body.bs-adventure-site main#content.type-page .page-content > h3,
body.bs-adventure-site main#content.type-page .page-content > ul,
body.bs-adventure-site main#content.type-page .page-content > ol {
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
}

body.bs-adventure-site main#content.type-page .page-content .alignright,
body.bs-adventure-site main#content.type-page .page-content img.alignright,
body.bs-adventure-site main#content.type-page .page-content .alignleft,
body.bs-adventure-site main#content.type-page .page-content img.alignleft,
body.bs-adventure-site main#content.type-page .page-content .aligncenter,
body.bs-adventure-site main#content.type-page .page-content img.aligncenter,
body.bs-adventure-site main#content.type-page .page-content .wp-caption {
  float: none !important;
  margin: 1.5rem auto !important;
  display: block;
  max-width: 100%;
  width: auto;
  height: auto;
  text-align: center;
}

body.bs-adventure-site main#content.type-page .page-content .wp-caption img {
  width: 100%;
  max-width: min(600px, 100%);
  height: auto;
  margin: 0 auto;
}

body.bs-adventure-site main#content.type-page .page-content .wp-caption-text {
  font-size: 0.9rem;
  color: var(--adv-muted, #5a6b5e);
  margin-top: 0.5rem;
}

body.bs-adventure-site main#content.type-page .page-content > .elementor {
  width: 100%;
  max-width: 100%;
}

body.bs-adventure-site main#content.type-page .comments-area,
body.bs-adventure-site main#content.type-page #respond,
body.bs-adventure-site main#content.type-page .comment-respond {
  display: none !important;
}

/* ── Content links ───────────────────────────────────────── */
body.bs-adventure-site main a:not(.elementor-button):not(.elementor-item):not(.e-image-link-base) {
  color: var(--adv-sky);
  font-weight: 600;
  text-underline-offset: 3px;
}

body.bs-adventure-site main a:not(.elementor-button):not(.elementor-item):hover {
  color: var(--adv-sunset);
}

/* ── Page enter ──────────────────────────────────────────── */
@keyframes adv-rise {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

body.bs-adventure-site main#content {
  animation: adv-rise 0.5s ease-out;
}

/* ── Mobile structure ──────────────────────────────────────── */
@media (max-width: 767px) {
  :root {
    --adv-section-y: 2rem;
    --adv-section-x: 1rem;
  }

  body.bs-adventure-site main .e-con.e-parent > .e-con-inner > .e-con.e-child {
    flex: 1 1 100% !important;
  }

  body.bs-adventure-site .elementor-nav-menu .elementor-item {
    font-size: 0.85rem !important;
  }
}

@media (min-width: 900px) {
  body.bs-adventure-site main .e-con.e-parent > .e-con-inner > .e-con.e-child:first-child:nth-last-child(2),
  body.bs-adventure-site main .e-con.e-parent > .e-con-inner > .e-con.e-child:last-child:nth-child(2) {
    flex: 1 1 42% !important;
  }
}
