/* ==========================================================
   0.4 Responsive system
   Desktop >= 1280 | Notebook 1024-1279 | Tablet 700-1023
   Smartphone <= 699
   ========================================================== */

.aj-hero-inner{
  width:min(var(--aj-wide),calc(100% - 40px))!important;
  margin-inline:auto!important;
  position:relative;
  z-index:2;
}
.aj-hero-panel{
  margin-left:0!important;
  margin-right:auto!important;
  background:#fff!important;
  color:var(--aj-ink)!important;
}
.aj-hero-panel .aj-lead{color:var(--aj-muted)!important}

/* Fluid type and safe media */
img{max-width:100%;height:auto}
.wp-block-post-content p,.wp-block-post-content li{overflow-wrap:anywhere}
.aj-page-body,.aj-offer-body{font-size:clamp(.98rem,.2vw + .94rem,1.06rem)}
.aj-offer-card-body{min-height:235px;display:flex;flex-direction:column}
.aj-offer-card .wp-block-post-excerpt{flex:1}
.aj-offer-card .wp-block-post-excerpt__more-link{margin-top:auto}

/* Large desktop */
@media (min-width:1280px){
  .aj-site-header>.wp-block-group{min-height:88px}
  .aj-hero{min-height:620px;max-height:720px}
  .aj-hero-panel{width:500px}
}

/* Notebook / small desktop */
@media (min-width:1024px) and (max-width:1279px){
  .aj-site-header>.wp-block-group,
  .aj-section-inner,
  .aj-hero-inner,
  .aj-offer-hero-inner,
  .aj-site-footer>.wp-block-group{
    width:min(1080px,calc(100% - 48px))!important;
  }
  .aj-hero{min-height:540px}
  .aj-hero-panel{width:470px;padding:2.5rem!important}
  .aj-hero h1{font-size:clamp(2.75rem,4.5vw,4rem)!important}
  .wp-block-media-text.aj-feature .wp-block-media-text__media,
  .wp-block-media-text.aj-feature .wp-block-media-text__media img{min-height:470px}
}

/* Tablet */
@media (min-width:700px) and (max-width:1023px){
  .aj-site-header>.wp-block-group,
  .aj-section-inner,
  .aj-hero-inner,
  .aj-offer-hero-inner,
  .aj-site-footer>.wp-block-group{
    width:calc(100% - 40px)!important;
  }

  /* Core navigation becomes hamburger already on tablets */
  .aj-site-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
  .aj-site-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .aj-site-header .wp-block-navigation__responsive-container.is-menu-open{
    display:flex;
    padding:2rem;
  }

  .aj-hero{
    min-height:510px;
    background-position:58% center;
  }
  .aj-hero-panel{
    width:min(460px,68vw);
    padding:2.2rem!important;
  }
  .aj-hero h1{font-size:clamp(2.55rem,6vw,3.7rem)!important}

  .aj-question-wrap .wp-block-columns{gap:.8rem}
  .aj-question-card{min-height:145px;padding:1.1rem!important}

  .wp-block-media-text.aj-feature{
    grid-template-columns:46% 54%!important;
  }
  .wp-block-media-text.aj-feature .wp-block-media-text__content{padding:2.4rem!important}
  .wp-block-media-text.aj-feature .wp-block-media-text__media,
  .wp-block-media-text.aj-feature .wp-block-media-text__media img{min-height:460px}

  .aj-offers .wp-block-post-template{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .aj-offers .wp-block-post-template>li:last-child:nth-child(odd){
    grid-column:1/-1;
    width:calc(50% - .7rem);
    justify-self:center;
  }

  .aj-offer-hero-inner{
    grid-template-columns:1fr!important;
    gap:2rem;
  }
  .aj-offer-hero .wp-block-post-featured-image{max-width:760px}
  .aj-offer-hero .wp-block-post-featured-image img{aspect-ratio:16/8.5}

  .aj-contact-panel{grid-template-columns:1.15fr .85fr!important}
}

/* Smartphone */
@media (max-width:699px){
  body{font-size:16px}
  .aj-site-header{position:sticky}
  .aj-site-header>.wp-block-group{
    width:calc(100% - 28px)!important;
    min-height:68px;
  }
  .aj-site-header .wp-block-site-logo img{max-height:48px}

  .aj-site-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}
  .aj-site-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .aj-site-header .wp-block-navigation__responsive-container.is-menu-open{
    display:flex;
    padding:1.5rem;
    background:#fff;
  }
  .aj-site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    gap:.8rem;
    align-items:flex-start;
  }

  .aj-hero{
    min-height:510px;
    align-items:flex-end;
    padding-bottom:18px;
    background-position:62% center;
  }
  .aj-hero:after{
    background:linear-gradient(180deg,rgba(30,44,52,.02) 20%,rgba(30,44,52,.18) 100%);
  }
  .aj-hero-inner{width:calc(100% - 28px)!important}
  .aj-hero-panel{
    width:100%;
    padding:1.55rem!important;
    border-radius:15px;
    box-shadow:0 14px 36px rgba(26,41,49,.14);
  }
  .aj-hero h1{
    max-width:none;
    font-size:clamp(2.15rem,12vw,3.1rem)!important;
    line-height:1.02!important;
    margin-bottom:.85rem;
  }
  .aj-hero p{max-width:none;font-size:1rem!important}

  .aj-section{padding-block:3.4rem}
  .aj-section-inner,
  .aj-page-header>.wp-block-group,
  .aj-page-body,
  .aj-offer-body,
  .aj-offer-hero-inner,
  .aj-site-footer>.wp-block-group{
    width:calc(100% - 28px)!important;
  }

  .aj-question-wrap{padding-block:1.4rem 2.4rem}
  .aj-question-wrap .wp-block-columns{gap:.75rem}
  .aj-question-card{
    min-height:auto;
    padding:1.1rem 1.2rem!important;
  }

  /* Media/Text always stacks cleanly */
  .wp-block-media-text.aj-feature{
    width:calc(100% - 28px)!important;
    display:flex!important;
    flex-direction:column!important;
  }
  .wp-block-media-text.aj-feature.has-media-on-the-right{
    flex-direction:column-reverse!important;
  }
  .wp-block-media-text.aj-feature .wp-block-media-text__media,
  .wp-block-media-text.aj-feature .wp-block-media-text__content{
    width:100%!important;
  }
  .wp-block-media-text.aj-feature .wp-block-media-text__content{
    padding:1.75rem!important;
  }
  .wp-block-media-text.aj-feature .wp-block-media-text__media,
  .wp-block-media-text.aj-feature .wp-block-media-text__media img{
    min-height:0!important;
    max-height:none!important;
    aspect-ratio:4/3;
    object-fit:cover;
  }

  .aj-section-heading{text-align:left;margin-bottom:1.5rem}

  .aj-offers .wp-block-post-template{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:1rem!important;
  }
  .aj-offers .wp-block-post-template>li:last-child:nth-child(odd){
    grid-column:auto;
    width:100%;
  }
  .aj-offer-card-body{min-height:0;padding:1.25rem!important}
  .aj-offer-card .wp-block-post-featured-image img{aspect-ratio:16/9}

  .aj-page-header>.wp-block-group{padding-block:2.3rem}
  .aj-page-header h1{font-size:clamp(2.15rem,10vw,3rem)!important}
  .aj-page-body{padding-block:2.7rem}

  .aj-offer-hero-inner{
    grid-template-columns:1fr!important;
    padding-block:2.6rem;
  }
  .aj-offer-title h1{font-size:clamp(2.2rem,10vw,3.15rem)!important}
  .aj-offer-hero .wp-block-post-featured-image img{
    aspect-ratio:4/3;
    border-radius:14px!important;
  }

  .aj-price-grid{grid-template-columns:1fr!important}
  .aj-price-card{padding:1.25rem}

  .aj-contact-panel{
    grid-template-columns:1fr!important;
    gap:1.4rem;
    padding:1.5rem!important;
  }
  .aj-contact-qr{padding:1.2rem}

  .aj-site-footer>.wp-block-group{padding-block:2.8rem 1.8rem}
  .aj-site-footer .wp-block-columns{gap:1.5rem}
  .aj-footer-bottom{margin-top:1.3rem}
}

/* Very small phones */
@media (max-width:380px){
  .aj-hero{min-height:470px}
  .aj-hero h1{font-size:2.05rem!important}
  .aj-hero-panel{padding:1.3rem!important}
  .wp-block-button__link{width:100%;text-align:center}
}


/* ==========================================================
   V0.3 – konsistentes Seitensystem
   ========================================================== */

/* Page hero: wiederkehrendes Hagebuttenmotiv auf normalen Unterseiten */
.aj-page-hero{
  min-height:clamp(250px,30vw,340px);
  display:flex;
  align-items:flex-end;
  background-size:cover;
  background-position:center 42%;
  border-bottom:0;
  position:relative;
}
.aj-page-hero-inner{
  width:min(var(--aj-wide),calc(100% - 40px));
  margin-inline:auto;
  padding:clamp(2.7rem,5vw,4.2rem) 0;
  position:relative;
  z-index:1;
}
.aj-page-hero h1{
  margin:0!important;
  max-width:14ch;
  color:#fff!important;
  font-size:clamp(2.55rem,4.8vw,4.25rem)!important;
  line-height:1.03!important;
  letter-spacing:-.035em!important;
  text-shadow:0 2px 18px rgba(20,35,44,.25);
}
.aj-page-body{
  width:min(var(--aj-reading),calc(100% - 40px));
  padding-block:clamp(4rem,7vw,6.5rem);
}

/* Angebotsseiten: die gute Split-Hero-Struktur erhalten, Umbruch verhindern */
.aj-offer-hero-inner{
  grid-template-columns:minmax(470px,.95fr) minmax(420px,1.05fr);
}
.aj-offer-title h1{
  font-size:clamp(2.45rem,3.5vw,3.75rem)!important;
  line-height:1.04!important;
  letter-spacing:-.03em!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
}
@media(min-width:1024px){
  .aj-offer-title h1{white-space:nowrap}
}

/* Über mich: mehr Rhythmus und bewusst unterschiedliche Bild-/Textabschnitte */
.aj-about-feature,
.aj-room-feature{margin-bottom:clamp(2.5rem,5vw,4.5rem)!important}
.aj-about-feature .wp-block-media-text__media img{object-position:center 28%}
.aj-about-copy p{margin-bottom:1.15rem!important;line-height:1.72}
.aj-room-feature .wp-block-media-text__media,
.aj-room-feature .wp-block-media-text__media img{min-height:380px!important;max-height:520px!important}
.aj-room-feature .wp-block-media-text__media img{object-fit:cover}

/* Kontakt: kompakte, lesbare Karten – keinerlei groß skalierte Piktogramme */
.aj-contact-wrap{width:min(var(--aj-wide),calc(100vw - 40px));max-width:none;margin-left:50%;transform:translateX(-50%)}
.aj-contact-intro{max-width:720px;margin:0 auto 2.4rem;text-align:center}
.aj-contact-intro .wp-block-site-logo,.aj-contact-intro .wp-block-image{margin-inline:auto}
.aj-contact-intro .aj-contact-logo img{width:112px!important;height:auto!important;border-radius:0!important;box-shadow:none!important}
.aj-contact-grid{gap:1rem!important;margin:2rem 0 2.5rem}
.aj-contact-card{
  height:100%;
  padding:1.55rem!important;
  background:#fff!important;
  border:1px solid var(--aj-line);
  border-radius:var(--aj-radius-sm);
  box-shadow:var(--aj-shadow-soft);
  text-align:center;
}
.aj-contact-card h3{margin:.15rem 0 .7rem;color:var(--aj-primary-dark)!important;font-size:1.1rem!important}
.aj-contact-card p{margin:0;color:var(--aj-muted)!important;overflow-wrap:anywhere}
.aj-contact-card a{font-weight:700;color:var(--aj-primary)!important;text-decoration:none}
.aj-contact-qr-card{
  width:min(430px,100%);
  margin:0 auto!important;
  padding:1.7rem!important;
  background:var(--aj-soft)!important;
  border:1px solid var(--aj-line);
  border-radius:var(--aj-radius);
  text-align:center;
}
.aj-contact-qr-card img{width:min(170px,60vw)!important;height:auto!important;margin-inline:auto;border-radius:8px!important;box-shadow:none!important}

/* CTA – einheitlicher Abschluss vor jedem Footer */
.aj-site-cta{
  width:100%;
  margin:0!important;
  padding:clamp(3rem,6vw,4.8rem) 0;
  background:var(--aj-primary)!important;
  color:#fff!important;
}
.aj-site-cta-inner{
  width:min(var(--aj-wide),calc(100% - 40px));
  margin-inline:auto;
  gap:2rem;
}
.aj-site-cta .aj-eyebrow{color:var(--aj-accent-soft)!important;margin-bottom:.55rem}
.aj-site-cta h2{color:#fff!important;margin:.15rem 0 .65rem;font-size:clamp(1.8rem,3vw,2.65rem)!important}
.aj-site-cta p{color:rgba(255,255,255,.84)!important;margin:0;max-width:62ch}
.aj-site-cta .wp-block-button__link{
  background:#fff!important;
  color:var(--aj-primary-dark)!important;
  padding:.9rem 1.25rem!important;
}
.aj-site-cta .wp-block-button__link:hover{background:var(--aj-accent-soft)!important}
body.aj-page-kontakt .aj-site-cta{display:none}

/* Footer: drei gleich breite, zentrierte Bereiche */
.aj-footer-columns{gap:1.5rem!important;align-items:flex-start}
.aj-footer-column{flex-basis:0!important;flex-grow:1!important;text-align:center}
.aj-footer-column h3,.aj-footer-column h4{text-align:center}
.aj-footer-column p{max-width:320px;margin-left:auto!important;margin-right:auto!important}
.aj-footer-bottom{text-align:center!important;margin-left:auto!important;margin-right:auto!important}

/* Header minimal kräftiger und proportional zur neuen Seitenbreite */
.aj-site-header>.wp-block-group{min-height:88px}
.aj-site-header .wp-block-site-logo img{max-height:66px}

@media(max-width:1023px){
  .aj-offer-hero-inner{grid-template-columns:1fr!important}
  .aj-offer-title h1{white-space:normal!important}
}
@media(max-width:781px){
  .aj-page-hero{min-height:220px;background-position:60% center}
  .aj-page-hero-inner,.aj-site-cta-inner{width:calc(100% - 28px)}
  .aj-page-hero h1{font-size:clamp(2.25rem,11vw,3.3rem)!important}
  .aj-contact-wrap{width:calc(100vw - 28px)}
  .aj-footer-column{text-align:center}
}


/* ==========================================================
   V0.4 – vollständig dynamisches Angebots-/Navigationssystem
   ========================================================== */

/* Dynamische Hauptnavigation */
.aj-dynamic-navigation{margin-left:auto;display:flex;align-items:center}
.aj-nav-desktop{display:flex;align-items:center;gap:1.7rem;font-size:.95rem;font-weight:650}
.aj-nav-desktop>a,.aj-nav-offers>summary{color:var(--aj-primary-dark);text-decoration:none;cursor:pointer;list-style:none}
.aj-nav-offers>summary::-webkit-details-marker{display:none}
.aj-nav-offers>summary:after{content:"⌄";font-size:.8em;margin-left:.35rem}
.aj-nav-offers{position:relative}
.aj-nav-submenu{position:absolute;right:0;top:calc(100% + .8rem);min-width:230px;padding:.55rem;background:#fff;border:1px solid var(--aj-line);border-radius:12px;box-shadow:var(--aj-shadow);z-index:200}
.aj-nav-submenu a{display:block;padding:.75rem .85rem;color:var(--aj-primary-dark);text-decoration:none;border-radius:8px;white-space:nowrap}
.aj-nav-submenu a:hover{background:var(--aj-soft)}
.aj-nav-mobile{display:none;position:relative}
.aj-nav-mobile>summary{cursor:pointer;font-weight:700;color:var(--aj-primary-dark);list-style:none;padding:.55rem .75rem;border:1px solid var(--aj-line);border-radius:9px}
.aj-nav-mobile>summary::-webkit-details-marker{display:none}
.aj-nav-mobile nav{position:absolute;right:0;top:calc(100% + .6rem);width:min(300px,calc(100vw - 32px));display:grid;padding:.75rem;background:#fff;border:1px solid var(--aj-line);border-radius:12px;box-shadow:var(--aj-shadow);z-index:220}
.aj-nav-mobile nav a,.aj-nav-mobile-label{padding:.7rem .8rem;text-decoration:none;color:var(--aj-primary-dark)}
.aj-nav-mobile-label{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--aj-accent);font-weight:800;padding-bottom:.25rem}

/* Angebotsdetail: lange deutsche Titel nie mitten im Wort umbrechen */
.aj-offer-hero-inner{grid-template-columns:minmax(520px,1fr) minmax(480px,1.06fr)!important}
.aj-offer-title h1{font-size:clamp(2.5rem,3.35vw,3.65rem)!important;word-break:keep-all!important;overflow-wrap:normal!important;hyphens:none!important}
.aj-offer-subtitle{margin:0;color:var(--aj-muted)!important;font-size:clamp(1.02rem,1.3vw,1.18rem);line-height:1.55;max-width:48ch}
.aj-offer-teaser{font-size:clamp(1.12rem,1.35vw,1.28rem);line-height:1.72;color:var(--aj-primary-dark)!important;font-weight:550;margin:0 0 2.1rem;padding-bottom:2rem;border-bottom:1px solid var(--aj-line)}
.aj-offer-details-copy p{line-height:1.75;margin-bottom:1.35rem}

/* Grid liest ausschließlich "Text auf Startseite" und zeigt beliebig viele veröffentlichte Angebote. */
.aj-dynamic-offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.4rem}
.aj-dynamic-offer-grid .aj-offer-card{display:flex;flex-direction:column}
.aj-offer-card-image{display:block;overflow:hidden}
.aj-offer-card-image img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .25s ease}
.aj-offer-card:hover .aj-offer-card-image img{transform:scale(1.015)}
.aj-dynamic-offer-grid .aj-offer-card-body{display:flex;flex-direction:column;flex:1;min-height:230px}
.aj-dynamic-offer-grid .aj-offer-card-body h3{margin:0 0 .7rem;font-size:1.28rem}
.aj-dynamic-offer-grid .aj-offer-card-body h3 a{text-decoration:none;color:var(--aj-primary-dark)}
.aj-dynamic-offer-grid .aj-offer-card-body p{color:var(--aj-muted);line-height:1.62;margin:0 0 1rem}
.aj-more-link{margin-top:auto;font-weight:750;text-decoration:none;color:var(--aj-primary)}

/* Beraterinnenfoto: eine zentrale Quelle, mehrere sinnvoll proportionierte Verwendungen. */
.aj-advisor-portrait{margin:0;overflow:hidden;border-radius:var(--aj-radius);box-shadow:var(--aj-shadow);background:var(--aj-soft)}
.aj-advisor-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 28%;aspect-ratio:4/5}
.aj-profile-feature{width:min(var(--aj-wide),calc(100% - 40px));margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);overflow:hidden;background:#fff;border:1px solid var(--aj-line);border-radius:var(--aj-radius);box-shadow:var(--aj-shadow)}
.aj-profile-feature-copy{padding:clamp(2.5rem,5vw,4.5rem)!important;align-self:center}
.aj-profile-feature>.aj-advisor-portrait{border-radius:0;box-shadow:none;height:100%}
.aj-profile-feature>.aj-advisor-portrait img{aspect-ratio:auto;min-height:520px;max-height:650px}
.aj-about-profile-grid{display:grid!important;grid-template-columns:minmax(330px,.8fr) minmax(0,1.2fr);gap:clamp(2.2rem,5vw,5rem);align-items:center;margin-bottom:clamp(4rem,7vw,6rem)!important}
.aj-about-profile-grid>.aj-advisor-portrait img{aspect-ratio:4/5}
.aj-about-room{display:grid!important;grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;margin-bottom:clamp(4rem,7vw,6rem)!important}
.aj-about-room .wp-block-image{margin:0}
.aj-about-offers{margin-top:1rem!important}

/* Kontaktseite ohne riesige Icon-SVGs */
.aj-contact-dynamic{width:min(var(--aj-wide),calc(100vw - 40px));max-width:none;margin-left:50%;transform:translateX(-50%);display:grid;grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.aj-contact-person{display:grid;grid-template-columns:150px 1fr;gap:1.5rem;align-items:center;padding:1.6rem;background:#fff;border:1px solid var(--aj-line);border-radius:var(--aj-radius);box-shadow:var(--aj-shadow-soft)}
.aj-contact-person-photo img{width:150px;height:180px;object-fit:cover;object-position:center 28%;border-radius:12px}
.aj-contact-person h2{margin:.2rem 0 .55rem;font-size:1.65rem!important}.aj-contact-person p{margin:.35rem 0;color:var(--aj-muted)}.aj-contact-privacy{font-size:.84rem}
.aj-contact-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.aj-contact-method{display:flex;flex-direction:column;gap:.45rem;min-height:128px;padding:1.35rem;background:#fff;border:1px solid var(--aj-line);border-radius:var(--aj-radius-sm);box-shadow:var(--aj-shadow-soft);text-decoration:none;color:var(--aj-primary-dark)}
.aj-contact-method span{font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--aj-accent);font-weight:800}.aj-contact-method strong{font-size:1rem;overflow-wrap:anywhere}
.aj-contact-qr-small{grid-column:2;margin-top:1rem;width:220px;padding:1rem;background:var(--aj-soft);border-radius:var(--aj-radius-sm);text-align:center}.aj-contact-qr-small img{display:block;width:150px;height:auto;margin:auto}

/* CTA verwendet ebenfalls das zentrale Beraterinnenfoto. */
.aj-site-cta-inner{display:flex;justify-content:space-between;align-items:center!important;gap:2rem}
.aj-cta-person{display:flex;align-items:center;gap:1.3rem;max-width:850px}.aj-cta-photo{flex:0 0 86px}.aj-cta-photo img{width:86px;height:86px;object-fit:cover;object-position:center 28%;border-radius:50%;border:3px solid rgba(255,255,255,.75)}
.aj-cta-link{display:inline-block;white-space:nowrap;padding:.9rem 1.25rem;border-radius:9px;background:#fff;color:var(--aj-primary-dark)!important;text-decoration:none;font-weight:750}.aj-cta-link:hover{background:var(--aj-accent-soft)}

@media(max-width:1120px){
 .aj-offer-hero-inner{grid-template-columns:1fr!important}.aj-offer-title h1{white-space:normal!important}
 .aj-dynamic-offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .aj-contact-dynamic{grid-template-columns:1fr}.aj-contact-qr-small{grid-column:auto}
}
@media(max-width:800px){
 .aj-nav-desktop{display:none}.aj-nav-mobile{display:block}
 .aj-profile-feature,.aj-about-profile-grid,.aj-about-room{grid-template-columns:1fr!important}
 .aj-profile-feature>.aj-advisor-portrait{order:-1}.aj-profile-feature>.aj-advisor-portrait img{min-height:0;max-height:none;aspect-ratio:4/3}
 .aj-about-profile-grid>.aj-advisor-portrait{max-width:520px;margin:auto}.aj-about-room .wp-block-image{order:-1}
 .aj-contact-person{grid-template-columns:110px 1fr}.aj-contact-person-photo img{width:110px;height:135px}
 .aj-contact-methods{grid-template-columns:1fr}.aj-site-cta-inner{align-items:flex-start!important}.aj-cta-person{align-items:flex-start}.aj-cta-link{margin-left:auto}
}
@media(max-width:560px){
 .aj-dynamic-offer-grid{grid-template-columns:1fr}.aj-contact-person{grid-template-columns:1fr}.aj-contact-person-photo img{width:120px;height:145px}.aj-contact-methods{grid-template-columns:1fr}
 .aj-site-cta-inner{display:block}.aj-cta-person{display:block}.aj-cta-photo{margin-bottom:1rem}.aj-cta-link{margin-top:1.4rem}
}


/* ==========================================================
   V0.5 – Editorial Designsystem / konsistente Seiten
   ========================================================== */
:root{
  --aj-primary:#375A72;
  --aj-primary-dark:#2C4558;
  --aj-accent:#718B80;
  --aj-canvas:#F7F5F0;
  --aj-soft:#EEEAE1;
  --aj-line:#DDD8CE;
  --aj-reading:880px;
  --aj-wide:1240px;
}

/* Hero-Titel niemals roh über das Foto legen. */
.aj-hero{min-height:clamp(520px,61vh,660px);background-position:center 46%!important;align-items:center}
.aj-hero:after{background:linear-gradient(90deg,rgba(24,40,51,.13),rgba(24,40,51,.01) 58%,rgba(24,40,51,0))}
.aj-hero-inner{display:flex!important;justify-content:flex-start!important;align-items:center!important}
.aj-hero-panel{
  width:min(520px,calc(100% - 24px))!important;
  margin:0!important;
  padding:clamp(2rem,4vw,3.3rem)!important;
  background:rgba(250,249,246,.96)!important;
  border:1px solid rgba(255,255,255,.8)!important;
  border-radius:20px!important;
  box-shadow:0 24px 70px rgba(27,43,53,.16)!important;
}
.aj-hero-panel .aj-eyebrow{color:var(--aj-accent)!important}
.aj-hero-panel h1{color:var(--aj-primary-dark)!important;max-width:10.5ch;font-size:clamp(2.75rem,4.4vw,4.35rem)!important}
.aj-hero-panel .aj-lead{color:#596A74!important;max-width:34ch}

/* Normaler Unterseitenhero: Hagebutte + warmes Titelpanel. */
.aj-page-hero{min-height:300px!important;align-items:center!important;background-position:center 44%!important;position:relative}
.aj-page-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(27,43,53,.15),rgba(27,43,53,.02));pointer-events:none}
.aj-page-hero-inner{padding:3rem 0!important;z-index:2!important}
.aj-page-hero h1{
  display:inline-block;
  max-width:none!important;
  margin:0!important;
  padding:.42em .68em!important;
  background:rgba(250,249,246,.95)!important;
  border:1px solid rgba(255,255,255,.7);
  border-radius:14px;
  color:var(--aj-primary-dark)!important;
  text-shadow:none!important;
  box-shadow:0 14px 40px rgba(27,43,53,.12);
  font-size:clamp(2.25rem,4vw,3.65rem)!important;
  line-height:1.05!important;
}

/* Portrait: begrenzt statt flächig aufblasen. */
.aj-home-about-section{background:var(--aj-canvas)!important}
.aj-home-about{
  width:min(1080px,calc(100% - 40px));
  margin-inline:auto;
  display:grid!important;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.72fr);
  gap:clamp(3rem,7vw,6.5rem);
  align-items:center;
}
.aj-home-about-copy{max-width:600px}
.aj-home-about-copy h2{font-size:clamp(2rem,3vw,3rem)!important;margin:.35rem 0 1.2rem}
.aj-home-about>.aj-advisor-portrait{width:min(100%,390px);justify-self:end;aspect-ratio:4/5;max-height:500px}
.aj-home-about>.aj-advisor-portrait img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 25%}

/* Angebotsseiten: Titel auf Desktop sicher in einer Zeile, Bild proportional. */
.aj-offer-hero-inner{grid-template-columns:minmax(610px,1.08fr) minmax(420px,.92fr)!important;gap:clamp(2.5rem,5vw,5rem)!important;padding-block:clamp(3.4rem,6vw,5.2rem)!important}
.aj-offer-title h1{font-size:clamp(2.4rem,2.9vw,3.25rem)!important;white-space:nowrap!important;color:var(--aj-primary-dark)!important;max-width:none!important}
.aj-offer-hero .wp-block-post-featured-image img{aspect-ratio:3/2!important;max-height:440px;object-fit:cover!important}

/* Über mich: bewusst editorial, nicht Formular-/Importoptik. */
.aj-page-ueber-mich .aj-page-body{width:min(var(--aj-wide),calc(100% - 40px));padding-block:clamp(4rem,7vw,6.5rem)}
.aj-about-editorial{display:grid!important;grid-template-columns:minmax(0,1.12fr) minmax(300px,.7fr);gap:clamp(3rem,7vw,7rem);align-items:center;margin-bottom:clamp(5rem,9vw,8rem)!important}
.aj-about-intro-copy{max-width:650px}
.aj-about-intro-copy h2{font-size:clamp(2.2rem,3.7vw,3.5rem)!important;margin:.35rem 0 1.4rem}
.aj-about-intro-copy p{font-size:1.04rem;line-height:1.8;margin-bottom:1.15rem}
.aj-about-lead{font-size:1.25rem!important;font-weight:650;color:var(--aj-primary-dark)!important}
.aj-about-editorial>.aj-advisor-portrait{width:min(100%,390px);justify-self:end;max-height:500px;aspect-ratio:4/5}
.aj-about-editorial>.aj-advisor-portrait img{width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 25%}
.aj-about-room-editorial{display:grid!important;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:clamp(2.5rem,6vw,5rem);align-items:center;padding:clamp(2rem,4vw,3.2rem)!important;background:#fff;border:1px solid var(--aj-line);border-radius:20px;box-shadow:var(--aj-shadow-soft);margin-bottom:clamp(5rem,8vw,7rem)!important}
.aj-about-room-editorial .wp-block-image{margin:0!important}
.aj-about-room-editorial .wp-block-image img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:14px!important;box-shadow:none!important}
.aj-about-room-copy h2{font-size:clamp(1.8rem,3vw,2.6rem)!important;margin:.35rem 0 1rem}
.aj-about-offers{margin-bottom:1rem!important}

/* Kontakt: redaktionelle Kontaktseite ohne dekorative Mega-Icons. */
.aj-page-kontakt .aj-page-body{width:min(1040px,calc(100% - 40px));padding-block:clamp(4rem,7vw,6.5rem)}
.aj-contact-editorial{display:grid;gap:2rem}
.aj-contact-intro-card{display:grid;grid-template-columns:250px minmax(0,1fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding:clamp(1.6rem,4vw,2.8rem);background:#fff;border:1px solid var(--aj-line);border-radius:20px;box-shadow:var(--aj-shadow-soft)}
.aj-contact-portrait{overflow:hidden;border-radius:15px;aspect-ratio:4/5;background:var(--aj-soft)}
.aj-contact-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}
.aj-contact-intro-copy h2{font-size:clamp(2rem,3.8vw,3.15rem)!important;margin:.35rem 0 1rem;max-width:18ch}
.aj-contact-intro-copy>p:not(.aj-eyebrow){font-size:1.06rem;color:var(--aj-muted);max-width:56ch}
.aj-contact-privacy{font-size:.88rem!important;margin-top:1.2rem!important}
.aj-contact-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.aj-contact-option{min-height:155px;display:flex;flex-direction:column;justify-content:space-between;gap:.7rem;padding:1.4rem 1.5rem;background:var(--aj-soft);border:1px solid var(--aj-line);border-radius:15px;text-decoration:none;color:var(--aj-primary-dark)!important;transition:transform .16s ease,background .16s ease}
.aj-contact-option:hover{transform:translateY(-2px);background:#fff}
.aj-contact-label{font-size:.76rem;letter-spacing:.09em;text-transform:uppercase;color:var(--aj-accent);font-weight:800}
.aj-contact-option strong{font-size:1.08rem;line-height:1.4;overflow-wrap:anywhere}
.aj-contact-action{font-size:.9rem;font-weight:750;color:var(--aj-primary)}
.aj-contact-qr-panel{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.5rem 1.7rem;background:#fff;border:1px solid var(--aj-line);border-radius:16px}
.aj-contact-qr-panel h3{margin:.25rem 0 .45rem;font-size:1.25rem!important}
.aj-contact-qr-panel p{margin:0;color:var(--aj-muted)}
.aj-contact-qr-image{flex:0 0 120px}.aj-contact-qr-image img{display:block;width:120px!important;height:auto!important;border-radius:8px!important;box-shadow:none!important}

/* CTA: warm und eigenständig; kein schmaler Spalt zwischen zwei dunkelblauen Flächen. */
.aj-site-cta{margin:0!important;padding:clamp(3.2rem,6vw,4.8rem) 0!important;background:var(--aj-soft)!important;color:var(--aj-ink)!important;border-top:1px solid var(--aj-line)}
.aj-site-cta-inner{width:min(1080px,calc(100% - 40px));margin-inline:auto;display:flex;justify-content:space-between;align-items:center;gap:2.5rem}
.aj-site-cta .aj-eyebrow{color:var(--aj-accent)!important}
.aj-site-cta h2{color:var(--aj-primary-dark)!important;font-size:clamp(1.75rem,3vw,2.5rem)!important;margin:.25rem 0 .65rem}
.aj-site-cta p{color:var(--aj-muted)!important}
.aj-cta-photo img{border-color:#fff!important}
.aj-cta-link{background:var(--aj-primary)!important;color:#fff!important;box-shadow:none}
.aj-cta-link:hover{background:var(--aj-primary-dark)!important}
.aj-site-footer{border-top:0!important}

/* Rechtstexte: lesbare Dokumentgestaltung. */
.aj-legal-page .aj-page-body{width:min(980px,calc(100% - 40px));padding-block:clamp(3.5rem,6vw,5.5rem)}
.aj-legal-page .wp-block-post-content{padding:clamp(2rem,5vw,4rem);background:#fff;border:1px solid var(--aj-line);border-radius:20px;box-shadow:var(--aj-shadow-soft)}
.aj-legal-page .wp-block-post-content>h2:first-of-type{margin-top:0}
.aj-legal-page .wp-block-post-content h2{font-size:clamp(1.45rem,2.4vw,2rem)!important;margin-top:2.8rem;padding-top:.4rem;color:var(--aj-primary-dark)!important}
.aj-legal-page .wp-block-post-content h3{font-size:1.2rem!important;margin-top:2rem;color:var(--aj-primary-dark)!important}
.aj-legal-page .wp-block-post-content p,.aj-legal-page .wp-block-post-content li{line-height:1.75;color:#48575F}
.aj-legal-page .wp-block-post-content ul{padding-left:1.2rem}
.aj-legal-page .wp-block-post-content a{text-decoration:underline;text-decoration-thickness:1px}

/* Footer: zentriert und visuell gleichgewichtet. */
.aj-site-footer>.wp-block-group{padding-block:3.1rem 1.8rem!important}
.aj-footer-columns{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem!important}
.aj-footer-column{width:100%;text-align:center!important}
.aj-footer-column p{max-width:300px;margin-inline:auto!important}

@media(max-width:1120px){
  .aj-offer-hero-inner{grid-template-columns:1fr!important}.aj-offer-title h1{white-space:normal!important}
  .aj-home-about,.aj-about-editorial{grid-template-columns:minmax(0,1.1fr) 300px}
}
@media(max-width:800px){
  .aj-home-about,.aj-about-editorial,.aj-about-room-editorial{grid-template-columns:1fr!important}
  .aj-home-about>.aj-advisor-portrait,.aj-about-editorial>.aj-advisor-portrait{justify-self:start;width:min(100%,340px)}
  .aj-contact-intro-card{grid-template-columns:160px 1fr}
  .aj-contact-options{grid-template-columns:1fr}
  .aj-footer-columns{grid-template-columns:1fr!important}
}
@media(max-width:600px){
  .aj-page-hero{min-height:230px!important}.aj-page-hero-inner{width:calc(100% - 28px)!important}
  .aj-page-hero h1{font-size:clamp(2rem,10vw,2.8rem)!important}
  .aj-contact-intro-card{grid-template-columns:1fr}.aj-contact-portrait{width:min(220px,100%)}
  .aj-contact-qr-panel{align-items:flex-start;flex-direction:column}.aj-contact-qr-image{flex-basis:auto}
  .aj-site-cta-inner{width:calc(100% - 28px);align-items:flex-start!important;flex-direction:column}.aj-cta-link{width:100%;text-align:center}
  .aj-offer-title h1{font-size:clamp(2.15rem,10vw,2.9rem)!important}
}
