[data-wedding]{--radius:.5rem;--card:#fdfbf7;--color-rose-600:#985659;--color-rose-700:#a97173;--seal-1:#d9a3a5;--seal-2:#c08a8c;--seal-3:#a97173;--seal-4:#966264;--shine-1:#fff;--shine-2:#fff6e4;--shine-3:#f6e4c4;--map-filter:sepia(.12)saturate(.9);--font-display:var(--font-wedding-display),Georgia,"Times New Roman",serif;--font-script:var(--font-wedding-script),var(--font-wedding-display),cursive;--font-sans:var(--font-wedding-sans),system-ui,-apple-system,"Segoe UI",sans-serif;--font-ethiopic:var(--font-wedding-ethiopic),var(--font-wedding-ethiopic-serif),sans-serif;--font-ethiopic-display:var(--font-wedding-ethiopic-serif),var(--font-wedding-ethiopic),serif;--ease-invite:cubic-bezier(.22,1,.36,1);--hairline:#c9b8966b;--hairline-strong:#a38f688c;--hairline-on-olive:#f1ebdd47;--lift:0 18px 40px -24px #4a403447;--lift-strong:0 30px 60px -30px #3e3e2c73}@layer base{html:has([data-wedding]){scroll-behavior:smooth;background-color:var(--color-cream);scroll-padding-top:5.5rem}html:has([data-wedding]) body{background-color:var(--color-cream)}[data-wedding]{background-color:var(--color-cream);color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-size:1.125rem;font-weight:400;line-height:1.75}[data-wedding] *,[data-wedding] :before,[data-wedding] :after{border-color:currentColor}[data-wedding] h1,[data-wedding] h2,[data-wedding] h3,[data-wedding] h4{font-family:var(--font-display);font-weight:600;line-height:1.18}[data-wedding] input,[data-wedding] textarea,[data-wedding] select,[data-wedding] button{font-family:inherit}[data-wedding] ::selection{background:var(--color-blush-300);color:var(--color-olive-900)}[data-wedding] :focus-visible{outline:2px solid var(--color-gold-600);outline-offset:3px;border-radius:2px}}.font-display{font-family:var(--font-display);font-weight:var(--font-display-weight,600);line-height:1.15}.font-serif-display{font-family:var(--font-display);font-weight:600}.font-script{font-family:var(--font-script);padding-block:.1em;font-weight:400;line-height:1.1}.font-amharic{font-family:var(--font-ethiopic);font-size:1.06em;font-weight:500;line-height:1.9}.font-amharic-serif{font-family:var(--font-ethiopic-display);font-size:1.04em;font-weight:600;line-height:1.5}.label-caps{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.16em;font-weight:600;line-height:1.5}.label-caps-loose{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.3em;font-weight:600;line-height:1.6}.font-amharic .label-caps,.font-amharic .label-caps-loose,.label-caps.font-amharic,.label-caps-loose.font-amharic{font-family:var(--font-ethiopic);text-transform:none;letter-spacing:.02em;font-size:1.06em;font-weight:600}.font-amharic button,.font-amharic label,.font-amharic legend,button.font-amharic,label.font-amharic,legend.font-amharic{line-height:1.4}.prose-invite{font-family:var(--font-sans);color:var(--color-ink-muted);max-width:40ch;font-size:1.0625rem;font-weight:500;line-height:1.8}.font-amharic .prose-invite,.prose-invite.font-amharic{font-family:var(--font-ethiopic);font-size:1.09rem;line-height:1.95}.hero-tracked{font-family:var(--font-display);letter-spacing:.22em;text-transform:uppercase;font-weight:500}.hairline{border:1px solid var(--hairline)}.hairline-t{border-top:1px solid var(--hairline)}.hairline-b{border-bottom:1px solid var(--hairline)}.hairline-olive{border:1px solid var(--hairline-on-olive)}.lift{box-shadow:var(--lift)}.lift-strong{box-shadow:var(--lift-strong)}.paper{background-image:radial-gradient(circle at 18% 12%,color-mix(in srgb,var(--color-gold-400)10%,transparent)0%,transparent 42%),radial-gradient(circle at 84% 78%,color-mix(in srgb,var(--color-blush-500)10%,transparent)0%,transparent 46%)}.photo-radius{border-radius:12px;overflow:hidden}.photo-warm{filter:saturate(.94)contrast(1.02)sepia(.06)}.wax-seal{background:radial-gradient(circle at 34% 30%,var(--seal-1)0%,var(--seal-2)42%,var(--seal-3)78%,var(--seal-4)100%);box-shadow:inset 0 2px 6px #ffffff59,inset 0 -3px 8px #784a4c8c,0 6px 18px -6px #784a4c99}.envelope-scallop{-webkit-mask-image:radial-gradient(circle at 50% 0,#0000 0 9px,#000 9px);mask-image:radial-gradient(circle at 50% 0,#0000 0 9px,#000 9px);-webkit-mask-size:22px 22px;mask-size:22px 22px;-webkit-mask-repeat:repeat-x;mask-repeat:repeat-x}.perforation{background-image:repeating-linear-gradient(to right,var(--color-gold-400)0 6px,transparent 6px 12px)}html:has([data-wedding])::-webkit-scrollbar{width:10px}html:has([data-wedding])::-webkit-scrollbar-track{background:var(--color-cream-deep)}html:has([data-wedding])::-webkit-scrollbar-thumb{background:var(--color-olive-500);border:3px solid var(--color-cream-deep);border-radius:0}html:has([data-wedding])::-webkit-scrollbar-thumb:hover{background:var(--color-olive-700)}[data-wedding] ::-webkit-scrollbar{width:10px}[data-wedding] ::-webkit-scrollbar-track{background:var(--color-cream-deep)}[data-wedding] ::-webkit-scrollbar-thumb{background:var(--color-olive-500);border:3px solid var(--color-cream-deep);border-radius:0}[data-wedding] ::-webkit-scrollbar-thumb:hover{background:var(--color-olive-700)}@media (prefers-reduced-motion:reduce){html:has([data-wedding]){scroll-behavior:auto}[data-wedding],[data-wedding] *,[data-wedding] :before,[data-wedding] :after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}@keyframes ken-burns{0%{transform:scale(1.06)translate(0,0)}50%{transform:scale(1.15)translateY(-1.6%)}to{transform:scale(1.06)translate(0,0)}}.ken-burns{will-change:transform;animation:24s ease-in-out infinite ken-burns}@keyframes shine-sweep{0%,8%{background-position:-160% 0}58%{background-position:160% 0}to{background-position:160% 0}}.script-shine{background-image:linear-gradient(100deg,var(--shine-1)0%,var(--shine-1)36%,var(--shine-2)45%,var(--shine-3)50%,var(--shine-2)55%,var(--shine-1)64%,var(--shine-1)100%);color:#0000;background-size:240% 100%;-webkit-background-clip:text;background-clip:text;animation:6s ease-in-out infinite shine-sweep}@keyframes rule-breathe{0%,to{opacity:.55;transform:scaleX(.94)}50%{opacity:1;transform:scaleX(1)}}.rule-breathe{animation:6s ease-in-out infinite rule-breathe}.botanical{transform-origin:var(--bo-origin,top left)}.glass,.glass-panel{background-color:var(--glass-solid);background-image:linear-gradient(180deg,var(--glass-highlight)0%,transparent 46%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-photo{background-color:var(--glass-photo-solid);border:1px solid var(--glass-photo-border);color:var(--glass-photo-ink)}.glass-photo-ink{color:var(--glass-photo-ink)}.glass-photo-ink-muted{color:var(--glass-photo-ink-muted)}.glass-dark{background-color:var(--glass-dark-solid);border:1px solid var(--glass-dark-border);color:var(--color-on-olive);background-image:linear-gradient(#ffffff29 0%,#0000 58%)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass{background-color:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur))saturate(1.5);backdrop-filter:blur(var(--glass-blur))saturate(1.5)}.glass-panel{background-color:var(--glass-panel-bg);-webkit-backdrop-filter:blur(calc(var(--glass-blur)*1.35))saturate(1.35);backdrop-filter:blur(calc(var(--glass-blur)*1.35))saturate(1.35)}.glass-photo{background-color:var(--glass-photo-bg);-webkit-backdrop-filter:blur(calc(var(--glass-blur)*.14))saturate(1.2);backdrop-filter:blur(calc(var(--glass-blur)*.14))saturate(1.2)}.glass-dark{background-color:var(--glass-dark-bg);-webkit-backdrop-filter:blur(calc(var(--glass-blur)*.85))saturate(1.3);backdrop-filter:blur(calc(var(--glass-blur)*.85))saturate(1.3)}}.glass-ink{color:var(--glass-ink)}.glass-ink-muted{color:var(--glass-ink-muted)}.glass-flat{box-shadow:none;border:0}.glass:hover,.glass-panel:hover{border-color:var(--hairline-strong)}.glass-dark:hover{background-color:var(--color-scrim)}@media (prefers-reduced-transparency:reduce){.glass,.glass-panel,.glass-photo,.glass-dark{-webkit-backdrop-filter:none;backdrop-filter:none}.glass{background-color:var(--glass-solid)}.glass-panel{background-color:var(--glass-panel-solid)}.glass-photo{background-color:var(--glass-photo-solid)}.glass-dark{background-color:var(--glass-dark-solid)}}.field{border:2px solid var(--field-border);background-color:var(--field);width:100%;color:var(--field-text);font-family:var(--font-sans);border-radius:8px;padding:.5rem .875rem;font-size:16px;font-weight:500;line-height:1.4;transition:border-color .15s,box-shadow .15s,background-color .15s}.field::placeholder{color:var(--field-placeholder);opacity:1;font-weight:400}.field:hover:not(:disabled):not(:focus){border-color:var(--color-olive-500)}.field:focus,.field:focus-visible{border-color:var(--color-olive-700);box-shadow:0 0 0 4px var(--field-ring);outline:none}.field:disabled,.field[aria-disabled=true]{background-color:var(--field-disabled);color:var(--color-ink-muted);cursor:not-allowed}.field[aria-invalid=true]{border-color:var(--color-rose-600)}.field[aria-invalid=true]:focus{box-shadow:0 0 0 4px color-mix(in srgb,var(--color-rose-600)24%,transparent)}.font-amharic .field,.field.font-amharic{font-family:var(--font-ethiopic);line-height:1.5}.field-chip{border:2px solid var(--field-border);background-color:var(--field);color:var(--field-text);border-radius:8px;transition:border-color .15s,background-color .15s,color .15s}.field-chip:hover:not([aria-pressed=true]){border-color:var(--color-olive-500)}[data-wedding] input[type=checkbox],[data-wedding] input[type=radio],[data-wedding] progress{accent-color:var(--color-olive-700)}.roll{font-variant-numeric:tabular-nums;--roll-ms:.42s;--roll-ease:cubic-bezier(.32,.72,.28,1);line-height:1;display:inline-flex}.roll-col{width:1ch;height:1.12em;display:inline-block;position:relative;overflow:hidden}.roll-cell{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.roll-out-up,.roll-in-up,.roll-out-down,.roll-in-down{will-change:transform,opacity}.roll-out-up{animation:roll-out-up var(--roll-ms)var(--roll-ease)forwards}.roll-in-up{animation:roll-in-up var(--roll-ms)var(--roll-ease)forwards}.roll-out-down{animation:roll-out-down var(--roll-ms)var(--roll-ease)forwards}.roll-in-down{animation:roll-in-down var(--roll-ms)var(--roll-ease)forwards}@keyframes roll-out-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}@keyframes roll-in-up{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes roll-out-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(100%)}}@keyframes roll-in-down{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.roll-colon{opacity:.75;align-items:center;height:1.12em;line-height:1;display:flex}@media (prefers-reduced-motion:reduce){.roll-out-up,.roll-out-down{display:none}.roll-in-up,.roll-in-down{opacity:1;animation:none;transform:none}}[data-wedding]{--site-width:100%;--site-break:560px}@media (min-width:560px){[data-wedding]{--site-width:440px;background-color:var(--surround);background-image:radial-gradient(circle at 22% 16%,color-mix(in srgb,var(--color-gold-400)26%,transparent)0%,transparent 42%),radial-gradient(circle at 78% 84%,color-mix(in srgb,var(--color-blush-500)26%,transparent)0%,transparent 44%);background-attachment:fixed}.site-canvas{box-shadow:0 0 0 1px var(--hairline),0 40px 90px -50px #00000080}}.site-canvas{width:100%;max-width:var(--site-width);background-color:var(--color-cream);margin-inline:auto;container-type:inline-size}.site-fixed{width:100%;max-width:var(--site-width);margin-inline:auto;left:0;right:0}@container (max-width:640px){.botanical{transform:scale(.58)}}.btn{box-shadow:var(--glass-shadow);background-image:linear-gradient(#ffffff2e 0%,#0000 52%);border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.6rem;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .12s;display:inline-flex;position:relative}.btn:active{transform:scale(.985)}.btn-primary{background-color:var(--btn-primary-solid);border-color:var(--btn-primary-border);color:var(--color-on-olive)}.btn-primary:hover{background-color:var(--btn-primary-hover)}.btn-accent{background-color:var(--btn-accent-solid);border-color:var(--btn-accent-border);color:var(--color-olive-900)}.btn-accent:hover{background-color:var(--btn-accent-hover)}.btn-quiet{background-color:var(--glass-solid);border-color:var(--glass-border);color:var(--color-olive-900)}.btn-quiet:hover{background-color:var(--btn-primary-solid);border-color:var(--btn-primary-border);color:var(--color-on-olive)}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.btn{-webkit-backdrop-filter:blur(calc(var(--glass-blur)*.75))saturate(1.4);backdrop-filter:blur(calc(var(--glass-blur)*.75))saturate(1.4)}.btn-primary{background-color:var(--btn-primary-bg)}.btn-accent{background-color:var(--btn-accent-bg)}.btn-quiet{background-color:var(--glass-bg)}}@media (prefers-reduced-transparency:reduce){.btn{-webkit-backdrop-filter:none;backdrop-filter:none}.btn-primary{background-color:var(--btn-primary-solid)}.btn-accent{background-color:var(--btn-accent-solid)}.btn-quiet{background-color:var(--glass-solid)}}.btn:disabled{opacity:.6;cursor:not-allowed}.btn:disabled:hover{background-color:var(--btn-primary-solid)}.timeline-progress{background-image:linear-gradient(to bottom,var(--color-gold-600)0%,var(--color-rose-600)55%,var(--color-rose-700)100%);box-shadow:0 0 10px -1px color-mix(in srgb,var(--color-rose-600)65%,transparent)}.timeline-head{background:var(--color-rose-600);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-rose-600)22%,transparent),0 0 12px 2px color-mix(in srgb,var(--color-rose-600)55%,transparent)}@keyframes timeline-head-pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--color-rose-600)22%,transparent),0 0 12px 2px color-mix(in srgb,var(--color-rose-600)55%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in srgb,var(--color-rose-600)10%,transparent),0 0 16px 3px color-mix(in srgb,var(--color-rose-600)70%,transparent)}}.timeline-head{animation:2.6s ease-in-out infinite timeline-head-pulse}
