.feiern-page{background:#080706;color:#f4eee4}
.feiern-page .site-head{background:linear-gradient(#080706bb,#08070600)}
.feiern-page .site-head.is-solid{background:rgba(8,7,6,.94)}
@media(max-width:760px){.feiern-page .site-head,.feiern-page .site-head.is-solid{background:#080706;border-bottom-color:#f4eee444;backdrop-filter:none}}
.feiern-page main{overflow:clip}
.fp-hero{position:relative;isolation:isolate;min-height:100svh;background:#260a0a;overflow:hidden}
.fp-hero-photo{position:absolute;inset:0 0 0 38%;overflow:hidden;clip-path:polygon(24% 0,100% 0,100% 100%,0 100%);z-index:-2}
.fp-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:42% center;filter:saturate(1.35) contrast(1.12);transform:scale(1.08)}
.fp-hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#2b08076e,transparent 58%),linear-gradient(0deg,#1003028f,transparent 45%)}
.fp-hero-wedge{position:absolute;inset:0;z-index:-1;background:linear-gradient(103deg,#090706 0%,#210809 36%,#210809d9 45%,transparent 73%),radial-gradient(circle at 83% 34%,#ff43272d,transparent 35%)}
.fp-hero-copy{position:relative;max-width:1600px;margin:auto;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:160px clamp(24px,6.3vw,105px) 110px}
.fp-hero-small,.fp-hero-side,.fp-hero-bottom,.fp-occasion-label,.fp-catering-top,.fp-process-heading>p,.fp-close-copy>p,.fp-ideas-copy>p{font-family:var(--mono);font-size:11px;letter-spacing:.09em;line-height:1.5}
.fp-hero-small{margin:0 0 clamp(32px,5vw,75px);color:var(--brass);display:flex;gap:45px}
.fp-hero-small span{color:var(--paper)}
.fp-hero h1{font-size:clamp(74px,13.5vw,220px);line-height:.76;letter-spacing:-.105em;font-weight:900;margin:0;max-width:1300px}
.fp-hero h1 span,.fp-hero h1 strong{display:block}
.fp-hero h1 span:nth-child(2){margin-left:.27em}
.fp-hero h1 strong{color:transparent;-webkit-text-stroke:1.5px #f4eee4;font-size:.68em;letter-spacing:-.08em;margin-top:.19em;margin-left:1.2em;white-space:nowrap}
.fp-hero-deck{font-size:clamp(17px,1.45vw,22px);line-height:1.45;max-width:465px;margin:50px 0 28px}
.fp-hero-links{display:flex;gap:12px;flex-wrap:wrap}
.fp-hero-links a,.fp-occasion-content a,.fp-ideas-links a,.fp-catering-main a,.fp-close-copy a{display:flex;justify-content:space-between;align-items:center;gap:26px;min-height:50px;border-top:1px solid var(--brass);border-bottom:1px solid var(--brass);padding:13px 3px;font:11px/1.4 var(--mono);letter-spacing:.05em;text-transform:uppercase;transition:background .25s,padding .25s,color .25s}
.fp-hero-links a{min-width:230px}.fp-hero-links a:hover,.fp-occasion-content a:hover,.fp-ideas-links a:hover,.fp-catering-main a:hover,.fp-close-copy a:hover{padding-left:13px;padding-right:13px;background:#c7a568;color:#080706}
.fp-hero-links a span,.fp-occasion-content a span,.fp-catering-main a span,.fp-close-copy a span{font-size:20px}
.fp-hero-side{position:absolute;right:24px;top:42%;writing-mode:vertical-rl;color:var(--brass);margin:0}
.fp-hero-bottom{position:absolute;left:clamp(24px,6.3vw,105px);right:clamp(24px,6.3vw,105px);bottom:20px;display:flex;justify-content:space-between;border-top:1px solid #f4eee476;padding-top:13px}
.fp-intro{background:#f4eee4;color:#080706;padding:clamp(70px,9vw,145px) clamp(24px,5vw,90px) clamp(90px,10vw,160px)}
.fp-intro-rule{display:flex;justify-content:space-between;border-top:1px solid #080706;padding-top:12px;font:11px var(--mono);letter-spacing:.07em}
.fp-intro-layout{max-width:1700px;margin:clamp(55px,7vw,120px) auto 0;display:grid;grid-template-columns:51% 1fr;align-items:center;gap:clamp(20px,4vw,75px)}
.fp-intro-photo{height:clamp(450px,65vw,900px);overflow:hidden;clip-path:polygon(0 0,100% 0,87% 100%,0 100%)}
.fp-intro-photo img{width:100%;height:100%;object-fit:cover;object-position:38% center;filter:saturate(.95) contrast(1.1)}
.fp-intro-words{position:relative;z-index:1;margin-left:-12vw}
.fp-intro h2{font-size:clamp(65px,10vw,175px);line-height:.78;letter-spacing:-.095em;margin:0 0 52px;font-weight:900}
.fp-intro h2 i{font-family:Fraunces,Georgia,serif;font-weight:350;letter-spacing:-.08em;color:#a92822}
.fp-intro-words>p{max-width:510px;font-size:clamp(17px,1.35vw,21px);line-height:1.5;margin:0 0 35px auto}
.fp-intro-words>a{display:flex;justify-content:space-between;max-width:510px;margin-left:auto;border-top:1px solid #080706;border-bottom:1px solid #080706;padding:15px 0;text-transform:uppercase;font:12px var(--mono)}
.fp-occasions{background:#080706;padding:0 0 clamp(95px,11vw,170px)}
.fp-occasions-head{padding:clamp(95px,12vw,190px) clamp(24px,6vw,100px) clamp(65px,9vw,135px);position:relative;overflow:hidden}
.fp-occasions-head:after{content:"EURE NACHT";position:absolute;right:-.08em;bottom:-.17em;color:#f4eee40a;font-size:18vw;line-height:1;font-weight:900;letter-spacing:-.11em;white-space:nowrap;pointer-events:none}
.fp-occasions-head p{font-size:clamp(16px,1.5vw,22px);margin:0 0 35px}
.fp-occasions-head h2{font-size:clamp(70px,11.8vw,205px);line-height:.76;letter-spacing:-.1em;margin:0;font-weight:900}
.fp-occasions-head h2 span{color:#a92822}
.fp-occasion{position:relative;min-height:clamp(730px,77vw,1080px);display:grid;grid-template-columns:1fr 1fr;align-items:center;overflow:hidden;padding:clamp(70px,9vw,130px) clamp(24px,6vw,100px)}
.fp-occasion:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#f4eee43b}
.fp-occasion-media{position:absolute;inset:0 0 0 42%;overflow:hidden;clip-path:polygon(20% 0,100% 0,100% 100%,0 100%)}
.fp-occasion-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(1.15)}
.fp-occasion-media:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080706aa,transparent 70%),linear-gradient(0deg,#080706a0,transparent 60%)}
.fp-occasion-content{position:relative;z-index:1;grid-column:1/-1;max-width:min(790px,62vw)}
.fp-occasion-label{color:var(--brass);display:block;margin-bottom:clamp(50px,7vw,110px)}
.fp-occasion h3{font-size:clamp(68px,9.5vw,155px);line-height:.79;letter-spacing:-.095em;margin:0 0 35px;font-weight:900}
.fp-occasion-content>p{font-size:clamp(18px,1.5vw,23px);line-height:1.45;max-width:470px;margin:0 0 40px}
.fp-occasion-content>a,.fp-occasion-links a{width:min(440px,100%)}
.fp-occasion-two{background:#27090a}
.fp-occasion-two .fp-occasion-media{inset:0 42% 0 0;clip-path:polygon(0 0,100% 0,81% 100%,0 100%)}
.fp-occasion-two .fp-occasion-media:after{background:linear-gradient(270deg,#27090ab8,transparent 80%)}
.fp-occasion-two .fp-occasion-content{margin-left:auto;text-align:right}
.fp-occasion-two .fp-occasion-content>p,.fp-occasion-two .fp-occasion-content a{margin-left:auto}
.fp-occasion-links a+a{margin-top:6px}
.fp-occasion-three .fp-occasion-media img{object-position:35% center}
.fp-ideas{position:relative;background:#24100d;min-height:980px;display:grid;grid-template-columns:52% 48%;align-items:center;overflow:hidden}
.fp-ideas-photo{align-self:stretch;overflow:hidden;clip-path:polygon(0 0,100% 0,85% 100%,0 100%)}
.fp-ideas-photo img{width:100%;height:100%;object-fit:cover;object-position:57% center;filter:saturate(1.22)}
.fp-ideas-copy{position:relative;margin-left:-14vw;padding:110px clamp(24px,6vw,100px) 110px 0}
.fp-ideas-copy>p:first-child{color:var(--brass);margin-bottom:60px}
.fp-ideas h2{font-size:clamp(75px,10.8vw,185px);line-height:.8;letter-spacing:-.1em;margin:0 0 48px;font-weight:900}
.fp-ideas h2 span{color:transparent;-webkit-text-stroke:1px var(--paper)}
.fp-ideas-copy>p:nth-of-type(2){max-width:520px;font-size:clamp(18px,1.4vw,23px);line-height:1.5}
.fp-ideas-links{max-width:520px;margin-top:35px}
.fp-ideas-links a{border-bottom:0}
.fp-ideas-links a:last-child{border-bottom:1px solid var(--brass)}
.fp-catering{background:#c8a969;color:#080706;padding:clamp(75px,8vw,130px) clamp(24px,6vw,100px) clamp(100px,10vw,160px)}
.fp-catering-top{display:flex;justify-content:space-between;border-top:1px solid #080706;padding-top:12px}
.fp-catering-main{display:grid;grid-template-columns:1.5fr .55fr;gap:5vw;align-items:end;max-width:1700px;margin:clamp(70px,8vw,135px) auto 0}
.fp-catering h2{font-size:clamp(63px,9.5vw,165px);line-height:.82;letter-spacing:-.1em;margin:0;font-weight:900}
.fp-catering h2>span:not(.fp-dot){color:#f4eee4}.fp-catering .fp-dot{color:#a92822}
.fp-catering-main>div{padding-bottom:5px}
.fp-catering-main p:first-child{font-size:clamp(18px,1.6vw,25px);line-height:1.45}
.fp-catering-note{font-size:14px;line-height:1.5;margin:25px 0 35px}
.fp-catering-main a{border-color:#080706}
.fp-catering-main a:hover{background:#080706;color:#f4eee4}
.fp-process{background:#f4eee4;color:#080706;padding:clamp(95px,10vw,160px) clamp(24px,6vw,100px)}
.fp-process-heading{display:grid;grid-template-columns:1fr 2fr;gap:30px;border-top:1px solid #080706;padding-top:15px;align-items:start}
.fp-process-heading>p{margin:0;color:#a92822}
.fp-process h2{font-size:clamp(50px,7.5vw,130px);line-height:.86;letter-spacing:-.09em;margin:50px 0 85px}
.fp-process ol{list-style:none;max-width:1050px;margin:0 0 0 auto;padding:0}
.fp-process li{display:grid;grid-template-columns:130px 1fr;border-top:1px solid #080706;gap:25px;padding:25px 0 45px}
.fp-process li>span{font:clamp(30px,4vw,65px)/1 var(--mono);color:#a92822}
.fp-process h3{font-size:clamp(32px,4vw,64px);line-height:1;letter-spacing:-.065em;text-transform:uppercase;margin:0 0 14px}
.fp-process li p{font-size:clamp(16px,1.4vw,21px);line-height:1.45;max-width:630px;margin:0}
.fp-close{min-height:830px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center}
.fp-close-photo{position:absolute;inset:0;z-index:-1}
.fp-close-photo img{width:100%;height:100%;object-fit:cover;object-position:center;filter:contrast(1.12) saturate(1.16);transform:scale(1.1)}
.fp-close-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#080706e8,transparent 90%),linear-gradient(0deg,#080706c9,transparent 60%)}
.fp-close-copy{width:100%;padding:120px clamp(24px,6vw,100px)}
.fp-close-copy>p{color:var(--brass);margin:0 0 65px}
.fp-close h2{font-size:clamp(75px,12vw,210px);line-height:.77;letter-spacing:-.1em;margin:0 0 65px}
.fp-close-copy>div{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.fp-close-copy a{min-width:320px}.fp-close-copy small{font-size:13px;color:#ddd0be}
@media(max-width:900px){.fp-intro-layout{grid-template-columns:1fr}.fp-intro-photo{height:500px}.fp-intro-words{margin:-100px 0 0 7vw}.fp-ideas{min-height:850px}.fp-ideas-copy{margin-left:-20vw}.fp-catering-main{grid-template-columns:1fr}.fp-catering-main>div{max-width:610px;margin-left:auto}.fp-occasion-content{max-width:70vw}}
@media(max-width:760px){.fp-hero{min-height:850px}.fp-hero-photo{inset:0;clip-path:none;opacity:.75}.fp-hero-photo img{object-position:44% center}.fp-hero-wedge{background:linear-gradient(0deg,#080706 0%,#0807069e 50%,#0807066e),linear-gradient(90deg,#0807069e,transparent)}.fp-hero-copy{min-height:850px;padding:140px 24px 100px;justify-content:end}.fp-hero h1{font-size:clamp(73px,15.5vw,120px)}.fp-hero h1 span:nth-child(2){margin-left:0}.fp-hero h1 strong{margin-left:0;font-size:.62em;white-space:normal}.fp-hero-small{margin-bottom:auto;font-size:9px;gap:15px}.fp-hero-deck{font-size:16px;max-width:360px;margin:34px 0 30px}.fp-hero-links{display:block}.fp-hero-links a{max-width:340px}.fp-hero-side,.fp-hero-bottom{display:none}.fp-intro{padding:75px 24px 95px}.fp-intro-rule{font-size:9px}.fp-intro-photo{height:410px}.fp-intro-words{margin:-42px 0 0}.fp-intro h2{font-size:clamp(58px,11vw,96px);margin:0 0 38px}.fp-intro-words>p,.fp-intro-words>a{margin-left:0}.fp-occasions-head{padding:95px 24px 85px}.fp-occasions-head h2{font-size:clamp(65px,12vw,100px)}.fp-occasion{min-height:800px;display:flex;align-items:end;padding:90px 24px 65px}.fp-occasion-media,.fp-occasion-two .fp-occasion-media{inset:0;clip-path:none}.fp-occasion-media img{object-position:55% center}.fp-occasion-media:after,.fp-occasion-two .fp-occasion-media:after{background:linear-gradient(0deg,#080706 0%,#080706db 31%,#08070647 72%),linear-gradient(90deg,#08070646,transparent)}.fp-occasion-two .fp-occasion-media:after{background:linear-gradient(0deg,#27090a 0%,#27090ad9 31%,#27090a44 72%)}.fp-occasion-content,.fp-occasion-two .fp-occasion-content{max-width:100%;margin:0;text-align:left}.fp-occasion-two .fp-occasion-content>p,.fp-occasion-two .fp-occasion-content a{margin-left:0}.fp-occasion-label{margin-bottom:30px}.fp-occasion h3{font-size:clamp(57px,10.8vw,91px)}.fp-occasion-content>p{font-size:17px;margin:0 0 25px}.fp-ideas{min-height:930px;display:flex;align-items:end}.fp-ideas-photo{position:absolute;inset:0;clip-path:none}.fp-ideas-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#24100d 0%,#24100ded 35%,#24100d2a 78%)}.fp-ideas-copy{position:relative;margin:0;padding:80px 24px 70px}.fp-ideas-copy>p:first-child{margin-bottom:30px}.fp-ideas h2{font-size:clamp(65px,11vw,110px)}.fp-ideas-copy>p:nth-of-type(2){font-size:17px}.fp-catering{padding:80px 24px 100px}.fp-catering-top{font-size:9px}.fp-catering h2{font-size:clamp(61px,11vw,110px)}.fp-catering-main{margin-top:75px}.fp-catering-main>div{margin-left:0}.fp-process{padding:85px 24px}.fp-process-heading{display:block}.fp-process h2{font-size:clamp(50px,9vw,80px);margin:45px 0 65px}.fp-process li{grid-template-columns:60px 1fr;padding:25px 0 35px}.fp-process li>span{font-size:29px}.fp-process h3{font-size:clamp(30px,6vw,50px)}.fp-close{min-height:780px}.fp-close-copy{padding:90px 24px}.fp-close h2{font-size:clamp(70px,13vw,115px)}}
@media(max-width:430px){.fp-hero h1{font-size:16vw}.fp-hero h1 strong{font-size:.65em}.fp-hero-small span{display:none}.fp-hero-links a{width:100%;max-width:none}.fp-intro-photo{height:340px}.fp-intro h2{font-size:11.5vw}.fp-occasion h3{font-size:11.5vw}.fp-occasion-two h3{font-size:8.5vw}.fp-catering-top span:last-child{display:none}.fp-catering h2{font-size:10vw}.fp-close-copy a{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){.fp-hero-photo img,.fp-close-photo img{transform:none}}

/* Give each occasion a finished, readable beat after the image opens. */
@media (min-width: 1000px) and (min-height: 680px) and (prefers-reduced-motion: no-preference){
  .fp-occasion{min-height:165svh;align-items:start;overflow:clip}
  .fp-occasion-content{position:sticky;top:18svh;align-self:start;margin-top:9svh}
  .fp-occasion-two h3{font-size:clamp(56px,6vw,100px)}
}
