/* Visual edition 2: engraved stationery, editorial registry, private guestbook. */
@font-face{font-family:WeddingScript;src:url('assets/fonts/wedding-script.otf') format('opentype');font-display:swap;font-weight:400}@font-face{font-family:WeddingSerif;src:url('assets/fonts/wedding-serif.otf') format('opentype');font-display:swap;font-weight:400}
:root{--paper:#f7f2e8;--ink:#293220;--gold:#a68b50;--line:#cabb98;--white:#fffcf5;--serif:WeddingSerif,Georgia,serif;--muted:#60634f}body{background:var(--paper)}.wrap{width:min(1280px,92%)}.masthead{padding-top:20px}.topline{border:0;padding-bottom:0;font-size:11px;letter-spacing:.23em}.brand{display:flex;justify-content:center;align-items:baseline;gap:14px;margin:12px auto 23px;letter-spacing:-.045em}.brand-script{font-family:WeddingScript,cursive;font-size:1.6em;line-height:.8;font-weight:400;color:#82652c;letter-spacing:-.03em}.brand-name{font-size:clamp(1.8rem,4.3vw,3.6rem)}.nav{gap:14px 38px;padding:14px 0;font-size:15px}.nav a{position:relative}.nav a:hover{color:#82652c;text-decoration:none}.hero{width:100%;padding:0;margin:0}.invitation-scene{background:linear-gradient(90deg,#191c1020,#fff5df08,#191c1020),url('assets/wedding-still-life.webp') center 58%/cover;min-height:770px;display:flex;justify-content:center;align-items:center;padding:55px 20px 65px}.invitation-card{position:relative;isolation:isolate;width:min(690px,90%);padding:35px 45px 26px;background:linear-gradient(120deg,#fffdf7,#f4ecdc);box-shadow:0 20px 70px #24241655,0 2px 7px #24241630;border:1px solid #bca477;text-align:center}.invitation-card::before{content:'';position:absolute;inset:10px;border:1px solid #b99e63;pointer-events:none}.invitation-card::after{content:'';position:absolute;inset:15px;border:1px solid #d6c7a7;pointer-events:none}.crest{width:98px;height:66px;display:flex;justify-content:center;align-items:center;margin:0 auto 20px;border-bottom:1px solid var(--gold);color:#8b7038;font-family:WeddingScript,cursive;font-size:45px;line-height:1;letter-spacing:-13px;padding-right:12px}.crest span:nth-child(2){font-size:52px;transform:translateY(-6px)}.invitation-card .script{font-family:WeddingScript,cursive;font-style:normal;font-size:31px;margin:7px 0 20px}.hero h1{font-size:clamp(3.2rem,5.8vw,5.5rem);line-height:1.05;letter-spacing:-.065em;max-width:620px;margin:0 auto 23px}.hero h1 span{font-size:.68em;line-height:1.09;margin-top:13px;letter-spacing:-.045em}.fine-rule{width:62px;height:1px;background:var(--gold);margin:25px auto}.hero .intro{font-size:19px;line-height:1.5;margin-bottom:10px}.hero .actions{flex-direction:column;gap:13px;margin:24px 0 20px}.text-link{font-size:15px}.button{border-color:#39402d;padding:16px 30px;letter-spacing:.14em;font-size:12px;transition:background .2s,box-shadow .2s}.button:hover{box-shadow:0 4px 16px #272e231c}.invitation-foot{font:10px/1.6 var(--sans);letter-spacing:.21em;color:#746340;margin:15px 0 0}.context{width:min(1120px,86%);margin:0 auto;padding:32px 0;gap:45px;border-top:0}.context h2{font-size:25px}.context p{font-size:16px;line-height:1.65}.section{padding:100px 0}.section-head{max-width:850px}.section-head h2{font-size:clamp(2.7rem,4.8vw,4.5rem);line-height:1.07}.eyebrow{font-size:12px;letter-spacing:.21em;color:#776233}.section-head p{font-size:18px}.section-head .eyebrow{font-size:12px}.story-grid{max-width:1030px;margin:auto;gap:90px}.story-grid .pullquote{font-family:WeddingSerif,Georgia,serif;font-size:clamp(2.1rem,3.1vw,3.2rem);line-height:1.25;color:#6f5b30;padding:10px 0 10px 34px}.story-grid .copy{font-size:19px}.registry-grid{gap:28px;max-width:1140px;margin:auto}.gift{background:transparent;position:relative;border:0;border-bottom:1px solid var(--line);padding:0 0 24px;display:flex;overflow:hidden}.gift.featured{background:transparent}.gift-art{width:100%;aspect-ratio:1/1;background-image:url('assets/registry-atlas.webp');background-size:300% 200%;background-repeat:no-repeat;margin-bottom:23px;border:1px solid #ded2bb}.gift-art-01{background-position:0 0}.gift-art-02{background-position:50% 0}.gift-art-03{background-position:100% 0}.gift-art-04{background-position:0 100%}.gift-art-05{background-position:50% 100%}.gift-art-06{background-position:100% 100%}.gift .number{font:11px/1.4 var(--sans);letter-spacing:.17em;color:#776233;margin-bottom:10px}.gift h3{font-size:29px;margin-bottom:11px}.gift p{font-size:16px;line-height:1.55;max-width:320px}.gift .status{font-size:11px;color:#64583d;letter-spacing:.12em;margin-bottom:14px}.gift .purchased{position:absolute;top:23px;right:12px;transform:rotate(7deg);padding:8px 12px;border:1px solid #685a39;background:#fbf7ecf2;box-shadow:0 2px 7px #0001;color:#57482a;font-size:10px}.gift button{font-family:WeddingScript,cursive;font-size:28px;line-height:1.3;border-bottom:0;padding:0 0 2px;color:#6d562c}.gift button:hover{color:var(--ink)}.registry-note{font-style:italic}.quiz-section{width:100%;margin-top:0;padding:80px max(7%,20px);background:radial-gradient(ellipse at top,#424b32,#222b1e);border:0}.quiz-section::before{inset:18px;border:1px solid #8d794b}.quiz-section .section-head{max-width:800px}.quiz-section h2{font-size:clamp(2.7rem,4.8vw,4.7rem)}.quiz-inner{max-width:650px}.choice{background:#ffffff05;border-color:#888c725c;padding:16px 20px}.quiz-section .actions{margin-bottom:0}.quiz-progress{margin-top:35px}.faq{max-width:860px}.faq summary{font-size:24px}.faq details{padding:25px 0}.faq details p{font-size:18px}.section#guestbook{width:100%;padding:80px max(5%,18px);background:#e8e1d1;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}#guestbook .section-head{margin-bottom:28px}#guestbook .guestbook-heading{font-family:WeddingScript,cursive;font-size:clamp(4.7rem,8vw,7rem);font-weight:400;letter-spacing:0;line-height:.95;margin:22px 0}#guestbook .guestbook-intro{font-size:20px}.guestbook-form{max-width:820px;padding:55px 60px 35px;border:1px solid #c4b28d;background:linear-gradient(90deg,#fbf8ed,#fffdf7 48%,#e9e0cb 49.7%,#fffcf4 50.4%,#fffdf6 96%,#f1e9d9);box-shadow:0 12px 35px #65502c1b,4px 4px 0 #f5efdf,5px 5px 0 #bfae8d;position:relative}.guestbook-fields input,.guestbook-message textarea{background:transparent;border:0;border-bottom:1px solid #b6a580;padding:10px 3px;color:var(--ink);border-radius:0}.guestbook-message textarea{background:repeating-linear-gradient(transparent 0,transparent 35px,#d5c8ac 35px,#d5c8ac 36px);line-height:36px;min-height:146px;padding:0 3px;border-bottom:0}.guestbook-fields label,.guestbook-message{font-size:18px}.guestbook-consent{margin-top:24px}.guestbook-form .small{font-size:14px}.guestbook-form .actions{margin:24px 0 0}.favors-strip{padding:100px 0}.favors-strip h2{max-width:750px;margin:0 auto 20px}.footer{background:var(--ink);color:var(--paper);width:100%;padding:40px max(5%,20px) 35px;border:0}.footer .brand-script{color:#d0b777}.footer .disclaimer{color:#c4c5b8;font-size:12px;max-width:1000px}.footer a:hover{color:#dcc796}.footer-brand{text-decoration:none;font-size:29px}.subhero{padding:85px 0 55px;border-bottom:1px solid var(--line);margin-bottom:35px}.subhero h1{font-size:clamp(3.7rem,7.5vw,7rem)}.article{font-size:19px}.source-card h2{font-size:37px}.source-card{padding:35px 0}.merch-card{border:1px solid var(--gold);outline:1px solid #dfd2b9;outline-offset:-8px;padding:38px}.merch-lettering{font-size:36px;color:#695631}.merch-type{font-size:11px}.merch-card p{font-size:17px}dialog{padding:42px;background:linear-gradient(120deg,#fffcf6,#f0e6d2);box-shadow:0 20px 80px #0005;border:3px double var(--gold)}dialog h2{font-family:WeddingScript,cursive;font-size:53px;line-height:1.1}dialog .close{border:0;font:12px var(--sans);text-transform:uppercase;letter-spacing:.1em}.not-found h1{font-size:clamp(3.2rem,6vw,6rem)}
@media(max-width:700px){.masthead{padding-top:14px}.topline{font-size:9px}.brand{gap:8px;margin:18px 0}.brand-script{font-size:1.8em}.brand-name{font-size:clamp(1.65rem,6.4vw,2.3rem)}.nav{gap:9px 20px;padding:12px 0;font-size:14px}.invitation-scene{min-height:0;padding:35px 12px 40px;background-position:55% center}.invitation-card{width:94%;padding:27px 25px 24px}.crest{font-size:40px;height:54px;margin-bottom:15px}.crest span:nth-child(2){font-size:46px}.invitation-card .script{font-size:25px;margin-bottom:15px}.hero h1{font-size:clamp(2.8rem,11.5vw,4.4rem);line-height:1.03}.hero h1 span{font-size:.72em;line-height:1.13}.hero .intro{font-size:17px}.hero .actions{margin:20px 0 17px}.invitation-foot{font-size:8px}.fine-rule{margin:20px auto}.context{width:86%;gap:12px;padding:27px 0}.context p{font-size:16px}.section{padding:60px 0}.section-head{margin-bottom:30px}.section-head h2{font-size:clamp(2.3rem,8vw,3rem)}.story-grid{gap:30px}.story-grid .pullquote{font-size:30px}.story-grid .copy{font-size:18px}.registry-grid{gap:25px 16px}.gift h3{font-size:24px}.gift p{font-size:15px}.gift-art{margin-bottom:17px}.gift .purchased{top:14px;right:7px;font-size:8px;letter-spacing:.05em;padding:6px}.gift button{font-size:25px}.gift .number{font-size:10px}.gift .status{font-size:10px}.quiz-section{padding:60px 8%}.quiz-section::before{inset:10px}.faq summary{font-size:21px}#guestbook.section{padding:60px 6%}.guestbook-form{padding:30px 25px 25px;background:linear-gradient(100deg,#f9f4e8,#fffcf4);box-shadow:0 10px 30px #65502c16,3px 3px 0 #e2d6bb}.guestbook-form .small{font-size:13px}.favors-strip{padding:60px 0}.footer-top{display:block}.footer-brand{font-size:25px}.footer-links{font-size:14px}.footer .disclaimer{font-size:12px}.subhero{padding:55px 0 35px}.subhero h1{font-size:3.5rem}.source-card h2{font-size:31px}.merch-lettering{font-size:34px}dialog{padding:27px}dialog h2{font-size:44px}}
@media(max-width:370px){.registry-grid{grid-template-columns:1fr}.gift-art{aspect-ratio:1}.gift .purchased{font-size:10px}.gift p{font-size:16px}.hero h1{font-size:2.8rem}.invitation-card{padding-left:21px;padding-right:21px}.brand-name{font-size:1.6rem}.nav{gap:8px 15px}.guestbook-form{padding:25px 20px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}

/* Russian registry edition, with English translations. */
.registry-language{display:flex;align-items:center;justify-content:center;gap:24px;margin:0 auto 45px;flex-wrap:wrap}.registry-language>.eyebrow{margin:0}.language-buttons{display:flex;border:1px solid var(--gold);padding:4px;gap:4px}.language-buttons button{background:transparent;color:var(--ink);border:0;padding:10px 22px;font:18px/1.4 Georgia,serif;min-height:54px}.language-buttons button[aria-pressed="true"]{background:var(--ink);color:var(--paper)}.language-buttons small{display:block;font:11px/1.5 var(--sans);letter-spacing:.02em}.ru-line{display:block;font-family:Georgia,'Times New Roman',serif;letter-spacing:0;line-height:1.25}.en-translation{display:block;font-size:.65em;line-height:1.45;margin-top:9px;font-weight:400;letter-spacing:0}.russian-registry .section-head h2{font-size:clamp(2.2rem,4.2vw,3.6rem)}.russian-registry .gift-art{background-image:url('assets/political-registry-atlas.webp')}.russian-registry .gift h3{font-size:25px;overflow-wrap:anywhere}.russian-registry .gift p .ru-line{font-size:16px;line-height:1.5}.russian-registry .gift p .en-translation{font-size:14px;color:var(--muted)}.russian-registry .gift .status .ru-line{font:11px/1.5 var(--sans)}.russian-registry .gift .status .en-translation{font-size:10px}.russian-registry .gift button{font:16px/1.4 Georgia,serif;text-align:left;border-bottom:1px solid var(--line);padding-bottom:8px}.russian-registry .gift button .en-translation{font-size:14px}.russian-registry .registry-note .en-translation{font-size:13px}.bilingual-dialog h2{font-family:Georgia,serif;font-size:32px}.bilingual-dialog #gift-copy .en-translation{font-size:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.registry-language{gap:12px;margin-bottom:35px}.language-buttons button{padding:10px 18px}.russian-registry .gift h3{font-size:21px}.russian-registry .gift p .ru-line{font-size:15px}.bilingual-dialog h2{font-size:27px}}

.russian-registry .gift-art{background-size:320% 220%}

/* Complete Russian edition. Original English restores when switching back. */
.topline{justify-content:space-between;align-items:center;gap:20px}.language-control{display:flex;justify-content:center;align-items:center;gap:6px}.language-control button{font:14px/1.4 Georgia,serif;border:1px solid transparent;background:transparent;color:var(--ink);padding:8px 12px;min-height:42px;cursor:pointer}.language-control button[aria-pressed="true"]{border-color:var(--gold);background:#e8dfca}.language-control small{display:block;font:10px/1.4 var(--sans);letter-spacing:0;text-transform:none}.site-copy{display:inline-block;max-width:100%;vertical-align:baseline}.site-ru{display:block;font-family:Georgia,'Times New Roman',serif;font-style:normal;letter-spacing:normal;line-height:1.3}.site-en{display:block;font-family:Georgia,serif;font-size:.7em;line-height:1.45;letter-spacing:normal;font-style:italic;margin-top:.35em;opacity:.85}.site-russian .brand{gap:16px;align-items:center}.site-russian .brand .site-ru{font-size:.74em}.site-russian .brand .site-en{font-size:17px}.site-russian .brand-script{font-family:Georgia,serif}.site-russian .nav{gap:14px 22px;align-items:start}.site-russian .nav a{text-align:center}.site-russian .nav .site-en{font-size:12px}.site-russian .hero h1{font-size:clamp(2.6rem,4.5vw,4.3rem)}.site-russian .hero h1 .site-ru{line-height:1.1}.site-russian .hero h1 .site-en{font-size:17px;font-weight:400;letter-spacing:0}.site-russian .hero h1 span:not(.site-copy):not(.site-ru):not(.site-en){font-size:.7em}.site-russian .desktop-break{display:none}.site-russian .invitation-card .script{font-size:24px}.site-russian .invitation-card{padding-top:25px}.site-russian .hero .intro{font-size:18px}.site-russian .invitation-foot .site-en{font-size:9px}.site-russian .eyebrow .site-en{font-size:11px}.site-russian .section-head h2{font-size:clamp(2.1rem,4vw,3.5rem)}.site-russian .section-head h2 .site-en{font-size:20px}.site-russian .story-grid .pullquote{font-size:30px}.site-russian .story-grid .pullquote .site-en{font-size:19px}.site-russian .button{font-size:14px;text-transform:none;letter-spacing:0;text-align:center}.site-russian .button .site-en{font-size:12px}.site-russian .guestbook-heading{font-family:Georgia,serif!important;font-size:clamp(2.5rem,5vw,4rem)!important}.site-russian .guestbook-form{background:#fffaf0}.site-russian .guestbook-consent .site-en,.site-russian .guestbook-form .small .site-en{font-size:12px}.site-russian .choice .site-en{font-size:14px}.site-russian .quiz-progress .site-en{font-size:12px}.site-russian .article .site-en{font-size:15px}.site-russian .footer .site-en{font-size:12px}.site-russian .subhero h1{font-size:clamp(2.7rem,5vw,5rem)}.site-russian .subhero h1 .site-en{font-size:22px}.site-russian .merch-lettering{font-size:27px}.site-russian .merch-lettering .site-en{font-size:16px}@media(max-width:700px){.topline{flex-direction:column;gap:8px}.site-russian .brand{gap:9px}.site-russian .brand-name{font-size:1.5rem}.site-russian .brand-script{font-size:1.7rem}.site-russian .brand .site-en{font-size:12px}.site-russian .nav{gap:10px 18px}.site-russian .nav .site-ru{font-size:13px}.site-russian .nav .site-en{font-size:11px}.site-russian .hero h1{font-size:2.55rem}.site-russian .hero h1 .site-en{font-size:14px}.site-russian .invitation-card{width:96%;padding:25px 24px}.site-russian .section-head h2{font-size:2rem}.site-russian .guestbook-form{padding:25px 20px}.site-russian .footer-brand{font-size:23px}.site-russian .registry-language{flex-direction:column}}
