/*
Theme Name: Couples Travel HQ Child
Theme URI: https://couplestravelhq.com/
Description: Child theme for Couples Travel HQ, built on Astra. Implements the "Golden Hour, Not Rose-Colored" brand identity (see CTHQ-BRAND-IDENTITY.md) -- terracotta/deep-teal/ivory palette, Fraunces + Work Sans typography. Overrides Astra's own CSS custom-property color system rather than fighting it with !important-heavy overrides, so Astra's existing button/link/heading components inherit the new palette automatically.
Author: Kelly
Template: astra
Version: 1.5.3
Text Domain: couples-travel-hq-child
*/

/* ==========================================================================
   Brand tokens -- CTHQ-BRAND-IDENTITY.md, "Golden Hour, Not Rose-Colored"
   ========================================================================== */
:root {
  --cthq-ink-teal:        #1B3A3A;
  --cthq-ink-teal-soft:   #2F4F4C;
  --cthq-terracotta:      #C1613D;
  --cthq-terracotta-dark: #A34F31;
  --cthq-deep-teal:       #2E5959;
  --cthq-ivory:           #FAF6F0;
  --cthq-sand:            #F0E6D8;
  --cthq-clay-border:     #DCC9B6;

  /* Astra's own global color slots (confirmed live on the site 2026-09-27:
     0/1 = link/primary, 2 = heading, 3 = body text, 4 = lightest bg,
     5 = secondary/light bg, 6/8 = near-black accents, 7 = border).
     Overriding these lets Astra's existing components (buttons, links,
     headings, card borders) inherit the new palette without hand-overriding
     every individual Astra/Gutenberg selector. */
  --ast-global-color-0: var(--cthq-terracotta);
  --ast-global-color-1: var(--cthq-terracotta-dark);
  --ast-global-color-2: var(--cthq-ink-teal);
  --ast-global-color-3: var(--cthq-ink-teal-soft);
  --ast-global-color-4: var(--cthq-ivory);
  --ast-global-color-5: var(--cthq-sand);
  --ast-global-color-6: var(--cthq-ink-teal);
  --ast-global-color-7: var(--cthq-clay-border);
  --ast-global-color-8: var(--cthq-ink-teal);
}

/* ==========================================================================
   Typography -- Fraunces (display/headings) + Work Sans (body)
   Fonts are enqueued from Google Fonts in functions.php. Self-hosting these
   two families is a reasonable later performance step (matches CW's own
   "self-hosted fonts over CDN calls" practice) but is not required for this
   first implementation pass.
   ========================================================================== */
body,
.entry-content,
.site-header,
.site-footer,
button,
input,
select,
textarea {
  font-family: "Work Sans", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6,
.entry-title,
.site-title,
.ast-woo-shop-title,
.page-title {
  font-family: "Fraunces", "Playfair Display", Georgia, serif;
  font-weight: 500;
  color: var(--cthq-ink-teal);
}

.site-title,
.site-title a {
  font-family: "Fraunces", Georgia, serif;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--cthq-ink-teal) !important;
}

/* Small kicker line under the wordmark, per CTHQ-BRAND-IDENTITY.md
   ("A GUIDE FOR TWO") -- inserted via functions.php if the site description
   customizer field is used; styled here regardless. */
.site-description {
  font-family: "Work Sans", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.7rem;
  color: var(--cthq-deep-teal);
}

/* ==========================================================================
   Backgrounds -- warm ivory instead of stark white
   ========================================================================== */
body,
.ast-separate-container .ast-article-single,
.site-content,
.ast-separate-container {
  background-color: var(--cthq-ivory);
}

.site-header {
  background-color: var(--cthq-ivory);
  border-bottom: 1px solid var(--cthq-clay-border);
}

.site-footer {
  background-color: var(--cthq-sand);
  border-top: 1px solid var(--cthq-clay-border);
}

/* Sidebar / card-style modules (author box, related content, etc.) */
.widget,
.ast-related-post-single,
.comment-respond {
  background-color: var(--cthq-sand);
  border: 1px solid var(--cthq-clay-border);
  border-radius: 6px;
}

/* ==========================================================================
   Links, buttons -- terracotta accent, used sparingly per brand direction
   (never as a large fill; text links + button borders/fills only)
   ========================================================================== */
.entry-content a:not(.wp-block-button__link) {
  color: var(--cthq-terracotta);
  text-decoration-color: var(--cthq-clay-border);
}

.entry-content a:not(.wp-block-button__link):hover {
  color: var(--cthq-terracotta-dark);
}

.wp-block-button__link,
.ast-button,
button[type="submit"] {
  background-color: var(--cthq-terracotta);
  color: var(--cthq-ivory);
  border-radius: 6px;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
}

.wp-block-button__link:hover,
.ast-button:hover,
button[type="submit"]:hover {
  background-color: var(--cthq-terracotta-dark);
}

/* Category/tag chips -- deep teal, quiet, editorial (not decorative) */
.entry-categories a,
.entry-meta a,
.ast-taxonomy-container a {
  color: var(--cthq-deep-teal);
  font-family: "Work Sans", sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 0.75rem;
}

/* ==========================================================================
   Hero image -- ensure the inline hero figure (see build_article.py's
   build_hero_html()) always renders full-bleed and consistent regardless of
   whether the theme's own featured-image slot is used -- same defensive
   principle as California Wanderer's hero-visibility rule.
   ========================================================================== */
.entry-content > figure.wp-block-image:first-child img {
  border-radius: 8px;
}

/* ==========================================================================
   Visual/editorial redesign (2026-09-27)
   Homepage, archive-grid, and article-template components. See
   PHOTO-RETROFIT-LOG.md / functions.php for the render-time rationale.
   ========================================================================== */

/* ---- Header / logo -----------------------------------------------------
   A custom logo image is set via Settings -> site_logo (REST). Astra still
   renders the text site-title alongside it unless the Customizer's own
   "hide title" toggle was used (which raw REST writes bypass), so hide the
   text title explicitly and size the logo image sanely in the header.

   2026-09-30: logo asset replaced (approved circular travel mark +
   wordmark, no tagline). The original approved PNG had substantial
   transparent canvas padding around the artwork (measured: visible art was
   only ~50% of canvas height, and the wordmark's own glyphs only ~18% --
   so earlier px-height settings on that padded file displayed a much
   smaller wordmark than the number implied). Replaced site_logo with a
   tightly-cropped derivative of the exact same approved artwork (canvas
   crop only, zero redraw/recolor) and reset the display height accordingly
   -- 60px now reflects real, comparable visual weight to the earlier
   60-80px settings on the padded file. Mobile kept at the same proportion
   to desktop as before (46px) rather than scaling to the new crop
   independently. width:auto preserves the cropped asset's own aspect
   ratio. */
.ast-site-identity .site-title,
.ast-site-identity span.site-title,
.site-branding .site-title {
  display: none !important;
}
.site-logo-img .custom-logo {
  max-height: 60px;
  width: auto;
}
@media (max-width: 544px) {
  .site-logo-img .custom-logo {
    max-height: 46px;
  }
}

/* ---- Card grid (homepage sections, archive/category pages, related guides) */
.cthq-grid-section {
  max-width: 1180px;
  margin: 0 auto;
  padding: 48px 20px;
}
.cthq-grid-heading {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 6px;
}
.cthq-grid-subheading {
  text-align: center;
  color: var(--cthq-deep-teal);
  margin-bottom: 32px;
}
.cthq-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
.cthq-card-grid.cthq-cols-2 { grid-template-columns: repeat(2, 1fr); }
.cthq-card-grid.cthq-cols-4 { grid-template-columns: repeat(4, 1fr); }
@media (max-width: 900px) {
  .cthq-card-grid { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
  .cthq-card-grid { grid-template-columns: 1fr !important; }
}

.cthq-card {
  display: flex;
  flex-direction: column;
  text-decoration: none !important;
  color: inherit;
  background: #fff;
  border: 1px solid var(--cthq-clay-border);
  border-radius: 10px;
  overflow: hidden;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.cthq-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(27, 58, 58, 0.12);
}
.cthq-card-media {
  position: relative;
  aspect-ratio: 4 / 3;
  background: var(--cthq-sand);
  overflow: hidden;
}
.cthq-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cthq-card-media-fallback {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--cthq-sand), var(--cthq-clay-border));
}
.cthq-card-eyebrow {
  position: absolute;
  top: 12px;
  left: 12px;
  background: rgba(27, 58, 58, 0.82);
  color: var(--cthq-ivory);
  font-family: "Work Sans", sans-serif;
  font-size: 0.68rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  padding: 5px 10px;
  border-radius: 999px;
}
.cthq-card-body {
  padding: 16px 18px 18px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.cthq-card-title {
  font-size: 1.08rem;
  line-height: 1.3;
  margin: 0;
  color: var(--cthq-ink-teal);
}
.cthq-card-excerpt {
  font-size: 0.88rem;
  color: var(--cthq-ink-teal-soft);
  margin: 0;
  line-height: 1.5;
}
.cthq-card-date {
  margin-top: auto;
  font-size: 0.75rem;
  color: var(--cthq-deep-teal);
  padding-top: 8px;
}

/* ---- Featured articles row (homepage, immediately below header) ----------
   Photo-as-card, CW-style: no white body box, no border/shadow chrome, text
   overlaid directly on the image via a bottom gradient only (the photo
   itself stays full brightness -- the earlier version dimmed the whole
   image with a flat opacity, which is part of why it read as washed-out/
   broken rather than photography-led). Sized with aspect-ratio rather than
   a fixed min-height, so a box is never left as a large disconnected empty
   rectangle while an image is still painting. */
.cthq-featured-row {
  /* Geometry matched directly against California Wanderer's own live
     homepage (measured 2026-09-30 at a 1440px viewport): its featured
     block renders at 700px total width with a 64%/36% column split,
     centered with generous ivory margin around it -- not stretched to the
     page's full wide content width. 740px + a 1.8fr/1fr split reproduces
     that same compact, single-composition read (~64%/36%) while staying
     close to this site's own existing 720px article reading-width
     convention. */
  max-width: 740px;
  margin: 16px auto 0;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1.8fr 1fr;
  gap: 16px;
}
.cthq-featured-card {
  position: relative;
  display: block;
  border-radius: 10px;
  overflow: hidden;
  background: var(--cthq-ink-teal);
  text-decoration: none !important;
}
.cthq-featured-main {
  /* Fixed height, not width-driven aspect-ratio: at this column's actual
     rendered width (~700px on a normal desktop), aspect-ratio:4/5 computed
     to ~875px tall -- taller than the viewport. A fixed height keeps the
     block a consistent, editorial size regardless of screen width (the row
     is already capped at max-width:1180px, so this can't balloon on wider
     monitors either); object-fit:cover on the image (below) handles the
     crop for whatever the source photo's real proportions are. */
  height: 520px;
}
.cthq-featured-main img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cthq-featured-overlay {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 24px;
  background: linear-gradient(to top, rgba(27,58,58,0.94) 15%, rgba(27,58,58,0) 100%);
  color: var(--cthq-ivory);
}
.cthq-featured-overlay h2 {
  color: var(--cthq-ivory);
  font-size: 1.7rem;
  margin: 8px 0 8px;
}
.cthq-featured-overlay p {
  color: var(--cthq-ivory);
  opacity: 0.92;
  margin: 0 0 8px;
  max-width: 42ch;
}
.cthq-featured-date { font-size: 0.78rem; opacity: 0.82; }

.cthq-featured-side {
  /* Explicit height matching .cthq-featured-main, not relying on grid
     stretch: an auto-height flex column whose own children size themselves
     from ITS height is a circular dependency that collapses both children
     to 0px (confirmed live) rather than reliably stretching to the row's
     tallest item. A definite height here breaks that circularity. */
  height: 520px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.cthq-featured-small {
  /* flex:1 on these two children (with the gap above) splits the side
     column's now-definite 520px height evenly. */
  flex: 1;
  min-height: 0;
}
.cthq-featured-small img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cthq-featured-overlay-small {
  padding: 14px 16px;
}
.cthq-featured-overlay-small h3 {
  color: var(--cthq-ivory);
  font-size: 1rem;
  margin: 0;
  line-height: 1.3;
}

@media (max-width: 780px) {
  .cthq-featured-row {
    grid-template-columns: 1fr;
    margin-top: 8px;
  }
  /* Stacked on mobile -- go back to aspect-ratio sizing per card instead of
     the desktop's fixed 520px (which is a two-column-row height, not
     appropriate to a single stacked column). */
  .cthq-featured-main {
    height: auto;
    aspect-ratio: 4 / 3;
  }
  .cthq-featured-side {
    height: auto;
  }
  .cthq-featured-small {
    aspect-ratio: 16 / 10;
    min-height: 140px;
  }
}

/* ---- Category chip row -------------------------------------------------- */
.cthq-chip-row {
  max-width: 1180px;
  margin: 0 auto;
  padding: 8px 20px 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}
.cthq-chip {
  display: inline-block;
  background: var(--cthq-terracotta);
  color: var(--cthq-ivory) !important;
  text-decoration: none !important;
  padding: 9px 18px;
  border-radius: 999px;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  font-size: 0.85rem;
}
.cthq-chip:hover { background: var(--cthq-terracotta-dark); }
.cthq-chip-count { opacity: 0.85; font-weight: 400; }

/* ---- Booking CTA component ---------------------------------------------- */
.cthq-booking-cta {
  margin: 28px 0;
  padding: 18px 20px;
  background: var(--cthq-sand);
  border: 1px solid var(--cthq-clay-border);
  border-left: 4px solid var(--cthq-terracotta);
  border-radius: 8px;
}
.cthq-booking-cta-label {
  display: block;
  font-family: "Fraunces", Georgia, serif;
  font-weight: 600;
  color: var(--cthq-ink-teal);
  margin-bottom: 10px;
  font-size: 1.02rem;
}
.cthq-booking-cta-links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.cthq-booking-cta-link {
  display: inline-block;
  background: #fff;
  border: 1px solid var(--cthq-terracotta);
  color: var(--cthq-terracotta-dark) !important;
  text-decoration: none !important;
  font-family: "Work Sans", sans-serif;
  font-weight: 600;
  font-size: 0.86rem;
  padding: 9px 16px;
  border-radius: 999px;
}
.cthq-booking-cta-link:hover {
  background: var(--cthq-terracotta);
  color: var(--cthq-ivory) !important;
}

/* ---- "Best for" badge ----------------------------------------------------- */
.cthq-best-for {
  display: inline-block;
  margin-top: 6px;
  padding: 4px 10px;
  background: var(--cthq-sand);
  border-radius: 5px;
  font-size: 0.88rem;
}
.cthq-best-for-label {
  color: var(--cthq-terracotta-dark);
  font-weight: 700;
  text-transform: uppercase;
  font-size: 0.7rem;
  letter-spacing: 0.04em;
  margin-right: 4px;
}

/* ---- Table of contents ---------------------------------------------------- */
.cthq-toc {
  margin: 24px 0 32px;
  padding: 18px 22px;
  background: var(--cthq-sand);
  border: 1px solid var(--cthq-clay-border);
  border-radius: 8px;
}
.cthq-toc-label {
  display: block;
  font-family: "Fraunces", Georgia, serif;
  font-weight: 600;
  color: var(--cthq-ink-teal);
  margin-bottom: 8px;
}
.cthq-toc-list {
  columns: 2;
  column-gap: 32px;
  margin: 0;
  padding-left: 1.1em;
}
@media (max-width: 600px) {
  .cthq-toc-list { columns: 1; }
}
.cthq-toc-list li { margin-bottom: 6px; }
.cthq-toc-list a {
  color: var(--cthq-deep-teal) !important;
  text-decoration: none !important;
}
.cthq-toc-list a:hover { text-decoration: underline !important; }

/* ---- Related guides -------------------------------------------------------- */
.cthq-related-guides {
  margin-top: 48px;
  padding-top: 32px;
  border-top: 1px solid var(--cthq-clay-border);
}
.cthq-related-heading {
  text-align: left;
  font-size: 1.5rem;
  margin-bottom: 20px;
}
.cthq-related-guides .cthq-card-grid { gap: 20px; }

/* ---- Article reading width + image/caption rhythm ------------------------- */
.single-post .entry-content {
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.06rem;
  line-height: 1.7;
}
.single-post .entry-content h2 {
  margin-top: 2.2em;
  font-size: 1.6rem;
}
.single-post .entry-content h3 {
  margin-top: 1.6em;
  font-size: 1.25rem;
}
.single-post .entry-content figure.wp-block-image {
  margin: 1.6em 0;
}
.single-post .entry-content figure.wp-block-image img {
  border-radius: 8px;
  width: 100%;
  height: auto;
}
.single-post .entry-content figure.wp-block-image figcaption {
  font-size: 0.82rem;
  color: var(--cthq-deep-teal);
  margin-top: 8px;
  text-align: center;
}
/* Hero image (first figure in the article) can run wider than body text */
.single-post .entry-content > figure.wp-block-image:first-child {
  max-width: 900px;
  margin-left: calc(50% - 450px);
  margin-right: calc(50% - 450px);
}
@media (max-width: 940px) {
  .single-post .entry-content > figure.wp-block-image:first-child {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

/* ---- Homepage: suppress Astra's automatic page-title header --------------- */
/* Astra prepends an <h1 class="entry-title"> (the Page's own title field)
   above entry-content on every page template, independent of the block
   content itself -- removing the intro heading/paragraph from the page's
   blocks doesn't touch this theme-level header. Scoped to `.home` (the body
   class WordPress adds only on the configured static front page) so every
   other page/post keeps its normal title. */
body.home .entry-header {
  display: none;
}

/* ---- Explore Destinations -- compact regional navigation, not a photo grid.
   A small thumbnail anchors each region/place; the real destination links
   sit beside it as plain text, so the whole component reads as navigation
   (like a real travel publication's "browse by place" index) rather than a
   second wall of giant photography. Scales cleanly: a region with 4
   children takes exactly as much vertical space as one with none. */
.cthq-region-grid {
  max-width: 900px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.cthq-region-card {
  display: flex;
  align-items: center;
  gap: 14px;
  background: #fff;
  border: 1px solid var(--cthq-clay-border);
  border-radius: 10px;
  padding: 10px 16px 10px 10px;
}
.cthq-region-thumb {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  border-radius: 8px;
  overflow: hidden;
  background: var(--cthq-sand);
}
.cthq-region-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.cthq-region-body {
  min-width: 0;
}
.cthq-region-name {
  display: block;
  font-family: "Fraunces", Georgia, serif;
  font-weight: 600;
  font-size: 1.02rem;
  color: var(--cthq-ink-teal) !important;
  text-decoration: none !important;
  margin-bottom: 2px;
}
a.cthq-region-name:hover { color: var(--cthq-terracotta) !important; }
.cthq-region-name-plain { cursor: default; }
.cthq-region-children {
  font-size: 0.82rem;
  color: var(--cthq-deep-teal);
  line-height: 1.5;
}
.cthq-region-children a {
  color: var(--cthq-deep-teal) !important;
  text-decoration: none !important;
}
.cthq-region-children a:hover { text-decoration: underline !important; }
.cthq-region-sep { opacity: 0.5; margin: 0 2px; }

@media (max-width: 640px) {
  .cthq-region-grid { grid-template-columns: 1fr; }
}

/* ---- Header search ---------------------------------------------------------- */
/* `all: unset` strips both Astra's own nav-button defaults and this file's
   generic `button[type="submit"]` fill rule above, which otherwise turn
   these into full-width terracotta blocks -- then every property this
   component actually wants is set explicitly. */
li.cthq-search-item {
  all: unset;
  display: flex !important;
  align-items: center;
  position: relative;
  flex: 0 0 auto;
  max-width: max-content;
}
.cthq-search-toggle {
  all: unset;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 34px;
  height: 34px;
  color: var(--cthq-ink-teal);
}
.cthq-search-toggle:hover { color: var(--cthq-terracotta); }
.cthq-search-form {
  all: unset;
  display: none;
  align-items: center;
  gap: 6px;
  margin-left: 4px;
  box-sizing: border-box;
}
.cthq-search-item.is-open .cthq-search-form {
  display: flex !important;
}
.cthq-search-form input[type="search"] {
  box-sizing: border-box;
  border: 1px solid var(--cthq-clay-border);
  border-radius: 999px;
  padding: 6px 14px;
  font-family: "Work Sans", sans-serif;
  font-size: 0.85rem;
  width: 190px;
  max-width: 40vw;
  background: #fff;
  color: var(--cthq-ink-teal);
  line-height: normal;
}
.cthq-search-form input[type="search"]:focus {
  outline: 2px solid var(--cthq-terracotta);
  outline-offset: 1px;
}
.cthq-search-submit {
  all: unset;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  width: 28px;
  height: 28px;
  color: var(--cthq-terracotta);
  flex-shrink: 0;
}
@media (max-width: 768px) {
  li.cthq-search-item { max-width: 100%; width: 100%; }
  .cthq-search-toggle { display: none; }
  .cthq-search-form {
    display: flex !important;
    margin: 10px 0;
    width: 100%;
  }
  .cthq-search-form input[type="search"] {
    flex: 1;
    width: auto;
    max-width: none;
  }
}

/* ---- Archive/category template -------------------------------------------- */
.cthq-archive-wrap {
  max-width: 1180px;
  margin: 0 auto;
  padding: 48px 20px 64px;
}
.cthq-archive-header {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 40px;
}
.cthq-archive-title {
  font-size: 2.6rem;
  margin-bottom: 10px;
}
.cthq-archive-description {
  color: var(--cthq-deep-teal);
  font-size: 1.05rem;
}
.cthq-archive-pagination {
  margin-top: 48px;
  text-align: center;
}
.cthq-archive-pagination .page-numbers {
  display: inline-block;
  margin: 0 4px;
  padding: 8px 14px;
  border-radius: 6px;
  background: var(--cthq-sand);
  color: var(--cthq-ink-teal);
  text-decoration: none;
}
.cthq-archive-pagination .page-numbers.current {
  background: var(--cthq-terracotta);
  color: var(--cthq-ivory);
}
@media (max-width: 900px) {
  .cthq-archive-grid.cthq-card-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 600px) {
  .cthq-archive-grid.cthq-card-grid { grid-template-columns: 1fr; }
  .cthq-archive-title { font-size: 2rem; }
}

/* ---- Footer widgets ------------------------------------------------------- */
.site-footer .widget-area {
  max-width: 1180px;
  margin: 0 auto;
  padding: 40px 20px;
}
.site-footer .footer-adv,
.site-footer .ast-small-footer {
  border-top: 1px solid var(--cthq-clay-border);
}
