/* =================================================================
   enjoy the little moments -- Landing Pages Stylesheet
   Alina Mund Fotografie | alinamund.com
   Shared across all Landing Pages (Hochzeit / Weingut / Business)
   Loaded after styles.css -- uses the same CSS variables
   ================================================================= */

/* -- Hero -- */
.lp-hero{min-height:92vh;display:grid;grid-template-columns:1fr 1fr;overflow:hidden}
.lp-hero__img{position:relative;overflow:hidden}
.lp-hero__img img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;filter:brightness(.88) saturate(.9)}
.lp-hero__overlay{position:absolute;inset:0;background:linear-gradient(to right,var(--primary) 0%,transparent 60%)}
.lp-hero__content{background:var(--primary);display:flex;flex-direction:column;justify-content:center;padding:clamp(60px,8vw,100px) clamp(32px,5vw,80px);position:relative;z-index:1}
.lp-hero__eyebrow{font-family:var(--ss);font-size:.6rem;font-weight:300;letter-spacing:.25em;text-transform:uppercase;color:var(--gold);display:flex;align-items:center;gap:12px;margin-bottom:24px}
.lp-hero__eyebrow::before{content:"";width:24px;height:1px;background:var(--gold)}
.lp-hero__h1{font-family:var(--sf);font-size:clamp(2.2rem,4.5vw,3.8rem);font-weight:400;line-height:1.2;color:rgba(255,255,255,.96);margin-bottom:22px}
.lp-hero__h1 em{font-style:italic;color:var(--rose)}
.lp-hero__sub{font-family:var(--ss);font-size:.92rem;line-height:1.8;color:rgba(255,255,255,.62);font-weight:300;max-width:480px;margin-bottom:38px}
.lp-hero__actions{display:flex;gap:16px;flex-wrap:wrap}
.lp-hero__stats{display:flex;gap:32px;margin-top:52px;padding-top:32px;border-top:1px solid rgba(255,255,255,.1)}
.lp-stat__n{font-family:var(--sf);font-size:1.8rem;font-weight:300;color:var(--gold2);line-height:1}
.lp-stat__l{font-family:var(--ss);font-size:.6rem;font-weight:300;letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-top:4px}

/* -- Intro -- */
.lp-intro{background:var(--warm);padding:clamp(64px,8vw,110px) clamp(20px,4vw,64px)}
.lp-intro__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,96px);align-items:start;max-width:1200px;margin:0 auto}
.lp-intro__text p{font-family:var(--ss);font-size:.93rem;line-height:1.85;color:var(--ts);font-weight:300;margin-bottom:20px}
.lp-intro__text a{color:var(--mocha);text-decoration:none;border-bottom:1px solid var(--sand)}
.lp-intro__text a:hover{border-color:var(--mocha)}
.lp-intro__cta{margin-top:12px;display:inline-block}

/* -- Stat Boxes -- */
.lp-stat-box{background:var(--bg);border:1px solid var(--sand);padding:22px 18px;display:flex;flex-direction:column;gap:4px}
.lp-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lp-stat-box__n{font-family:var(--sf);font-size:2rem;font-weight:300;color:var(--gold);line-height:1}
.lp-stat-box__l{font-family:var(--ss);font-size:.6rem;font-weight:300;letter-spacing:.14em;text-transform:uppercase;color:var(--tm)}

/* -- Pakete & Preise -- */
.lp-pkgs{padding:clamp(64px,8vw,110px) clamp(20px,4vw,64px)}
.lp-pkgs__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;max-width:1200px;margin:clamp(32px,4vw,52px) auto 0}
.lp-pkgs .svc{opacity:1!important;transform:none!important;transition:box-shadow .25s,border-color .25s}
.lp-pkgs__note{text-align:center;margin-top:32px;font-family:var(--ss);font-size:.8rem;color:var(--tm);font-weight:300}

/* -- Breadcrumb -- */
.lp-breadcrumb{background:var(--primary);padding:14px clamp(20px,4vw,64px);border-bottom:1px solid rgba(255,255,255,.07)}
.lp-breadcrumb ol{list-style:none;display:flex;align-items:center;gap:8px;max-width:1200px;margin:0 auto;font-family:var(--ss);font-size:.62rem;font-weight:300;letter-spacing:.08em;color:rgba(255,255,255,.4)}
.lp-breadcrumb li+li::before{content:">";margin-right:8px;opacity:.4}
.lp-breadcrumb a{color:rgba(255,255,255,.55);text-decoration:none}
.lp-breadcrumb a:hover{color:var(--gold)}
.lp-breadcrumb [aria-current]{color:rgba(255,255,255,.85)}

/* -- Section inner wrapper -- */
.lp-section__inner{max-width:1200px;margin:0 auto;padding:0}

/* -- FAQ -- */
.lp-faq{background:var(--warm);padding:clamp(64px,8vw,110px) clamp(20px,4vw,64px)}
.lp-faq__list{max-width:800px;margin:clamp(32px,4vw,52px) auto 0;display:flex;flex-direction:column;gap:0}
.lp-faq__item{border-bottom:1px solid var(--sand)}
.lp-faq__q{width:100%;background:none;border:none;padding:22px 0;text-align:left;font-family:var(--ss);font-size:.88rem;font-weight:400;color:var(--tp);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
.lp-faq__q::after{content:"+";font-size:1.2rem;color:var(--gold);transition:transform .3s;flex-shrink:0}
.lp-faq__q[aria-expanded="true"]::after{transform:rotate(45deg)}
.lp-faq__a{max-height:0;overflow:hidden;transition:max-height .4s ease}
.lp-faq__item.open .lp-faq__a{max-height:400px}
.lp-faq__a p{font-family:var(--ss);font-size:.88rem;line-height:1.8;color:var(--ts);font-weight:300;padding:0 0 20px}
.lp-faq__a a{color:var(--mocha);text-decoration:none;border-bottom:1px solid var(--sand)}

/* -- CTA -- */
.lp-cta{background:var(--primary);padding:clamp(72px,9vw,120px) clamp(20px,4vw,64px);text-align:center}
.lp-cta__title{font-family:var(--sf);font-size:clamp(1.8rem,3.5vw,3rem);font-weight:400;color:rgba(255,255,255,.95);margin-bottom:18px;line-height:1.25}
.lp-cta__title em{font-style:italic;color:var(--rose)}
.lp-cta__sub{font-family:var(--ss);font-size:.92rem;font-weight:300;color:rgba(255,255,255,.55);max-width:560px;margin:0 auto 38px;line-height:1.8}
.lp-cta__actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}

/* -- Quote Band -- */
.lp-quote{background:var(--primary);padding:clamp(64px,8vw,96px) clamp(20px,4vw,64px);text-align:center}
.lp-quote__inner{margin:0 auto;max-width:760px}
.lp-quote__inner p{font-family:var(--sf);font-size:clamp(1.6rem,3.2vw,2.6rem);font-weight:400;color:rgba(255,255,255,.92);line-height:1.45;margin:0 0 20px}
.lp-quote__inner cite{font-family:var(--ss);font-size:.65rem;font-weight:300;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-style:normal;display:flex;align-items:center;justify-content:center;gap:12px}
.lp-quote__inner cite::before,.lp-quote__inner cite::after{content:"";width:24px;height:1px;background:var(--gold);display:inline-block}

/* -- Locations (gestapelte Bloecke) -- */
.lp-locations{background:var(--warm);padding:clamp(64px,8vw,110px) clamp(20px,4vw,64px)}
.lp-locations__intro{max-width:720px;margin:0 auto 48px;text-align:center;font-family:var(--ss);font-size:.95rem;line-height:1.8;color:var(--tm)}
.lp-loc__grid{display:flex;flex-direction:column;gap:20px;margin-top:clamp(40px,5vw,60px);counter-reset:loc}
.lp-loc__item{background:var(--bg);border:none;border-left:3px solid var(--gold);padding:clamp(28px,3.5vw,44px) clamp(28px,3.5vw,40px);box-shadow:0 2px 16px rgba(43,37,20,.06);display:grid;grid-template-columns:72px 1fr;grid-template-rows:auto auto auto;column-gap:32px;transition:transform .3s var(--ease),box-shadow .3s var(--ease);counter-increment:loc}
.lp-loc__item::before{content:counter(loc,decimal-leading-zero);grid-column:1;grid-row:1/-1;font-family:var(--sf);font-size:2.8rem;color:var(--sand);line-height:1;padding-top:6px;align-self:start}
.lp-loc__item:hover{transform:translateX(5px);box-shadow:0 6px 36px rgba(43,37,20,.11)}
.lp-loc__name{grid-column:2;grid-row:1;font-family:var(--ss);font-size:1.1rem;font-weight:600;color:var(--tp);margin:0 0 14px;line-height:1.3;letter-spacing:.01em;padding-bottom:14px;border-bottom:1px solid var(--sand)}
.lp-loc__item p{grid-column:2;grid-row:2;font-family:var(--ss);font-size:.9rem;line-height:2;color:var(--ts);font-weight:300;margin:0}
.lp-loc__item em{grid-column:2;grid-row:3;font-family:var(--sf);font-style:italic;color:var(--mocha);display:block;margin-top:16px;font-size:1.05rem;line-height:1.5}
.lp-locations__highlight{margin-top:clamp(36px,5vw,60px);background:var(--bg);border:1px solid var(--sand);border-top:3px solid var(--gold);padding:clamp(32px,4vw,52px) clamp(28px,6vw,72px);text-align:center;box-shadow:0 2px 28px rgba(43,37,20,.07);display:flex;flex-direction:column;align-items:center;gap:20px;transition:box-shadow .3s var(--ease)}
.lp-locations__highlight:hover{box-shadow:0 6px 40px rgba(43,37,20,.12)}
.lp-lh__icon{width:30px;height:30px;color:var(--gold);flex-shrink:0;opacity:.85}
.lp-lh__text{font-family:var(--ss);font-size:1rem;line-height:1.85;color:var(--ts);font-weight:300;max-width:520px;margin:0}
.lp-lh__text strong{color:var(--tp);font-weight:400}
.lp-locations__highlight .btn{margin-top:4px}

/* -- Trauungsformen -- */
.lp-forms{background:var(--primary);padding:clamp(64px,8vw,110px) clamp(20px,4vw,64px)}
.lp-forms__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;margin-top:clamp(32px,4vw,52px)}
.lp-form__item{border:1px solid rgba(255,255,255,.1);padding:clamp(24px,3vw,36px);transition:border-color .25s}
.lp-form__item:hover{border-color:rgba(255,255,255,.25)}
.lp-form__item h3{font-family:var(--sf);font-size:1rem;font-weight:400;color:var(--gold2);margin-bottom:14px;line-height:1.3}
.lp-form__item p{font-family:var(--ss);font-size:.88rem;line-height:1.85;color:rgba(255,255,255,.6);font-weight:300;margin:0}
.lp-form__item strong{color:rgba(255,255,255,.85);font-weight:600}

/* -- Philosophie / About -- */
.lp-about{background:var(--warm);padding:clamp(64px,8vw,110px) clamp(20px,4vw,64px)}
.lp-about__body{max-width:860px;margin:0 auto;font-family:var(--ss);font-size:.95rem;line-height:1.9;color:var(--ts);font-weight:300}
.lp-about__body p{margin-bottom:22px}
.lp-about__body strong{color:var(--tp);font-weight:600}
.lp-about__cta{text-align:center;margin-top:36px}

/* -- Pakete: 4-Spalten-Variante (Weingut LP) -- */
.lp-pkgs__grid--4{grid-template-columns:repeat(4,1fr)}
@media(max-width:1100px){.lp-pkgs__grid--4{grid-template-columns:repeat(2,1fr)}}
@media(max-width:860px){.lp-pkgs__grid--4{grid-template-columns:1fr}}

/* -- Responsive -- */
@media(max-width:860px){
  .lp-hero{grid-template-columns:1fr;min-height:auto}
  .lp-hero__img{height:52vw;min-height:280px}
  .lp-hero__overlay{background:linear-gradient(to bottom,transparent 40%,var(--primary) 100%)}
  .lp-intro__grid{grid-template-columns:1fr}
  .lp-pkgs__grid{grid-template-columns:1fr}
  .lp-forms__grid{grid-template-columns:1fr}
  .lp-loc__item{grid-template-columns:48px 1fr;column-gap:20px}
  .lp-loc__item::before{font-size:2rem}
}
@media(max-width:600px){
  .lp-hero__stats{gap:20px;flex-wrap:wrap}
  .lp-loc__item{grid-template-columns:1fr;display:block}
  .lp-loc__item::before{display:block;margin-bottom:10px}
}
