.t-crystal-floral{--f-display:"Cinzel", "Times New Roman", serif;--f-script:"Pinyon Script", cursive;--f-serif:"Cormorant Garamond", "Times New Roman", serif;--f-caps:"Cinzel", "Times New Roman", serif;--f-body:"Cormorant Garamond", "Times New Roman", serif;--cf-hair:color-mix(in srgb, var(--accent) 55%, transparent);font-size:1.05rem}.t-crystal-floral .cf-band,.t-crystal-floral .cf-frame,.t-crystal-floral .cf-floret,.t-crystal-floral .cf-gemicon{display:block;overflow:visible}.t-crystal-floral .cf-band--flip{transform:scaleY(-1)}.t-crystal-floral .cf-p1{fill:var(--cf-petal);stroke:var(--cf-leaf-dark);stroke-width:.55px;stroke-opacity:.45}.t-crystal-floral .cf-p2{fill:var(--cf-blush);stroke:var(--cf-leaf-dark);stroke-width:.45px;stroke-opacity:.35}.t-crystal-floral .cf-core{fill:var(--accent);stroke:var(--accent-dark);stroke-width:.6px}.t-crystal-floral .cf-core-hi{fill:var(--accent-light)}.t-crystal-floral .cf-bead{fill:var(--accent-dark)}.t-crystal-floral .cf-leaf--1{fill:var(--cf-leaf)}.t-crystal-floral .cf-leaf--2{fill:var(--cf-leaf-light)}.t-crystal-floral .cf-leaf--3{fill:var(--cf-leaf-dark)}.t-crystal-floral .cf-vein{fill:none;stroke:var(--cf-petal);stroke-width:.6px;opacity:.55}.t-crystal-floral .cf-gold,.t-crystal-floral .cf-chain{fill:none;stroke:var(--accent);stroke-width:1.6px;stroke-linecap:round}.t-crystal-floral .cf-gold--thin{stroke-width:.7px}.t-crystal-floral .cf-chain{stroke-width:1px;stroke-dasharray:1.5 1.8}.t-crystal-floral .cf-goldfill,.t-crystal-floral .cf-goldleaf{fill:var(--accent)}.t-crystal-floral .cf-goldleaf{fill:var(--accent-light);opacity:.8}.t-crystal-floral .cf-gem__set{fill:var(--accent);stroke:var(--accent-dark);stroke-width:.5px}.t-crystal-floral .cf-gem__stone{fill:var(--primary)}.t-crystal-floral .cf-gem__facet{fill:none;stroke:var(--primary-soft);stroke-width:.6px}.t-crystal-floral .cf-gem__shine{fill:#fff;opacity:.85}.t-crystal-floral .cf-sparkle{fill:var(--accent);opacity:.85}.t-crystal-floral .cf-frame__fill{fill:var(--paper-light);opacity:.75}.t-crystal-floral .cf-frame__line{fill:none;stroke:var(--accent);stroke-width:1.6px}.t-crystal-floral .cf-frame__line--thin{stroke-width:.6px;stroke-dasharray:2 2.5}.t-crystal-floral .cf-frame__bead{fill:var(--accent)}.t-crystal-floral .cf-frame__bead--sm{fill:var(--primary)}.t-crystal-floral .cf-gemicon{flex:none;width:.9em;height:.9em;display:inline-block}.t-crystal-floral .eyebrow{letter-spacing:.42em;color:var(--accent-dark);font-size:.78rem}.t-crystal-floral .section-title{letter-spacing:.24em;color:var(--primary);justify-content:center;align-items:center;gap:.8rem;font-size:.95rem;font-weight:500;display:flex}.t-crystal-floral .section-title:before,.t-crystal-floral .section-title:after{content:"";background:var(--accent);width:8px;height:8px;box-shadow:0 0 0 2px var(--paper), 0 0 0 3px var(--cf-hair);flex:none;transform:rotate(45deg)}.t-crystal-floral .btn{letter-spacing:.2em;text-transform:uppercase;font-size:.74rem;font-weight:500}.t-crystal-floral .btn--dark,.t-crystal-floral .card>.btn--light{background:linear-gradient(180deg, var(--primary-soft), var(--primary) 55%, var(--primary-deep));color:var(--light);box-shadow:0 0 0 1px var(--accent), 0 0 0 4px var(--paper-light), 0 0 0 5px var(--cf-hair), 0 10px 22px var(--shadow)}.t-crystal-floral .cf-amp{font-family:var(--f-script);letter-spacing:0;text-transform:none;color:var(--accent-dark);font-size:.75em}.t-crystal-floral .cover{min-height:var(--vh,100svh);background:radial-gradient(ellipse at 50% 30%, var(--paper-light), var(--paper-dark) 80%);justify-content:center;display:flex;position:relative;overflow:hidden;container-type:inline-size}.t-crystal-floral .cf-sheet{width:min(480px,100%);min-height:var(--vh,100svh);background:var(--paper-light);box-shadow:0 0 50px color-mix(in srgb, var(--primary-deep) 14%, transparent);flex-direction:column;display:flex;position:relative}.t-crystal-floral .cf-sheet:before{content:"";border:1px solid var(--cf-hair);pointer-events:none;position:absolute;inset:8px}.t-crystal-floral .cf-cover__band{z-index:1;flex:none;width:100%;animation:1.2s cubic-bezier(.2,.8,.2,1) both cf-bloom;position:relative}.t-crystal-floral .cf-cover__band:last-child{animation-delay:.3s}.t-crystal-floral .cf-cover__body{z-index:2;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:0 24px;display:flex;position:relative}.t-crystal-floral .cf-kicker{font-family:var(--f-caps);letter-spacing:.42em;color:var(--accent-dark);margin:0 0 .3rem;font-size:.7rem;animation:1s .4s both inv-fade}.t-crystal-floral .cf-framed{aspect-ratio:260/300;place-items:center;width:min(196px,54cqi);animation:1.1s cubic-bezier(.2,.8,.2,1) .2s both inv-rise;display:grid;position:relative}.t-crystal-floral .cf-framed__art{width:100%;height:100%;position:absolute;inset:0}.t-crystal-floral .cf-names{max-width:82%;font-family:var(--f-display);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);overflow-wrap:anywhere;gap:.1rem;margin:0;font-size:clamp(1.25rem,6cqi,1.6rem);font-weight:500;line-height:1.15;display:grid;position:relative}.t-crystal-floral .cf-names .cf-amp{font-size:1.7rem;line-height:1}.t-crystal-floral .cf-date{font-family:var(--f-caps);letter-spacing:.2em;text-transform:uppercase;color:var(--ink);flex-wrap:wrap;justify-content:center;align-items:center;gap:.5rem;margin:.5rem 0 .7rem;font-size:.72rem;display:flex}.t-crystal-floral .cover__intro,.t-crystal-floral .cover__after{color:var(--muted);margin:.1rem 0;font-size:1.05rem;font-style:italic}.t-crystal-floral .cover__guest{color:var(--primary-deep);border-block:1px solid var(--cf-hair);margin:.35rem 0;padding:.25rem 1.4rem;font-size:1.35rem;font-weight:600}.t-crystal-floral .cover__open{margin-top:.9rem}@keyframes cf-bloom{0%{opacity:0;clip-path:inset(0 50%)}to{clip-path:inset(0)}}.t-crystal-floral .cf-hero{text-align:center;padding:12px 0 44px}.t-crystal-floral .cf-hero__band{width:min(520px,100%);margin:0 auto;animation:1.2s both cf-bloom}.t-crystal-floral .cf-hero__band--low{width:min(300px,76%);margin-top:1.6rem;animation-delay:.6s}.t-crystal-floral .cf-hero__eyebrow{margin:.4rem 0 1rem}.t-crystal-floral .cf-hero__portrait{aspect-ratio:260/300;width:min(300px,78vw);margin:0 auto;animation:1.2s .2s both inv-rise;position:relative}.t-crystal-floral .cf-hero__oval{width:80%;height:85.34%;box-shadow:inset 0 0 0 3px var(--paper-light);border-radius:50%;position:absolute;top:7.33%;left:10%;overflow:hidden}.t-crystal-floral .cf-hero__oval img{object-fit:cover;width:100%;height:100%}.t-crystal-floral .cf-hero__frame{width:100%;height:100%;position:absolute;inset:0}.t-crystal-floral .cf-hero__frame .cf-frame__fill{display:none}.t-crystal-floral .cf-hero__names{font-family:var(--f-display);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);overflow-wrap:anywhere;margin:1.6rem 0 .6rem;font-size:clamp(1.45rem,6.6vw,2.2rem);font-weight:500;line-height:1.25;display:grid}.t-crystal-floral .cf-hero__names .cf-amp{font-size:1.15em;line-height:1.1}.t-crystal-floral .cf-hero__date{font-family:var(--f-caps);letter-spacing:.2em;text-transform:uppercase;flex-wrap:wrap;justify-content:center;align-items:center;gap:.4rem .7rem;margin:0;font-size:.78rem;display:flex}.t-crystal-floral .cf-scatter{pointer-events:none;position:absolute;inset:0;overflow:hidden}.t-crystal-floral .cf-scatter__spot{width:30px;transform:translateY(calc(var(--cf-y,0) * var(--k) * 1px)) scale(var(--s));will-change:transform;position:absolute}.t-crystal-floral .cf-scatter__spot .cf-floret{opacity:.75;width:100%;animation:9s ease-in-out infinite alternate cf-sway}@keyframes cf-sway{0%{transform:rotate(-14deg)translateY(-4px)}to{transform:rotate(16deg)translateY(5px)}}.t-crystal-floral .card{color:var(--ink);background:var(--paper-light);box-shadow:0 0 0 1px var(--cf-hair), inset 0 0 0 6px var(--paper-light), inset 0 0 0 7px var(--cf-hair), 0 18px 40px color-mix(in srgb, var(--primary-deep) 13%, transparent);border-radius:4px;margin-top:30px;margin-bottom:60px;padding-top:clamp(62px,17vw,80px)}.t-crystal-floral .card--compact{padding-bottom:clamp(62px,17vw,80px)}.t-crystal-floral .cf-cardband{pointer-events:none;width:min(78%,330px);position:absolute;top:-26px;left:50%;transform:translate(-50%)}.t-crystal-floral .cf-cardband--low{top:auto;bottom:-26px;transform:translate(-50%)scaleY(-1)}.t-crystal-floral .card__title{font-family:var(--f-caps);letter-spacing:.24em;color:var(--primary);font-size:1.05rem;font-weight:500}.t-crystal-floral .card__title:after{content:"";background:radial-gradient(circle, var(--accent) 0 3px, transparent 3.5px) center / 7px 7px no-repeat, linear-gradient(var(--cf-hair), var(--cf-hair)) center / 100% 1px no-repeat;width:90px;height:7px;margin:.7rem auto 0;display:block}.t-crystal-floral .card__story{color:var(--muted);opacity:1;font-size:1.12rem;font-style:italic}.t-crystal-floral .card__lead{letter-spacing:.16em;color:var(--primary);font-size:.85rem}.t-crystal-floral .card__person{font-family:var(--f-display);letter-spacing:.1em;text-transform:uppercase;color:var(--primary);font-size:clamp(1.15rem,5vw,1.45rem)}.t-crystal-floral .card__role{color:var(--accent-dark);opacity:1}.t-crystal-floral .card__amp{color:var(--accent-dark);font-size:2.6rem}.t-crystal-floral .card__venue{font-size:1.15rem}.t-crystal-floral .card__venue strong{font-family:var(--f-caps);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);font-size:.95rem}.t-crystal-floral .families__side+.families__side{border-left-color:var(--cf-hair)}.t-crystal-floral .families__label{color:var(--accent-dark);opacity:1}.t-crystal-floral .families__name{font-size:1.05rem}.t-crystal-floral .dateblock__top,.t-crystal-floral .dateblock__my{color:var(--primary);opacity:1}.t-crystal-floral .dateblock__day{font-family:var(--f-display);color:var(--primary);font-size:2.9rem}.t-crystal-floral .dateblock__rule{background:var(--accent);opacity:1;width:9px;height:9px;box-shadow:0 -22px 0 -4px var(--accent), 0 22px 0 -4px var(--accent);transform:rotate(45deg)}.t-crystal-floral .card__times-label,.t-crystal-floral .countdown__label,.t-crystal-floral .countdown__title{color:var(--accent-dark);opacity:1}.t-crystal-floral .card__times-value{font-size:1.25rem;font-weight:600}.t-crystal-floral .countdown__title{letter-spacing:.24em;text-transform:uppercase;font-size:.7rem}.t-crystal-floral .countdown__unit{background:var(--paper);border:1px solid var(--cf-hair);box-shadow:inset 0 0 0 3px var(--paper), inset 0 0 0 4px color-mix(in srgb, var(--accent) 25%, transparent);border-radius:2px}.t-crystal-floral .countdown__value{color:var(--primary);font-size:1.5rem}.t-crystal-floral .calendar{background:var(--paper);border:1px solid var(--accent);box-shadow:inset 0 0 0 4px var(--paper), inset 0 0 0 5px var(--cf-hair);border-radius:2px;padding:22px 20px 18px;position:relative}.t-crystal-floral .calendar:before,.t-crystal-floral .calendar:after{content:"";background:var(--cf-leaf);width:46px;height:46px;-webkit-mask:var(--cf-corner) center / contain no-repeat;-webkit-mask:var(--cf-corner) center / contain no-repeat;mask:var(--cf-corner) center / contain no-repeat;pointer-events:none;position:absolute}.t-crystal-floral .calendar:before{top:-9px;left:-9px}.t-crystal-floral .calendar:after{bottom:-9px;right:-9px;transform:rotate(180deg)}.t-crystal-floral .calendar__title{font-family:var(--f-caps);letter-spacing:.22em;text-transform:uppercase;color:var(--primary);border-bottom:1px solid var(--cf-hair);font-size:.95rem}.t-crystal-floral .calendar__grid{font-family:var(--f-body);font-size:.92rem;font-weight:600}.t-crystal-floral .calendar__head{font-family:var(--f-caps);color:var(--accent-dark);opacity:1;font-size:.6rem}.t-crystal-floral .calendar__heart{color:var(--primary);filter:drop-shadow(0 0 0 var(--accent)) drop-shadow(0 2px 3px var(--shadow))}.t-crystal-floral .addcal .link-btn{font-family:var(--f-caps);letter-spacing:.16em;text-transform:uppercase;color:var(--primary);font-size:.68rem}.t-crystal-floral .schedule__icon{color:var(--primary)}.t-crystal-floral .schedule__time{font-size:1.15rem;font-weight:600}.t-crystal-floral .schedule__dot{background:radial-gradient(circle at 35% 30%, var(--accent-light), var(--accent) 60%, var(--accent-dark));width:10px;height:10px;color:var(--accent);box-shadow:0 0 0 2px var(--paper-light), 0 0 0 3px var(--cf-hair)}.t-crystal-floral .schedule__row:not(:last-child) .schedule__dot:after{opacity:.7;height:34px;top:calc(100% + 3px)}.t-crystal-floral .schedule__label{font-family:var(--f-caps);letter-spacing:.16em;text-transform:uppercase;opacity:1;font-size:.82rem}.t-crystal-floral .gallery__slide{border:4px solid var(--paper-light);box-shadow:0 0 0 1px var(--accent), 0 16px 30px color-mix(in srgb, var(--primary-deep) 25%, transparent);border-radius:999px 999px 4px 4px}.t-crystal-floral .gallery__nav{background:color-mix(in srgb, var(--primary) 85%, transparent);box-shadow:0 0 0 1px var(--accent)}.t-crystal-floral .gallery__dots button.is-active{background:var(--accent)}.t-crystal-floral .venue__name{font-family:var(--f-caps);letter-spacing:.14em;text-transform:uppercase;color:var(--primary);font-size:1rem}.t-crystal-floral .venue__address{font-style:italic}.t-crystal-floral .venue__map{border:5px solid var(--paper-light);box-shadow:0 0 0 1px var(--accent), 0 14px 30px color-mix(in srgb, var(--primary-deep) 16%, transparent);border-radius:2px}.t-crystal-floral .venue__directions{letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:500}.t-crystal-floral .dress__names{font-size:1.15rem;font-style:italic}.t-crystal-floral .dress__swatch{border:3px solid var(--paper-light);width:34px;height:34px;box-shadow:0 0 0 1px var(--accent), 0 6px 12px color-mix(in srgb, var(--primary-deep) 18%, transparent);border-radius:3px;margin:6px;transform:rotate(45deg)}.t-crystal-floral .closing{padding-top:8px;position:relative}.t-crystal-floral .closing__note{font-size:1.12rem;font-style:italic}.t-crystal-floral .closing__rsvp{letter-spacing:.2em;color:var(--primary);font-weight:500}.t-crystal-floral .closing__mark{color:var(--primary);font-size:2.3rem}.t-crystal-floral .music{box-shadow:0 0 0 2px var(--accent), 0 8px 20px var(--shadow)}.t-crystal-floral .modal__box h2{font-family:var(--f-caps);letter-spacing:.14em;text-transform:uppercase;font-size:1.3rem}@media (width<=520px){.t-crystal-floral .card{padding-left:22px;padding-right:22px}}
