/**
Theme Name: AWD Child
Author: Austin Web & Design
Author URI: https://austinwebanddesign.com/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: awd-child
Template: astra
*/

/* ===========================
   Container
=========================== */
html, body { overflow-x: clip; }

/* ===========================
   Header
=========================== */
#ast-desktop-header .site-branding.ast-site-identity { padding-top: 25px; padding-bottom: 22px; }
#ast-desktop-header .ast-icon.icon-arrow { display: none; }
#masthead .ast-header-sticked .site-logo-img .astra-logo-svg { object-fit: contain; }
#menu-toggle-close { border: 1px solid transparent; }
#ast-mobile-popup-wrapper .ast-builder-menu-mobile .main-navigation .menu-item.menu-item-has-children > .ast-menu-toggle { top: 0; right: calc(20px - 0.907em); height: 50px; }

/* 922px–1540px: tighten menu spacing so items don't wrap */
@media (max-width:1540px) and (min-width:1201px) {
   .ast-desktop .main-header-menu > .menu-item > .menu-link { padding-inline: clamp(6px, 0.7vw, 12px); }
   .ast-desktop .main-header-menu > .menu-item { margin-inline: clamp(4px, 0.5vw, 10px); }
   .ast-desktop .main-header-menu { gap: clamp(6px, .8vw, 14px); }
   #masthead .ast-container { padding-left: 20px; padding-right: 20px; }
}

/* As it gets tighter (<=1100px), compress just a bit more */
@media (max-width:1100px) and (min-width:923px) {
   .ast-desktop .main-header-menu > .menu-item > .menu-link { padding-inline: 6px; }
   .ast-desktop .main-header-menu > .menu-item { margin-inline: 6px; }
   .ast-desktop .main-header-menu .menu-link { font-size: 0.95rem; }
}

/* ===========================
 Typography
=========================== */
h1, .entry-content:where(h1) { letter-spacing: -.05em; }
h2, .entry-content:where(h2), h3, .entry-content:where(h3) { letter-spacing: -.04em; }
h1>strong, h2>strong, h3>strong, h4>strong, h5>strong, h6>strong { font-weight: 400; }
h1.ast-advanced-headers-title { font-size: 68px; }

/* ===========================
 Blog Post Typography
=========================== */
.single-post .entry-content:where(h2, h3, h4, h5) { font-weight: 300; line-height: 1.25; margin-top: 2.5rem; margin-bottom: 1.25rem; letter-spacing: -.02em; color: #222; }
.single-post .entry-content:where(h2) { font-size: 30px; font-weight: 300; margin-top: 1.25rem; margin-bottom: 1rem; letter-spacing: -.05em; }
.single-post .entry-content:where(h3) { font-size: 26px; font-weight: 300; margin-top: 1.25rem; margin-bottom: 1rem; letter-spacing: -.04em; }
.single-post .entry-content:where(h4) { font-size: 24px; margin-top: 1.25rem; margin-bottom: 1rem; letter-spacing: -.04em; }
.single-post .entry-content:where(h5) { font-size: 20px; margin-top: 1.25rem; margin-bottom: .8rem; letter-spacing: -.04em; text-transform: uppercase; }

/* ===========================
 Page Banners
=========================== */
.hero-banner { position: relative; overflow: hidden; }
.hero-banner::after { position: absolute; z-index: 1; right: 0; bottom: 0; left: 0; height: 33%; content: ''; pointer-events: none; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #032316 85%); }
.hero-banner .wp-block-uagb-advanced-heading .uagb-desc-text { text-shadow: 4px 3px 10px var(--ast-global-color-8); }

/* ===========================
 Word Accents
=========================== */
.text-overlay::before { font-family: 'Fraunces', serif; font-weight: 300; font-style: italic; line-height: 1; position: absolute; z-index: 2; user-select: none; letter-spacing: -.1em; pointer-events: none; color: rgba(255, 255, 255, .3); mix-blend-mode: soft-light; }
.text-wildly::before { font-size: clamp(80px, 20vw, 324px); bottom: 6vw; left: 3vw; content: 'Wildly...'; }
.text-welcome::before { font-size: clamp(80px, 16vw, 260px); top: 14%; right: -8%; content: 'Welcome'; }
.text-bespoke::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Bespoke'; }
.text-relaxing::before { font-size: clamp(80px, 16vw, 260px); top: -1%; right: 5%; content: 'Relaxing'; }
.text-explore::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Explore'; }
.text-cottage::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Cottage'; }
.text-unforgettable::before { font-size: clamp(80px, 20vw, 292px); bottom: -15px; right: 1%; content: 'Unforgettable'; }
.text-conservation::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 0px; content: 'Conservation'; }
.text-habitat::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Habitat'; }
.text-ido::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Say "I Do"'; }
.text-collaborate::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Collaborate'; }
.text-retreats::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Retreats'; }
.text-reconnect::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Reconnect'; }
.text-adventurous::before { font-size: clamp(80px, 20vw, 292px); top: 0; left: 10%; content: 'Adventurous'; }
.text-inspired::before { font-size: clamp(80px, 16vw, 260px); top: 9%; right: 5%; content: 'Inspired'; }
.text-gather::before { font-size: clamp(80px, 20vw, 292px); bottom: -15px; right: 1%; content: 'Gather'; }
@media screen and (max-width:1024px) {
   .text-unforgettable::before { font-size: clamp(80px, 17vw, 192px); bottom: 2%; right: 2%; }
   .text-conservation::before { font-size: clamp(80px, 20vw, 292px); top: 15%; left: 1%; }
   .text-adventurous::before { font-size: clamp(80px, 14vw, 132px); top: -2%; left: unset; right: 2%; }
   .text-gather::before { font-size: clamp(80px, 19vw, 170px); bottom: -1%; right: 1%; }
   .text-ido::before { font-size: clamp(80px, 20vw, 176px); top: 0; left: 1%; }
   .text-collaborate::before { font-size: clamp(80px, 18vw, 170px); top: 2%; left: 2%; }
   .text-reconnect::before { font-size: clamp(80px, 17vw, 192px); top: 0; left: 10%; }
}
@media screen and (max-width:768px) {
   .text-relaxing::before { top: 1%; right: 2%; }
   .text-explore::before { top: 0; left: 1%; }
   .text-unforgettable::before { bottom: 7%; right: 4%; }
   .text-adventurous::before { font-size: clamp(80px, 14vw, 86px); }
}

/* ===========================
News & Blog
=========================== */
#secondary .uagb-taxomony-box:hover { background: var(--ast-global-color-1); }
#secondary .uagb-taxomony-box:hover .uagb-tax-title { color: #fff; }
@media screen and (min-width:769px) and (max-width:1200px) {
   .blog-layout-3 .post-content { padding-left: 2em; }
}
@media screen and (max-width:1200px) {
   .ast-left-sidebar #primary { margin-top: 75px; margin-bottom: 75px; }
}
@media screen and (max-width:768px) {
   .ast-left-sidebar #primary { margin-bottom: 0; }
   .ast-left-sidebar #primary .blog-layout-3 { gap: 25px; }
}
.archive .ast-article-post .ast-article-inner, .blog .ast-article-post .ast-article-inner, .archive .ast-article-post .ast-article-inner:hover, .blog .ast-article-post .ast-article-inner:hover { overflow: hidden; }

/* ===========================
 Utility Lists
=========================== */
@media screen and (min-width:481px) {
   .entry-content ul.two-column-list, .entry-content  ol.two-column-list { column-count: 2; padding-left: 20px; }
   .entry-content ul.three-column-list, .entry-content  ol.three-column-list { column-count: 3; padding-left: 20px; }
   .entry-content ul.four-column-list, .entry-content ol.four-column-list { column-count: 4; padding-left: 20px; }
   .entry-content ul.five-column-list, .entry-content ol.five-column-list { column-count: 5; padding-left: 20px; }
}
ul.two-column-list, ul.three-column-list, ul.four-column-list, ul.five-column-list, ol.two-column-list, ol.three-column-list, ol.four-column-list, ol.five-column-list { margin: 0; padding-left: 0; list-style-position: outside; column-gap: 2rem; }
ul[class*='-column-list'] li, ol[class*='-column-list'] li { margin-bottom: .5em; break-inside: avoid; }
ul.wp-block-list.two-column-list ul.wp-block-list, ul[class*='-column-list'] ul[class*='-column-list'] { margin-top: 10px; padding-left: 20px; column-gap: .5em; }
@media screen and (max-width:978px) {
   .entry-content ul.four-column-list, .entry-content ol.four-column-list { column-count: 3; }
}
@media screen and (max-width:640px) {
   .entry-content ul.four-column-list, .entry-content ol.four-column-list, .entry-content ul.three-column-list, .entry-content  ol.three-column-list, .entry-content ul.five-column-list, .entry-content ol.five-column-list { column-count: 2; }
}
@media screen and (max-width:480px) {
   .entry-content ul.two-column-list, .entry-content  ol.two-column-list, .entry-content ul.three-column-list, .entry-content  ol.three-column-list, .entry-content ul.four-column-list, .entry-content ol.four-column-list, .entry-content ul.five-column-list, .entry-content ol.five-column-list { column-count: 1; padding-left: 1.5em; }
}

/* ===========================
 News
=========================== */
.post .entry-content ul.wp-block-list, .post .entry-content ol.wp-block-list { padding-left: 20px; margin-top: 15px; }
figure figcaption { font-size: 16px; line-height: 1.3; }

/* ===========================
 Slick Elements
=========================== */
.arr-slick-arrows, .arr-slick-arrows.wp-block-uagb-testimonial, .arr-slick-arrows .uagb-testimonial__outer-wrap, .arr-slick-arrows .slick-slider { position: relative !important; }
.arr-slick-arrows .slick-slider .uagb-tm__content { max-width: 90%; margin: 0 auto; }
.arr-slick-arrows .slick-prev::before, .arr-slick-arrows .slick-next::before { content: "" !important; }
.arr-slick-arrows .slick-arrow svg { display: none !important; }
.arr-slick-arrows .slick-slider .slick-prev, .arr-slick-arrows .slick-slider .slick-next, .arr-slick-arrows.wp-block-uagb-testimonial .slick-prev, .arr-slick-arrows.wp-block-uagb-testimonial .slick-next, .arr-slick-arrows .uagb-testimonial__outer-wrap .slick-prev, .arr-slick-arrows .uagb-testimonial__outer-wrap .slick-next { position: absolute !important; top: 50% !important; transform: translateY(-50%) !important; width: 46px !important; height: 46px !important; border: 0 !important; border-radius: 999px !important; background: rgba(255, 255, 255, 0.6) !important; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.12) !important; cursor: pointer !important; z-index: 5 !important; padding: 0 !important; text-align: center !important; line-height: 0 !important; }
#primary .arr-slick-arrows .slick-prev { left: -10px; padding-left: 5px !important; }
#primary .arr-slick-arrows .slick-next { right: -10px; padding-right: 5px !important; }
.arr-slick-arrows .slick-prev::after, .arr-slick-arrows .slick-next::after { content: "" !important; width: 14px; height: 14px; display: block; margin: auto; border-top: 1.5px solid #000; border-left: 1.5px solid #000; }
.arr-slick-arrows .slick-prev::after { transform: rotate(-45deg); }
.arr-slick-arrows .slick-next::after { transform: rotate(135deg); }
.arr-slick-arrows .slick-prev:hover, .arr-slick-arrows .slick-prev:focus, .arr-slick-arrows .slick-next:hover, .arr-slick-arrows .slick-next:focus { background: var(--ast-global-color-1) !important; }
.arr-slick-arrows .slick-prev:hover::after, .arr-slick-arrows .slick-prev:focus-visible::after, .arr-slick-arrows .slick-next:hover::after, .arr-slick-arrows .slick-next:focus-visible::after { border-color: #fff !important; }
@media (hover:none) {
   .arr-slick-arrows .slick-prev, .arr-slick-arrows .slick-next { background: rgba(255, 255, 255, 0.7) !important; }
}

/* ===========================
 Testimonials Spectra
=========================== */
.wp-block-uagb-testimonial.arr-slick-arrows { background: var(--ast-global-color-0); }

/* ===========================
 Experience Info boxes
=========================== */
.experience-box .uagb-ifb-image-content img { aspect-ratio: 1 / 1; object-fit: cover; height: auto; }
.experience-box .uagb-ifb-title { text-align: center; }
.experience-box  .uagb-ifb-content .uagb-ifb-title-wrap, .experience-box .uagb-ifb-content .uagb-ifb-desc { padding-left: 20px; padding-right: 20px; }
@media screen and (max-width:978px) {
   .experience-box .uagb-ifb-image-content img { aspect-ratio: 3 / 2; }
}

/* ===========================
 Buttons
=========================== */
@media screen and (min-width:977px) {
   .uagb-buttons-repeater.wp-block-button__link, .uagb-buttons-repeater.ast-outline-button { min-width: 178px; }
}

/* ===========================
 Social Links
=========================== */
.awd-social.social-shortcode { display: flex; padding: 1rem 0; justify-content: center; flex-wrap: wrap; }
.awd-social.align-left { text-align: left; justify-content: flex-start; }
.awd-social.align-center { text-align: center; justify-content: center; }
.awd-social.align-right { text-align: right; justify-content: flex-end; }
.awd-social .social-list { display: flex; margin: 0; padding: 0; list-style: none; flex-wrap: wrap; gap: 1.66rem; }
.awd-social .social-item { display: inline-flex; }
.awd-social .awd-social-icons { font-size: 38px; display: inline-flex; width: 36px; height: 36px; transition: transform .2s ease, background-color .2s ease, color .2s ease; text-decoration: none; color: var(--ast-global-color-0); border-radius: 0; background-color: transparent; align-items: center; justify-content: center; }
.awd-social .awd-social-icons:hover { transform: scale(1.1); color: var(--ast-global-color-0); background-color: transparent; }
.awd-social .awd-social-icons i { font-size: 1.25rem; line-height: 1; }
.awd-social .awd-image-icon img { display: block; width: 24px; height: 24px; object-fit: contain; }
.awd-social.social-shortcode.footer-social { padding: 0; }
.awd-social.social-shortcode.dark-theme .awd-social-icons path { fill: var(--ast-global-color-0); }
.awd-social.social-shortcode.dark-theme .awd-social-icons path { fill: var(--ast-global-color-6); }

/* ===========================
 Sticky Section Stack  (FIXED)
=========================== */

/* The wrapper should NOT isolate a new stacking context,
 and it must allow layers to paint above each other. */
.stacky-wrapper { position: relative; overflow: visible;   /* ensure sticky children may overflow */ isolation: auto;     /* was 'isolation: isolate' — remove it */ }

/* Each section pins to the top and occupies full viewport height.
 z-index starts at 1 so later siblings can stack above. */
.stacky { position: sticky; top: 0; min-height: 100vh;   /* use 100svh if you prefer on mobile address bars */ overflow: hidden; z-index: 1;          /* was 0 — this broke the layering */ background-repeat: no-repeat; background-position: center; background-size: cover; will-change: transform; /* smoother pinning on Safari/Chrome */ }

/* Layer order: later stacks sit on top of earlier ones */
.stacky:nth-child(1) { z-index: 1; }
.stacky:nth-child(2) { z-index: 2; }
.stacky:nth-child(3) { z-index: 3; }
.stacky:nth-child(4) { z-index: 4; }

/* add more if needed */

/* Mobile/tablet: disable stacking to avoid long pinned sections */
@media (max-width:992px) {
   .stacky { position: static; min-height: auto; z-index: auto; }
}

/* ===========================
 Single Post Layout
=========================== */
.single-post .site-main article.post { max-width: 1024px; margin-right: auto; margin-left: auto; padding: 50px 75px; border: 1px solid rgba(212, 222, 211, .75); }
.single-post .ast-single-related-posts-container { max-width: 1200px; margin-right: auto; margin-left: auto; padding-top: 0; padding-right: 0; padding-left: 0; }

/* ===========================
 Gravity Forms
=========================== */
.gform_wrapper { font-family: inherit; max-width: 800px; margin: 0 auto; }
.gform_wrapper.gravity-theme * .gform_required_legend { display: none; }
.gform_wrapper .gfield_label { font-size: 1rem; font-weight: 500; margin-bottom: .5rem; color: #333; }
#secondary .gform_wrapper .ginput_container_fileupload input { font-size: 14px; }
.gform_wrapper input[type='text'], .gform_wrapper input[type='email'], .gform_wrapper input[type='tel'], .gform_wrapper textarea { font-family: 'Public Sans', sans-serif; font-size: 1rem; width: 100%; min-height: 45px; padding: .75rem 1rem; transition: border-color .3s ease, box-shadow .3s ease; border: 1px solid #ccc; border-radius: 0; background-color: #f9f9f9; }
.gform_wrapper input:focus, .gform_wrapper textarea:focus { border-color: var(--ast-global-color-0); outline: none; box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .25); }
.gform_wrapper .gfield_checkbox li, .gform_wrapper .gfield_radio li { margin-bottom: .5rem; list-style: none; }
.gform_wrapper input[type="checkbox"], .gform_wrapper input[type="radio"] { position: relative; width: 1.2rem; height: 1.2rem; cursor: pointer; transition: background-color 0.3s ease, border-color 0.3s ease; border: 2px solid #ccc; border-radius: 0; background-color: #fff; appearance: none; }
.gform_wrapper input[type="radio"] { border-radius: 50%; }
.gform_wrapper input[type='checkbox']:checked, .gform_wrapper input[type='radio']:checked { border-color: var(--ast-global-color-0); background-color: var(--ast-global-color-0); }
.gform_wrapper input[type='checkbox']:checked::after { position: absolute; top: .2rem; left: .4rem; width: .25rem; height: .6rem; content: ''; transform: rotate(45deg); border: solid #fff; border-width: 0 .2rem .2rem 0; }
.gform_wrapper .gform_footer input[type='submit'] { font-size: 1rem; min-width: 200px; padding: 16px 25px; cursor: pointer; transition: background-color .3s ease; color: #fff; border: none; border-radius: 0; background-color: var(--ast-global-color-0); }
.gform_wrapper .gform_footer input[type='submit']:hover { background-color: #000; }
h3.gsection_title { font-size: 24px; }
.gform_fields > .gfield--type-section.gsection ~ .gfield--type-section.gsection { margin-top: 1.2rem; }

/* ===========================
 Contact Info Shortcode
=========================== */
.contact-info { margin-top: 10px; margin-bottom: 15px; }
.contact-info-item { font-size: 24px; line-height: 1.5; }
.contact-info.dark-theme a { color: var(--ast-global-color-6); }
@media screen and (max-width:978px) {
   .entry-content .contact-info.contact-info--stacked { text-align: center; }
}

/* ===========================
 Footer
=========================== */
.site-footer p:empty { display: none; }
.site-primary-footer-wrap ul.menu li:not(:last-child) { padding-bottom: 22px; }
.site-below-footer-wrap ul.menu { display: flex; gap: 1em; }
@media screen and (max-width:1200px) {
   .site-footer-primary-section-1 { order: 2; }
   .site-footer-primary-section-2 { order: 1; padding-bottom: 45px; }
   .site-footer-primary-section-3 { order: 3; }
}

/* .site-footer-primary-section-3 .uagb-buttons__wrap.uagb-buttons-layout-wrap { justify-content: center; } */
.site-below-footer-wrap ul.menu { justify-content: center; }

/* ===========================
 Media Queries
=========================== */
@media screen and (max-width:978px) {
   .uagb-heading-text br, .uagb-desc-text br { display: none; }
   .uagb-heading-text mark.uagb-highlight { display: block; }
}
@media screen and (max-width:768px) {
   .entry-content h1.uagb-heading-text { font-size: clamp(28px, 9vw, 70px); line-height: 1.1; word-break: keep-all; hyphens: auto; }
}
@media screen and (max-width:480px) {
   #ast-mobile-header .site-branding.ast-site-identity .custom-logo { max-width: 230px; width: 100%; }
   .entry-content h1.uagb-heading-text { font-size: clamp(30px, 9vw, 45px); }
}
