.agape-events{--paper: #F6F0E4; --paper-2: #FBF8F1; --paper-3: #EFE6D5; --ink: #2D2E2B; --ink-soft: #55574F; --fir: #1F4A3D; --fir-deep: #17382E; --terra: #A64B2F; --gold: #C89B3C; --gold-soft: #E3C98A; --line: rgba(31,74,61,.2); --serif: "Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif; --sans: Manrope,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif; --pad: clamp(20px,5vw,48px);}

.agape-events .p-gruppe{background-image: var(--p-gruppe);}
.agape-events .p-kreisnah{background-image: var(--p-kreisnah);}
.agape-events .p-kreisweit{background-image: var(--p-kreisweit);}
.agape-events .p-schreiben{background-image: var(--p-schreiben);}
.agape-events .p-haende{background-image: var(--p-haende);}
.agape-events .p-haendegesichter{background-image: var(--p-haendegesichter);}
.agape-events .p-pavillon{background-image: var(--p-pavillon);}
.agape-events .p-zuzweit{background-image: var(--p-zuzweit);}
.agape-events .p-magdabanner{background-image: var(--p-magdabanner);}
.agape-events .p-magdasitzend{background-image: var(--p-magdasitzend);}
.agape-events *,.agape-events ::before,.agape-events ::after{box-sizing: border-box;}
.agape-events{text-size-adjust: 100%; scroll-behavior: smooth;}
.agape-events{margin: 0px; background: var(--paper); color: var(--ink); font-family: var(--sans); font-size: 17px; line-height: 1.65; overflow-wrap: break-word;}
body.agape-events-lb-open{overflow: hidden;}
.agape-events img{display: block; max-width: 100%; height: auto;}
.agape-events h1,.agape-events h2,.agape-events h3,.agape-events p,.agape-events ul,.agape-events figure{margin: 0px;}
.agape-events ul{padding: 0px; list-style: none;}
.agape-events a{color: var(--terra);}
.agape-events :focus-visible{outline: 3px solid var(--gold); outline-offset: 3px;}
@media (prefers-reduced-motion: reduce) {.agape-events{scroll-behavior: auto;}
.agape-events *{transition: none !important;}}
.agape-events .wrap{max-width: 1120px; margin-inline: auto; padding-inline: var(--pad);}
.agape-events .ph{display: block; background-size: cover; background-position: center center; background-repeat: no-repeat; background-color: var(--paper-3);}
.agape-events .kicker{font-size: 0.78rem; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase; color: var(--terra);}
.agape-events h1,.agape-events h2,.agape-events h3{font-family: var(--serif); color: var(--fir); font-weight: 600; line-height: 1.12; letter-spacing: -0.005em;}
.agape-events h2{font-size: clamp(1.9rem, 4vw, 2.9rem);}
.agape-events .gold-line{display: block; width: 100%; height: 26px; color: var(--gold);}
.agape-events .gold-line path{fill: none; stroke: currentcolor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; vector-effect: non-scaling-stroke;}
.agape-events .notice{background: var(--fir-deep); color: var(--paper); text-align: center; font-size: 0.76rem; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; padding: 9px var(--pad);}
.agape-events .hero{display: grid; grid-template-columns: 1fr;}
.agape-events .hero-photo{aspect-ratio: 4 / 3; background-position: 55% 100%;}
.agape-events .hero-text{padding: 34px var(--pad) 48px;}
.agape-events .hero h1{font-size: clamp(2.35rem, 9.4vw, 4.3rem); margin-top: 16px;}
.agape-events .hero h1 span{display: block;}
.agape-events .hero h1 span + span{font-style: italic; color: var(--terra);}
.agape-events .hero-lead{margin-top: 22px; font-size: 1.08rem; max-width: 34em; color: var(--ink);}
.agape-events .actions{display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px;}
.agape-events .btn{display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 24px; border-radius: 999px; font-weight: 700; font-size: 0.98rem; text-decoration: none; border: 2px solid var(--terra); transition: background 0.2s, color 0.2s;}
.agape-events .btn-full{background: var(--terra); color: rgb(255, 255, 255);}
.agape-events .btn-full:hover{background: rgb(142, 62, 38); border-color: rgb(142, 62, 38);}
.agape-events .btn-line{color: var(--terra); background: transparent;}
.agape-events .btn-line:hover{background: var(--terra); color: rgb(255, 255, 255);}
@media (min-width: 900px) {.agape-events .hero{grid-template-columns: minmax(0px, 1fr) minmax(0px, 1fr); align-items: stretch; min-height: 560px;}
.agape-events .hero-text{order: 1; align-self: center; padding: 52px 48px 60px max(var(--pad),calc((100vw - 1120px)/2 + var(--pad)));}
.agape-events .hero h1{font-size: clamp(2.6rem, 4vw, 3.25rem);}
.agape-events .hero-photo{order: 2; aspect-ratio: auto; min-height: 560px; border-bottom-left-radius: 150px;}}
.agape-events .gatherings{padding: clamp(56px, 8vw, 96px) 0px clamp(60px, 8vw, 104px);}
.agape-events .sec-head{max-width: 44em;}
.agape-events .sec-head p{margin-top: 16px; color: var(--ink-soft);}
.agape-events .cards{display: grid; grid-template-columns: 1fr; gap: 22px; margin-top: 38px;}
.agape-events .card{display: flex; flex-direction: column; min-width: 0px; background: var(--paper-2); border: 1px solid var(--line); border-radius: 18px; overflow: hidden;}
.agape-events .card-img{aspect-ratio: 3 / 2; overflow: hidden; background: var(--paper-3);}
.agape-events .card-img img{width: 100%; height: 100%; object-fit: cover;}
.agape-events .card-img .ph{width: 100%; height: 100%; background-position: 50% 88%;}
.agape-events .card-body{display: flex; flex-direction: column; align-items: flex-start; gap: 8px; padding: 22px 22px 24px; flex: 1 1 0%; min-width: 0px;}
.agape-events .series{font-family: var(--serif); font-style: italic; color: var(--terra); font-size: 1.02rem;}
.agape-events .card h3{font-size: 1.42rem;}
.agape-events .date{font-weight: 700; color: var(--fir); font-size: 1rem; margin-top: 4px;}
.agape-events .where{font-size: 0.93rem; color: var(--ink-soft); margin-top: -4px;}
.agape-events .chip{display: inline-block; font-size: 0.76rem; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; padding: 6px 12px; border-radius: 999px; margin-top: 4px; line-height: 1.35;}
.agape-events .chip-start{background: var(--fir); color: var(--paper);}
.agape-events .chip-open{background: transparent; color: rgb(110, 82, 16); border: 1.5px solid var(--gold);}
.agape-events .chip-past{background: var(--paper-3); color: var(--ink); border: 1.5px solid rgba(45, 46, 43, 0.28);}
.agape-events .sum{font-size: 0.97rem; margin-top: 6px;}
.agape-events .empty{font-size: 0.9rem; color: var(--ink-soft); border: 1.5px dashed rgba(166, 75, 47, 0.55); border-radius: 12px; padding: 10px 14px; background: repeating-linear-gradient(135deg, transparent 0px, transparent 10px, rgba(166, 75, 47, 0.043) 10px, rgba(166, 75, 47, 0.043) 20px);}
.agape-events .more{margin-top: auto; padding-top: 10px; font-weight: 700; font-size: 0.96rem; text-decoration: none; color: var(--terra); display: inline-flex; align-items: center; min-height: 44px;}
.agape-events .more::after{content: "→"; margin-left: 8px; transition: transform 0.2s;}
.agape-events .more:hover{text-decoration: underline;}
.agape-events .more:hover::after{transform: translateX(4px);}
@media (min-width: 700px) {.agape-events .cards{grid-template-columns: repeat(2, minmax(0px, 1fr));}}
@media (min-width: 1000px) {.agape-events .cards{grid-template-columns: repeat(6, minmax(0px, 1fr));}
.agape-events .card{grid-column: span 2;}
.agape-events .card-wide{grid-column: span 3;}
.agape-events .card-wide .card-img{aspect-ratio: 16 / 9;}}
.agape-events .lookback{background: var(--paper-2); border-top: 1px solid var(--line); scroll-margin-top: 0px;}
.agape-events .story{display: grid; grid-template-columns: 1fr; gap: 28px; padding-top: clamp(52px, 7vw, 92px);}
.agape-events .story-photo{aspect-ratio: 5 / 3; border-radius: 18px; background-position: 50% 60%;}
.agape-events .story h2{font-size: clamp(2.3rem, 5.4vw, 3.6rem); margin-top: 12px;}
.agape-events .sub{margin-top: 12px; font-weight: 700; color: var(--fir); letter-spacing: 0.02em;}
.agape-events .story-text p.body{margin-top: 18px; font-size: 1.06rem;}
@media (min-width: 900px) {.agape-events .story{grid-template-columns: minmax(0px, 7fr) minmax(0px, 5fr); gap: 56px; align-items: center;}}
.agape-events .pictures{padding-top: clamp(56px, 7vw, 92px);}
.agape-events .gallery{display: grid; grid-template-columns: repeat(2, minmax(0px, 1fr)); gap: 14px; margin-top: 30px;}
.agape-events .tile{min-width: 0px;}
.agape-events .tile button{display: block; width: 100%; padding: 0px; border: 0px; background: none; cursor: zoom-in; border-radius: 14px; overflow: hidden; font: inherit; color: inherit;}
.agape-events .tile .ph{width: 100%; aspect-ratio: 4 / 3; transition: transform 0.5s;}
.agape-events .tile button:hover .ph{transform: scale(1.03);}
.agape-events .tile figcaption{margin-top: 9px; font-family: var(--serif); font-style: italic; font-size: 1.02rem; color: var(--fir); line-height: 1.3;}
.agape-events .t-wide{grid-column: 1 / -1;}
.agape-events .t-wide .ph{background-position: 50% 92%;}
.agape-events .t-table .ph{aspect-ratio: 2 / 1;}
.agape-events .t-port .ph{aspect-ratio: 3 / 4;}
.agape-events .t-last{grid-column: 1 / -1;}
.agape-events .t-last .ph{aspect-ratio: 4 / 5; background-position: 50% 30%;}
.agape-events .hint{margin-top: 22px; font-size: 0.9rem; color: var(--ink-soft);}
@media (max-width: 699px) {.agape-events .t-land{grid-column: 1 / -1;}}
@media (min-width: 700px) {.agape-events .gallery{grid-template-columns: repeat(6, minmax(0px, 1fr)); gap: 18px;}
.agape-events .t-wide{grid-column: 1 / -1;}
.agape-events .t-wide .ph{aspect-ratio: 2 / 1;}
.agape-events .t-land,.agape-events .t-port,.agape-events .t-last{grid-column: span 2;}
.agape-events .t-table{margin-inline: -14.2857%;}
.agape-events .gallery .tile:nth-child(2){margin-right: 14.2857%;}
.agape-events .t-table + .tile{margin-left: 14.2857%;}
.agape-events .t-last .ph{aspect-ratio: 3 / 4; background-position: 42% 40%;}}
.agape-events .kintsugi{margin-top: clamp(60px, 8vw, 100px); background: var(--fir-deep); color: var(--paper); position: relative;}
.agape-events .kintsugi .gold-line{position: absolute; left: 0px; right: 0px; top: -13px;}
.agape-events .kintsugi .gold-line.low{top: auto; bottom: -13px; transform: scaleX(-1);}
.agape-events .kin-grid{display: grid; grid-template-columns: 1fr; gap: 34px; padding-block: clamp(56px, 8vw, 100px);}
.agape-events .kintsugi h2{color: var(--gold-soft);}
.agape-events .kintsugi p{margin-top: 20px; font-size: 1.08rem; color: rgb(241, 234, 219);}
.agape-events .kintsugi .ask{display: block; margin-top: 22px; padding-top: 20px; border-top: 1px solid rgba(227, 201, 138, 0.5); font-family: var(--serif); font-style: italic; font-size: 1.36rem; line-height: 1.35; color: var(--gold-soft);}
.agape-events .kin-photo{aspect-ratio: 4 / 5; border-radius: 18px; box-shadow: 14px 14px 0 -2px var(--fir-deep),14px 14px 0 0 var(--gold); max-width: 420px; width: calc(100% - 16px); background-position: 50% 42%;}
@media (min-width: 900px) {.agape-events .kin-grid{grid-template-columns: minmax(0px, 7fr) minmax(0px, 5fr); gap: 72px; align-items: center;}
.agape-events .kin-photo{justify-self: end;}}
.agape-events .circle{padding-block: clamp(60px, 8vw, 104px); border-top: 1px solid var(--line);}
.agape-events .concept{border: 2px dashed var(--gold); border-radius: 26px; padding: clamp(22px, 4.4vw, 52px); display: grid; grid-template-columns: 1fr; gap: 32px; background: rgba(251, 248, 241, 0.6);}
.agape-events .badge{display: inline-block; background: var(--terra); color: rgb(255, 255, 255); font-size: 0.76rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; padding: 7px 14px; border-radius: 999px; line-height: 1.4;}
.agape-events .circle h2{margin-top: 18px;}
.agape-events .circle p.body{margin-top: 18px; font-size: 1.06rem;}
.agape-events .three{margin-top: 24px; border-top: 1px solid var(--line);}
.agape-events .three li{padding: 13px 0px; border-bottom: 1px solid var(--line);}
.agape-events .three i{margin-inline: 6px;}
.agape-events .three b{font-family: var(--serif); font-size: 1.18rem; color: var(--fir); font-weight: 600;}
.agape-events .three i{font-style: normal; color: var(--gold);}
.agape-events .later{margin-top: 22px; font-size: 0.95rem; color: var(--ink-soft); font-style: italic;}
.agape-events .circle-photo{aspect-ratio: 4 / 5; border-radius: 18px; background-position: 50% 30%; width: 100%; max-width: 440px;}
@media (min-width: 900px) {.agape-events .concept{grid-template-columns: minmax(0px, 7fr) minmax(0px, 5fr); gap: 56px; align-items: center;}
.agape-events .circle-photo{justify-self: end;}}
.agape-events .closing{background: var(--paper-3); padding-block: clamp(56px, 8vw, 96px);}
.agape-events .closing-in{display: grid; grid-template-columns: 1fr; gap: 30px; justify-items: center; text-align: center;}
.agape-events .closing-photo{width: min(240px, 62vw); aspect-ratio: 1 / 1; border-radius: 50%; background-position: 50% 22%; border: 5px solid var(--paper-3); box-shadow: 0 0 0 2px var(--gold);}
.agape-events .closing p{font-family: var(--serif); font-size: clamp(1.3rem, 2.7vw, 1.78rem); line-height: 1.42; color: var(--fir); max-width: 30em;}
@media (min-width: 860px) {.agape-events .closing-in{grid-template-columns: auto minmax(0px, 1fr); gap: 56px; place-items: center start; text-align: left;}}
.agape-events .foot{background: var(--fir-deep); color: rgb(233, 225, 208); font-size: 0.84rem; padding: 26px 0px; line-height: 1.6;}
.agape-events .foot a{color: var(--gold-soft);}
.agape-events #lb{position: fixed; inset: 0px; z-index: 50; background: rgba(18, 30, 26, 0.94); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 56px 14px 22px;}
.agape-events #lb[hidden]{display: none;}
.agape-events #lb-pic{width: min(100%, 1240px); flex: 1 1 0%; min-height: 0px; background-size: contain; background-position: center center; background-repeat: no-repeat;}
.agape-events #lb-more{flex: 0 0 auto; width: 64px; height: 64px; padding: 0px; border-radius: 50%; border: 3px solid var(--fir-deep); box-shadow: 0 0 0 2px var(--gold); background-position: 50% 8%; cursor: pointer;}
.agape-events #lb-more[hidden]{display: none;}
.agape-events #lb-cap{color: var(--paper); font-family: var(--serif); font-style: italic; font-size: 1.08rem; text-align: center;}
.agape-events #lb-x{position: absolute; top: 8px; right: 10px; width: 46px; height: 46px; border-radius: 50%; border: 1.5px solid rgba(246, 240, 228, 0.6); background: transparent; color: var(--paper); font-size: 1.7rem; line-height: 1; cursor: pointer;}

.agape-events .p-kintsugi{background-image: var(--p-kintsugi);}
.agape-events .p-strada{background-image: var(--p-strada);}
.agape-events .p-mare{background-image: var(--p-mare);}
.agape-events .p-final{background-image: var(--p-final);}
.agape-events .p-umarmung{background-image: var(--p-umarmung);}
.agape-events{--paper:#f7f3ee;--paper-2:#fff;--paper-3:#eee7df;--ink:#231f20;--ink-soft:#5a524e;--fir:#231f20;--fir-deep:#342f2a;--terra:#f65413;--gold:#bd9153;--gold-soft:#e5cc9c;--line:#e8dfd2;--serif:'Cormorant Garamond',Georgia,serif;--sans:'Montserrat',sans-serif;--pad:clamp(24px,5vw,48px);font-weight:300;font-size:16px;line-height:1.7;letter-spacing:.01em}
.agape-events .ph{object-fit:cover;background-image:none;max-width:100%;height:auto}
.agape-events h1,.agape-events h2,.agape-events h3{font-weight:400;letter-spacing:-.02em}
.agape-events .btn{border-radius:0;font-family:var(--sans);font-size:.8rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;border-width:1px}
.agape-events .btn-full{background:var(--terra);color:#fff;border-color:var(--terra)}
.agape-events .btn-full:hover{background:#c4400d;border-color:#c4400d}
.agape-events .kintsugi{background:var(--fir-deep);color:var(--paper)}
.agape-events .card{border-radius:0;box-shadow:none;transform:none}
.agape-events .card h3{font-size:1.75rem}
.agape-events .card-img .ph{height:100%}
.agape-events .hero-photo{width:100%;height:100%;object-position:55% 100%}
.agape-events .kicker{font-weight:500}
.agape-events .date,.agape-events .sub{font-weight:500}
.agape-events .more{font-weight:500}
.agape-events .chip{font-weight:500;font-size:.7rem;white-space:normal;text-align:left;max-width:100%}
.agape-events .concept{border:1px solid var(--line);border-radius:0;background:var(--paper-2)}
.agape-events .community-link{margin-top:24px}
.agape-events [id]{scroll-margin-top:104px}
.agape-events #lb{z-index:2000;background:rgba(35,31,32,.96)}
.agape-events #lb-pic{display:flex;align-items:center;justify-content:center}
.agape-events #lb-image{width:100%;height:100%;object-fit:contain}
.agape-events #lb-more{background-size:cover}
body.agape-events-lb-open{overflow:hidden}
@media(min-width:900px){.agape-events .hero h1{font-size:clamp(2.6rem,4vw,3.4rem)}}
@media(min-width:900px){.agape-events .hero-text{padding-left:24px}}
@media(min-width:1024px){.agape-events .hero-text{padding-left:max(40px,calc((100vw - 1280px)/2 + 40px))}}
@media(max-width:899px){.agape-events .hero-photo{aspect-ratio:4/3;height:auto}}
@media(prefers-reduced-motion:reduce){.agape-events *{transition:none!important;scroll-behavior:auto}}

/* Calendar separation only; all existing AGAPE branding, cards and images stay in place. */
.agape-events [hidden]{display:none!important}
.agape-events .events-empty{margin-top:28px;padding:24px 28px;border:1px solid var(--line);background:var(--paper-2);display:flex;align-items:center;justify-content:space-between;gap:24px}
.agape-events .events-empty p{max-width:43em;color:var(--ink-soft)}
.agape-events .events-empty .btn{flex-shrink:0}
.agape-events .future-cards[data-single-card="true"]{grid-template-columns:1fr;margin-top:28px}
.agape-events .future-cards[data-single-card="true"] .card{grid-column:auto;max-width:860px}
.agape-events .past-events{padding:clamp(52px,7vw,88px) 0;background:var(--paper-3);border-top:1px solid var(--line)}
.agape-events .past-events .cards{grid-template-columns:1fr}
.agape-events .past-events .card{grid-column:auto}
@media(min-width:700px){.agape-events .past-events .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.agape-events .future-cards[data-single-card="true"] .card{display:grid;grid-template-columns:1fr 1fr}.agape-events .future-cards[data-single-card="true"] .card-img{aspect-ratio:auto;min-height:300px}.agape-events .future-cards[data-single-card="true"] .card-img img{height:100%;min-height:300px}}
@media(max-width:699px){.agape-events .events-empty{align-items:flex-start;flex-direction:column;padding:24px}.agape-events .events-empty .btn{width:auto}.agape-events .future-cards[data-single-card="true"] .card{max-width:none}}
