*{box-sizing:border-box}html{scroll-behavior:smooth}body,html{min-height:100%}body{margin:0;background:#fff8ef;color:#282323;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.admin-login-page,.builder-page{min-height:100vh;background:#f6f1ea;color:#25211f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-login-page{display:grid;place-items:center;padding:32px 16px}.admin-login-panel{width:min(100%,520px);padding:28px;border:1px solid rgba(91,70,61,.14);border-radius:24px;background:#fffdf8;box-shadow:0 24px 70px rgba(91,70,61,.12)}.app-home-panel{width:min(100%,620px)}.app-home-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.admin-login-panel h1,.builder-header h1{margin:0 0 10px;font-size:30px;line-height:1.15}.admin-login-panel p{margin:0 0 18px;color:#6f6661;line-height:1.55}.admin-kicker{margin:0 0 8px;color:#cf3336;font-size:12px;font-weight:900;text-transform:uppercase}.admin-login-code{display:grid;grid-gap:8px;gap:8px;margin:20px 0;padding:18px;border-radius:18px;background:#fff3ea}.admin-login-code small,.admin-login-code span,.builder-muted{color:#7e7470}.admin-login-code strong{color:#cf3336;font-size:24px}.admin-auth-form{display:grid;grid-gap:14px;gap:14px;margin:22px 0 16px}.admin-auth-form label{display:grid;grid-gap:6px;gap:6px;color:#5b463d;font-weight:800}.admin-auth-form input,.builder-admin-invite input{width:100%;border:1px solid rgba(91,70,61,.18);border-radius:12px;background:#fffaf5;color:#3f3029;font:inherit;padding:12px 14px}.admin-primary-button,.builder-block-list button,.builder-block-switch,.builder-editor button,.builder-header__actions a,.builder-header__actions button,.builder-media-grid button,.builder-section-tabs button{border:0;border-radius:12px;cursor:pointer;font-weight:800}.admin-primary-button{min-height:44px;padding:0 18px;background:#cf3336;color:#fffdf8}.admin-danger-button{min-height:34px;padding:0 12px;border:0;border-radius:10px;background:#fff0ee;color:#9f1f22;cursor:pointer;font-weight:900}.admin-danger-button,.admin-link-button{display:inline-flex;align-items:center;justify-content:center}.admin-link-button{text-decoration:none}.admin-secondary-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 16px;border-radius:12px;background:#f8f3ee;color:#3a302b;font-weight:800}.admin-danger-button:disabled,.admin-primary-button:disabled,.builder-editor button:disabled,.builder-header__actions button:disabled,.builder-media-grid button:disabled{cursor:default;opacity:.62}.admin-delete-action{display:grid;grid-gap:6px;gap:6px;justify-items:start}.admin-delete-action small{max-width:180px;color:#9f1f22;font-weight:800}.admin-message{margin:12px 0;padding:12px 14px;border-radius:14px;font-weight:800}.admin-message--error{background:#ffe3df;color:#9f1f22}.admin-message--success{background:#e5f1dd;color:#356423}.builder-page{padding:20px}.builder-header{display:flex;gap:16px;align-items:center;justify-content:space-between;margin:0 0 18px}.builder-header__actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.builder-editor button,.builder-header__actions a,.builder-header__actions button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;background:#fffdf8;color:#3a302b;box-shadow:inset 0 0 0 1px rgba(91,70,61,.14)}.admin-delete-action .admin-danger-button,.builder-editor .admin-danger-button{background:#fff0ee;color:#9f1f22;box-shadow:inset 0 0 0 1px rgba(159,31,34,.14)}.builder-layout{display:grid;grid-template-columns:280px minmax(360px,1fr) 420px;grid-gap:16px;gap:16px;align-items:start}.builder-editor,.builder-preview,.builder-sidebar{min-height:240px;padding:16px;border:1px solid rgba(91,70,61,.12);border-radius:18px;background:#fffdf8}.builder-editor,.builder-editor-panel,.builder-sidebar{display:grid;grid-gap:16px;gap:16px}.builder-field,.builder-toggle{display:grid;grid-gap:8px;gap:8px;color:#3a302b;font-weight:800}.builder-field input,.builder-field select,.builder-field textarea,.builder-image-field input,.builder-media-upload input{width:100%;border:1px solid rgba(91,70,61,.18);border-radius:12px;background:#fff;color:#25211f;padding:10px 12px;outline:none}.builder-field textarea{resize:vertical}.builder-design-note{margin:14px 0;padding:12px;border-left:4px solid #cf3336;border-radius:12px;background:#f8f3ee;color:#6f6661;line-height:1.45}.builder-section-tabs{display:grid;grid-gap:8px;gap:8px}.builder-section-tabs button{min-height:60px;display:grid;grid-gap:3px;gap:3px;padding:10px 12px;background:#f8f3ee;color:#3a302b;text-align:left;box-shadow:inset 0 0 0 1px rgba(91,70,61,.08)}.builder-section-tabs button.is-active{background:#3a302b;color:#fffdf8}.builder-section-tabs small{color:inherit;font-size:12px;font-weight:700;opacity:.74}.builder-sidebar__summary{display:grid;grid-gap:2px;gap:2px;padding:12px;border-radius:14px;background:#fff3ea;color:#5b463d}.builder-sidebar__summary strong{color:#cf3336;font-size:22px;line-height:1}.builder-sidebar__caption,.builder-sidebar__summary span{color:#6f6661;font-size:12px;font-weight:900;text-transform:uppercase}.builder-block-list{display:grid;grid-gap:8px;gap:8px}.builder-block-list button{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;background:#f8f3ee;color:#3a302b;text-align:left}.builder-block-list button.is-disabled{background:#eee8e1;color:#7e7470}.builder-block-list button.is-active{background:#cf3336;color:#fffdf8}.builder-block-list small{min-width:72px;min-height:24px;display:inline-grid;place-items:center;padding:0 8px;border-radius:999px;background:rgba(255,253,248,.72);font-size:12px;opacity:.9}.builder-editor__top{display:flex;align-items:center;justify-content:space-between;gap:12px}.builder-admins__header h2,.builder-editor__top h2,.builder-media-upload h3,.builder-rsvp-panel__header h2,.builder-theme-editor h3{margin:0}.builder-editor__top div{display:flex;gap:8px}.builder-admins__header>div,.builder-editor__top>div:first-child,.builder-rsvp-panel__header>div{display:grid;grid-gap:4px;gap:4px}.builder-panel-kicker{margin:0;color:#cf3336;font-size:12px;font-weight:900;text-transform:uppercase}.builder-block-switch{min-height:auto;display:grid;grid-template-columns:58px 1fr;grid-gap:4px 12px;gap:4px 12px;align-items:center;padding:14px;text-align:left;box-shadow:inset 0 0 0 1px rgba(91,70,61,.12)}.builder-block-switch>span{grid-row:1/3;position:relative;width:52px;height:30px;border-radius:999px;background:#d8cec6;transition:background .16s ease}.builder-block-switch>span:after{content:"";position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:#fffdf8;box-shadow:0 3px 10px rgba(91,70,61,.2);transition:transform .16s ease}.builder-block-switch.is-on{background:#eff7e9;color:#2f5b20}.builder-block-switch.is-on>span{background:#5f9a43}.builder-block-switch.is-on>span:after{transform:translateX(22px)}.builder-block-switch.is-off{background:#fff0ee;color:#9f1f22}.builder-block-switch small{color:#6f6661;font-weight:700}.builder-block-section{display:grid;grid-gap:12px;gap:12px;padding:14px;border:1px solid rgba(91,70,61,.1);border-radius:16px;background:#fffaf5}.builder-block-section h3{margin:0}.builder-block-section p{margin:0;color:#6f6661;line-height:1.45}.builder-block-section__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.builder-block-section__header>div{display:grid;grid-gap:4px;gap:4px}.builder-block-appearance{background:#faf7f2}.builder-form-grid,.builder-list-editor,.builder-list-item,.builder-media-upload{display:grid;grid-gap:12px;gap:12px}.builder-form-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-list-item{padding:12px;border:1px solid rgba(91,70,61,.12);border-radius:14px;background:#faf7f2}.builder-image-field{display:grid;grid-template-columns:132px minmax(0,1fr);grid-gap:12px;gap:12px;align-items:stretch;padding:12px;border:1px solid rgba(91,70,61,.1);border-radius:14px;background:#faf7f2}.builder-image-field__preview{min-height:118px;display:grid;place-items:center;overflow:hidden;border-radius:16px;background:#fff3ea;color:#9f1f22;font-size:12px;font-weight:900;text-align:center}.builder-image-field__preview img{width:100%;height:100%;display:block;object-fit:cover}.builder-image-field__controls{display:grid;grid-gap:8px;gap:8px;align-content:center}.builder-image-field__controls small{color:#9f1f22;font-weight:800}.builder-contact-items{display:grid;grid-gap:12px;gap:12px;padding:14px;border:1px solid rgba(91,70,61,.1);border-radius:16px;background:#faf7f2}.builder-contact-item{display:grid;grid-gap:12px;gap:12px;padding:12px;border:1px solid rgba(91,70,61,.1);border-radius:14px;background:#fffdf8}.builder-contact-item__top{display:flex;align-items:center;justify-content:space-between;gap:10px}.builder-contact-item__top>div{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.builder-theme-editor,.builder-theme-group{display:grid;grid-gap:12px;gap:12px}.builder-theme-group{padding:14px;border:1px solid rgba(91,70,61,.1);border-radius:14px;background:#faf7f2}.builder-color-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.builder-color-grid label{display:grid;grid-gap:6px;gap:6px;color:#6f6661;font-size:12px;font-weight:900;text-transform:uppercase}.builder-color-grid input{width:100%;height:42px;border:0;border-radius:12px;background:transparent;padding:0}.builder-block-color-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:10px;gap:10px}.builder-color-control{display:grid;grid-gap:7px;gap:7px;color:#6f6661;font-size:12px;font-weight:900;text-transform:uppercase}.builder-color-control input{width:100%;height:42px;border:0;border-radius:12px;background:transparent;padding:0}.builder-color-control button{min-height:30px;padding:0 10px;font-size:12px}.builder-size-grid{display:grid;grid-gap:12px;gap:12px}.builder-range-field{display:grid;grid-gap:8px;gap:8px;color:#3a302b;font-weight:800}.builder-range-field span{display:flex;justify-content:space-between;gap:12px}.builder-range-field strong{color:#cf3336}.builder-range-field input{width:100%;accent-color:#cf3336}.builder-media-target{display:grid;grid-gap:4px;gap:4px;padding:12px;border-radius:14px;background:#fff3ea}.builder-media-target span{color:#6f6661}.builder-admins,.builder-rsvp-panel{display:grid;grid-gap:12px;gap:12px}.builder-admins__header,.builder-rsvp-panel__header{display:flex;align-items:center;justify-content:space-between;gap:12px}.builder-admins__header h3,.builder-rsvp-panel__header h3{margin:0}.builder-admin-list{display:grid;grid-gap:8px;gap:8px}.builder-admin-invite,.builder-admin-list article{display:grid;grid-gap:4px;gap:4px;padding:12px;border-radius:14px;background:#faf7f2}.builder-admin-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.builder-admin-list article>div{display:grid;grid-gap:4px;gap:4px}.builder-admin-invite small,.builder-admin-invite span,.builder-admin-list small,.builder-admin-list span{color:#6f6661}.builder-admin-invite strong{color:#cf3336;font-size:18px}.builder-rsvp-panel{min-height:0}.builder-rsvp-stats{display:flex;flex-wrap:wrap;gap:8px}.builder-rsvp-stats span{min-height:30px;display:inline-flex;align-items:center;padding:0 10px;border-radius:999px;background:#f8f3ee;color:#3a302b;font-size:13px;font-weight:800}.builder-rsvp-list{display:grid;grid-gap:8px;gap:8px;max-height:360px;overflow:auto}.builder-rsvp-list article{display:grid;grid-gap:8px;gap:8px;padding:12px;border-radius:14px;background:#faf7f2;box-shadow:inset 0 0 0 1px rgba(91,70,61,.08)}.builder-rsvp-list article.has-rsvp{background:#f0f7ec}.builder-rsvp-list span,.builder-rsvp-list strong{font-weight:900}.builder-rsvp-empty,.builder-rsvp-list p,.builder-rsvp-list small{color:#6f6661}.builder-rsvp-list p{margin:6px 0 0}.builder-rsvp-list .admin-danger-button{justify-self:start}.builder-media-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:8px;gap:8px}.builder-media-grid button{position:relative;aspect-ratio:1;overflow:hidden;padding:0;background:#eee6dc}.builder-media-grid button:disabled img{filter:grayscale(1)}.builder-media-grid img{width:100%;height:100%;display:block;object-fit:cover}.builder-media-grid span{position:absolute;left:6px;right:6px;bottom:6px;min-height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(255,253,248,.9);color:#cf3336;font-size:12px}.builder-preview{position:-webkit-sticky;position:sticky;top:16px;padding:10px}.builder-preview__phone{height:calc(100vh - 72px);overflow:auto;border-radius:28px;background:#fff8ef;box-shadow:inset 0 0 0 1px rgba(91,70,61,.14)}.builder-preview .wedding-page{min-height:auto;padding-bottom:32px}.builder-preview__surface{pointer-events:none}.admin-dashboard{display:grid;grid-gap:18px;gap:18px}.admin-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px}.admin-choice-grid a{display:grid;grid-gap:8px;gap:8px;min-height:150px;padding:18px;border:1px solid rgba(91,70,61,.12);border-radius:18px;background:#fffdf8;color:#25211f;text-decoration:none}.admin-choice-grid span{color:#cf3336;font-size:12px;font-weight:900;text-transform:uppercase}.admin-choice-grid strong{font-size:22px;line-height:1.12}.admin-choice-grid small{color:#6f6661;line-height:1.45}.admin-dashboard__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:12px;gap:12px}.admin-dashboard__grid article,.admin-dashboard__links,.admin-dashboard__photos{padding:16px;border:1px solid rgba(91,70,61,.12);border-radius:18px;background:#fffdf8}.admin-dashboard__grid article{display:grid;grid-gap:6px;gap:6px}.admin-dashboard__grid span,.admin-dashboard__links span,.admin-dashboard__photos p{color:#6f6661}.admin-dashboard__grid strong{color:#cf3336;font-size:30px;line-height:1}.admin-dashboard__links,.admin-dashboard__photos{display:grid;grid-gap:12px;gap:12px}.admin-invitation-copy{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:10px;gap:10px;align-items:end}.admin-invitation-copy label{display:grid;grid-gap:8px;gap:8px}.admin-invitation-copy small{grid-column:1/-1;color:#356423;font-weight:800}.admin-dashboard__links h2,.admin-dashboard__photos h2{margin:0}.admin-dashboard__links label{display:grid;grid-gap:8px;gap:8px;font-weight:800}.admin-dashboard__links input{width:100%;border:1px solid rgba(91,70,61,.18);border-radius:12px;background:#fff;color:#25211f;padding:10px 12px}.admin-dashboard__photo-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:10px;gap:10px}.admin-dashboard__photo-grid figure{position:relative;aspect-ratio:1;overflow:hidden;margin:0;border-radius:14px;background:#eee6dc}.admin-dashboard__photo-grid img{width:100%;height:100%;display:block;object-fit:cover}.admin-dashboard__photo-grid figcaption{position:absolute;left:6px;right:6px;bottom:6px;min-height:24px;display:grid;place-items:center;border-radius:999px;background:rgba(255,253,248,.92);color:#3a302b;font-size:12px;font-weight:800}.admin-guests-page{display:grid;grid-gap:18px;gap:18px}.admin-guests-table-wrap{overflow:auto;border:1px solid rgba(91,70,61,.12);border-radius:18px;background:#fffdf8}.admin-guests-table{width:100%;min-width:1120px;border-collapse:collapse}.admin-guests-table td,.admin-guests-table th{padding:12px 14px;border-bottom:1px solid rgba(91,70,61,.1);text-align:left;vertical-align:top}.admin-guests-table th{color:#5b463d;font-size:12px;font-weight:900;text-transform:uppercase}.admin-guests-table td{color:#3a302b}.admin-guests-table td:first-child{display:grid;grid-gap:4px;gap:4px}.admin-guests-table small{color:#6f6661}@media (max-width:1180px){.builder-layout{grid-template-columns:260px minmax(0,1fr)}.builder-preview{grid-column:1/-1;position:static}}@media (max-width:760px){.builder-page{padding:12px}.builder-contact-item__top,.builder-editor__top,.builder-header{align-items:stretch;flex-direction:column}.builder-layout{grid-template-columns:1fr}.builder-block-color-grid,.builder-color-grid,.builder-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-image-field{grid-template-columns:1fr}.admin-choice-grid,.admin-dashboard__grid,.admin-dashboard__photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-invitation-copy{grid-template-columns:1fr}}@media (max-width:520px){.admin-choice-grid,.admin-dashboard__grid,.admin-dashboard__photo-grid{grid-template-columns:1fr}}:root{--wedding-bg:#fff8ef;--wedding-pink:#efd3df;--wedding-red:#cf3336;--wedding-orange:#ff7138;--wedding-peach:#f4c7a1;--wedding-text:#282323;--wedding-muted:#7e7470;--wedding-white:#fffdf8;--wedding-script:"Segoe Script","Brush Script MT","Snell Roundhand",cursive;--wedding-heading-font:var(--wedding-script);--wedding-body-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--wedding-title-scale:1;--wedding-text-scale:1;--wedding-section-spacing:1}.wedding-page{min-height:100vh;overflow-x:hidden;background:radial-gradient(circle at 14% 4%,rgba(239,211,223,.72) 0 92px,transparent 94px),linear-gradient(180deg,var(--wedding-bg) 0,#fff1e3 48%,var(--wedding-bg) 100%);font-family:var(--wedding-body-font);padding:0 0 112px}.wedding-shell{position:relative;width:min(100%,680px);margin:0 auto;padding:0 18px 40px}.wedding-cover{position:relative;min-height:660px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 18px 64px;text-align:center;isolation:isolate}.wedding-cover:after{content:"";position:absolute;left:50%;bottom:20px;width:260px;height:72px;border-radius:62% 38% 54% 46%;background:var(--wedding-peach);transform:translateX(-50%) rotate(-3deg);opacity:.72;z-index:-1}.wedding-cover__mark{position:relative;width:184px;height:184px;display:grid;place-items:center;margin-bottom:26px;border:1px solid rgba(207,51,54,.22);border-radius:50%;background:rgba(255,253,248,.7);box-shadow:0 24px 70px rgba(207,51,54,.12)}.wedding-cover__heart{width:100%;height:100%;display:grid;place-items:center}.wedding-cover__heart--secondary{display:none}.wedding-cover__image{width:100%;height:100%;display:block;object-fit:contain}.wedding-cover__title{display:grid;grid-gap:2px;gap:2px;margin:8px 0 16px;color:var(--wedding-red);font-family:var(--wedding-heading-font);font-size:calc(52px * var(--wedding-title-scale) * var(--wedding-block-heading-scale, 1));font-weight:400;line-height:.95}.wedding-cover__title span{color:var(--wedding-orange);font-size:calc(36px * var(--wedding-title-scale) * var(--wedding-block-heading-scale, 1))}.wedding-cover__date{margin:0;color:var(--wedding-text);font-size:calc(18px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));font-weight:700}.wedding-cover__guest{margin:18px 0 0;color:var(--wedding-muted);font-size:calc(16px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1))}.wedding-cover__blob{position:absolute;z-index:-1}.wedding-cover__blob--left{left:-74px;top:128px}.wedding-cover__blob--right{right:-86px;top:292px}.decorative-blob{display:block;width:214px;height:178px;border-radius:58% 42% 64% 36%/48% 56% 44% 52%;transform:rotate(-16deg);opacity:.9}.decorative-blob--pink{background:var(--wedding-pink)}.decorative-blob--orange{background:var(--wedding-orange)}.decorative-blob--red{background:var(--wedding-red)}.wedding-eyebrow,.wedding-section__kicker{margin:0 0 10px;color:var(--wedding-orange);font-size:calc(12px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));font-weight:800;text-transform:uppercase}.wedding-calendar,.wedding-section{position:relative;margin:calc(22px * var(--wedding-section-spacing)) 0;padding:calc(28px * var(--wedding-section-spacing)) 22px;border:1px solid rgba(207,51,54,.14);border-radius:34px 22px 42px 24px;background:rgba(255,253,248,.84);box-shadow:0 18px 54px rgba(126,116,112,.12)}.wedding-section:nth-of-type(2n){border-radius:24px 42px 26px 36px}.wedding-calendar h2,.wedding-section h2{margin:0 0 14px;color:var(--wedding-red);font-family:var(--wedding-heading-font);font-size:calc(36px * var(--wedding-title-scale) * var(--wedding-block-heading-scale, 1));font-weight:400;line-height:1.05}.wedding-section h3{margin:0 0 8px;color:var(--wedding-text);font-size:calc(17px * var(--wedding-text-scale) * var(--wedding-block-heading-scale, 1))}.wedding-calendar p,.wedding-section p{color:var(--wedding-muted);font-size:calc(16px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));line-height:1.55}.wedding-lead{font-size:calc(18px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));line-height:1.65}.wedding-date-time,.wedding-lead{margin:0;color:var(--wedding-text)}.wedding-date-time{display:inline-flex;align-items:center;min-height:42px;padding:0 18px;border-radius:999px;background:var(--wedding-pink);font-weight:700}.wedding-calendar{display:grid;grid-template-columns:132px 1fr;grid-gap:18px;gap:18px;align-items:center;background:var(--wedding-red)}.wedding-calendar p{margin:0;color:var(--wedding-white)}.wedding-calendar__sheet{min-height:150px;display:grid;place-items:center;padding:16px;border-radius:26px;background:var(--wedding-white);color:var(--wedding-red);text-align:center}.wedding-calendar__sheet strong{display:block;font-family:var(--wedding-heading-font);font-size:calc(56px * var(--wedding-title-scale) * var(--wedding-block-heading-scale, 1));font-weight:400;line-height:.8}.wedding-calendar__month{color:var(--wedding-muted);font-size:calc(13px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));font-weight:800;text-transform:uppercase}.wedding-location-list,.wedding-wishes{display:grid;grid-gap:14px;gap:14px}.wedding-contact,.wedding-location,.wedding-rsvp-summary,.wedding-wishes article{display:grid;grid-gap:14px;gap:14px;padding:18px;border-radius:24px 16px 28px 18px;background:rgba(239,211,223,.32)}.wedding-location p,.wedding-wishes p{margin:0}.wedding-wishes__closing{display:none}.wedding-contact__actions a,.wedding-file span,.wedding-link-button,.wedding-primary-button,.wedding-secondary-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:0;border-radius:999px;cursor:pointer;font-weight:800;line-height:1.2;text-align:center}.wedding-contact__actions a,.wedding-link-button,.wedding-secondary-button{background:var(--wedding-white);color:var(--wedding-red);box-shadow:inset 0 0 0 1px rgba(207,51,54,.18)}.wedding-primary-button{width:100%;background:var(--wedding-red);color:var(--wedding-white);transition:transform .16s ease,opacity .16s ease}.wedding-primary-button:disabled{cursor:default;opacity:.72}.sticky-action__button:active,.wedding-primary-button:not(:disabled):active{transform:translateY(1px)}.wedding-timeline{display:grid;grid-gap:16px;gap:16px;margin:0;padding:0;list-style:none}.wedding-timeline li{display:grid;grid-template-columns:76px 1fr;grid-gap:12px;gap:12px;align-items:start}.wedding-timeline time{min-height:38px;display:inline-grid;place-items:center;border-radius:999px;background:var(--wedding-orange);color:var(--wedding-white);font-weight:800}.wedding-timeline p{margin:0}.wedding-swatches{display:flex;gap:10px;margin-top:18px}.wedding-swatches span{width:42px;height:42px;border:4px solid var(--wedding-white);border-radius:50%;box-shadow:0 8px 18px rgba(126,116,112,.18)}.wedding-contact{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));align-items:center}.wedding-contact__item{display:grid;grid-gap:6px;gap:6px}.wedding-contact a,.wedding-contact span,.wedding-contact strong{display:block}.wedding-contact strong{margin-bottom:6px}.wedding-contact__actions{display:flex;flex-wrap:wrap;gap:10px}.wedding-status{display:inline-flex;align-items:center;min-height:38px;margin:18px auto 0;padding:0 16px;border-radius:999px;font-size:calc(14px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));font-weight:800}.wedding-status--positive{background:#e6f3dc;color:#3d6b2b}.wedding-status--muted{background:#eee8e1;color:#6a5f5b}.wedding-status--warm{background:#ffe0c8;color:#a14316}.wedding-status--neutral{background:var(--wedding-pink);color:var(--wedding-text)}.wedding-form,.wedding-upload{display:grid;grid-gap:16px;gap:16px}.wedding-fieldset{display:grid;grid-gap:10px;gap:10px;margin:0;padding:16px;border:1px solid rgba(207,51,54,.14);border-radius:22px}.wedding-fieldset legend{padding:0 8px;color:var(--wedding-red);font-weight:800}.wedding-field,.wedding-fieldset label{display:grid;grid-gap:8px;gap:8px;color:var(--wedding-text);font-weight:700}.wedding-fieldset label{grid-template-columns:20px 1fr;align-items:center}.wedding-field input,.wedding-field textarea{width:100%;border:1px solid rgba(207,51,54,.18);border-radius:18px;background:var(--wedding-white);color:var(--wedding-text);padding:13px 14px;outline:none}.wedding-field input:focus,.wedding-field textarea:focus{border-color:var(--wedding-orange);box-shadow:0 0 0 3px rgba(255,113,56,.14)}.wedding-rsvp-summary{grid-template-columns:1fr;margin:18px 0}.wedding-rsvp-summary div{display:flex;justify-content:space-between;gap:12px}.wedding-rsvp-summary dt{color:var(--wedding-muted)}.wedding-rsvp-summary dd{margin:0;color:var(--wedding-text);font-weight:800;text-align:right}.wedding-message{margin:0;padding:12px 14px;border-radius:18px;font-weight:700}.wedding-message--error{background:#ffe3df;color:#9f1f22}.wedding-message--success{background:#e5f1dd;color:#356423}.wedding-file{position:relative;display:grid;grid-gap:10px;gap:10px}.wedding-file span{background:var(--wedding-pink);color:var(--wedding-text)}.wedding-file input{width:100%;padding:12px;border:1px dashed rgba(207,51,54,.32);border-radius:18px;background:rgba(255,253,248,.8)}.wedding-progress{height:12px;overflow:hidden;border-radius:999px;background:rgba(126,116,112,.16)}.wedding-progress span{display:block;height:100%;border-radius:inherit;background:var(--wedding-orange);transition:width .18s ease}.wedding-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:18px}.wedding-photo-grid figure{position:relative;aspect-ratio:1;overflow:hidden;margin:0;border-radius:24px 16px 26px 18px;background:var(--wedding-pink)}.wedding-photo-grid img{width:100%;height:100%;display:block;object-fit:cover}.wedding-photo-grid a{position:absolute;left:8px;bottom:8px;min-height:34px;padding:0 12px;display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,253,248,.9);color:var(--wedding-red);font-size:calc(13px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));font-weight:800}.wedding-photo-grid--small{grid-template-columns:repeat(3,minmax(0,1fr))}.sticky-action{position:fixed;left:0;right:0;bottom:0;z-index:20;padding:14px 18px 18px;background:linear-gradient(180deg,rgba(255,248,239,0),rgba(255,248,239,.94) 28%)}.sticky-action__button{width:min(100%,644px);min-height:58px;display:flex;align-items:center;justify-content:center;margin:0 auto;padding:0 22px;border-radius:999px;background:var(--wedding-red);color:var(--wedding-white);font-size:calc(16px * var(--wedding-text-scale) * var(--wedding-block-text-scale, 1));font-weight:900;box-shadow:0 18px 46px rgba(207,51,54,.28)}@media (min-width:720px){.wedding-shell{padding-left:0;padding-right:0}.wedding-cover{min-height:700px}.wedding-cover__title{font-size:calc(64px * var(--wedding-title-scale) * var(--wedding-block-heading-scale, 1))}.wedding-calendar h2,.wedding-section h2{font-size:calc(42px * var(--wedding-title-scale) * var(--wedding-block-heading-scale, 1))}.wedding-location{grid-template-columns:1fr auto;align-items:center}}@media (max-width:420px){.wedding-calendar{grid-template-columns:1fr}.wedding-calendar__sheet{width:150px;margin:0 auto}.wedding-photo-grid{grid-template-columns:1fr}.wedding-photo-grid--small{grid-template-columns:repeat(2,minmax(0,1fr))}}.wedding-design-postcard{--wedding-bg:#fff8ef;--wedding-pink:#efd3df;--wedding-red:#cf3336;--wedding-orange:#ff7138;--wedding-text:#282323;--wedding-muted:#7e7470}.wedding-design-classic{--wedding-bg:#fffaf4;--wedding-pink:#ead8d2;--wedding-red:#8d2430;--wedding-orange:#c28b55;--wedding-text:#2d2522;--wedding-muted:#756b67;--wedding-heading-font:Georgia,"Times New Roman",serif}.wedding-design-classic .wedding-calendar,.wedding-design-classic .wedding-contact,.wedding-design-classic .wedding-location,.wedding-design-classic .wedding-rsvp-summary,.wedding-design-classic .wedding-section,.wedding-design-classic .wedding-wishes article{border-radius:18px}.wedding-design-classic .decorative-blob{opacity:.55}.wedding-design-classic .wedding-cover__title,.wedding-design-classic .wedding-section h2{font-family:var(--wedding-heading-font);font-style:italic}.wedding-design-floral{--wedding-bg:#fbfff5;--wedding-pink:#f5ccd3;--wedding-red:#c84b5f;--wedding-orange:#3f7c62;--wedding-text:#243129;--wedding-muted:#6f7c72}.wedding-page.wedding-design-floral{background:radial-gradient(circle at 16% 8%,rgba(245,204,211,.66) 0 86px,transparent 88px),radial-gradient(circle at 88% 28%,rgba(63,124,98,.2) 0 110px,transparent 112px),linear-gradient(180deg,#fbfff5,#fff1f4 54%,#fbfff5)}.wedding-design-floral .wedding-calendar{background:#3f7c62}.wedding-design-floral .wedding-cover:after{background:#dcebcf}.wedding-design-sketch{--wedding-bg:#fff8ee;--wedding-pink:#efd3df;--wedding-red:#d23235;--wedding-orange:#ff7138;--wedding-text:#242021;--wedding-muted:#5f5754;--wedding-white:#fffaf2;--wedding-heading-font:"Segoe Print","Comic Sans MS","Brush Script MT",cursive;--wedding-body-font:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.wedding-page.wedding-design-sketch{background:var(--wedding-bg);color:var(--wedding-text)}.wedding-design-sketch .wedding-shell{width:min(100%,760px);padding:0 24px 72px}.wedding-design-sketch .wedding-calendar,.wedding-design-sketch .wedding-cover,.wedding-design-sketch .wedding-section{box-shadow:none}.wedding-design-sketch .wedding-cover{min-height:840px;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;gap:20px;overflow:hidden;padding:70px 16px 84px;text-align:center}.wedding-design-sketch .wedding-cover:before{content:"";position:absolute;top:-88px;right:-76px;width:360px;height:126px;border-radius:46% 54% 48% 52%/58% 44% 56% 42%;background:var(--wedding-red);transform:rotate(6deg);z-index:-1}.wedding-design-sketch .wedding-cover:after{inset:0 50% auto auto;width:100vw;height:100%;border-radius:0;background:radial-gradient(170px 310px at -4% 24%,var(--wedding-red) 0 54%,transparent 55%),radial-gradient(170px 250px at 102% 78%,var(--wedding-red) 0 46%,transparent 47%),var(--wedding-pink);opacity:1;transform:translateX(50%);z-index:-3}.wedding-design-sketch .wedding-cover__blob{z-index:-2}.wedding-design-sketch .wedding-cover__blob--left{left:-130px;top:12%}.wedding-design-sketch .wedding-cover__blob--right{right:-148px;top:70%}.wedding-design-sketch .decorative-blob{width:250px;height:340px;opacity:1}.wedding-design-sketch .decorative-blob--orange,.wedding-design-sketch .decorative-blob--pink{background:var(--wedding-red)}.wedding-design-sketch .wedding-cover__title{order:1;position:relative;width:min(100%,520px);gap:8px;margin:0;color:var(--wedding-text);font-size:calc(clamp(48px, 12vw, 88px) * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:.92;text-transform:uppercase}.wedding-design-sketch .wedding-cover__title:after{content:"+";position:absolute;right:2%;top:-2%;color:var(--wedding-text);font-size:calc(48px * var(--wedding-block-heading-scale, 1));line-height:1}.wedding-design-sketch .wedding-cover__title span{color:var(--wedding-text);font-size:.62em}.wedding-design-sketch .wedding-cover__date{order:2;min-width:min(100%,240px);margin:8px 0 12px;padding:12px 34px;border-radius:999px;background:var(--wedding-white);color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(28px * var(--wedding-block-text-scale, 1));font-weight:900;text-align:center;transform:rotate(-2deg)}.wedding-design-sketch .wedding-cover__mark{order:3;position:relative;width:min(100%,480px);height:430px;margin:4px 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.wedding-design-sketch .wedding-cover__mark:after{content:"=";position:absolute;right:-4px;top:-32px;color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(54px * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:1;transform:rotate(-1deg)}.wedding-design-sketch .wedding-cover__heart{--heart-shape:polygon(50% 98%,8% 60%,4% 26%,26% 4%,50% 18%,74% 4%,96% 26%,92% 60%);position:absolute;display:grid;place-items:center;overflow:hidden;padding:10px;background:var(--wedding-red);-webkit-clip-path:var(--heart-shape);clip-path:var(--heart-shape)}.wedding-design-sketch .wedding-cover__heart--primary{left:8%;top:10%;width:54%;height:72%;transform:rotate(-13deg);z-index:2}.wedding-design-sketch .wedding-cover__heart--secondary{right:3%;top:34%;width:55%;height:76%;transform:rotate(-6deg);z-index:3}.wedding-design-sketch .wedding-cover__image{position:static;object-fit:cover;transform:none}.wedding-design-sketch .wedding-cover__heart span,.wedding-design-sketch .wedding-cover__image{width:100%;height:100%;display:block;-webkit-clip-path:var(--heart-shape);clip-path:var(--heart-shape)}.wedding-design-sketch .wedding-cover__heart span{background:radial-gradient(circle at 40% 32%,rgba(255,250,242,.2),transparent 28%),var(--wedding-red);color:transparent;font-size:0}.wedding-design-sketch .wedding-eyebrow{order:4;width:min(100%,360px);margin:-66px 0 0 118px;color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(22px * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:1.05;text-align:left;text-transform:uppercase;transform:rotate(18deg);z-index:4}.wedding-design-sketch .wedding-cover__guest{order:5;max-width:360px;margin:16px 0 0;color:var(--wedding-text);font-size:calc(17px * var(--wedding-block-text-scale, 1));line-height:1.35;text-align:center}.wedding-design-sketch .wedding-status{order:6}.wedding-design-sketch .wedding-calendar,.wedding-design-sketch .wedding-section{margin:0;padding:64px 0;border:0;border-radius:0;background:transparent;text-align:center}.wedding-design-sketch .wedding-section__kicker{display:none}.wedding-design-sketch .wedding-calendar h2,.wedding-design-sketch .wedding-section h2{color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(clamp(34px, 8vw, 56px) * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:.96;text-transform:uppercase}.wedding-design-sketch .wedding-section h3{color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(26px * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:1.05;text-transform:uppercase}.wedding-design-sketch .wedding-calendar p,.wedding-design-sketch .wedding-section p{color:var(--wedding-text);font-size:calc(17px * var(--wedding-block-text-scale, 1));line-height:1.28}.wedding-design-sketch .sticky-action__button,.wedding-design-sketch .wedding-contact__actions a,.wedding-design-sketch .wedding-link-button,.wedding-design-sketch .wedding-primary-button,.wedding-design-sketch .wedding-secondary-button{min-height:54px;padding:0 38px;border:0;border-radius:999px;background:var(--wedding-red);color:var(--wedding-white);font-family:var(--wedding-heading-font);font-size:calc(22px * var(--wedding-block-text-scale, 1));font-weight:900;text-transform:uppercase;box-shadow:none}.wedding-design-sketch .wedding-section--invitation{position:relative;padding-top:84px;background:var(--wedding-white)}.wedding-design-sketch .wedding-section--invitation h2{display:inline-grid;min-width:min(100%,360px);min-height:100px;place-items:center;margin:0 0 28px;padding:10px 34px;border-radius:55% 45% 52% 48%/46% 54% 46% 54%;background:var(--wedding-orange);color:var(--wedding-white);transform:rotate(-1deg)}.wedding-design-sketch .wedding-section--invitation .wedding-lead{width:min(100%,430px);margin:0 auto;color:var(--wedding-text);font-size:calc(16px * var(--wedding-block-text-scale, 1))}.wedding-design-sketch .wedding-section--date{padding:34px 0 20px;background:var(--wedding-white)}.wedding-design-sketch .wedding-section--date h2{width:min(100%,340px);margin:0 auto 12px;font-size:calc(28px * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-date-time{min-height:50px;padding:0 30px;border-radius:999px;background:var(--wedding-pink);color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(22px * var(--wedding-block-text-scale, 1));font-weight:900}.wedding-design-sketch .wedding-calendar{max-width:360px;margin:0 auto;display:grid;grid-template-columns:1fr;grid-gap:16px;gap:16px;padding:34px 0 54px;background:var(--wedding-white)}.wedding-design-sketch .wedding-calendar__sheet{min-height:300px;border:3px solid var(--wedding-text);border-radius:0;background:transparent;color:var(--wedding-text);transform:rotate(-1deg)}.wedding-design-sketch .wedding-calendar__sheet strong{color:var(--wedding-red);font-size:calc(76px * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-section--locations{position:relative;min-height:520px;padding:84px 0 96px;background:radial-gradient(310px 150px at 34% 18%,var(--wedding-pink) 0 56%,transparent 57%),radial-gradient(420px 210px at 18% 76%,var(--wedding-orange) 0 58%,transparent 59%),radial-gradient(220px 220px at 102% 80%,var(--wedding-red) 0 48%,transparent 49%),var(--wedding-white)}.wedding-design-sketch .wedding-section--locations h2{position:relative;z-index:1}.wedding-design-sketch .wedding-location-list{display:grid;grid-gap:28px;gap:28px;margin-top:28px}.wedding-design-sketch .wedding-location{width:min(100%,500px);margin:0 auto;display:grid;grid-template-columns:1fr;grid-gap:18px;gap:18px;justify-items:center;padding:34px 28px;border-radius:0;background:var(--wedding-white);text-align:center;box-shadow:0 12px 22px rgba(36,32,33,.24)}.wedding-design-sketch .wedding-location__media{width:min(100%,330px);aspect-ratio:1.18;justify-self:center;margin:0;padding:16px 16px 32px;background:var(--wedding-white);transform:rotate(4deg);box-shadow:0 12px 22px rgba(36,32,33,.14)}.wedding-design-sketch .wedding-location__media img{width:100%;height:100%;display:block;object-fit:cover}.wedding-design-sketch .wedding-location>div{display:grid;grid-gap:12px;gap:12px;justify-items:center}.wedding-design-sketch .wedding-location h3{font-size:calc(clamp(32px, 7vw, 48px) * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-section--timing{width:100vw;left:50%;margin-left:-50vw;padding:70px max(20px,calc((100vw - 720px) / 2)) 42px;background:var(--wedding-pink);border-radius:50% 50% 0 0/8% 8% 0 0}.wedding-design-sketch .wedding-section--timing h2{font-size:calc(30px * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-timeline{position:relative;width:min(100%,640px);margin:36px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:18px;gap:18px}.wedding-design-sketch .wedding-timeline:before{content:"";position:absolute;left:0;right:0;top:34px;height:3px;border-radius:999px;background:var(--wedding-red)}.wedding-design-sketch .wedding-timeline li{display:grid;grid-template-columns:1fr;grid-gap:22px;gap:22px;align-items:start;text-align:left}.wedding-design-sketch .wedding-timeline time{min-height:0;display:block;background:transparent;color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(26px * var(--wedding-block-heading-scale, 1));font-weight:900}.wedding-design-sketch .wedding-timeline h3{margin:0;font-family:var(--wedding-body-font);font-size:calc(13px * var(--wedding-block-text-scale, 1));font-weight:500;line-height:1.18;text-transform:none}.wedding-design-sketch .wedding-section--dress{position:relative;padding:90px 0;background:radial-gradient(320px 190px at 20% 78%,var(--wedding-orange) 0 56%,transparent 57%),radial-gradient(320px 190px at 82% 72%,var(--wedding-pink) 0 56%,transparent 57%),var(--wedding-white)}.wedding-design-sketch .wedding-swatches{justify-content:center;gap:18px;margin:34px 0 52px}.wedding-design-sketch .wedding-swatches span{width:68px;height:68px;border:0;box-shadow:none}.wedding-design-sketch .wedding-dress-looks{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,260px));grid-gap:46px;gap:46px;justify-content:center;align-items:start}.wedding-design-sketch .wedding-dress-looks figure{margin:0;display:grid;grid-gap:18px;gap:18px;justify-items:center}.wedding-design-sketch .wedding-dress-looks figcaption{color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(36px * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:1;text-transform:uppercase}.wedding-design-sketch .wedding-dress-looks img{width:100%;aspect-ratio:.82;display:block;border-radius:8px;object-fit:cover}.wedding-design-sketch .wedding-section--wishes{position:relative;min-height:760px;padding:118px 0 78px;background:radial-gradient(460px 145px at 50% 0,var(--wedding-red) 0 58%,transparent 59%),radial-gradient(260px 420px at -4% 76%,var(--wedding-orange) 0 50%,transparent 51%),radial-gradient(180px 180px at 94% 100%,var(--wedding-red) 0 44%,transparent 45%),var(--wedding-white)}.wedding-design-sketch .wedding-section--wishes h2{display:inline-grid;min-width:min(100%,360px);min-height:112px;place-items:center;margin:0 0 50px;padding:10px 34px;border-radius:58% 42% 52% 48%/50% 48% 52% 50%;background:var(--wedding-pink)}.wedding-design-sketch .wedding-wishes{width:min(100%,560px);margin:0 auto}.wedding-design-sketch .wedding-wishes article{padding:0;background:transparent}.wedding-design-sketch .wedding-wishes__closing{display:grid;grid-gap:14px;gap:14px;margin:70px auto 0;color:var(--wedding-text);font-size:calc(34px * var(--wedding-block-text-scale, 1));line-height:1.05;text-align:center}.wedding-design-sketch .wedding-wishes__closing span{display:block}.wedding-design-sketch .wedding-wishes__closing strong{display:block;margin-top:28px;font-family:var(--wedding-heading-font);font-size:calc(clamp(56px, 14vw, 110px) * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:.95;text-transform:uppercase}.wedding-design-sketch .wedding-section--contacts{width:100vw;left:50%;margin-left:-50vw;padding:96px max(24px,calc((100vw - 720px) / 2));background:var(--wedding-pink);border-radius:50% 50% 48% 52%/10% 12% 10% 12%}.wedding-design-sketch .wedding-contact{width:min(100%,500px);margin:28px auto 0;display:grid;grid-template-columns:1fr;justify-items:center;padding:0;background:transparent}.wedding-design-sketch .wedding-contact a,.wedding-design-sketch .wedding-contact span,.wedding-design-sketch .wedding-contact strong{color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(28px * var(--wedding-block-heading-scale, 1));font-weight:900;text-transform:uppercase}.wedding-design-sketch .wedding-section--rsvp{width:min(100%,560px);margin-right:auto;margin-left:auto}.wedding-design-sketch .wedding-section--rsvp:before{content:"";position:absolute;left:50%;top:24px;width:min(92vw,560px);height:190px;border-radius:58% 42% 66% 34%/44% 58% 42% 56%;background:var(--wedding-red);transform:translateX(-50%) rotate(6deg);z-index:-1}.wedding-design-sketch .wedding-section--rsvp>h2{position:relative;margin-bottom:56px;color:var(--wedding-white);font-size:calc(42px * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-form{text-align:left}.wedding-design-sketch .wedding-fieldset{border:0;padding:0}.wedding-design-sketch .wedding-field span,.wedding-design-sketch .wedding-fieldset legend{color:var(--wedding-text);font-family:var(--wedding-heading-font);font-size:calc(20px * var(--wedding-block-heading-scale, 1));font-weight:900;line-height:1.1;text-transform:uppercase}.wedding-design-sketch .wedding-fieldset label{color:var(--wedding-text);font-size:calc(20px * var(--wedding-block-text-scale, 1));font-weight:400}.wedding-design-sketch .wedding-field input,.wedding-design-sketch .wedding-field textarea{border:2px solid rgba(36,32,33,.36);border-radius:4px;background:transparent;color:var(--wedding-text);font-size:calc(18px * var(--wedding-block-text-scale, 1))}.wedding-design-sketch .wedding-primary-button{width:100%;margin-top:22px}@media (min-width:860px){.wedding-design-sketch .wedding-shell{padding-right:0;padding-left:0}}@media (max-width:620px){.wedding-design-sketch .wedding-shell{padding-right:0;padding-left:0}.wedding-design-sketch .wedding-cover{min-height:820px;padding-right:16px;padding-left:16px}.wedding-design-sketch .wedding-cover__mark{height:410px}.wedding-design-sketch .wedding-cover__heart--primary{left:1%;width:58%}.wedding-design-sketch .wedding-cover__heart--secondary{right:-1%;width:60%}.wedding-design-sketch .wedding-cover__mark:after,.wedding-design-sketch .wedding-cover__title:after{font-size:calc(44px * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-eyebrow{width:min(100%,300px);margin-left:82px;font-size:calc(19px * var(--wedding-block-heading-scale, 1))}.wedding-design-sketch .wedding-timeline{grid-template-columns:1fr;width:min(100%,360px)}.wedding-design-sketch .wedding-timeline:before{left:36px;right:auto;top:0;bottom:0;width:3px;height:auto}.wedding-design-sketch .wedding-timeline li{grid-template-columns:86px 1fr;gap:14px}.wedding-design-sketch .wedding-timeline h3{align-self:center}.wedding-design-sketch .wedding-dress-looks{grid-template-columns:1fr;gap:34px}}@media (max-width:430px){.wedding-design-sketch .wedding-cover{min-height:780px;padding-top:58px}.wedding-design-sketch .wedding-cover__mark{height:360px}.wedding-design-sketch .sticky-action__button,.wedding-design-sketch .wedding-contact__actions a,.wedding-design-sketch .wedding-cover__date,.wedding-design-sketch .wedding-link-button,.wedding-design-sketch .wedding-primary-button,.wedding-design-sketch .wedding-secondary-button{font-size:calc(18px * var(--wedding-block-text-scale, 1))}.wedding-design-sketch .wedding-section--invitation h2,.wedding-design-sketch .wedding-section--wishes h2{min-width:min(100%,310px)}.wedding-design-sketch .wedding-swatches span{width:54px;height:54px}}.wedding-block-frame{display:contents}.wedding-block-frame.has-heading-color .wedding-calendar h2,.wedding-block-frame.has-heading-color .wedding-cover__title,.wedding-block-frame.has-heading-color .wedding-cover__title span,.wedding-block-frame.has-heading-color .wedding-field span,.wedding-block-frame.has-heading-color .wedding-fieldset legend,.wedding-block-frame.has-heading-color .wedding-section h2,.wedding-block-frame.has-heading-color .wedding-section h3{color:var(--wedding-block-heading-color)}.wedding-block-frame.has-text-color .wedding-calendar,.wedding-block-frame.has-text-color .wedding-calendar p,.wedding-block-frame.has-text-color .wedding-contact a,.wedding-block-frame.has-text-color .wedding-contact span,.wedding-block-frame.has-text-color .wedding-contact strong,.wedding-block-frame.has-text-color .wedding-cover__date,.wedding-block-frame.has-text-color .wedding-cover__guest,.wedding-block-frame.has-text-color .wedding-field input,.wedding-block-frame.has-text-color .wedding-field textarea,.wedding-block-frame.has-text-color .wedding-fieldset label,.wedding-block-frame.has-text-color .wedding-lead,.wedding-block-frame.has-text-color .wedding-section,.wedding-block-frame.has-text-color .wedding-section li,.wedding-block-frame.has-text-color .wedding-section p{color:var(--wedding-block-text-color)}.wedding-block-frame.has-accent-color .wedding-calendar__month,.wedding-block-frame.has-accent-color .wedding-calendar__sheet strong,.wedding-block-frame.has-accent-color .wedding-eyebrow,.wedding-block-frame.has-accent-color .wedding-section__kicker{color:var(--wedding-block-accent-color)}.wedding-block-frame.has-accent-color .wedding-contact__actions a,.wedding-block-frame.has-accent-color .wedding-date-time,.wedding-block-frame.has-accent-color .wedding-file span,.wedding-block-frame.has-accent-color .wedding-link-button,.wedding-block-frame.has-accent-color .wedding-photo-grid a,.wedding-block-frame.has-accent-color .wedding-primary-button,.wedding-block-frame.has-accent-color .wedding-progress span,.wedding-block-frame.has-accent-color .wedding-secondary-button,.wedding-block-frame.has-accent-color .wedding-timeline time{background:var(--wedding-block-accent-color);color:var(--wedding-white);box-shadow:none}.wedding-block-frame.has-surface-color .wedding-calendar,.wedding-block-frame.has-surface-color .wedding-contact,.wedding-block-frame.has-surface-color .wedding-location,.wedding-block-frame.has-surface-color .wedding-rsvp-summary,.wedding-block-frame.has-surface-color .wedding-section,.wedding-block-frame.has-surface-color .wedding-wishes article{background:var(--wedding-block-surface-color)}.wedding-block-frame.has-heading-font .wedding-calendar h2,.wedding-block-frame.has-heading-font .wedding-cover__title,.wedding-block-frame.has-heading-font .wedding-cover__title span,.wedding-block-frame.has-heading-font .wedding-field span,.wedding-block-frame.has-heading-font .wedding-fieldset legend,.wedding-block-frame.has-heading-font .wedding-section h2,.wedding-block-frame.has-heading-font .wedding-section h3,.wedding-block-frame.has-heading-font .wedding-timeline time{font-family:var(--wedding-block-heading-font)}.wedding-block-frame.has-body-font .wedding-calendar,.wedding-block-frame.has-body-font .wedding-cover,.wedding-block-frame.has-body-font .wedding-field input,.wedding-block-frame.has-body-font .wedding-field textarea,.wedding-block-frame.has-body-font .wedding-link-button,.wedding-block-frame.has-body-font .wedding-primary-button,.wedding-block-frame.has-body-font .wedding-secondary-button,.wedding-block-frame.has-body-font .wedding-section{font-family:var(--wedding-block-body-font)}.wedding-block-frame[data-heading-align=left] .wedding-calendar h2,.wedding-block-frame[data-heading-align=left] .wedding-cover__title,.wedding-block-frame[data-heading-align=left] .wedding-section h2,.wedding-block-frame[data-heading-align=left] .wedding-section h3{text-align:left}.wedding-block-frame[data-heading-align=center] .wedding-calendar h2,.wedding-block-frame[data-heading-align=center] .wedding-cover__title,.wedding-block-frame[data-heading-align=center] .wedding-section h2,.wedding-block-frame[data-heading-align=center] .wedding-section h3{text-align:center}.wedding-block-frame[data-heading-align=right] .wedding-calendar h2,.wedding-block-frame[data-heading-align=right] .wedding-cover__title,.wedding-block-frame[data-heading-align=right] .wedding-section h2,.wedding-block-frame[data-heading-align=right] .wedding-section h3{text-align:right}.wedding-block-frame[data-content-align=left] .wedding-calendar,.wedding-block-frame[data-content-align=left] .wedding-cover,.wedding-block-frame[data-content-align=left] .wedding-section{text-align:left}.wedding-block-frame[data-content-align=center] .wedding-calendar,.wedding-block-frame[data-content-align=center] .wedding-cover,.wedding-block-frame[data-content-align=center] .wedding-section{text-align:center}.wedding-block-frame[data-content-align=right] .wedding-calendar,.wedding-block-frame[data-content-align=right] .wedding-cover,.wedding-block-frame[data-content-align=right] .wedding-section{text-align:right}.wedding-block-frame[data-content-align=left] .wedding-contact__actions,.wedding-block-frame[data-content-align=left] .wedding-swatches{justify-content:flex-start}.wedding-block-frame[data-content-align=center] .wedding-contact__actions,.wedding-block-frame[data-content-align=center] .wedding-swatches{justify-content:center}.wedding-block-frame[data-content-align=right] .wedding-contact__actions,.wedding-block-frame[data-content-align=right] .wedding-swatches{justify-content:flex-end}