/* enveranda — WordPress additions (same tokens as the design) */
a{color:inherit;text-decoration:none}
.admin-bar .nav{top:32px}
@media (max-width:782px){.admin-bar .nav{top:46px}}
.lang-switch{display:flex;gap:10px;font-family:var(--serif-display);font-weight:600;font-size:11px;letter-spacing:.18em}
.lang-switch a{opacity:.55;transition:opacity .3s}
.lang-switch a:hover,.lang-switch a.is-current{opacity:1}
.event-img::after{content:attr(data-caption)}
.event-img.has-photo{background:var(--event-photo) center/cover no-repeat}
.event-img.has-photo::before{opacity:.35}
.mini-card a.mini-img{display:block}
.mini-card .mini-img.has-photo{background:var(--mini-photo) center/cover no-repeat}
.mini-card h4 a,.event-body h3 a,.event-body h1 a{color:inherit}
.event-body h1{font-family:var(--serif-display);font-weight:700;font-size:clamp(28px,3vw,38px);line-height:1.1;letter-spacing:-.02em;color:var(--ink);margin-bottom:22px;max-width:16ch}
.mini-card span.mini-cta{cursor:default}
.events-empty{padding:48px;background:var(--cream);border:1px solid rgba(27,42,26,.1);color:var(--ink-soft);font-size:15px;line-height:1.7}
.events[data-filter="past"] .events-empty{display:none}
.sec-label a{color:inherit;transition:color .3s}
.sec-label a:hover{color:var(--avocado-100)}
/* Journal */
.journal{background:var(--cream);border-top:1px solid rgba(27,42,26,.07)}
.journal .head{margin-bottom:48px;max-width:720px}
.journal h1,.journal h2{font-size:clamp(36px,4.4vw,60px);color:var(--ink);margin-bottom:18px;max-width:18ch}
.journal .head p{font-size:16px;color:var(--ink-soft);line-height:1.7;max-width:50ch}
.journal-head{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap}
.journal-head .head{margin-bottom:48px}
.journal-all{margin-bottom:56px;font-family:var(--serif-display);font-weight:600;font-size:14px;color:var(--ink-soft);display:inline-flex;gap:8px;border-bottom:1px solid rgba(46,64,54,.2);padding-bottom:4px;transition:color .25s,border-color .25s}
.journal-all:hover{color:var(--avocado-100);border-bottom-color:var(--avocado-200)}
.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
@media (max-width:1000px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.post-grid{grid-template-columns:1fr}}
.env-pagination{display:flex;gap:8px;margin-top:48px;flex-wrap:wrap}
.env-pagination .page-numbers{min-width:46px;height:46px;padding:0 14px;border-radius:999px;border:1px solid rgba(27,42,26,.18);display:inline-flex;align-items:center;justify-content:center;font-family:var(--serif-display);font-weight:600;font-size:12px;color:var(--ink-soft);transition:background .3s,color .3s}
.env-pagination .page-numbers:hover,.env-pagination .current{background:var(--ink);color:var(--paper);border-color:var(--ink)}
/* Sub pages */
.sub-first{padding-top:calc(180px * var(--rh-section))!important}
.entry-head{padding-bottom:56px}
.entry-head .h-display{font-size:clamp(40px,5.4vw,76px);color:var(--ink);max-width:20ch;text-wrap:balance}
.entry-narrow{max-width:820px}
.entry-lead{margin-top:28px;font-size:18px;line-height:1.7;color:var(--ink-soft);max-width:56ch;text-wrap:pretty}
.entry-cover{margin:0 auto 72px}
.entry-cover img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.entry-foot{padding:24px 32px 120px}
.entry-last{padding-bottom:140px}
.prose{font-size:17px;line-height:1.8;color:var(--ink-soft)}
.prose>*+*{margin-top:1.2em}
.prose h2,.prose h3,.prose h4{font-family:var(--serif-display);color:var(--ink);letter-spacing:-.02em;line-height:1.15;margin-top:2em}
.prose h2{font-size:clamp(26px,2.6vw,34px);font-weight:700}
.prose h3{font-size:22px;font-weight:700}
.prose h4{font-size:15px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--pine)}
.prose a{color:var(--avocado-200);text-decoration:underline;text-underline-offset:3px}
.prose a:hover{color:var(--avocado-100)}
.prose strong{color:var(--ink);font-weight:600}
.prose ul,.prose ol{padding-left:1.3em}
.prose li+li{margin-top:.4em}
.prose blockquote{border-top:1px solid rgba(27,42,26,.15);border-bottom:1px solid rgba(27,42,26,.15);padding:28px 0;font-family:var(--serif-display);font-size:clamp(22px,2.4vw,30px);font-weight:600;line-height:1.3;letter-spacing:-.01em;color:var(--ink)}
.prose img,.prose figure{max-width:100%;height:auto}
.prose figcaption{font-family:var(--serif-display);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pine);margin-top:10px}
.prose .alignwide{max-width:1100px;margin-left:50%;transform:translateX(-50%);width:calc(100vw - 64px)}
.prose .alignfull{width:100vw;margin-left:50%;transform:translateX(-50%);max-width:none}
.prose hr{border:0;height:1px;background:rgba(27,42,26,.15);margin:3em 0}
.events.entry-head{background:var(--paper)}
.events.entry-head+.prose{padding-top:24px}
/* Smash Balloon feed → matches design grid */
.ig-grid--live{display:block}
.ig-grid--live #sb_instagram{padding:0!important}
.ig-grid--live #sb_instagram #sbi_images{display:grid!important;grid-template-columns:repeat(3,1fr);gap:12px;padding:0!important}
.ig-grid--live #sb_instagram .sbi_item{width:100%!important;padding:0!important;aspect-ratio:1;overflow:hidden}
.ig-grid--live #sb_instagram .sbi_photo{height:100%!important;transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.ig-grid--live #sb_instagram .sbi_item:hover .sbi_photo{transform:scale(1.05)}
@media (max-width:860px){.ig-grid--live #sb_instagram #sbi_images{grid-template-columns:repeat(3,1fr)}}
/* Kontaktformular */
.contact{max-width:680px}
.contact-form{display:grid;gap:22px}
.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media (max-width:640px){.contact-row{grid-template-columns:1fr}}
.contact-field{display:grid;gap:8px}
.contact-field>span{font-family:var(--serif-display);font-weight:600;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--pine)}
.contact-field>span em{font-style:normal;text-transform:none;letter-spacing:.02em;opacity:.7}
.contact-field input,.contact-field textarea{width:100%;font:inherit;font-family:var(--sans-text);font-size:16px;color:var(--ink);background:var(--cream);border:1px solid rgba(27,42,26,.16);border-radius:12px;padding:16px 18px;transition:border-color .25s,background .25s,box-shadow .25s}
.contact-field textarea{resize:vertical;min-height:170px;line-height:1.6}
.contact-field input:focus,.contact-field textarea:focus{outline:none;background:#fff;border-color:var(--avocado-200);box-shadow:0 0 0 3px rgba(110,155,71,.22)}
.contact-consent{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;color:var(--ink-soft)}
.contact-consent input{margin-top:4px;width:18px;height:18px;accent-color:var(--avocado-200);flex:none}
.contact-consent a{text-decoration:underline;text-underline-offset:3px}
.contact-submit{justify-self:start;cursor:pointer;border:0;border-radius:999px;padding:18px 34px;font-family:var(--serif-display);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;background:var(--ink);color:var(--paper);transition:background .3s,transform .3s}
.contact-submit:hover{background:var(--avocado-100);transform:translateY(-2px)}
.contact-note{padding:20px 24px;border-radius:12px;margin-bottom:28px;font-size:16px;line-height:1.6}
.contact-note.is-ok{background:var(--avocado-700);color:var(--avocado-100)}
.contact-note.is-err{background:#FBE6E3;color:#7A2825}
.contact-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
/* Feed built in the Smash Balloon feed builder: hide header and buttons, show 6 tiles */
.ig-grid--live .sbi_header,.ig-grid--live .sb_instagram_header,.ig-grid--live #sbi_load,.ig-grid--live .sbi_follow_btn{display:none!important}
.ig-grid--live #sb_instagram .sbi_item:nth-child(n+4){display:none!important}
/* Footer without newsletter block: three columns */
@media (min-width:901px){.footer-grid.no-newsletter{grid-template-columns:1.6fr 1fr 1fr}}

/* Lesbare Bildunterschrift auf Fotos: dunkler Verlauf am unteren Rand */
.event-img.has-photo::after{left:0;right:0;bottom:0;padding:56px 24px 20px;background:linear-gradient(to top,rgba(20,30,18,.72) 0%,rgba(20,30,18,.38) 55%,rgba(20,30,18,0) 100%);color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.55);font-weight:700}

/* Aktivitäten-Teaser in Beiträgen: zwei kompakte Karten nebeneinander (Handy: untereinander, Foto links) */
.post-teasers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:28px 0}
.prose .post-teasers a.teaser{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);border:1px solid rgba(27,42,26,.12);background:var(--paper);transition:transform .4s,box-shadow .4s}
.prose .post-teasers a.teaser:hover{transform:translateY(-3px);box-shadow:0 14px 28px -20px rgba(27,42,26,.45)}
.teaser-img{display:block;aspect-ratio:2/1;background:var(--teaser-bg,linear-gradient(140deg,var(--mustard) 0%,var(--terracotta) 100%))}
.teaser-img.has-photo{background:var(--teaser-photo) center/cover no-repeat}
.teaser-body{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;flex:1}
.teaser-meta{font-family:var(--serif-display);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--pine)}
.teaser-title{font-family:var(--serif-display);font-weight:700;font-size:16px;line-height:1.25;letter-spacing:-.01em}
.teaser-cta{font-family:var(--serif-display);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;margin-top:auto;padding-top:4px}
.prose .post-teasers a.teaser:hover .teaser-cta{color:var(--ketchup)}
@media (max-width:700px){
  .post-teasers{grid-template-columns:1fr;gap:14px}
  .prose .post-teasers a.teaser{flex-direction:row;align-items:stretch}
  .teaser-img{aspect-ratio:auto;flex:0 0 112px}
  .teaser-body{padding:12px 14px;gap:6px}
  .teaser-title{font-size:15px}
}

/* Fakten-Raster: auf kleinen Bildschirmen nichts mehr abschneiden */
.facts{grid-template-columns:repeat(2,minmax(0,1fr))}
.about .grid>*{min-width:0}
.fact .fact-num{overflow-wrap:anywhere}
@media (max-width:600px){
  .fact{padding:28px 20px 24px}
  .fact .fact-num{font-size:44px}
  .fact p{max-width:none}
}
@media (max-width:420px){
  .facts{grid-template-columns:minmax(0,1fr)}
}

/* Instagram-Block: @enveranda.ch auf kleinen Bildschirmen nicht abschneiden */
.ig-handle{max-width:100%;flex-wrap:wrap;justify-content:center}
@media (max-width:600px){
  .ig-handle{font-size:9.2vw;gap:12px}
}

/* 1.1.15: lange Titel (z. B. Datenschutzerklärung) dürfen am Handy umbrechen */
.entry-head .h-display{overflow-wrap:anywhere;hyphens:auto;-webkit-hyphens:auto}
@media (max-width:480px){.entry-head .h-display{font-size:clamp(30px,8.6vw,40px)}}

/* 1.1.22: Footer auf Tablet und Handy: Marke oben ueber die ganze Breite, Spalten darunter nebeneinander */
@media (max-width:900px){.footer-grid .footer-brand{grid-column:1/-1}}
@media (max-width:560px){.footer-grid{grid-template-columns:1fr 1fr;gap:36px 24px}.footer-grid .footer-col:nth-of-type(n){min-width:0}}
@media (max-width:380px){.footer-grid{grid-template-columns:1fr}}

/* 1.1.25: Unter 600px scrollt die WP-Adminleiste weg (position:absolute), das Menue bleibt dann ganz oben */
@media (max-width:600px){.admin-bar .nav{top:0}}
