/* Editorial home */
.home-intro{display:grid;grid-template-columns:1.15fr 1fr 1.25fr;gap:28px;align-items:center}.home-intro h2{font-size:36px}.home-intro p{font-size:12px}.home-intro .text-link{margin-top:14px}.home-intro .stats .stat b{font-size:28px}.home-intro .stats .stat small{font-size:12px}.home-intro .stats .icon{margin-bottom:8px;color:var(--copper)}.experience{display:grid;grid-template-columns:1.45fr 1fr;gap:36px;align-items:center}.experience-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-block:24px}.experience-cards article{padding:15px;background:var(--surface);border:1px solid var(--line);border-radius:10px}.experience-cards h3{font-size:20px;margin-top:12px}.experience-cards p{font-size:11px;margin-top:9px;line-height:1.6}.experience-cards .icon-circle{width:39px;height:39px}.devices{position:relative;min-height:300px;padding:15px 25px 20px 55px}.desktop-device{background:white;border:7px solid #302922;border-radius:14px;box-shadow:0 17px 30px #36241825;transform:rotate(-5deg);max-width:370px;margin-left:auto;overflow:hidden}.device-top{font-size:7px;text-align:center;padding:6px;color:var(--copper)}.desktop-device .device-photo{position:relative}.desktop-device img{height:210px;width:100%;object-fit:cover}.desktop-device .device-photo div{position:absolute;inset:auto 0 0;background:linear-gradient(transparent,#191009c9);color:white;padding:35px 15px 15px;text-align:center;font-family:var(--serif);font-size:31px;line-height:1}.desktop-device .device-bottom{text-align:center;font-size:9px;padding:12px;color:var(--copper)}.phone-device{position:absolute;bottom:0;left:6px;width:116px;background:white;border:5px solid #282522;border-radius:20px;padding:7px;box-shadow:0 12px 28px #36241830;transform:rotate(3deg)}.phone-device:before{content:'';display:block;background:#282522;border-radius:9px;width:48px;height:9px;margin:-7px auto 8px}.phone-device img{height:80px;object-fit:cover;width:100%;border-radius:5px}.phone-device b{font-family:var(--serif);font-weight:500;font-size:14px;display:block;text-align:center;margin:8px 0}.phone-device span{display:block;font-size:7px;padding:8px;border-top:1px solid var(--line)}.trust-row{display:grid;grid-template-columns:1.3fr .7fr 1.3fr;gap:22px;align-items:center}.trust-row .quote{padding:18px}.trust-row .quote p{font-size:17px}.trust-row .stats{flex-direction:column;gap:8px}.trust-row .stats b{font-family:var(--serif);font-size:35px;color:var(--brand)}.trust-row .stats .stars{color:var(--gold);letter-spacing:5px;font-size:17px}.trust-row .logos{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:center;border:1px solid var(--line);padding:24px 16px;background:var(--surface);border-radius:12px}.trust-row .logos span{font-family:var(--serif);font-size:18px;color:var(--muted)}.mini-articles{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.mini-article{display:grid;grid-template-columns:42% 58%;border:1px solid var(--line);background:var(--surface);border-radius:8px;overflow:hidden}.mini-article img{width:100%;height:140px;object-fit:cover}.mini-article div{padding:12px}.mini-article h3{font-size:19px}.mini-article small{font-size:8px;letter-spacing:.1em;color:var(--copper)}.mini-article .text-link{font-size:10px;margin-top:9px}.introduction{padding:28px 0;background:var(--cream)}.status-strip{display:flex;justify-content:center;gap:30px;padding:17px;background:var(--surface);border:1px solid var(--line);border-radius:13px;position:relative;margin-top:-25px;z-index:3;max-width:700px;margin-inline:auto}.status-strip>div{display:flex;gap:12px;align-items:center;font-size:12px}.status-strip .icon{color:var(--copper)}
/* Couple experience */
.partners{display:grid;grid-template-columns:1fr 150px 1fr;gap:18px;align-items:stretch}.partner{display:grid;grid-template-columns:46% 54%;border:1px solid var(--line);background:var(--surface);border-radius:12px;overflow:hidden}.partner>img{height:100%;min-height:312px;width:100%;object-fit:cover;object-position:50% 28%}.partner .partner-copy{padding:26px 20px;align-self:center}.partner .eyebrow{font-size:8px;margin-bottom:11px;letter-spacing:.17em}.partner h2{font-size:40px}.partner blockquote{font-family:var(--serif);font-style:italic;font-size:19px;line-height:1.4;margin:18px 0;color:var(--muted)}.partner .icon{color:var(--copper);margin-top:8px}.love-divider{background:url("../assets/decorations/botanical.3fe5b9b18850.svg") center/contain no-repeat;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--copper);position:relative}.love-divider b{font-family:var(--serif);font-size:60px;font-weight:400;line-height:.85;text-align:center;letter-spacing:-.05em;padding:15px;background:rgb(251 248 243/.88)}.love-divider span{font-size:8px;letter-spacing:.25em;text-align:center;margin-top:18px}.story-intro{display:grid;grid-template-columns:1fr 1.8fr;gap:35px;align-items:center}.story-intro p{font-size:13px;margin-block:14px}.timeline-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.timeline-cards h3{font-size:22px}.timeline-cards p{font-size:11px;margin-top:8px}.timeline-cards small{font-size:10px;color:var(--copper)}.timeline-cards img{width:100%;height:102px;object-fit:cover;border-radius:7px;margin-top:13px}.book-closed{display:flex;align-items:center;gap:20px;border:1px solid var(--line);padding:17px;background:var(--surface);border-radius:12px;margin-top:25px}.book-cover{width:65px;height:83px;position:relative;background:var(--brand);border:1px solid #ad7c50;outline:4px solid var(--brand);outline-offset:0;color:#edcfab;border-radius:2px 6px 6px 2px;display:grid;place-items:center;text-align:center;font-family:var(--serif);line-height:1.15;font-size:19px;box-shadow:4px 3px 0 #c8b8a9}.book-closed h3{font-size:22px}.book-closed p{font-size:11px}.countdown-band{background:var(--cream);padding:25px 0;margin-top:12px}.countdown-band .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.countdown-band h2{font-size:29px}.countdown{display:flex;gap:10px}.countdown div{text-align:center;border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:13px 19px;min-width:78px}.countdown b{font-family:var(--serif);display:block;font-size:31px;line-height:1.1;font-weight:500;color:var(--brand)}.countdown small{font-size:10px;color:var(--copper)}.program-grid .card{display:flex}.program-grid img{width:32%;min-height:132px;object-fit:cover}.program-grid .card-body{padding:14px}.program-grid h3{font-size:21px}.program-grid p{font-size:11px;margin-top:7px}.program-grid small{font-size:10px;color:var(--copper)}.rsvp-callout{display:grid;grid-template-columns:1.2fr 1.2fr .8fr;gap:30px;align-items:center;padding:30px;border:1px solid var(--line);background:var(--surface);border-radius:12px}.rsvp-callout h2{font-size:32px}.rsvp-callout p{font-size:12px;margin-block:12px}.rsvp-callout img{height:185px;object-fit:cover;width:100%;border-radius:8px}.preview-gallery{display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:12px}.preview-gallery a{border-radius:9px;overflow:hidden;position:relative}.preview-gallery img{width:100%;height:180px;object-fit:cover}.preview-gallery a:first-child{grid-column:span 2}.preview-gallery a:hover img{filter:brightness(.9)}.book-dialog{max-width:940px}.book-spread{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);background:#f9f2e7}.book-spread .book-image{width:100%;height:370px;object-fit:cover}.book-copy{padding:30px;font-family:var(--serif);font-size:21px;line-height:1.6;height:370px;overflow:hidden;border-left:1px solid #d9c6b5;box-shadow:inset 8px 0 18px #694d3310;color:var(--ink)}.book-controls{display:flex;justify-content:space-between;align-items:center;margin-top:16px}.book-full{font-size:14px;line-height:1.8;margin-top:18px}.book-full summary{cursor:pointer;color:var(--copper)}
/* Invitation and forms */
.steps-bar{display:flex;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:17px;justify-content:space-around;margin-top:24px;gap:20px}.step-indicator{display:flex;gap:11px;align-items:center;font-size:12px;color:var(--muted)}.step-indicator b{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:20px;font-weight:400}.step-indicator.active b{background:var(--brand);color:white}.step-indicator strong{font-family:var(--serif);display:block;font-size:18px;font-weight:500;color:var(--brand)}.step-indicator small{font-size:10px}.form-section{border:1px solid var(--line);background:var(--surface);border-radius:13px;padding:23px;margin-bottom:18px}.form-section-head{display:flex;gap:13px;align-items:center;margin-bottom:20px}.form-section-head h2{font-size:29px}.form-section-head p{font-size:12px}.form-section-head .icon-circle{background:var(--brand);color:white;width:40px;height:40px}.presence-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.presence-option{position:relative;display:flex;flex-direction:column;align-items:center;padding:22px 12px;gap:12px;text-align:center;border:1px solid var(--line);border-radius:10px;cursor:pointer}.presence-option:has(input:checked){background:#f7eadd;border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper)}.presence-option input{position:absolute;left:11px;top:11px}.presence-option b{font-family:var(--serif);font-size:21px;font-weight:500}.presence-option small{font-size:11px;color:var(--muted)}.event-summary>img{border-radius:8px;width:100%;height:180px;object-fit:cover;margin-bottom:18px}.event-summary li{display:flex;gap:12px;margin-top:13px;font-size:12px;align-items:flex-start}.event-summary ul{list-style:none;padding:0}.event-summary .icon{color:var(--copper)}.data-list{display:grid;grid-template-columns:1fr 1.4fr;gap:12px;font-size:13px;margin:0}.data-list dt{color:var(--muted)}.data-list dd{margin:0;min-width:0}.data-list dd strong{color:var(--brand)}.summary-success{background:#eef1e6;border-radius:11px;text-align:center;padding:27px;margin-bottom:20px;color:#526c4b}.summary-success .icon{width:42px;height:42px;margin-bottom:13px}.summary-success h3{color:#405e3f}.invitation-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:24px}.invitation-paper{position:relative;isolation:isolate;background:#fffdf7;border:1px solid #e1c4a5;box-shadow:0 12px 28px #5b371514;max-width:500px;margin:16px auto 0;padding:37px 36px;text-align:center;border-radius:7px;color:var(--brand);aspect-ratio: .707}.invitation-paper:before,.invitation-paper:after{content:'';position:absolute;width:110px;height:190px;left:0;top:0;background:url("../assets/decorations/botanical.3fe5b9b18850.svg") center/contain no-repeat;z-index:-1;opacity:.7}.invitation-paper:after{left:auto;right:0;top:auto;bottom:0;transform:rotate(180deg)}.invitation-paper .brand{margin-bottom:33px}.invitation-paper .eyebrow{font-size:8px;letter-spacing:.19em}.invitation-names{font-family:var(--script);font-size:55px;line-height:1.2;color:var(--copper);font-weight:400;margin-block:24px}.invitation-date{font-family:var(--serif);font-size:19px;letter-spacing:.14em;margin-block:23px}.invitation-times{display:flex;justify-content:space-evenly;gap:16px;margin-block:24px}.invitation-times>div{font-family:var(--serif);font-size:16px}.invitation-times b{font-size:24px;font-weight:500;display:block}.invitation-location{font-family:var(--serif);font-size:23px}.invitation-quote{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.5;margin:21px auto;max-width:330px;color:var(--muted)}.qr{width:118px;height:118px;object-fit:contain;background:white;margin:auto}.qr-note{font-size:9px;color:var(--muted);margin-top:6px}.invitation-details{display:grid;grid-template-columns:1fr 144px;gap:18px;align-items:center}.invite-tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}.personal-profile{display:grid;grid-template-columns:180px 1fr 240px;gap:35px;align-items:center;padding-block:45px}.personal-profile .profile-photo{width:180px;height:180px;object-fit:cover;object-position:top;border:5px solid #fff9;border-radius:50%}.profile-hero{background:var(--cream)}.personal-profile h1{font-size:52px}.personal-profile p{max-width:480px;font-family:var(--serif);font-size:23px;font-style:italic;margin-top:14px}.qr-card{padding:18px;text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:15px}.qr-card h3{font-size:23px;margin-bottom:10px}.qr-card .btn{margin-top:12px}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.auth-layout{display:grid;grid-template-columns:1fr 1fr;min-height:calc(100dvh - 78px)}.auth-visual{position:relative;isolation:isolate;padding:60px;display:flex;flex-direction:column;justify-content:space-between;color:white}.auth-visual img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.auth-visual:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(#33221370,transparent 35%,#211407b5)}.auth-visual h1{color:white;font-size:52px}.auth-visual p{color:#f5e6d5;max-width:380px;font-size:15px;margin-top:14px}.auth-visual .script{font-size:37px}.auth-panel{align-self:center;max-width:580px;width:100%;padding:42px 55px;margin:auto}.auth-panel h1{font-size:45px}.auth-panel>p{margin:12px 0 24px;font-size:14px}.auth-panel .field{margin-bottom:18px}.password-field{position:relative}.password-field input{padding-right:50px!important}.password-field button{position:absolute;right:8px;top:6px;width:36px;height:36px;border:0;background:none;color:var(--muted)}.social-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.social-row .btn{font-size:11px}.auth-foot{text-align:center;margin-top:24px;font-size:12px}.wizard-shell{display:grid;grid-template-columns:240px minmax(0,1fr) 270px;gap:26px;padding-block:30px}.wizard-nav{list-style:none;padding:0}.wizard-nav li{margin-bottom:8px}.wizard-nav button{display:flex;align-items:center;gap:12px;background:none;border:0;text-align:left;padding:13px 10px;width:100%;font-size:12px;color:var(--muted);border-radius:9px}.wizard-nav button b{font-family:var(--serif);font-size:21px;font-weight:500;display:grid;place-items:center;width:35px;height:35px;border:1px solid var(--line);border-radius:50%;flex-shrink:0}.wizard-nav button.active{background:var(--cream);color:var(--brand)}.wizard-nav button.active b{background:var(--brand);color:white}.wizard-nav button.done b{background:#ebf0e6;color:#4c6d45}.wizard-main{min-width:0}.wizard-main h2{font-size:36px}.wizard-main>.subtitle{margin-block:10px 25px}.wizard-main section h3{margin-bottom:15px}.wizard-main section>p{font-size:13px;margin-bottom:20px}.wizard-actions{display:flex;justify-content:space-between;gap:12px;margin-top:28px;flex-wrap:wrap}.selection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:24px}.selection{border:1px solid var(--line);border-radius:10px;background:var(--surface);padding:20px 14px;display:flex;flex-direction:column;gap:12px;align-items:center;position:relative;text-align:center;cursor:pointer;min-height:135px}.selection input{position:absolute;left:10px;top:10px}.selection:has(input:checked){border-color:var(--copper);box-shadow:inset 0 0 0 1px var(--copper);background:#f9eee3}.selection img{height:80px;object-fit:cover;width:100%;border-radius:6px}.selection b{font-family:var(--serif);font-weight:500;font-size:23px}.selection small{font-size:11px;color:var(--muted)}.wizard-progress{width:100%;accent-color:var(--copper);height:8px;margin-top:14px}.swatches{display:flex;gap:10px}.swatch{width:32px;height:32px;border-radius:50%;border:2px solid white;outline:1px solid var(--line)}.studio-grid{display:grid;grid-template-columns:220px minmax(0,1fr) 230px;gap:24px;padding-block:28px}.studio-options{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.studio-option{border:1px solid var(--line);border-radius:12px;background:var(--surface);padding:20px;overflow:hidden;position:relative}.studio-option h3{font-size:26px;margin-top:13px}.studio-option p{font-size:12px;margin-top:10px}.studio-option ul{font-size:11px;color:var(--muted);padding-left:16px;margin:17px 0}.studio-option li{margin-bottom:8px}.studio-option .mini-invite{background:#f9f0df;color:var(--copper);font-family:var(--script);font-size:25px;min-height:110px;text-align:center;display:grid;place-items:center;border:1px solid #dcc3a5;transform:rotate(-3deg);border-radius:5px;margin:20px 3px}.studio-option .mini-invite.event{background:#152d27;color:#e5bf7e;font-family:var(--serif)}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.tool-grid a{display:flex;flex-direction:column;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;padding:14px 7px;font-size:11px;text-align:center}.editor-layout{display:grid;grid-template-columns:270px minmax(0,1fr) 230px;gap:22px;padding-block:25px;min-height:750px}.editor-canvas{padding:28px;background:#ebe8e3;border:1px solid var(--line);border-radius:12px;display:flex;align-items:flex-start;justify-content:center;overflow:auto}.editor-canvas .invitation-paper{width:100%;max-width:450px;margin:0;flex-shrink:0}.editor-toolbar{display:flex;justify-content:space-between;align-items:center;margin-top:20px;gap:15px}.editor-toolbar h1{font-size:33px}.editor-fields label{display:block;font-size:12px;margin:14px 0 7px}.editor-models{display:flex;gap:7px;flex-wrap:wrap}.editor-photo{width:100%;height:140px;object-fit:cover;border-radius:8px;margin-top:20px}.program-timeline{border-left:1px solid var(--line);margin-left:17px;padding-left:25px}.program-timeline article{position:relative;display:grid;grid-template-columns:70px 1fr 100px;gap:16px;padding-bottom:25px;align-items:center}.program-timeline article:before{content:'';position:absolute;left:-30px;top:12px;width:9px;height:9px;background:var(--copper);border-radius:50%}.program-timeline article img{width:100px;height:68px;object-fit:cover;border-radius:7px}.program-timeline h3{font-size:24px;margin-bottom:7px}.program-timeline p{font-size:11px}.program-timeline time{font-family:var(--serif);font-size:20px;color:var(--brand)}.location-preview{position:relative;min-height:210px;background:#e7e8df;border-radius:12px;overflow:hidden;display:grid;place-items:center;text-align:center;padding:25px}.location-preview:before{content:'';position:absolute;width:180%;height:26px;transform:rotate(-25deg);background:#c4d4ce;pointer-events:none}.location-preview>div{position:relative;background:var(--surface);border:1px solid var(--line);padding:20px;border-radius:12px;box-shadow:var(--shadow)}.error-layout{min-height:calc(100dvh - 78px);display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-block:70px;max-width:1040px}.error-code{font-family:var(--serif);font-size:160px;color:var(--brand);font-weight:400;line-height:1}.error-layout h1{font-size:46px;margin-bottom:20px}.error-layout p{max-width:470px;margin-bottom:25px;font-family:var(--serif);font-size:23px}.error-art{position:relative;height:400px;display:grid;place-items:center;background:#f4e9da;border-radius:200px 200px 14px 14px;border:1px solid var(--line);overflow:hidden}.error-art>img{position:absolute;inset:0;opacity:.25;width:100%;height:100%;object-fit:cover}.error-art>.icon{position:relative;width:135px;height:135px;color:var(--brand);stroke-width:1}.error-art .script{position:absolute;bottom:55px;text-align:center;color:var(--brand);font-size:31px}.support-status{list-style:none;padding:0}.support-status li{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:14px 0;font-size:12px}.support-status li>span{display:flex;align-items:center;gap:10px}.catalog-item{display:flex;gap:20px;align-items:center;border:1px solid var(--line);padding:20px;border-radius:12px;background:var(--surface)}.catalog-number{font-family:var(--serif);font-size:40px;color:#bba68f}.catalog-item h2{font-size:25px}.catalog-item p{font-size:11px;margin-top:5px}.catalog-item .round-btn{margin-left:auto}.help-links{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.help-links .panel{padding:16px}.help-links h3{font-size:22px}.help-links p{font-size:11px;margin-top:8px}.reviews{margin-top:22px}.reviews .quote p{font-size:20px}.provider-profile .hero-media{left:45%}.provider-photo{border-radius:12px;width:100%;object-fit:cover;height:330px}.site-search-results{max-height:50dvh;overflow:auto;margin-top:16px}.site-search-results a{display:block;padding:12px;border-bottom:1px solid var(--line);font-size:14px}
