/*
Theme Name: Grüne Seele – Studio Editor
Theme URI: https://gruene-seele.eu/
Author: Grüne Seele
Description: Minimalistisches, vollständig im WordPress-Site-Editor bearbeitbares Block-Theme mit leicht transparentem Header, Kursnavigation und kompaktem Footer. Ohne externe Fonts.
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: gruene-seele-editor
Tags: full-site-editing, block-patterns, custom-colors, custom-logo, wide-blocks
*/
:root{--gs-green:#284b3b;--gs-cream:#f7f8f3;--gs-line:#e5e9e2;--gs-muted:#667168}
html{scroll-behavior:smooth}
body{margin:0;background:var(--gs-cream);color:#26332b;-webkit-font-smoothing:antialiased}
body .wp-site-blocks{min-height:100svh;display:flex;flex-direction:column}
.gs-content{flex:1 0 auto;width:100%;min-height:200px}
.gs-content>.wp-block-post-content{margin-block:0}
.gs-content .wp-block-post-content>:first-child{margin-top:0}
.gs-content .wp-block-post-content>:last-child{margin-bottom:0}
.gs-header{position:relative;z-index:100;background:rgba(247,248,243,.86);border-bottom:1px solid var(--gs-line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}
.gs-header-inner{min-height:92px;padding-inline:clamp(20px,4vw,52px);box-sizing:border-box}
.gs-brand{gap:12px}
.gs-brand .wp-block-image{margin:0;flex-shrink:0}
.gs-brand .wp-block-image img{width:46px;height:46px;object-fit:contain;border-radius:50%}
.gs-brand-name{font-family:Georgia,'Times New Roman',serif;font-size:26px;font-weight:600;letter-spacing:-.04em;line-height:1.1;margin:0;color:var(--gs-green)}
.gs-brand-tagline{font-size:10px;letter-spacing:.16em;text-transform:uppercase;margin:5px 0 0;color:var(--gs-muted);line-height:1.2}
.gs-header .wp-block-navigation{font-size:14px;font-weight:500;gap:clamp(16px,2vw,32px);color:#465349}
.gs-header .wp-block-navigation a:hover{color:var(--gs-green)}
.gs-header .wp-block-navigation__submenu-container{background:#fff!important;border:1px solid var(--gs-line)!important;border-radius:12px;padding:10px!important;min-width:220px!important;box-shadow:0 14px 34px #22372a17}
.gs-header .wp-block-navigation__submenu-container a{padding:9px 12px!important;border-radius:7px}
.gs-header .wp-block-navigation__submenu-container a:hover{background:#eef2eb}
.gs-header .wp-block-navigation__responsive-container.is-menu-open{background:#f7f8f3!important;color:var(--gs-green)!important;padding:30px!important}
.gs-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{padding-top:35px;gap:18px}
.gs-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container{padding:8px 0 0 14px!important;box-shadow:none;border:0!important;background:transparent!important;min-width:0!important}
.gs-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{font-size:18px}
.gs-header .gs-book-button .wp-block-button__link{border-radius:999px;background:var(--gs-green);color:white;padding:13px 21px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}
.gs-header .gs-book-button .wp-block-button__link:hover{background:#1e3b2e;transform:translateY(-1px)}
.gs-footer{border-top:1px solid var(--gs-line);background:#eef2eb;color:#4f6254}
.gs-footer-inner{min-height:117px;padding:24px clamp(20px,4vw,52px);box-sizing:border-box}
.gs-footer-brand{gap:10px}
.gs-footer-brand img{width:36px;height:36px;object-fit:contain;border-radius:50%}
.gs-footer-brand .wp-block-image{margin:0}
.gs-footer-title{font-family:Georgia,'Times New Roman',serif;color:var(--gs-green);font-size:22px;line-height:1.15;font-weight:600;margin:0}
.gs-footer-subtitle{font-size:11px;letter-spacing:.04em;color:#748075;margin:3px 0 0}
.gs-footer-links{font-size:12px;gap:clamp(13px,2vw,27px)!important}
.gs-footer-links a:hover{text-decoration:underline;text-underline-offset:4px}
.gs-footer-copy{margin:0;font-size:11px;color:#7b897b}
.gs-footer .wp-block-navigation{font-size:12px}
.gs-footer .wp-block-navigation__responsive-container-open{display:none!important}
.gs-footer .wp-block-navigation__responsive-container{display:block!important;position:static!important;width:auto!important;height:auto!important;padding:0!important;background:transparent!important;color:inherit!important}
.gs-footer .wp-block-navigation__responsive-container-content{display:flex!important;flex-direction:row!important;align-items:center!important;padding:0!important;gap:20px!important}
.gs-footer .wp-block-navigation__container{display:flex!important;flex-wrap:wrap!important;flex-direction:row!important;gap:18px!important}
.gs-footer .wp-block-navigation__responsive-container-close{display:none!important}
a:focus-visible,button:focus-visible{outline:3px solid #91ad83;outline-offset:3px}
@media(max-width:900px){.gs-header-inner{min-height:78px}.gs-brand-name{font-size:24px}.gs-brand .wp-block-image img{width:40px;height:40px}.gs-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex}}
@media(max-width:680px){.gs-header-inner{padding-inline:18px;min-height:76px;gap:12px!important}.gs-brand-tagline{font-size:9px;letter-spacing:.09em}.gs-header .gs-book-button{display:none}.gs-footer-inner{padding:27px 22px;gap:19px!important;align-items:flex-start!important;flex-direction:column}.gs-footer-links{justify-content:flex-start!important}.gs-footer .wp-block-navigation__container{gap:14px!important}.gs-footer-copy{font-size:10px}.gs-content{min-height:140px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* v1.1 layout safeguards: keep footer at the viewport bottom on blank pages. */
html,body{min-height:100%;}
body{min-height:100vh;min-height:100svh;}
body .wp-site-blocks{min-height:100vh;min-height:100svh;display:flex;flex-direction:column;}
body .wp-site-blocks>.wp-block-template-part:first-child{flex:0 0 auto;}
body .wp-site-blocks>.wp-block-template-part:last-child{flex:0 0 auto;margin-block-start:auto;}
body .wp-site-blocks>.gs-content{flex:1 0 auto;min-height:calc(100svh - 220px);margin-block:0;}
body .wp-site-blocks>.gs-content:has(.wp-block-post-content:empty){min-height:calc(100svh - 220px);}
.gs-header,.gs-footer{width:100%;}
.gs-header .gs-header-inner,.gs-footer .gs-footer-inner{max-width:1360px;margin-inline:auto;}
.gs-header .gs-brand{display:flex;align-items:center;flex-shrink:0;}
.gs-header .gs-header-inner{display:flex;align-items:center;justify-content:space-between;gap:clamp(14px,2vw,30px);}
.gs-header .wp-block-navigation{margin-left:auto;}
.gs-brand .wp-block-group,.gs-footer-brand .wp-block-group{margin-block:0;}
.gs-header .wp-block-buttons{flex-shrink:0;}
.gs-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:26px;}
.gs-footer-copy{white-space:nowrap;}
@media(max-width:900px){
  .gs-header .wp-block-navigation{margin-left:auto;}
}
@media(max-width:680px){
  body .wp-site-blocks>.gs-content{min-height:calc(100svh - 260px);}
  .gs-header .gs-brand{min-width:0;}
  .gs-footer-inner{flex-direction:column;align-items:flex-start;}
}


/* v1.3 — compact icon + name + tagline lockup, hero flush against header */
.gs-header .gs-header-inner{min-height:76px;padding-block:9px;gap:clamp(12px,2vw,28px)!important}
.gs-header .gs-brand{display:flex;align-items:center;gap:11px!important;min-width:0;flex-shrink:0}
.gs-header .gs-brand-logo{margin:0!important;line-height:0;flex-shrink:0}
.gs-header .gs-brand-logo img{display:block;width:52px!important;height:52px!important;max-width:none;object-fit:contain;border-radius:50%!important}
.gs-header .gs-brand-lockup{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:0!important;margin:0!important}
.gs-header .gs-brand-name{font-family:Georgia,'Times New Roman',serif;font-size:25px;line-height:1.14;font-weight:500;letter-spacing:-.045em;margin:0!important;color:var(--gs-green)}
.gs-header .gs-brand-name a{color:inherit;text-decoration:none}
.gs-header .gs-brand-tagline{margin:4px 0 0!important;color:#667168;font-size:9px;letter-spacing:.13em;line-height:1.25;text-align:left;text-transform:uppercase;white-space:nowrap}
/* Remove global WordPress block gaps between header, main content, footer. */
body .wp-site-blocks{gap:0!important;row-gap:0!important}
body .wp-site-blocks > *{margin-block-start:0!important;margin-block-end:0!important}
body .wp-site-blocks > .gs-content{padding-block:0!important;margin-block:0!important}
body .gs-content > .wp-block-post-content{padding-block:0!important;margin-block:0!important}
body .gs-content > .wp-block-post-content > :first-child{margin-block-start:0!important}
body .gs-content > .wp-block-post-content > :last-child{margin-block-end:0!important}
body.home .gs-content,body.front-page .gs-content{padding-top:0!important}
@media(max-width:900px){
  .gs-header .gs-header-inner{min-height:72px;padding-block:8px}
  .gs-header .gs-brand-logo img{width:46px!important;height:46px!important}
  .gs-header .gs-brand-name{font-size:23px}
}
@media(max-width:680px){
  .gs-header .gs-header-inner{min-height:66px;padding-block:7px}
  .gs-header .gs-brand{gap:8px!important}
  .gs-header .gs-brand-logo img{width:40px!important;height:40px!important}
  .gs-header .gs-brand-name{font-size:21px}
  .gs-header .gs-brand-tagline{font-size:8px;letter-spacing:.08em;margin-top:2px!important}
}
