@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@400;600;700&family=Barlow:wght@400;500;600&family=Lora:wght@400;500&display=swap');

:root {
  --csg-black: #0F1210;
  --csg-forest: #1A2B1E;
  --csg-gold: #C8902A;
  --csg-gold-lt: #E5AC48;
  --csg-cream: #F5F0E8;
  --csg-tan: #DDD5C2;
  --csg-muted: #6A6F65;
}

/* FONTS */
h1,h2,h3,h4,.wp-block-heading { font-family: 'Oswald', sans-serif !important; letter-spacing: 0.02em; }
body, p, li, td { font-family: 'Barlow', sans-serif !important; }

/* BUTTONS */
.wp-block-button__link { font-family: 'Oswald', sans-serif !important; font-weight: 600 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; border-radius: 2px !important; }

/* SERVICE CARDS */
.csg-card { border: 1px solid var(--csg-tan) !important; border-radius: 4px !important; padding: 28px 22px !important; background: var(--csg-cream) !important; transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s !important; }
.csg-card:hover { transform: translateY(-5px) !important; box-shadow: 0 12px 36px rgba(0,0,0,.1) !important; border-color: var(--csg-gold) !important; }

/* EYEBROW TEXT */
.csg-eyebrow { font-size: 0.72rem !important; font-weight: 600 !important; letter-spacing: 0.22em !important; text-transform: uppercase !important; color: var(--csg-gold) !important; }

/* SALE PAGE */
.sale-was { text-decoration: line-through; color: var(--csg-muted); }
.sale-now { font-family: 'Oswald', sans-serif; font-size: 1.6rem; font-weight: 700; color: var(--csg-gold); }

/* COMING SOON BADGE */
.badge-soon { display: inline-block; background: var(--csg-forest); color: var(--csg-cream); font-size: 0.65rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; padding: 2px 8px; border-radius: 2px; margin-left: 8px; vertical-align: middle; }

/* COVER BLOCKS - gold bottom border */
.wp-block-cover { border-bottom: 3px solid var(--csg-gold); }

/* INFO STRIP */
.info-strip { background: var(--csg-black) !important; border-bottom: 2px solid var(--csg-gold) !important; }

/* NAVIGATION */
.wp-block-navigation a,
.wp-block-navigation a:link { color: #FFFFFF !important; }
header .wp-block-navigation { background-color: #0F1210 !important; padding: 8px 20px !important; }

/* CONTACT PAGE - page id 15 */
.page-id-15 { background-color: #0F1210 !important; }
.page-id-15 p,
.page-id-15 li,
.page-id-15 label { color: rgba(255,255,255,0.75) !important; }
.page-id-15 h1,
.page-id-15 h2,
.page-id-15 h3 { color: #FFFFFF !important; }

/* CONTACT FORM FIELDS */
.page-id-15 input[type="text"],
.page-id-15 input[type="email"],
.page-id-15 textarea { background: rgba(255,255,255,0.08) !important; border: 1px solid rgba(200,144,42,0.4) !important; color: #FFFFFF !important; padding: 12px !important; border-radius: 2px !important; width: 100% !important; font-family: 'Barlow', sans-serif !important; }

/* CONTACT FORM SUBMIT BUTTON - GOLD */
.page-id-15 input[type="submit"],
.page-id-15 button[type="submit"],
.page-id-15 .contact-form__submit,
.page-id-15 input.pushbutton-wide,
.contact-form__submit,
input.pushbutton-wide { background-color: #C8902A !important; background: #C8902A !important; color: #0F1210 !important; font-family: 'Oswald', sans-serif !important; font-weight: 600 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; border: none !important; padding: 14px 32px !important; border-radius: 2px !important; cursor: pointer !important; width: auto !important; }
/* Dropdown menu fix */
.wp-block-navigation .wp-block-navigation__submenu-container {
  background-color: #0F1210 !important;
  border-top: 2px solid #C8902A !important;
  padding: 8px 0 !important;
  min-width: 200px !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container a {
  color: #FFFFFF !important;
  padding: 10px 20px !important;
  display: block !important;
  font-size: 0.75rem !important;
  letter-spacing: 0.08em !important;
}

.wp-block-navigation .wp-block-navigation__submenu-container a:hover {
  color: #C8902A !important;
  background-color: rgba(255,255,255,0.05) !important;
}
/* Hide default page title - we use our own hero titles */
.wp-block-post-title,
.entry-title,
h1.entry-title,
.page-title {
  display: none !important;
}
/* Remove white space above hero on all pages */
.wp-block-cover {
  margin-top: 0 !important;
}

.wp-block-post-content > .wp-block-cover:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* AGGRESSIVE gap fix */
.wp-block-post-content {
  padding: 0 !important;
  margin: 0 !important;
}

.wp-block-post-content > * {
  margin-top: 0 !important;
}

.wp-block-post-content > .wp-block-cover:first-child {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.entry-content {
  padding: 0 !important;
  margin: 0 !important;
}

/* Remove Twenty Twenty-Four theme header spacing */
.wp-block-template-part + .wp-block-post-content {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

main.wp-block-group {
  padding-top: 0 !important;
  gap: 0 !important;
}

.has-global-padding {
  padding-top: 0 !important;
}
/* ── MOBILE FIXES ── */
@media (max-width: 768px) {

  /* Fix service cards - stack vertically */
  .wp-block-columns {
    flex-direction: column !important;
  }
  .wp-block-column {
    width: 100% !important;
    flex-basis: 100% !important;
    min-width: 100% !important;
  }

  /* Fix info strip - stack vertically */
  .info-strip .wp-block-columns {
    flex-direction: column !important;
  }
  .info-strip .wp-block-column {
    width: 100% !important;
    flex-basis: 100% !important;
    text-align: center !important;
    padding: 10px 16px !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  }

  /* Fix buttons - don't break text */
  .wp-block-button__link {
    white-space: normal !important;
    word-break: normal !important;
    text-align: center !important;
    width: 100% !important;
    padding: 14px 20px !important;
  }
  .wp-block-buttons {
    width: 100% !important;
  }
  .wp-block-buttons .wp-block-button {
    width: 100% !important;
  }

  /* Fix hero text size */
  .wp-block-cover h1 {
    font-size: 2.2rem !important;
    line-height: 1.1 !important;
  }

  /* Fix section padding on mobile */
  .wp-block-group {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Fix footer columns */
  .wp-block-group.alignfull .wp-block-columns {
    flex-direction: column !important;
    gap: 32px !important;
  }

  /* Fix cards padding */
  .csg-card {
    padding: 20px 16px !important;
    margin-bottom: 16px !important;
  }

  /* Fix hero buttons */
  .wp-block-cover .wp-block-buttons {
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
    padding: 0 20px !important;
  }
  .wp-block-cover .wp-block-button {
    width: 100% !important;
    text-align: center !important;
  }

  /* Fix two column about section */
  .wp-block-media-text {
    display: block !important;
  }
  .wp-block-media-text .wp-block-media-text__media {
    width: 100% !important;
    margin-bottom: 24px !important;
  }
  .wp-block-media-text .wp-block-media-text__content {
    width: 100% !important;
    padding: 0 !important;
  }

  /* Fix sale banner */
  .wp-block-group .wp-block-columns .wp-block-column:last-child {
    text-align: center !important;
  }

  /* Fix navigation on mobile */
  .wp-block-navigation__container {
    gap: 0 !important;
  }
}

