:root{
  --ramea-blue:#17324D;
  --ramea-yellow:#F2C14E;
  --ramea-cyan:#19A7A0;
  --ramea-black:#000000;
  --ramea-white:#FFFFFF;
  --ramea-ink:#16202A;
  --ramea-muted:#5C6B7A;
  --ramea-surface:#F5F7F8;
  --ramea-surface-2:#EDF2F7;
  --ramea-border:#D8E0E9;
  --ramea-radius:20px;
  --ramea-radius-sm:12px;
  --ramea-shadow:0 14px 38px rgba(23,50,77,.10);
  --ramea-shadow-lift:0 22px 52px rgba(23,50,77,.16);
  --ramea-transition-soft:clamp(22px,2.2vw,34px);
  --ramea-transition-mobile:22px;
  --ramea-brand-gradient:linear-gradient(180deg, #19A7A0 0%, #19A7A0 10%, #078FCB 28%, #066EAB 52%, #054A84 74%, #17324D 100%);
  --ramea-brand-gradient-overlay:linear-gradient(90deg, rgba(23,50,77,.18) 0%, rgba(23,50,77,.07) 46%, rgba(23,50,77,0) 76%);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--ramea-ink);
  background:var(--ramea-white);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body.ramea-mobile-nav-open{overflow:hidden}

::selection{background:var(--ramea-yellow);color:var(--ramea-blue)}
a{text-underline-offset:.18em;text-decoration-thickness:1.5px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--ramea-cyan);outline-offset:4px}

/* Header */
.ramea-site-header{
  position:sticky;
  top:0;
  z-index:1000;
  background:#fff;
  border-bottom:1px solid rgba(23,50,77,.08);
  box-shadow:0 5px 26px rgba(23,50,77,.07);
}
.admin-bar .ramea-site-header{top:32px}
.ramea-site-header>.wp-block-group{min-height:82px}
.ramea-brand{flex:0 0 auto;min-width:0}
.ramea-brand .wp-block-shortcode{margin:0}
.ramea-brand-link{display:flex;align-items:center;gap:.7rem;min-height:64px;text-decoration:none!important;color:var(--ramea-blue)}
.ramea-brand-logo{display:block;width:auto;max-width:clamp(170px,18vw,255px);max-height:68px;object-fit:contain}
.ramea-brand-logo--dark{display:none}
.ramea-brand-text{display:flex;flex-direction:column;line-height:1.03;color:var(--ramea-blue)}
.ramea-brand-text strong{font-size:clamp(1.05rem,1.5vw,1.35rem);font-weight:900}
.ramea-brand-text small{margin-top:.22rem;font-size:.72rem;font-weight:750;color:var(--ramea-muted)}
.ramea-header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.66rem .85rem;border-radius:10px;background:var(--ramea-yellow);color:var(--ramea-blue)!important;font-weight:900;text-decoration:none!important;box-shadow:0 5px 14px rgba(23,50,77,.08);white-space:nowrap;transition:background .18s ease,transform .18s ease}
.ramea-header-cta:hover{background:var(--ramea-cyan);transform:translateY(-1px)}

.ramea-site-header .wp-block-navigation{gap:.2rem}
.ramea-site-header .wp-block-navigation-item__content{
  padding:.65rem .78rem;
  border-radius:9px;
  color:var(--ramea-blue);
  font-weight:750;
  transition:background .18s ease,color .18s ease,transform .18s ease;
}
.ramea-site-header .wp-block-navigation-item__content:hover{
  background:rgba(25,167,160,.08);
  color:var(--ramea-blue);
  text-decoration:none;
}
.ramea-nav-contact{
  margin-left:.35rem!important;
  background:var(--ramea-yellow)!important;
  color:var(--ramea-blue)!important;
  border-radius:10px!important;
  font-weight:900!important;
  box-shadow:0 5px 14px rgba(23,50,77,.08);
}
.ramea-nav-contact:hover{background:var(--ramea-cyan)!important;transform:translateY(-1px)}

.ramea-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.62rem!important;flex:1 1 auto}
.ramea-theme-control{display:flex;align-items:center;flex:0 0 auto}
.ramea-theme-toggle{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.48rem;
  min-height:42px;
  padding:.48rem .72rem;
  border:1px solid rgba(23,50,77,.14);
  border-radius:999px;
  background:#F5F7F8;
  color:var(--ramea-blue);
  font:inherit;
  font-size:.82rem;
  font-weight:850;
  line-height:1;
  cursor:pointer;
  box-shadow:0 4px 14px rgba(23,50,77,.06);
  transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}
.ramea-theme-toggle:hover{background:#EDF2F7;border-color:rgba(25,167,160,.42);transform:translateY(-1px)}
.ramea-theme-toggle__icon{width:18px;height:18px;display:inline-grid;place-items:center;position:relative;flex:0 0 18px}
.ramea-theme-toggle__icon::before{font-size:17px;line-height:1}
.ramea-theme-toggle[data-mode="system"] .ramea-theme-toggle__icon::before{content:"◐"}
.ramea-theme-toggle[data-mode="light"] .ramea-theme-toggle__icon::before{content:"☀"}
.ramea-theme-toggle[data-mode="dark"] .ramea-theme-toggle__icon::before{content:"☾"}

/* Hero */
.ramea-hero{
  position:relative;
  overflow:hidden;
  background:
    var(--ramea-brand-gradient-overlay),
    var(--ramea-brand-gradient);
  color:white;
  isolation:isolate;
  box-shadow:
    inset 0 -18px 28px -28px rgba(11,17,22,.24);
}
.ramea-hero::before{
  content:"";
  position:absolute;
  width:210px;
  height:22px;
  right:6vw;
  top:0;
  background:var(--ramea-yellow);
  z-index:0;
}
.ramea-hero::after{
  content:"";
  position:absolute;
  width:72px;
  height:72px;
  left:-30px;
  bottom:42px;
  background:var(--ramea-cyan);
  opacity:.95;
  transform:rotate(12deg);
  z-index:0;
}
.ramea-hero>.wp-block-columns,.ramea-hero .wp-block-columns{position:relative;z-index:1;margin:0;align-items:center!important;gap:clamp(2rem,5vw,5.5rem)}
.ramea-hero h1,.ramea-hero h2,.ramea-hero p{color:white}
.ramea-hero h1{
  font-size:clamp(3rem,6.1vw,5.9rem);
  line-height:.96;
  letter-spacing:-.045em;
  margin-bottom:1.2rem;
  text-wrap:balance;
}
.ramea-hero-copy{
  padding-top:clamp(5.4rem,7.8vw,7.8rem);
  padding-bottom:clamp(5.4rem,7.8vw,7.8rem);
  max-width:690px;
}
.ramea-hero .wp-block-column:last-child{
  position:relative;
  display:flex;
  align-items:center;
  padding-top:clamp(4.4rem,6vw,6rem);
  padding-bottom:clamp(4.4rem,6vw,6rem);
}
.ramea-hero .wp-block-column:last-child::before{
  content:"";
  position:absolute;
  inset:calc(4.4rem + 18px) -18px calc(4.4rem - 18px) 18px;
  background:var(--ramea-yellow);
  border-radius:var(--ramea-radius);
  z-index:0;
}
.ramea-hero .wp-block-column:last-child::after{
  content:"";
  position:absolute;
  width:72px;
  height:14px;
  top:clamp(2.1rem,4vw,3.7rem);
  left:-12px;
  background:var(--ramea-cyan);
  z-index:2;
}
.ramea-hero-image{width:100%;margin:0;position:relative;z-index:1}
.ramea-hero-image img{
  width:100%;
  height:auto;
  max-height:570px;
  object-fit:cover;
  object-position:center center;
  display:block;
  border-radius:var(--ramea-radius);
  box-shadow:0 26px 60px rgba(0,0,0,.28);
}
.ramea-kicker{
  display:inline-flex;
  align-items:center;
  gap:.55rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.095em;
  color:var(--ramea-cyan);
  font-size:.82rem;
  margin-bottom:.5rem;
}
.ramea-kicker::before{content:"";width:24px;height:4px;background:currentColor;display:block}
.ramea-hero .ramea-kicker{color:var(--ramea-yellow)}
.ramea-bar{width:min(190px,42%);height:8px;background:var(--ramea-yellow);margin:1.45rem 0;border-radius:999px}
.ramea-bar-cyan{background:var(--ramea-cyan)}

/* Sections and typography */
.ramea-section{
  position:relative;
  padding-top:clamp(4rem,6.5vw,7rem);
  padding-bottom:clamp(4rem,6.5vw,7rem);
}
.ramea-section h2{font-size:clamp(2rem,4vw,3.6rem);letter-spacing:-.035em;text-wrap:balance}
.ramea-section-surface{
  background:
    linear-gradient(to bottom, #fff 0, rgba(245,247,248,.92) 46px, var(--ramea-surface) 120px, var(--ramea-surface) calc(100% - 120px), rgba(245,247,248,.92) calc(100% - 46px), #fff 100%);
  border-top:0;
  border-bottom:0;
}
.ramea-section-blue{
  padding-top:clamp(6.6rem,8vw,9rem);
  padding-bottom:clamp(6.6rem,8vw,9rem);
  background:
    radial-gradient(ellipse at 10% 25%, rgba(25,167,160,.13) 0, rgba(25,167,160,.035) 25%, rgba(25,167,160,0) 48%),
    radial-gradient(ellipse at 88% 74%, rgba(25,167,160,.085) 0, rgba(25,167,160,0) 42%),
    linear-gradient(122deg, #17324D 0%, #06477f 52%, #17324D 100%);
  color:white;
  box-shadow:
    inset 0 18px 24px -24px rgba(255,255,255,.26),
    inset 0 -18px 24px -24px rgba(11,17,22,.22);
}
.ramea-section-blue h2,.ramea-section-blue h3,.ramea-section-blue p,.ramea-section-blue li{color:white}
.ramea-section-yellow{background:var(--ramea-yellow)}
.ramea-lead{font-size:clamp(1.12rem,1.7vw,1.42rem);line-height:1.55;color:#26384c}
.ramea-prose{max-width:780px}
.ramea-prose p{margin-top:0;margin-bottom:1.35rem}
.ramea-prose li{margin:.5rem 0}
.ramea-prose img{border-radius:var(--ramea-radius-sm)}

/* Cards */
.ramea-card,
.ramea-query-grid .wp-block-post{
  position:relative;
  height:100%;
  background:#fff;
  border:1px solid rgba(23,50,77,.10);
  border-radius:var(--ramea-radius);
  box-shadow:var(--ramea-shadow);
  overflow:hidden;
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}
.ramea-card::before,
.ramea-query-grid .wp-block-post::before{
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:100%;
  height:5px;
  background:var(--ramea-yellow);
  z-index:2;
}
.ramea-card--cyan::before{background:var(--ramea-cyan)}
.ramea-card:hover,
.ramea-query-grid .wp-block-post:hover{
  transform:translateY(-5px);
  box-shadow:var(--ramea-shadow-lift);
  border-color:rgba(25,167,160,.32);
}
.ramea-card{padding:1.6rem}
.ramea-card h3{margin-top:.25rem;letter-spacing:-.025em}
.ramea-card .wp-block-post-featured-image{margin:-1.6rem -1.6rem 1.35rem}
.ramea-card .wp-block-post-featured-image img{aspect-ratio:16/9;object-fit:cover}
.ramea-query-grid .wp-block-post-template{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,2vw,2rem)}
.ramea-query-grid .wp-block-post{padding:1.4rem;display:flex;flex-direction:column}
.ramea-query-grid .wp-block-post-title{font-size:1.42rem;line-height:1.15;margin:.8rem 0 .65rem}
.ramea-query-grid .wp-block-post-title a{color:var(--ramea-blue);text-decoration:none}
.ramea-query-grid .wp-block-post-title a:hover{text-decoration:underline;text-decoration-color:var(--ramea-cyan)}
.ramea-query-grid .wp-block-post-excerpt{flex-grow:1;color:#334155}
.ramea-query-grid .wp-block-post-featured-image{margin:-1.4rem -1.4rem 1.05rem;overflow:hidden}
.ramea-query-grid .wp-block-post-featured-image img{aspect-ratio:16/9;object-fit:cover;transition:transform .35s ease}
.ramea-query-grid .wp-block-post:hover .wp-block-post-featured-image img{transform:scale(1.025)}
.ramea-query-grid time{font-size:.78rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#66778b}
.ramea-query-grid .wp-block-post-excerpt__more-link{display:inline-flex;align-items:center;gap:.35rem;margin-top:.4rem;color:var(--ramea-blue);font-weight:850;text-decoration:none}
.ramea-query-grid .wp-block-post-excerpt__more-link::after{content:"→";transition:transform .18s ease}
.ramea-query-grid .wp-block-post-excerpt__more-link:hover::after{transform:translateX(4px)}

/* Buttons */
.wp-block-button__link,
.ramea-form button{
  border:0;
  border-radius:10px!important;
  min-height:46px;
  padding:.82rem 1.2rem;
  font:inherit;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 6px 16px rgba(23,50,77,.08);
  transition:transform .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease;
}
.wp-block-button__link:hover,
.ramea-form button:hover{
  background:var(--ramea-cyan)!important;
  color:#001d3d!important;
  text-decoration:none;
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(23,50,77,.14);
}

/* Social */
.ramea-social-links{display:flex;gap:.8rem;flex-wrap:wrap}
.ramea-social-links a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:.72rem 1.05rem;
  border:1px solid rgba(23,50,77,.18);
  border-radius:10px;
  background:#fff;
  box-shadow:0 6px 18px rgba(23,50,77,.06);
  font-weight:850;
  transition:transform .18s ease,background .18s ease,color .18s ease;
}
.ramea-social-links a:hover{background:var(--ramea-blue);color:#fff;text-decoration:none;transform:translateY(-2px)}

/* Gallery */
.ramea-gallery .wp-block-image,
.wp-block-gallery.has-nested-images figure.wp-block-image{overflow:hidden;border-radius:var(--ramea-radius-sm)}
.ramea-gallery .wp-block-image img,.ramea-gallery img,.wp-block-gallery.has-nested-images figure.wp-block-image img{aspect-ratio:4/3;object-fit:cover;transition:transform .3s ease}
.ramea-gallery .wp-block-image:hover img,.wp-block-gallery.has-nested-images figure.wp-block-image:hover img{transform:scale(1.025)}

/* Forms */
.ramea-form{
  max-width:780px;
  padding:clamp(1.4rem,3vw,2.4rem);
  background:#fff;
  border:1px solid rgba(23,50,77,.10);
  border-radius:var(--ramea-radius);
  box-shadow:var(--ramea-shadow);
}
.ramea-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.ramea-field{margin-bottom:1rem}
.ramea-field label{display:block;font-weight:850;color:var(--ramea-blue);margin-bottom:.42rem;font-size:.94rem}
.ramea-field input,.ramea-field textarea,.ramea-field select{
  width:100%;
  min-height:50px;
  border:1px solid #A8B5C4;
  border-radius:10px;
  background:#fff;
  color:var(--ramea-ink);
  padding:.8rem .9rem;
  font:inherit;
  transition:border-color .16s ease,box-shadow .16s ease;
}
.ramea-field textarea{min-height:170px;resize:vertical}
.ramea-field input:focus,.ramea-field textarea:focus,.ramea-field select:focus{border-color:var(--ramea-cyan);outline:0;box-shadow:0 0 0 4px rgba(25,167,160,.16)}
.ramea-form button{background:var(--ramea-yellow);color:var(--ramea-blue)}
.ramea-form-status{padding:1rem 1.1rem;margin-bottom:1rem;border-left:5px solid var(--ramea-cyan);border-radius:8px;background:var(--ramea-surface)}
.ramea-form-status.is-error{border-left-color:#b42318}
.ramea-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Footer */
.ramea-site-footer{
  position:relative;
  background:
    radial-gradient(ellipse at 84% 20%, rgba(25,167,160,.12) 0, rgba(25,167,160,0) 42%),
    linear-gradient(122deg, #17324D 0%, #06477f 55%, #17324D 100%);
  color:#fff;
  box-shadow:inset 0 18px 24px -24px rgba(255,255,255,.24);
  overflow:hidden;
}
.ramea-site-footer::after{content:"";position:absolute;right:-70px;top:55px;width:180px;height:180px;border:20px solid rgba(25,167,160,.14);transform:rotate(13deg);pointer-events:none}
.ramea-site-footer h2,.ramea-site-footer h3,.ramea-site-footer p,.ramea-site-footer a{color:#fff}
.ramea-site-footer h3{font-size:1rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ramea-yellow)}
.ramea-site-footer a{text-decoration:none}
.ramea-site-footer a:hover{color:var(--ramea-yellow);text-decoration:underline}
.ramea-footer-top{border-top:0}
.ramea-site-footer>.wp-block-columns{padding-top:clamp(6.8rem,8vw,8.5rem)!important}
.ramea-footer-rule{border-top:1px solid rgba(255,255,255,.18);font-size:.9rem;color:rgba(255,255,255,.82)}

/* Inner pages — same visual language as the homepage hero */
.ramea-page-title{
  position:relative;
  overflow:hidden;
  padding:clamp(5.2rem,7vw,7rem) 0 clamp(5.8rem,7.8vw,7.8rem);
  background:
    var(--ramea-brand-gradient-overlay),
    var(--ramea-brand-gradient);
  color:white;
  isolation:isolate;
}
.ramea-page-title::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg, rgba(23,50,77,.10) 0%, rgba(23,50,77,0) 64%);
  pointer-events:none;
  z-index:0;
}
.ramea-page-title::after{
  content:"";
  position:absolute;
  right:8vw;
  bottom:-34px;
  width:150px;
  height:72px;
  background:var(--ramea-yellow);
  transform:rotate(-5deg);
  z-index:0;
}
.ramea-page-title > *,
.ramea-page-title .wp-block-group{position:relative;z-index:1}
.ramea-page-title h1,
.ramea-page-title .wp-block-query-title{
  color:white;
  margin:0;
  font-size:clamp(2.5rem,5vw,4.8rem);
  line-height:1.02;
  letter-spacing:-.045em;
  text-wrap:balance;
}
.ramea-page-title .ramea-bar{margin-bottom:0}
.ramea-page-title .wp-block-post-date,
.ramea-page-title .wp-block-post-terms,
.ramea-page-title .wp-block-post-terms a,
.ramea-page-title .wp-block-post-date a{color:rgba(255,255,255,.92)}
.ramea-page-title .wp-block-post-terms a:hover,
.ramea-page-title .wp-block-post-date a:hover{color:var(--ramea-yellow)}
.ramea-page-meta{margin-top:1rem;gap:1rem!important;font-weight:750}
.ramea-page-meta .wp-block-post-terms{margin:0}
.ramea-page-kicker{color:var(--ramea-yellow)!important;margin-bottom:.85rem!important}

/* Listing and article content begins cleanly on white after the branded title area. */
.ramea-listing-main,
.ramea-single-main,
.ramea-error-main{background:var(--ramea-white)}
.ramea-single-main .wp-block-post-featured-image img{
  border-radius:var(--ramea-radius);
  box-shadow:var(--ramea-shadow);
  max-height:620px;
  object-fit:cover;
}
.ramea-single-main .wp-block-post-featured-image{margin-bottom:clamp(2rem,4vw,3.5rem)}
.wp-block-post-navigation-link a{font-weight:850}

/* General native block polish */
.wp-block-separator{border-color:rgba(23,50,77,.15)!important}
.wp-block-quote{background:var(--ramea-surface);border-radius:0 var(--ramea-radius-sm) var(--ramea-radius-sm) 0;padding-top:1rem!important;padding-bottom:1rem!important}
.wp-block-image img{height:auto}
figcaption{color:var(--ramea-muted);font-size:.86rem}

/* Optional branded sections use the same cyan-to-blue family, never a white/blue blur. */
.ramea-section-white-to-blue,
.ramea-section-blue-to-white{
  background:var(--ramea-brand-gradient);
  color:#fff;
  padding-top:clamp(5.5rem,7.5vw,7.8rem);
  padding-bottom:clamp(5.5rem,7.5vw,7.8rem);
}
.ramea-hero + .ramea-section,
.ramea-page-title + .ramea-section{box-shadow:none}

/* Mobile full-screen navigation overlay */
@media(max-width:980px){
  .ramea-header-actions{gap:.38rem!important}
  .ramea-theme-toggle{width:42px;height:42px;min-height:42px;padding:0}
  .ramea-theme-toggle__label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  .ramea-site-header>.wp-block-group{min-height:74px}
  .ramea-query-grid .wp-block-post-template{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ramea-hero>.wp-block-columns,.ramea-hero .wp-block-columns{gap:1rem}
  .ramea-hero-image img{max-height:510px}
  .ramea-hero .wp-block-column:last-child::before{inset:calc(2rem + 12px) -10px calc(2rem - 10px) 10px}

  .ramea-site-header .wp-block-navigation__responsive-container.is-menu-open{
    position:fixed!important;
    inset:0!important;
    z-index:99999!important;
    width:100vw!important;
    height:100vh!important;
    min-height:100vh!important;
    margin:0!important;
    padding:0!important;
    background:rgba(23,50,77,.80)!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:stretch!important;
  }
  .ramea-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close{
    width:min(89vw,430px)!important;
    max-width:430px!important;
    height:100vh!important;
    margin:0 0 0 auto!important;
    padding:1.5rem!important;
    overflow-y:auto!important;
    background:#fff!important;
    color:var(--ramea-blue)!important;
    box-shadow:-14px 0 34px rgba(0,0,0,.20);
    animation:ramea-safe-nav-in .22s ease-out both;
  }
  .ramea-site-header .wp-block-navigation__responsive-dialog{min-height:100%}
  .ramea-site-header .wp-block-navigation__responsive-container-close{
    top:1rem!important;
    right:1rem!important;
    width:46px!important;
    height:46px!important;
    padding:11px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    background:var(--ramea-yellow)!important;
    color:var(--ramea-blue)!important;
    border-radius:50%!important;
  }
  .ramea-site-header .wp-block-navigation__responsive-container-content{width:100%!important;padding-top:4.75rem!important}
  .ramea-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation__container{width:100%!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:.25rem!important}
  .ramea-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item{width:100%!important;font-size:1.18rem!important;font-weight:850!important;color:var(--ramea-blue)!important;border-bottom:1px solid var(--ramea-border)!important}
  .ramea-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content{display:block!important;width:100%!important;padding:1rem .55rem!important;color:var(--ramea-blue)!important;border-radius:8px!important}
  .ramea-site-header .wp-block-navigation__responsive-container-content .ramea-nav-contact{margin-top:1rem!important;margin-left:0!important;border:0!important;background:var(--ramea-yellow)!important}
}

@media(max-width:700px){
  .admin-bar .ramea-site-header{top:46px}
  .ramea-query-grid .wp-block-post-template{grid-template-columns:1fr}
  .ramea-form-grid{grid-template-columns:1fr}
  .ramea-hero .wp-block-columns{gap:0}
  .ramea-hero-copy{padding-top:4.7rem;padding-bottom:4rem}
  .ramea-hero h1{font-size:clamp(2.8rem,14vw,4.4rem)}
  .ramea-hero .wp-block-column:last-child{padding-top:2.2rem;padding-bottom:4.4rem}
  .ramea-hero .wp-block-column:last-child::before{inset:calc(2.2rem + 10px) -7px calc(4.4rem - 8px) 7px;border-radius:15px}
  .ramea-hero .wp-block-column:last-child::after{width:52px;height:10px;top:.75rem;left:0}
  .ramea-hero-image img{max-height:none;border-radius:15px}
  .ramea-section{padding-top:3.8rem;padding-bottom:3.8rem}
  .ramea-section-blue{padding-top:5.5rem;padding-bottom:5.5rem}
  .ramea-site-footer>.wp-block-columns{padding-top:5.6rem!important}
  .ramea-page-title{padding-top:4.8rem;padding-bottom:5.8rem}
  .ramea-card,.ramea-query-grid .wp-block-post,.ramea-form{border-radius:15px}
  .ramea-site-footer::after{display:none}
}

@keyframes ramea-safe-nav-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* ==========================================================
   Color mode — dark state controlled by the three-state switcher.
   "System" resolves to the browser/OS preference in JavaScript.
   ========================================================== */

  html.ramea-theme-dark{
    color-scheme:dark;
    --ramea-dark-bg:#08111F;
    --ramea-dark-surface:#0D1B2A;
    --ramea-dark-surface-2:#12263A;
    --ramea-dark-surface-3:#17324A;
    --ramea-dark-text:#F4F7FB;
    --ramea-dark-muted:#B9C5D2;
    --ramea-dark-border:#244158;
    --ramea-dark-shadow:0 16px 42px rgba(0,0,0,.30);
    --ramea-dark-shadow-lift:0 24px 58px rgba(0,0,0,.42);
    --ramea-ink:var(--ramea-dark-text);
    --ramea-muted:var(--ramea-dark-muted);
    --ramea-surface:var(--ramea-dark-surface);
    --ramea-surface-2:var(--ramea-dark-surface-2);
    --ramea-border:var(--ramea-dark-border);
    --ramea-shadow:var(--ramea-dark-shadow);
    --ramea-shadow-lift:var(--ramea-dark-shadow-lift);
  }

  html.ramea-theme-dark{background:var(--ramea-dark-bg)}
  html.ramea-theme-dark body{
    background:var(--ramea-dark-bg);
    color:var(--ramea-dark-text);
  }

  html.ramea-theme-dark body h1,
html.ramea-theme-dark body h2,
html.ramea-theme-dark body h3,
html.ramea-theme-dark body h4,
html.ramea-theme-dark body h5,
html.ramea-theme-dark body h6{color:var(--ramea-dark-text)}

  html.ramea-theme-dark body a{color:var(--ramea-cyan)}
  html.ramea-theme-dark body a:hover{color:var(--ramea-yellow)}
  html.ramea-theme-dark ::selection{background:var(--ramea-yellow);color:var(--ramea-blue)}

  /* Header: dark shell with a dedicated transparent dark-logo asset. */
  html.ramea-theme-dark .ramea-site-header{
    background:rgba(8,17,31,.96);
    border-bottom-color:rgba(255,255,255,.09);
    box-shadow:0 7px 28px rgba(0,0,0,.30);
  }
  html.ramea-theme-dark .ramea-brand{padding:0;background:transparent;box-shadow:none;border-radius:0}
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation-item__content{color:var(--ramea-dark-text)}
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation-item__content:hover{
    color:#fff;
    background:rgba(25,167,160,.16);
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-open,
html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-close{color:var(--ramea-dark-text)}
  html.ramea-theme-dark .ramea-nav-contact,
html.ramea-theme-dark .ramea-nav-contact .wp-block-navigation-item__content{
    color:var(--ramea-blue)!important;
  }

  /* Brand hero/title gradients remain recognizably Ramea. A subtle dark veil
     prevents the bright cyan top from feeling like a light-mode fragment. */
  html.ramea-theme-dark .ramea-hero,
html.ramea-theme-dark .ramea-page-title{
    background:
      linear-gradient(180deg,rgba(8,17,31,.08),rgba(8,17,31,.20)),
      var(--ramea-brand-gradient-overlay),
      var(--ramea-brand-gradient);
  }
  html.ramea-theme-dark .ramea-hero h1,
html.ramea-theme-dark .ramea-hero h2,
html.ramea-theme-dark .ramea-hero p,
html.ramea-theme-dark .ramea-page-title h1,
html.ramea-theme-dark .ramea-page-title h2,
html.ramea-theme-dark .ramea-page-title p{color:#fff}

  /* General surfaces */
  html.ramea-theme-dark .ramea-section,
html.ramea-theme-dark .ramea-listing-main,
html.ramea-theme-dark .ramea-single-main,
html.ramea-theme-dark .ramea-error-main{background:var(--ramea-dark-bg);color:var(--ramea-dark-text)}

  html.ramea-theme-dark .ramea-section-surface{
    background:linear-gradient(
      to bottom,
      var(--ramea-dark-bg) 0,
      var(--ramea-dark-surface) 72px,
      var(--ramea-dark-surface) calc(100% - 72px),
      var(--ramea-dark-bg) 100%
    );
  }
  html.ramea-theme-dark .ramea-section-yellow{
    background:var(--ramea-yellow);
    color:var(--ramea-blue);
  }
  html.ramea-theme-dark .ramea-section-yellow h1,
html.ramea-theme-dark .ramea-section-yellow h2,
html.ramea-theme-dark .ramea-section-yellow h3,
html.ramea-theme-dark .ramea-section-yellow h4,
html.ramea-theme-dark .ramea-section-yellow p,
html.ramea-theme-dark .ramea-section-yellow li,
html.ramea-theme-dark .ramea-section-yellow a{color:var(--ramea-blue)}
  html.ramea-theme-dark .ramea-lead{color:#D7E0E9}
  html.ramea-theme-dark .ramea-section-blue{color:#fff}
  html.ramea-theme-dark .ramea-section-blue h1,
html.ramea-theme-dark .ramea-section-blue h2,
html.ramea-theme-dark .ramea-section-blue h3,
html.ramea-theme-dark .ramea-section-blue p,
html.ramea-theme-dark .ramea-section-blue li{color:#fff}

  /* WordPress preset blocks that were intentionally light in the editor */
  html.ramea-theme-dark .has-ramea-white-background-color,
html.ramea-theme-dark .has-surface-background-color{background-color:var(--ramea-dark-surface)!important}
  html.ramea-theme-dark .has-ramea-white-color,
html.ramea-theme-dark .has-ink-color{color:var(--ramea-dark-text)!important}
  html.ramea-theme-dark .has-ramea-blue-color:not(.has-ramea-yellow-background-color):not(.ramea-section-yellow){color:var(--ramea-cyan)!important}

  /* Cards / query loops */
  html.ramea-theme-dark .ramea-card,
html.ramea-theme-dark .ramea-query-grid .wp-block-post{
    background:var(--ramea-dark-surface);
    border-color:var(--ramea-dark-border);
    box-shadow:var(--ramea-dark-shadow);
  }
  html.ramea-theme-dark .ramea-card:hover,
html.ramea-theme-dark .ramea-query-grid .wp-block-post:hover{
    border-color:rgba(25,167,160,.46);
    box-shadow:var(--ramea-dark-shadow-lift);
  }
  html.ramea-theme-dark .ramea-card h1,
html.ramea-theme-dark .ramea-card h2,
html.ramea-theme-dark .ramea-card h3,
html.ramea-theme-dark .ramea-card h4{color:var(--ramea-dark-text)}
  html.ramea-theme-dark .ramea-query-grid .wp-block-post-title a,
html.ramea-theme-dark .ramea-query-grid .wp-block-post-excerpt__more-link{color:var(--ramea-cyan)}
  html.ramea-theme-dark .ramea-query-grid .wp-block-post-title a:hover,
html.ramea-theme-dark .ramea-query-grid .wp-block-post-excerpt__more-link:hover{color:var(--ramea-yellow)}
  html.ramea-theme-dark .ramea-query-grid .wp-block-post-excerpt{color:#D4DEE8}
  html.ramea-theme-dark .ramea-query-grid time{color:var(--ramea-dark-muted)}

  /* Forms */
  html.ramea-theme-dark .ramea-form{
    background:var(--ramea-dark-surface);
    border-color:var(--ramea-dark-border);
    box-shadow:var(--ramea-dark-shadow);
  }
  html.ramea-theme-dark .ramea-field label{color:var(--ramea-dark-text)}
  html.ramea-theme-dark .ramea-field input,
html.ramea-theme-dark .ramea-field textarea,
html.ramea-theme-dark .ramea-field select{
    background:var(--ramea-dark-surface-2);
    border-color:#36536B;
    color:var(--ramea-dark-text);
    caret-color:var(--ramea-yellow);
  }
  html.ramea-theme-dark .ramea-field input::placeholder,
html.ramea-theme-dark .ramea-field textarea::placeholder{color:#8FA2B5;opacity:1}
  html.ramea-theme-dark .ramea-field input:focus,
html.ramea-theme-dark .ramea-field textarea:focus,
html.ramea-theme-dark .ramea-field select:focus{
    border-color:var(--ramea-cyan);
    box-shadow:0 0 0 4px rgba(25,167,160,.20);
  }
  html.ramea-theme-dark .ramea-form-status{background:var(--ramea-dark-surface-2);color:var(--ramea-dark-text)}

  /* Social links and common interactive surfaces */
  html.ramea-theme-dark .ramea-social-links a{
    background:var(--ramea-dark-surface);
    border-color:var(--ramea-dark-border);
    color:var(--ramea-cyan);
    box-shadow:0 7px 20px rgba(0,0,0,.22);
  }
  html.ramea-theme-dark .ramea-social-links a:hover{background:var(--ramea-cyan);color:#001D3D}
  html.ramea-theme-dark .wp-block-button__link,
html.ramea-theme-dark .ramea-form button{background:var(--ramea-yellow)!important;color:var(--ramea-blue)!important}
  html.ramea-theme-dark .wp-block-button__link:hover,
html.ramea-theme-dark .ramea-form button:hover{background:var(--ramea-cyan)!important;color:#001D3D!important}

  /* Native content */
  html.ramea-theme-dark .wp-block-separator{border-color:rgba(255,255,255,.16)!important}
  html.ramea-theme-dark .wp-block-quote{
    background:var(--ramea-dark-surface);
    color:var(--ramea-dark-text);
  }
  html.ramea-theme-dark .wp-block-quote cite{color:var(--ramea-dark-muted)}
  html.ramea-theme-dark figcaption{color:var(--ramea-dark-muted)}
  html.ramea-theme-dark code,
html.ramea-theme-dark kbd,
html.ramea-theme-dark pre{
    background:var(--ramea-dark-surface-2);
    color:#E9F0F6;
    border-color:var(--ramea-dark-border);
  }
  html.ramea-theme-dark table,
html.ramea-theme-dark .wp-block-table table{border-color:var(--ramea-dark-border)}
  html.ramea-theme-dark .wp-block-table td,
html.ramea-theme-dark .wp-block-table th{border-color:var(--ramea-dark-border);color:var(--ramea-dark-text)}
  html.ramea-theme-dark .wp-block-table thead{background:var(--ramea-dark-surface-2)}
  html.ramea-theme-dark input,
html.ramea-theme-dark textarea,
html.ramea-theme-dark select{accent-color:var(--ramea-yellow)}

  /* Pagination and post navigation */
  html.ramea-theme-dark .wp-block-query-pagination a,
html.ramea-theme-dark .wp-block-post-navigation-link a{color:var(--ramea-cyan)}
  html.ramea-theme-dark .wp-block-query-pagination a:hover,
html.ramea-theme-dark .wp-block-post-navigation-link a:hover{color:var(--ramea-yellow)}

  /* Footer remains dark, but distinguish it from the page background. */
  html.ramea-theme-dark .ramea-site-footer{
    background:
      radial-gradient(ellipse at 84% 20%,rgba(25,167,160,.12) 0,rgba(25,167,160,0) 42%),
      linear-gradient(122deg,#020A14 0%,#082342 55%,#020A14 100%);
    border-top:1px solid rgba(255,255,255,.08);
  }
  html.ramea-theme-dark .ramea-site-footer h2,
html.ramea-theme-dark .ramea-site-footer h3,
html.ramea-theme-dark .ramea-site-footer p,
html.ramea-theme-dark .ramea-site-footer a{color:#fff}
  html.ramea-theme-dark .ramea-site-footer h3{color:var(--ramea-yellow)}

  /* Browser/WordPress elements that often retain a white canvas */
  html.ramea-theme-dark .wp-site-blocks,
html.ramea-theme-dark main,
html.ramea-theme-dark article{color:var(--ramea-dark-text)}
  html.ramea-theme-dark hr{border-color:var(--ramea-dark-border)}


html.ramea-theme-dark .ramea-brand-link{color:var(--ramea-dark-text)}
html.ramea-theme-dark .ramea-brand-text{color:var(--ramea-dark-text)}
html.ramea-theme-dark .ramea-brand-text small{color:var(--ramea-dark-muted)}
html.ramea-theme-dark .ramea-brand-logo--light{display:none}
html.ramea-theme-dark .ramea-brand-logo--dark{display:block}
html.ramea-theme-dark .ramea-brand-logo--light:only-child{display:block}
html.ramea-theme-dark .ramea-header-cta{background:var(--ramea-yellow);color:var(--ramea-blue)!important}

html.ramea-theme-dark .ramea-theme-toggle{
  background:rgba(255,255,255,.07);
  color:#F4F7FB;
  border-color:rgba(255,255,255,.16);
  box-shadow:none;
}
html.ramea-theme-dark .ramea-theme-toggle:hover{background:rgba(25,167,160,.16);border-color:rgba(25,167,160,.48)}


@media (max-width:980px){

  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container.is-menu-open{
    background:rgba(0,0,0,.76)!important;
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close{
    background:var(--ramea-dark-surface)!important;
    color:var(--ramea-dark-text)!important;
    box-shadow:-14px 0 34px rgba(0,0,0,.46);
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item{
    color:var(--ramea-dark-text)!important;
    border-bottom-color:var(--ramea-dark-border)!important;
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content{
    color:var(--ramea-dark-text)!important;
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-content .wp-block-navigation-item__content:hover{
    background:rgba(25,167,160,.14)!important;
    color:#fff!important;
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-close{
    background:var(--ramea-yellow)!important;
    color:var(--ramea-blue)!important;
  }
  html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-content .ramea-nav-contact,
html.ramea-theme-dark .ramea-site-header .wp-block-navigation__responsive-container-content .ramea-nav-contact .wp-block-navigation-item__content{
    background:var(--ramea-yellow)!important;
    color:var(--ramea-blue)!important;
  }

}


/* Generic Multisite branding */
.ramea-footer-identity h2{margin-top:0}.ramea-footer-region{font-weight:750;opacity:.88}.ramea-footer-legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;width:100%}.ramea-site-footer .wp-block-navigation{align-items:flex-start}.ramea-site-footer .wp-block-navigation__container{gap:.35rem!important}.ramea-site-footer .wp-block-navigation-item__content{padding:.15rem 0!important}.ramea-site-footer .wp-block-page-list{list-style:none;margin:0;padding:0}.ramea-site-footer .wp-block-pages-list__item{margin:.2rem 0}.ramea-site-footer .wp-block-pages-list__item__link{color:#fff;text-decoration:none}.ramea-site-footer .wp-block-pages-list__item__link:hover{color:var(--ramea-yellow)}
@media(max-width:980px){.ramea-header-cta{display:none}.ramea-brand-logo{max-width:190px;max-height:58px}.ramea-brand-link{min-height:56px}}
@media(max-width:600px){.ramea-brand-logo{max-width:150px;max-height:52px}.ramea-footer-legal{flex-direction:column}}


/* ==========================================================
   3.0.1 — Verbandsauftritt: modularer Seitenrhythmus
   Orientiert sich an der Informationsarchitektur des zentralen
   modularen Organisationsauftritts: klar, flach, redaktionell, modular.
   ========================================================== */
:root{
  --ramea-radius:8px;
  --ramea-radius-sm:4px;
  --ramea-shadow:0 6px 20px rgba(23,50,77,.07);
  --ramea-shadow-lift:0 12px 30px rgba(23,50,77,.11);
  --ramea-section-rule:1px solid rgba(23,50,77,.11);
}

.wp-block-button__link,
.ramea-form button{border-radius:3px!important;box-shadow:none}

/* Header: flacher und redaktioneller; CTAs klar getrennt. */
.ramea-site-header{
  border-top:4px solid var(--ramea-yellow);
  border-bottom:1px solid rgba(23,50,77,.11);
  box-shadow:0 2px 10px rgba(23,50,77,.045);
}
.ramea-site-header>.wp-block-group{min-height:76px}
.ramea-brand-link{min-height:58px}
.ramea-brand-logo{max-width:clamp(155px,15vw,225px);max-height:58px}
.ramea-site-header .wp-block-navigation-item__content{
  border-radius:0;
  padding:.7rem .62rem;
  position:relative;
}
.ramea-site-header .wp-block-navigation-item__content::after{
  content:"";
  position:absolute;
  left:.62rem;right:.62rem;bottom:.38rem;
  height:3px;
  background:var(--ramea-cyan);
  transform:scaleX(0);
  transform-origin:left;
  transition:transform .18s ease;
}
.ramea-site-header .wp-block-navigation-item__content:hover{background:transparent}
.ramea-site-header .wp-block-navigation-item__content:hover::after{transform:scaleX(1)}
.ramea-header-cta{
  min-height:42px;
  border-radius:3px;
  box-shadow:none;
  padding:.66rem 1rem;
}
.ramea-header-cta--secondary{
  background:transparent;
  color:var(--ramea-blue)!important;
  border:2px solid var(--ramea-blue);
}
.ramea-header-cta--secondary:hover{
  background:var(--ramea-blue)!important;
  color:#fff!important;
}
.ramea-theme-toggle{border-radius:3px;box-shadow:none;background:#fff}

/* Hero bleibt im neuen Ramea-Farbverlauf, wird aber geometrischer und ruhiger. */
.ramea-hero::before{height:12px;width:clamp(120px,13vw,190px)}
.ramea-hero::after{width:52px;height:52px;left:-24px;bottom:34px}
.ramea-hero-copy{padding-top:clamp(4.8rem,7vw,7rem);padding-bottom:clamp(4.8rem,7vw,7rem)}
.ramea-hero h1{max-width:13ch}
.ramea-hero .wp-block-column:last-child::before{border-radius:3px}
.ramea-hero-image img{border-radius:3px;box-shadow:0 14px 34px rgba(0,0,0,.20)}
.ramea-bar{border-radius:0;height:6px}

/* Redaktionelle Abschnittsköpfe. */
.ramea-section{border-top:var(--ramea-section-rule)}
.ramea-section:first-child{border-top:0}
.ramea-section-heading{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:1.25rem;
  margin-bottom:clamp(1.8rem,3vw,3rem);
}
.ramea-section-heading h2{margin:0;max-width:18ch}
.ramea-section-heading .ramea-kicker{margin-bottom:.35rem}
.ramea-section-link{font-weight:850;white-space:nowrap}
.ramea-section-surface{background:var(--ramea-surface);border-top:var(--ramea-section-rule);border-bottom:var(--ramea-section-rule)}

/* Meldungen: deutlich flacher als die bisherigen App-Karten. */
.ramea-card,.ramea-query-grid .wp-block-post{
  border-radius:3px;
  box-shadow:none;
  border:1px solid rgba(23,50,77,.13);
}
.ramea-card::before,.ramea-query-grid .wp-block-post::before{height:4px}
.ramea-card:hover,.ramea-query-grid .wp-block-post:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(23,50,77,.09);
  border-color:rgba(23,50,77,.22);
}
.ramea-query-grid .wp-block-post-title{font-size:clamp(1.25rem,1.8vw,1.6rem)}
.ramea-query-grid .wp-block-post-excerpt{font-size:.96rem;line-height:1.58}
.ramea-query-grid .wp-block-post-excerpt__more-link{margin-top:.75rem}
.ramea-query-grid .wp-block-post-featured-image img{aspect-ratio:16/10}

/* Startseiten-Meldungen im Stil eines redaktionellen Portals: erster Beitrag hervorgehoben. */
.ramea-home-news .wp-block-post-template{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(1.25rem,2.4vw,2.25rem);
}
.ramea-home-news .wp-block-post{border-top:4px solid var(--ramea-yellow);padding:1.25rem;background:#fff}
.ramea-home-news .wp-block-post:first-child{grid-row:span 2}
.ramea-home-news .wp-block-post:first-child .wp-block-post-title{font-size:clamp(1.65rem,2.5vw,2.35rem)}
.ramea-home-news .wp-block-post:first-child .wp-block-post-featured-image img{aspect-ratio:16/11}
.ramea-home-news .wp-block-post:not(:first-child){display:grid;grid-template-columns:minmax(120px,34%) 1fr;gap:1rem;align-items:start}
.ramea-home-news .wp-block-post:not(:first-child) .wp-block-post-featured-image{margin:-1.25rem 0 -1.25rem -1.25rem;height:calc(100% + 2.5rem)}
.ramea-home-news .wp-block-post:not(:first-child) .wp-block-post-featured-image img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}

/* Gliederungen / Ortsverbände. */
.ramea-division-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(23,50,77,.15);border:1px solid rgba(23,50,77,.15)}
.ramea-division-card{background:#fff;padding:clamp(1.4rem,2.5vw,2.2rem);min-height:190px;display:flex;flex-direction:column;justify-content:space-between}
.ramea-division-card h3{font-size:clamp(1.3rem,2vw,1.75rem);margin:.2rem 0 .8rem}
.ramea-division-card p{margin:.25rem 0;color:#445469}
.ramea-division-card .ramea-division-chair{font-size:.9rem;font-weight:800;color:var(--ramea-blue);margin-top:1.2rem}
.ramea-division-card a{font-weight:900}

/* Termine: markantes Datum links, Inhalt rechts. */
.ramea-event-list{border-top:2px solid var(--ramea-blue)}
.ramea-event-item{display:grid;grid-template-columns:92px 1fr auto;gap:1.25rem;align-items:center;padding:1.1rem 0;border-bottom:1px solid rgba(23,50,77,.16)}
.ramea-event-date{display:grid;place-items:center;background:var(--ramea-yellow);color:var(--ramea-blue);min-height:74px;padding:.55rem;text-align:center;font-weight:900;line-height:1}
.ramea-event-date strong{display:block;font-size:1.75rem}.ramea-event-date span{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.07em;margin-top:.2rem}
.ramea-event-item h3{font-size:1.15rem;margin:0 0 .25rem}.ramea-event-item p{margin:0;color:var(--ramea-muted)}
.ramea-event-item>a{font-weight:900;white-space:nowrap}

/* Engagement / Mitmachen: große Bild-Text-Fläche statt Karte. */
.ramea-engage{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);min-height:480px;background:var(--ramea-blue);color:#fff;overflow:hidden}
.ramea-engage__media{min-height:380px;background:var(--ramea-surface);overflow:hidden}
.ramea-engage__media img{width:100%;height:100%;object-fit:cover;display:block}
.ramea-engage__content{display:flex;flex-direction:column;justify-content:center;padding:clamp(2.2rem,5vw,5rem);position:relative}
.ramea-engage__content::before{content:"";position:absolute;left:0;top:0;width:12px;height:32%;background:var(--ramea-yellow)}
.ramea-engage h2,.ramea-engage p{color:#fff}.ramea-engage h2{font-size:clamp(2.2rem,4vw,4rem);margin:.4rem 0 1.2rem}
.ramea-engage .wp-block-button__link{border-radius:3px!important}

/* Newsletter / Kontakt als ruhige Service-Module. */
.ramea-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(23,50,77,.14);border:1px solid rgba(23,50,77,.14)}
.ramea-service-panel{background:#fff;padding:clamp(1.7rem,3vw,3rem)}
.ramea-service-panel h2{font-size:clamp(1.8rem,3vw,2.8rem);margin-top:.25rem}
.ramea-service-panel--blue{background:var(--ramea-blue);color:#fff}.ramea-service-panel--blue h2,.ramea-service-panel--blue p{color:#fff}

/* Personen. */
.ramea-person-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.25rem,2vw,2rem)}
.ramea-person-card{background:#fff;border-top:5px solid var(--ramea-cyan);border-bottom:1px solid rgba(23,50,77,.14)}
.ramea-person-card img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.ramea-person-card__body{padding:1.25rem 0}.ramea-person-card h3{font-size:1.45rem;margin:.15rem 0 .35rem}.ramea-person-card p{margin:.2rem 0;color:var(--ramea-muted)}

/* Footer: klarer und flacher, passend zum Verbandsportal. */
.ramea-site-footer{
  background:var(--ramea-blue);
  box-shadow:none;
  border-top:10px solid var(--ramea-yellow);
}
.ramea-site-footer::after{display:none}
.ramea-site-footer>.wp-block-columns{padding-top:clamp(4rem,6vw,6rem)!important}
.ramea-site-footer h3{color:#fff;font-size:.9rem}
.ramea-footer-rule{border-top:1px solid rgba(255,255,255,.28)}

/* Dark mode equivalents for the new modular pieces. */
html.ramea-theme-dark .ramea-header-cta--secondary{color:var(--ramea-dark-text)!important;border-color:rgba(255,255,255,.7)}
html.ramea-theme-dark .ramea-header-cta--secondary:hover{background:#fff!important;color:var(--ramea-blue)!important}
html.ramea-theme-dark .ramea-theme-toggle{background:var(--ramea-dark-surface);border-color:var(--ramea-dark-border)}
html.ramea-theme-dark .ramea-section-surface{background:var(--ramea-dark-surface)}
html.ramea-theme-dark .ramea-home-news .wp-block-post,
html.ramea-theme-dark .ramea-division-card,
html.ramea-theme-dark .ramea-service-panel,
html.ramea-theme-dark .ramea-person-card{background:var(--ramea-dark-surface);color:var(--ramea-dark-text)}
html.ramea-theme-dark .ramea-division-grid,
html.ramea-theme-dark .ramea-service-grid{background:var(--ramea-dark-border);border-color:var(--ramea-dark-border)}
html.ramea-theme-dark .ramea-division-card p,
html.ramea-theme-dark .ramea-person-card p,
html.ramea-theme-dark .ramea-event-item p{color:var(--ramea-dark-muted)}
html.ramea-theme-dark .ramea-division-card .ramea-division-chair{color:var(--ramea-cyan)}
html.ramea-theme-dark .ramea-event-list{border-top-color:var(--ramea-cyan)}
html.ramea-theme-dark .ramea-event-item{border-bottom-color:var(--ramea-dark-border)}
html.ramea-theme-dark .ramea-service-panel--blue{background:#102A47}

@media(max-width:960px){
  .ramea-home-news .wp-block-post-template{grid-template-columns:1fr}
  .ramea-home-news .wp-block-post:first-child{grid-row:auto}
  .ramea-home-news .wp-block-post:not(:first-child){display:block}
  .ramea-home-news .wp-block-post:not(:first-child) .wp-block-post-featured-image{margin:-1.25rem -1.25rem 1rem;height:auto}
  .ramea-home-news .wp-block-post:not(:first-child) .wp-block-post-featured-image img{height:auto;aspect-ratio:16/9}
  .ramea-person-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ramea-header-cta--secondary{display:none}
}
@media(max-width:700px){
  .ramea-division-grid,.ramea-service-grid,.ramea-person-grid{grid-template-columns:1fr}
  .ramea-event-item{grid-template-columns:74px 1fr}.ramea-event-item>a{grid-column:2}
  .ramea-engage{grid-template-columns:1fr}.ramea-engage__media{min-height:300px}.ramea-engage__content{padding:2rem 1.35rem 2.5rem}
}

/* Ramea AI Site Builder output: controlled core-block styling. */
.ramea-ai-hero { position: relative; overflow: clip; }
.ramea-ai-hero::after { content: ""; position: absolute; width: 22rem; height: 22rem; right: -8rem; top: -9rem; border-radius: 50%; background: color-mix(in srgb, var(--wp--preset--color--ramea-signal) 16%, transparent); pointer-events: none; }
.ramea-ai-section { position: relative; }
.ramea-ai-section--alternate { border-top: 1px solid color-mix(in srgb, currentColor 10%, transparent); }
.ramea-ai-cta { box-shadow: 0 18px 50px rgba(11,17,22,.14); }

/* ==========================================================
   3.3.0 — Ramea product shell
   Curated navigation + robust AI-generated layouts.
   The theme, not the model, owns spacing, hierarchy and breakpoints.
   ========================================================== */
:root{
  --ramea-shell:1320px;
  --ramea-gutter:clamp(1.25rem,3vw,2.5rem);
  --ramea-header-height:78px;
  --ramea-soft:#F6F8FA;
}

/* Header: one deliberate row. Page count can no longer make it wrap. */
.ramea-site-header{
  border-top:0!important;
  border-bottom:1px solid rgba(23,50,77,.09)!important;
  background:rgba(255,255,255,.94)!important;
  box-shadow:0 8px 30px rgba(23,50,77,.055)!important;
  backdrop-filter:saturate(160%) blur(14px);
  -webkit-backdrop-filter:saturate(160%) blur(14px);
}
.ramea-header-inner{
  width:min(calc(100% - (2 * var(--ramea-gutter))),var(--ramea-shell));
  min-height:var(--ramea-header-height);
  margin:0 auto;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:clamp(1rem,2.25vw,2.5rem);
}
.ramea-header-inner>.wp-block-shortcode{margin:0;min-width:0}
.ramea-brand-link{min-height:0!important;gap:.65rem}
.ramea-brand-text strong{font-size:1.34rem;letter-spacing:-.025em}
.ramea-brand-text small{display:none!important}
.ramea-brand-logo{max-width:190px!important;max-height:52px!important}
.ramea-header-actions{flex:0 0 auto!important;gap:.5rem!important}
.ramea-header-cta{
  min-height:44px!important;
  padding:.7rem 1rem!important;
  border-radius:10px!important;
  box-shadow:none!important;
}
.ramea-theme-toggle{width:44px;height:44px;min-height:44px;padding:0!important;border-radius:10px!important}
.ramea-theme-toggle__label{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.ramea-primary-nav{display:flex;align-items:center;justify-content:center;min-width:0}
.ramea-primary-nav__panel{min-width:0}
.ramea-primary-menu{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:nowrap;
  gap:.15rem;
  margin:0;
  padding:0;
  white-space:nowrap;
}
.ramea-primary-menu li{margin:0;padding:0;position:relative}
.ramea-primary-menu a{
  display:flex;
  align-items:center;
  min-height:42px;
  padding:.62rem .72rem;
  border-radius:9px;
  color:var(--ramea-blue)!important;
  font-size:.92rem;
  font-weight:780;
  line-height:1.1;
  text-decoration:none!important;
  transition:background .18s ease,color .18s ease;
}
.ramea-primary-menu a:hover,
.ramea-primary-menu .current-menu-item>a,
.ramea-primary-menu .current_page_item>a,
.ramea-primary-menu .is-current>a{background:rgba(25,167,160,.09);color:#0F4760!important}
.ramea-primary-menu .sub-menu{
  position:absolute;
  top:calc(100% + .45rem);
  left:0;
  z-index:50;
  min-width:230px;
  margin:0;
  padding:.55rem;
  list-style:none;
  border:1px solid rgba(23,50,77,.1);
  border-radius:12px;
  background:#fff;
  box-shadow:0 18px 50px rgba(23,50,77,.14);
  opacity:0;
  visibility:hidden;
  transform:translateY(-4px);
  transition:.16s ease;
}
.ramea-primary-menu li:hover>.sub-menu,
.ramea-primary-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}
.ramea-menu-toggle{display:none}

/* AI hero: stable hierarchy regardless of generated title length. */
.ramea-ai-hero{
  position:relative;
  overflow:hidden!important;
  isolation:isolate;
  padding-top:clamp(5.5rem,8vw,8rem)!important;
  padding-bottom:clamp(5rem,7vw,7rem)!important;
  background:
    radial-gradient(circle at 83% 23%,rgba(25,167,160,.14) 0 8rem,transparent 8.2rem),
    radial-gradient(circle at 89% 53%,rgba(242,193,78,.25) 0 4.25rem,transparent 4.4rem),
    linear-gradient(118deg,#F8FAFB 0%,#F3F7F8 58%,#EDF6F5 100%)!important;
  border-bottom:1px solid rgba(23,50,77,.08);
}
.ramea-ai-hero::before{
  content:"";
  position:absolute;
  right:max(3vw,2rem);
  top:50%;
  width:min(30vw,430px);
  aspect-ratio:1;
  transform:translateY(-50%);
  border:1px solid rgba(23,50,77,.08);
  border-radius:32px;
  background:
    linear-gradient(90deg,transparent 49.7%,rgba(23,50,77,.06) 50%,transparent 50.3%),
    linear-gradient(transparent 49.7%,rgba(23,50,77,.06) 50%,transparent 50.3%);
  opacity:.75;
  z-index:-1;
}
.ramea-ai-hero::after{
  content:"";
  position:absolute;
  right:clamp(2rem,8vw,9rem);
  top:clamp(2rem,10vw,7rem);
  width:clamp(90px,9vw,145px);
  height:10px;
  border-radius:99px;
  background:var(--ramea-yellow);
  z-index:-1;
}
.ramea-ai-hero__inner{
  width:min(calc(100% - (2 * var(--ramea-gutter))),var(--ramea-shell))!important;
  max-width:var(--ramea-shell)!important;
  margin:0 auto!important;
}
.ramea-ai-hero__inner>*{margin-left:0!important;margin-right:auto!important}
.ramea-ai-hero__title,
.ramea-ai-hero>.wp-block-heading{
  max-width:12.8ch!important;
  margin-top:0!important;
  margin-bottom:1.35rem!important;
  color:var(--ramea-blue)!important;
  font-size:clamp(3rem,5.2vw,5.25rem)!important;
  font-weight:850!important;
  line-height:.98!important;
  letter-spacing:-.055em!important;
  text-wrap:balance;
}
.ramea-ai-hero__lead,
.ramea-ai-hero>p{
  max-width:61ch!important;
  margin-top:0!important;
  margin-bottom:0!important;
  color:#425466!important;
  font-size:clamp(1.08rem,1.55vw,1.32rem)!important;
  line-height:1.62!important;
}
/* Legacy 3.2 generated pages get the same shell without regeneration. */
.ramea-ai-hero>.wp-block-heading,
.ramea-ai-hero>p,
.ramea-ai-hero>.wp-block-buttons{
  width:min(760px,calc(100% - (2 * var(--ramea-gutter))))!important;
  margin-left:max(var(--ramea-gutter),calc((100% - var(--ramea-shell))/2))!important;
  margin-right:auto!important;
  position:relative;
  z-index:2;
}
.ramea-ai-hero__actions{margin-top:2rem!important;gap:.7rem!important}
.ramea-ai-hero__actions .wp-block-button__link{border-radius:10px!important;padding:.85rem 1.2rem!important}
.ramea-ai-hero__actions .is-style-outline .wp-block-button__link{
  background:rgba(255,255,255,.7)!important;
  color:var(--ramea-blue)!important;
  border:1px solid rgba(23,50,77,.2)!important;
}
.ramea-ai-hero--inner{padding-top:clamp(4.5rem,6vw,6.5rem)!important;padding-bottom:clamp(4rem,5.5vw,5.5rem)!important}
.ramea-ai-hero--inner .ramea-ai-hero__title{font-size:clamp(2.7rem,4.2vw,4.3rem)!important;max-width:16ch!important}

/* AI sections: editorial two-column rhythm instead of a vertical text dump. */
.ramea-ai-section{
  border:0!important;
  padding-top:clamp(4.5rem,6.5vw,7rem)!important;
  padding-bottom:clamp(4.5rem,6.5vw,7rem)!important;
}
.ramea-ai-section.alignwide{
  width:min(calc(100% - (2 * var(--ramea-gutter))),var(--ramea-shell))!important;
  max-width:var(--ramea-shell)!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.ramea-ai-section--alternate{
  background:linear-gradient(180deg,rgba(245,247,248,.75),rgba(245,247,248,.42))!important;
  border-top:1px solid rgba(23,50,77,.07)!important;
  border-bottom:1px solid rgba(23,50,77,.07)!important;
}
.ramea-ai-section__layout{
  width:min(calc(100% - (2 * var(--ramea-gutter))),var(--ramea-shell))!important;
  max-width:var(--ramea-shell)!important;
  margin:0 auto!important;
  gap:clamp(2.5rem,6vw,6.5rem)!important;
  align-items:flex-start!important;
}
.ramea-ai-section__heading h2,
.ramea-ai-section>.wp-block-heading{
  margin:0!important;
  color:var(--ramea-blue)!important;
  font-size:clamp(2rem,3vw,3.25rem)!important;
  line-height:1.05!important;
  letter-spacing:-.045em!important;
  text-wrap:balance;
}
.ramea-ai-section__body{font-size:1.06rem;line-height:1.72;color:#38495B}
.ramea-ai-section__body p:first-child{margin-top:0}
.ramea-ai-section__body p:last-child{margin-bottom:0}
/* 3.2 legacy section markup: same two-column presentation. */
.ramea-ai-section.alignwide:not(.alignfull){
  display:grid!important;
  grid-template-columns:minmax(220px,.78fr) minmax(0,1.32fr)!important;
  column-gap:clamp(2.5rem,6vw,6.5rem)!important;
  align-items:start!important;
}
.ramea-ai-section.alignwide:not(.alignfull)>.wp-block-heading{grid-column:1;grid-row:1 / span 20}
.ramea-ai-section.alignwide:not(.alignfull)>p{grid-column:2;max-width:68ch;margin-top:0!important;margin-bottom:1.25rem!important;color:#38495B;font-size:1.06rem;line-height:1.72}

.ramea-ai-cta{
  width:min(calc(100% - (2 * var(--ramea-gutter))),var(--ramea-shell))!important;
  max-width:var(--ramea-shell)!important;
  margin:clamp(2.5rem,5vw,5rem) auto clamp(5rem,7vw,7rem)!important;
  padding:clamp(2rem,4vw,3.5rem)!important;
  border:0!important;
  border-radius:22px!important;
  background:linear-gradient(125deg,#17324D,#0D4968)!important;
  color:#fff!important;
  box-shadow:0 24px 65px rgba(23,50,77,.16)!important;
}
.ramea-ai-cta h2,.ramea-ai-cta p{color:#fff!important}
.ramea-ai-cta h2{max-width:18ch;font-size:clamp(2rem,3vw,3.15rem);margin-top:0}
.ramea-ai-cta p{max-width:68ch;color:rgba(255,255,255,.88)!important;font-size:1.06rem}

/* Curated footer: never dump every WordPress page into the footer. */
.ramea-footer-menu{list-style:none;margin:0;padding:0;display:grid;gap:.4rem}
.ramea-footer-menu li{margin:0}
.ramea-footer-menu a{display:inline-block;padding:.16rem 0;color:#fff!important;text-decoration:none!important;font-weight:650}
.ramea-footer-menu a:hover{color:var(--ramea-yellow)!important}

html.ramea-theme-dark .ramea-site-header{background:rgba(8,17,31,.94)!important;border-bottom-color:rgba(255,255,255,.08)!important}
html.ramea-theme-dark .ramea-primary-menu a{color:var(--ramea-dark-text)!important}
html.ramea-theme-dark .ramea-primary-menu a:hover,
html.ramea-theme-dark .ramea-primary-menu .current-menu-item>a,
html.ramea-theme-dark .ramea-primary-menu .current_page_item>a,
html.ramea-theme-dark .ramea-primary-menu .is-current>a{background:rgba(25,167,160,.16);color:#fff!important}
html.ramea-theme-dark .ramea-primary-menu .sub-menu{background:var(--ramea-dark-surface);border-color:var(--ramea-dark-border)}
html.ramea-theme-dark .ramea-ai-hero{
  background:
    radial-gradient(circle at 83% 23%,rgba(25,167,160,.13) 0 8rem,transparent 8.2rem),
    radial-gradient(circle at 89% 53%,rgba(242,193,78,.14) 0 4.25rem,transparent 4.4rem),
    linear-gradient(118deg,#0A1422 0%,#0D1B2A 58%,#10263A 100%)!important;
  border-bottom-color:rgba(255,255,255,.08);
}
html.ramea-theme-dark .ramea-ai-hero__title,
html.ramea-theme-dark .ramea-ai-hero>.wp-block-heading{color:#F7FAFC!important}
html.ramea-theme-dark .ramea-ai-hero__lead,
html.ramea-theme-dark .ramea-ai-hero>p{color:#C6D2DE!important}
html.ramea-theme-dark .ramea-ai-section--alternate{background:rgba(13,27,42,.55)!important;border-color:var(--ramea-dark-border)!important}
html.ramea-theme-dark .ramea-ai-section__heading h2,
html.ramea-theme-dark .ramea-ai-section>.wp-block-heading{color:#F4F7FB!important}
html.ramea-theme-dark .ramea-ai-section__body,
html.ramea-theme-dark .ramea-ai-section.alignwide:not(.alignfull)>p{color:#C6D2DE!important}

@media(max-width:1160px){
  .ramea-header-inner{grid-template-columns:auto 1fr auto;gap:.75rem}
  .ramea-primary-nav{justify-content:flex-end}
  .ramea-menu-toggle{
    display:inline-flex;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid rgba(23,50,77,.14);
    border-radius:10px;
    background:#fff;
    align-items:center;
    justify-content:center;
    cursor:pointer;
  }
  .ramea-menu-toggle__bars,.ramea-menu-toggle__bars::before,.ramea-menu-toggle__bars::after{display:block;width:20px;height:2px;background:var(--ramea-blue);border-radius:2px;transition:.2s ease}
  .ramea-menu-toggle__bars{position:relative}
  .ramea-menu-toggle__bars::before,.ramea-menu-toggle__bars::after{content:"";position:absolute;left:0}
  .ramea-menu-toggle__bars::before{top:-6px}.ramea-menu-toggle__bars::after{top:6px}
  .ramea-primary-nav.is-open .ramea-menu-toggle__bars{background:transparent}
  .ramea-primary-nav.is-open .ramea-menu-toggle__bars::before{top:0;transform:rotate(45deg)}
  .ramea-primary-nav.is-open .ramea-menu-toggle__bars::after{top:0;transform:rotate(-45deg)}
  .ramea-primary-nav__panel{
    position:fixed;
    top:var(--ramea-header-height);
    right:0;
    z-index:10000;
    width:min(420px,92vw);
    height:calc(100dvh - var(--ramea-header-height));
    padding:1.2rem;
    background:#fff;
    border-left:1px solid rgba(23,50,77,.1);
    box-shadow:-22px 20px 60px rgba(23,50,77,.18);
    transform:translateX(105%);
    visibility:hidden;
    transition:transform .22s ease,visibility .22s step-end;
    overflow-y:auto;
  }
  .ramea-primary-nav.is-open .ramea-primary-nav__panel{transform:none;visibility:visible;transition:transform .22s ease,visibility 0s}
  .ramea-primary-menu{display:flex;flex-direction:column;align-items:stretch;gap:.25rem;white-space:normal}
  .ramea-primary-menu a{font-size:1.05rem;padding:.9rem .85rem;min-height:48px}
  .ramea-primary-menu .sub-menu{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;padding:.25rem 0 .25rem 1rem;background:transparent}
  html.ramea-theme-dark .ramea-menu-toggle{background:var(--ramea-dark-surface);border-color:var(--ramea-dark-border)}
  html.ramea-theme-dark .ramea-menu-toggle__bars,
  html.ramea-theme-dark .ramea-menu-toggle__bars::before,
  html.ramea-theme-dark .ramea-menu-toggle__bars::after{background:#fff}
  html.ramea-theme-dark .ramea-primary-nav.is-open .ramea-menu-toggle__bars{background:transparent}
  html.ramea-theme-dark .ramea-primary-nav__panel{background:var(--ramea-dark-surface);border-color:var(--ramea-dark-border)}
}

@media(max-width:820px){
  .ramea-ai-hero::before{opacity:.3;right:-12rem}
  .ramea-ai-hero::after{right:1.5rem;top:2rem;width:82px}
  .ramea-ai-hero__title,.ramea-ai-hero>.wp-block-heading{font-size:clamp(2.7rem,11vw,4.2rem)!important;max-width:13ch!important}
  .ramea-ai-section__layout{gap:1.5rem!important}
  .ramea-ai-section__layout.wp-block-columns{flex-wrap:wrap!important}
  .ramea-ai-section__layout>.wp-block-column{flex-basis:100%!important}
  .ramea-ai-section.alignwide:not(.alignfull){display:block!important}
  .ramea-ai-section.alignwide:not(.alignfull)>.wp-block-heading{margin-bottom:1.5rem!important}
  .ramea-ai-section.alignwide:not(.alignfull)>p{max-width:68ch}
}

@media(max-width:700px){
  :root{--ramea-header-height:70px}
  .ramea-header-inner{min-height:70px;width:min(calc(100% - 2rem),var(--ramea-shell))}
  .ramea-brand-text strong{font-size:1.2rem}
  .ramea-header-actions .ramea-header-cta{display:none!important}
  .ramea-ai-hero{padding-top:4.6rem!important;padding-bottom:4.5rem!important}
  .ramea-ai-hero__title,.ramea-ai-hero>.wp-block-heading{font-size:clamp(2.55rem,13vw,3.85rem)!important;line-height:1!important}
  .ramea-ai-hero__lead,.ramea-ai-hero>p{font-size:1.06rem!important}
  .ramea-ai-hero__actions{flex-direction:column;align-items:stretch!important}
  .ramea-ai-hero__actions .wp-block-button{width:100%}
  .ramea-ai-hero__actions .wp-block-button__link{width:100%;justify-content:center}
  .ramea-ai-cta{border-radius:16px!important;padding:1.6rem!important}
}

/* --------------------------------------------------------------------------
   3.3.1 — Robust typography and collision guard
   Long German compound words and medium desktop widths must never overlap.
   -------------------------------------------------------------------------- */
.ramea-ai-hero__inner,
.ramea-ai-section__layout,
.ramea-ai-section__heading,
.ramea-ai-section__body,
.ramea-ai-section__layout > .wp-block-column{
  min-width:0!important;
  box-sizing:border-box;
}

.ramea-ai-hero__title,
.ramea-ai-hero>.wp-block-heading,
.ramea-ai-section__heading h2,
.ramea-ai-section>.wp-block-heading,
.ramea-ai-cta h2{
  overflow-wrap:anywhere;
  word-break:normal;
  hyphens:auto;
  -webkit-hyphens:auto;
}

.ramea-ai-hero__title,
.ramea-ai-hero>.wp-block-heading{
  font-size:clamp(2.8rem,4.6vw,4.65rem)!important;
  line-height:1.01!important;
  letter-spacing:-.047em!important;
  max-width:14.5ch!important;
}

.ramea-ai-section__heading h2,
.ramea-ai-section>.wp-block-heading{
  font-size:clamp(1.9rem,2.55vw,2.85rem)!important;
  line-height:1.08!important;
  letter-spacing:-.038em!important;
  max-width:16ch!important;
}

.ramea-ai-section__layout{
  gap:clamp(3rem,5vw,5.25rem)!important;
}
.ramea-ai-section__layout > .ramea-ai-section__heading{
  flex:0 1 34%!important;
}
.ramea-ai-section__layout > .ramea-ai-section__body{
  flex:1 1 66%!important;
}
.ramea-ai-section__body,
.ramea-ai-section.alignwide:not(.alignfull)>p{
  min-width:0!important;
  max-width:66ch!important;
}

/* The legacy 3.2 markup receives the same safe column math. */
.ramea-ai-section.alignwide:not(.alignfull){
  grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr)!important;
  column-gap:clamp(3rem,5vw,5.25rem)!important;
}
.ramea-ai-section.alignwide:not(.alignfull)>.wp-block-heading{
  min-width:0!important;
  max-width:16ch!important;
}

/* Medium desktop/tablet landscape: use a deliberate stacked editorial layout.
   Two columns are visually too tight here, especially with German compounds. */
@media(max-width:1100px){
  .ramea-ai-hero{
    padding-top:clamp(4.5rem,7vw,6rem)!important;
    padding-bottom:clamp(4.5rem,7vw,6rem)!important;
  }
  .ramea-ai-hero::before{right:-5rem;opacity:.5}
  .ramea-ai-hero::after{right:2.5rem;top:2.4rem}
  .ramea-ai-hero__title,
  .ramea-ai-hero>.wp-block-heading{
    max-width:min(15ch,78%)!important;
    font-size:clamp(2.75rem,6.2vw,4.15rem)!important;
  }
  .ramea-ai-hero__lead,
  .ramea-ai-hero>p{max-width:58ch!important}

  .ramea-ai-section__layout.wp-block-columns{
    display:flex!important;
    flex-direction:column!important;
    flex-wrap:nowrap!important;
    gap:1.35rem!important;
  }
  .ramea-ai-section__layout > .wp-block-column,
  .ramea-ai-section__layout > .ramea-ai-section__heading,
  .ramea-ai-section__layout > .ramea-ai-section__body{
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
  }
  .ramea-ai-section__heading h2{
    max-width:20ch!important;
    font-size:clamp(2rem,4.7vw,2.9rem)!important;
    margin-bottom:.25rem!important;
  }
  .ramea-ai-section__body{max-width:70ch!important}

  .ramea-ai-section.alignwide:not(.alignfull){
    display:block!important;
  }
  .ramea-ai-section.alignwide:not(.alignfull)>.wp-block-heading{
    grid-column:auto!important;
    grid-row:auto!important;
    max-width:20ch!important;
    margin-bottom:1.35rem!important;
  }
  .ramea-ai-section.alignwide:not(.alignfull)>p{
    grid-column:auto!important;
    max-width:70ch!important;
  }
}

@media(max-width:700px){
  .ramea-ai-hero__title,
  .ramea-ai-hero>.wp-block-heading{
    max-width:100%!important;
    font-size:clamp(2.35rem,11.5vw,3.4rem)!important;
    letter-spacing:-.04em!important;
  }
  .ramea-ai-section__heading h2,
  .ramea-ai-section>.wp-block-heading{
    max-width:100%!important;
    font-size:clamp(1.85rem,8vw,2.55rem)!important;
  }
}
