:root{color-scheme:light;--bg-page: #f7f2e8;--bg-paper: #fdf8ee;--bg-paper-alt: #fcf3e2;--accent: #cba96b;--accent-soft: #f0d9a5;--accent-strong: #b18a46;--green: #8bb59a;--green-dark: #5f8872;--text-main: #514535;--text-soft: #7a6a55;--border-soft: #e3d5c3}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;padding:0}body{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;background-color:var(--bg-page);background-image:radial-gradient(circle at top left,rgba(255,255,255,.7),transparent 60%),radial-gradient(circle at bottom right,rgba(222,232,224,.5),transparent 55%);color:var(--text-main)}.main-nav{position:sticky;top:0;z-index:100;background:#fdf8eefa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(227,213,195,.5);box-shadow:0 2px 12px #a3998526}.nav-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1rem;position:relative}.nav-logo{font-family:Playfair Display,serif;font-size:2rem;font-weight:300;color:var(--accent-strong);letter-spacing:.1em;position:absolute;left:1.5rem}.nav-title{font-family:Great Vibes,cursive;font-size:1.8rem;color:var(--accent-strong);margin:0;flex:1;text-align:center}.nav-logo-img{height:80px;width:auto;object-fit:contain;margin:0 auto}@media(max-width:768px){.nav-logo-img{height:60px}}.nav-links{display:flex;list-style:none;margin:0;padding:0;gap:.5rem;flex-wrap:wrap}.nav-links li{margin:0}.nav-links a{display:block;padding:.5rem 1rem;font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-main);text-decoration:none;border-radius:999px;transition:background .2s ease,color .2s ease,transform .1s ease}.nav-links a:hover{background:#cba96b26;color:var(--accent-strong);transform:translateY(-1px)}.nav-links a:active{transform:translateY(0)}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;z-index:101;position:absolute;right:1.5rem}.hamburger span{display:block;width:25px;height:2px;background:var(--accent-strong);transition:all .3s ease;border-radius:2px}.hamburger:hover span{background:var(--accent)}.mobile-menu-overlay{position:fixed;inset:0;z-index:200;background:var(--bg-paper);display:flex;flex-direction:column;animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--border-soft)}.close-menu{font-size:2rem;background:none;border:none;color:var(--text-main);cursor:pointer;padding:.5rem;line-height:1;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:color .2s ease}.close-menu:hover{color:var(--accent-strong)}.mobile-menu-links{list-style:none;margin:0;padding:2rem 0;display:flex;flex-direction:column;gap:0;flex:1}.mobile-menu-links li{margin:0;border-bottom:1px solid var(--border-soft)}.mobile-menu-links a{display:block;padding:1.5rem 2rem;font-family:Playfair Display,serif;font-size:1.3rem;color:var(--text-main);text-decoration:none;text-align:center;transition:background .2s ease,color .2s ease}.mobile-menu-links a:hover{background:#cba96b14;color:var(--accent-strong)}@media(max-width:768px){.nav-logo{font-size:1.5rem}.nav-title,.nav-links-desktop{display:none}.hamburger{display:flex}.nav-content{justify-content:center}}@media(min-width:769px){.mobile-menu-overlay{display:none}.nav-content{justify-content:space-between}.nav-logo-img{flex:1;margin:0 auto}.hamburger{display:none}}.page{min-height:100vh;display:flex;flex-direction:column;padding:2.5rem 1.25rem}@media(min-width:900px){.page{padding:3.5rem 0;align-items:center}}main,.hero,footer{max-width:1100px;width:100%;margin:0 auto}.hero{position:relative;padding:2.5rem 1.75rem 2rem;margin-bottom:1.5rem;text-align:center;border-radius:28px;background:linear-gradient(135deg,#d8e6dde6,#fdf7ebf2);box-shadow:0 24px 60px #a3998547;overflow:hidden}.hero:before,.hero:after{content:"";position:absolute;width:220px;height:220px;border-radius:999px;border:1px solid rgba(139,181,154,.35);background:radial-gradient(circle at 20% 20%,rgba(139,181,154,.3),transparent 60%);opacity:.9;pointer-events:none}.hero:before{top:-80px;left:-60px}.hero:after{bottom:-90px;right:-70px}.hero-subtitle{letter-spacing:.3em;text-transform:uppercase;font-size:.75rem;color:var(--green-dark);margin-bottom:.6rem}.hero-names{font-family:Great Vibes,cursive;font-size:clamp(3rem,4vw + 1.8rem,4.4rem);color:var(--accent-strong);margin:.2rem 0}.hero-date{font-family:Playfair Display,serif;font-size:1.05rem;letter-spacing:.22em;text-transform:uppercase;color:var(--text-main);margin-top:.3rem}.hero-text{max-width:540px;margin:1.35rem auto 0;font-size:.95rem;color:var(--text-soft)}.hero--image{max-width:none;width:100%;margin:0;padding:0;border-radius:0;box-shadow:none;background:none;min-height:100vh;background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}.hero--image:before,.hero--image:after{display:none}.hero-overlay{position:absolute;inset:0;background:#0000006b}.hero-content{position:relative;z-index:1;padding:2rem 1.25rem;text-align:center;color:#fff;margin-top:13rem}.hero--image .hero-subtitle,.hero--image .hero-date,.hero--image .hero-text{color:#fff;text-shadow:0 2px 10px rgba(0,0,0,.45)}.hero--image .hero-names{color:#fff;text-shadow:0 3px 14px rgba(0,0,0,.5)}.countdown{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.1rem;width:fit-content;margin:.9rem auto;padding:.6rem 1rem;background:#ffffffeb;color:var(--text-main);border-radius:12px;box-shadow:0 10px 26px #0000002e}@media(max-width:640px){.countdown{gap:.6rem;padding:.5rem .8rem}.countdown-item{min-width:50px}.countdown-value{font-size:1.1rem}.countdown-label{font-size:.65rem}}.countdown-item{min-width:64px;text-align:center}.countdown-value{font-size:1.4rem;font-weight:600;line-height:1.1}.countdown-label{font-size:.8rem;color:var(--text-soft);margin-top:.2rem}.card{background:var(--bg-paper);border-radius:26px;border:1px solid rgba(227,213,195,.9);box-shadow:0 18px 40px #ad9c8138,0 0 0 1px #ffffffb3;padding:1.8rem 1.6rem;margin:5rem auto 1.5rem;position:relative;overflow:hidden}.card:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.22) 1px,transparent 1px);background-size:14px 14px;mix-blend-mode:soft-light;opacity:.35;pointer-events:none}.card>*{position:relative;z-index:1}@media(min-width:900px){.card{padding:2.3rem;margin-bottom:1.8rem}}.section-title{font-family:Playfair Display,serif;font-size:1.4rem;margin-bottom:.6rem;display:inline-flex;align-items:center;gap:.5rem;color:var(--text-main)}.section-title .icon{font-size:1.2rem}.section-subtitle{font-size:.9rem;color:var(--text-soft);margin-bottom:1.1rem}.grid{display:grid;grid-template-columns:1fr;gap:1.3rem}@media(min-width:768px){.grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:flex-start}}.events-stack{display:flex;flex-direction:column;gap:1.3rem}.season-image-container{width:100%;height:400px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 12px 32px #a3998540}.season-image{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.season-image-ete{object-position:center 60%}.season-image-hiver{object-position:center 80%}.season-image-automn{object-position:center 20%}.season-image-printemps{object-position:5% 42%!important}@media(max-width:768px){.season-image-container{height:200px;margin:1.5rem auto}}@media(max-width:480px){.season-image-container{height:150px;margin:1rem auto}}.info-card{font-size:.88rem;padding:.9rem 1.1rem;border-radius:16px;background:linear-gradient(120deg,#cba96b17,#ffffffe6);border:1px dashed rgba(203,169,107,.7);color:var(--text-soft);margin-bottom:1.1rem}.info-pill{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;padding:.3rem .75rem;border-radius:999px;background:#f7f2e8f2;border:1px solid rgba(203,169,107,.5);margin-top:.45rem;color:var(--text-main)}.form-row{display:flex;flex-direction:column;gap:.35rem;margin-bottom:.9rem}.form-row label{font-size:.8rem;text-transform:uppercase;letter-spacing:.16em;color:var(--text-soft)}.form-row input,.form-row textarea{border-radius:999px;border:1px solid rgba(227,213,195,1);padding:.55rem .95rem;font-size:.9rem;outline:none;background:#fdf8eef5;color:var(--text-main)}.form-row textarea{border-radius:16px;resize:vertical;min-height:70px}.form-row input::placeholder,.form-row textarea::placeholder{color:#897962b3}.form-row input:focus,.form-row textarea:focus{box-shadow:0 0 0 2px #cba96b59}.section-card{background:var(--bg-paper-alt);border-radius:20px;border:1px solid var(--border-soft);padding:1rem 1.15rem 1.2rem;position:relative;overflow:hidden}.section-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at top left,rgba(139,181,154,.18),transparent 55%);opacity:.9;mix-blend-mode:soft-light}.section-card>*{position:relative;z-index:1}.poster{text-align:center;padding:2rem 1.2rem}.poster-title{font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.06em;font-size:1.4rem;color:var(--text-main)}.poster-divider{width:90px;height:2px;margin:.6rem auto 1rem;background:#0000001f}.poster-names{font-family:Playfair Display,serif;font-size:1rem;color:var(--text-soft);letter-spacing:.04em;margin-top:13rem}.poster-announce{font-family:Playfair Display,serif;font-size:1.1rem;margin:.3rem 0 .8rem;color:var(--text-main);letter-spacing:.04em}.poster-date{font-size:.95rem;color:var(--text-main);margin-bottom:.3rem}.poster-location{font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-main);font-size:.95rem}.poster-subtitle{margin-top:.6rem;font-size:.85rem;color:var(--text-soft)}.poster-intro-names{font-family:Playfair Display,serif;font-size:1rem;color:var(--text-main);margin-top:.4rem;letter-spacing:.03em}.poster-paragraph{font-size:.95rem;color:var(--text-soft);margin:.5rem auto 1.2rem;line-height:1.5}.poster-bigdate{font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.08em;font-size:1.25rem;color:var(--text-main);margin:.3rem 0 .6rem}.poster-time{font-size:.95rem;color:var(--text-main);margin-bottom:.2rem}.poster-venue{font-family:Playfair Display,serif;font-size:1rem;color:var(--text-main)}.poster-address{text-transform:uppercase;letter-spacing:.05em;font-size:.9rem;color:var(--text-main);margin:.2rem 0 .9rem}.poster-note{font-size:.9rem;color:var(--text-main);margin:.6rem 0}.poster-dresscode{margin-top:.8rem;font-size:.95rem;color:var(--text-main)}.poster-lead{font-family:Playfair Display,serif;font-size:1rem;color:var(--text-main);line-height:1.45;margin:.4rem 0 .8rem}.poster-location.strong{font-weight:800}.poster-after{margin:.8rem 0 .4rem;font-size:.95rem;color:var(--text-main)}.poster-venue-strong{font-family:Playfair Display,serif;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:var(--text-main);font-size:1rem;margin-bottom:.2rem}.ceremony-hebrew-top{font-size:1.3rem;font-weight:600;color:var(--text-main);margin:1rem 0 1.5rem;line-height:1.6;letter-spacing:.02em}.ceremony-families{display:flex;gap:.3rem;justify-items:center;margin-bottom:1.2rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;font-size:.88rem;color:var(--text-main);line-height:1.5;justify-content:space-between;padding-left:10%;padding-right:10%}.ceremony-intro{font-size:.95rem;color:var(--text-main);margin:1rem 0 1.2rem;line-height:1.5}.ceremony-names{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;justify-items:center;align-items:center;margin:.6rem 0 .4rem}.ceremony-name{font-family:Playfair Display,serif;font-size:1.15rem;letter-spacing:.08em;font-weight:600}.ceremony-names-hebrew{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;justify-items:center;font-weight:700;font-size:1.4rem;margin-bottom:1.5rem;line-height:1.6}.poster-title-blue{font-family:Playfair Display,serif;text-transform:none;font-size:1.5rem;color:#6b7fd7;text-decoration:underline;margin-bottom:1.5rem}.shabbat-title{font-family:Playfair Display,serif;font-size:1.8rem;color:#e8c5d1;margin-bottom:1.2rem;letter-spacing:.02em}.shabbat-paracha{font-family:Playfair Display,serif;font-size:1.2rem;font-weight:700;color:var(--text-main);margin-bottom:1.2rem}.shabbat-invitation{font-size:.95rem;color:var(--text-main);margin-bottom:1rem;line-height:1.5}.shabbat-venue-name{font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.shabbat-address{font-size:.95rem;color:var(--text-main);margin-bottom:.3rem}.shabbat-date{font-size:1.05rem;font-weight:600;margin:1.2rem 0 .6rem}.shabbat-event-description{font-size:.95rem;color:var(--text-main);margin-bottom:.8rem;line-height:1.5}.address-link{text-decoration:none;color:inherit;display:inline-block;transition:transform .2s ease,opacity .2s ease;cursor:pointer;position:relative}.address-link:hover{transform:translateY(-2px);opacity:.8}.address-link:hover .poster-address,.address-link:hover .shabbat-address,.address-link:hover .poster-location{color:var(--accent-strong)}.address-link:after{content:"📍";margin-left:.4rem;font-size:.9em;opacity:0;transition:opacity .2s ease}.address-link:hover:after{opacity:1}.section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.4rem}.section-name{font-family:Playfair Display,serif;font-size:1.05rem;color:var(--text-main)}.section-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;padding:.25rem .7rem;border-radius:999px;background:#8bb59a14;color:var(--green-dark)}.section-details{font-size:.86rem;color:var(--text-soft);margin-bottom:.8rem}.field-group{margin-top:.55rem;display:flex;flex-direction:column;gap:.5rem}.field-label{font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;color:var(--text-soft);text-align:center}.radio-row{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center}.radio-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .8rem;border-radius:999px;border:1px solid rgba(139,181,154,.6);background:#fdf8eef2;font-size:.86rem;cursor:pointer;transition:background .15s ease-out,transform .08s ease-out,box-shadow .12s ease-out}.radio-pill input{accent-color:var(--green)}.radio-pill:hover{background:#8bb59a12;transform:translateY(-1px);box-shadow:0 6px 16px #8bb59a33}.number-input-row{display:flex;align-items:center;gap:.6rem;font-size:.85rem;justify-content:center}.number-input-row input{width:86px;padding:.4rem .65rem;border-radius:999px;border:1px solid rgba(227,213,195,1);background:#fdf8eef5;font-size:.86rem;outline:none}.number-input-row input:focus{box-shadow:0 0 0 2px #cba96b59}.rsvp-group{display:grid;grid-template-columns:1fr;gap:1rem}.rsvp-row{background:var(--bg-paper-alt);border:1px solid var(--border-soft);border-radius:16px;padding:.9rem 1rem}.rsvp-row-title{font-family:Playfair Display,serif;text-align:center;text-transform:uppercase;letter-spacing:.06em;font-size:1rem;color:var(--text-main);margin-bottom:.6rem}.submit-row{display:flex;flex-direction:column;gap:.65rem;margin-top:1.3rem}.btn-submit{border:none;border-radius:999px;padding:.7rem 1.6rem;font-size:.95rem;font-weight:500;cursor:pointer;background:linear-gradient(135deg,var(--accent),var(--accent-strong));color:#fff;box-shadow:0 14px 32px #b18a4659;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;transition:transform .1s ease-out,box-shadow .1s ease-out,filter .1s ease-out}.btn-submit:hover{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 18px 38px #b18a4673}.btn-submit:active{transform:translateY(0);box-shadow:0 11px 26px #b18a464d}.btn-submit[disabled]{opacity:.7;cursor:default;box-shadow:none;transform:none}.submit-helper{font-size:.8rem;color:var(--text-soft)}.status{font-size:.86rem;padding:.5rem .8rem;border-radius:999px;display:inline-flex;align-items:center;gap:.4rem}.status-success{background:#8bb59a24;color:var(--green-dark)}.status-error{background:#d6675f1f;color:#b14f45}.status span.icon{font-size:1rem}.section-subtitle-center{font-family:Playfair Display,serif;font-size:1.3rem;color:var(--text-main);margin:.5rem 0 1.5rem;text-align:center}.hotels-grid{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-top:1.5rem}@media(min-width:768px){.hotels-grid{grid-template-columns:repeat(2,1fr)}}.hotel-card{background:var(--bg-paper-alt);border-radius:20px;border:1px solid var(--border-soft);overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.hotel-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #a3998540}.hotel-image-placeholder{width:100%;height:200px;background:linear-gradient(135deg,#cba96b26,#8bb59a26);display:flex;align-items:center;justify-content:center}.hotel-image-placeholder img{width:100%;height:100%;object-fit:cover}.hotel-info{padding:1.2rem 1rem 1.3rem;text-align:center}.hotel-name{font-family:Playfair Display,serif;font-size:1.1rem;color:var(--text-main);margin:0 0 .6rem;font-weight:600}.hotel-address{font-size:.88rem;color:var(--text-soft);margin:.2rem 0;line-height:1.4}.btn-reserve{display:inline-block;margin-top:.8rem;padding:.5rem 1.2rem;border-radius:999px;background:transparent;color:var(--accent-strong);text-decoration:underline;font-size:.9rem;font-weight:500;transition:color .2s ease,background .2s ease}.btn-reserve:hover{background:#cba96b1a;color:var(--accent)}.section-header-center{text-align:center;margin-bottom:.6rem}.section-header-center .section-title{display:inline-flex}.info-content{display:flex;flex-direction:column;gap:2rem;margin-top:2rem}.info-item{display:flex;align-items:flex-start;gap:1.2rem;padding:1.2rem;background:var(--bg-paper-alt);border-radius:16px;border:1px solid var(--border-soft);transition:transform .2s ease,box-shadow .2s ease}.info-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px #a3998533}.info-icon{font-size:2rem;min-width:2.5rem;text-align:center;line-height:1}.info-text{flex:1;font-size:.95rem;line-height:1.6;color:var(--text-main);margin:0;padding-top:.3rem}@media(min-width:768px){.info-content{gap:2.5rem}.info-item{padding:1.5rem 1.8rem}.info-icon{font-size:2.5rem;min-width:3rem}.info-text{font-size:1rem}}footer{text-align:center;font-size:.8rem;padding:1.4rem 1rem .4rem;color:var(--text-soft)}.name-highlight{font-weight:500;color:var(--accent-strong)}.music-toggle{position:fixed;bottom:1.5rem;left:1.5rem;width:3.5rem;height:3.5rem;border-radius:50%;background:var(--bg-paper);border:2px solid var(--border-soft);color:var(--text-main);font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #a399854d;transition:all .3s ease;z-index:1000}.music-toggle:hover{transform:scale(1.1);box-shadow:0 6px 20px #a3998566;background:var(--bg-paper-alt)}.music-toggle:active{transform:scale(.95)}@media(max-width:768px){.music-toggle{bottom:1rem;left:1rem;width:3rem;height:3rem;font-size:1rem}}
