/**
Theme Name: cultivating-digital-child
Author: Cultivating Digital
Author URI: https://cultivatingdigital.com/
Description: Cultivating Digital - Organic marketing for the Life of your business.
Version: 2026.09.28.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: cultivating-digital-child
Template: astra
*/

/* -------------------------------------------------------------------------
   Deliberately small.

   Layout, alignment, colour and typography belong to Spectra container and
   block settings and to the Astra Customizer, so they are editable without
   touching code. Earlier versions of this file owned all of that in CSS and
   the result was that editor settings silently did nothing. This stylesheet
   now only covers what those tools genuinely cannot reach:

     1. third-party plugin markup (Google reviews widget)
     2. footer widget content, which Astra's footer colour controls skip
     3. a couple of cosmetic touches with no Spectra equivalent

   Before adding anything here, check whether a Spectra setting can do it.
   Note this stylesheet loads AFTER Spectra's generated CSS, so any rule here
   beats the editor even without !important. That is exactly why it stays thin.
   ------------------------------------------------------------------------- */


/* 1. Google reviews widget ------------------------------------------------
   Plugin-rendered markup sitting on the dark testimonial band. The plugin has
   no colour control, so the review text needs lifting here. */
.ogw-band-testimonials .text.text-excerpt,
.ogw-band-testimonials span.review-snippet,
.ogw-band-testimonials .review-text {
	color: var(--ast-global-color-5) !important;
}


/* 2. Footer widget content ------------------------------------------------
   Astra's footer colour settings only reach its own builder elements, not the
   content inside widgets, so widget text and links stay dark on the dark bar
   unless set here. */
.site-above-footer-wrap [class*="footer-widget-area"],
.site-below-footer-wrap [class*="footer-widget-area"],
.site-above-footer-wrap [class*="footer-widget-area"] :is(p, li, h2, h3, h4, .widget-title, strong),
.site-below-footer-wrap [class*="footer-widget-area"] :is(p, li, h2, h3, h4, .widget-title, strong) {
	color: var(--ast-global-color-5);
}
.site-above-footer-wrap [class*="footer-widget-area"] a,
.site-below-footer-wrap [class*="footer-widget-area"] a {
	color: var(--ast-global-color-5);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* The bottom bar carries the copyright plus the Terms / Privacy links, which
   render in the link colour against a dark background. */
.site-below-footer-wrap,
.site-below-footer-wrap p,
.site-below-footer-wrap a,
.site-below-footer-wrap a:visited {
	color: var(--ast-global-color-5);
}
.site-below-footer-wrap a { text-decoration: underline; text-underline-offset: 2px; }
.site-above-footer-wrap [class*="footer-widget-area"] a:hover,
.site-below-footer-wrap a:hover { opacity: .75; }


/* 3. Cosmetic ------------------------------------------------------------- */

/* Symptom and team cards: clip the corners. Sizing and columns are Spectra
   container settings, and image size is the image block's own size control. */
.ogw-tile { overflow: hidden; border-radius: 4px; }
.ogw-tile .wp-block-uagb-image,
.ogw-tile figure { margin: 0; }
.ogw-tile .wp-block-uagb-image img { display: block; width: 100%; height: auto; }

/* Patient forms cards */
.wp-block-uagb-container.ogw-doc {
	border: 1px solid var(--ast-global-color-6);
	border-radius: 4px;
	text-align: center;
}

/* Why choose us: plain bulleted lists read as rows rather than bullets */
.ogw-why-text ul { list-style: none; margin: 0; padding: 0; }
.ogw-why-text li {
	padding: 0.85em 0;
	border-bottom: 1px solid var(--ast-global-color-6);
}
.ogw-why-text li:last-child { border-bottom: 0; }

/* Review page: the two answer panels stay hidden until a patient picks one.
   Behaviour, not styling, so it has no Spectra equivalent. */
.ogw-review-good,
.ogw-review-bad { display: none; }
.ogw-review-good.is-open,
.ogw-review-bad.is-open { display: flex; }

/* Star rating on Review Us */
.ogw-stars { display: flex; justify-content: center; gap: 6px; margin: 8px 0 24px; }
.ogw-star { background: none; border: 0; padding: 4px; cursor: pointer; line-height: 0; }
.ogw-star svg { width: 44px; height: 44px; fill: none; stroke: #f5b301; stroke-width: 1.5; stroke-linejoin: round; transition: fill .12s; }
.ogw-star.is-on svg { fill: #f5b301; }
.ogw-star:focus-visible { outline: 2px solid var(--ast-global-color-0); outline-offset: 2px; border-radius: 4px; }
.ogw-review-bad .gform_wrapper { width: 100%; max-width: 560px; }
.ogw-review-good, .ogw-review-bad { scroll-margin-top: 90px; }


/* Symptoms & Modalities mega menu (menu item 3085). Modeled on the NJHW build.
   Three columns by two rows, "New patient?" card pinned in a right rail. */
.ogw-mm-ico{width:17px;height:17px;flex:0 0 auto;display:inline-block}
.ogw-mm-cta{display:none}
.ast-desktop .menu-item-3085 .astra-megamenu{
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr)) 230px;column-gap:28px;row-gap:6px;padding:10px 24px 20px!important
}
.ast-desktop .menu-item-3085 .astra-megamenu > .menu-item{width:auto!important;padding:0}
.ast-desktop .menu-item-3085 .astra-megamenu > .menu-item-heading > .menu-link{
  text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:600;color:var(--ast-global-color-2);
  border-top:3px solid var(--ast-global-color-6);padding:11px 0 4px;display:flex;align-items:center;gap:7px;pointer-events:none
}
.ast-desktop .menu-item-3085 .astra-megamenu > .menu-item-heading > .menu-link .ogw-mm-ico{color:var(--ast-global-color-0)}
.ast-desktop .menu-item-3085 .astra-megamenu .sub-menu .menu-link{font-size:14px;line-height:1.5;padding:5px 0;color:var(--ast-global-color-3)}
.ast-desktop .menu-item-3085 .astra-megamenu .sub-menu .menu-link:hover{color:var(--ast-global-color-0)}
.ast-desktop .menu-item-3085 .astra-megamenu > .ogw-mm-cta{display:block;grid-column:4;grid-row:1 / span 2;align-self:start;margin-top:11px}
.ogw-mm-cta > .menu-link{padding:0!important;display:block}
.ogw-mm-cta .ogw-cta-card{display:block;background:var(--ast-global-color-0);border-radius:10px;padding:18px}
.ogw-mm-cta .ogw-cta-title{display:block;color:var(--ast-global-color-5);font-size:16px;font-weight:600;margin:0 0 6px}
.ogw-mm-cta .ogw-cta-text{display:block;color:var(--ast-global-color-5);opacity:.9;font-size:13px;line-height:1.5;margin:0 0 14px}
.ogw-mm-cta .ogw-cta-btn{display:inline-block;background:var(--ast-global-color-5);color:var(--ast-global-color-0);font-size:13px;font-weight:600;padding:8px 16px;border-radius:6px}
.ogw-mm-cta > .menu-link:hover .ogw-cta-btn{background:var(--ast-global-color-4)}

/* Mobile action bar (Site Builder layout "Mobile Action Bar", wp_footer, mobile only).
   Colors and padding live in Spectra; this only pins it and splits the row evenly. */
.ogw-mobile-bar{position:fixed!important;left:0;right:0;bottom:0;z-index:998;box-shadow:0 -2px 10px rgba(0,0,0,.15);padding-bottom:env(safe-area-inset-bottom)}
.ogw-mobile-bar .uagb-buttons__wrap{display:flex;width:100%}
.ogw-mobile-bar .uagb-buttons__wrap > .wp-block-uagb-buttons-child{flex:1 1 0;min-width:0}
.ogw-mobile-bar .uagb-buttons-repeater{width:100%;justify-content:center}
@media (max-width:544px){body{padding-bottom:calc(52px + env(safe-area-inset-bottom))}}

/* Hero subheading drop shadow. Spectra's Advanced Heading only offers a shadow
   on the title, so this matches the title's setting (0 0 10px, global color 8). */
.ogw-hero .wp-block-uagb-advanced-heading .uagb-desc-text{text-shadow:0 0 10px var(--ast-global-color-8)}

/* Lists inside Spectra containers: Spectra forces width:100% on container children
   while the list keeps its left margin, which pushed lists 10-20px past the screen
   edge on phones. Cap the width at the space actually available. */
.wp-block-uagb-container .wp-block-list{max-width:-webkit-fill-available;max-width:-moz-available;max-width:stretch}
.ogw-star, .ogw-star:hover, .ogw-star:focus, .ogw-star:active { background: none !important; box-shadow: none !important; color: inherit; }
.ogw-review-badges > .wp-block-uagb-image { width: auto !important; flex: 0 0 auto; }
.ogw-review-badges img { max-width: 180px; height: auto; }
