    :root{--wine:#70243d;--wine2:#8a3c52;--ink:#382f2d;--muted:#877a74;--paper:#f1ede3;--white:#faf8f0;--line:#e0d7c8;--serif:'Cormorant Garamond',Georgia,serif;--sans:Manrope,Arial,sans-serif;--script:Parisienne,cursive}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:300}body:after{content:"";position:fixed;inset:0;z-index:100;pointer-events:none;opacity:.075;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.26'/%3E%3C/svg%3E")}a{color:inherit}button,input{font:inherit}.hero{min-height:100svh;position:relative;display:grid;grid-template-rows:auto 1fr auto;overflow:hidden;background:#eee5df}.hero-photo{position:absolute;inset:0;background:linear-gradient(180deg,rgba(241,237,227,.46),rgba(241,237,227,.05) 44%,rgba(48,26,28,.14)),url('https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=2200&q=88') center 48%/cover;filter:saturate(.74)}.hero:after{content:"";position:absolute;inset:14px;border:1px solid rgba(255,253,250,.58);pointer-events:none}.topline{z-index:1;display:flex;justify-content:space-between;align-items:center;padding:28px clamp(22px,6vw,88px);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#5b4845}.music-toggle{display:flex;align-items:center;gap:8px;border:0;background:rgba(250,248,240,.76);color:var(--wine);padding:10px 14px;border-radius:30px;letter-spacing:.12em;text-transform:uppercase;font-size:9px;cursor:pointer;backdrop-filter:blur(4px)}.music-icon{font-size:15px;line-height:1}.hero-copy{position:relative;z-index:1;text-align:center;align-self:center;padding:30px 16px 14px;color:#fffdfa;text-shadow:0 2px 22px rgba(40,20,23,.22)}.eyebrow{font-size:10px;letter-spacing:.34em;text-transform:uppercase}.hero h1{font:400 clamp(68px,13vw,164px)/.72 var(--script);margin:34px 0 28px}.amp{font:300 .48em var(--serif);display:inline-block;padding:0 .17em;vertical-align:17px}.hero-date{font:400 clamp(18px,2.3vw,25px) var(--serif);letter-spacing:.18em}.scrollhint{z-index:1;text-align:center;color:#fff;padding:18px 20px 35px;letter-spacing:.24em;font-size:9px;text-transform:uppercase}.scrollhint:after{content:"";display:block;width:1px;height:35px;background:#fff;margin:12px auto 0}.section{position:relative;padding:clamp(70px,10vw,132px) 24px;box-shadow:inset 0 1px rgba(255,255,255,.64),inset 0 -1px rgba(116,85,64,.06)}.section:before{content:"";position:absolute;inset:12px;border:1px solid rgba(112,36,61,.12);pointer-events:none}.wrap{max-width:1040px;margin:auto}.kicker{text-align:center;color:var(--wine);font-size:10px;letter-spacing:.26em;text-transform:uppercase}.section-title{text-align:center;font:400 clamp(43px,7vw,74px)/1 var(--serif);margin:17px 0 24px;color:var(--wine)}.welcome{background:var(--white);text-align:center}.welcome .copy{max-width:620px;margin:0 auto;font:400 23px/1.55 var(--serif)}.welcome .signature{font:400 36px var(--script);color:var(--wine);margin-top:24px}.date-section{background:var(--paper);text-align:center}.date-big{font:300 clamp(65px,13vw,138px)/.9 var(--serif);color:var(--wine);letter-spacing:.02em}.date-month{font:400 22px var(--serif);letter-spacing:.26em;text-transform:uppercase;margin:17px 0 40px}.calendar{max-width:490px;margin:auto;display:grid;grid-template-columns:repeat(7,1fr);gap:6px;font-size:12px}.calendar span{padding:10px 0}.calendar .day{font-size:9px;letter-spacing:.08em;color:var(--muted)}.calendar .marked{position:relative;color:#fff;z-index:0}.calendar .marked:before{content:"";position:absolute;left:50%;top:50%;width:28px;height:27px;transform:translate(-50%,-45%);background:var(--wine);clip-path:polygon(50% 96%,7% 52%,0 38%,0 25%,8% 12%,19% 5%,32% 5%,43% 12%,50% 25%,57% 12%,68% 5%,81% 5%,92% 12%,100% 25%,100% 38%,93% 52%);z-index:-1}.countdown{display:flex;justify-content:center;gap:clamp(16px,5vw,62px);margin-top:42px}.countdown div{min-width:55px}.countdown strong{display:block;color:var(--wine);font:400 36px var(--serif)}.countdown small{font-size:9px;letter-spacing:.17em;text-transform:uppercase;color:var(--muted)}
    .program{background:#eee3dc}.timeline{max-width:660px;margin:55px auto 0;position:relative}.timeline:before{content:"";position:absolute;left:50%;top:0;bottom:0;width:2px;background:radial-gradient(var(--wine2) 1px,transparent 1.5px) center top/3px 7px repeat-y}.event{width:50%;position:relative;min-height:112px;padding:0 48px 44px 0;text-align:right}.event:nth-child(even){margin-left:50%;text-align:left;padding:0 0 44px 48px}.event:after{content:"";position:absolute;width:9px;height:9px;background:var(--wine);border:3px solid #eee3dc;border-radius:50%;right:-5px;top:6px;box-sizing:content-box}.event:nth-child(even):after{left:-5px;right:auto}.event time{color:var(--wine);font:400 32px var(--serif)}.event h3{font:400 23px var(--serif);margin:3px 0 6px}.event p{font-size:12px;color:var(--muted);margin:0;line-height:1.7}.event-illustration{position:absolute;left:4px;top:0;width:clamp(76px,11vw,110px);height:92px;fill:none;stroke:#9b6976;stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;opacity:.9}.event:nth-child(even) .event-illustration{left:auto;right:4px}
    .venue{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:var(--white)}.venue-photo{background:url('manap-banquet-hall.png') center/cover;min-height:360px}.venue-info{display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,8vw,100px)}.venue-info .section-title{text-align:left;font-size:clamp(42px,5vw,62px)}.venue-info p{line-height:1.8;color:var(--muted);font-size:13px}.map-link{display:inline-block;margin-top:20px;color:var(--wine);text-decoration:none;text-transform:uppercase;letter-spacing:.15em;font-size:10px;border-bottom:1px solid var(--wine);padding-bottom:8px;width:max-content}
    footer{text-align:center;padding:55px 20px 38px;background:var(--wine);color:#fff7f2}footer .names{font:40px var(--script)}footer p{font-size:9px;letter-spacing:.2em;text-transform:uppercase;opacity:.75}
    @media(max-width:650px){.hero{min-height:92svh}.hero-photo{background-position:53% center}.topline{padding:22px 24px}.topline .edition{max-width:130px;line-height:1.6}.section{padding:74px 22px}.welcome .copy{font-size:21px}.calendar{gap:1px}.calendar span{padding:9px 0}.calendar .marked:before{width:26px;height:25px}.timeline:before{left:15px}.event,.event:nth-child(even){width:100%;margin:0;text-align:left;min-height:105px;padding:0 90px 36px 48px}.event:after,.event:nth-child(even):after{left:10px;right:auto}.event-illustration,.event:nth-child(even) .event-illustration{left:auto;right:0;width:75px;height:82px;top:2px}.event h3{font-size:21px}.event p{font-size:11px}.venue{grid-template-columns:1fr}.venue-photo{min-height:300px;order:0}.venue-info{padding:55px 28px 65px}.venue-info .section-title{font-size:50px}.countdown{gap:14px}.countdown strong{font-size:30px}.countdown small{font-size:8px}.hero h1{line-height:.86;margin:30px 0 20px}.hero-date{font-size:16px}.scrollhint{padding-bottom:25px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Обложка-конверт: используется оригинальное приложенное изображение. */
.site-locked{height:100%;overflow:hidden}
.postcard-cover{position:fixed;inset:0;z-index:20;overflow:hidden;background:#521526;transition:opacity .8s ease,visibility .8s ease}
.cover-art{position:absolute;left:50%;top:50%;height:100%;width:auto;max-width:100%;object-fit:contain;transform:translate(-50%,-50%);transition:transform 1.1s cubic-bezier(.62,.02,.22,1),opacity .8s ease;user-select:none;-webkit-user-drag:none}
.wax-seal{position:absolute;z-index:2;top:42.7%;left:50%;width:18.5vh;max-width:38vw;aspect-ratio:1;border:0;border-radius:50%;transform:translate(-50%,-50%);background:transparent;cursor:pointer;transition:transform .4s ease,background .4s ease;animation:seal-breathe 3.2s ease-in-out infinite}
.wax-seal:hover{background:rgba(255,244,208,.06);transform:translate(-50%,-50%) scale(1.04)}
.wax-seal:focus-visible{outline:2px solid rgba(240,229,198,.85);outline-offset:4px}
.cover-instruction{position:absolute;z-index:3;left:0;right:0;bottom:11%;text-align:center;color:rgba(255,247,238,.25);font-size:15px;font-weight:300;letter-spacing:.035em;animation:instruction-pulse 2.8s ease-in-out infinite;pointer-events:none}
.opening .cover-art{opacity:0;transform:translate(-50%,-53%) scale(1.035)}
.opening .wax-seal{opacity:0;transform:translate(-50%,-50%) scale(1.18);animation:none}
.opening .cover-instruction{opacity:0;transition:opacity .3s ease}
.site-open .postcard-cover{opacity:0;visibility:hidden;pointer-events:none}
@keyframes seal-breathe{0%,100%{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.018)}}
@keyframes instruction-pulse{0%,100%{opacity:.52}50%{opacity:1}}
@media(max-width:650px){.cover-art{width:100%;height:100%;object-fit:cover}.wax-seal{top:42.7%;width:min(18.5vh,38vw)}.cover-instruction{bottom:11%;font-size:14px}}
@media(prefers-reduced-motion:reduce){.postcard-cover,.cover-art,.wax-seal{transition:none}.wax-seal,.cover-instruction{animation:none}}

/* Редизайн по присланному референсу: бумажное приглашение на фоне тёмной ботаники. */
body{background:#101711 url('floral-backdrop.png') center top/cover fixed no-repeat;color:#3c3430}
.site-shell{position:relative;width:min(620px,100%);margin:0 auto;background-color:#f2eee5;background-image:linear-gradient(90deg,rgba(105,78,57,.045),transparent 12%,transparent 88%,rgba(105,78,57,.045));box-shadow:0 0 55px rgba(0,0,0,.45);overflow:hidden}
.site-shell:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.18;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}
.site-shell>*{position:relative;z-index:1}
.hero{min-height:790px;min-height:92svh;max-height:980px;background:#d7d5d1;grid-template-rows:auto 1fr auto}
.hero-photo{background-image:linear-gradient(180deg,rgba(248,246,239,.64),rgba(248,246,239,.03) 42%,rgba(18,20,19,.37)),url('https://images.unsplash.com/photo-1519741497674-611481863552?auto=format&fit=crop&w=1500&q=88');background-position:center;background-size:cover;filter:grayscale(1) contrast(.9)}
.hero:after{inset:18px;border-color:rgba(250,248,240,.75)}
.topline{padding:27px 32px;color:#463d39;font-size:9px;letter-spacing:.16em}
.music-toggle{border:1px solid rgba(91,46,53,.28);background:rgba(246,242,234,.8);font-size:8px;padding:9px 12px;color:#5d2432}
.hero-copy{color:#fff;text-shadow:0 2px 16px rgba(20,19,18,.38);padding:80px 18px 20px}
.eyebrow{font-size:9px;letter-spacing:.3em}
.hero h1{font-size:clamp(66px,12vw,116px);line-height:.87;margin: 70px 0 23px}
.hero h1 span:first-child,.hero h1 span:last-child{display:block}
.hero h1 .amp{font-size:.42em;vertical-align:0;margin:10px auto;padding:0}
.hero-date{font-size:19px;letter-spacing:.2em;text-transform:uppercase}
.scrollhint{font-size:8px;letter-spacing:.22em;padding-bottom:29px}
.section{padding:74px 40px;background-color:#f2eee5;box-shadow:none}
.section:before{inset:12px;border:1px solid rgba(105,66,58,.22)}
.wrap{max-width:490px}
.kicker{font-size:9px;letter-spacing:.23em;color:#784a49}
.section-title{font:400 48px/1.05 var(--script);color:#542838;margin:13px 0 22px}
.welcome{min-height:390px;display:grid;align-items:center;background:#f5f1e9;text-align:center}
.welcome .copy{font:400 20px/1.55 var(--serif);max-width:410px;color:#5b514a}
.welcome .signature{font-size:33px;color:#652c3a}
.date-section{padding-top:58px;padding-bottom:66px;text-align:center;background:#eee9df}
.date-section .section-title{font-size:42px}
.date-big{font:300 88px/.95 var(--serif);color:#622c38}
.date-month{font:400 15px var(--serif);letter-spacing:.19em;color:#685750;margin:14px 0 25px}
.calendar{max-width:365px;gap:2px;font-size:11px}
.calendar span{padding:7px 0}
.calendar .day{font-size:8px}
.calendar .marked:before{background:#712c3c;width:26px;height:25px}
.countdown{gap:28px;margin-top:24px}
.countdown div{min-width:40px}
.countdown strong{font-size:27px;color:#672d3b}
.countdown small{font-size:7px;letter-spacing:.12em}
.program{background:#591d30;color:#f1e8dd;padding-top:60px;padding-bottom:64px}
.program:before{border-color:rgba(241,232,221,.35)}
.program .kicker{color:#ddc6b7}
.program .section-title{font-size:49px;color:#fff4e9;margin-bottom:10px}
.timeline{max-width:410px;margin:40px auto 0;padding:12px 0;display:flex;flex-direction:column;gap:0}
.timeline:before{left:50%;top:18px;bottom:10px;width:24px;transform:translateX(-50%);background:transparent;border:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 440'%3E%3Cpath d='M12 0C3 38 22 63 12 105S3 174 12 218s9 78 0 112S3 393 12 440' fill='none' stroke='%23e8c9b5' stroke-width='1.4' stroke-dasharray='1 4' stroke-linecap='round'/%3E%3C/svg%3E");background-size:100% 100%}
.event,.event:nth-child(even){width:50%;min-height:104px;margin:0;text-align:right;padding:0 39px 25px 0;position:relative}
.event:nth-child(even){margin-left:50%;text-align:left;padding:0 0 25px 39px}
.event:after,.event:nth-child(even):after{width:6px;height:6px;right:-4px;left:auto;top:8px;background:#e6c7ad;border:2px solid #591d30}
.event:nth-child(even):after{left:-4px;right:auto}
.event time{font:400 26px var(--serif);color:#efd9c6}
.event h3{font:400 20px/1.1 var(--serif);color:#fff7ec;margin:1px 0 5px}
.event p{font:300 10px/1.5 var(--sans);color:#d4c0b6}
.event-illustration{position:relative;display:block;width:63px;height:47px;left:auto;right:0;top:auto;margin:5px 0 0 auto;stroke:#d9bca9;stroke-width:1.15;opacity:.9}
.event:nth-child(even) .event-illustration{left:0;right:auto;margin:5px auto 0 0}
.venue{display:flex;flex-direction:column;background:#5a1d30;color:#f4e8dd;padding:14px;gap:0}
.venue-photo{min-height:300px;background-image:linear-gradient(0deg,rgba(54,18,31,.1),transparent 40%),url('manap-banquet-hall.png');background-position:center 56%;background-size:cover;border:1px solid rgba(240,218,198,.45)}
.venue-info{padding:38px 28px 45px;align-items:center;text-align:center}
.venue-info .kicker{color:#dcc1ad!important;text-align:center!important}
.venue-info .section-title{font-size:51px;text-align:center;color:#fff4e8;margin:12px 0}
.venue-info p{max-width:390px;color:#eadbd0;font:300 12px/1.8 var(--sans)}
.map-link{color:#f2dbca;border-color:#d6b8a4;font-size:9px}
footer{padding:32px 18px 25px;background:#f1ede4;color:#60273a;border-top:1px solid #d8cbbd}
footer .names{font-size:35px}
footer p{font-size:8px;letter-spacing:.14em;color:#756a63;opacity:1}
@media(min-width:800px){body{padding:34px 0}.site-shell{border:1px solid rgba(247,234,218,.38)}.hero{min-height:790px;min-height:min(92svh,900px)}}
@media(max-width:650px){.site-shell{width:100%}.hero{min-height:88svh;min-height:88svh}.topline{padding:22px 26px}.section{padding:62px 29px}.section:before{inset:9px}.welcome{min-height:360px}.welcome .copy{font-size:19px}.date-section{padding-top:54px;padding-bottom:55px}.program{padding-top:55px;padding-bottom:48px}.timeline{margin-top:32px}.timeline:before{left:17px;width:18px}.event,.event:nth-child(even){width:100%;margin:0;text-align:left;min-height:92px;padding:0 68px 26px 44px}.event:after,.event:nth-child(even):after{left:14px;right:auto}.event-illustration,.event:nth-child(even) .event-illustration{position:absolute;left:auto;right:0;top:2px;width:54px;height:48px;margin:0}.event h3{font-size:18px}.event p{font-size:9px}.event time{font-size:24px}.venue{padding:9px}.venue-photo{min-height:250px}.venue-info{padding:32px 19px 37px}}
@media(prefers-reduced-motion:reduce){.site-shell *{scroll-behavior:auto}}
:root{--script:'Great Vibes',cursive}
.hero h1{font-family:var(--script);font-weight:400;line-height:1.08}
.hero h1 .amp{font-family:var(--serif)}
.welcome .signature,footer .names{font-family:var(--script);font-weight:400}
.topline{position:absolute;inset:0 0 auto;z-index:4;min-height:80px;padding:0 30px}
.topline .edition{position:absolute;left:50%;top:65px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 44px);text-align:center;font:400 25px/1.2 var(--script);letter-spacing:0;text-transform:none;white-space:nowrap;color:rgba(91,29,48,.68)}
.topline .music-toggle{margin-left:auto;position:absolute;right:28px;top:23px}
.welcome-bird{position:absolute;z-index:2;display:block;height:auto;overflow:visible;color:var(--wine);pointer-events:none;animation:bird-glide 4.2s ease-in-out infinite}
.welcome-bird .bird-wing{fill:#70243d;transform-box:fill-box;transform-origin:88% 85%;animation:wing-flutter .28s ease-in-out infinite alternate}
.welcome-bird .bird-body{fill:#70243d}
.welcome-bird .bird-beak{fill:#70243d}
.welcome-bird .bird-tail{fill:none;stroke:#70243d;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}
.welcome-bird .bird-eye{fill:#f3eee5;stroke:none}
.welcome-bird--one{top:26px;left:8%;width:76px}
.welcome-bird--two{right:8%;bottom:23px;width:68px;transform:scaleX(-1);animation-delay:-2.1s}
@keyframes bird-glide{0%,100%{translate:0 0}48%{translate:0 -7px}76%{translate:2px -3px}}
@keyframes wing-flutter{from{transform:rotate(-24deg) scaleY(.72)}to{transform:rotate(31deg) scaleY(1.05)}}
html.js-reveal .site-shell main>section,html.js-reveal .site-shell footer{opacity:0;transform:translateY(28px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1)}
html.js-reveal .site-shell main>section.is-visible,html.js-reveal .site-shell footer.is-visible{opacity:1;transform:translateY(0)}
html.js-reveal .program .event{opacity:0;transform:translateY(12px);transition:opacity .55s ease,transform .55s ease}
html.js-reveal .program.is-visible .event{opacity:1;transform:translateY(0)}
html.js-reveal .program.is-visible .event:nth-child(1){transition-delay:.08s}html.js-reveal .program.is-visible .event:nth-child(2){transition-delay:.17s}html.js-reveal .program.is-visible .event:nth-child(3){transition-delay:.26s}html.js-reveal .program.is-visible .event:nth-child(4){transition-delay:.35s}html.js-reveal .program.is-visible .event:nth-child(5){transition-delay:.44s}
@media(max-width:650px){.topline .edition{top:56px;font-size:21px;max-width:calc(100% - 34px)}.topline .music-toggle{top:20px;right:16px}.welcome-bird--one{top:17px;left:4%;width:58px}.welcome-bird--two{right:4%;bottom:17px;width:52px}.hero h1{font-size:clamp(58px,12vw,88px);line-height:1.1}}
@media(prefers-reduced-motion:reduce){html.js-reveal .site-shell main>section,html.js-reveal .site-shell footer,html.js-reveal .program .event{opacity:1;transform:none;transition:none}.welcome-bird,.welcome-bird .bird-wing{animation:none}}
