/*
 * ctx-design.css: CTX Drone Services, "less templated" override layer.
 *
 * Load this AFTER style.css. It only overrides; it does not edit any page
 * block. Remove the file (or its enqueue) and the site returns to the
 * current look exactly.
 *
 * Every rule is prefixed with the body class "wp-child-theme-ctx-redesign",
 * which is on every page, so it beats the single-class rules in style.css
 * without !important. !important is used only against Forminator and
 * Greenshift, which already use !important or inline styles, and each of
 * those spots is commented.
 */

/* ------------------------------------------------------------------
   1. Fonts
   Replaces Plus Jakarta Sans from Google Fonts with two self-hosted
   variable fonts (SIL OFL 1.1, Latin subset).
   Overpass: headings. Drawn from Highway Gothic, the lettering on
   Texas road signs. Public Sans: body text, plain and sturdy.
   ------------------------------------------------------------------ */
@font-face {
  font-family: "CTX Overpass";
  src: url("fonts/overpass-latin-var.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "CTX Public Sans";
  src: url("fonts/public-sans-latin-var.woff2") format("woff2");
  font-weight: 100 900;
  font-style: normal;
  font-display: swap;
}

/* ------------------------------------------------------------------
   2. Tokens
   One set of names for the whole site. The old token names from
   style.css are pointed at these, so per-page rules that read
   var(--radius-card) etc. pick up the new values automatically.
   Contrast (computed): ink on paper 17.3:1, muted on card 10.7:1,
   gold on paper 9.2:1, dark text on gold button 9.2:1.
   ------------------------------------------------------------------ */
:root {
  --x-font-head: "CTX Overpass", "Arial Narrow", Arial, sans-serif;
  --x-font-body: "CTX Public Sans", Arial, sans-serif;

  --x-paper: #0b0b0a;      /* page background */
  --x-card: #141311;       /* cards and panels */
  --x-tint: #1d1a13;       /* note boxes */
  --x-line: #34302a;       /* decorative borders */
  --x-field-line: #8a8373; /* form field borders, 4.9:1 on card (3:1 needed) */
  --x-ink: #f3f0e8;        /* headings, main text */
  --x-muted: #c9c4b8;      /* secondary text */
  --x-gold: #ceae61;       /* brand gold: rules, buttons, prices */
  --x-gold-text: #ceae61;  /* gold used as text */
  --x-btn-ink: #0b0b0a;    /* text on gold buttons */
  --x-radius: 4px;

  /* old names from style.css */
  --font-sans: var(--x-font-body);
  --color-bg: var(--x-paper);
  --color-bg-card: var(--x-card);
  --color-border: var(--x-line);
  --color-text: var(--x-ink);
  --color-text-muted: var(--x-muted);
  --color-primary-glow: transparent;
  --radius-card: var(--x-radius);
  --radius-sm: var(--x-radius);
  --transition: 0.15s ease;
}

/* ------------------------------------------------------------------
   3. Base type
   Body 17px Public Sans, headings Overpass 800. Plus Jakarta's tight
   default tracking is gone. Text links in paragraphs get an underline
   so they are not marked by color alone (fixes axe link-in-text-block).
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign {
  font-family: var(--x-font-body);
  font-size: 17px;
  line-height: 1.6;
  background: var(--x-paper);
  color: var(--x-ink);
}
body.wp-child-theme-ctx-redesign :is(h1, h2, h3, h4, .section-title, .hero-title, .about-owner__name,
  .home-service-card__title, .home-how-step__title, .home-why-item__title, .about-process-step__title,
  .pricing-card__name, .pricing-card__price, .pricing-addon-name, .pricing-addon-price, .home-final-cta h3,
  .pricing-cta h3) {
  font-family: var(--x-font-head);
  letter-spacing: 0;
}
body.wp-child-theme-ctx-redesign .site-content p a:not([class]),
body.wp-child-theme-ctx-redesign .home-how-step__text a {
  color: var(--x-gold-text);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}
/* Keyword highlights were gold and bold in almost every paragraph.
   They now read as ordinary text with a little extra weight. */
body.wp-child-theme-ctx-redesign .highlight {
  color: inherit;
  font-weight: 600;
}

/* ------------------------------------------------------------------
   4. No motion
   Removes the scroll-in fade (.reveal started every block at opacity 0),
   the pulsing scroll line, and every hover lift or scale.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .reveal {
  opacity: 1;
  transform: none;
  transition: none;
}
body.wp-child-theme-ctx-redesign :is(.btn, .hero-btn, .pricing-btn, .home-service-card, .home-why-item,
  .about-process-step, .pricing-card, button.collage-item, .review-button, .pricing-info-icon,
  .ctx-primary-nav__list .menu-item-cta > a):hover {
  transform: none;
  box-shadow: none;
}

/* ------------------------------------------------------------------
   5. Header
   Solid black instead of translucent glass. One filled gold button
   (Book a Flight); the second CTA becomes an outline so the two stop
   competing. Active page marked with a steady underline, no sliding bar.
   Header and footer keep fixed dark colors in both palette options.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .ctx-site-header {
  background: #000;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  border-bottom: 1px solid #2a2722;
}
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list a {
  color: #f3f0e8;
  font-size: 1rem;
  font-weight: 500;
}
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list a::after { transition: none; }
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list a:hover,
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list .current-menu-item > a { color: #ceae61; }
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list .menu-item-cta > a {
  border-radius: var(--x-radius);
  box-shadow: none;
  transition: none;
}
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list .menu-item-cta:last-child > a {
  background: transparent;
  color: #f3f0e8 !important; /* style.css sets #000 !important on CTA links */
  box-shadow: inset 0 0 0 1px #ceae61;
}
body.wp-child-theme-ctx-redesign .ctx-primary-nav__list .menu-item-cta:last-child > a:hover {
  background: #ceae61;
  color: #000 !important;
}
body.wp-child-theme-ctx-redesign.ctx-nav-open .ctx-primary-nav__list .menu-item-cta:last-child > a {
  box-shadow: none;
  color: #ceae61 !important;
}

/* ------------------------------------------------------------------
   6. Buttons
   One button style: 4px corners, no glow, no lift. Filled gold for the
   main action, 2px outline for the second.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign :is(.btn, .hero-btn, .pricing-btn) {
  border-radius: var(--x-radius);
  box-shadow: none;
  font-family: var(--x-font-body);
  font-weight: 700;
  letter-spacing: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
}
body.wp-child-theme-ctx-redesign :is(.btn-primary, .hero-btn:not(.hero-btn--outline), .pricing-btn) {
  background: var(--x-gold);
  color: var(--x-btn-ink);
}
body.wp-child-theme-ctx-redesign :is(.btn-primary, .hero-btn:not(.hero-btn--outline), .pricing-btn):hover {
  background: #e0c47e;
  color: var(--x-btn-ink);
}
body.wp-child-theme-ctx-redesign .btn-outline {
  color: var(--x-ink);
  border: 2px solid var(--x-gold);
}
body.wp-child-theme-ctx-redesign .btn-outline:hover {
  background: var(--x-gold);
  color: var(--x-btn-ink);
}
body.wp-child-theme-ctx-redesign .pricing-cta .btn-outline { color: var(--x-ink); }
body.wp-child-theme-ctx-redesign .pricing-cta .btn-outline:hover { color: var(--x-btn-ink); }

/* ------------------------------------------------------------------
   7. Home hero
   The aerial video stays as the one loud thing on the page. Text moves
   to the left, the credential pill above the title becomes a plain line
   under the buttons (same words, not uppercase, no border), the
   gradient scrim becomes a flat one, and the pulsing "Scroll" cue goes.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .hero {
  justify-content: flex-start;
  text-align: left;
  height: min(100vh, 820px);
}
body.wp-child-theme-ctx-redesign .hero::after {
  background: rgba(0, 0, 0, 0.6);
}
body.wp-child-theme-ctx-redesign .hero-content {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 24px;
}
body.wp-child-theme-ctx-redesign .hero-title {
  order: 1;
  font-size: clamp(2.5rem, 6vw, 4.75rem);
  font-weight: 800;
  line-height: 1.02;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  margin-bottom: 24px;
}
body.wp-child-theme-ctx-redesign .hero-title span { color: #ceae61; }
body.wp-child-theme-ctx-redesign .hero-tagline {
  order: 2;
  margin: 0 0 32px;
  max-width: 36em;
  font-size: 1.15rem;
  color: #ebe7de;
}
body.wp-child-theme-ctx-redesign .hero-buttons { order: 3; justify-content: flex-start; }
body.wp-child-theme-ctx-redesign .hero-btn { padding: 15px 32px; }
body.wp-child-theme-ctx-redesign .hero-btn--outline {
  color: #fff;
  border: 2px solid #fff;
}
body.wp-child-theme-ctx-redesign .hero-btn--outline:hover { background: #fff; color: #000; }
body.wp-child-theme-ctx-redesign .hero-eyebrow {
  order: 4;
  margin: 28px 0 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  text-transform: none;
  letter-spacing: 0;
  font-size: 1rem;
  font-weight: 600;
  color: #ebe7de;
}
body.wp-child-theme-ctx-redesign .hero-scroll { display: none; }

/* ------------------------------------------------------------------
   8. Section headings and page titles
   Every heading used to be centered, gold, with a short gold stripe
   above it. Now: left-aligned, ink colored, no stripe. Each home
   section is separated by a 1px rule instead. Page titles (the first
   heading on inner pages) get one consistent treatment: large, with a
   3px gold rule underneath.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .section-divider { display: none; }
body.wp-child-theme-ctx-redesign .section-title {
  color: var(--x-ink);
  text-align: left;
  font-size: clamp(1.75rem, 3.2vw, 2.4rem);
  font-weight: 800;
  line-height: 1.15;
  margin-bottom: 16px;
  max-width: 28ch;
}
body.wp-child-theme-ctx-redesign .section-subtitle,
body.wp-child-theme-ctx-redesign .pricing-section-note {
  text-align: left;
  margin-left: 0;
  margin-right: 0;
  max-width: 68ch;
  color: var(--x-muted);
  font-size: 1.1rem;
}
body.wp-child-theme-ctx-redesign :is(.about-hero, .pricing-hero, .contact-hero, .service-request-hero) {
  text-align: left;
  border-bottom: 3px solid var(--x-gold);
  padding-bottom: 28px;
}
body.wp-child-theme-ctx-redesign :is(.about-hero, .pricing-hero, .contact-hero, .service-request-hero) .section-title {
  font-size: clamp(2.25rem, 5vw, 3.5rem);
  max-width: none;
}
body.wp-child-theme-ctx-redesign :is(.about-hero, .pricing-hero, .contact-hero, .service-request-hero) .section-subtitle {
  margin-left: 0;
}
body.wp-child-theme-ctx-redesign :is(.about-page, .pricing-page, .contact-page, .service-request-page) {
  background: var(--x-paper);
  color: var(--x-ink);
  padding-top: calc(var(--header-h) + 48px); /* clears the fixed header */
}
body.wp-child-theme-ctx-redesign :is(.home-intro, .home-service-area, .pricing-section-head, .pricing-cta,
  .home-final-cta, .about-cta, .about-review, .review-section) {
  text-align: left;
}
body.wp-child-theme-ctx-redesign :is(.home-services, .home-how, .home-why, .home-collage, .home-testimonials,
  .home-service-area) > .ctx-container {
  border-top: 1px solid var(--x-line);
  padding-top: 64px;
}
body.wp-child-theme-ctx-redesign :is(.home-intro, .home-services, .home-how, .home-why, .home-collage,
  .home-testimonials, .home-service-area) {
  background: var(--x-paper);
  padding-top: 0;
  padding-bottom: 72px;
}
body.wp-child-theme-ctx-redesign .home-intro { padding-top: 72px; }
body.wp-child-theme-ctx-redesign .pricing-section-head { margin-top: 72px; }
body.wp-child-theme-ctx-redesign .pricing-section-head .highlight,
body.wp-child-theme-ctx-redesign .pricing-section-note .highlight { color: var(--x-gold-text); }

/* ------------------------------------------------------------------
   9. Cards and panels
   Flat: one 1px border, 4px corners, no shadow, no glass blur, no
   hover movement. Text inside is left-aligned.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign :is(.card, .home-service-card, .home-why-item, .home-testimonial, .map-card,
  .home-final-cta, .about-panel, .about-part107-panel, .about-process-step, .about-cta, .pricing-card,
  .pricing-addons, .pricing-cta, .contact-form-panel, .service-request-form-panel) {
  background: var(--x-card);
  border: 1px solid var(--x-line);
  border-radius: var(--x-radius);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  text-align: left;
  transition: none;
}
body.wp-child-theme-ctx-redesign :is(.home-service-card, .home-why-item, .about-process-step) {
  align-items: flex-start;
}

/* Home service cards: icon discs removed, the "See packages ->" arrow
   removed, and the whole card is the link (stretched ::after), with
   the focus ring drawn on the card outline. */
body.wp-child-theme-ctx-redesign .home-service-card { position: relative; padding: 28px; }
body.wp-child-theme-ctx-redesign .home-service-card__icon,
body.wp-child-theme-ctx-redesign .home-why-item__icon { display: none; }
body.wp-child-theme-ctx-redesign :is(.home-service-card__title, .home-why-item__title) {
  color: var(--x-ink);
  font-size: 1.3rem;
  font-weight: 800;
}
body.wp-child-theme-ctx-redesign .home-why-item__title { font-size: 1.1rem; }
body.wp-child-theme-ctx-redesign :is(.home-service-card__text, .home-why-item__text, .about-process-step__text,
  .home-how-step__text) {
  font-size: 1rem;
  color: var(--x-muted);
}
body.wp-child-theme-ctx-redesign .home-service-card__link {
  position: static;
  color: var(--x-gold-text);
  font-size: 1rem;
  text-decoration: underline;
  text-underline-offset: 3px;
}
body.wp-child-theme-ctx-redesign .home-service-card__link::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: var(--x-radius);
}
body.wp-child-theme-ctx-redesign .home-service-card:hover { border-color: var(--x-gold); }
body.wp-child-theme-ctx-redesign .home-service-card__link:focus-visible { outline: none; }
body.wp-child-theme-ctx-redesign .home-service-card__link:focus-visible::after {
  outline: 3px solid var(--x-gold);
  outline-offset: 3px;
}

/* How it works (home and about): numbers in circles become plain
   bold numerals; the fading connector lines are removed. */
body.wp-child-theme-ctx-redesign .home-how-step { text-align: left; }
body.wp-child-theme-ctx-redesign .home-how-step::after { display: none; }
body.wp-child-theme-ctx-redesign :is(.home-how-step__number, .about-process-step__number) {
  width: auto;
  height: auto;
  margin: 0 0 8px;
  border: 0;
  border-radius: 0;
  background: none;
  justify-content: flex-start;
  color: var(--x-gold-text);
  font-family: var(--x-font-head);
  font-size: 2.25rem;
  font-weight: 800;
  line-height: 1;
}
body.wp-child-theme-ctx-redesign :is(.home-how-step__title, .about-process-step__title) {
  color: var(--x-ink);
  font-size: 1.2rem;
  font-weight: 800;
}
body.wp-child-theme-ctx-redesign .home-how-step__text { margin: 0; max-width: 34ch; }
body.wp-child-theme-ctx-redesign .home-how-grid { margin-top: 32px; }

/* Testimonials: upright text instead of long italic blocks. */
body.wp-child-theme-ctx-redesign .home-testimonial__quote {
  font-style: normal;
  color: var(--x-ink);
  font-size: 1.05rem;
}
body.wp-child-theme-ctx-redesign .home-testimonial__role { color: var(--x-muted); font-size: 0.95rem; }
body.wp-child-theme-ctx-redesign .home-testimonial__stars { color: var(--x-gold-text); }

/* Photo collage: smaller corners, no scale-up glow on hover. */
body.wp-child-theme-ctx-redesign button.collage-item {
  border-radius: var(--x-radius);
  border-color: var(--x-line);
  transition: none;
}
body.wp-child-theme-ctx-redesign button.collage-item:focus-visible { outline-color: var(--x-gold); }

/* Map card and BBB badge: no glow or zoom on the badge. */
body.wp-child-theme-ctx-redesign .map-card iframe { border-radius: 2px; }
body.wp-child-theme-ctx-redesign .review-button img { box-shadow: none; border-radius: 2px; }
body.wp-child-theme-ctx-redesign .review-button { transition: none; }
body.wp-child-theme-ctx-redesign .review-button:hover { opacity: 1; }
body.wp-child-theme-ctx-redesign :is(.review-section, .about-review) p { color: var(--x-muted); }
body.wp-child-theme-ctx-redesign :is(.home-final-cta, .pricing-cta, .about-cta) :is(h3, .about-cta__text) {
  color: var(--x-ink);
}
body.wp-child-theme-ctx-redesign :is(.home-final-cta, .pricing-cta, .about-cta) p {
  margin-left: 0;
  color: var(--x-muted);
}
body.wp-child-theme-ctx-redesign :is(.home-final-cta__buttons, .pricing-cta__buttons, .about-cta__buttons) {
  justify-content: flex-start;
}
body.wp-child-theme-ctx-redesign .home-final-cta { border-left: 4px solid var(--x-gold); }

/* ------------------------------------------------------------------
   10. About page
   Gold pill badges become plain bordered tags. The uppercase,
   letter-spaced job title becomes normal text. The four Part 107
   benefits were each a tinted box with a gold check disc; they are now
   one list separated by rules.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .about-owner__name { color: var(--x-ink); font-size: 2rem; font-weight: 800; }
body.wp-child-theme-ctx-redesign .about-owner__title {
  text-transform: none;
  letter-spacing: 0;
  font-size: 1.05rem;
  color: var(--x-gold-text);
}
body.wp-child-theme-ctx-redesign .about-text { margin-left: 0; max-width: 68ch; color: var(--x-muted); }
body.wp-child-theme-ctx-redesign .about-certs { justify-content: flex-start; }
body.wp-child-theme-ctx-redesign .about-cert {
  background: transparent;
  color: var(--x-ink);
  border: 1px solid var(--x-field-line);
  border-radius: var(--x-radius);
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0;
}
body.wp-child-theme-ctx-redesign .about-part107-panel { max-width: none; }
body.wp-child-theme-ctx-redesign .about-benefits { margin-top: 0; }
body.wp-child-theme-ctx-redesign .about-benefit {
  background: none;
  border: 0;
  border-bottom: 1px solid var(--x-line);
  border-radius: 0;
  padding: 16px 0;
  margin: 0;
  transition: none;
}
body.wp-child-theme-ctx-redesign .about-benefit:last-child { border-bottom: 0; }
body.wp-child-theme-ctx-redesign .about-benefit:hover { background: none; }
body.wp-child-theme-ctx-redesign .about-benefit__icon { display: none; }
body.wp-child-theme-ctx-redesign .about-benefit__text { color: var(--x-muted); }
body.wp-child-theme-ctx-redesign .about-benefit__text .highlight { color: var(--x-ink); font-weight: 700; }
body.wp-child-theme-ctx-redesign .about-cta__text { margin-left: 0; font-family: var(--x-font-head); font-size: 1.4rem; }

/* Modula gallery under the About page ran edge to edge and past the
   right side of the screen. Held to the content width. Modula measures
   its container when it starts, so it lays out to the narrower width. */
body.wp-child-theme-ctx-redesign .about-page ~ .modula.modula-gallery {
  max-width: min(1152px, calc(100% - 48px));
  margin: 0 auto 72px;
}

/* ------------------------------------------------------------------
   11. Services and prices
   Cards left-aligned. The min-height boxes that vertically centered
   each name, price and description are removed, so text sits at the
   top and lines up across cards. Descriptions are upright, not italic.
   Notes keep the tint plus thick left rule (the single note style).
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .pricing-card { padding: 28px; }
body.wp-child-theme-ctx-redesign .pricing-card__header {
  text-align: left;
  min-height: 0;
  justify-content: flex-start;
  border-bottom-color: var(--x-line);
}
body.wp-child-theme-ctx-redesign :is(.pricing-card__name, .pricing-card__price, .pricing-card__description) {
  min-height: 0;
  justify-content: flex-start;
  text-align: left;
}
body.wp-child-theme-ctx-redesign .pricing-card__name { color: var(--x-ink); font-size: 1.3rem; font-weight: 800; }
body.wp-child-theme-ctx-redesign .pricing-card__price {
  color: var(--x-gold-text);
  font-size: 2.5rem;
  font-weight: 800;
  margin: 4px 0 8px;
}
body.wp-child-theme-ctx-redesign .pricing-card__price--starting { align-items: flex-start; font-size: 2.25rem; }
body.wp-child-theme-ctx-redesign .pricing-card__price--starting::before {
  color: var(--x-muted);
  font-family: var(--x-font-body);
  font-size: 1rem;
}
body.wp-child-theme-ctx-redesign .pricing-card__price--text { color: var(--x-ink); }
body.wp-child-theme-ctx-redesign .pricing-card__description {
  font-style: normal;
  color: var(--x-muted);
  font-size: 1rem;
}
body.wp-child-theme-ctx-redesign .pricing-features li { color: var(--x-ink); font-size: 1rem; }
body.wp-child-theme-ctx-redesign .pricing-features li::before { color: var(--x-gold-text); }
body.wp-child-theme-ctx-redesign .pricing-card__actions { text-align: left; }
body.wp-child-theme-ctx-redesign .pricing-btn { display: block; text-align: center; }
body.wp-child-theme-ctx-redesign .pricing-card__note {
  background: var(--x-tint);
  border-left: 4px solid var(--x-gold);
  border-radius: 0;
  color: var(--x-muted);
  font-size: 0.95rem;
}
body.wp-child-theme-ctx-redesign .pricing-tooltip-wrap { justify-content: flex-start; }
body.wp-child-theme-ctx-redesign .pricing-info-icon { transition: none; }
body.wp-child-theme-ctx-redesign .pricing-tooltip { border-radius: var(--x-radius); box-shadow: none; }
body.wp-child-theme-ctx-redesign .pricing-addon-name { color: var(--x-ink); }
body.wp-child-theme-ctx-redesign .pricing-addon-desc { color: var(--x-muted); font-size: 1rem; }
body.wp-child-theme-ctx-redesign :is(.pricing-addon-price--starting, .pricing-card__price--starting)::before {
  color: var(--x-muted);
}

/* ------------------------------------------------------------------
   12. Portfolio page (Greenshift accordion)
   The full-bleed mustard bars were a second, darker gold used nowhere
   else. Now each category is a row inside the content width: ink
   heading, 1px rule, gold plus sign. Greenshift writes its colors with
   ID-level selectors, hence !important here.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .gs-accordion {
  max-width: min(1152px, calc(100% - 48px));
  margin: 0 auto;
}
body.wp-child-theme-ctx-redesign .gs-accordion .gs-accordion-item__title {
  background: transparent !important; /* Greenshift sets bg per block ID */
  color: var(--x-ink) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--x-line) !important;
  border-radius: 0 !important;
  padding: 22px 0 !important;
  margin: 0 !important;
}
body.wp-child-theme-ctx-redesign .gs-accordion .gs-accordion-item__title :is(h2, h3, h4, .gs-accordion-item__heading, span) {
  color: var(--x-ink) !important; /* Greenshift inline color */
  font-family: var(--x-font-head) !important;
  font-weight: 800 !important;
}
body.wp-child-theme-ctx-redesign .gs-accordion .gs-accordion-item__title :is(.gs-iconbefore, .gs-iconafter) {
  background-color: var(--x-gold) !important; /* the + is two 2px bars drawn with background */
}
body.wp-child-theme-ctx-redesign .gs-accordion .gs-accordion-item__title:hover :is(h2, h3, h4, span) {
  color: var(--x-gold-text) !important;
}
/* Open panels were white behind the photos (live today too). */
body.wp-child-theme-ctx-redesign .gs-accordion .gs-accordion-item__content {
  background: transparent !important; /* Greenshift sets #fff per block ID */
  padding-left: 0 !important;
  padding-right: 0 !important;
}
body.wp-child-theme-ctx-redesign .gs-accordion .gs-accordion-item {
  background: transparent !important;
  border: 0 !important;
  margin: 0 !important;
}

/* ------------------------------------------------------------------
   13. Forms (Forminator)
   Flat fields with a border that passes 3:1. Two fixes ride along:
   - The time pickers' visible text was black on near-black (1.11:1).
   - style.css forces width:100% and padding on every select, which
     also hit Forminator's hidden original selects and pushed the
     Service Request page 370px wider than the screen.
   Forminator styles with !important, so these do too.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .ctx-form-panel :is(input[type="text"], input[type="email"], input[type="tel"],
  input[type="url"], input[type="number"], input[type="date"], select, textarea, .forminator-input,
  .forminator-textarea, .select2-selection) {
  background: var(--x-paper) !important;
  border: 1px solid var(--x-field-line) !important;
  border-radius: var(--x-radius) !important;
  color: var(--x-ink) !important;
  transition: none !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel select.select2-hidden-accessible {
  width: 1px !important; /* undo style.css width:100% !important on hidden selects */
  padding: 0 !important;
  border: 0 !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel .select2-selection__rendered,
body.wp-child-theme-ctx-redesign .ctx-form-panel .select2-selection__placeholder {
  color: var(--x-ink) !important; /* Forminator default is #000 */
}
body.wp-child-theme-ctx-redesign .ctx-form-panel .forminator-label,
body.wp-child-theme-ctx-redesign .ctx-form-panel label.forminator-label {
  color: var(--x-ink) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel :is(input, select, textarea):focus {
  border-color: var(--x-gold) !important;
  box-shadow: 0 0 0 2px var(--x-gold) !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel :is(.forminator-radio, .forminator-checkbox) {
  background: transparent !important;
  border-radius: var(--x-radius) !important;
  border-color: var(--x-line) !important;
  transition: none !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel :is(.forminator-radio, .forminator-checkbox) :is(label, span) {
  color: var(--x-ink) !important;
  font-size: 1rem !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel :is(.forminator-button, button.forminator-button) {
  border-radius: var(--x-radius) !important;
  box-shadow: none !important;
  transition: background-color 0.15s ease !important;
}
body.wp-child-theme-ctx-redesign .ctx-form-panel :is(.forminator-button, button.forminator-button):hover {
  background: #e0c47e !important;
  transform: none !important;
  box-shadow: none !important;
}

/* The calendar icon sat on top of the first letter of "Choose Date". */
body.wp-child-theme-ctx-redesign .ctx-form-panel .forminator-input-with-icon input {
  padding-left: 44px !important;
}

/* ------------------------------------------------------------------
   14. Footer
   Uppercase letter-spaced column labels become normal headings.
   Copyright line was 3.71:1; now 6.85:1.
   ------------------------------------------------------------------ */
body.wp-child-theme-ctx-redesign .ctx-site-footer {
  background: #050505;
  border-top: 1px solid #2a2722;
  color: #c9c4b8;
}
body.wp-child-theme-ctx-redesign .ctx-footer-col h4 {
  text-transform: none;
  letter-spacing: 0;
  font-family: var(--x-font-head);
  font-size: 1.05rem;
  font-weight: 800;
  color: #f3f0e8;
}
body.wp-child-theme-ctx-redesign .ctx-footer-col ul li a { color: #c9c4b8; font-size: 1rem; }
body.wp-child-theme-ctx-redesign .ctx-footer-col ul li a:hover { color: #ceae61; }
body.wp-child-theme-ctx-redesign .ctx-footer-brand p { color: #c9c4b8; font-size: 1rem; }
body.wp-child-theme-ctx-redesign .ctx-site-footer__copy {
  color: #9b958a;
  border-top-color: #2a2722;
  font-size: 0.9rem;
}

/* ------------------------------------------------------------------
   15. Small screens
   ------------------------------------------------------------------ */
@media (max-width: 768px) {
  body.wp-child-theme-ctx-redesign .hero { height: auto; min-height: 640px; padding: 120px 0 64px; }
  body.wp-child-theme-ctx-redesign .hero-buttons { flex-direction: column; align-items: stretch; width: 100%; }
  body.wp-child-theme-ctx-redesign .hero-btn { text-align: center; }
  body.wp-child-theme-ctx-redesign :is(.home-services, .home-how, .home-why, .home-collage, .home-testimonials,
    .home-service-area) > .ctx-container { padding-top: 48px; }
  body.wp-child-theme-ctx-redesign .about-certs { flex-direction: row; align-items: flex-start; }
  body.wp-child-theme-ctx-redesign .pricing-card__price { font-size: 2.25rem; }
  /* style.css allows 100vw - 48px, which ran 5px off a 320px screen */
  body.wp-child-theme-ctx-redesign .pricing-tooltip { width: min(280px, calc(100vw - 72px)); }
}
@media (max-width: 360px) {
  body.wp-child-theme-ctx-redesign .pricing-card { padding: 22px 18px; }
  body.wp-child-theme-ctx-redesign .pricing-card__price { font-size: 1.9rem; }
}
