.t-spring-garden{--f-display:"Great Vibes", "Pinyon Script", cursive;--f-script:"Great Vibes", "Pinyon Script", cursive;--f-serif:"Cormorant Garamond", "Times New Roman", serif;--f-caps:"Cormorant Garamond", "Times New Roman", serif;--f-body:"Cormorant Garamond", "Times New Roman", serif;--radius:4px}.t-spring-garden .sg-inkc,.t-spring-garden .sg-sprig{pointer-events:none;display:block;overflow:visible}.t-spring-garden .sg-gold{fill:none;stroke:var(--accent);stroke-width:1.1px;stroke-opacity:.85}.t-spring-garden .sg-gold--fine{stroke-width:.6px;stroke-opacity:.6}.t-spring-garden .sg-fleck{fill:var(--accent);opacity:.7}.t-spring-garden .sg-stem{fill:none;stroke:var(--sg-leaf-deep);stroke-width:1.1px;stroke-linecap:round;opacity:.75}.t-spring-garden .sg-stem--fine{stroke-width:.6px}.t-spring-garden .sg-leaf-a{fill:var(--sg-leaf);opacity:.85}.t-spring-garden .sg-leaf-b{fill:var(--sg-leaf-light);opacity:.8}.t-spring-garden .sg-leaf-c{fill:var(--sg-leaf);opacity:.55}.t-spring-garden .sg-gyp{fill:var(--sg-gyp);stroke:var(--sg-leaf-deep);stroke-width:.5px;stroke-opacity:.6}.t-spring-garden .sg-bloom{fill:var(--sg-bloom);stroke:var(--sg-bloom-edge);stroke-width:.6px;stroke-opacity:.7}.t-spring-garden .sg-bloom-core{fill:var(--accent)}.t-spring-garden .sg-ink{width:min(300px,80vw);animation:2.2s ease-out both sg-spread;position:absolute}.t-spring-garden .sg-ink--tl{transform-origin:0 0;top:-46px;left:-56px}.t-spring-garden .sg-ink--br{bottom:-46px;right:-56px;transform:rotate(180deg)}@keyframes sg-spread{0%{opacity:0;scale:.82}}.t-spring-garden .sg-sprig--tr,.t-spring-garden .sg-sprig--bl{width:min(220px,56vw);animation:1.6s .4s both inv-fade;position:absolute}.t-spring-garden .sg-sprig--tr{top:-8px;right:-10px}.t-spring-garden .sg-sprig--bl{width:min(180px,46vw);bottom:-8px;left:-10px;transform:rotate(180deg)}.t-spring-garden .btn{font-family:var(--f-caps);text-transform:uppercase;letter-spacing:.24em;padding:.85rem 1.8rem;font-size:.72rem;font-weight:700}.t-spring-garden .eyebrow{letter-spacing:.42em;font-size:.74rem;font-weight:700}.t-spring-garden .sg-names{font-family:var(--f-script);color:var(--primary);margin:0;font-weight:400;line-height:1;display:grid}.t-spring-garden .sg-amp{font-family:var(--f-script);color:var(--accent-dark)}.t-spring-garden .sg-names .sg-amp{font-size:.62em;line-height:1.1}.t-spring-garden .sg-kicker{font-family:var(--f-caps);letter-spacing:.34em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;font-size:.58rem;font-weight:700;display:block}.t-spring-garden .cover{min-height:var(--vh,100svh);background:radial-gradient(ellipse at 50% 45%, var(--paper-light), var(--paper));place-items:center;padding:24px 16px;display:grid;position:relative;overflow:hidden}.t-spring-garden .sg-cover{z-index:1;text-align:center;justify-items:center;width:min(380px,100%);display:grid;position:relative}.t-spring-garden .sg-env{--w:min(318px, 84vw);width:var(--w);height:calc(var(--w) * .64);margin:calc(var(--w) * .44) 0 24px;perspective:900px;position:relative}.t-spring-garden .sg-env__back{background:linear-gradient(180deg, var(--sg-env-deep), var(--sg-env));box-shadow:0 24px 44px color-mix(in srgb, var(--primary-deep) 20%, transparent);border-radius:4px;position:absolute;inset:0}.t-spring-garden .sg-env__flap{z-index:1;transform-origin:50% 0;clip-path:polygon(0 0,100% 0,50% 100%);background:var(--accent);width:100%;height:60%;animation:1s cubic-bezier(.55,0,.3,1) .55s both sg-flap;position:absolute;top:0;left:0;transform:rotateX(180deg)}.t-spring-garden .sg-env__flap:before{content:"";clip-path:polygon(0 0,100% 0,50% 100%);background:linear-gradient(180deg, var(--sg-env), var(--sg-env-deep));position:absolute;inset:0 2px 2.5px}@keyframes sg-flap{0%{z-index:6;transform:rotateX(0)}}.t-spring-garden .sg-env__slot{top:calc(var(--w) * -.44);z-index:3;position:absolute;bottom:8px;left:7%;right:7%;overflow:hidden}.t-spring-garden .sg-env__letter{background:var(--paper-light);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);box-shadow:inset 0 0 0 5px var(--paper-light), inset 0 0 0 6px color-mix(in srgb, var(--accent) 30%, transparent);padding:20px 10px;animation:1.2s cubic-bezier(.2,.8,.2,1) 1.35s both sg-letter;position:absolute;inset:4px 0 0}@keyframes sg-letter{0%{transform:translateY(calc(var(--w) * .46 + 6px))}}.t-spring-garden .sg-env__letter .sg-names{font-size:clamp(2.3rem,11vw,2.75rem)}.t-spring-garden .sg-env__front{z-index:4;clip-path:polygon(0 0,50% 58%,100% 0,100% 100%,0 100%);background:linear-gradient(180deg, var(--sg-env), var(--sg-env-deep));border-radius:0 0 4px 4px;position:absolute;inset:0}.t-spring-garden .sg-env__front:before{content:"";clip-path:polygon(0 100%,50% 64%,100% 100%);background:linear-gradient(0deg, var(--sg-env), color-mix(in srgb, var(--sg-env-deep) 70%, var(--sg-env-shade)));position:absolute;inset:0}.t-spring-garden .sg-env__front:after{content:"";clip-path:polygon(0 0,50% 58%,100% 0,100% 1.2px,50% calc(58% + 1.6px),0 1.2px);background:var(--accent);position:absolute;inset:0}.t-spring-garden .sg-env__date{z-index:1;font-family:var(--f-caps);letter-spacing:.24em;text-transform:uppercase;color:var(--primary);font-size:.62rem;font-weight:700;position:absolute;bottom:14px;left:0;right:0}.t-spring-garden .sg-seal{z-index:7;background:radial-gradient(circle at 35% 30%, var(--accent-light), var(--accent) 55%, var(--accent-dark));width:46px;height:46px;font-family:var(--f-script);color:var(--paper-light);text-shadow:0 1px 1px var(--accent-dark);border-radius:48% 52% 50% 46%/52% 46% 54% 48%;place-items:center;margin:-23px 0 0 -23px;font-size:1.25rem;display:grid;position:absolute;top:57%;left:50%;box-shadow:0 4px 10px #00000040,inset 0 0 0 4px #ffffff2e}.t-spring-garden .sg-cover__line{color:var(--muted);margin:.15rem 0;font-size:1.08rem;font-style:italic}.t-spring-garden .sg-cover__guest{font-family:var(--f-script);color:var(--primary);margin:.35rem 0;font-size:2.1rem;line-height:1.2}.t-spring-garden .sg-cover__open{margin-top:1rem}.t-spring-garden .invite{background:var(--paper-light)}.t-spring-garden .sg-back{pointer-events:none;position:absolute;inset:0;overflow:clip}.t-spring-garden .sghero{text-align:center;padding:92px 0 44px;position:relative}.t-spring-garden .sghero__eyebrow{margin:0 0 1.2rem;animation:1s both inv-fade}.t-spring-garden .sghero__names{font-size:clamp(3.4rem,15vw,4.8rem);animation:1.2s .15s both inv-rise}.t-spring-garden .sghero__date{font-family:var(--f-caps);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);justify-content:center;align-items:center;gap:.9rem;margin:1.6rem 0 2.6rem;font-size:.72rem;font-weight:700;animation:1s .4s both inv-fade;display:flex}.t-spring-garden .sghero__date strong{border-inline:1px solid var(--accent);letter-spacing:.08em;color:var(--primary);padding:.2rem .9rem;font-size:1.3rem;font-weight:600}.t-spring-garden .sghero__photo{width:min(280px,74vw);margin:0 auto;position:relative}.t-spring-garden .sghero__wash{width:260px;position:absolute;top:-60px;left:-80px}.t-spring-garden .sghero__frame{aspect-ratio:3/4;background:var(--paper-light);border:1px solid var(--accent);box-shadow:0 24px 46px color-mix(in srgb, var(--primary-deep) 18%, transparent);border-radius:999px 999px 6px 6px;padding:8px;position:relative}.t-spring-garden .sghero__frame img{object-fit:cover;border-radius:999px 999px 2px 2px;width:100%;height:100%}.t-spring-garden .sghero__sprig{width:150px;position:absolute;top:-30px;right:-46px}.t-spring-garden .sghero__full{font-family:var(--f-caps);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);margin:2rem 0 0;font-size:.92rem;font-weight:600}.t-spring-garden .sghero__full .sg-amp{letter-spacing:0;text-transform:none;font-size:1.6rem}.t-spring-garden .card{isolation:isolate;color:var(--ink);background:var(--paper-light);border:1px solid color-mix(in srgb, var(--accent) 55%, transparent);box-shadow:0 22px 46px color-mix(in srgb, var(--primary-deep) 12%, transparent);border-radius:4px;padding-top:64px}.t-spring-garden .card:before{content:"";border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);pointer-events:none;position:absolute;inset:8px}.t-spring-garden .sg-decor{z-index:-1;border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.t-spring-garden .sg-decor--right{transform:scaleX(-1)}.t-spring-garden .sg-decor__ink{opacity:.9;width:230px;position:absolute;top:-70px;left:-80px}.t-spring-garden .sg-decor__ink--far{opacity:.7;width:210px;inset:auto -90px -80px auto;transform:rotate(180deg)}.t-spring-garden .sg-decor__sprig{width:112px;position:absolute;top:-4px;right:-6px}.t-spring-garden .card__title,.t-spring-garden .section-title{font-family:var(--f-script);letter-spacing:0;text-transform:none;color:var(--primary);margin:0 0 1.1rem;font-size:2.6rem;font-weight:400;line-height:1.1}.t-spring-garden .card__title:after,.t-spring-garden .section-title:after{content:"";background:radial-gradient(circle, var(--accent) 0 2.4px, transparent 3px) center / 7px 7px no-repeat, linear-gradient(90deg, transparent, var(--accent), transparent) center / 100% 1px no-repeat;width:90px;height:7px;margin:.5rem auto 0;display:block}.t-spring-garden .families__label{font-weight:700}.t-spring-garden .families__side+.families__side{border-left-color:color-mix(in srgb, var(--accent) 60%, transparent)}.t-spring-garden .card__story{opacity:1;color:var(--muted);font-size:1.12rem;font-style:italic}.t-spring-garden .card__person{font-family:var(--f-script);color:var(--primary);font-size:clamp(2.2rem,9vw,2.7rem)}.t-spring-garden .card__role{opacity:.65;font-weight:700}.t-spring-garden .card__amp{color:var(--accent-dark)}.t-spring-garden .card__venue{font-size:1.12rem}.t-spring-garden .card__venue strong{color:var(--primary);font-weight:700}.t-spring-garden .card__lead{letter-spacing:.14em;font-size:1rem;font-weight:600}.t-spring-garden .dateblock__top,.t-spring-garden .dateblock__my,.t-spring-garden .card__times-label,.t-spring-garden .countdown__title,.t-spring-garden .countdown__label{font-weight:700}.t-spring-garden .dateblock__day{font-family:var(--f-caps);color:var(--primary);font-size:3.2rem;font-weight:500}.t-spring-garden .dateblock__rule{background:var(--accent);opacity:1}.t-spring-garden .card__times-value{font-size:1.3rem;font-weight:600}.t-spring-garden .countdown__unit{border-color:color-mix(in srgb, var(--accent) 60%, transparent);background:color-mix(in srgb, var(--sg-ink) 14%, transparent);border-radius:999px 999px 6px 6px}.t-spring-garden .countdown__value{font-family:var(--f-caps);color:var(--primary);font-weight:500}.t-spring-garden .calendar{background:var(--paper-light);border:1px solid var(--accent);box-shadow:0 0 0 4px var(--paper-light), 0 0 0 5px color-mix(in srgb, var(--accent) 45%, transparent), 0 14px 30px color-mix(in srgb, var(--primary-deep) 10%, transparent);border-radius:4px}.t-spring-garden .calendar__title{border-bottom-color:var(--accent);color:var(--primary);border-bottom-width:1px;font-size:2.1rem}.t-spring-garden .calendar__grid{font-family:var(--f-caps);font-size:.85rem;font-weight:600}.t-spring-garden .calendar__heart{color:var(--primary)}.t-spring-garden .addcal .link-btn{color:var(--primary);font-size:.85rem;font-weight:700}.t-spring-garden .card>.btn--light{background:var(--primary);color:var(--light);box-shadow:0 8px 20px var(--shadow)}.t-spring-garden .schedule__icon{color:var(--accent-dark)}.t-spring-garden .schedule__dot{color:var(--accent)}.t-spring-garden .schedule__time{color:var(--primary);font-size:1.2rem;font-weight:600}.t-spring-garden .schedule__label{font-family:var(--f-script);opacity:1;font-size:1.7rem}.t-spring-garden .gallery__slide{border:6px solid var(--paper-light);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 60%, transparent), 0 16px 34px #0003;border-radius:4px}.t-spring-garden .gallery__dots button.is-active{background:var(--accent)}.t-spring-garden .venue__name{font-family:var(--f-script);color:var(--primary);font-size:2.1rem}.t-spring-garden .venue__address{font-size:1.1rem}.t-spring-garden .venue__map{border:6px solid var(--paper-light);box-shadow:0 0 0 1px var(--accent), 0 12px 26px #0000001a;border-radius:4px}.t-spring-garden .venue__directions{letter-spacing:.16em;text-transform:uppercase}.t-spring-garden .dress__names{font-size:1.15rem;font-style:italic}.t-spring-garden .dress__swatch{box-shadow:0 0 0 1px var(--accent), 0 4px 12px #00000026}.t-spring-garden .closing{padding:30px 0 60px;position:relative}.t-spring-garden .closing__note{font-size:1.12rem;font-style:italic}.t-spring-garden .closing__rsvp{letter-spacing:.2em;font-weight:700}.t-spring-garden .closing__mark{color:var(--primary);font-size:2.4rem}.t-spring-garden .modal__box h2{font-family:var(--f-script);font-size:2.3rem}
