/*
Theme Name: OnePress Child
Theme URI: https://www.famethemes.com/themes/onepress/
Author: FameThemes
Author URI: http://www.famethemes.com
Description: OnePress is an outstanding creative and flexible WordPress one page theme well suited for business website, portfolio, digital agency, product showcase, freelancers and everyone else who appreciate good design. The theme overall is an elegant and classic one, a fine example of Bootstrap 4 WordPress theme which compatibility with latest version of WooCommerce. (Live preview : https://demos.famethemes.com/onepress)
Version: 10.9.25
Template:     onepress-hammersmith
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: onepress
*/
/* prm-speed-20260918: the Google Fonts @import moved to a real enqueue in functions.php
   (an @import here is only discovered after this file downloads, so it blocked render twice). */
@font-face {
    font-family: 'Moonstone'; /*a name to be used later*/
    src: url('./fonts/Moonstone-Regular.woff'); /*URL to font*/
    font-display: swap; /* prm-speed-20260918 */
}
.moonstone-font{
  font-family: 'Moonstone' !important
}
body{
  font-size: 18px; font-weight: 400; line-height: 1.8
}
.onepress-menu a, h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6{
  font-family: "Fira Sans", sans-serif;
}
h1, h2, h3, h4, h5, h6{
  font-weight: bold; line-height: 1.2;
}
h1, .h1{
  font-size: 3.4rem;
}
h2, .h2{
  font-size: 3rem;
}
h3, .h3{
  font-size: 2.2rem;
}
.lh-14{
    line-height: 1.4
}
h4, .h4{
  font-size: 1.7rem
}
body, button, select, input, textarea{
  font-family: "DM Sans", sans-serif;
}
.breadcrumbs{
  display: none;
}
#page{
  overflow-x: hidden;
}
.onepress-menu a{
  letter-spacing: 0;
  text-transform: none;
}
#primary{
	padding-top: 0; padding-bottom: 0;
}
.entry-content{
	margin-bottom: 0;
}
#masthead{
  padding: 15px 0
}
.site-branding .no-logo-img.has-desc, .site-branding .has-logo-img, .site-header{
  line-height: unset;
}
#masthead > .container{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
#masthead > .container > div{
  flex: 1;
}
#masthead > .container > div.site-branding{
  max-width: 200px;
  float: none;
}
.header-right-wrapper{
  text-align: right;
}
.onepress-menu{
  float: none;
  text-align: right;
  display: inline-block;
}
.onepress-menu ul, .onepress-menu li{
  text-align: left
}
.onepress-menu > li{
  float: none;
  display: inline-block;
}
.container{
  width: 100%; max-width: 1350px;
}
#masthead .container{
  width: 100%; max-width: 100%; padding: 0 30px;
}
.header-right-wrapper{
  text-align: center;
}
#masthead .top-right ul, #text-4 ul{
  padding: 0; margin: 0; display: flex; gap: 15px;
}
#masthead .top-right ul li, #text-4 ul li{
  list-style-type: none;
}
#masthead .top-right ul a, #text-4 ul a{
  padding: 10px 20px;
  border-radius: 5px;
  color: #fff !important;
  background: #14909E;
  font-family: "DM Sans", sans-serif;
  font-weight: bold; letter-spacing: 1px; font-size: 20px;
  text-decoration: none;
}
#masthead .top-right ul li:first-child a, #text-4 ul li:first-child a{
  background: #B52024
}
#masthead .top-right ul li.search-container{
  position: relative;
}
#masthead .top-right ul li.search-container form{
  display: none; position: absolute;
  top: 0; right: 0;
  background: #fff; padding: 10px;
  border-radius: 5px;
}
#masthead .container{
  gap: 30px;
}
#masthead .top-right{
  max-width: 380px;
}
#masthead .onepress-menu{
  text-align: center;
}
#page #mega-menu-wrap-primary{
  background: transparent
}
#page #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link{
  color: #29120A !important;
  font-family: "DM Sans", sans-serif;
  font-weight: bold;
  font-size: 20px;
}
#page #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator{
  color: #F3713E
}
#page #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item{
  padding: 0 10px
}
#masthead .search-container span{
  font-size: 20px;
  position: relative;
  top: 6px;
  padding: 0 10px;
}


/* bh284-hero-sizes: homepage hero - Welcome title bigger, "A pathway" tagline smaller (BugHerd #284) */
/* bh304-hero-title: Welcome title much larger than the tagline, may wrap to 2 lines (BugHerd #304, Ken 8/25) */
.homepage-banner h1.moonstone-font { font-size: 6.5rem; line-height: 1.05; }
.homepage-banner h1.this-area { font-size: 2.6rem; }
@media (max-width: 900px) {
	.homepage-banner h1.moonstone-font { font-size: 4.75rem; }
	.homepage-banner h1.this-area { font-size: 2.3rem; }
}
@media (max-width: 767px) {
	.homepage-banner h1.moonstone-font { font-size: 3.4rem; }
	.homepage-banner h1.this-area { font-size: 1.85rem; }
}

/* bh414-hero-break: desktop shows "Welcome to" / "Phoenix Rescue Mission" on two lines via the line break in the heading; hide that break at tablet/mobile so those widths wrap exactly as before (BugHerd #414) */
@media (max-width: 900px) {
	.homepage-banner h1.moonstone-font br { display: none; }
}

/* bh416-contact-anchor: "Partner With Us" buttons on the partnership pages jump to the Start a Conversation form (#contact-form); offset keeps the landing spot clear of the fixed header (BugHerd #416-#419) */
#contact-form { scroll-margin-top: 160px; }
@media (max-width: 1024px) {
	#contact-form { scroll-margin-top: 140px; }
}

/* bh415-volunteer-fade: /get-involved/volunteer "Volunteering with a Group" - the group photo in the left column ended in a hard vertical edge against the cityscape background; fade its right 30% out so it dissolves into the city behind the text. Desktop/tablet only - on phones the columns stack (BugHerd #415) */
@media (min-width: 768px) {
	.kb-row-layout-id28738_29a0d5-c2 .kadence-column28738_fa3bec-7d .cover-column-image {
		-webkit-mask-image: linear-gradient(to right, #000 70%, transparent 100%);
		mask-image: linear-gradient(to right, #000 70%, transparent 100%);
	}
}

/* bh352-bird-fade: fade the PRM bird behind body copy so grey text stays readable, site-wide (BugHerd #352) */
.our-mission::before { opacity: 0.35; }

/* bh375-headshots: keep heads inside the square team thumbnails (BugHerd #375) */
.team-grid .thumbnail.square img { object-position: 50% 12%; }

/* prm-speed-r2-pixels: GTM appends 1x1 tracking pixels (StackAdapt, w55c) straight into <body>, after the footer. As inline images they opened a 32-36px blank strip under the footer on every page, and showed a broken-image icon whenever a pixel failed to load. Taken out of the flow here; they still load and fire. */
body > img {
	position: absolute !important;
	top: 0;
	left: 0;
	width: 1px !important;
	height: 1px !important;
	opacity: 0;
	pointer-events: none;
}

/* ===== prm-qa-notes START (Amanda's QA Notes card, Sep 2026; each rule tagged with its QA row) ===== */

/* qa#4 main navigation on one line: between the hamburger breakpoint (1220) and 1700 the five items
   plus the two header buttons did not fit (1440: 799px needed / 795px box; 1221: 699 / 576). */
@media (min-width: 1221px) and (max-width: 1700px) {
	body #masthead .container { gap: 20px; }
	body #masthead .top-right { max-width: 325px; }
	body #page #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item { padding: 0; }
	body #page #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { font-size: 16px; padding-left: 8px; padding-right: 8px; }
	body #page #mega-menu-wrap-primary #mega-menu-primary li.mega-menu-item-has-children > a.mega-menu-link > span.mega-indicator { margin-left: 4px; }
	body #masthead .top-right ul a { font-size: 16px; }
}
@media (min-width: 1221px) and (max-width: 1400px) {
	body #masthead .top-right { flex: 0 0 auto; max-width: none; }
	body #masthead .top-right ul { gap: 10px; }
	body #masthead .top-right ul a { font-size: 15px; padding: 10px 14px; letter-spacing: .5px; }
	body #page #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { font-size: 15px; padding-left: 6px; padding-right: 6px; }
}

/* qa#45 phones: Donate + Get Help were hidden outright below 768px. Show the same header buttons
   pinned near the bottom of the open menu panel (no duplicate links). */
@media (max-width: 767px) {
	body #masthead .header-right-wrapper:has(#nav-toggle.nav-is-visible) ~ .top-right {
		position: fixed; left: 30px; right: 30px; bottom: 96px; z-index: 10000001; max-width: none;
	}
	body #masthead .header-right-wrapper:has(#nav-toggle.nav-is-visible) ~ .top-right ul { display: flex; gap: 12px; justify-content: stretch; }
	body #masthead .header-right-wrapper:has(#nav-toggle.nav-is-visible) ~ .top-right ul li:not(:last-child) { display: block; flex: 1 1 0; }
	body #masthead .header-right-wrapper:has(#nav-toggle.nav-is-visible) ~ .top-right ul li.search-container { display: none; }
	body #masthead .header-right-wrapper:has(#nav-toggle.nav-is-visible) ~ .top-right ul a { display: block; text-align: center; font-size: 16px; padding: 12px 10px; }
	body .onepress-menu.onepress-menu-mobile { padding-bottom: 190px; overflow-y: auto; }
}

/* qa#44 entrance animations faster (1s + 100-500ms stagger was lagging behind scrolling). */
body { --animate-duration: .6s; }
body .animated.delay-100ms { animation-delay: .05s; }
body .animated.delay-200ms { animation-delay: .1s; }
body .animated.delay-500ms { animation-delay: .2s; }
/* qa#44b the per-block custom delays (300ms x12, 400ms x2 across the site) halved on desktop like the stagger above */
body .o-anim-custom-delay.o-anim-value-delay-300ms { animation-delay: .15s !important; }
body .o-anim-custom-delay.o-anim-value-delay-400ms { animation-delay: .2s !important; }
@media (max-width: 1024px) {
	body { --animate-duration: .45s; }
	body .animated.delay-100ms, body .animated.delay-200ms, body .animated.delay-500ms, body .animated.o-anim-custom-delay { animation-delay: 0s !important; }
}

/* qa#10 404 page: the AddToAny share bar rendered a second row of social icons under the content. */
body.error404 .a2a_kit { display: none !important; }

/* qa#17 qa#51 roadmap step badges: centred on the first text line (was 5px low); step 1 centred on phones
   like steps 2-4 (its content sits in an extra flex group). */
body #page .wholeness-journey > div > div p:before { top: -2px; }
body .wholeness-journey .kadence-column28819_f362d3-f8 > .kt-inside-inner-col > .wp-block-group { justify-content: center; }

/* qa#19 qa#57 stories carousel next arrow at the right edge instead of mid-track (the tablet/phone rule
   meant to move it had a typo, "cacl(", so it never applied). */
body #page .stories-slider .slick-next { left: auto; right: 10px; }
@media (max-width: 1350px) {
	body #page .stories-slider .slick-next { right: auto; left: calc(100vw - 145px); }
}
@media (max-width: 900px) {
	body #page .stories-slider .slick-next { left: calc(100vw - 95px); }
}

/* qa#25 Stories of Hope hero: text was centred in a 900px banner below a 100px top pad, so on first view
   it sat in the lower part of the screen. Centre it in the visible first screen. */
body .kb-row-layout-id28730_d0e63e-16 > .kt-row-column-wrap { padding-top: 0; min-height: min(900px, calc(100vh - 120px)); }

/* qa#46 homepage phones: empty spacer paragraph under "Learn more about our programs" hidden. */
@media (max-width: 767px) {
	body .entry-content .prm-hide-mobile { display: none; }
}

/* qa#47 Contact: "Mission Support Center" on one line once the location cards stack (<=1024); the break stays in the
   three-across desktop row, where the two neighbouring headings wrap to two lines anyway. */
@media (max-width: 1024px) {
	body.page-id-21 .entry-content h4 br { display: none; }
}

/* qa#48 qa#56 qa-r2-wwd What We Do "Help is Just a Moment Away": Amanda round 2 asked to drop the
   right-hand fade on tablet and show the photo in full with no cut/line in the middle, so the tablet
   mask is removed (the photo now fills the column like it does on desktop). Phones keep the softened
   top edge below, which she accepted. */
@media (min-width: 768px) and (max-width: 1439px) {
	body .kb-row-layout-id19_425312-fd .kadence-column19_ad368f-2b img {
		-webkit-mask-image: none !important;
		mask-image: none !important;
	}
}
@media (max-width: 767px) {
	body .kb-row-layout-id19_425312-fd .kadence-column19_ad368f-2b img {
		object-position: 50% 0;
		-webkit-mask-image: linear-gradient(to bottom, transparent 0, #000 12%);
		mask-image: linear-gradient(to bottom, transparent 0, #000 12%);
	}
}

/* qa#55 What We Do stat circles: numbers on one line (1,343 / 6,702 / 4.9M+ / 20,088 wrapped at tablet). */
body .light-teal-circle-number, body .light-orange-circle-number, body .teal-circle-number { white-space: nowrap; }
@media (min-width: 768px) and (max-width: 1200px) {
	body .entry-content p.light-teal-circle-number, body .entry-content p.light-orange-circle-number, body .entry-content p.teal-circle-number { font-size: 34px !important; }
}

/* qa#49 qa#60 qa-r3-heroes qa-r4-grad Residential Recovery + Church Partnership heroes on phones and tablets (<=1024).
   Round 4 (Analyn 09-22, "reduce the gradient at the top"): on tablets the overlay now starts at .3 and only
   reaches its full value by 20% of the row, so the top of the photo reads clearly while the band behind the
   heading and paragraph stays as dark as before. Phone overlay (<=767) unchanged.
   Round 3 (Analyn 09-21): keep the desktop layout (photo behind the text) and only move the focus - the
   band-below treatment from rounds 1-2 is gone. Tablets: cover, positioned so every person is in frame
   (RR both men at 50%, Church all four women at 100%), with a top-down dark overlay because the text
   spans the full width here. Phones: a cover crop cannot hold everyone (RR faces span 42% of the frame
   against a 38% window), so per Analyn's "zoom them out a bit" the photo is shown smaller than the row,
   bottom-aligned on black behind the paragraph, with the heading on solid black above. Church keeps its
   single text column and the empty desktop column stays hidden (unchanged from qa#60). */
@media (max-width: 1024px) {
	body .kb-row-layout-id28819_7108a9-ea { background-color: #000 !important; background-size: cover !important; background-position: 50% 50% !important; }
	body .kb-row-layout-id28819_7108a9-ea > .kt-row-column-wrap { padding-bottom: 40px; min-height: 0; }
	body .kb-row-layout-id28819_7108a9-ea > .kt-row-layout-overlay {
		background-image: linear-gradient(180deg, rgba(0, 0, 0, .3) 0%, rgba(0, 0, 0, .6) 20%, rgba(0, 0, 0, .6) 45%, rgba(0, 0, 0, .45) 100%) !important; opacity: 1 !important;
	}
	body .kb-row-layout-id28743_776850-9c { background-color: #000 !important; background-size: cover !important; background-position: 100% 50% !important; }
	body .kb-row-layout-id28743_776850-9c > .kt-row-column-wrap { grid-template-columns: minmax(0, 1fr) !important; padding-bottom: 40px; }
	body .kb-row-layout-id28743_776850-9c > .kt-row-column-wrap > .kadence-column28743_d5cc13-47 { display: none; }
	body .kb-row-layout-id28743_776850-9c > .kt-row-layout-overlay {
		background-image: linear-gradient(180deg, rgba(0, 0, 0, .3) 0%, rgba(0, 0, 0, .55) 20%, rgba(0, 0, 0, .55) 45%, rgba(0, 0, 0, .3) 100%) !important; opacity: 1 !important;
	}
}
@media (min-width: 768px) and (max-width: 1024px) {
	body .kb-row-layout-id28743_776850-9c > .kt-row-column-wrap { padding-top: 60px; }
}
@media (max-width: 767px) {
	body .kb-row-layout-id28819_7108a9-ea { background-size: 125% auto !important; background-position: 55% 100% !important; }
	body .kb-row-layout-id28743_776850-9c { background-size: 165% auto !important; background-position: 100% 100% !important; }
	body .kb-row-layout-id28819_7108a9-ea > .kt-row-layout-overlay,
	body .kb-row-layout-id28743_776850-9c > .kt-row-layout-overlay {
		background-image: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, .9) 40%, rgba(0, 0, 0, .35) 60%, rgba(0, 0, 0, .35) 100%) !important;
	}
}

/* qa#50 curly decorative arrows on phones: smaller and tucked into the margin so they no longer cover text. */
@media (max-width: 767px) {
	body .curly-arrow-left:before { width: 44px !important; height: 44px !important; left: -30px !important; }
}

/* qa#52 qa#53 Food Assistance "Volunteer Opportunities" on phones: dark gradient behind the text, and the
   volunteer photo larger and pulled up under the buttons (the PNG has ~19% empty space on top). */
@media (max-width: 767px) {
	body .kb-row-layout-id28749_0bd0bb-89 > .kt-row-layout-overlay {
		background-image: linear-gradient(180deg, rgba(0, 0, 0, .85) 0%, rgba(0, 0, 0, .7) 55%, rgba(0, 0, 0, .35) 100%) !important; opacity: 1 !important;
	}
	body .kb-row-layout-id28749_0bd0bb-89 .kadence-column28749_1c3660-c7 figure { margin: -70px -25px 0 !important; }
	body .kb-row-layout-id28749_0bd0bb-89 .kadence-column28749_1c3660-c7 img { width: 100%; }
}

/* qa#54 Code:Red story slider on phones: 645px tall (76% of the screen); tighter slide text. */
@media (max-width: 767px) {
	body .kb-advanced-slider-29314_ce088a-d1 .kb-advanced-slide-inner p { font-size: 15px; line-height: 1.55; margin-bottom: .6em; }
}

/* qa#58 qa-r2-vol Volunteer "Volunteering with a Group" on tablet: keep the black gradient behind the
   text only (Amanda round 2: keep it "in the red box" so the people stay clear). Solid at the right
   edge, fully clear by the halfway point so all three volunteers read cleanly. */
@media (max-width: 1024px) {
	body .kb-row-layout-id28738_29a0d5-c2 > .kt-row-layout-overlay {
		background-image: linear-gradient(270deg, #000 0%, #000 28%, rgba(0, 0, 0, .55) 38%, rgba(0, 0, 0, 0) 50%) !important;
	}
}

/* qa#59 Volunteer page on tablet: tighter vertical spacing (spacers capped, hero bottom padding cut). */
@media (min-width: 768px) and (max-width: 1024px) {
	body.page-id-28738 .entry-content .wp-block-spacer { max-height: 30px; }
	body .kb-row-layout-id28738_1b377a-bf > .kt-row-column-wrap { padding-bottom: 60px; }
}

/* qa#57b tablet "visible line before the footer": on 1.5x / 2.625x screens the repeated mountain silhouette
   painted a hairline along its top edge (tile-edge sampling; 1x/2x/3x never show it). Same mountains and bottom
   line; the box now starts 3px below the image's transparent top so that edge is never painted. */
body:not(.hide-newsletter-signup) #page #colophon::before {
	top: auto; bottom: calc(100% - 4px); height: 0; padding-top: calc(9.7427% - 1px); background-position: 50% calc(100% - 2px);
}

/* qa#61 qa-r2-lg Legacy Giving hero on phones and tablets (<=1024): the child was cropped out of the
   banner by the desktop cover fill (Amanda round 2: this banner image was "not yet reflected"). On
   narrow screens the image is now positioned on the child so she shows clearly beside the text, with a
   top-down dark overlay keeping the heading readable. (The card below floats up -200px, so a photo
   band under the text would be hidden - positioning the cover is the reliable fix here.) */
@media (max-width: 1024px) {
	body .kb-row-layout-id29253_b03883-9e {
		background-size: cover !important; background-position: 76% 42% !important;
	}
	body .kb-row-layout-id29253_b03883-9e > .kt-row-column-wrap {
		grid-template-columns: minmax(0, 1fr) !important;
	}
	body .kb-row-layout-id29253_b03883-9e > .kt-row-column-wrap > .kadence-column29253_e7d616-56 { display: none !important; }
	body .kb-row-layout-id29253_b03883-9e > .kt-row-layout-overlay {
		background-image: linear-gradient(180deg, rgba(0, 0, 0, .85) 0%, rgba(0, 0, 0, .55) 45%, rgba(0, 0, 0, .15) 100%) !important; opacity: 1 !important;
	}
}

/* qa-r3-spot Church Partnership "Partnership Spotlight" on phones (Analyn 09-21, "lessen the spacing here as
   well", same class as the Food Assistance volunteer photo qa#52/53): the cutout PNG carries ~21% empty
   space on top and the column forces the image to its own height with object-fit, so a negative margin only
   crops it. The empty top is cropped explicitly (object-position bottom, height = opaque part), the photo
   goes full width, and the spacer under the button is dropped: heads now sit 28px under the button. */
@media (max-width: 767px) {
	body .kb-row-layout-id28743_034927-68 .kadence-column28743_cdc834-d3 > .kt-inside-inner-col { display: block !important; }
	body .kb-row-layout-id28743_034927-68 .kadence-column28743_cdc834-d3 figure { margin: 0 -25px 0 !important; width: auto !important; max-width: none !important; }
	body .kb-row-layout-id28743_034927-68 .kadence-column28743_cdc834-d3 img { width: 100% !important; height: 77.7vw !important; max-height: none !important; object-fit: cover !important; object-position: 50% 100% !important; display: block; }
	body .kb-row-layout-id28743_034927-68 .wp-block-buttons + .wp-block-spacer { display: none; }
}

/* qa-r3-corrine /hopehasarrived/ "A family reunited - Corrine's Story" testimonial carousel (Analyn 09-21):
   the Splide arrows sit 45px outside the carousel, which put them past the viewport edge below 1024. The
   carousel gets side padding so the arrows land inside the page; on phones the arrows are 40px and flush
   with the screen edge so the quote keeps as much width as possible. */
@media (max-width: 1024px) {
	body .kb-row-layout-id29878_9075fa-19 .kt-blocks-testimonials-inner-wrap.kt-blocks-carousel { padding-left: 25px; padding-right: 25px; }
}
@media (max-width: 767px) {
	body .kb-row-layout-id29878_9075fa-19 .kt-blocks-testimonials-inner-wrap.kt-blocks-carousel { padding-left: 15px; padding-right: 15px; }
	body .kb-row-layout-id29878_9075fa-19 .splide__arrow { width: 40px !important; height: 40px !important; }
	body .kb-row-layout-id29878_9075fa-19 .splide__arrow--prev { left: -40px !important; }
	body .kb-row-layout-id29878_9075fa-19 .splide__arrow--next { right: -40px !important; }
}

/* ===== prm-qa-notes END ===== */

/* bh421-rr-hero-copy Residential Recovery hero, desktop only (>=1025px). BugHerd #421: the client asked to
   move the copy down so the script word "Recovery" no longer runs across the older man's face. The row is a
   grid whose single track is centred by kt-row-valign-middle, so align-items/align-self on the column do
   nothing here - align-content moves the track. Bottom-aligning it and setting the bottom padding puts the
   copy at 250px from the top of the row (was 145px), which clears his chin. The row keeps its 800px
   min-height, so the background crop, the section height and everything below are unchanged. Held at
   >=1200px on purpose: from 1025 to 1199 the heading wraps to more lines and already fills the row, so
   there is no slack to move the copy into and the bottom padding would only shorten the banner. Those
   widths and the <=1024 tablet / phone rules for this same hero (qa-r3-heroes / qa-r4-grad above) are
   deliberately left exactly as they were. */
@media (min-width: 1200px) {
	body .kb-row-layout-id28819_7108a9-ea > .kt-row-column-wrap { align-content: end; padding-bottom: 40px; }
}

/* lap-1030 (Monday 13421607405): laptop widths 1025-1409px. These full-width banners (and two text bands) cap their content at
   1350px with no side padding, so below ~1380px the heading and text ran into the screen edge (tablet already gets
   25px from Kadence). Keep the same 1350px container but always leave a 30px gutter, matching the header logo. */
@media (min-width: 1025px) {
	body .kb-row-layout-id20_28eab6-33 > .kt-row-column-wrap,
	body .kb-row-layout-id25_16c8fd-b1 > .kt-row-column-wrap,
	body .kb-row-layout-id25_37bca0-c7 > .kt-row-column-wrap,
	body .kb-row-layout-id26_38852b-3f > .kt-row-column-wrap,
	body .kb-row-layout-id26_b68f8d-25 > .kt-row-column-wrap,
	body .kb-row-layout-id28733_be5115-5c > .kt-row-column-wrap,
	body .kb-row-layout-id28734_0daf7d-7e > .kt-row-column-wrap,
	body .kb-row-layout-id28737_5833e8-97 > .kt-row-column-wrap,
	body .kb-row-layout-id28738_1b377a-bf > .kt-row-column-wrap,
	body .kb-row-layout-id28743_776850-9c > .kt-row-column-wrap,
	body .kb-row-layout-id28749_26069e-dc > .kt-row-column-wrap,
	body .kb-row-layout-id28753_043655-3f > .kt-row-column-wrap,
	body .kb-row-layout-id28819_7108a9-ea > .kt-row-column-wrap,
	body .kb-row-layout-id29253_b03883-9e > .kt-row-column-wrap,
	body .kb-row-layout-id29272_9d0918-e8 > .kt-row-column-wrap,
	body .kb-row-layout-id29878_b05222-b3 > .kt-row-column-wrap,
	body .kb-row-layout-id30072_8ba46b-cb > .kt-row-column-wrap /* lap-1104 thank-you hero 30072 */ {
		max-width: min(1350px, calc(100% - 60px));
	}
}
