/*
Theme Name: RUN7 Community
Theme URI: https://run7.it/
Author: RUN7
Description: Eigenständiges, responsives WordPress-Block-Theme für RUN7 mit zweisprachiger Startseite, emotionalen Bildwelten und Sammelanmeldung.
Version: 3.2.18
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: run7-community
Tags: full-site-editing, block-patterns, custom-logo, featured-images, full-site-editing
*/
:root{
  --run7-blue:#1261ae;
  --run7-blue-dark:#0d4477;
  --run7-navy:#0b355d;
  --run7-text:#16283c;
  --run7-bg:#eceef1;
  --run7-bg-soft:#f5f6f8;
  --run7-surface:#f8f9fb;
  --run7-surface-2:#ffffff;
  --run7-line:#d8dce2;
  --run7-shadow:0 18px 40px rgba(13,34,60,.10);
}
html,body{margin:0;padding:0;max-width:100%;overflow-x:hidden;background:var(--run7-bg);color:var(--run7-text);font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif}
body .is-layout-constrained>:where(:not(.alignleft):not(.alignright):not(.alignfull)){max-width:1180px}
a{color:var(--run7-blue);text-decoration:none} a:hover{text-decoration:underline}
h1,h2,h3,h4,h5,h6{font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif;font-weight:700;letter-spacing:-.02em;color:#102845;line-height:1.08}
p{line-height:1.7}
.run7-header-shell,.run7-footer-shell,.run7-front-main,.run7-page-main{margin:0;padding:0}
.run7-site-header{background:rgba(245,246,248,.94);border-bottom:1px solid var(--run7-line);padding:14px 24px;position:sticky;top:0;z-index:30;backdrop-filter:saturate(1.2) blur(10px)}
.run7-site-header__inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.run7-brand{display:flex;align-items:center;gap:16px;color:inherit;text-decoration:none;min-width:0}.run7-brand:hover{text-decoration:none}
.run7-brand img{width:98px;height:auto;display:block;object-fit:contain}
.run7-brand-copy{display:flex;flex-direction:column;line-height:1}.run7-brand-copy strong{font-size:1.85rem;color:#0d2d49;letter-spacing:-.04em}.run7-brand-copy span{font-size:1.02rem;font-weight:700;color:var(--run7-blue);letter-spacing:.10em}
.run7-primary-nav{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:center}.run7-primary-nav a{font-weight:700;color:#17314a}
.run7-language-switch{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.run7-language-switch a{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--run7-line);padding:8px 10px;border-radius:999px;background:#fff;color:#17314a;font-weight:700}.run7-language-switch a.is-active{background:var(--run7-blue);border-color:var(--run7-blue);color:#fff}
.run7-flag{font-size:1rem;line-height:1}
.run7-page-main{max-width:920px;margin:0 auto;padding:56px 24px 80px}.run7-page-main>.wp-block-post-title{font-size:clamp(2.2rem,6vw,3.8rem);margin-bottom:1.1rem;color:var(--run7-blue)}
.run7-front-main .wp-block-post-content{margin:0}.run7-home{background:var(--run7-bg)}
.run7-contained{max-width:1180px;margin:0 auto}.run7-section{padding:72px 24px}.run7-section--soft{background:var(--run7-bg-soft)}.run7-section--blue{background:linear-gradient(180deg,#0f4f8e,#1261ae);color:#fff}.run7-section--blue h2,.run7-section--blue .run7-kicker-text,.run7-section--blue p,.run7-section--blue h3{color:#fff}
.run7-kicker,.run7-kicker-text{font-size:.95rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--run7-blue);margin:0 0 16px}.run7-kicker{color:#dfeeff}
.run7-hero-section{background:linear-gradient(rgba(9,31,52,.42),rgba(9,31,52,.62)),url("assets/images/story/hero.jpg") center/cover no-repeat;color:#fff;min-height:700px;display:flex;align-items:center;padding:80px 24px 70px}
.run7-hero__inner{max-width:1180px;margin:0 auto;width:100%}
.run7-hero-section h1{font-size:clamp(3.5rem,10vw,6.6rem);margin:0 0 14px;color:#fff;max-width:760px}.run7-hero-subline{font-size:clamp(1.3rem,3vw,1.8rem);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin:0 0 18px}.run7-hero-lead{font-size:1.16rem;max-width:720px;color:#f5f8fd;margin:0 0 28px}
.run7-buttons{display:flex;flex-wrap:wrap;gap:14px}.run7-btn{display:inline-block;padding:15px 24px;border-radius:999px;background:var(--run7-blue);color:#fff!important;font-weight:800;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.12)}.run7-btn.alt{background:transparent;border:1px solid rgba(255,255,255,.65)}.run7-btn:hover{text-decoration:none;opacity:.94}
.run7-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:34px;max-width:900px}.run7-hero-stat{background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(4px);padding:18px 20px;border-radius:18px}.run7-hero-stat strong{display:block;font-size:2rem;color:#fff;margin-bottom:6px}.run7-hero-stat p{margin:0;color:#e8eef6;font-size:.98rem}
.run7-section h2{font-size:clamp(2rem,5vw,3.2rem);margin:0 0 12px}.run7-section-intro{max-width:780px;font-size:1.08rem;color:#405163}
.run7-split{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center;margin-top:28px}.run7-image-card{background:#fff;border-radius:22px;overflow:hidden;box-shadow:var(--run7-shadow);border:1px solid var(--run7-line)}.run7-image-card img{display:block;width:100%;height:100%;object-fit:cover}
.run7-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}.run7-pillar,.run7-stat{background:var(--run7-surface-2);border:1px solid var(--run7-line);border-radius:18px;padding:22px;box-shadow:0 8px 22px rgba(14,32,49,.05)}.run7-pillar strong,.run7-stat strong{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:999px;background:rgba(18,97,174,.10);color:var(--run7-blue);font-size:1.5rem;margin-bottom:12px}.run7-pillar h3,.run7-stat h3{margin:.2rem 0 .5rem;color:var(--run7-blue)}.run7-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.run7-event-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:32px}.run7-event-card{background:var(--run7-surface-2);border:1px solid var(--run7-line);border-radius:22px;overflow:hidden;box-shadow:var(--run7-shadow);display:flex;flex-direction:column;height:100%}.run7-event-photo{display:block;aspect-ratio:16/10;overflow:hidden}.run7-event-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .35s ease}.run7-event-card:hover .run7-event-photo img{transform:scale(1.04)}.run7-event-body{padding:18px 20px 22px;display:flex;flex-direction:column;gap:10px;flex:1}.run7-event-logo{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--run7-line);border-radius:16px;padding:10px;min-height:96px}.run7-event-logo img{max-width:100%;max-height:76px;display:block}.run7-event-card h3{font-size:1.55rem;color:var(--run7-blue);margin:.1rem 0 0;line-height:1.14}.run7-event-place,.run7-event-date{margin:0;font-weight:700;color:#233a53}.run7-event-date{color:#0d4477}.run7-event-link{margin-top:auto;font-weight:800;color:var(--run7-blue)}
.run7-photo-band{padding:0 24px 72px}.run7-photo-band__inner{max-width:1180px;margin:0 auto;background:linear-gradient(rgba(11,53,93,.58),rgba(11,53,93,.60)),url("assets/images/story/quote.jpg") center/cover no-repeat;border-radius:26px;min-height:350px;display:flex;align-items:center;justify-content:center;text-align:center;padding:48px 28px;box-shadow:var(--run7-shadow)}.run7-photo-band h2{font-size:clamp(2.4rem,6vw,4.6rem);max-width:900px;margin:0;color:#fff}.run7-photo-band p{color:#ebf2fb;font-size:1.15rem;max-width:820px;margin:18px auto 0}
.run7-mosaic{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;margin-top:28px}.run7-mosaic figure{margin:0;border-radius:22px;overflow:hidden;min-height:220px;box-shadow:var(--run7-shadow);border:1px solid var(--run7-line);background:#fff}.run7-mosaic img{display:block;width:100%;height:100%;object-fit:cover}.run7-mosaic figure:nth-child(1){grid-column:span 4}.run7-mosaic figure:nth-child(2){grid-column:span 4}.run7-mosaic figure:nth-child(3){grid-column:span 4}.run7-mosaic figure:nth-child(4){grid-column:span 5}.run7-mosaic figure:nth-child(5){grid-column:span 3}.run7-mosaic figure:nth-child(6){grid-column:span 4}
.run7-social-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:34px}.run7-social-grid img{width:100%;height:100%;object-fit:cover;border:4px solid rgba(255,255,255,.82);display:block;box-shadow:0 12px 26px rgba(7,19,38,.16)}
.run7-signup-panel{background:#ecf1f7;border:1px solid rgba(255,255,255,.28);color:#12263f;border-radius:18px;padding:30px;margin-top:36px}.run7-signup-panel h3{margin-top:0;color:var(--run7-blue)}
.run7-signup-banner{position:relative;background:linear-gradient(rgba(9,31,52,.35),rgba(9,31,52,.6)),url("assets/images/story/signup.jpg") center/cover no-repeat;border-radius:22px;padding:40px 34px;color:#fff;margin:26px 0 30px;box-shadow:var(--run7-shadow)}.run7-signup-banner h2{margin:0 0 10px;color:#fff}.run7-signup-banner p{margin:0;max-width:720px;color:#f0f5fb}
.run7-legal h2{font-size:1.65rem;margin-top:2rem;color:var(--run7-blue);text-transform:none}.run7-legal h3{font-size:1.18rem;margin-top:1.4rem;color:#17314a;text-transform:none}.run7-legal ul{padding-left:1.2rem}.run7-legal .run7-legal-box{background:#f6f7f8;border:1px solid var(--run7-line);border-radius:14px;padding:18px 20px}.run7-legal .run7-legal-note{font-size:.95rem;color:#5d6672}
.run7-site-footer{background:#13263d;color:#eef3f9;padding:42px 24px 24px}.run7-site-footer__inner{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}.run7-site-footer h3,.run7-site-footer h4{color:#fff;margin-top:0}.run7-site-footer a{color:#dfe8f5}.run7-footer-note{max-width:1180px;margin:24px auto 0;color:#c4d2e3;font-size:.94rem}
/* shortcode form */
.run7-form-wrap{background:var(--run7-surface-2);border:1px solid var(--run7-line);border-radius:24px;padding:28px;box-shadow:var(--run7-shadow)}
.run7-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.run7-field{display:flex;flex-direction:column;gap:8px}.run7-field label{font-weight:700;color:#18314c}.run7-field input,.run7-field textarea,.run7-field select{border:1px solid #c9d2dc;border-radius:12px;padding:13px 14px;font:inherit;background:#fff;color:#16283c}.run7-field textarea{min-height:130px;resize:vertical}.run7-field--full{grid-column:1/-1}.run7-checkboxes{display:grid;gap:12px;margin-top:6px}.run7-checkbox{display:flex;gap:10px;align-items:flex-start;background:#f7f9fb;border:1px solid var(--run7-line);padding:14px 16px;border-radius:14px}.run7-checkbox input{margin-top:3px}.run7-help{font-size:.92rem;color:#5b6672}.run7-submit-row{margin-top:18px;display:flex;justify-content:flex-start;align-items:center;gap:16px}.run7-alert{border-radius:14px;padding:16px 18px;margin-bottom:18px}.run7-alert--error{background:#edf4fb;border:1px solid #6fa0d2;color:#1d3d62}.run7-alert--success{background:#eaf7ef;border:1px solid #84be95;color:#22573a}
@media (max-width:960px){.run7-split,.run7-stats,.run7-pillars,.run7-event-grid,.run7-social-grid,.run7-site-footer__inner,.run7-form-grid,.run7-hero-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.run7-mosaic figure:nth-child(n){grid-column:span 6}}
@media (max-width:782px){.run7-site-header{padding:14px 18px}.run7-site-header__inner{align-items:flex-start}.run7-brand img{width:84px}.run7-brand-copy strong{font-size:1.55rem}.run7-primary-nav{gap:14px;justify-content:flex-start}.run7-page-main{padding:42px 18px 68px}.run7-section,.run7-photo-band,.run7-hero-section{padding-left:18px;padding-right:18px}.run7-hero-section{min-height:620px}.run7-photo-band__inner{border-radius:20px}.run7-mosaic figure:nth-child(n){grid-column:span 12}.run7-hero-stats,.run7-stats,.run7-pillars,.run7-event-grid,.run7-social-grid,.run7-site-footer__inner,.run7-form-grid{grid-template-columns:minmax(0,1fr)}}

/* v2.7 responsive header, cohesive calls-to-action and editorial photo storytelling */
html{scroll-behavior:smooth;scroll-padding-top:125px}body{scroll-margin-top:125px}body:before{content:"";position:absolute;top:0;height:0}
.run7-brand img{width:118px!important}.run7-brand-copy span{color:#121b27!important;font-size:clamp(1rem,1.8vw,1.4rem)!important;letter-spacing:.055em!important}.run7-brand-copy strong{display:none!important}
.run7-primary-nav a{text-transform:uppercase;color:#1261ae!important;letter-spacing:.045em;font-size:.9rem}.run7-language-switch select{border:1px solid #cbd2dd;border-radius:9px;padding:10px;background:#fff;color:#1261ae;font-weight:800;cursor:pointer}
.run7-mobile-nav{display:contents}.run7-mobile-nav>summary{display:none;list-style:none}
.run7-back-top{position:fixed;right:22px;bottom:23px;width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#1261ae;color:#fff!important;font-size:2rem;z-index:25;box-shadow:0 8px 22px #0d315e60;text-decoration:none!important}
.run7-btn,.run7-btn.alt,.run7-submit-row .run7-btn{background:#1261ae!important;border:2px solid #1261ae!important;color:white!important;border-radius:15px!important;box-shadow:0 8px 18px #0d315e44!important;font-size:1.07rem!important;font-weight:800!important;padding:17px 24px!important;min-height:54px;display:inline-flex;align-items:center;justify-content:center}
.run7-event-card,.run7-pillars article{min-width:0}.run7-photo-pillar{overflow:hidden;padding:0!important}.run7-photo-pillar img{width:100%;height:168px;object-fit:cover;display:block}.run7-photo-pillar__copy{padding:24px}.run7-photo-pillar h3{margin:.4rem 0}.run7-photo-pillar strong{background:#e6eef7}
.run7-editorial-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.run7-editorial-strip img{width:100%;height:235px;object-fit:cover;border-radius:18px;box-shadow:0 12px 25px #16283c22}
.run7-mosaic{grid-template-columns:repeat(12,minmax(0,1fr))}
.run7-form-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:20px 0 28px}.run7-form-photo-strip img{height:180px;width:100%;object-fit:cover;border-radius:18px}
@media(max-width:900px){.run7-site-header__inner{display:grid;grid-template-columns:1fr auto auto;gap:12px}.run7-mobile-nav{display:block;grid-column:2;grid-row:1;position:relative}.run7-mobile-nav>summary{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:49px;height:47px;border:1px solid #d1d9e2;border-radius:10px;background:#fff;cursor:pointer}.run7-mobile-nav>summary span{width:24px;height:3px;background:#1261ae;border-radius:3px}.run7-primary-nav{display:none!important;position:absolute;top:calc(100% + 12px);right:0;width:min(320px,85vw);padding:16px;box-shadow:0 18px 38px #11253d38;border:1px solid #d5dce5;background:#f7f8fa;border-radius:16px;z-index:50;flex-direction:column!important;align-items:stretch!important;gap:0!important}.run7-mobile-nav[open] .run7-primary-nav{display:flex!important}.run7-primary-nav a{display:block;padding:13px 12px;border-bottom:1px solid #e3e7ed}.run7-language-switch{grid-column:3;grid-row:1}.run7-brand{grid-column:1;grid-row:1}.run7-brand img{width:87px!important}.run7-editorial-strip{grid-template-columns:1fr}.run7-photo-pillar img{height:200px}}
@media(max-width:650px){.run7-brand{gap:7px}.run7-brand-copy span{font-size:.9rem!important}.run7-brand img{width:70px!important}.run7-site-header__inner{gap:6px}.run7-language-switch select{padding:10px 5px}.run7-btn,.run7-btn.alt,.run7-submit-row .run7-btn{width:100%;text-align:center;box-sizing:border-box}.run7-hero-section .run7-buttons{display:grid;grid-template-columns:minmax(0,1fr)}.run7-photo-pillar img{height:190px}.run7-form-photo-strip{grid-template-columns:1fr 1fr}.run7-form-photo-strip img{height:120px}}


/* v2.8 layout refinements */

.run7-primary-nav--mobile{display:none}
.run7-mobile-nav{display:none}
.run7-brand-copy span{font-size:clamp(1.25rem,2.6vw,2.15rem)!important;font-weight:800!important;letter-spacing:.085em!important;color:#111821!important}
.run7-primary-nav--desktop{display:flex;align-items:center;gap:22px;flex:1;justify-content:center}
.run7-primary-nav--desktop a,.run7-primary-nav--mobile a{text-transform:uppercase;color:#1261ae!important;letter-spacing:.05em;font-size:.96rem;font-weight:800}
.run7-language-switch select{min-width:78px;padding:12px 14px}
.run7-stats--photo{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:26px}
.run7-stat--photo{padding:0;overflow:hidden}
.run7-stat--photo img{display:block;width:100%;height:190px;object-fit:cover}
.run7-stat__copy{padding:22px}
.run7-stat__copy strong{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:999px;background:rgba(18,97,174,.10);color:var(--run7-blue);font-size:1.65rem;margin-bottom:14px}
.run7-photo-pillar strong{display:none!important}
.run7-photo-pillar__copy{padding:24px}
.run7-photo-pillar img{height:210px}
.run7-site-header__inner{grid-template-columns:auto 1fr auto auto;align-items:center}
@media(max-width:900px){
  .run7-primary-nav--desktop{display:none!important}
  .run7-mobile-nav{display:block;grid-column:2;grid-row:1;position:relative;justify-self:end}
  .run7-mobile-nav>summary{display:flex;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:49px;height:47px;border:1px solid #d1d9e2;border-radius:10px;background:#fff;cursor:pointer;list-style:none}
  .run7-mobile-nav>summary::-webkit-details-marker{display:none}
  .run7-mobile-nav>summary span{width:24px;height:3px;background:#1261ae;border-radius:3px}
  .run7-primary-nav--mobile{display:none!important;position:absolute;top:calc(100% + 12px);right:-14px;left:auto;width:min(300px,78vw);padding:16px;box-shadow:0 18px 38px #11253d38;border:1px solid #d5dce5;background:#f7f8fa;border-radius:16px;z-index:50;flex-direction:column!important;align-items:stretch!important;gap:0!important}
  .run7-mobile-nav[open] .run7-primary-nav--mobile{display:flex!important}
  .run7-primary-nav--mobile a{display:block;padding:13px 12px;border-bottom:1px solid #e3e7ed}
  .run7-primary-nav--mobile a:last-child{border-bottom:0}
  .run7-language-switch{grid-column:4;grid-row:1;justify-self:end}
  .run7-brand{grid-column:1 / span 2;grid-row:1}
  .run7-stats--photo,.run7-pillars{grid-template-columns:minmax(0,1fr)}
  .run7-stat--photo img{height:210px}
}
@media(max-width:650px){
  .run7-brand img{width:78px!important}
  .run7-brand-copy span{font-size:1.45rem!important}
  .run7-site-header__inner{gap:8px;grid-template-columns:minmax(0,1fr) auto auto}
  .run7-brand{grid-column:1;grid-row:1;min-width:0}
  .run7-mobile-nav{grid-column:2;grid-row:1}
  .run7-language-switch{grid-column:3;grid-row:1}
  .run7-primary-nav--mobile{right:-10px;width:min(294px,82vw)}
}


/* v2.9 signup / legal refinements */

.run7-signup-panel{color:#12263f!important}
.run7-signup-panel p,.run7-signup-panel li,.run7-signup-panel .run7-help{color:#12263f!important}
.run7-signup-panel--split{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:24px;align-items:stretch}
.run7-signup-panel--split .run7-signup-panel__media img{width:100%;height:100%;min-height:260px;object-fit:cover;border-radius:18px;display:block;box-shadow:var(--run7-shadow)}
.run7-signup-panel--split .run7-signup-panel__content{display:flex;flex-direction:column;justify-content:center}
.run7-signup-panel--split .run7-btn{align-self:flex-start;margin-top:10px}
@media(max-width:900px){.run7-signup-panel--split{grid-template-columns:1fr}.run7-signup-panel--split .run7-signup-panel__media img{min-height:220px}}

/* V2.9.2: Definitive navigation override. Kept last to win over old responsive rules. */
@media(min-width:901px){
 .run7-site-header__inner{display:grid!important;grid-template-columns:minmax(260px,auto) minmax(0,1fr) auto!important;align-items:center!important;gap:20px!important;flex-wrap:nowrap!important}
 .run7-brand{grid-column:1!important;min-width:0}
 .run7-primary-nav.run7-primary-nav--desktop{grid-column:2!important;display:flex!important;position:static!important;visibility:visible!important;opacity:1!important;width:auto!important;justify-content:center!important;align-items:center!important;flex-direction:row!important;gap:20px!important}
 .run7-primary-nav--desktop a{display:inline-flex!important;white-space:nowrap}
 .run7-mobile-nav{display:none!important}
 .run7-language-switch{grid-column:3!important;justify-self:end!important}
}
@media(max-width:900px){
 .run7-site-header__inner{display:grid!important;grid-template-columns:minmax(0,1fr) auto auto!important;gap:8px!important;width:100%!important;max-width:100%!important}
 .run7-brand{grid-column:1!important;grid-row:1!important;min-width:0!important;overflow:hidden}
 .run7-brand-copy span{font-size:clamp(.94rem,3.6vw,1.45rem)!important;white-space:nowrap!important;letter-spacing:.02em!important}
 .run7-brand img{width:65px!important;flex-shrink:0}
 .run7-primary-nav--desktop{display:none!important}
 .run7-mobile-nav{grid-column:2!important;grid-row:1!important;display:block!important;justify-self:end!important;position:static!important}
 .run7-mobile-nav>summary{display:flex!important;cursor:pointer}
 .run7-primary-nav.run7-primary-nav--mobile{position:fixed!important;top:90px!important;left:12px!important;right:12px!important;width:auto!important;max-width:none!important;min-width:0!important;box-sizing:border-box!important;overflow:visible!important;z-index:99999!important;padding:10px 16px!important;background:#f8fafc!important;box-shadow:0 10px 32px #14284344!important}
 .run7-mobile-nav[open] .run7-primary-nav.run7-primary-nav--mobile{display:flex!important;visibility:visible!important;opacity:1!important}
 .run7-primary-nav--mobile a{box-sizing:border-box!important;display:block!important;width:100%!important;margin:0!important;padding:13px 12px!important;text-align:left!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
 .run7-language-switch{grid-column:3!important;grid-row:1!important;justify-self:end!important}
 .run7-language-switch select{min-width:58px!important;padding:10px 7px!important}
}
.run7-stats--photo img{display:block;width:100%;object-fit:cover}

/* RUN7 3.0: three true responsive photo cards, no separate landscape column */
.run7-stats.run7-stats--photo{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:24px!important;align-items:stretch;max-width:none;width:100%;margin:32px 0 36px}
.run7-stat.run7-stat--photo{padding:0!important;display:flex;flex-direction:column;border-radius:20px;overflow:hidden;min-width:0;box-shadow:0 12px 30px #14263e15}
.run7-stat--photo>img{display:block;width:100%;height:265px!important;aspect-ratio:16/10;object-fit:cover}
.run7-stat__copy{padding:25px 26px 28px!important;flex:1;}
.run7-stat__copy h3{font-size:clamp(1.25rem,2vw,1.6rem);margin:0 0 12px;color:var(--run7-blue)}
.run7-stat__copy p{margin:0;line-height:1.55;font-size:1.05rem}
.run7-stats--photo .run7-stat__copy strong{display:none!important}
.run7-mosaic{grid-template-columns:repeat(12,minmax(0,1fr))!important;gap:16px!important}
.run7-mosaic figure{grid-column:span 4!important;min-height:0!important;aspect-ratio:4/3}
.run7-mosaic figure:nth-child(7),.run7-mosaic figure:nth-child(8),.run7-mosaic figure:nth-child(9){grid-column:span 4!important}
.run7-mosaic figure:nth-child(10),.run7-mosaic figure:nth-child(11){grid-column:span 6!important}
.run7-mosaic img{height:100%!important;width:100%;object-fit:cover}
.run7-site-header{padding:9px 20px!important}
.run7-site-header__inner{max-width:1260px!important;min-height:70px;display:grid!important;grid-template-columns:minmax(225px,1fr) auto auto!important;gap:24px!important;align-items:center!important}
.run7-brand{min-width:0;gap:12px!important}
.run7-brand img{width:82px!important;height:70px!important;object-fit:contain!important}
.run7-brand-copy span{font-size:clamp(1.15rem,2vw,1.62rem)!important;font-weight:800!important;white-space:nowrap}
.run7-primary-nav.run7-primary-nav--desktop{display:flex!important;position:static!important;width:auto!important;grid-column:2!important;white-space:nowrap!important;gap:22px!important;visibility:visible!important}
.run7-primary-nav--desktop a{font-size:.94rem!important}
.run7-language-switch{grid-column:3!important;grid-row:1!important}
.run7-mobile-nav{display:none!important}
.run7-site-footer{padding:44px 24px 20px!important}
.run7-site-footer__inner{gap:48px!important;grid-template-columns:1.3fr .8fr 1fr!important}
.run7-site-footer__inner p{margin:8px 0;line-height:1.85}
.run7-site-footer__inner h4{text-transform:uppercase;letter-spacing:.06em;font-size:1rem}
.run7-footer-note{padding-top:20px;border-top:1px solid #ffffff24}
.run7-section{scroll-margin-top:100px}
@media(max-width:950px){
 .run7-site-header__inner{grid-template-columns:minmax(0,1fr) auto auto!important;gap:10px!important;}
 .run7-brand{grid-column:1!important;grid-row:1!important;overflow:visible!important}
 .run7-brand img{width:64px!important;height:60px!important}
 .run7-brand-copy span{font-size:clamp(.87rem,3.4vw,1.3rem)!important;letter-spacing:.015em!important;white-space:nowrap}
 .run7-primary-nav.run7-primary-nav--desktop{display:none!important}
 .run7-mobile-nav{grid-column:2!important;grid-row:1!important;display:block!important;position:static!important}
 .run7-language-switch{grid-column:3!important}
 .run7-mobile-nav>summary{width:43px;height:44px}
 .run7-mobile-nav .run7-primary-nav--mobile{position:absolute!important;top:100%!important;left:auto!important;right:12px!important;width:min(320px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;margin:6px 0 0!important;box-sizing:border-box!important;padding:12px!important;transform:none!important;border-radius:14px!important;background:#fff!important;z-index:9999!important;display:none!important}
 .run7-mobile-nav[open] .run7-primary-nav--mobile{display:flex!important}
 .run7-primary-nav--mobile a{white-space:normal!important;padding:12px!important;overflow-wrap:break-word!important}
 .run7-stats.run7-stats--photo{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .run7-site-footer__inner{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:650px){
 .run7-site-header{padding:8px 10px!important}
 .run7-site-header__inner{grid-template-columns:minmax(0,1fr) 43px 66px!important;gap:5px!important;min-height:55px}
 .run7-brand{gap:6px!important}
 .run7-brand img{width:47px!important;height:52px!important}
 .run7-brand-copy span{font-size:clamp(.73rem,3.6vw,1.08rem)!important;letter-spacing:0!important}
 .run7-language-switch select{min-width:63px;padding:8px 5px!important;font-size:13px}
 .run7-section{padding:48px 16px!important}
 .run7-stats.run7-stats--photo{grid-template-columns:minmax(0,1fr)!important;gap:19px!important;margin:26px 0!important}
 .run7-stat.run7-stat--photo{width:100%!important;max-width:none!important;margin:0!important}
 .run7-stat--photo>img{height:auto!important;aspect-ratio:16/9!important;width:100%!important}
 .run7-stat__copy{padding:21px!important}
 .run7-stat__copy h3{font-size:1.35rem}
 .run7-stat__copy p{font-size:1rem}
 .run7-mosaic{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}
 .run7-mosaic figure,.run7-mosaic figure:nth-child(n){grid-column:span 2!important;aspect-ratio:4/3!important}
 .run7-mosaic figure:nth-child(2n){grid-column:span 2!important}
 .run7-site-footer__inner{grid-template-columns:1fr!important;gap:20px!important}
 .run7-site-footer{padding:30px 18px 18px!important}
}

/* v3.0.2: signup photos and compact payment coordinates */
.run7-page-main .run7-payment-block{background:#f7f9fb;border:1px solid #d8dce2;border-radius:18px;padding:24px;margin-top:28px;margin-bottom:24px}
.run7-payment-block h2{margin:0 0 12px;color:var(--run7-blue);font-size:clamp(1.45rem,3.4vw,2rem)}
.run7-payment-block .run7-payment-intro{margin:0 0 16px}
.run7-payment-block .run7-bank-lines{display:flex;flex-direction:column;gap:2px}
.run7-payment-block .run7-bank-lines p{margin:0!important;padding:0!important;line-height:1.45}
.run7-payment-block .run7-payment-note{margin:14px 0 0}
.run7-form-photo-strip--bottom{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0 6px;width:100%}
.run7-form-photo-strip--bottom img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;display:block;border-radius:18px;box-shadow:0 10px 24px rgba(10,30,50,.09)}
@media(max-width:650px){.run7-form-photo-strip--bottom{grid-template-columns:1fr;gap:18px;margin-top:24px}.run7-form-photo-strip--bottom img{width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover}}
/* RUN7 3.1 – Gutenberg media containers; preserve the existing photographic layout. */
.run7-home .wp-block-image,.run7-page-main .wp-block-image{margin:0}
.run7-home .wp-block-image img,.run7-page-main .wp-block-image img{display:block;max-width:100%;height:auto}
.run7-mosaic .wp-block-image{min-height:220px;overflow:hidden;border-radius:22px;box-shadow:var(--run7-shadow)}
.run7-mosaic .wp-block-image img{width:100%;height:100%;object-fit:cover}
.run7-editorial-strip .wp-block-image,.run7-form-photo-strip .wp-block-image,.run7-social-grid .wp-block-image{min-width:0;width:100%;height:100%}
.run7-editorial-strip .wp-block-image img,.run7-form-photo-strip .wp-block-image img,.run7-social-grid .wp-block-image img{width:100%;height:100%;object-fit:cover}
.run7-event-card .wp-block-image.run7-event-photo{width:100%;aspect-ratio:16/10;overflow:hidden;flex-shrink:0}
.run7-event-card .wp-block-image.run7-event-photo img{width:100%;height:100%;object-fit:cover}
.run7-event-card .wp-block-image.run7-event-logo{display:flex;align-items:center;justify-content:center;width:auto;min-height:96px;padding:10px;background:#fff}
.run7-event-card .wp-block-image.run7-event-logo img{max-height:76px;width:auto;max-width:100%;object-fit:contain}
.run7-stat--photo > .wp-block-image,.run7-photo-pillar > .wp-block-image{width:100%;overflow:hidden}
.run7-stat--photo > .wp-block-image img,.run7-photo-pillar > .wp-block-image img{width:100%;height:168px;object-fit:cover}
.run7-signup-panel__media .wp-block-image,.run7-signup-panel__media .wp-block-image img{width:100%;height:100%;object-fit:cover}
.run7-home .wp-block-group{box-sizing:border-box}
.run7-home .run7-hero-stats .wp-block-paragraph{margin:0}
.run7-home .run7-buttons .wp-block-paragraph{margin:0}
/* Gutenberg's block editor should expose every actual image for replacement. */
.editor-styles-wrapper .run7-home .wp-block-image{min-height:60px}


/* RUN7 3.1.1 – uniform, replaceable race photos after Gutenberg conversion.
   The migration changed <a class="run7-event-photo"> to <figure class="wp-block-image run7-event-photo">.
   On some browsers the figure's aspect-ratio did not establish a definite child
   height, allowing intrinsic image dimensions to break the aligned card grid. */
.run7-event-grid .run7-event-card > figure.wp-block-image.run7-event-photo,
.run7-event-grid .run7-event-card > .wp-block-image.run7-event-photo {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10;
  flex: 0 0 auto;
  overflow: hidden;
  padding: 0;
  margin: 0;
  line-height: 0;
}
.run7-event-grid .run7-event-card .wp-block-image.run7-event-photo > a,
.run7-event-grid .run7-event-card .wp-block-image.run7-event-photo > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}
.run7-event-grid .run7-event-card .wp-block-image.run7-event-photo img {
  display: block;
  width: 100%;
  height: 100% !important;
  max-width: none;
  max-height: none;
  object-fit: cover;
  object-position: center center;
}
/* Keep editable logo figures structurally independent of the race-photo crop. */
.run7-event-grid .run7-event-card .wp-block-image.run7-event-logo {
  position: static;
  aspect-ratio: auto;
  height: auto;
  margin: 0;
  line-height: normal;
}
.run7-event-grid .run7-event-card .wp-block-image.run7-event-logo > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
.run7-event-grid .run7-event-card .wp-block-image.run7-event-logo img {
  position: static;
  width: auto;
  height: auto !important;
  max-width: 100%;
  max-height: 76px;
  object-fit: contain;
}

/* RUN7 3.1.2 – compact editable cards after Gutenberg migration.
   Fix remaining inconsistent crops in the top photo cards and
   reduce oversized spacing/heights in the race overview cards. */

/* Top editable photo cards: keep all three compact and stop forced stretching. */
.run7-stats.run7-stats--photo,
.run7-pillars {
  align-items: start !important;
}
.run7-stat.run7-stat--photo,
.run7-pillars .run7-photo-pillar {
  height: auto !important;
  align-self: start !important;
}
.run7-stat.run7-stat--photo > .wp-block-image,
.run7-stat.run7-stat--photo > figure.wp-block-image,
.run7-photo-pillar > .wp-block-image,
.run7-photo-pillar > figure.wp-block-image {
  width: 100%;
  margin: 0 !important;
  line-height: 0;
  overflow: hidden;
}
.run7-stat.run7-stat--photo > .wp-block-image img,
.run7-stat.run7-stat--photo > figure.wp-block-image img,
.run7-photo-pillar > .wp-block-image img,
.run7-photo-pillar > figure.wp-block-image img {
  display: block;
  width: 100%;
  height: 220px !important;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center center;
}
.run7-stat__copy,
.run7-photo-pillar__copy {
  padding: 18px 20px 20px !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 0 0 auto !important;
}
.run7-stat__copy strong {
  margin-bottom: 8px !important;
}
.run7-stat__copy h3,
.run7-photo-pillar__copy h3 {
  margin: 0 !important;
  line-height: 1.15;
}
.run7-stat__copy p,
.run7-photo-pillar__copy p {
  margin: 0 !important;
  line-height: 1.45;
}

/* Seven races grid: unify photo crop, make cards visually more compact. */
.run7-event-grid {
  align-items: start !important;
  gap: 24px !important;
}
.run7-event-grid .run7-event-card {
  height: auto !important;
  align-self: start !important;
}
.run7-event-grid .run7-event-card > figure.wp-block-image.run7-event-photo,
.run7-event-grid .run7-event-card > .wp-block-image.run7-event-photo {
  aspect-ratio: 16 / 10 !important;
  margin: 0 !important;
}
.run7-event-grid .run7-event-card .wp-block-image.run7-event-photo img {
  object-fit: cover;
  object-position: center 52%;
}
.run7-event-body {
  padding: 14px 16px 18px !important;
  gap: 8px !important;
}
.run7-event-logo,
.run7-event-grid .run7-event-card .wp-block-image.run7-event-logo {
  min-height: 82px !important;
  padding: 8px 10px !important;
  margin: 0 0 2px !important;
}
.run7-event-grid .run7-event-card .wp-block-image.run7-event-logo img,
.run7-event-logo img {
  max-height: 60px !important;
}
.run7-event-card h3 {
  margin: 0 !important;
  font-size: 1.12rem !important;
  line-height: 1.16 !important;
}
.run7-event-place,
.run7-event-date,
.run7-event-link {
  margin: 0 !important;
  line-height: 1.35;
}

@media (max-width: 950px) {
  .run7-stat.run7-stat--photo > .wp-block-image img,
  .run7-stat.run7-stat--photo > figure.wp-block-image img,
  .run7-photo-pillar > .wp-block-image img,
  .run7-photo-pillar > figure.wp-block-image img {
    height: 210px !important;
  }
}

@media (max-width: 650px) {
  .run7-stat.run7-stat--photo > .wp-block-image img,
  .run7-stat.run7-stat--photo > figure.wp-block-image img,
  .run7-photo-pillar > .wp-block-image img,
  .run7-photo-pillar > figure.wp-block-image img {
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }
  .run7-stat__copy,
  .run7-photo-pillar__copy {
    padding: 16px 18px 18px !important;
  }
  .run7-event-body {
    padding: 14px 15px 16px !important;
  }
  .run7-event-logo,
  .run7-event-grid .run7-event-card .wp-block-image.run7-event-logo {
    min-height: 78px !important;
  }
  .run7-event-card h3 {
    font-size: 1.36rem !important;
  }
}


/* RUN7 3.1.3 – restore the original card geometry after Gutenberg conversion.
   Gutenberg adds block-gap margins to the SECOND and subsequent group children;
   in CSS grid this looks like staggered photos. Those margins must be suppressed
   on each individual grid item, not only on the grid container. */
.run7-home .run7-stats--photo > *,
.run7-home .run7-pillars > *,
.run7-home .run7-event-grid > *,
.run7-home .run7-editorial-strip > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-width: 0;
}
/* Some sites have Gutenberg group wrappers with a direct CSS grid layout. */
.run7-stats--photo > .wp-block-group,
.run7-pillars > .wp-block-group,
.run7-event-grid > .wp-block-group {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}
/* Make photo frames consistent regardless of the original image dimensions. */
.run7-home .run7-stat--photo > figure.wp-block-image,
.run7-home .run7-photo-pillar > figure.wp-block-image {
  height: 220px !important;
  aspect-ratio: auto !important;
  overflow: hidden;
  margin: 0 !important;
  line-height: 0;
}
.run7-home .run7-stat--photo > figure.wp-block-image > img,
.run7-home .run7-photo-pillar > figure.wp-block-image > img,
.run7-home .run7-stat--photo > figure.wp-block-image > a,
.run7-home .run7-photo-pillar > figure.wp-block-image > a {
  display: block;
  width: 100%;
  height: 100% !important;
}
.run7-home .run7-stat--photo > figure.wp-block-image img,
.run7-home .run7-photo-pillar > figure.wp-block-image img {
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center;
}
/* Kill WordPress flow margins inside cards, including anonymous link paragraphs.
   Preserve our explicit card gaps, rather than WordPress's block-gap spacing. */
.run7-home .run7-event-body > *,
.run7-home .run7-event-body > .wp-block-group,
.run7-home .run7-event-body > .wp-block-paragraph,
.run7-home .run7-event-body > .wp-block-heading,
.run7-home .run7-stat__copy > *,
.run7-home .run7-photo-pillar__copy > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.run7-home .run7-event-body {
  justify-content: flex-start !important;
  flex: 0 0 auto !important;
  gap: 7px !important;
  padding: 13px 16px 16px !important;
}
.run7-home .run7-event-card {
  justify-content: flex-start !important;
  min-height: 0 !important;
}
.run7-home .run7-event-card .run7-event-logo {
  margin-bottom: 5px !important;
}
.run7-home .run7-event-body > p:last-child,
.run7-home .run7-event-link {
  margin-top: 8px !important;
}
.run7-home .run7-event-body > p a.run7-event-link {
  display: inline-block;
}
/* Enforce the original consistent race-photo frame for each editable figure. */
.run7-home .run7-event-grid .run7-event-card > figure.run7-event-photo {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 10 !important;
  overflow: hidden;
  margin: 0 !important;
  line-height: 0;
}
.run7-home .run7-event-grid .run7-event-card > figure.run7-event-photo > img,
.run7-home .run7-event-grid .run7-event-card > figure.run7-event-photo > a {
  position: absolute;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  display: block;
}
.run7-home .run7-event-grid .run7-event-card > figure.run7-event-photo img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center;
}
@media (max-width:650px) {
  .run7-home .run7-stat--photo > figure.wp-block-image,
  .run7-home .run7-photo-pillar > figure.wp-block-image {
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }
}

/* RUN7 3.1.4 – align Gutenberg-converted hero statistic cards.
   WordPress adds a vertical block gap to subsequent group children; this
   must not become a top margin for children of the three-column CSS grid. */
.run7-hero-section .run7-hero-stats,
.run7-home .run7-hero-stats {
  display: grid;
  align-items: stretch;
  margin-block-start: 34px;
  row-gap: 16px;
}
.run7-hero-section .run7-hero-stats > *,
.run7-home .run7-hero-stats > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-width: 0;
  box-sizing: border-box;
}
.run7-hero-section .run7-hero-stat,
.run7-home .run7-hero-stat {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 12px;
  height: 100%;
  min-height: 170px;
  box-sizing: border-box;
}
.run7-hero-section .run7-hero-stat > *,
.run7-home .run7-hero-stat > * {
  margin: 0 !important;
  margin-block: 0 !important;
}
.run7-hero-section .run7-hero-stat strong,
.run7-home .run7-hero-stat strong {
  line-height: 1.1;
}
.run7-hero-section .run7-hero-stat p,
.run7-home .run7-hero-stat p {
  line-height: 1.5;
}
@media (max-width: 782px) {
  .run7-hero-section .run7-hero-stat,
  .run7-home .run7-hero-stat {
    min-height: 0;
  }
}
/* The converted registration page also uses Gutenberg figures inside the
   two-photo strip: don't inherit block spacing or 100% height stretching. */
.run7-form-photo-strip--bottom > *,
.run7-form-photo-strip--bottom > figure.wp-block-image {
  margin: 0 !important;
  min-width: 0;
  align-self: start;
}
.run7-form-photo-strip--bottom figure.wp-block-image img {
  display: block;
  width: 100%;
  height: auto !important;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 18px;
}

/* RUN7 3.1.5 – editable logo sizing: remove the old forced 60px logo cap.
   Gutenberg Image block's width and height can now be set visually. */
.run7-home .run7-event-grid .run7-event-body .wp-block-image.run7-event-logo,
.run7-home .run7-event-grid .run7-event-body figure.wp-block-image.run7-event-logo {
  width: 100%;
  min-height: 98px !important;
  max-height: none !important;
  padding: 5px 9px !important;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.run7-home .run7-event-grid .run7-event-body .wp-block-image.run7-event-logo img,
.run7-home .run7-event-grid .run7-event-body figure.wp-block-image.run7-event-logo img {
  display: block;
  width: auto;
  height: auto !important;
  max-width: 100% !important;
  max-height: 120px !important;
  min-height: 0;
  object-fit: contain !important;
  box-sizing: border-box;
}
.run7-home .run7-event-grid .run7-event-body .wp-block-image.run7-event-logo a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
/* In the Gutenberg editor retain the ability to select and resize the image. */
.editor-styles-wrapper .run7-event-body .wp-block-image.run7-event-logo img {
  max-width: 100% !important;
  max-height: 120px !important;
}


/* RUN7 3.1.6 – consistent card frames/heights after visual-editor changes.
   Fix unequal borders in the three concept cards, keep signup/gallery images aligned,
   compact the 7-race cards, and restore the community/news cards as a proper grid. */

/* Equal-height card rows wherever Gutenberg columns/groups are used */
.run7-stats.run7-stats--photo,
.run7-pillars,
.run7-event-grid,
.run7-form-photo-strip--bottom,
.run7-home .run7-community-feed.wp-block-post-template,
.run7-home .wp-block-query .wp-block-post-template.is-layout-grid {
  align-items: stretch !important;
}

/* Stadt / Berge / Tradition */
.run7-pillars,
.run7-stats.run7-stats--photo {
  grid-auto-rows: 1fr;
}
.run7-pillars > .run7-photo-pillar,
.run7-pillars > .wp-block-group,
.run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo,
.run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-width: 0;
  border: 1px solid var(--run7-line) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: var(--run7-surface-2) !important;
  box-shadow: var(--run7-shadow) !important;
}
.run7-pillars > .run7-photo-pillar > .wp-block-image,
.run7-pillars > .run7-photo-pillar > figure.wp-block-image,
.run7-pillars > .wp-block-group > .wp-block-image,
.run7-pillars > .wp-block-group > figure.wp-block-image,
.run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-image,
.run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > figure.wp-block-image,
.run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > .wp-block-image,
.run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > figure.wp-block-image {
  width: 100% !important;
  margin: 0 !important;
  overflow: hidden !important;
  line-height: 0;
  border-radius: 0 !important;
  flex: 0 0 auto !important;
}
.run7-pillars > .run7-photo-pillar > .wp-block-image img,
.run7-pillars > .run7-photo-pillar > figure.wp-block-image img,
.run7-pillars > .wp-block-group > .wp-block-image img,
.run7-pillars > .wp-block-group > figure.wp-block-image img,
.run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-image img,
.run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > figure.wp-block-image img,
.run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > .wp-block-image img,
.run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > figure.wp-block-image img {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.run7-photo-pillar__copy,
.run7-stat__copy,
.run7-pillars > .run7-photo-pillar > .wp-block-group,
.run7-pillars > .wp-block-group > .wp-block-group,
.run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-group,
.run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > .wp-block-group {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  gap: 8px !important;
  padding: 18px 20px 20px !important;
  min-height: 0 !important;
}
.run7-photo-pillar__copy h3,
.run7-stat__copy h3,
.run7-pillars h3,
.run7-stats.run7-stats--photo h3 {
  margin: 0 !important;
  line-height: 1.15 !important;
}
.run7-photo-pillar__copy p,
.run7-stat__copy p,
.run7-pillars p,
.run7-stats.run7-stats--photo p {
  margin: 0 !important;
}

/* Bottom two signup photos: same frame and height */
.run7-form-photo-strip--bottom {
  align-items: stretch !important;
}
.run7-form-photo-strip--bottom > .wp-block-image,
.run7-form-photo-strip--bottom > figure.wp-block-image,
.run7-form-photo-strip--bottom > .wp-block-group {
  margin: 0 !important;
  width: 100% !important;
  height: 100% !important;
  align-self: stretch !important;
}
.run7-form-photo-strip--bottom .wp-block-image img,
.run7-form-photo-strip--bottom > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 16 / 9 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 18px !important;
}

/* Seven-race cards: keep rows visually even and spacing compact */
.run7-event-grid {
  grid-auto-rows: 1fr;
}
.run7-event-grid .run7-event-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}
.run7-event-grid .run7-event-card .run7-event-body {
  flex: 1 1 auto !important;
}
.run7-event-grid .run7-event-card .run7-event-link {
  margin-top: auto !important;
}

/* Restore proper cards in the last screenshot (community/news query loop) */
.run7-home .run7-community-feed.wp-block-post-template,
.run7-home .wp-block-query .wp-block-post-template.is-layout-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
  padding: 0 !important;
  margin: 28px 0 0 !important;
  list-style: none !important;
}
.run7-home .run7-community-feed.wp-block-post-template > li,
.run7-home .wp-block-query .wp-block-post-template.is-layout-grid > li,
.run7-home .wp-block-query .wp-block-post-template.is-layout-grid > .wp-block-post {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--run7-surface-2) !important;
  border: 1px solid var(--run7-line) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  box-shadow: var(--run7-shadow) !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-featured-image {
  margin: 0 !important;
  line-height: 0;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-featured-image a,
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-featured-image img {
  display: block !important;
  width: 100% !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-featured-image img {
  height: 210px !important;
  object-fit: cover !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-date,
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-title,
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-excerpt {
  margin-left: 20px !important;
  margin-right: 20px !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-date {
  margin-top: 16px !important;
  margin-bottom: 6px !important;
  color: #5b6978;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-title {
  margin-top: 0 !important;
  margin-bottom: 8px !important;
  line-height: 1.18 !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-title a {
  color: var(--run7-blue) !important;
  text-decoration: none !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-excerpt {
  margin-top: 0 !important;
  margin-bottom: 20px !important;
  line-height: 1.55 !important;
  flex: 1 1 auto !important;
}
.run7-home .wp-block-query .wp-block-post-template .wp-block-post-excerpt__more-link {
  display: inline-block;
  margin-top: 10px;
  font-weight: 800;
  color: var(--run7-blue);
}

@media (max-width: 950px) {
  .run7-home .run7-community-feed.wp-block-post-template,
  .run7-home .wp-block-query .wp-block-post-template.is-layout-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 650px) {
  .run7-pillars,
  .run7-stats.run7-stats--photo {
    grid-auto-rows: auto;
  }
  .run7-pillars > .run7-photo-pillar > .wp-block-image img,
  .run7-pillars > .run7-photo-pillar > figure.wp-block-image img,
  .run7-pillars > .wp-block-group > .wp-block-image img,
  .run7-pillars > .wp-block-group > figure.wp-block-image img,
  .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-image img,
  .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > figure.wp-block-image img,
  .run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > .wp-block-image img,
  .run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > figure.wp-block-image img {
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
  }
  .run7-home .run7-community-feed.wp-block-post-template,
  .run7-home .wp-block-query .wp-block-post-template.is-layout-grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 18px !important;
  }
  .run7-home .wp-block-query .wp-block-post-template .wp-block-post-featured-image img {
    height: auto !important;
    aspect-ratio: 16 / 10 !important;
  }
}

/* RUN7 3.1.7: aligned logos in the seven race cards, front end AND Gutenberg editor.
   A fixed maximum stage is used, but WordPress image width/height settings remain usable. */
.run7-home .run7-event-grid .run7-event-card .run7-event-body,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-body {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
}
.run7-home .run7-event-grid .run7-event-card .run7-event-logo,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo,
.run7-event-grid .run7-event-card figure.wp-block-image.run7-event-logo {
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 108px !important;
  width: 100% !important;
  height: 108px !important;
  min-height: 108px !important;
  max-height: 108px !important;
  padding: 5px !important;
  margin: 0 0 4px !important;
  border: 1px solid var(--run7-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  overflow: hidden !important;
}
.run7-event-grid .run7-event-card .run7-event-logo > a,
.run7-event-grid .run7-event-card .run7-event-logo > .components-resizable-box__container {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 100% !important;
  max-height: 100% !important;
}
.run7-home .run7-event-grid .run7-event-card .run7-event-logo img,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo img {
  display: block !important;
  width: auto;
  height: auto;
  max-width: 100% !important;
  max-height: 96px !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: auto !important;
}
/* Some logos are wider/shorter: never allow their own intrinsic height
   or Gutenberg block spacing to change the shared logo stage. */
.run7-event-grid .run7-event-card .run7-event-logo.wp-block-image + * {
  margin-block-start: 0 !important;
}
@media (max-width:650px) {
  .run7-home .run7-event-grid .run7-event-card .run7-event-logo,
  .editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo,
  .run7-event-grid .run7-event-card figure.wp-block-image.run7-event-logo {
    height: 100px !important;
    min-height: 100px !important;
    max-height: 100px !important;
    flex-basis: 100px !important;
  }
  .run7-home .run7-event-grid .run7-event-card .run7-event-logo img,
  .editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo img {
    max-height: 88px !important;
  }
}
/* Make Gutenberg's invalid-block alerts readable instead of 50px narrow;
   invalid serialization still needs block recovery in WordPress. */
.editor-styles-wrapper .block-editor-warning,
.editor-styles-wrapper .block-editor-block-list__block .block-editor-warning {
  box-sizing: border-box !important;
  min-width: min(100%, 320px) !important;
  max-width: 100% !important;
  width: 100% !important;
}


/* RUN7 3.1.8 – coherent visual system and editor parity.
 * Keep this after the historic layout rules so block conversions cannot
 * make the live presentation disagree with Gutenberg. */
:root {
  --run7-bg: #eceef1;
  --run7-bg-soft: #eceef1;
  --run7-surface: #ffffff;
  --run7-surface-2: #ffffff;
  --run7-line: #d8dce2;
  --run7-shadow: 0 14px 30px rgba(17, 39, 65, .12);
  --run7-shadow-hover: 0 18px 36px rgba(17, 39, 65, .18);
}
body, .run7-home, .run7-front-main, .run7-page-main,
.run7-section, .run7-section--soft,
.run7-section.run7-section--soft, .run7-page-main .wp-block-post-content {
  background-color: var(--run7-bg);
}
/* Honor intentionally blue footer, image hero and blue call-to-action sections. */
.run7-site-footer { background-color: #132f52 !important; }
.run7-section--blue { background: linear-gradient(180deg,#0f4f8e,#1261ae) !important; }
.run7-hero-section { background-color: #0b355d; }

/* Unified elevation of light cards, picture frames and registration information. */
.run7-home .run7-event-card,
.run7-home .run7-stat.run7-stat--photo,
.run7-home .run7-photo-pillar,
.run7-home .run7-pillar,
.run7-home .run7-image-card,
.run7-home .run7-editorial-strip .wp-block-image,
.run7-home .run7-mosaic figure,
.run7-home .run7-social-grid .wp-block-image,
.run7-page-main .run7-payment-block,
.run7-page-main .run7-form-photo-strip--bottom figure.wp-block-image,
.run7-home .wp-block-query .wp-block-post-template > li {
  box-shadow: var(--run7-shadow) !important;
}
.run7-home .run7-editorial-strip .wp-block-image,
.run7-home .run7-mosaic figure,
.run7-page-main .run7-form-photo-strip--bottom figure.wp-block-image {
  border-radius: 20px;
  overflow: hidden;
}

/* Logos: never crop bottom edges; actual image is contained in the stage.
 * Increase the fixed stage from 108 to 146px and prevent flex item shrinking. */
.run7-home .run7-event-grid .run7-event-card .run7-event-body figure.wp-block-image.run7-event-logo,
.run7-home .run7-event-grid .run7-event-card .run7-event-body .wp-block-image.run7-event-logo,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-body figure.wp-block-image.run7-event-logo,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-body .wp-block-image.run7-event-logo {
  box-sizing: border-box !important;
  width: 100% !important;
  height: 146px !important;
  min-height: 146px !important;
  max-height: 146px !important;
  flex: 0 0 146px !important;
  padding: 13px 10px !important;
  margin: 0 0 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #fff !important;
  border: 1px solid var(--run7-line) !important;
  border-radius: 16px !important;
}
.run7-home .run7-event-grid .run7-event-card .run7-event-logo > a,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo > a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
}
.run7-home .run7-event-grid .run7-event-card .run7-event-logo img,
.editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo img {
  position: static !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 118px !important;
  min-height: 0 !important;
  margin: auto !important;
  object-fit: contain !important;
  object-position: center !important;
  transform: none !important;
}

/* Editor alignment: WordPress editor canvas has Gutenberg-specific wrappers.
 * Use the actual same grid and fixed landscape image height as the front end. */
.editor-styles-wrapper .run7-editorial-strip {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 20px !important;
  align-items: stretch !important;
}
.editor-styles-wrapper .run7-editorial-strip > *,
.editor-styles-wrapper .run7-form-photo-strip--bottom > *,
.editor-styles-wrapper .run7-mosaic > * {
  min-width: 0 !important;
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}
.editor-styles-wrapper .run7-editorial-strip figure.wp-block-image,
.editor-styles-wrapper .run7-editorial-strip .wp-block-image,
.editor-styles-wrapper .run7-form-photo-strip--bottom figure.wp-block-image,
.editor-styles-wrapper .run7-form-photo-strip--bottom .wp-block-image {
  box-sizing: border-box !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  box-shadow: var(--run7-shadow) !important;
  margin: 0 !important;
}
.editor-styles-wrapper .run7-editorial-strip figure.wp-block-image img,
.editor-styles-wrapper .run7-editorial-strip .wp-block-image img,
.editor-styles-wrapper .run7-form-photo-strip--bottom figure.wp-block-image img,
.editor-styles-wrapper .run7-form-photo-strip--bottom .wp-block-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}
.editor-styles-wrapper .run7-form-photo-strip--bottom {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
.editor-styles-wrapper .run7-mosaic {
  display: grid !important;
  grid-template-columns: repeat(12,minmax(0,1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
}
.editor-styles-wrapper .run7-mosaic figure.wp-block-image {
  box-sizing: border-box !important;
  aspect-ratio: 4 / 3 !important;
  min-height: 0 !important;
  height: auto !important;
  border-radius: 20px !important;
  box-shadow: var(--run7-shadow) !important;
  overflow: hidden !important;
}
.editor-styles-wrapper .run7-mosaic figure.wp-block-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

/* All editable photo rows: same shadow direction and image box. */
.run7-home .run7-editorial-strip > figure.wp-block-image,
.run7-home .run7-editorial-strip > .wp-block-image {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16/9 !important;
  margin: 0 !important;
}
.run7-home .run7-editorial-strip > figure.wp-block-image img,
.run7-home .run7-editorial-strip > .wp-block-image img {
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
}

/* More modern, substantial 'scroll to top' control, keyboard accessible. */
.run7-back-top {
  position: fixed !important;
  right: 22px !important;
  bottom: 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 58px !important;
  height: 58px !important;
  border-radius: 18px !important;
  background: #1261ae !important;
  color: transparent !important;
  font-size: 0 !important;
  border: 2px solid rgba(255,255,255,.22) !important;
  box-shadow: 0 12px 26px rgba(13,49,94,.29) !important;
  text-decoration: none !important;
  z-index: 100 !important;
  transition: transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.run7-back-top::before {
  content: "";
  display: block;
  width: 14px;
  height: 14px;
  border-top: 4px solid #fff;
  border-left: 4px solid #fff;
  border-radius: 1px;
  transform: translateY(4px) rotate(45deg);
}
.run7-back-top::after {
  content: "";
  position: absolute;
  width: 4px;
  height: 20px;
  background: #fff;
  border-radius: 3px;
  transform: translateY(5px);
}
.run7-back-top:hover { background: #0c4c90 !important; transform: translateY(-3px); box-shadow: 0 15px 30px rgba(13,49,94,.34) !important; }
.run7-back-top:focus-visible { outline: 3px solid #ffce59; outline-offset: 3px; }

@media (max-width: 950px) {
  .editor-styles-wrapper .run7-editorial-strip,
  .editor-styles-wrapper .run7-form-photo-strip--bottom {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width: 650px) {
  .run7-home .run7-event-grid .run7-event-card .run7-event-body figure.wp-block-image.run7-event-logo,
  .editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-body figure.wp-block-image.run7-event-logo {
    height: 132px !important;
    min-height: 132px !important;
    max-height: 132px !important;
    flex-basis: 132px !important;
  }
  .run7-home .run7-event-grid .run7-event-card .run7-event-logo img,
  .editor-styles-wrapper .run7-event-grid .run7-event-card .run7-event-logo img {
    max-height: 104px !important;
  }
  .editor-styles-wrapper .run7-editorial-strip,
  .editor-styles-wrapper .run7-form-photo-strip--bottom { grid-template-columns: minmax(0,1fr) !important; }
  .editor-styles-wrapper .run7-mosaic { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .run7-back-top { right: 12px !important; bottom: 12px !important; width: 50px !important; height: 50px !important; }
}


/* RUN7 3.1.9: Community poster gallery uses the same soft-grey background as
   other homepage sections, while the footer intentionally remains blue. */
.run7-home #community.run7-section--blue,
.run7-front-main #community.run7-section--blue,
section#community.run7-section.run7-section--blue,
.editor-styles-wrapper #community.run7-section--blue {
  background: var(--run7-bg) !important;
  background-color: var(--run7-bg) !important;
  color: var(--run7-text) !important;
}
.run7-home #community.run7-section--blue .run7-contained,
.editor-styles-wrapper #community.run7-section--blue .run7-contained {
  background: transparent !important;
}
.run7-home #community.run7-section--blue .run7-social-grid img,
.run7-front-main #community.run7-section--blue .run7-social-grid img,
.editor-styles-wrapper #community.run7-section--blue .run7-social-grid img {
  border: 0 !important;
  border-radius: 18px !important;
  box-shadow: var(--run7-shadow) !important;
  height: auto !important;
  object-fit: contain !important;
}
/* Headings remain readable on the light background if the gallery later gets text. */
.run7-home #community.run7-section--blue h2,
.run7-home #community.run7-section--blue h3,
.run7-home #community.run7-section--blue p,
.editor-styles-wrapper #community.run7-section--blue h2,
.editor-styles-wrapper #community.run7-section--blue h3,
.editor-styles-wrapper #community.run7-section--blue p {
  color: var(--run7-text) !important;
}


/* RUN7 3.2.0 – finish the light section styling and remove the remaining gaps.
   - add an eighth visual tile after the 7th race card so the desktop grid no longer ends
     with a large empty area;
   - remove the faint white corner artefacts in the light grey split panel;
   - align the signup photo with the surrounding content and keep the section visually
     consistent with the rest of the homepage. */
.run7-home .run7-event-grid::after,
.editor-styles-wrapper .run7-event-grid::after {
  content: "";
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 0;
  border-radius: 22px;
  border: 1px solid var(--run7-line);
  background: #fff url("assets/images/social-6.jpg") center center / cover no-repeat;
  box-shadow: var(--run7-shadow);
  align-self: start;
}
@media (min-width: 1000px) {
  .run7-home .run7-event-grid::after,
  .editor-styles-wrapper .run7-event-grid::after {
    grid-column: span 2;
  }
}
@media (max-width: 999.98px) {
  .run7-home .run7-event-grid::after,
  .editor-styles-wrapper .run7-event-grid::after {
    grid-column: auto;
  }
}

.run7-home .run7-signup-panel.run7-signup-panel--split,
.run7-front-main .run7-signup-panel.run7-signup-panel--split,
.editor-styles-wrapper .run7-signup-panel.run7-signup-panel--split {
  background: var(--run7-bg-soft) !important;
  border: 1px solid var(--run7-line) !important;
  border-radius: 28px !important;
  box-shadow: var(--run7-shadow) !important;
  overflow: hidden;
  align-items: start !important;
}
.run7-home .run7-signup-panel.run7-signup-panel--split > *,
.run7-front-main .run7-signup-panel.run7-signup-panel--split > *,
.editor-styles-wrapper .run7-signup-panel.run7-signup-panel--split > * {
  position: relative;
  z-index: 1;
}
.run7-home .run7-signup-panel.run7-signup-panel--split::before,
.run7-front-main .run7-signup-panel.run7-signup-panel--split::before,
.editor-styles-wrapper .run7-signup-panel.run7-signup-panel--split::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--run7-bg-soft);
  border-radius: inherit;
  z-index: 0;
}
.run7-home .run7-signup-panel--split .run7-signup-panel__content,
.run7-front-main .run7-signup-panel--split .run7-signup-panel__content,
.editor-styles-wrapper .run7-signup-panel--split .run7-signup-panel__content {
  align-self: center;
}
.run7-home .run7-signup-panel--split .run7-signup-panel__media,
.run7-front-main .run7-signup-panel--split .run7-signup-panel__media,
.editor-styles-wrapper .run7-signup-panel--split .run7-signup-panel__media {
  align-self: start;
}
.run7-home .run7-signup-panel--split .run7-signup-panel__media img,
.run7-front-main .run7-signup-panel--split .run7-signup-panel__media img,
.editor-styles-wrapper .run7-signup-panel--split .run7-signup-panel__media img {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  object-position: center center;
  border-radius: 24px !important;
  background: transparent !important;
}
@media (max-width: 900px) {
  .run7-home .run7-signup-panel.run7-signup-panel--split,
  .run7-front-main .run7-signup-panel.run7-signup-panel--split,
  .editor-styles-wrapper .run7-signup-panel.run7-signup-panel--split {
    overflow: visible;
  }
  .run7-home .run7-signup-panel--split .run7-signup-panel__media img,
  .run7-front-main .run7-signup-panel--split .run7-signup-panel__media img,
  .editor-styles-wrapper .run7-signup-panel--split .run7-signup-panel__media img {
    aspect-ratio: 16 / 10;
  }
}


/* RUN7 3.2.1: equal-height final race picture and clear campaign section. */
@media (min-width: 1000px) {
  .run7-home .run7-event-grid::after,
  .editor-styles-wrapper .run7-event-grid::after {
    aspect-ratio: auto !important;
    height: 100% !important;
    min-height: 100% !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}
/* The three campaign images form a neat image group without pale/white corner slivers. */
.run7-home #community.run7-section--blue .run7-social-grid,
.run7-front-main #community.run7-section--blue .run7-social-grid,
.editor-styles-wrapper #community.run7-section--blue .run7-social-grid {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 24px !important;
  align-items: start !important;
  background: transparent !important;
  overflow: visible !important;
}
/* Language-specific introduction is generated without modifying existing page content. */
.run7-home #community .run7-social-grid::before,
.run7-front-main #community .run7-social-grid::before,
.editor-styles-wrapper #community .run7-social-grid::before {
  content: "Freut euch auf RUN7!";
  grid-column: 1 / -1;
  display: block;
  margin: 0 0 4px !important;
  padding: 0;
  color: var(--run7-blue) !important;
  font: 800 clamp(2rem,3.7vw,3rem)/1.16 "Trebuchet MS","Segoe UI",Arial,sans-serif !important;
  letter-spacing: -.025em;
  text-align: left;
  text-transform: none;
}
html[lang^="it"] .run7-home #community .run7-social-grid::before,
html[lang^="it"] .run7-front-main #community .run7-social-grid::before,
html[lang^="it"] .editor-styles-wrapper #community .run7-social-grid::before {
  content: "Preparati a vivere RUN7!";
}
.run7-home #community .run7-social-grid > img,
.run7-front-main #community .run7-social-grid > img,
.editor-styles-wrapper #community .run7-social-grid > img,
.run7-home #community .run7-social-grid > figure,
.run7-front-main #community .run7-social-grid > figure,
.editor-styles-wrapper #community .run7-social-grid > figure {
  border: none !important;
  outline: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
  border-radius: 18px !important;
  line-height: 0;
}
.run7-home #community .run7-social-grid > img,
.run7-front-main #community .run7-social-grid > img,
.editor-styles-wrapper #community .run7-social-grid > img,
.run7-home #community .run7-social-grid figure img,
.run7-front-main #community .run7-social-grid figure img,
.editor-styles-wrapper #community .run7-social-grid figure img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  border: 0 !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 40px rgba(13,34,60,.10) !important;
  vertical-align: bottom !important;
}
@media (max-width: 650px) {
  .run7-home #community .run7-social-grid,
  .run7-front-main #community .run7-social-grid,
  .editor-styles-wrapper #community .run7-social-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}


/* RUN7 3.2.3: the extra tile after race 7 must show the COMPLETE image.
   Change the image and fit mode in Appearance > RUN7 Gestaltung. */
.run7-home .run7-event-grid::after,
.run7-front-main .run7-event-grid::after,
.editor-styles-wrapper .run7-event-grid::after {
  background-color: #fff !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: contain !important;
}
/* Optional Gutenberg block class for an uncropped photo: select image block,
   Advanced > Additional CSS class(es) > run7-fit-image. */
.run7-home figure.wp-block-image.run7-fit-image,
.run7-page-main figure.wp-block-image.run7-fit-image,
.editor-styles-wrapper figure.wp-block-image.run7-fit-image {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#fff !important;
  overflow:hidden !important;
}
.run7-home figure.wp-block-image.run7-fit-image img,
.run7-page-main figure.wp-block-image.run7-fit-image img,
.editor-styles-wrapper figure.wp-block-image.run7-fit-image img {
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  object-position:center center !important;
}


/* Signup introduction: a more prominent, consistent DE/IT blue heading. */
.run7-home .run7-signup-panel--split .run7-signup-panel__content h2,
.run7-home .run7-signup-panel--split .run7-signup-panel__content h3,
.run7-front-main .run7-signup-panel--split .run7-signup-panel__content h2,
.run7-front-main .run7-signup-panel--split .run7-signup-panel__content h3,
.editor-styles-wrapper .run7-signup-panel--split .run7-signup-panel__content h2,
.editor-styles-wrapper .run7-signup-panel--split .run7-signup-panel__content h3 {
  color: #1261ae !important;
  font-size: clamp(2.3rem, 4.2vw, 3.2rem) !important;
  font-weight: 800 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  margin: 0 0 20px !important;
}

/* Keep the final picture after the seven races compact on small viewports. */
@media (max-width: 782px) {
  .run7-home .run7-event-grid,
  .run7-front-main .run7-event-grid,
  .editor-styles-wrapper .run7-event-grid {
    grid-template-columns: minmax(0,1fr) !important;
    grid-auto-rows: auto !important;
    align-items: start !important;
    gap: 18px !important;
  }
  .run7-home .run7-event-grid::after,
  .run7-front-main .run7-event-grid::after,
  .editor-styles-wrapper .run7-event-grid::after {
    grid-column: 1 / -1 !important;
    display: block !important;
    align-self: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    width: 100% !important;
    aspect-ratio: 16 / 10 !important;
    margin: 0 !important;
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    box-sizing: border-box !important;
  }
  /* Original sections use generous desktop paddings, too large on phones. */
  .run7-home #laeufe.run7-section,
  .run7-front-main #laeufe.run7-section,
  .editor-styles-wrapper #laeufe.run7-section {
    padding-bottom: 28px !important;
  }
  .run7-home .run7-photo-band,
  .run7-front-main .run7-photo-band,
  .editor-styles-wrapper .run7-photo-band {
    margin: 0 !important;
    padding: 10px 16px 22px !important;
  }
  .run7-home .run7-photo-band__inner,
  .run7-front-main .run7-photo-band__inner,
  .editor-styles-wrapper .run7-photo-band__inner {
    min-height: 0 !important;
    padding: 38px 20px !important;
  }
  .run7-home .run7-photo-band + .run7-section,
  .run7-front-main .run7-photo-band + .run7-section,
  .editor-styles-wrapper .run7-photo-band + .run7-section {
    padding-top: 24px !important;
  }
}



/* RUN7 3.2.8 – stable image element for the migrated Gutenberg hero.
   No layered background-image pseudo-elements and no inherited grey cover.
   The media is generated server-side for both languages (render_block). */
.run7-home .run7-hero-section,
.run7-front-main .run7-hero-section,
.editor-styles-wrapper .run7-hero-section {
  position: relative !important;
  isolation: isolate !important;
  overflow: hidden !important;
  background: #173c5f !important;
  background-image: none !important;
  border-radius: 0 !important;
  min-height: 700px;
  display: flex !important;
  align-items: center !important;
}
.run7-home .run7-hero-section::before,
.run7-home .run7-hero-section::after,
.run7-front-main .run7-hero-section::before,
.run7-front-main .run7-hero-section::after,
.editor-styles-wrapper .run7-hero-section::before,
.editor-styles-wrapper .run7-hero-section::after {
  content: none !important;
  display: none !important;
}
.run7-home .run7-hero-section > .run7-hero-media,
.run7-front-main .run7-hero-section > .run7-hero-media,
.editor-styles-wrapper .run7-hero-section > .run7-hero-media {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
  background: #173c5f !important;
  overflow: hidden !important;
  max-width: none !important;
}
.run7-hero-media > img {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  opacity: 1 !important;
  filter: none !important;
}
.run7-hero-media::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(9,31,52,.42), rgba(9,31,52,.62));
  pointer-events: none;
}
.run7-home .run7-hero-section > .run7-hero__inner,
.run7-front-main .run7-hero-section > .run7-hero__inner,
.editor-styles-wrapper .run7-hero-section > .run7-hero__inner {
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.run7-home .run7-hero__inner::before,
.run7-home .run7-hero__inner::after,
.run7-front-main .run7-hero__inner::before,
.run7-front-main .run7-hero__inner::after { content: none !important; display: none !important; }
.run7-home .run7-hero__inner > :not(.run7-hero-stats):not(.run7-buttons),
.run7-front-main .run7-hero__inner > :not(.run7-hero-stats):not(.run7-buttons) {
  background-color: transparent !important;
  background-image: none !important;
}
@media (max-width: 782px) {
  .run7-home .run7-hero-section,
  .run7-front-main .run7-hero-section,
  .editor-styles-wrapper .run7-hero-section { min-height: 620px !important; }
}

/* RUN7 3.2.9: hero is rendered with a fresh wrapper at the server boundary.
   This element no longer carries old Gutenberg group backgrounds or pseudo-layers. */
body .run7-home .run7-hero-section.run7-hero-rebuilt,
body .run7-front-main .run7-hero-section.run7-hero-rebuilt {
  position: relative !important;
  isolation: isolate !important;
  display: flex !important;
  align-items: center !important;
  min-height: 700px !important;
  padding: 80px 24px 70px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  background: #102d46 !important;
  box-shadow: none !important;
}
body .run7-home .run7-hero-rebuilt::before,
body .run7-home .run7-hero-rebuilt::after,
body .run7-front-main .run7-hero-rebuilt::before,
body .run7-front-main .run7-hero-rebuilt::after {
  display: none !important;
  content: none !important;
}
body .run7-home .run7-hero-rebuilt > .run7-hero-rebuilt__photo,
body .run7-front-main .run7-hero-rebuilt > .run7-hero-rebuilt__photo {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #102d46 !important;
  pointer-events: none !important;
}
.run7-hero-rebuilt > .run7-hero-rebuilt__photo > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  opacity: 1 !important;
}
.run7-hero-rebuilt > .run7-hero-rebuilt__photo::after {
  position: absolute;
  content: "";
  display: block;
  inset: 0;
  background: linear-gradient(180deg,rgba(9,31,52,.42),rgba(9,31,52,.62));
}
body .run7-home .run7-hero-rebuilt > .run7-hero__inner,
body .run7-front-main .run7-hero-rebuilt > .run7-hero__inner {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: 1180px !important;
  display: block !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  color: #fff !important;
}
.run7-hero-rebuilt > .run7-hero__inner > :not(.run7-hero-stats):not(.run7-buttons) {
  background: transparent !important;
  box-shadow: none !important;
}
@media(max-width:782px) {
  body .run7-home .run7-hero-section.run7-hero-rebuilt,
  body .run7-front-main .run7-hero-section.run7-hero-rebuilt {
    min-height: 620px !important;
    padding: 64px 18px 48px !important;
  }
}


/* RUN7 3.2.10: reduce ONLY the gap above DIE SERIE / LA SERIE.
   The preceding image strip sits in a padded section; both adjoining section
   paddings contributed to an excessively large empty area. */
body .run7-home #laeufe.run7-section,
body .run7-front-main #laeufe.run7-section,
.editor-styles-wrapper #laeufe.run7-section {
  padding-top: 20px !important;
}
/* Modern browsers (including current Edge): target only the section containing
   the immediately preceding editorial picture strip. */
body .run7-home .run7-section:has(.run7-editorial-strip),
body .run7-front-main .run7-section:has(.run7-editorial-strip),
.editor-styles-wrapper .run7-section:has(.run7-editorial-strip) {
  padding-bottom: 24px !important;
}
@media (max-width: 782px) {
  body .run7-home #laeufe.run7-section,
  body .run7-front-main #laeufe.run7-section,
  .editor-styles-wrapper #laeufe.run7-section {
    padding-top: 16px !important;
  }
  body .run7-home .run7-section:has(.run7-editorial-strip),
  body .run7-front-main .run7-section:has(.run7-editorial-strip),
  .editor-styles-wrapper .run7-section:has(.run7-editorial-strip) {
    padding-bottom: 18px !important;
  }
}


/* RUN7 3.2.11 — root-cause fix for the grey layer hiding the homepage hero.
   The signup panel's ::before was absolutely positioned, but the panel did not
   establish a containing block. Consequently the grey pseudo-element could be
   painted over the hero instead of being confined to the lower signup panel.
   Keep the decorative grey fill within its own card; no changes to hero media. */
body .run7-home .run7-signup-panel.run7-signup-panel--split,
body .run7-front-main .run7-signup-panel.run7-signup-panel--split,
.editor-styles-wrapper .run7-signup-panel.run7-signup-panel--split {
  position: relative !important;
  isolation: isolate !important;
}
body .run7-home .run7-signup-panel.run7-signup-panel--split::before,
body .run7-front-main .run7-signup-panel.run7-signup-panel--split::before,
.editor-styles-wrapper .run7-signup-panel.run7-signup-panel--split::before {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
}


/* RUN7 3.2.12 — compact spacing immediately before the Emotionen/Emozioni gallery.
   Limit these adjustments to the gallery following the photograph quote band. */
body .run7-home .run7-photo-band:has(+ .run7-section--soft .run7-mosaic),
body .run7-front-main .run7-photo-band:has(+ .run7-section--soft .run7-mosaic),
.editor-styles-wrapper .run7-photo-band:has(+ .run7-section--soft .run7-mosaic) {
  padding-bottom: 12px !important;
  margin-bottom: 0 !important;
}
body .run7-home .run7-photo-band + .run7-section--soft:has(.run7-mosaic),
body .run7-front-main .run7-photo-band + .run7-section--soft:has(.run7-mosaic),
.editor-styles-wrapper .run7-photo-band + .run7-section--soft:has(.run7-mosaic) {
  padding-top: 24px !important;
  margin-top: 0 !important;
}
@media (max-width: 782px) {
  body .run7-home .run7-photo-band:has(+ .run7-section--soft .run7-mosaic),
  body .run7-front-main .run7-photo-band:has(+ .run7-section--soft .run7-mosaic),
  .editor-styles-wrapper .run7-photo-band:has(+ .run7-section--soft .run7-mosaic) {
    padding-bottom: 6px !important;
  }
  body .run7-home .run7-photo-band + .run7-section--soft:has(.run7-mosaic),
  body .run7-front-main .run7-photo-band + .run7-section--soft:has(.run7-mosaic),
  .editor-styles-wrapper .run7-photo-band + .run7-section--soft:has(.run7-mosaic) {
    padding-top: 16px !important;
  }
}

/* RUN7 3.2.14: shared DE + IT presentation. This block intentionally contains
   no language selectors. User-entered content remains editable in Gutenberg. */

/* Both languages use exactly the same layout template for each image tile.
   Use a stable image frame and prevent the Italian inline Gutenberg width
   attributes from exposing a blank vertical strip. */
body .run7-home .run7-mosaic > figure.wp-block-image,
body .run7-home .run7-mosaic > .wp-block-image,
.editor-styles-wrapper .run7-mosaic > figure.wp-block-image,
.editor-styles-wrapper .run7-mosaic > .wp-block-image {
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  aspect-ratio: 4 / 3 !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  background: transparent !important;
  box-shadow: var(--run7-shadow) !important;
}
body .run7-home .run7-mosaic > figure.wp-block-image > a,
body .run7-home .run7-mosaic > .wp-block-image > a,
.editor-styles-wrapper .run7-mosaic > figure.wp-block-image > a,
.editor-styles-wrapper .run7-mosaic > .wp-block-image > a {
  position: absolute !important;
  display: block !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}
body .run7-home .run7-mosaic > figure.wp-block-image img,
body .run7-home .run7-mosaic > .wp-block-image img,
.editor-styles-wrapper .run7-mosaic > figure.wp-block-image img,
.editor-styles-wrapper .run7-mosaic > .wp-block-image img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 0 !important;
}

/* The same responsive grid geometry for both homepages and the editor. */
body .run7-home .run7-mosaic,
.editor-styles-wrapper .run7-mosaic {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
}
body .run7-home .run7-mosaic > figure.wp-block-image:nth-child(-n+9),
.editor-styles-wrapper .run7-mosaic > figure.wp-block-image:nth-child(-n+9) {
  grid-column: span 4 !important;
}
body .run7-home .run7-mosaic > figure.wp-block-image:nth-child(n+10),
.editor-styles-wrapper .run7-mosaic > figure.wp-block-image:nth-child(n+10) {
  grid-column: span 6 !important;
}

/* A matched photo strip and event-card grid, independently of image source
   or translated title length. */
body .run7-home .run7-editorial-strip > figure.wp-block-image,
.editor-styles-wrapper .run7-editorial-strip > figure.wp-block-image {
  box-sizing: border-box !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 9 !important;
  overflow: hidden !important;
}
body .run7-home .run7-editorial-strip > figure.wp-block-image img,
.editor-styles-wrapper .run7-editorial-strip > figure.wp-block-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
body .run7-home .run7-event-grid,
.editor-styles-wrapper .run7-event-grid {
  align-items: stretch !important;
}
body .run7-home .run7-event-grid .run7-event-card,
.editor-styles-wrapper .run7-event-grid .run7-event-card {
  height: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 782px) {
  body .run7-home .run7-mosaic,
  .editor-styles-wrapper .run7-mosaic {
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 12px !important;
  }
  body .run7-home .run7-mosaic > figure.wp-block-image,
  .editor-styles-wrapper .run7-mosaic > figure.wp-block-image {
    grid-column: span 2 !important;
  }
}


/* RUN7 3.2.15: rounded BOTTOM corners on photography, desktop + mobile.
   Keep the text and links of each event card unaffected. */
body .run7-home .run7-event-grid .run7-event-card > .run7-event-photo,
body .run7-front-main .run7-event-grid .run7-event-card > .run7-event-photo,
.editor-styles-wrapper .run7-event-grid .run7-event-card > .run7-event-photo,
body .run7-home .run7-photo-pillar > figure.wp-block-image,
body .run7-front-main .run7-photo-pillar > figure.wp-block-image,
.editor-styles-wrapper .run7-photo-pillar > figure.wp-block-image,
body .run7-home .run7-stat--photo > figure.wp-block-image,
body .run7-front-main .run7-stat--photo > figure.wp-block-image,
.editor-styles-wrapper .run7-stat--photo > figure.wp-block-image {
  border-radius: 18px !important;
  overflow: hidden !important;
  isolation: isolate;
}
body .run7-home .run7-event-grid .run7-event-card > .run7-event-photo img,
body .run7-front-main .run7-event-grid .run7-event-card > .run7-event-photo img,
.editor-styles-wrapper .run7-event-grid .run7-event-card > .run7-event-photo img,
body .run7-home .run7-photo-pillar > figure.wp-block-image img,
body .run7-front-main .run7-photo-pillar > figure.wp-block-image img,
.editor-styles-wrapper .run7-photo-pillar > figure.wp-block-image img,
body .run7-home .run7-stat--photo > figure.wp-block-image img,
body .run7-front-main .run7-stat--photo > figure.wp-block-image img,
.editor-styles-wrapper .run7-stat--photo > figure.wp-block-image img {
  border-radius: inherit !important;
}
/* Also keep photographs with a direct <img> child softly rounded. */
body .run7-home .run7-photo-pillar > img,
body .run7-front-main .run7-photo-pillar > img,
.editor-styles-wrapper .run7-photo-pillar > img,
body .run7-home .run7-stat--photo > img,
body .run7-front-main .run7-stat--photo > img,
.editor-styles-wrapper .run7-stat--photo > img {
  border-radius: 18px !important;
}

/* Mobile only: all thirteen Emotionen/Emozioni tiles use the same
   full-width single-column frame. Do not change desktop geometry. */
@media (max-width: 782px) {
  body .run7-home .run7-mosaic,
  body .run7-front-main .run7-mosaic,
  .editor-styles-wrapper .run7-mosaic {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 14px !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body .run7-home .run7-mosaic > figure.wp-block-image,
  body .run7-home .run7-mosaic > .wp-block-image,
  body .run7-front-main .run7-mosaic > figure.wp-block-image,
  body .run7-front-main .run7-mosaic > .wp-block-image,
  .editor-styles-wrapper .run7-mosaic > figure.wp-block-image,
  .editor-styles-wrapper .run7-mosaic > .wp-block-image {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-inline: 0 !important;
    justify-self: stretch !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }
}


/* RUN7 3.2.17: Restore the three introductory image cards to V3.2.15.
   The full-size-photo override caused excessive vertical white space.
   Keep the V3.2.16 mobile Emotionen gallery fix below. */

/* RUN7 3.2.16: mobile Emotionen/Emozioni - remove grid span conflicts
   entirely; EVERY gallery child is a full-width row of the same parent. */
@media (max-width: 782px) {
  body .run7-home .run7-mosaic,
  body .run7-front-main .run7-mosaic,
  .editor-styles-wrapper .run7-mosaic {
    display: flex !important;
    flex-flow: column nowrap !important;
    align-items: stretch !important;
    justify-content: flex-start !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    gap: 14px !important;
    box-sizing: border-box !important;
  }
  body .run7-home .run7-mosaic > *,
  body .run7-front-main .run7-mosaic > *,
  .editor-styles-wrapper .run7-mosaic > * {
    flex: 0 0 auto !important;
    align-self: stretch !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }
  body .run7-home .run7-mosaic figure.wp-block-image,
  body .run7-front-main .run7-mosaic figure.wp-block-image,
  .editor-styles-wrapper .run7-mosaic figure.wp-block-image {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }
}

/* RUN7 3.2.18: round ONLY the visible photo frame of the three
   Laeufe / Sammelmeldung / Community cards. Preserve image height,
   object-fit and all card spacing from 3.2.17. The extra specificity
   overrides legacy border-radius:0 declarations on Gutenberg figures. */
body .run7-front-main .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > figure.wp-block-image,
body .run7-front-main .run7-stats.run7-stats--photo > .wp-block-group.run7-stat.run7-stat--photo > figure.wp-block-image,
body .run7-front-main .run7-pillars > .run7-photo-pillar > figure.wp-block-image,
body .run7-home .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > figure.wp-block-image,
body .run7-home .run7-pillars > .run7-photo-pillar > figure.wp-block-image,
.editor-styles-wrapper .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > figure.wp-block-image,
.editor-styles-wrapper .run7-pillars > .run7-photo-pillar > figure.wp-block-image {
  border-radius: 18px !important;
  overflow: hidden !important;
}
/* WP may render image wrappers as div.wp-block-image rather than figure. */
body .run7-front-main .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-image,
body .run7-front-main .run7-pillars > .run7-photo-pillar > .wp-block-image,
body .run7-home .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-image,
body .run7-home .run7-pillars > .run7-photo-pillar > .wp-block-image,
.editor-styles-wrapper .run7-stats.run7-stats--photo > .run7-stat.run7-stat--photo > .wp-block-image,
.editor-styles-wrapper .run7-pillars > .run7-photo-pillar > .wp-block-image {
  border-radius: 18px !important;
  overflow: hidden !important;
}
