/*
Theme Name: ImPulsPraxis Kadence Child
Description: Projektspezifisches Kadence Child Theme für die ImPulsPraxis von Manuela Welz.
Author: Frank Eberhardt
Template: kadence
Version: 1.0.1
Text Domain: impulspraxis-kadence-child
*/

:root {
  --impuls-ink: #25372f;
  --impuls-sage: #718676;
  --impuls-cream: #f5f0e7;
  --impuls-paper: #fffdf8;
  --impuls-clay: #bd765d;
}

body { background: var(--impuls-paper); color: var(--impuls-ink); overflow-x: hidden; }
.page-id-9 #masthead { background: rgba(255,253,248,.96); border-bottom: 1px solid rgba(37,55,47,.12); }
.page-id-9 #masthead .site-main-header-wrap { min-height: 88px; }
.page-id-9 #masthead .site-container { max-width: 1280px; padding-left: clamp(1.25rem,4vw,4rem); padding-right: clamp(1.25rem,4vw,4rem); }
.page-id-9 #masthead .site-title { color: var(--impuls-ink); display: block !important; font-size: 0; line-height: 1.05; white-space: nowrap; }
.page-id-9 #masthead .site-title::before { content: "ImPulsPraxis"; display: block; font: 400 clamp(1.35rem,2vw,1.8rem)/1 Georgia,"Times New Roman",serif; letter-spacing: -.02em; }
.page-id-9 #masthead .site-title::after { color: var(--impuls-clay); content: "Manuela Welz · Heilpraktikerin"; display: block; font: 700 .58rem/1.2 Arial,sans-serif; letter-spacing: .13em; margin-top: .38rem; text-transform: uppercase; }
.page-id-9 #masthead .main-navigation,
.page-id-9 #masthead .site-header-item-navgation-popup-toggle { display: none; }
.page-id-9 .site-footer { background: var(--impuls-ink); color: #dfe5e1; }
.page-id-9 .site-footer a { color: #fff; }
.impuls-page { margin: 0; max-width: none !important; }
.impuls-page .wp-block-group__inner-container { max-width: none; }
.impuls-page a { text-underline-offset: 4px; }
.impuls-page h1, .impuls-page h2, .impuls-page h3, .impuls-serif { font-family: Georgia, "Times New Roman", serif; font-weight: 400; }
.impuls-page h1 { font-size: clamp(3.4rem, 5.8vw, 5.8rem); hyphens: auto; line-height: .95; letter-spacing: -.045em; margin: 0; overflow-wrap: break-word; }
.impuls-page h2 { font-size: clamp(2.6rem, 4.6vw, 4.5rem); line-height: 1.04; letter-spacing: -.035em; margin: 0; }
.impuls-page h3 { font-size: 1.7rem; }
.impuls-page em { color: var(--impuls-clay); font-weight: 400; }
.impuls-eyebrow { color: var(--impuls-clay); font-size: .7rem; font-weight: 700; letter-spacing: .19em; margin: 0 0 1.6rem; text-transform: uppercase; }
.impuls-lead { color: #536159; font-family: Georgia, serif; font-size: 1.25rem; line-height: 1.65; max-width: 39rem; }
.impuls-button .wp-block-button__link { background: var(--impuls-ink); border-radius: 2px; color: #fff; font-size: .82rem; padding: 1.1rem 1.5rem; }
.impuls-button-clay .wp-block-button__link { background: var(--impuls-clay); }
.impuls-hero { background: var(--impuls-paper); min-height: 760px; }
.impuls-hero > .wp-block-group__inner-container, .impuls-hero.wp-block-group { min-height: inherit; }
.impuls-hero-grid { align-items: stretch !important; gap: 0 !important; min-height: inherit; width: 100%; }
.impuls-hero-grid > .wp-block-column { min-width: 0; }
.impuls-hero-copy { display: flex; flex-direction: column; justify-content: center; padding: 7rem 6vw 5rem; }
.impuls-hero-art { align-items: flex-end; background: linear-gradient(155deg,#dbe1d8,#9bad9e); display: flex; justify-content: center; min-height: 650px; overflow: hidden; padding: 5rem 3rem; position: relative; }
.impuls-hero-art::before { background: #ead6b9; border-radius: 50%; content: ""; height: 230px; opacity: .65; position: absolute; right: -65px; top: 9%; width: 230px; }
.impuls-hero-art::after { background: radial-gradient(circle at 50% 22%,#f7ead1 0 12%,transparent 13%),linear-gradient(170deg,rgba(255,255,255,.23),rgba(37,55,47,.12)); border-radius: 50% 50% 10px 10px; box-shadow: 0 30px 80px rgba(37,55,47,.15); content: ""; inset: 8% 8% 25%; position: absolute; }
.impuls-hero-quote { color: #fff; font-family: Georgia, serif; font-size: 1.25rem; font-style: italic; line-height: 1.6; position: relative; text-align: center; z-index: 2; }
.impuls-trust { color: #6f7b73; font-size: .68rem; letter-spacing: .08em; margin-top: 4rem; text-transform: uppercase; }
.impuls-trust strong { color: var(--impuls-clay); font: 1.15rem Georgia, serif; margin-right: .5rem; }
.impuls-intro { background: var(--impuls-cream); padding: 8rem 8vw 4.5rem; }
.impuls-intro-copy { color: #5d695f; font: 1.18rem/1.75 Georgia, serif; }
.impuls-therapies { background: var(--impuls-cream); gap: 0 !important; padding: 0 8vw 8rem; }
.impuls-therapy { border: 1px solid #bbc2b9; margin-left: -1px; min-height: 390px; padding: 2.7rem 3vw; position: relative; }
.impuls-number { color: var(--impuls-clay); font-family: Georgia, serif; }
.impuls-star { color: var(--impuls-sage); font-size: 2rem; margin: 2.6rem 0 1.3rem; }
.impuls-therapy p { color: #647068; font-size: .9rem; line-height: 1.75; }
.impuls-about { align-items: stretch !important; min-height: 740px; }
.impuls-portrait { align-items: center; background: linear-gradient(155deg,#9ead9d,#586d60); display: flex; justify-content: center; min-height: 600px; overflow: hidden; position: relative; }
.impuls-monogram { align-items: center; background: #f0dfc7; border-radius: 50%; box-shadow: 0 30px 80px rgba(20,40,29,.22); display: flex; font: 3rem Georgia, serif; height: 200px; justify-content: center; position: relative; width: 200px; z-index: 1; }
.impuls-about-copy { background: var(--impuls-paper); padding: 7rem 8vw; }
.impuls-about-copy > p:not(.impuls-eyebrow) { color: #5d695f; font: 1.1rem/1.8 Georgia, serif; }
.impuls-quote { border-left: 1px solid var(--impuls-clay); color: var(--impuls-clay); font: italic 1.5rem Georgia, serif; margin: 2rem 0; padding-left: 1.5rem; }
.impuls-process { background: var(--impuls-ink); color: #fff; padding: 7.5rem 8vw; }
.impuls-process .impuls-eyebrow { color: #d7967e; }
.impuls-steps { margin-top: 4.5rem; }
.impuls-step { border-top: 1px solid #708078; padding-top: 1.5rem; }
.impuls-step strong { align-items: center; background: #d7967e; border-radius: 50%; display: flex; font-family: Georgia, serif; height: 32px; justify-content: center; width: 32px; }
.impuls-step p { color: #c7d0ca; font-size: .9rem; line-height: 1.7; }
.impuls-practice { background: #e3e7df; padding: 7.5rem 8vw; }
.impuls-practice-copy { color: #5d695f; font: 1.1rem/1.7 Georgia, serif; }
.impuls-address { background: var(--impuls-paper); box-shadow: 0 25px 70px rgba(45,65,55,.1); padding: 3rem; }
.impuls-address-label { color: var(--impuls-clay); font-size: .65rem; letter-spacing: .2em; text-transform: uppercase; }
.impuls-phone { border-top: 1px solid #c9cec9; display: block; font: 1.4rem Georgia, serif; margin-top: 2rem; padding-top: 1.2rem; text-decoration: none; }
.impuls-contact { background: var(--impuls-paper); padding: 8rem 8vw; text-align: center; }
.impuls-contact > * { margin-left: auto; margin-right: auto; max-width: 900px; }
.impuls-note { color: #68736c; font-size: .78rem; line-height: 1.6; margin-top: 2rem; }

@media (max-width: 900px) {
  .page-id-9 #masthead .site-main-header-wrap { min-height: 76px; }
  .impuls-hero-grid, .impuls-intro-grid, .impuls-about, .impuls-practice-grid { flex-wrap: wrap !important; }
  .impuls-hero-grid > .wp-block-column, .impuls-intro-grid > .wp-block-column, .impuls-about > .wp-block-column, .impuls-practice-grid > .wp-block-column { flex-basis: 100% !important; }
  .impuls-therapies, .impuls-steps { flex-wrap: wrap !important; }
  .impuls-therapies > .wp-block-column, .impuls-steps > .wp-block-column { flex-basis: 100% !important; }
  .impuls-therapy { min-height: 330px; }
}

@media (max-width: 600px) {
  .page-id-9 #masthead .site-title::before { font-size: 1.3rem; }
  .page-id-9 #masthead .site-title::after { font-size: .5rem; letter-spacing: .09em; }
  .impuls-page h1 { font-size: clamp(2.75rem,14vw,3.25rem); }
  .impuls-hero { min-height: 0; }
  .impuls-hero-copy, .impuls-intro, .impuls-about-copy, .impuls-process, .impuls-practice, .impuls-contact { padding: 4.5rem 6vw; }
  .impuls-therapies { padding: 0 6vw 5rem; }
  .impuls-hero-art { min-height: 470px; }
  .impuls-monogram { height: 155px; width: 155px; }
}
