@font-face{font-family:__Great_Vibes_b7915e;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/dad5af6a451969b9-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Great_Vibes_b7915e;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f751862dd005bbab-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Great_Vibes_b7915e;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/162bae04ee86dd69-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Great_Vibes_b7915e;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/67d172d8d0152ee1-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Great_Vibes_b7915e;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/536d9d896eaf4f3f-s.p.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Great_Vibes_b7915e;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/87069f06a4f1ee13-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Great_Vibes_Fallback_b7915e;src:local("Arial");ascent-override:119.68%;descent-override:56.39%;line-gap-override:0.00%;size-adjust:71.11%}.__className_b7915e{font-family:__Great_Vibes_b7915e,__Great_Vibes_Fallback_b7915e;font-weight:400;font-style:normal}.__variable_b7915e{--font-great-vibes:"__Great_Vibes_b7915e","__Great_Vibes_Fallback_b7915e"}@font-face{font-family:__Playfair_Display_a12522;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/47f136985ef5b5cb-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Playfair_Display_a12522;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/4ead58c4dcc3f285-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Playfair_Display_a12522;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/28a2004cf8372660-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Playfair_Display_a12522;font-style:normal;font-weight:400 900;font-display:swap;src:url(/_next/static/media/eaead17c7dbfcd5d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Playfair_Display_Fallback_a12522;src:local("Times New Roman");ascent-override:97.25%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:111.26%}.__className_a12522{font-family:__Playfair_Display_a12522,__Playfair_Display_Fallback_a12522;font-style:normal}.__variable_a12522{--font-playfair:"__Playfair_Display_a12522","__Playfair_Display_Fallback_a12522"}@font-face{font-family:__Cormorant_Garamond_c1b57c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/5df2c4de2f58cfb3-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Cormorant_Garamond_c1b57c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/12a1dde4187545ae-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Cormorant_Garamond_c1b57c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/74310ce3beca545c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Cormorant_Garamond_c1b57c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e78433f876ea8e1e-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Cormorant_Garamond_c1b57c;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/1ecca39927ee9e6f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Cormorant_Garamond_Fallback_c1b57c;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_c1b57c{font-family:__Cormorant_Garamond_c1b57c,__Cormorant_Garamond_Fallback_c1b57c;font-weight:400;font-style:normal}.__variable_c1b57c{--font-cormorant:"__Cormorant_Garamond_c1b57c","__Cormorant_Garamond_Fallback_c1b57c"}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/03b436aa846269de-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/0086f8992871c45b-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/ab00a911ac2adf48-s.woff2) format("woff2");unicode-range:u+0302-0303,u+0305,u+0307-0308,u+0310,u+0312,u+0315,u+031a,u+0326-0327,u+032c,u+032f-0330,u+0332-0333,u+0338,u+033a,u+0346,u+034d,u+0391-03a1,u+03a3-03a9,u+03b1-03c9,u+03d1,u+03d5-03d6,u+03f0-03f1,u+03f4-03f5,u+2016-2017,u+2034-2038,u+203c,u+2040,u+2043,u+2047,u+2050,u+2057,u+205f,u+2070-2071,u+2074-208e,u+2090-209c,u+20d0-20dc,u+20e1,u+20e5-20ef,u+2100-2112,u+2114-2115,u+2117-2121,u+2123-214f,u+2190,u+2192,u+2194-21ae,u+21b0-21e5,u+21f1-21f2,u+21f4-2211,u+2213-2214,u+2216-22ff,u+2308-230b,u+2310,u+2319,u+231c-2321,u+2336-237a,u+237c,u+2395,u+239b-23b7,u+23d0,u+23dc-23e1,u+2474-2475,u+25af,u+25b3,u+25b7,u+25bd,u+25c1,u+25ca,u+25cc,u+25fb,u+266d-266f,u+27c0-27ff,u+2900-2aff,u+2b0e-2b11,u+2b30-2b4c,u+2bfe,u+3030,u+ff5b,u+ff5d,u+1d400-1d7ff,u+1ee??}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/36008747766f78c6-s.woff2) format("woff2");unicode-range:u+0001-000c,u+000e-001f,u+007f-009f,u+20dd-20e0,u+20e2-20e4,u+2150-218f,u+2190,u+2192,u+2194-2199,u+21af,u+21e6-21f0,u+21f3,u+2218-2219,u+2299,u+22c4-22c6,u+2300-243f,u+2440-244a,u+2460-24ff,u+25a0-27bf,u+28??,u+2921-2922,u+2981,u+29bf,u+29eb,u+2b??,u+4dc0-4dff,u+fff9-fffb,u+10140-1018e,u+10190-1019c,u+101a0,u+101d0-101fd,u+102e0-102fb,u+10e60-10e7e,u+1d2c0-1d2d3,u+1d2e0-1d37f,u+1f0??,u+1f100-1f1ad,u+1f1e6-1f1ff,u+1f30d-1f30f,u+1f315,u+1f31c,u+1f31e,u+1f320-1f32c,u+1f336,u+1f378,u+1f37d,u+1f382,u+1f393-1f39f,u+1f3a7-1f3a8,u+1f3ac-1f3af,u+1f3c2,u+1f3c4-1f3c6,u+1f3ca-1f3ce,u+1f3d4-1f3e0,u+1f3ed,u+1f3f1-1f3f3,u+1f3f5-1f3f7,u+1f408,u+1f415,u+1f41f,u+1f426,u+1f43f,u+1f441-1f442,u+1f444,u+1f446-1f449,u+1f44c-1f44e,u+1f453,u+1f46a,u+1f47d,u+1f4a3,u+1f4b0,u+1f4b3,u+1f4b9,u+1f4bb,u+1f4bf,u+1f4c8-1f4cb,u+1f4d6,u+1f4da,u+1f4df,u+1f4e3-1f4e6,u+1f4ea-1f4ed,u+1f4f7,u+1f4f9-1f4fb,u+1f4fd-1f4fe,u+1f503,u+1f507-1f50b,u+1f50d,u+1f512-1f513,u+1f53e-1f54a,u+1f54f-1f5fa,u+1f610,u+1f650-1f67f,u+1f687,u+1f68d,u+1f691,u+1f694,u+1f698,u+1f6ad,u+1f6b2,u+1f6b9-1f6ba,u+1f6bc,u+1f6c6-1f6cf,u+1f6d3-1f6d7,u+1f6e0-1f6ea,u+1f6f0-1f6f3,u+1f6f7-1f6fc,u+1f7??,u+1f800-1f80b,u+1f810-1f847,u+1f850-1f859,u+1f860-1f887,u+1f890-1f8ad,u+1f8b0-1f8bb,u+1f8c0-1f8c1,u+1f900-1f90b,u+1f93b,u+1f946,u+1f984,u+1f996,u+1f9e9,u+1fa00-1fa6f,u+1fa70-1fa7c,u+1fa80-1fa89,u+1fa8f-1fac6,u+1face-1fadc,u+1fadf-1fae9,u+1faf0-1faf8,u+1fb??}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/6d38f9d4e0f4772b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/08aedeceaf1dcd57-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Lora_e81ffc;font-style:normal;font-weight:400 700;font-display:swap;src:url(/_next/static/media/5c0c2bcbaa4149ca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Lora_Fallback_e81ffc;src:local("Times New Roman");ascent-override:87.33%;descent-override:23.78%;line-gap-override:0.00%;size-adjust:115.20%}.__className_e81ffc{font-family:__Lora_e81ffc,__Lora_Fallback_e81ffc;font-style:normal}.__variable_e81ffc{--font-lora:"__Lora_e81ffc","__Lora_Fallback_e81ffc"}:root{--bg-primary:#fff;--bg-secondary:#f2f5ee;--bg-green-soft:#e8edd8;--color-green:#4a5633;--color-green-light:#8a9b6e;--color-pink:#f8dbe1;--color-text:#2c2c2c;--color-text-muted:#6b6b6b;--border-soft:#dce0d4;--font-script:var(--font-great-vibes);--font-display:var(--font-playfair);--font-italic:var(--font-cormorant);--font-body:var(--font-lora)}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body),system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg-primary);color:var(--color-text)}img{max-width:100%;display:block}button{font-family:inherit}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.section{padding:80px 0;background:var(--bg-primary)}.section--alt{background:var(--bg-secondary)}.section--green-tint{background:var(--bg-green-soft)}.section-text-center{max-width:640px;margin:0 auto 40px;text-align:center;font-size:1rem;line-height:1.7;color:var(--color-text)}.section-text{max-width:720px;margin-bottom:40px;font-size:1rem;line-height:1.7}.section-meta{font-family:var(--font-italic);font-style:italic;color:var(--color-text-muted);margin:0 0 8px}.section-title{font-family:var(--font-display);letter-spacing:.16em;text-transform:uppercase;font-size:1.4rem;margin:0 0 32px}.script-heading{font-family:var(--font-script);font-size:2.4rem;margin:0 0 24px}.script-heading,.section-title-standalone{color:var(--color-green);text-align:center}.section-title-standalone{font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;font-size:1.25rem;margin:0 0 32px}.section-meta-script{font-family:var(--font-script);font-size:1.9rem;line-height:1;color:var(--color-green-light);text-align:center;margin:0 0 6px}.section-title-main{font-family:var(--font-display);font-weight:500;font-size:clamp(1.7rem,3.5vw,2.4rem);letter-spacing:.06em;color:var(--color-green);text-align:center;margin:0 0 18px}.section-rule{display:block;width:120px;height:1px;margin:0 auto 44px;background:rgba(74,86,51,.35);position:relative}.section-rule:after{content:"";position:absolute;top:50%;left:50%;width:7px;height:7px;background:var(--color-green);transform:translate(-50%,-50%) rotate(45deg)}.section .container,.section .invitation-inner{opacity:0;transform:translateY(28px);transition:opacity .7s ease-out,transform .7s ease-out}.section.section--visible .container,.section.section--visible .invitation-inner{opacity:1;transform:translateY(0)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 32px;border-radius:999px;font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid transparent;cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease,border-color .2s ease}.btn-primary{background-color:var(--color-green);color:#fff;border-color:var(--color-green)}.btn-primary:hover{background-color:#394126;border-color:#394126}.btn-hero{border-radius:999px;transition:transform .25s ease,box-shadow .25s ease}.btn-hero:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(74,86,51,.35)}.btn-map{display:inline-flex;align-items:center;gap:8px;transition:transform .2s ease}.btn-map:hover{transform:translateY(-2px)}.btn-map-icon{font-size:1.1rem}.btn-rsvp{transition:transform .2s ease,box-shadow .2s ease}.btn-rsvp:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(74,86,51,.3)}.btn-outline{background-color:transparent;color:var(--color-green);border-color:var(--color-green)}.btn-outline:hover{background-color:var(--color-green);color:#fff}.btn-full,.hero{width:100%}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:40px 16px 80px;max-width:100vw;color:#fff;text-align:center;overflow:hidden}.hero-overlay{position:absolute;inset:0;background-image:url(/hero-bg.jpg);background-size:cover;background-position:50%;background-repeat:no-repeat}.hero-overlay:after{content:"";position:absolute;inset:0;background:rgba(74,86,51,.35)}.hero-content{position:relative;z-index:1;gap:24px}.hero-content,.hero-names{display:flex;flex-direction:column;align-items:center}.hero-names{gap:4px}.hero-name{font-family:var(--font-script);font-size:clamp(3rem,5vw,4.5rem);line-height:1.1;opacity:0;transform:translateY(30px);animation:hero-name-in .8s ease-out forwards}.hero-name--top{animation-delay:.15s}.hero-amp{font-family:var(--font-script);font-size:clamp(2.4rem,4vw,3.4rem);margin:4px 0;opacity:0;transform:translateY(12px) scale(.95);animation:hero-amp-in .6s ease-out .5s forwards}.hero-name--bottom{animation-delay:.4s}@keyframes hero-name-in{to{opacity:1;transform:translateY(0)}}@keyframes hero-amp-in{to{opacity:1;transform:translateY(0) scale(1)}}.hero-date-wrap{display:flex;align-items:center;justify-content:center;gap:24px;margin:8px 0 0}.hero-date-line{width:40px;height:1px;background:hsla(0,0%,100%,.7)}.hero-date{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-display);font-size:clamp(1.5rem,2.5vw,2rem);letter-spacing:.32em;text-transform:uppercase}.hero-heart{font-size:.85em}.hero-scroll{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);z-index:2;color:hsla(0,0%,100%,.9);animation:hero-scroll-bounce 2s ease-in-out infinite}.hero-scroll-chevron{display:block;width:24px;height:24px;border-right:2px solid;border-bottom:2px solid;transform:rotate(45deg);margin:0 auto}@keyframes hero-scroll-bounce{0%,to{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(8px)}}.main-nav{position:fixed;inset-inline:0;top:0;z-index:20;transform:translateY(-100%);transition:transform .3s ease,box-shadow .2s ease,background-color .2s ease}.main-nav--visible{transform:translateY(0);background:hsla(86,26%,95%,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 4px 16px rgba(74,86,51,.08);border-bottom:1px solid rgba(74,86,51,.15);transition:background .3s ease,box-shadow .3s ease}.nav-inner{display:flex;align-items:center;justify-content:center;padding:10px 24px}.nav-links{display:flex;flex-wrap:nowrap;gap:16px;overflow-x:auto}.nav-link{background:none;padding:8px 6px;font-size:.75rem;letter-spacing:.28em;text-transform:uppercase;font-family:var(--font-body);color:var(--color-text-muted);white-space:nowrap;cursor:pointer;border:none;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.nav-link--active{color:var(--color-green);border-color:var(--color-green)}.invitation-inner{text-align:center;padding-bottom:24px;border-bottom:2px solid rgba(74,86,51,.2)}.invitation-text{max-width:720px;margin:0 auto 32px;font-size:1.15rem;line-height:1.8}.section-heading-script{font-family:var(--font-script);font-size:2.2rem;color:var(--color-green);text-align:center;margin:0 0 20px}.invitation-past{font-family:var(--font-display);font-size:1.5rem;letter-spacing:.12em;color:var(--color-green);margin:24px 0 0}.invitation-countdown-label{font-family:var(--font-italic);color:var(--color-green);margin-bottom:16px;font-size:1rem}.countdown{display:flex;align-items:stretch;justify-content:center;gap:14px;max-width:540px;margin:0 auto}.countdown-item{flex:1 1;padding:20px 12px;min-width:88px;background:var(--bg-primary);border:1px solid var(--border-soft);border-radius:14px;box-shadow:0 10px 28px rgba(74,86,51,.08)}.countdown-value{font-family:var(--font-display);font-size:2.4rem;line-height:1;color:var(--color-green);margin-bottom:8px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.countdown-label{font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--color-text-muted)}.countdown-separator{display:none}.section-label-ribbon{display:inline-block;padding:8px 28px;margin-bottom:32px;background-color:var(--color-pink);transform:rotate(-1deg)}.section-label-ribbon .script-heading{margin:0}.timeline{--node-size:60px;--axis-x:50%;list-style:none;position:relative;max-width:860px;margin:0 auto;padding:0}.timeline-axis{position:absolute;top:8px;bottom:8px;left:var(--axis-x);width:2px;transform:translateX(-50%);background:linear-gradient(180deg,rgba(74,86,51,0),rgba(74,86,51,.4) 12%,rgba(74,86,51,.4) 88%,rgba(74,86,51,0))}.timeline-item{position:relative;display:flex;align-items:center;min-height:var(--node-size);margin-bottom:36px;opacity:0;transform:translateY(24px);transition:opacity .6s ease-out,transform .6s ease-out}.timeline-item:last-child{margin-bottom:0}.section--visible .timeline-item{opacity:1;transform:translateY(0)}.timeline-node{position:absolute;left:var(--axis-x);top:50%;width:var(--node-size);height:var(--node-size);transform:translate(-50%,-50%);border-radius:50%;background:var(--bg-primary);border:1px solid var(--border-soft);box-shadow:0 8px 24px rgba(74,86,51,.12);display:flex;align-items:center;justify-content:center;z-index:2}.section--alt .timeline-node{background:var(--bg-secondary)}.timeline-node-icon{font-size:1.6rem;line-height:1}.timeline-card{position:relative;width:calc(50% - calc(var(--node-size) / 2) - 28px);background:var(--bg-primary);border:1px solid var(--border-soft);border-radius:16px;padding:20px 24px;box-shadow:0 10px 30px rgba(74,86,51,.07);transition:transform .25s ease,box-shadow .25s ease}.timeline-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(74,86,51,.13)}.timeline-item:nth-child(odd){justify-content:flex-start}.timeline-item:nth-child(2n){justify-content:flex-end}.timeline-item:nth-child(odd) .timeline-card{text-align:right}.timeline-card:before{content:"";position:absolute;top:50%;width:12px;height:12px;background:var(--bg-primary);border:1px solid var(--border-soft);transform:translateY(-50%) rotate(45deg)}.timeline-item:nth-child(odd) .timeline-card:before{right:-7px;border-left:none;border-bottom:none}.timeline-item:nth-child(2n) .timeline-card:before{left:-7px;border-right:none;border-top:none}.timeline-time{display:inline-block;font-family:var(--font-display);font-size:1.25rem;letter-spacing:.04em;color:var(--color-green);margin-bottom:4px}.timeline-title{margin:0 0 8px;font-family:var(--font-body);font-weight:600;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text)}.timeline-desc{margin:0;font-size:.92rem;line-height:1.6;color:var(--color-text-muted)}.palette-full{display:flex;justify-content:center;flex-wrap:wrap;gap:24px;margin-bottom:40px}.palette-full-item{display:flex;flex-direction:column;align-items:center;gap:8px;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.palette-full-circle{width:60px;height:60px;border-radius:50%;box-shadow:0 6px 20px rgba(0,0,0,.1),inset 0 0 0 1px rgba(0,0,0,.06);background:#ddd;transition:transform .25s ease}.palette-full-item:hover .palette-full-circle{transform:scale(1.08)}.palette-full-item.palette-item--green-dark .palette-full-circle{background:#4a5633}.palette-full-item.palette-item--green-light .palette-full-circle{background:#8a9b6e}.palette-full-item.palette-item--mint .palette-full-circle{background:#a8c4b8}.palette-full-item.palette-item--pink .palette-full-circle{background:#f8dbe1}.palette-full-item.palette-item--blue .palette-full-circle{background:#c8cbd4}.palette-full-label{font-family:var(--font-italic)}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px;max-width:860px;margin:0 auto}.gallery-item{position:relative;border-radius:18px;background:linear-gradient(135deg,#eef1e8,#e2e8d8);border:1px solid var(--border-soft);height:230px;display:flex;align-items:center;justify-content:center;color:var(--color-green-light);font-size:.78rem;text-transform:uppercase;letter-spacing:.16em}.gallery-icon{position:absolute;top:14px;left:16px;font-size:1.1rem;opacity:.7}.gallery-label{pointer-events:none}.venue-wrap{display:flex;justify-content:center;margin-bottom:40px}.venue-frame{display:inline-block;padding:14px;background:var(--bg-primary);border:1px solid var(--border-soft);border-radius:6px;box-shadow:0 18px 50px rgba(74,86,51,.12)}.venue-photo-tilted{position:relative;width:min(520px,82vw);height:300px;border-radius:4px;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(0,0,0,.04)}.venue-photo-img{width:100%;height:100%;object-fit:cover;display:block}.section-actions{display:flex;justify-content:flex-start}.section-actions--center{justify-content:center}.details-list{display:flex;flex-direction:column;gap:20px;max-width:640px;margin:0 auto}.details-row{display:flex;align-items:flex-start;gap:20px;padding:24px 28px;background:var(--bg-primary);border:1px solid var(--border-soft);border-radius:16px;box-shadow:0 10px 30px rgba(74,86,51,.06);transition:transform .25s ease,box-shadow .25s ease}.details-row:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(74,86,51,.12)}.details-row-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;line-height:1;background:var(--bg-secondary);border-radius:50%}.details-row-content{flex:1 1}.details-row-title{margin:4px 0 8px;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:1rem;color:var(--color-green)}.details-row-text{margin:0;line-height:1.7;font-size:.95rem}.details-accent{font-weight:600}.details-link{color:var(--color-green);text-decoration:none}.details-link:hover{text-decoration:underline}.closing{background:var(--bg-green-soft);border-top:2px solid rgba(74,86,51,.2)}.closing-wave{position:relative;height:32px;margin-top:-48px;margin-bottom:16px;background:linear-gradient(to bottom,var(--bg-primary),var(--bg-green-soft));-webkit-clip-path:ellipse(120% 100% at 50% 0);clip-path:ellipse(120% 100% at 50% 0)}.closing-inner{text-align:center}.closing-script{font-size:2rem;margin:0 0 16px}.closing-names,.closing-script{font-family:var(--font-script);color:var(--color-green)}.closing-names{font-size:2.4rem;margin:0}.section-rsvp{text-align:center}.section-rsvp-inner{display:flex;flex-direction:column;align-items:center}.section-rsvp-divider{width:100%;max-width:280px;border-top:1px solid var(--border-soft);margin-bottom:20px;position:relative}.section-rsvp-heart{position:absolute;top:-10px;left:50%;transform:translateX(-50%);padding:0 8px;background:var(--bg-primary);color:var(--color-green)}.section-rsvp-text{text-align:center}.modal-backdrop{position:fixed;inset:0;background:transparent;display:flex;align-items:center;justify-content:center;padding:16px;z-index:30;transition:background .3s ease}.modal-backdrop.modal-backdrop--open{background:rgba(0,0,0,.45)}.modal{position:relative;width:100%;max-width:520px;max-height:min(620px,100vh - 40px);overflow:auto;background:#fff;border-radius:24px;padding:24px 24px 28px;box-shadow:0 20px 50px rgba(0,0,0,.16);opacity:0;transform:scale(.96) translateY(12px);transition:opacity .3s ease,transform .3s ease}.modal-backdrop.modal-backdrop--open .modal.modal--open{opacity:1;transform:scale(1) translateY(0)}.modal{border-top:4px solid var(--color-green)}.modal-close{position:absolute;top:16px;right:16px;border:none;background:none;font-size:1.4rem;cursor:pointer;line-height:1;color:var(--color-text-muted)}.modal-header{text-align:center;margin-bottom:16px}.modal-hearts{display:flex;justify-content:center;gap:12px;margin-bottom:8px;color:var(--color-green)}.modal-title{margin:0;font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;font-size:.9rem;color:var(--color-green)}.modal-form{gap:16px}.field,.modal-form{display:flex;flex-direction:column}.field{gap:6px;font-size:.9rem}.field-label{font-weight:500}.field-input{border-radius:999px;border:1px solid #d0ccc8;padding:10px 18px;font-size:.9rem;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.field-input:focus{border-color:var(--color-green);box-shadow:0 0 0 1px rgba(74,86,51,.2)}.field-options{display:flex;flex-direction:column;gap:8px}.field-options--wrap{flex-direction:row;flex-wrap:wrap}.field-option{display:inline-flex;align-items:center;gap:8px;font-size:.9rem}.field-option--checkbox{min-width:40%}.modal-note{margin:4px 0 0;font-size:.8rem;color:var(--color-text-muted)}@media (max-width:900px){.details-cards{grid-template-columns:1fr}}@media (max-width:768px){.section{padding:64px 0}.gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.hero{padding-inline:16px}.closing-script{font-size:1.6rem}.closing-names{font-size:2rem}.timeline{--node-size:52px;--axis-x:calc(var(--node-size) / 2)}.timeline-item,.timeline-item:nth-child(2n),.timeline-item:nth-child(odd){justify-content:flex-end}.timeline-card{width:calc(100% - var(--node-size) - 20px)}.timeline-item:nth-child(odd) .timeline-card{text-align:left}.timeline-item:nth-child(2n) .timeline-card:before,.timeline-item:nth-child(odd) .timeline-card:before{left:-7px;right:auto;border:1px solid var(--border-soft);border-right:none;border-top:none}}@media (max-width:480px){.container{padding-inline:16px}.gallery{grid-template-columns:1fr}.countdown{flex-wrap:wrap;gap:12px}.countdown-item{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 6px);min-width:0}.timeline-card{padding:16px 18px}.details-row{padding:20px}}