@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/cormorant-garamond-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/cormorant-garamond-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300;font-display:swap;src:url(../fonts/cormorant-garamond-latin-300-italic.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/cormorant-garamond-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url(../fonts/cormorant-garamond-latin-500-italic.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:300;font-display:swap;src:url(../fonts/jost-latin-300-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/jost-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/jost-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Allura';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/allura-latin-400-normal.woff2) format('woff2')}
picture{display:contents}
picture>source{display:none}

html,body{overflow-x:hidden}
html{scroll-behavior:smooth}
body{margin:0;background:#FFFFFF}
a{color:#2E2C28}a:hover{color:#3F6C75}
.herz-maske{-webkit-mask-image:url(../img/herz-maske.png);mask-image:url(../img/herz-maske.png);-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}
.hero-shade{-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 30%);mask-image:linear-gradient(90deg,transparent 0%,#000 30%)}
.nav-link:hover{color:#FFFFFF !important;opacity:0.8}
.nav-burger{display:none;align-items:center;justify-content:center}
.momente-hint{display:none}
@media (max-width: 700px){
.momente-grid{display:flex !important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-left:-20px !important;margin-right:-20px !important;padding:0 20px 4px;scroll-padding:0 20px;gap:12px !important}
.momente-grid::-webkit-scrollbar{display:none}
.momente-grid img{flex:0 0 78% !important;width:78% !important;scroll-snap-align:center}
.momente-hint{display:flex !important}
}
.nav-panel{display:none}
@media (max-width: 900px){
.hero-nav{position:relative !important}
.nav-links{display:none !important}
.nav-burger{display:flex !important}
.nav-panel.open{display:block !important}
.hero-media{height:auto !important}
.hero-img{position:relative !important;width:100% !important;height:62vh !important;object-position:61% 25% !important}
.hero-fade{display:none}
.hero-shade{display:none}
.hero-copy{position:relative !important;left:auto !important;top:auto !important;transform:none !important;max-width:none !important;padding:44px 20px 8px}
.nav-logo{height:38px !important}
}

*,*::before,*::after{box-sizing:border-box}
.icon-close{display:none}
#menu-toggle[aria-expanded="true"] .icon-open{display:none !important}
#menu-toggle[aria-expanded="true"] .icon-close{display:block !important}
.nach-oben{opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s}
.nach-oben.zeigen{opacity:1;visibility:visible}
.skip{position:absolute;left:-9999px;top:8px;z-index:100;background:#fff;padding:10px 16px;border-radius:999px}
.skip:focus{left:16px}
.hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.faq summary::-webkit-details-marker{display:none}
.faq-icon{flex:none;width:16px;height:16px;position:relative}
.faq-icon::before,.faq-icon::after{content:"";position:absolute;left:0;top:50%;width:16px;height:1.5px;background:#3F6C75;transition:transform .2s}
.faq-icon::after{transform:rotate(90deg)}
.faq[open] .faq-icon::after{transform:rotate(0deg)}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #3F6C75;outline-offset:3px}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}
#ritual-dialog{border:0;padding:0;border-radius:8px;width:min(520px,calc(100% - 40px));max-height:90vh;box-shadow:0 24px 60px rgba(20,30,32,.25);color:#2E2C28}
#ritual-dialog::backdrop{background:rgba(30,40,42,.55)}
#ritual-dialog[open]{animation:rdIn .2s ease-out}
@keyframes rdIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.rd-inner{position:relative;padding:clamp(28px,5vw,44px);display:flex;flex-direction:column;gap:14px;font-family:Jost,system-ui,sans-serif;line-height:1.75}
.rd-close{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;border-radius:999px;background:#F8F1EE;color:#2E2C28;cursor:pointer;display:flex;align-items:center;justify-content:center}
.rd-close svg{width:18px;height:18px}
.rd-icon{width:34px;height:auto;display:block}
.rd-eyebrow{margin:0;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:#3F6C75}
.rd-title{margin:0;font-family:'Cormorant Garamond',serif;font-weight:400;font-size:clamp(28px,3vw,34px);line-height:1.15}
.rd-text{margin:0;color:#57534B}
.rd-link{align-self:flex-start;margin-top:8px;color:#2E2C28;font-size:12px;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid #2E2C28;padding-bottom:4px}
.ritual-chip:hover{border-color:#3F6C75 !important}
body.rd-offen{overflow:hidden}
@media (prefers-reduced-motion: reduce){#ritual-dialog[open]{animation:none}}

