:root{--paper:#f8f3e9;--ink:#654448;--muted:#8e7974;--line:#ded1c0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Manrope',Arial,sans-serif;font-size:14px;line-height:1.8}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h2{font-size:clamp(48px,6.5vw,80px);line-height:1.02;letter-spacing:-2px}h3{font-size:30px;line-height:1.2}i,.italic{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}.hero{min-height:850px;height:100svh;max-height:1100px;position:relative;padding:35px 6%;overflow:hidden;border-bottom:1px solid var(--line)}.hero-top,.hero-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:2px}.hero-top a{border-bottom:1px solid var(--ink);padding-bottom:4px}.she-said{position:absolute;left:17%;top:17%;font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(28px,3.7vw,48px);text-transform:uppercase;letter-spacing:1px}.yes{position:absolute;font-family:'Marck Script','Cormorant Garamond',cursive;font-style:italic;font-size:clamp(290px,43vw,620px);line-height:1;left:13%;top:23%;transform:rotate(-10deg);letter-spacing:-24px;user-select:none}.yes-dot{font-size:.5em;letter-spacing:0}.hero h1{position:absolute;right:15%;top:53%;font-size:clamp(52px,6.7vw,92px);line-height:.95;letter-spacing:-2px;text-align:center}.amp{display:block;font-style:italic;font-size:.58em;line-height:1.25}.hero-bottom{position:absolute;left:6%;right:6%;bottom:30px}.arrow{font-size:35px;line-height:1}.section{max-width:1080px;margin:auto;padding:115px 40px}.eyebrow{display:block;font-size:10px;letter-spacing:2.4px;margin-bottom:28px;color:var(--muted)}.invite{text-align:center;padding-top:135px;padding-bottom:120px;max-width:850px}.invite h2{margin-bottom:35px}.intro{font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;line-height:1.5;margin-bottom:22px}.tiny-heart{display:block;font-size:32px;margin:35px 0 12px}.signature{font-family:'Cormorant Garamond',Georgia,serif;font-size:24px;font-style:italic}.details,.program,.wishes,.rsvp{border-top:1px solid var(--line)}.details .section-heading{text-align:center}.details-grid{display:grid;grid-template-columns:1fr 1fr;text-align:center;margin-top:65px}.details-grid article{padding:0 25px}.details-grid article+article{border-left:1px solid var(--line)}.detail-symbol{display:block;font-size:40px;margin-bottom:15px}.details-grid h3{font-size:21px}.detail-main{font-family:'Cormorant Garamond',Georgia,serif;font-size:36px;margin:10px 0}.details-grid article>p:last-child{color:var(--muted);font-size:13px}.program{display:grid;grid-template-columns:1fr 1fr;gap:65px}.section-heading>p{margin-top:28px;color:var(--muted)}.timeline article{position:relative;display:flex;gap:28px;padding-bottom:45px}.timeline article:not(:last-child):before{content:'';position:absolute;left:17px;top:40px;bottom:8px;width:1px;background:var(--line)}.step{border:1px solid var(--line);border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:10px;flex-shrink:0}.timeline p{color:var(--muted);font-size:12px;margin-top:9px}.timeline article:last-child{padding-bottom:0}.quote{padding:100px 25px;text-align:center;background:var(--ink);color:var(--paper)}.quote>span{font-size:9px;letter-spacing:3px}.quote>p{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(54px,7vw,94px);line-height:1.08;margin:38px 0}.wishes,.rsvp{display:grid;grid-template-columns:1fr 1fr;gap:70px}.wishes{border-top:0}.wish-copy h3{margin-bottom:18px}.wish-copy p{color:var(--muted)}.rule{height:1px;background:var(--line);margin:32px 0}.rsvp{padding-top:100px;padding-bottom:130px}form{font-size:12px}.field-label,legend{display:block;font-size:13px;font-weight:500;margin-bottom:12px}input[type=text],input:not([type]),textarea{width:100%;border:0;border-bottom:1px solid #aaa;background:transparent;border-radius:0;padding:10px 0 15px;font:inherit;color:var(--ink)}textarea{resize:vertical}fieldset{border:0;padding:0;margin:28px 0}fieldset label{display:flex;align-items:center;gap:10px;padding:6px 0;cursor:pointer}input[type=radio],input[type=checkbox]{accent-color:var(--ink);width:16px;height:16px;margin:0}.drink-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px 10px}button{display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;border:1px solid var(--ink);padding:19px 23px;background:var(--ink);color:var(--paper);font:inherit;font-size:10px;letter-spacing:1.5px;cursor:pointer;margin-top:28px;transition:background .2s}button:hover{background:#3c3c37}.form-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:14px}#reply{margin-top:25px;padding:25px;border:1px solid var(--line)}#reply h3{font-size:25px}#reply p{margin-top:10px}pre{white-space:pre-wrap;font:inherit;margin-top:18px}footer{background:#eee3d2;text-align:center;padding:85px 20px 30px}.footer-line{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(37px,5vw,60px);line-height:1.12}.footer-names{display:block;font-family:'Cormorant Garamond',Georgia,serif;font-size:28px;margin:45px 0 60px}.footer-names span{font-style:italic;margin:0 12px}footer>p:last-child{font-size:8px;letter-spacing:2px}@media(min-width:1500px){.hero{max-width:1600px;margin:auto}}@media(max-width:700px){.hero{min-height:710px;max-height:900px;padding:25px 7%}.hero-top{font-size:8px;letter-spacing:1px}.hero-top>span{max-width:115px}.hero-top>a{max-width:130px;text-align:right}.she-said{left:10%;top:19%;font-size:28px}.yes{left:4%;top:28%;font-size:clamp(270px,75vw,470px);letter-spacing:-15px}.hero h1{right:10%;top:58%;font-size:clamp(46px,12vw,70px)}.hero-bottom{font-size:8px;letter-spacing:1.5px;left:7%;right:7%}.section{padding:75px 25px}h2{letter-spacing:-1px}.invite{padding-top:90px;padding-bottom:90px}.invite>p:not(.eyebrow):not(.signature){font-size:13px}.invite .intro{font-size:23px!important}.invite br{display:none}.invite .intro br{display:block}.details-grid{margin-top:35px;gap:30px;grid-template-columns:1fr}.details-grid article+article{border-left:0;border-top:1px solid var(--line);padding-top:30px}.program,.wishes,.rsvp{grid-template-columns:1fr;gap:40px}.timeline{margin-top:5px}.quote{padding:75px 20px}.quote>span{font-size:8px;letter-spacing:2px}.wish-copy h3{font-size:27px}.drink-grid{grid-template-columns:1fr 1fr}footer{padding-top:65px}.footer-names{font-size:25px;margin-bottom:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}button{transition:none}}

.calendar{display:grid;grid-template-columns:repeat(7,1fr);max-width:280px;margin:26px auto 0;gap:7px;font-size:12px;line-height:30px}.calendar>span:nth-child(-n+7){font-size:9px;color:var(--muted)}.wedding-day{background:var(--ink);color:var(--paper);border-radius:50%}.map-link{display:table;margin:28px auto 12px;border-bottom:1px solid var(--ink);font-size:10px;letter-spacing:1px}.venue-link{font-size:11px;color:var(--muted);text-decoration:underline}.countdown{display:flex;justify-content:center;margin:38px auto 25px;gap:0}.countdown>div{width:90px;border-right:1px solid #555}.countdown>div:last-child{border:0}.countdown b{display:block;font:400 38px Cormorant Garamond,Georgia,serif}.countdown small{font-size:8px;letter-spacing:1.5px;color:#bcbcb5}

.whatsapp-link{display:block;background:var(--ink);color:var(--paper);padding:15px;margin:18px 0;text-align:center;font-size:10px;letter-spacing:1px}
@media(max-width:700px){.yes{top:23%;left:2%;font-size:60vw;letter-spacing:-15px}.hero h1{top:67%;right:10%;font-size:clamp(44px,10vw,60px)}}

.hero h1:focus{outline:none}

#invite h2:focus{outline:none}
/* Exact font files and face weights used by invitelove.ru/yes. */
@font-face{font-family:InviteReference;src:url('assets/reference-book-antiqua.woff') format('woff');font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:InviteReference;src:url('assets/reference-golca.woff') format('woff');font-weight:300;font-style:normal;font-display:swap}
#invitation-content{font-family:InviteReference,Georgia,serif;font-weight:700}
#invitation-content h1,#invitation-content h2,#invitation-content h3,#invitation-content p,#invitation-content a,#invitation-content span,#invitation-content b,#invitation-content small{font-family:InviteReference,Georgia,serif}
#invitation-content h2,#invitation-content h3,#invitation-content p,#invitation-content a,#invitation-content span,#invitation-content b{font-weight:700}
#invitation-content i,#invitation-content .italic{font-family:InviteReference,Georgia,serif;font-style:normal}
#invitation-content .signature{font-style:normal}
#invitation-content .countdown small{font-weight:300}
#invitation-content form{font-family:Georgia,serif;font-weight:400}
#invitation-content form button,#invitation-content .whatsapp-link{font-family:InviteReference,Georgia,serif;font-weight:600}

/* Как на invitelove.ru/yes: каллиграфические заголовки + текст капсом в Book Antiqua */
@font-face{font-family:InviteScript;src:url('assets/miama-nueva.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
#invitation-content h2,#invitation-content h2 *,#invitation-content .quote>p,#invitation-content .quote>p *,#invitation-content .footer-line,#invitation-content .footer-line *{font-family:InviteScript,'Cormorant Garamond',cursive;font-weight:400;font-style:normal;letter-spacing:0;text-transform:none}
#invitation-content h2{font-size:clamp(52px,7vw,92px);line-height:1.3}
#invitation-content .quote>p{line-height:1.3}
#invitation-content p:not(.detail-main):not(.footer-line):not(.quote>p),#invitation-content .signature{text-transform:uppercase;font-weight:600;letter-spacing:.3px;line-height:1.75}
#invitation-content .intro{font-size:19px;line-height:1.7}
#invitation-content .signature{font-size:17px}
@media(max-width:700px){#invitation-content h2{font-size:clamp(44px,12vw,64px)}#invitation-content .invite .intro{font-size:16px!important}}
#invitation-content h2 i,#invitation-content h2 .italic,#invitation-content .quote>p i,#invitation-content .footer-line i{font-family:InviteScript,'Cormorant Garamond',cursive;font-weight:400;font-style:normal}
