@import url('https://fonts.googleapis.com/css2?family=Alex+Brush&family=Cormorant+Garamond:ital,wght@0,500;0,600;1,500&family=Jost:wght@300;400;500;600&display=swap');
:root{--night:#0c1311;--deep:#16251f;--pine:#1d3229;--moss:#49604f;--sage:#92a491;--cream:#f4efe5;--mist:#bac4bf;--gold:#d0a060;--gold2:#edcc97;--line:rgba(244,239,229,.14);--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Jost,sans-serif;background:var(--night);color:var(--cream);line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}h1,h2,h3{font-family:'Cormorant Garamond',serif;line-height:1.05;margin:0}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.eyebrow{display:block;font-size:.72rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold2);margin-bottom:12px}.title{font-size:clamp(2.6rem,5vw,4.7rem)}.copy{color:var(--mist);max-width:720px}.script{font-family:'Alex Brush',cursive}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 22px;border:1px solid var(--gold);font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;transition:.25s;background:transparent}.btn.primary{background:var(--gold);color:var(--night)}.btn:hover{background:var(--gold2);color:var(--night);transform:translateY(-2px)}
.site-header{position:sticky;top:0;z-index:40;background:rgba(10,17,15,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav{min-height:78px;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:10px;margin-right:auto;font-family:'Cormorant Garamond';letter-spacing:.08em}.brand img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid rgba(208,160,96,.45)}.navlinks{display:flex;gap:18px;align-items:center;font-size:.77rem;letter-spacing:.04em}.navlinks a{padding:8px 0}.navlinks a:hover,.navlinks a.active{color:var(--gold2)}.menu{display:none;background:none;border:1px solid var(--line);color:var(--cream);padding:8px 11px}.nav-cta{white-space:nowrap}
.hero{position:relative;min-height:100svh;overflow:hidden;isolation:isolate}.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:saturate(.82) brightness(.7) contrast(1.04);z-index:0}.hero-shade{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(6,14,12,.72),rgba(6,14,12,.25) 48%,rgba(6,14,12,.08) 72%,rgba(6,14,12,.18)),linear-gradient(to top,rgba(7,12,11,.45),transparent 45%);pointer-events:none}.hero canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero #fog{z-index:2}.hero #rain{z-index:3}.reflection{position:absolute;inset:0;z-index:4;pointer-events:none;mix-blend-mode:screen;background:linear-gradient(108deg,transparent 0 15%,rgba(255,255,255,.04) 20%,transparent 29%),linear-gradient(102deg,transparent 61%,rgba(255,255,255,.025) 70%,transparent 78%)}.hero-nav{position:relative;z-index:8;display:flex;align-items:center;gap:24px;padding:24px 3.5vw;text-shadow:0 2px 10px rgba(0,0,0,.58)}.hero-brand{min-width:270px}.hero-brand .script{font-size:clamp(28px,2.5vw,42px);color:#ead7a8;line-height:1}.hero-brand small{display:block;font-size:11px;letter-spacing:.24em;margin-top:6px}.hero-links{display:flex;justify-content:center;gap:clamp(12px,1.7vw,26px);flex:1;font-size:clamp(10px,.85vw,14px)}.hero-links a{padding-bottom:7px;border-bottom:1px solid transparent}.hero-links a:hover{color:var(--gold2);border-color:var(--gold2)}.hero-copy{position:relative;z-index:7;max-width:650px;margin:12vh 0 110px 6.5vw;text-shadow:0 2px 16px rgba(0,0,0,.67)}.hero-copy h1{font-size:clamp(3.3rem,5.5vw,5.7rem);font-weight:500;letter-spacing:.03em}.hero-copy .script{font-size:clamp(3rem,5vw,5rem);color:#f3eee4;margin:0 0 8px 6vw}.ornament{color:var(--gold2);font-size:24px;margin:8px 0 20px 11vw}.hero-copy h2{font-family:'Cormorant Garamond';font-size:clamp(1.1rem,1.4vw,1.5rem);letter-spacing:.05em;margin-bottom:16px}.hero-copy p{font-family:'Cormorant Garamond';font-size:clamp(1.08rem,1.4vw,1.35rem);max-width:540px}.hero-bottom{position:absolute;z-index:7;bottom:3vh;left:50%;transform:translateX(-50%);font-size:.72rem;letter-spacing:.1em;text-align:center;animation:pulse 2.6s ease-in-out infinite}.hero-bottom b{display:block;font-size:24px}.sound{position:absolute;z-index:7;right:3vw;bottom:3vh;background:none;border:0;color:var(--cream);cursor:pointer}.hero-menu{display:none}
.page-hero{min-height:48vh;display:grid;align-items:end;padding:120px 0 70px;background:linear-gradient(rgba(7,12,11,.55),rgba(7,12,11,.88)),var(--bg) center/cover}.page-hero p{max-width:650px;color:#e0e5e1;font-size:1.05rem}.section{padding:96px 0}.section.deep{background:var(--deep)}.section.light{background:#eee8dd;color:#17221e}.section.light .copy{color:#59665f}.grid{display:grid;gap:24px}.cards{grid-template-columns:repeat(3,1fr);margin-top:38px}.card{background:#192a24;border:1px solid var(--line);padding:28px;transition:.25s}.card:hover{transform:translateY(-4px);border-color:rgba(208,160,96,.65)}.card h3{font-size:1.8rem}.card .price{font:2rem 'Cormorant Garamond';color:var(--gold2);margin:9px 0}.card p{color:var(--mist)}.tag{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin-top:16px}.feature-grid{grid-template-columns:1.1fr .9fr;align-items:center}.photo-frame{overflow:hidden;border:1px solid rgba(208,160,96,.3);box-shadow:0 25px 70px rgba(0,0,0,.28)}.photo-frame img{width:100%;height:560px;object-fit:cover}.story-grid{grid-template-columns:1fr 1fr;margin-top:40px}.story-card{position:relative;overflow:hidden;min-height:520px}.story-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.5s}.story-card:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(5,9,8,.88))}.story-card:hover img{transform:scale(1.025)}.story-card div{position:absolute;z-index:2;left:24px;right:24px;bottom:22px}.story-card h3{font-size:2rem}.story-card p{margin:5px 0 0;color:#dfe4e0}.quote{border-left:1px solid var(--gold);padding:12px 0 12px 24px;font:italic 1.5rem 'Cormorant Garamond';color:#e6ded1}.review-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.review{padding:25px;border:1px solid var(--line);background:#14201c}.review p{color:var(--mist)}.review strong{font-family:'Cormorant Garamond';font-size:1.2rem;color:var(--gold2)}.accordion details{border-bottom:1px solid var(--line);padding:18px 0}.accordion summary{cursor:pointer;font:1.4rem 'Cormorant Garamond';list-style:none}.accordion summary:after{content:'+';float:right;color:var(--gold2)}.accordion details[open] summary:after{content:'–'}.accordion p{color:var(--mist)}.bucket-grid{grid-template-columns:repeat(3,1fr);margin-top:36px}.bucket-card{min-height:250px;border:1px solid var(--line);padding:24px;background:linear-gradient(145deg,#1d3028,#14211c);display:flex;flex-direction:column}.bucket-card .status{margin-top:auto;color:var(--gold2);font-size:.72rem;letter-spacing:.13em}.special{background:radial-gradient(circle at 80% 20%,rgba(208,160,96,.11),transparent 30%),#111b18}.gnome{border:1px solid rgba(208,160,96,.5);background:linear-gradient(145deg,#24382f,#16251f)}.cta{text-align:center;padding:95px 20px;background:linear-gradient(rgba(7,12,11,.78),rgba(7,12,11,.9)),url('../images/warm-ring-exchange.jpg') center/cover}.cta h2{font-size:clamp(3rem,6vw,5.6rem)}.cta .script{font-size:clamp(2.2rem,4vw,3.8rem);color:var(--gold2)}footer{padding:50px 0 25px;background:#080d0c}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px}.footer-grid p,.footer-grid a{color:#aeb7b2;font-size:.88rem}.footer-links{display:grid;gap:7px}.bottom{border-top:1px solid var(--line);margin-top:30px;padding-top:18px;color:#6f7a75;font-size:.76rem;display:flex;justify-content:space-between}
@media(max-width:980px){.navlinks{display:none}.menu{display:block}.navlinks.open{display:flex;position:absolute;top:78px;left:0;right:0;background:#0c1512;padding:20px;flex-direction:column;align-items:flex-start}.nav-cta{display:none}.hero-links{display:none}.hero-menu{display:inline-flex}.hero-brand{margin-right:auto}.cards,.bucket-grid,.review-row{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr}.photo-frame img{height:480px}.footer-grid{grid-template-columns:1fr}.story-grid{grid-template-columns:1fr}.hero-copy{margin-top:15vh}}
@media(max-width:620px){.wrap{width:min(var(--max),calc(100% - 28px))}.section{padding:72px 0}.cards,.bucket-grid,.review-row{grid-template-columns:1fr}.hero-nav{padding:18px}.hero-brand{min-width:0}.hero-brand .script{font-size:25px}.hero-copy{margin:18vh 22px 120px}.hero-copy .script{margin-left:8px}.ornament{margin-left:70px}.hero-copy p{max-width:90%}.sound{font-size:11px}.photo-frame img{height:430px}.page-hero{min-height:52vh}.story-card{min-height:430px}.bottom{display:block}.bottom span{display:block;margin-top:5px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.hero-bottom{animation:none}.card,.story-card img,.btn{transition:none}}

/* === Restored original Rain & Vows content === */
.addons,.places,.bucketlist,.partners,.faq{padding:clamp(68px,8vw,118px) 0}
.addons,.bucketlist,.faq{background:#f3eee5;color:#24302b}
.places{background:#17231f;color:#f4efe5}
.partners{background:#efe5d3;color:#24302b}
.addon-grid,.partner-grid,.bucket-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:28px}
.addon,.partner,.bucket-columns>div,.place{padding:18px;border:1px solid rgba(148,104,56,.18);border-radius:14px;background:rgba(255,255,255,.42)}
.addon{display:flex;gap:14px;align-items:flex-start}.addon strong{white-space:nowrap;color:#946838}
.place-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:42px}.place-list{display:grid;gap:12px}.place{background:rgba(255,255,255,.055);border-color:rgba(255,255,255,.12)}.place span{display:block;opacity:.78;margin-top:5px}
.bucket-intro{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px}.bucket-offer{padding:30px;border:1px solid rgba(148,104,56,.25);border-radius:20px;background:rgba(255,255,255,.5);align-self:start;position:sticky;top:100px}.discount{font-family:Georgia,serif;font-size:clamp(3rem,7vw,6rem);line-height:.95;color:#946838;margin:10px 0}.bucket-note{font-size:.82rem;opacity:.72;margin-top:18px}.bucket-columns .done{border-color:#946838;background:rgba(148,104,56,.12)}.bucket-columns .done::before{content:"✓ ";color:#946838;font-weight:700}
.partner .type{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:#946838}.partner h3{margin:8px 0 0}.partner p{opacity:.72}
.faq-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:42px}.faq details{border-bottom:1px solid rgba(36,48,43,.18);padding:18px 0}.faq summary{cursor:pointer;font-family:Georgia,serif;font-size:1.08rem}.faq details p{opacity:.75;line-height:1.7}
@media(max-width:800px){.place-grid,.bucket-intro,.faq-grid{grid-template-columns:1fr}.bucket-offer{position:static}}


/* === Rain & Vows master revision === */
.rv-section{padding:72px 0}
.rv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
.rv-card,.rv-details{border:1px solid rgba(255,255,255,.13);border-radius:22px;background:rgba(255,255,255,.055);padding:22px}
.rv-details summary{cursor:pointer;font-family:var(--serif,Georgia,serif);font-size:1.18rem;list-style:none}
.rv-details summary::-webkit-details-marker{display:none}
.rv-details[open]{background:rgba(255,255,255,.085)}
.rv-price{font-size:.86rem;letter-spacing:.08em;text-transform:uppercase;opacity:.8}
.rv-small{font-size:.93rem;opacity:.82}
.rv-cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}
.rv-button{display:inline-block;border:1px solid rgba(255,255,255,.38);border-radius:999px;padding:12px 18px;text-decoration:none;color:inherit;background:rgba(255,255,255,.06)}
.rv-button:hover{background:rgba(255,255,255,.13)}
.rv-quiz label,.rv-builder label{display:block;margin:9px 0}
.rv-result{margin-top:18px;padding:18px;border-radius:18px;background:rgba(255,255,255,.08);display:none}
.rv-calendar-box input,.rv-calendar-box select{width:100%;max-width:420px;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.18);color:inherit;margin:6px 0 12px}
.rv-status{margin-top:16px;padding:18px;border-radius:18px;background:rgba(255,255,255,.08)}
.rv-family-full img{width:100%;height:auto!important;object-fit:contain!important;object-position:center!important;border-radius:24px}
.rv-eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;opacity:.72}
.rv-note{border-left:2px solid rgba(255,255,255,.3);padding-left:16px}
@media (hover:hover){.rv-details:not([open]):hover{transform:translateY(-2px);background:rgba(255,255,255,.085);transition:.2s ease}}

/* === FULL REVIEW ENHANCEMENTS === */
.rv-step{display:none}.rv-step.active{display:block}
.rv-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:16px 0}
.rv-choice{display:block;border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:14px;cursor:pointer;background:rgba(255,255,255,.045)}
.rv-choice:has(input:checked){background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.38)}
.rv-choice input{margin-right:8px}
.rv-pill{display:inline-block;border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:6px 10px;margin:4px 4px 0 0;font-size:.83rem}
.rv-location-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.rv-location{position:relative;overflow:hidden;min-height:220px;display:flex;align-items:flex-end;padding:18px;border-radius:22px;background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.14)}
.rv-location:before{content:"";position:absolute;inset:0;background:linear-gradient(transparent,rgba(0,0,0,.78))}
.rv-location>div{position:relative;z-index:1}
.rv-location h3{margin:0 0 6px}
.rv-surprise{font-size:1.08rem;line-height:1.6}
.rv-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.rv-field label{display:block;font-size:.84rem;letter-spacing:.04em;margin-bottom:6px}
.rv-field input,.rv-field select,.rv-field textarea{width:100%;box-sizing:border-box;padding:12px 13px;border-radius:12px;border:1px solid rgba(255,255,255,.23);background:rgba(0,0,0,.2);color:inherit}
.rv-field textarea{min-height:100px;resize:vertical}
.rv-banner{padding:13px 16px;border-radius:15px;background:rgba(255,255,255,.075);margin:12px 0}
.rv-availability-key{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 18px}
.rv-availability-key span{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.07);font-size:.8rem}
.rv-source{font-size:.78rem;opacity:.7}
.rv-person-card{display:grid;grid-template-columns:minmax(160px,.45fr) 1fr;gap:24px;align-items:center}
@media(max-width:700px){.rv-person-card{grid-template-columns:1fr}}
.rv-review-nav{position:sticky;top:0;z-index:9999;background:#18201c;color:#f4eee7;padding:10px;display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid rgba(255,255,255,.15)}
.rv-review-nav button{white-space:nowrap;border:1px solid rgba(255,255,255,.18);background:transparent;color:inherit;border-radius:999px;padding:8px 12px;cursor:pointer}
.rv-review-nav button.active{background:rgba(255,255,255,.14)}
.rv-review-page{display:none}.rv-review-page.active{display:block}


/* === FINAL CLEANUP: static nature backgrounds + cream planning cards === */
.partners{background:#f3eee5!important;color:#24302b!important}
.partner{background:#f7f0e6!important;color:#24302b!important;border:1px solid rgba(148,104,56,.24)!important}
.partner .type{color:#946838!important}
.partner p{color:#59665f!important}
.page-hero{background:linear-gradient(rgba(7,12,11,.66),rgba(7,12,11,.86)),var(--bg) center/cover!important}
.justino-photo img{width:100%;height:auto;display:block;border-radius:18px}
.builder-grid .card{background:#f7f0e6;color:#24302b;border-color:rgba(148,104,56,.22)}
.builder-grid .card:hover{transform:none;border-color:rgba(148,104,56,.45)}
.builder-grid .rv-choice{cursor:pointer}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

/* === SIGNATURE RAIN WINDOW RESTORE === */
.hero,.opening,.hero-stage{position:relative;overflow:hidden}
.rain-window-overlay{position:absolute;inset:0;z-index:2;pointer-events:none}
.rain-window-overlay canvas,#rain-canvas{width:100%;height:100%;display:block}
.hero-content,.hero-copy,.hero-links{position:relative;z-index:3}

/* === TEAM FEATURE === */
.rv-team-feature{display:grid;grid-template-columns:minmax(220px,340px) 1fr;gap:34px;align-items:center;max-width:920px}.rv-team-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 28%;border-radius:22px}.rv-team-copy{background:#f7f0e6;color:#24302b;border:1px solid rgba(148,104,56,.22);border-radius:22px;padding:28px}@media(max-width:720px){.rv-team-feature{grid-template-columns:1fr}.rv-team-photo{max-width:360px;margin:auto}}

/* === FINAL LAUNCH POLISH === */
.rv-off-duty{margin:20px 0;padding:16px 18px;border-left:2px solid #946838;background:rgba(148,104,56,.07);border-radius:0 14px 14px 0}.rv-off-duty strong{font-family:Georgia,serif;font-size:1.05rem}.rv-off-duty p{margin:.45rem 0 0;line-height:1.65}.rv-weather-note{max-width:820px;margin-top:22px;padding:20px 22px;border:1px solid rgba(148,104,56,.25);border-radius:18px;background:rgba(148,104,56,.08);line-height:1.65}.rv-final-cta{text-align:center;padding:68px 20px;background:#efe7dc;color:#24302b}.rv-final-cta h2{font-family:Georgia,serif;font-size:clamp(2rem,5vw,3.5rem);margin:.35em 0}.rv-final-cta p{max-width:620px;margin:0 auto 22px}.footer-social{margin-top:22px}.footer-social a{color:inherit;text-underline-offset:4px}
/* === TRUE FOGGED WINDOW + FINGER HEART === */
.hero{position:relative;overflow:hidden;isolation:isolate}.hero-bg{z-index:0!important;filter:saturate(.72) brightness(.64) contrast(1.02)!important}.hero-shade{z-index:1!important}.rv-fog-window{position:absolute;inset:0;z-index:2;pointer-events:none}#rv-fog-layer,#rv-rain-layer{position:absolute;inset:0;width:100%;height:100%;display:block}#rv-fog-layer{z-index:1}#rv-rain-layer{z-index:2}.reflection{z-index:3!important}.hero-nav,.hero-copy,.hero-bottom{z-index:5!important}.rv-rain-sound{position:absolute;right:18px;bottom:18px;z-index:6;border:1px solid rgba(255,255,255,.48);background:rgba(14,26,23,.58);backdrop-filter:blur(9px);color:#fff;border-radius:999px;padding:10px 15px;font:inherit;font-size:.82rem;cursor:pointer}.rv-rain-sound:hover,.rv-rain-sound:focus-visible{background:rgba(14,26,23,.78)}@media(prefers-reduced-motion:reduce){#rv-rain-layer{display:none}.rv-fog-window{opacity:.9}}

.rv-onp-photo-pair{display:grid;grid-template-columns:1.15fr .85fr;gap:14px;margin:30px 0 8px}.rv-onp-photo-pair figure{margin:0;overflow:hidden;border-radius:18px;min-height:300px}.rv-onp-photo-pair img{width:100%;height:100%;min-height:300px;max-height:470px;object-fit:cover}.rv-new-real-gallery{margin-top:30px}.rv-new-real-gallery figure{border-radius:14px}@media(max-width:720px){.rv-onp-photo-pair{grid-template-columns:1fr}.rv-onp-photo-pair figure,.rv-onp-photo-pair img{min-height:240px;max-height:420px}}
