:root{--navy:#062c59;--blue:#087aaa;--teal:#09a9b7;--aqua:#21d4cf;--coral:#ff675c;--ink:#0b2850;--muted:#58708c;--line:#dcebf2;--soft:#eff9fc;--white:#fff;--shadow:0 18px 50px rgba(5,53,92,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:16px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:#fff}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:fixed;left:16px;top:-60px;background:#fff;padding:12px 18px;z-index:1000}.skip:focus{top:16px}header{height:78px;background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 18px rgba(0,50,84,.07)}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand img{width:158px;filter:brightness(0) saturate(100%) invert(15%) sepia(40%) saturate(2470%) hue-rotate(179deg) brightness(87%)}.nav{display:flex;align-items:center;gap:27px;font-size:.9rem;font-weight:700}.nav a:not(.button):hover{color:var(--teal)}.nav .login{margin-left:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;border-radius:11px;font-weight:800;box-shadow:0 7px 18px rgba(9,91,126,.14);transition:.2s transform,.2s box-shadow}.button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(9,91,126,.22)}.button.small{padding:11px 18px}.coral{background:var(--coral);color:#fff}.teal{background:var(--teal);color:#fff}.outline{border:2px solid var(--teal);color:var(--navy);background:#fff}.menu-toggle{display:none;border:0;background:transparent}.menu-toggle span{display:block;width:26px;height:2px;background:var(--navy);margin:5px}.home-hero{overflow:hidden;background:radial-gradient(circle at 78% 35%,#d9f7fb 0,transparent 34%),linear-gradient(100deg,#f4fbfe 0,#fff 60%);min-height:570px}.hero-grid{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;min-height:570px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--blue);font-size:.75rem;font-weight:900}.home-hero h1{font-size:clamp(3rem,5.4vw,5.2rem);line-height:.94;margin:18px 0 24px;letter-spacing:-.045em}.home-hero h1 span,.section-title span,.dark-band span{color:var(--teal)}.lead{font-size:1.18rem;color:var(--muted);max-width:610px}.button-row{display:flex;gap:14px;margin-top:30px}.hero-art{position:relative;min-height:500px}.hero-art .laptop{position:absolute;width:650px;max-width:none;right:-45px;bottom:35px;filter:drop-shadow(0 25px 20px rgba(0,45,80,.23))}.benefit-bar{background:linear-gradient(90deg,#04638f,#078cad);color:#fff}.benefit-bar .wrap{min-height:72px;display:flex;align-items:center;justify-content:space-around;text-transform:uppercase;letter-spacing:.1em}.benefit-bar span{display:flex;gap:13px;align-items:center}.section{padding:80px 0}.section-title{text-align:center;margin-bottom:48px}.section-title h2,.page-hero h1{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.08;margin:8px 0;letter-spacing:-.035em}.split{display:grid;grid-template-columns:.7fr 1.1fr 1fr;align-items:center;gap:30px}.split .screen{filter:drop-shadow(0 18px 18px rgba(2,39,73,.18))}.check-list>div{display:grid;grid-template-columns:56px 1fr;column-gap:16px;margin:22px 0}.check-list img{grid-row:1/3;width:56px}.check-list h3,.check-list p{margin:0}.check-list p{color:var(--muted)}.soft{background:linear-gradient(#f5fbfe,#eaf8fb)}.feature-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.feature-grid article,.post-card,.price-card,.side-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px;box-shadow:0 8px 30px rgba(0,53,88,.07)}.feature-grid img{height:120px;width:100%;object-fit:contain}.feature-grid h3{font-size:1.25rem;line-height:1.1}.feature-grid p,.post-card p{color:var(--muted)}.feature-grid a,.post-card a{color:var(--blue);font-weight:800}.dark-band{background:linear-gradient(115deg,#052e5a,#075d88);color:#fff;overflow:hidden}.dark-band .wrap{height:180px;display:flex;align-items:center;gap:60px}.dark-band img{align-self:flex-end;height:180px}.dark-band h2{font-size:2.2rem;line-height:1.15}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:70px}.steps article{text-align:center;position:relative}.steps article:not(:last-child):after{content:'→';position:absolute;right:-48px;top:66px;color:var(--teal);font-size:2.4rem}.steps span{display:grid;place-items:center;margin:auto;background:var(--teal);color:#fff;width:32px;height:32px;border-radius:50%;font-weight:900}.steps img{height:90px;margin:14px auto}.steps p{color:var(--muted)}.testimonial{background:#f8fbfd}.quote{max-width:900px;display:grid;grid-template-columns:90px 1fr;gap:25px}.quote-mark{font:10rem/.8 Georgia;color:var(--teal)}blockquote{font:700 1.55rem/1.45 Georgia,serif;margin:12px 0}cite{color:var(--muted)}.page-hero{padding:90px 0 80px;background:radial-gradient(circle at 90% 0,#c9f4f4,transparent 37%),linear-gradient(120deg,#edf9fc,#fff)}.page-hero .lead{max-width:760px}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:70px;padding-top:70px;padding-bottom:90px}.prose{font-size:1.08rem}.prose h2{font-size:1.65rem;margin:2em 0 .5em;color:var(--navy)}.prose p{color:#334f70;margin:0 0 1.2em;white-space:pre-line}.prose>h2:first-child{margin-top:0}.prose ul{padding-left:1.4rem}.side-card{position:sticky;top:110px}.side-card+.side-card{margin-top:18px}.side-card a:not(.button){display:block;color:var(--blue);font-weight:700;padding:5px 0}.bolt{font-size:3rem;color:var(--teal)}.media-grid,.image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin:34px 0}.video{aspect-ratio:16/9}.video iframe{width:100%;height:100%;border:0;border-radius:14px}.image-grid img{width:100%;max-height:360px;object-fit:contain;border-radius:14px}.narrow{max-width:900px;padding-top:60px;padding-bottom:90px}.faq-list details{border:1px solid var(--line);border-radius:13px;margin:13px 0;background:#fff;box-shadow:0 4px 18px rgba(0,50,85,.05)}.faq-list summary{cursor:pointer;padding:21px 24px;font-size:1.08rem;font-weight:800;display:flex;justify-content:space-between;list-style:none}.faq-list details p{padding:0 24px 22px;color:var(--muted)}.center{text-align:center;margin-top:34px}.pricing-wrap{padding-top:70px;padding-bottom:90px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.price-card{text-align:center;position:relative}.price-card.featured{border:2px solid var(--teal);transform:translateY(-12px)}.price-card img{height:74px;margin:auto}.price{font-size:3rem;font-weight:900;color:var(--navy)}.price.word{font-size:2rem;margin:18px}.badge{position:absolute;top:-16px;left:50%;transform:translateX(-50%);background:var(--teal);color:#fff;border-radius:100px;padding:5px 18px;font-weight:800}.pricing-copy{max-width:820px;margin:65px auto 0}.category-pills{display:flex;flex-wrap:wrap;gap:10px;margin:50px 0 30px}.category-pills a{padding:9px 15px;background:var(--soft);border-radius:100px;color:var(--blue);font-weight:800}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding-bottom:90px}.post-visual{height:150px;background:var(--soft);border-radius:11px;display:grid;place-items:center}.post-visual img{height:100px}.post-card h2{line-height:1.15}.final-cta{background:linear-gradient(110deg,#075985,#043159);color:#fff;overflow:hidden}.final-inner{min-height:150px;display:grid;grid-template-columns:140px 1fr auto;align-items:center;gap:32px}.final-inner img{height:140px;align-self:end}.final-inner h2{margin:0;font-size:1.8rem}.final-inner p{margin:4px 0;color:#cbe9f4}footer{background:#f7fbfd}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:50px;padding:55px 0}.footer-logo{width:170px;filter:brightness(0) saturate(100%) invert(15%) sepia(40%) saturate(2470%) hue-rotate(179deg) brightness(87%)}footer h3{font-size:.9rem}footer a{display:block;color:var(--muted);margin:5px 0}footer p{color:var(--muted);max-width:280px}.footer-bottom{border-top:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;font-size:.85rem;color:var(--muted)}.footer-bottom span:last-child{display:flex;gap:20px}@media(max-width:900px){.nav{position:absolute;display:none;top:100%;left:0;right:0;height:auto;background:#fff;padding:12px 20px 20px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;z-index:80}.nav.open{display:flex}.menu-toggle{display:block}.hero-grid,.content-layout{grid-template-columns:1fr}.hero-grid{padding-top:60px}.hero-art{min-height:390px}.hero-art .laptop{right:-20px;width:570px}.feature-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr 1fr}.check-list{grid-column:1/-1}.content-layout aside{display:none}.price-grid,.post-grid{grid-template-columns:1fr 1fr}.final-inner{grid-template-columns:110px 1fr}.final-inner .button{grid-column:2}.footer-grid{grid-template-columns:2fr 1fr 1fr}}@media(max-width:620px){.wrap{width:min(100% - 28px,1160px)}header{height:68px}.brand img{width:130px}.home-hero h1{font-size:3.1rem}.hero-grid{min-height:650px}.hero-art{min-height:300px}.hero-art .laptop{width:420px;right:-45px}.button-row{flex-direction:column;align-items:stretch}.benefit-bar .wrap{padding:18px 0;gap:13px;flex-direction:column;align-items:flex-start}.section{padding:55px 0}.section-title h2,.page-hero h1{font-size:2.25rem}.split,.feature-grid,.steps,.price-grid,.post-grid{grid-template-columns:1fr}.split>img:first-child{display:none}.steps{gap:30px}.steps article:after{display:none}.dark-band .wrap{height:auto;min-height:210px;gap:20px}.dark-band img{height:150px}.dark-band h2{font-size:1.55rem}.quote{grid-template-columns:45px 1fr}.quote-mark{font-size:6rem}.page-hero{padding:65px 0 55px}.content-layout{padding-top:45px}.price-card.featured{transform:none}.final-inner{grid-template-columns:80px 1fr;padding:25px 0}.final-inner img{height:100px}.final-inner h2{font-size:1.35rem}.final-inner .button{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:flex;margin:6px 0}}.home-hero{background-color:#eef7fb;background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.92) 28%,rgba(255,255,255,.5) 43%,rgba(255,255,255,0) 62%),url('../images/hero-multisport-approved.webp');background-repeat:no-repeat;background-position:center top;background-size:contain;aspect-ratio:1915/821;min-height:0}.home-hero .hero-grid{display:flex;min-height:100%;align-items:center}.home-hero .hero-grid>div{width:min(52%,610px)}@media(min-width:901px){.home-hero .hero-grid{padding-top:20px;padding-bottom:20px}}@media(max-width:900px){.home-hero{aspect-ratio:auto;min-height:680px;background-size:auto 100%;background-position:62% center}.home-hero .hero-grid{padding-top:50px;padding-bottom:50px;align-items:flex-start}.home-hero .hero-grid>div{width:72%;padding:24px;border-radius:18px;background:rgba(255,255,255,.84);backdrop-filter:blur(3px)}}@media(max-width:620px){.home-hero{min-height:720px;background-position:66% center}.home-hero .hero-grid>div{width:100%;padding:22px}.home-hero h1{font-size:2.8rem}}.video-card{min-height:150px;border-radius:16px;background:linear-gradient(135deg,#073760,#0790aa);color:#fff;display:flex;align-items:stretch;overflow:hidden;box-shadow:0 12px 30px rgba(2,48,82,.16);transition:transform .2s,box-shadow .2s}.video-card:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(2,48,82,.24)}.video-card-thumb{position:relative;flex:0 0 48%;min-height:150px;background:#052e5a}.video-card-thumb img{width:100%;height:100%;object-fit:cover}.video-card .play-button{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--coral);font-size:1.25rem;padding-left:3px;box-shadow:0 6px 20px rgba(0,0,0,.24)}.video-card-copy{display:flex;flex-direction:column;justify-content:center;padding:22px}.video-card strong,.video-card small{display:block}.video-card strong{font-size:1.08rem;line-height:1.25}.video-card small{margin-top:9px;color:#c8f4f4;font-weight:700}@media(max-width:620px){.video-card{display:block}.video-card-thumb{display:block;aspect-ratio:16/9;min-height:0}.video-card-copy{padding:18px 20px}}.resource-feature{padding:70px 0;background:linear-gradient(120deg,#06345f,#087da4);color:#fff}.resource-feature-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:70px;align-items:center}.resource-feature .eyebrow{color:#6ef1ea}.resource-feature h2{font-size:clamp(2.2rem,4vw,3.6rem);line-height:1.05;letter-spacing:-.035em;margin:10px 0 20px}.resource-feature p:not(.eyebrow){font-size:1.12rem;color:#d6eef6;max-width:680px}.guide-art{min-height:290px;border-radius:28px;background:linear-gradient(145deg,#fff,#dff8fb);display:flex;align-items:center;justify-content:center;gap:22px;transform:rotate(2deg);box-shadow:0 30px 60px rgba(0,22,50,.3)}.guide-art img{width:115px}.guide-art span{color:var(--navy);font-size:2rem;line-height:1;font-weight:950;letter-spacing:.04em}.centered{margin-left:auto;margin-right:auto}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.resource-grid article{position:relative;padding:34px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 35px rgba(0,48,83,.08);transition:.2s transform,.2s box-shadow}.resource-grid article:hover{transform:translateY(-5px);box-shadow:0 20px 45px rgba(0,48,83,.14)}.resource-grid article.highlight{background:linear-gradient(160deg,#effdff,#fff);border-color:#8de1e2}.resource-icon{height:120px;border-radius:16px;background:var(--soft);display:grid;place-items:center;margin-bottom:26px}.resource-icon img{height:82px;max-width:120px;object-fit:contain}.resource-grid h2{font-size:1.8rem;margin:8px 0}.resource-grid p:not(.eyebrow){color:var(--muted);min-height:100px}.resource-link{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;color:var(--blue);font-weight:900}.resource-link span{color:var(--teal);font-size:1.4rem}.resource-help{padding:45px 0;background:var(--soft)}.resource-help>.wrap{display:flex;align-items:center;justify-content:space-between;gap:35px}.resource-help h2{margin:5px 0;font-size:2rem}.resource-help p{margin:0;color:var(--muted)}@media(max-width:800px){.resource-feature-grid{grid-template-columns:1fr}.guide-art{min-height:220px}.resource-grid{grid-template-columns:1fr}.resource-grid p:not(.eyebrow){min-height:0}.resource-help>.wrap{align-items:flex-start;flex-direction:column}}.two-column-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;padding-top:75px;padding-bottom:85px}.two-column-section h2,.download-feature h2{font-size:clamp(2rem,3.8vw,3.4rem);line-height:1.08;margin:10px 0 20px}.contact-details{display:flex;flex-direction:column;gap:8px;margin-top:28px;color:var(--blue);font-weight:800}.form-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:34px;box-shadow:var(--shadow)}.form-card h2{font-size:2rem;margin:8px 0 25px}.form-card form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-card label{font-size:.88rem;font-weight:800;color:var(--navy)}.form-card label.full,.form-card .button,.form-note{grid-column:1/-1}.form-card input,.form-card textarea{display:block;width:100%;margin-top:7px;border:1px solid #bcd5df;border-radius:10px;padding:13px;background:#fafdfe;font:inherit}.form-note{font-size:.78rem;color:var(--muted);margin:0}.tutorial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.tutorial-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,48,83,.08)}.tutorial-card>div{padding:24px}.tutorial-card h2{font-size:1.4rem;margin:6px 0}.tutorial-card a{color:var(--blue);font-weight:800}.video-thumb{position:relative;display:block;aspect-ratio:16/9;background:#052e5a}.video-thumb img{width:100%;height:100%;object-fit:cover;opacity:.86}.video-thumb span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:var(--coral);color:#fff;font-size:1.4rem;padding-left:4px}.story-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center}.story-grid>.story-art,.story-grid>.prose{min-width:0;width:100%}.story-art .wp-block-image,.story-art img{width:100%;height:auto;object-fit:contain}.story-art{min-height:360px;border-radius:24px;background:linear-gradient(140deg,#dff8fb,#f6fbfd);display:grid;place-items:center;overflow:hidden}.story-art img{width:100%;height:100%;object-fit:cover}.signature{font:italic 700 1.15rem Georgia;color:var(--navy)!important}.partner-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:35px}.partner-grid article{padding:34px;border-radius:18px;border:1px solid var(--line);background:linear-gradient(150deg,#fff,#f2fbfd);box-shadow:0 10px 30px rgba(0,48,83,.08)}.partner-grid h2{font-size:2rem;margin:8px 0}.partner-grid p{color:var(--muted)}.partner-grid a{color:var(--blue);font-weight:900}.customer-quote{margin-top:55px}.download-feature{display:grid;grid-template-columns:1.3fr .7fr;align-items:center;gap:50px;background:linear-gradient(120deg,#06345f,#087da4);color:#fff;border-radius:26px;padding:50px}.download-feature .eyebrow{color:#6ef1ea}.download-feature p:not(.eyebrow){color:#d6eef6;font-size:1.1rem}.download-feature img{max-height:220px;margin:auto}.wide-prose{max-width:920px;margin:auto}.savings{background:#062f5b;color:#fff}.savings .two-column-section{padding-top:0;padding-bottom:0}.savings .eyebrow{color:#54e8df}.savings p{color:#d8eef6}.why p{font-size:1.1rem;color:#334f70}.legacy-empty{padding:70px;text-align:center;background:var(--soft);border-radius:20px}@media(max-width:800px){.two-column-section,.tutorial-grid,.story-grid,.partner-grid,.download-feature{grid-template-columns:1fr}.form-card form{grid-template-columns:1fr}.form-card label{grid-column:1/-1}.story-art{min-height:260px}.download-feature{padding:32px}}.mission-band{padding:55px 0;background:linear-gradient(120deg,#e6fbfb,#f5fbfd)}.mission-band>.wrap{display:flex;align-items:center;justify-content:space-between;gap:45px}.mission-band h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:7px 0}.mission-band p:not(.eyebrow){max-width:820px;color:var(--muted)}@media(max-width:800px){.mission-band>.wrap{align-items:flex-start;flex-direction:column}}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.hero-tagline{font-weight:850;color:var(--navy);font-size:1.05rem}.newsletter{display:grid;grid-template-columns:1fr 1.35fr;gap:45px;align-items:center;padding-top:44px;padding-bottom:44px;border-bottom:1px solid var(--line)}.newsletter h2{margin:0;font-size:1.7rem}.newsletter p{margin:5px 0;color:var(--muted)}.newsletter-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px}.newsletter-form input{width:100%;padding:13px;border:1px solid #bcd5df;border-radius:10px;font:inherit}.social-links{display:flex;gap:13px;flex-wrap:wrap;margin-top:16px}.partner-logo{height:100px;display:grid;place-items:center;margin-bottom:18px;border-radius:12px;background:#fff}.partner-logo img{max-height:72px;max-width:180px;object-fit:contain}.testimonial-source{max-width:620px;margin:0 auto 30px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff}.testimonial-source img{width:100%}.client-map{margin-top:65px}.client-map iframe,.external-form iframe{width:100%;height:650px;border:1px solid var(--line);border-radius:18px;background:#fff}.external-form{max-width:1100px;margin:auto}.article-card{display:flex;flex-direction:column}.article-icon{height:220px;display:grid;place-items:center;background:linear-gradient(135deg,#073760,#0790aa);color:#fff;font-size:4rem;font-weight:900}.blog-intro{max-width:820px;margin:60px auto 15px;text-align:center}.blog-intro h2{font-size:2.4rem;margin:8px 0}.blog-intro p{color:var(--muted)}.blog-intro a{color:var(--blue);font-weight:900}.post-visual img{width:100%;height:100%;object-fit:cover}@media(max-width:800px){.newsletter{grid-template-columns:1fr}.newsletter-form{grid-template-columns:1fr}.client-map iframe,.external-form iframe{height:720px}}

/* ═══════════════════════════════════════════════════════════════════════════
   Gutenberg bridge — added by Speedy Grid theme
   ═══════════════════════════════════════════════════════════════════════════ */

/* Reset WP block margins that interfere with layout */
.wp-block-group { margin-top: 0; margin-bottom: 0; }
.wp-block-group > * { margin-top: 0; margin-bottom: 0; }

/* Ensure block widths don't double-wrap */
.wp-block-group.wrap > .wp-block-group { width: 100%; max-width: 100%; }

/* WP button block → use our .button classes */
.wp-block-button__link { all: unset; display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 14px 24px; border-radius: 11px; font-weight: 800; box-shadow: 0 7px 18px rgba(9,91,126,.14); transition: .2s transform, .2s box-shadow; cursor: pointer; }
.wp-block-button__link:hover { transform: translateY(-2px); box-shadow: 0 10px 25px rgba(9,91,126,.22); }
.wp-block-button.coral .wp-block-button__link, .wp-block-button__link.coral { background: var(--coral); color: #fff; }
.wp-block-button.teal .wp-block-button__link, .wp-block-button__link.teal { background: var(--teal); color: #fff; }
.wp-block-button.outline .wp-block-button__link, .wp-block-button__link.outline { border: 2px solid var(--teal); color: var(--navy); background: #fff; }

/* WP block image — prevent double margin */
.wp-block-image { margin: 0; }
.wp-block-image img { max-width: 100%; display: block; }

/* WP block list — prevent extra padding */
.wp-block-list { margin: 0 0 1.2em; }

/* WP block paragraph */
.wp-block-paragraph { margin: 0 0 1.2em; }

/* WP block heading */
.wp-block-heading { margin: 0; }

/* WP block buttons — flex row */
.wp-block-buttons { display: flex; flex-wrap: wrap; gap: 14px; }
.wp-block-buttons.button-row { margin-top: 30px; }

/* Sections need full width */
section.wp-block-group { width: 100%; max-width: 100%; }
main.wp-block-group { display: block; }

/* Logo — custom logo must stay sized + colorized (white media → navy) */
.brand img,
.brand .custom-logo {
  width: 158px !important;
  height: auto !important;
  max-width: 158px !important;
  filter: brightness(0) saturate(100%) invert(15%) sepia(40%) saturate(2470%) hue-rotate(179deg) brightness(87%);
}

/* Nav / footer menus — keep list structure for dropdowns */
.nav > li,
.footer-grid li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer-grid li { display: contents; }
.nav > li {
  position: relative;
  display: flex;
  align-items: center;
}
.nav > li > a { display: inline; }
.nav .menu-item-has-children > a { display: inline-flex; align-items: center; gap: 6px; }
.nav .menu-item-has-children > a::after {
  content: "";
  width: 0; height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid currentColor;
  opacity: .7;
}
.nav .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  margin: 0;
  padding: 10px 0;
  list-style: none;
  background: #fff;
  border-radius: 12px;
  box-shadow: var(--shadow);
  z-index: 60;
}
/* Invisible hover bridge above the panel (covers any sub-pixel gap) */
.nav .sub-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -14px;
  height: 14px;
}
.nav .sub-menu li { display: block; }
.nav .sub-menu a {
  display: block;
  padding: 10px 16px;
  font-size: .88rem;
  white-space: nowrap;
}
.nav .sub-menu a:hover,
.nav .sub-menu a:focus { color: var(--teal); background: var(--soft); }
.nav > li:hover > .sub-menu,
.nav > li:focus-within > .sub-menu,
.nav > li.is-open > .sub-menu { display: block; }
.nav > span.menu-item-has-children {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.nav > span.menu-item-has-children > .sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 220px;
  padding: 10px 0;
  background: #fff;
  border-radius: 12px;
  box-shadow: var(--shadow);
  flex-direction: column;
  z-index: 60;
}
.nav > span.menu-item-has-children > .sub-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -14px;
  height: 14px;
}
.nav > span.menu-item-has-children:hover > .sub-menu,
.nav > span.menu-item-has-children:focus-within > .sub-menu,
.nav > span.menu-item-has-children.is-open > .sub-menu { display: flex; }
.nav > span.menu-item-has-children > .sub-menu a { display: block; padding: 10px 16px; font-size: .88rem; }

/* Desktop only: full header height + hover bridge (must NOT apply on mobile drawer) */
@media (min-width: 901px) {
  .nav {
    align-self: stretch;
    height: 100%;
  }
  .nav > li,
  .nav > span.menu-item-has-children {
    align-self: stretch;
    height: 100%;
  }
}

/* Mobile drawer — height:auto, opaque panel, nested children always visible */
@media (max-width: 900px) {
  header { position: sticky; }
  .nav {
    position: absolute;
    display: none;
    top: 100%;
    left: 0;
    right: 0;
    height: auto !important;
    max-height: min(80vh, calc(100dvh - 68px));
    overflow-x: hidden;
    overflow-y: auto;
    background: #fff;
    padding: 12px 20px 20px;
    box-shadow: var(--shadow);
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    z-index: 80;
  }
  .nav.open { display: flex; }
  .nav > li,
  .nav > span.menu-item-has-children {
    display: block;
    width: 100%;
    height: auto !important;
    align-self: stretch;
  }
  .nav > li > a,
  .nav > span.menu-item-has-children > a,
  .nav > a.login,
  .nav > a.button {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 12px 4px;
    font-size: 1rem;
  }
  .nav > a.button {
    justify-content: center;
    margin-top: 10px;
    width: auto;
  }
  .nav .menu-item-has-children > a::after { display: none; }
  .nav .sub-menu,
  .nav > span.menu-item-has-children > .sub-menu,
  .nav > li:hover > .sub-menu,
  .nav > li:focus-within > .sub-menu,
  .nav > li.is-open > .sub-menu,
  .nav > span.menu-item-has-children:hover > .sub-menu,
  .nav > span.menu-item-has-children:focus-within > .sub-menu,
  .nav > span.menu-item-has-children.is-open > .sub-menu {
    display: flex !important;
    flex-direction: column;
    position: static !important;
    box-shadow: none;
    background: transparent;
    border-radius: 0;
    padding: 0 0 6px 14px;
    min-width: 0;
    top: auto;
  }
  .nav .sub-menu::before,
  .nav > span.menu-item-has-children > .sub-menu::before { display: none; }
  .nav .sub-menu a,
  .nav > span.menu-item-has-children > .sub-menu a {
    padding: 8px 4px;
    white-space: normal;
    font-weight: 700;
    color: var(--muted);
  }

  /* iPhone SE / narrow polish */
  .price-card.featured { transform: none; }
  .form-card { padding: 22px 18px; }
  .page-hero { padding: 48px 0 40px; }
  .story-art { min-height: 0; }
  .faq-list summary {
    gap: 12px;
    align-items: flex-start;
    overflow-wrap: anywhere;
  }
  .wpcf7 input.wpcf7-submit,
  .wpcf7 input[type="submit"],
  input[type="submit"].button {
    width: 100%;
    max-width: 100%;
  }
  .button-row { flex-wrap: wrap; }
  .button-row .button,
  .button-row .wp-block-button { width: 100%; }
  .button-row .wp-block-button .wp-block-button__link { width: 100%; }
}

/* Hide CF7 and WPA honeypot fields */
.wpcf7 .hidden-fields-container,
.wpcf7 fieldset.hidden-fields-container,
fieldset.hidden-fields-container,
#altEmail_container,
.altEmail_container,
.wpa_hidden_field,
span.wpcf7-form-control-wrap[data-name="honeypot"] {
  display: none !important;
  border: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* CF7 inputs full width */
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 textarea {
  width: 100% !important;
  max-width: 100% !important;
}

/* Form uses .sg-cf7-grid for columns — don't also grid the <form> (that puts response in a 50% column) */
.form-card form:has(.sg-cf7-grid),
.wpcf7 form:has(.sg-cf7-grid) {
  display: block;
}

/* CF7 response — empty node always in DOM; hide until status, full width under submit */
.wpcf7-response-output {
  display: none !important;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0 !important;
  background: transparent;
  grid-column: 1 / -1;
}
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
  display: block !important;
  margin: 14px 0 0;
  padding: 12px 16px;
  border-radius: 10px;
  font-size: .92rem;
  line-height: 1.4;
}
.wpcf7 form.sent .wpcf7-response-output { background: #e8faf4; color: #0a5c45; }
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output { background: #ffecec; color: #8a1f1f; }
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output { background: #fff6e8; color: #7a4a00; }

/* Contact CF7 grid (mirrors .form-card form) */
.sg-cf7-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
}
.sg-cf7-grid label {
  font-size: .88rem;
  font-weight: 800;
  color: var(--navy);
}
.sg-cf7-grid label.full,
.sg-cf7-grid .wpcf7-submit,
.sg-cf7-grid input[type="submit"] {
  grid-column: 1 / -1;
}
.sg-cf7-grid > p { display: contents; }
/* input[type=submit] cannot use display:flex/inline-flex — collapses to invisible in browsers */
.wpcf7 input.wpcf7-submit,
.wpcf7 input[type="submit"],
.form-card input[type="submit"],
input.wpcf7-submit.button,
input[type="submit"].button {
  display: inline-block !important;
  appearance: none;
  -webkit-appearance: none;
  width: auto;
  min-height: 48px;
  padding: 14px 24px;
  border: 0;
  border-radius: 11px;
  font: inherit;
  font-weight: 800;
  line-height: 1.2;
  cursor: pointer;
  box-shadow: 0 7px 18px rgba(9, 91, 126, .14);
  background: var(--coral);
  color: #fff;
}
.wpcf7 input.wpcf7-submit.coral,
.wpcf7 input[type="submit"].coral,
input.wpcf7-submit.coral,
input[type="submit"].button.coral {
  background: var(--coral);
  color: #fff;
}
.wpcf7 input.wpcf7-submit.teal,
input[type="submit"].button.teal {
  background: var(--teal);
  color: #fff;
}
@media (max-width: 800px) {
  .sg-cf7-grid { grid-template-columns: 1fr; }
}

/* Cookie banner */
.sg-cookie-consent {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9999;
  background: var(--navy);
  color: #dbe9f7;
  font-size: 13px;
  padding: 14px 0;
  box-shadow: 0 -2px 12px rgba(0, 0, 0, .45);
}
.sg-cookie-consent[hidden] { display: none !important; }
.sg-cookie-inner {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sg-cookie-inner p { margin: 0; line-height: 1.45; }
.sg-cookie-inner a { color: #7ec8ff; text-decoration: underline; }
.sg-cookie-buttons { display: flex; gap: 10px; flex-shrink: 0; }
.sg-cookie-buttons .button { box-shadow: none; }
@media (max-width: 600px) {
  .sg-cookie-inner { flex-direction: column; align-items: flex-start; }
  .sg-cookie-buttons { width: 100%; }
  .sg-cookie-buttons .button { flex: 1; justify-content: center; }
}

/* Gutenberg wp-block-library resets */
.wp-block-paragraph:where(:not([class])) { margin-bottom: 1rem; }

/* Mobile nav z-index above Gutenberg content */
header { z-index: 100; }

/* Mission Minded — Speedy Grid theme language */
.mission-band>.wrap{display:flex;align-items:center;justify-content:flex-start;gap:28px}
.mission-band-art{flex:0 0 48px;width:48px;max-width:48px;height:auto;display:block;margin:0}
.mission-band-copy{flex:1;min-width:0}
.mission-band-copy h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:7px 0}
.mission-band-copy p:not(.eyebrow){max-width:640px;color:var(--muted);margin:0 0 18px}
.mission-awards-section .wrap{width:min(1000px,calc(100% - 40px))}
.mission-award-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:8px}
.mission-award-card{padding:28px 24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(0,48,83,.07);box-sizing:border-box}
.mission-award-card h3{margin:0 0 10px;font-size:1.2rem;color:var(--navy)}
.mission-award-card p{margin:0;color:var(--muted)}
@media(max-width:900px){
  .mission-award-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .mission-band>.wrap{flex-direction:column;align-items:flex-start}
  .mission-awards-section .wrap{width:min(1160px,calc(100% - 28px))}
  .mission-award-grid{grid-template-columns:1fr}
}

/* Legal prose + embeds */
.prose, .wrap.narrow.prose, article.prose {
  overflow-wrap: anywhere;
  word-break: break-word;
}
.prose h2, .prose h3 { margin-top: 1.6em; }
.sg-embed-frame {
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: 16px;
  background: #fff;
}
.sg-embed-frame iframe {
  display: block;
  width: 100%;
  min-height: 640px;
  border: 0;
}
.sg-nomination-embed iframe { min-height: 1100px; }
.client-map { margin-top: 48px; }
.client-map .sg-embed-frame iframe { min-height: 520px; }
.faq-question-form { margin-top: 40px; }
.form-note { margin-top: 12px; color: var(--muted); font-size: .9rem; }
.footer-credit{text-align:center;padding:0 0 22px;font-size:.8rem;line-height:1.4;color:var(--muted)}
.footer-credit a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}
.footer-credit a:hover{color:var(--navy)}
.sg-testimonials{display:grid;gap:28px;margin-top:40px}
.sg-testimonials .sg-testimonial{max-width:900px;margin:0 auto;width:100%}
.sg-testimonials .sg-testimonial__stars{display:block;color:var(--teal);letter-spacing:.08em;margin-bottom:8px;font-size:1rem}
.sg-testimonials--clients .sg-testimonial{margin-top:0}
.sg-testimonials--clients .sg-testimonial + .sg-testimonial{margin-top:8px}
.section-title .lead,
.lead.centered{
  text-align:center;
  margin-left:auto;
  margin-right:auto;
  max-width:min(760px,100%);
}
