:root{--shadow: 0 12px 32px rgba(65,70,62,.08);--script: "Great Vibes",cursive;--serif: "Cormorant Garamond",Georgia,serif;--body: "Lora",Georgia,serif;--line-body: 1.7;--section-gutter: clamp(1rem,3.5vw,3rem);}*{box-sizing: border-box;}html{scroll-behavior: smooth;}body{margin: 0;background: var(--ds-ivory);color: var(--ds-ink);font-family: var(--body);font-size: var(--type-body);line-height: var(--line-body);overflow-x: hidden;}section[id]{scroll-margin-top: 86px;}a{color: inherit;text-decoration: none;}button,input,textarea,select{font: inherit;}button,a{-webkit-tap-highlight-color: transparent;}.top-note{padding: 7px 20px;text-align: center;font: 10px/1.5 Arial,sans-serif;letter-spacing: .04em;color: #7c877c;background: #f2eee6;border-bottom: 1px solid rgba(105,119,104,.12);}.site-header{min-height: 78px;padding: 0 clamp(24px,5vw,82px);display: flex;align-items: center;justify-content: space-between;gap: 26px;background: rgba(255,253,249,.96);-webkit-backdrop-filter: blur(8px);backdrop-filter: blur(8px);border-bottom: 1px solid var(--ds-border);position: sticky;top: 0;z-index: 20;transition: box-shadow .2s ease;}.brand{display: inline-flex;align-items: center;gap: 7px;min-width: 100px;color: var(--ds-ink);font: 36px/.9 var(--script);white-space: nowrap;}.brand-heart{color: var(--ds-olive);font: 14px Arial,sans-serif;}.main-nav{display: flex;align-items: center;justify-content: center;gap: clamp(18px,2.7vw,42px);font-size: 12px;color: #53685d;}.main-nav a{position: relative;padding: 10px 0;transition: color .2s ease;white-space: nowrap;}.main-nav a:hover,.main-nav a.active{color: #243f35;font-weight: 500;}.main-nav a.active::after{content: "";position: absolute;bottom: 2px;left: 0;right: 0;margin: auto;width: 24px;height: 2px;border-radius: 1px;background: var(--ds-olive);}.main-nav .nav-cta{padding: 9px 18px;border: 1px solid #d7c5b5;border-radius: 30px;transition: all .2s ease;}.main-nav .nav-cta:hover{background: #f5ebe6;border-color: var(--ds-olive);}.main-nav .nav-cta span{color: var(--ds-olive);margin-left: 7px;}.main-nav .active-cta{background: var(--ds-olive);color: white;border-color: var(--ds-olive);}.main-nav .active-cta:hover{background: #3a574b;color: white;}.header-actions{display: flex;align-items: center;gap: 12px;}.lang-toggle{display: inline-flex;align-items: center;gap: 3px;padding: 5px 12px;background: rgba(247,243,237,0.85);border: 1px solid #dfd4c5;border-radius: 20px;cursor: pointer;font-family: inherit;font-size: 11px;font-weight: 500;letter-spacing: .02em;color: #7a7268;transition: all 0.25s ease;user-select: none;}.lang-toggle:hover{background: var(--ds-white);border-color: var(--ds-olive);box-shadow: 0 2px 8px rgba(184,114,114,0.12);}.lang-toggle .lang-opt{display: inline-block;padding: 1px 4px;border-radius: 4px;transition: all 0.2s ease;color: #8c8378;}.lang-toggle .lang-opt.active{color: var(--ds-olive);font-weight: 700;background: rgba(222,169,169,0.22);}.lang-toggle .lang-sep{opacity: 0.4;font-size: 10px;padding: 0 1px;}.music-toggle{border: 0;padding: 8px 0 8px 6px;background: transparent;color: var(--ds-ink);font-size: 22px;cursor: pointer;display: flex;align-items: center;gap: 9px;}.toggle-pill{display: inline-flex;width: 32px;height: 17px;border-radius: 20px;border: 1px solid var(--ds-accent-muted);align-items: center;padding: 2px;transition: background .25s ease,border-color .25s ease;}.toggle-pill i{display: block;width: 11px;height: 11px;border-radius: 50%;background: var(--ds-accent-muted);transition: transform .25s cubic-bezier(0.4,0,0.2,1),background .25s ease;}.toggle-pill.active{background: var(--ds-olive);border-color: var(--ds-olive);}.toggle-pill.active i{background: var(--ds-white);transform: translateX(15px);}.section-shell{width: min(1320px,calc(100% - 80px));margin-inline: auto;}.section-pad{padding-block: 94px;}.hero{position: relative;display: grid;grid-template-columns: .92fr 1.08fr;align-items: center;min-height: 640px;padding: 85px 7.5% 80px;isolation: isolate;overflow: hidden;background: linear-gradient(112deg,rgba(247,244,235,.82),rgba(255,253,248,.98) 48%,rgba(247,239,231,.78));border-inline: 1px solid #f0e7db;}.hero-copy{max-width: 490px;padding: 15px 20px 15px 0;text-align: center;z-index: 2;}.eyebrow,.section-kicker{margin: 0 0 15px;font: 500 11px/1.5 var(--body);letter-spacing: .06em;color: #718276;}.hero h1{display: flex;flex-direction: column;align-items: center;margin: 0;color: var(--ds-ink);font: 400 clamp(54px,5.2vw,80px)/.92 var(--script);}.hero h1 .ampersand{font: 400 34px/1.1 var(--serif);color: var(--ds-olive);padding: 6px 0;}.intro{margin: 23px auto 17px;color: #66776d;font-size: 14px;line-height: 1.9;}.divider-heart{display: flex;align-items: center;justify-content: center;gap: 13px;margin: 18px auto;color: var(--ds-olive);}.divider-heart span{width: 42px;height: 1px;background: #d9c6b4;}.divider-heart b{font-size: 12px;font-weight: 400;}.hero-date{margin: 0;color: var(--ds-ink);font: 500 25px/1.5 var(--serif);letter-spacing: .04em;}.venue-name{margin: 9px 0 0;font: 600 19px/1.4 var(--serif);}.venue-address{margin: 3px 0 0;font-size: 12px;color: #7a8177;}.text-link{display: inline-flex;align-items: center;gap: 9px;margin-top: 29px;font-size: 11px;color: #586e61;transition: color .2s;}.text-link:hover{color: var(--ds-ink);}.text-link span{font-size: 18px;}.hero .hero-rsvp-cta{margin-top: 1rem;min-height: 46px;padding-inline: 1.25rem;gap: .65rem;font-size: .82rem;letter-spacing: .01em;box-shadow: 0 7px 18px rgba(65,70,62,.13);}.hero .hero-rsvp-cta span{font-size: 1rem;}.hero-art{min-height: 470px;position: relative;display: flex;align-items: center;justify-content: center;z-index: 1;}.photo-placeholder{position: relative;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 8px;text-align: center;border: 1px dashed rgba(73,107,94,0.38);background: linear-gradient(135deg,rgba(243,246,239,0.85),rgba(251,244,238,0.92));color: #55665b;overflow: hidden;transition: transform .3s ease,border-color .3s ease,box-shadow .3s ease;}.photo-placeholder::after{content: "";position: absolute;inset: 10px;border: 1px solid rgba(255,255,255,0.75);pointer-events: none;border-radius: inherit;}.photo-placeholder:hover{border-color: var(--ds-olive);transform: translateY(-2px);box-shadow: 0 12px 28px rgba(73,107,94,0.1);}.photo-placeholder .photo-icon{font: 34px/1 Arial,sans-serif;color: var(--ds-olive);opacity: 0.65;}.photo-placeholder strong{font: 600 11px/1.3 var(--body);letter-spacing: .04em;color: var(--ds-ink);}.photo-placeholder small{font-size: 10px;color: #6d7b71;background: rgba(255,255,255,0.85);padding: 2px 10px;border-radius: 12px;border: 1px solid rgba(217,201,185,0.6);}.photo-hero{width: min(100%,525px);height: 430px;border-radius: 48% 48% 8px 8px;box-shadow: 0 16px 30px rgba(60,65,52,.08);transform: rotate(1deg);}.photo-caption{position: absolute;bottom: 2px;right: 12%;font: 22px var(--script);color: #7b887b;transform: rotate(-4deg);}.floral{position: absolute;width: auto;height: auto;object-fit: contain;pointer-events: none;user-select: none;}.floral-hero-tl{width: 270px;left: -32px;top: -15px;z-index: 3;}.floral-hero-br{width: 310px;right: -42px;bottom: -45px;z-index: 3;transform: rotate(8deg);}.countdown-section{min-height: 245px;padding: 52px 20px 42px;background: #f4eee7;border-block: 1px solid #eee2d6;text-align: center;position: relative;overflow: hidden;}.countdown-wrap{position: relative;max-width: 860px;margin: 0 auto;display: flex;align-items: center;justify-content: center;padding-inline: 40px;}.countdown-content{position: relative;z-index: 2;width: 100%;}.countdown-section .section-kicker{margin-bottom: 4px;}h2{margin: 0;font: 500 var(--type-heading)/1.2 var(--serif);color: var(--ds-ink);}.countdown-grid{display: flex;justify-content: center;gap: 15px;margin: 25px auto 7px;position: relative;z-index: 1;}.count-card{width: 108px;height: 77px;display: flex;flex-direction: column;align-items: center;justify-content: center;border: 1px solid rgba(217,201,185,.65);background: rgba(255,253,249,.85);-webkit-backdrop-filter: blur(4px);backdrop-filter: blur(4px);border-radius: 12px;transition: transform .2s ease;}.count-card:hover{transform: translateY(-2px);}.count-card strong{font: 500 29px/1 var(--serif);color: var(--ds-ink);}.count-card span{margin-top: 5px;font-size: 11px;color: #7c847a;}.placeholder-note{margin: 4px 0 0;font-size: 10px;color: #96978d;}.floral-count-left{position: absolute;left: -20px;top: 50%;transform: translateY(-50%) rotate(85deg);height: 145px;opacity: .85;pointer-events: none;z-index: 1;}.floral-count-right{position: absolute;right: -20px;top: 50%;transform: translateY(-50%) scaleX(-1) rotate(85deg);height: 145px;opacity: .85;pointer-events: none;z-index: 1;}.story-section{display: grid;grid-template-columns: 1fr 1fr;align-items: center;gap: 60px;min-height: 480px;}.story-copy{max-width: 530px;padding-left: 0;}.story-copy .section-kicker{margin-bottom: 8px;}.story-copy h2{margin-bottom: 21px;font-size: clamp(30px,2.5vw,40px);text-wrap: balance;line-height: 1.25;}.story-copy h2 .title-part{display: inline-block;white-space: nowrap;}.story-copy p:not(.section-kicker){font-size: 14px;line-height: 2.05;color: #66756a;}.story-copy .subtle-copy,.subtle-copy{font-size: 12px;color: var(--ds-muted);}.outline-button,.primary-button,.accent-button{display: inline-flex;align-items: center;justify-content: center;gap: 14px;min-height: 42px;padding: 10px 22px;border-radius: 28px;border: 1px solid #8ea094;font-size: 12px;cursor: pointer;transition: transform .2s ease,background .2s ease,box-shadow .2s ease;}.outline-button{margin-top: 10px;background: transparent;color: var(--ds-ink);}.outline-button:hover{background: #edf0e9;transform: translateY(-1px);}.outline-button span,.primary-button span,.accent-button span{font-size: 17px;}.story-visual{min-height: 360px;position: relative;display: flex;align-items: center;justify-content: center;}.photo-story{width: 66%;height: 300px;transform: rotate(-3deg);box-shadow: var(--shadow);}.photo-story-small{position: absolute;width: 31%;height: 190px;right: 3%;bottom: 9px;transform: rotate(7deg);box-shadow: var(--shadow);}.story-floral{width: 180px;left: 9%;bottom: -8px;z-index: 2;}.story-floral-petal{width: 90px;position: absolute;right: 6%;top: -15px;opacity: .85;pointer-events: none;transform: rotate(25deg);z-index: 2;}.schedule-section{position: relative;overflow: hidden;background: #f8f5ee;}.schedule-section>.section-kicker,.schedule-section>h2{text-align: center;position: relative;z-index: 1;}.schedule-section>h2{margin-bottom: 38px;}.floral-schedule{width: 260px;right: -55px;top: -70px;opacity: .7;transform: rotate(15deg);}.event-grid{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 18px;position: relative;z-index: 1;}.event-card{min-height: 230px;padding: 26px 25px 23px;text-align: center;background: rgba(255,253,249,.92);border: 1px solid var(--ds-border);border-radius: 14px;box-shadow: 0 6px 19px rgba(82,68,54,.03);transition: transform .25s ease,box-shadow .25s ease;}.event-card:hover{transform: translateY(-3px);box-shadow: 0 12px 26px rgba(82,68,54,.07);}button.event-card.location-option{appearance: none;font: inherit;color: inherit;width: 100%;cursor: pointer;text-align: center;}.event-card.location-option.is-selected{border-color: #91a79a;background: rgba(241,246,239,.96);box-shadow: 0 0 0 2px rgba(145,167,154,.16),0 8px 22px rgba(82,68,54,.06);}.event-card.location-option:focus-visible{outline: 3px solid rgba(97,128,111,.55);outline-offset: 3px;}.event-card.location-option .event-time,.event-card.location-option .event-venue,.event-card.location-option .event-address{overflow-wrap: anywhere;}.map-placeholder{padding: 0;}.map-placeholder-state{position: relative;z-index: 1;display: flex;justify-content: center;align-items: center;gap: 17px;padding: 30px;width: 100%;box-sizing: border-box;}.map-placeholder-state[hidden]{display: none;}.map-placeholder iframe{position: absolute;inset: 0;z-index: 2;width: 100%;height: 100%;min-height: 235px;border: 0;background: #f0ede5;}.map-placeholder[data-map-state="loaded"]::before,.map-placeholder[data-map-state="loaded"]::after{display: none;}.map-placeholder .map-pin{flex: 0 0 auto;}.map-selected-kicker{margin: 0 0 8px;color: #8b9c8d;font-size: 10px;letter-spacing: .04em;}.map-copy .map-location-time{color: var(--ds-ink);font-weight: 500;margin-bottom: 3px;}.map-copy .map-location-venue{color: var(--ds-sage-deep);font-weight: 600;margin-bottom: 3px;}.map-copy .map-location-address{margin-top: 0;}.map-btn.is-disabled{opacity: .55;cursor: not-allowed;}.event-icon{display: inline-flex;align-items: center;justify-content: center;width: 44px;height: 44px;margin-bottom: 11px;border-radius: 50%;background: var(--ds-sage-pale);color: var(--ds-olive);font: 24px var(--serif);}.event-card h3,.map-copy h3{margin: 0 0 9px;font: 600 23px/1.2 var(--serif);}.event-card p{margin: 3px 0;font-size: 11px;line-height: 1.7;color: var(--ds-sage-soft-text);}.event-card .event-time{color: var(--ds-ink);font-size: 12px;font-weight: 500;}.map-row{display: grid;grid-template-columns: 1.25fr .75fr;gap: 34px;align-items: center;margin-top: 34px;}.map-placeholder{min-height: 235px;display: flex;justify-content: center;align-items: center;gap: 17px;padding: 30px;background: linear-gradient(130deg,#e8eee7,#f0e9de);border: 1px dashed #aebcae;border-radius: 14px;color: #708273;position: relative;overflow: hidden;}.map-placeholder::before,.map-placeholder::after{content: "";position: absolute;width: 140%;height: 1px;background: rgba(160,180,164,.45);transform: rotate(-18deg);}.map-placeholder::after{transform: rotate(25deg);}.map-placeholder>*{z-index: 1;}.map-placeholder strong{font-size: 11px;letter-spacing: .04em;}.map-placeholder p{max-width: 280px;margin: 6px 0 0;font-size: 12px;}.map-pin{font-size: 28px;color: var(--ds-olive);}.map-copy{padding: 15px 20px;}.map-copy h3{font-size: 29px;}.map-copy p{color: #718075;font-size: 13px;line-height: 1.9;}.map-btn{margin-top: 10px;}.gallery-section{position: relative;overflow: hidden;}.gallery-heading{display: flex;align-items: end;justify-content: space-between;margin-bottom: 27px;}.gallery-heading h2{margin-bottom: 6px;}.gallery-heading p{margin: 0;}.gallery-count{color: #a8aa9f;font: 16px var(--serif);letter-spacing: .04em;}.gallery-grid{display: grid;grid-template-columns: 1.12fr 1fr 1fr 1fr;gap: 16px;position: relative;z-index: 1;}.gallery-photo{height: 260px;border-radius: 8px;}.gallery-photo-tall{height: 310px;margin-top: -25px;}.gallery-floral{width: 280px;right: -60px;bottom: -45px;opacity: .75;}.rsvp-cta{position: relative;margin-bottom: 70px;padding: 70px 30px 64px;text-align: center;background: linear-gradient(120deg,#f4e7e2,#f6f1e9 57%,#e9eee6);border: 1px solid #eee0d6;border-radius: 20px;overflow: hidden;}.rsvp-cta .section-kicker{margin-bottom: 10px;}.rsvp-cta h2{max-width: 740px;margin: 0 auto 10px;}.rsvp-cta p:not(.section-kicker){color: #6c7c70;font-size: 13px;}.primary-button{border-color: var(--ds-olive);background: var(--ds-olive);color: white;min-height: 46px;padding-inline: 25px;}.primary-button:hover{transform: translateY(-2px);background: #38584a;box-shadow: 0 8px 20px rgba(56,88,74,0.25);}.cta-floral-left{width: 200px;left: -35px;bottom: -48px;}.cta-floral-right{width: 210px;right: -35px;bottom: -45px;}.site-footer{text-align: center;padding: 20px 24px 45px;color: #829085;}.footer-floral{display: flex;justify-content: center;align-items: center;margin: 0 auto 16px;}.floral-footer-center{width: 150px;height: auto;opacity: .85;}.site-footer .brand{justify-content: center;margin: 0 auto 9px;}.site-footer p{margin: 5px 0;font: 24px var(--script);color: var(--ds-ink);}.site-footer small{font-size: 10px;color: #a4a69b;display: block;margin-top: 4px;}.site-footer .outline-button{margin-top: 16px;}.rsvp-page{overflow: hidden;}.rsvp-hero{position: relative;min-height: 295px;padding: 72px 25px 52px;text-align: center;background: linear-gradient(115deg,#f2e6e0,#fbf7ef 55%,#ecefe6);overflow: hidden;}.rsvp-hero h1{margin: 0;font: 400 clamp(58px,6vw,80px)/.95 var(--script);color: var(--ds-ink);}.rsvp-hero>p:not(.section-kicker){margin: 7px 0;color: #617367;font-size: 16px;}.rsvp-hero .rsvp-intro{max-width: 530px;margin: 10px auto 0;font-size: 12px;line-height: 1.8;}.rsvp-hero .section-kicker{margin-bottom: 12px;}.rsvp-hero-left{width: 260px;left: -25px;top: -50px;}.rsvp-hero-right{width: 270px;right: -30px;top: -54px;}.section-heading-centered{text-align: center;margin-bottom: 29px;}.section-heading-centered .section-kicker{margin-bottom: 5px;}.section-heading-centered p:last-child{margin: 8px 0 0;color: #758277;font-size: 12px;}.rsvp-form-section{padding-top: 65px;padding-bottom: 75px;}.rsvp-layout{display: grid;grid-template-columns: 1.5fr .7fr;gap: 25px;align-items: stretch;}.form-card{padding: 32px;background: var(--ds-paper);border: 1px solid var(--ds-border);border-radius: 16px;box-shadow: var(--shadow);}.form-grid{display: grid;gap: 17px;}.two-col{grid-template-columns: repeat(2,minmax(0,1fr));}.form-card label,.wish-form>label{display: block;font-size: 12px;color: var(--ds-ink);}.form-card label>span,fieldset legend span,.wish-form label>span{color: var(--ds-olive);}.form-card label small{color: #92998f;font-size: 10px;}.form-card input:not([type=radio]),.form-card textarea,.form-card select,.wish-form input,.wish-form textarea{display: block;width: 100%;margin-top: 7px;border: 1px solid #e1d9d0;border-radius: 8px;background: #fffefa;color: var(--ds-ink);padding: 11px 13px;outline: none;font: 12px var(--body);transition: border .2s,box-shadow .2s;}.form-card input:focus,.form-card textarea:focus,.form-card select:focus,.wish-form input:focus,.wish-form textarea:focus{border-color: #8da396;box-shadow: 0 0 0 3px rgba(106,139,120,.12);}.form-card input::placeholder,.form-card textarea::placeholder,.wish-form input::placeholder,.wish-form textarea::placeholder{color: #b3b4aa;}.form-card fieldset{border: 0;padding: 0;margin: 20px 0 12px;}.form-card legend{margin-bottom: 8px;font-size: 12px;}.radio-line{display: flex;align-items: center;gap: 9px;margin: 5px 0;color: var(--ds-muted);}input[type=radio]{accent-color: var(--ds-olive);}.radio-line input{margin: 0;}.form-inline-row{align-items: start;}.form-inline-row fieldset{margin-top: 0;}.form-inline-row select{max-width: 130px;}.radio-options{display: flex;flex-wrap: wrap;gap: 10px;}.radio-options label{display: flex;align-items: center;gap: 4px;font-size: 11px;white-space: nowrap;}.radio-options input{margin: 0;}.form-attend-row{margin-top: 16px;align-items: start;}.form-card .attend-fieldset{margin: 0;padding: 0;border: 0;}.guest-count-label{display: flex;flex-direction: column;transition: opacity .3s ease,filter .3s ease;}.guest-count-label select{width: 100%;}.guest-count-label.is-disabled{opacity: .35;filter: grayscale(40%);cursor: not-allowed;user-select: none;}.guest-count-label.is-disabled select{cursor: not-allowed;background-color: #f1ece5;border-color: #dfd8cf;color: #9f9b93;pointer-events: none;}.form-card>label{margin-top: 14px;}.form-card textarea{resize: vertical;}.full-button{width: 100%;margin-top: 20px;font-family: var(--body);}.form-disclaimer{font-size: 10px;text-align: center;color: #a4a397;margin: 11px 0 0;}.thankyou-card{position: relative;display: flex;flex-direction: column;justify-content: center;align-items: center;overflow: hidden;padding: 36px 24px;text-align: center;background: linear-gradient(135deg,#f8efe9,#edf0e8);border-radius: 16px;border: 1px solid #eee1d5;}.envelope-icon{font-size: 68px;line-height: 1.2;color: var(--ds-olive);}.thankyou-card h3{margin: 18px 0 0;font: 500 28px var(--serif);}.thankyou-card p{color: #64766a;font-size: 14px;line-height: 1.9;}.thankyou-card .divider-heart{margin: 13px 0;}.thankyou-floral{width: 180px;bottom: -50px;right: -30px;opacity: .75;}.thankyou-floral-petal{width: 80px;position: absolute;left: -15px;top: 15px;opacity: .8;pointer-events: none;transform: rotate(-20deg);z-index: 2;}.guestbook-section{position: relative;padding: 68px clamp(28px,4.5vw,64px) 76px;background: #f8eeeb;border: 1px solid #ebd9d3;border-radius: 24px;margin-bottom: 65px;overflow: hidden;}.guestbook-heading{display: flex;justify-content: space-between;align-items: center;gap: 25px;margin-bottom: 25px;position: relative;z-index: 1;}.guestbook-heading .section-kicker{margin-bottom: 0;}.guestbook-heading h2{margin-bottom: 4px;}.guestbook-heading p{margin: 0;font-size: 12px;color: #78877c;}.status-pill{display: inline-flex;align-items: center;gap: 7px;border: 1px solid #d7dace;border-radius: 25px;padding: 8px 13px;background: rgba(255,253,249,.8);font-size: 10px;white-space: nowrap;}.status-pill i,.realtime-note span{width: 7px;height: 7px;border-radius: 50%;background: #d99b9c;display: inline-block;}.guestbook-layout{display: grid;grid-template-columns: minmax(320px,390px) 1fr;gap: clamp(24px,3.5vw,44px);align-items: start;margin-top: 10px;position: relative;z-index: 1;}.guestbook-form-col{position: sticky;top: 96px;}.wish-form{width: 100%;max-width: none;margin: 0;padding: 24px 22px;background: rgba(255,253,249,.95);border: 1px solid #eedfd6;border-radius: 16px;box-shadow: 0 4px 20px rgba(184,114,114,.06);display: flex;flex-direction: column;gap: 14px;position: relative;z-index: 1;}.wish-form label{display: flex;flex-direction: column;gap: 7px;font-size: 11px;color: #4e6056;width: 100%;}.wish-form input{width: 100%;height: 44px;}.wish-form textarea{width: 100%;min-height: 105px;resize: vertical;}.wish-actions{display: flex;justify-content: space-between;align-items: center;width: 100%;margin-top: 2px;}.wish-actions .char-count{color: #9ea197;font-size: 10px;}.accent-button{background: var(--ds-olive);color: var(--ds-white);border-color: var(--ds-olive);min-height: 42px;padding-inline: 26px;white-space: nowrap;}.accent-button:hover{background: var(--ds-olive);transform: translateY(-2px);box-shadow: 0 6px 18px rgba(217,142,145,.35);}.guestbook-list-col{display: flex;flex-direction: column;min-width: 0;}.approved-heading{display: flex;justify-content: space-between;gap: 16px;align-items: center;margin: 0 0 14px;position: relative;z-index: 1;}.approved-heading h3{margin: 0;font: 500 24px var(--serif);color: var(--ds-ink);}.approved-heading span{font-size: 10px;color: #869186;white-space: nowrap;}.wishes-grid,.wishes-list{display: flex;flex-direction: column;gap: 13px;position: relative;z-index: 1;max-height: 520px;overflow-y: auto;padding-right: 6px;scrollbar-width: thin;scrollbar-color: var(--ds-border-warm) transparent;}.wishes-grid::-webkit-scrollbar,.wishes-list::-webkit-scrollbar{width: 5px;}.wishes-grid::-webkit-scrollbar-thumb,.wishes-list::-webkit-scrollbar-thumb{background: var(--ds-border-warm);border-radius: 10px;}.wish-card{background: rgba(255,253,249,.93);border: 1px solid #eee1d9;border-radius: 12px;padding: 16px 20px;transition: transform .2s ease,box-shadow .2s ease;}.wish-card:hover{transform: translateY(-2px);box-shadow: 0 8px 20px rgba(66,55,44,.04);}.wish-meta{display: flex;align-items: center;gap: 10px;}.avatar{display: flex;align-items: center;justify-content: center;width: 36px;height: 36px;border-radius: 50%;background: #d8c4b3;color: var(--ds-white);font: 19px var(--serif);}.avatar-two{background: #c5d0c0;}.avatar-three{background: #dfc5c1;}.avatar-four{background: #c8b6a8;}.wish-meta strong{display: block;font-size: 11px;font-weight: 500;}.wish-meta small{display: block;color: #a1a399;font-size: 9px;}.wish-card p{font-size: 12px;line-height: 1.75;margin: 12px 0 0;color: #6b796e;}.wish-heart{color: var(--ds-olive);}.realtime-note{margin: 24px 0 0;text-align: center;font-size: 10px;color: #8b9388;}.realtime-note span{margin-right: 7px;}.toast{position: fixed;right: 24px;bottom: 24px;max-width: min(440px,calc(100% - 48px));background: rgba(48,75,66,0.95);-webkit-backdrop-filter: blur(10px);backdrop-filter: blur(10px);color: white;border-radius: 12px;padding: 14px 20px;box-shadow: 0 16px 40px rgba(48,75,66,0.22);font-size: 13px;line-height: 1.5;display: flex;align-items: center;gap: 12px;opacity: 0;transform: translateY(16px);pointer-events: none;transition: opacity .3s ease,transform .3s cubic-bezier(0.16,1,0.3,1);z-index: 100;}.toast.show{opacity: 1;transform: translateY(0);}.toast-icon{font-size: 18px;flex-shrink: 0;}.guestbook-floral{width: 245px;right: -56px;top: -62px;opacity: .42;z-index: 0;}.guestbook-floral-bl{width: 180px;left: -40px;bottom: -45px;opacity: .55;z-index: 0;}.guestbook-floral-br{width: 190px;right: -40px;bottom: -45px;opacity: .55;z-index: 0;}.hero.section-shell{width: min(1450px,calc(100% - 48px));position: relative;display: grid;grid-template-columns: minmax(0,var(--hero-info-width,70%)) minmax(0,calc(100% - var(--hero-info-width,70%)));align-items: center;column-gap: 0;min-height: clamp(590px,47vw,735px);padding: clamp(52px,5.4vw,86px) clamp(28px,5vw,74px);margin-inline: auto;overflow: hidden;isolation: isolate;border: 1px solid #eee3d7;border-radius: 2px;background-color: #eee9df;background-image: radial-gradient(ellipse at 82% 38%,rgba(221,216,199,.75) 0,rgba(221,216,199,0) 35%),radial-gradient(ellipse at 67% 80%,rgba(241,223,215,.55) 0,rgba(241,223,215,0) 36%),linear-gradient(110deg,#fbf8f1 0%,#f3efe5 52%,#e9e4d8 100%);background-size: cover;background-position: var(--hero-bg-position,right center);}.hero.section-shell::before{content: "";position: absolute;inset: 0;z-index: 0;pointer-events: none;background: linear-gradient(90deg,rgba(251,248,242,.99) 0%,rgba(251,248,242,.98) 27%,rgba(251,248,242,.94) 45%,rgba(251,248,242,.86) 58%,rgba(251,248,242,.58) 68%,rgba(251,248,242,.18) 79%,rgba(251,248,242,.02) 100%);}.hero.section-shell.has-hero-image{}.hero.section-shell[data-subject-side="left"]::before{background: linear-gradient(270deg,rgba(251,248,242,.99) 0%,rgba(251,248,242,.98) 27%,rgba(251,248,242,.94) 45%,rgba(251,248,242,.86) 58%,rgba(251,248,242,.58) 68%,rgba(251,248,242,.18) 79%,rgba(251,248,242,.02) 100%);}.hero .hero-copy{grid-column: 1 / 2;grid-row: 1;width: 100%;max-width: none;min-width: 0;margin: 0;padding: 14px clamp(14px,2.2vw,34px) 16px 0;position: relative;z-index: 2;align-self: center;text-align: center;}.hero[data-subject-side="left"] .hero-copy{grid-column: 2 / 3;padding: 14px 0 16px clamp(14px,2.2vw,34px);}.hero .eyebrow{margin-bottom: 11px;color: #667b6e;font-size: 11px;letter-spacing: .06em;}.hero h1.couple-names{display: flex;flex-direction: row;flex-wrap: nowrap;align-items: baseline;justify-content: center;gap: clamp(7px,1.05vw,17px);width: 100%;margin: 6px auto 0;color: var(--ds-forest);font: inherit;line-height: 1;}.hero .couple-name{display: inline-block;flex: 0 1 auto;min-width: 0;color: var(--ds-forest);font-family: var(--script);font-size: clamp(38px,3.6vw,60px);font-weight: 400;line-height: 1.08;white-space: nowrap;text-shadow: 0 1px 0 rgba(255,255,255,.35);}.hero h1 .ampersand{flex: 0 0 auto;align-self: baseline;padding: 0;color: var(--ds-olive);font: 500 clamp(18px,1.55vw,25px)/1 var(--serif);}.hero .intro{max-width: 590px;margin: 22px auto 15px;color: var(--ds-sage-deep);font-size: 14px;line-height: 1.9;text-wrap: pretty;}.hero .divider-heart{margin: 15px auto 19px;}.hero .hero-date{font-size: clamp(23px,2vw,29px);letter-spacing: .04em;}.hero-family-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(8px,1vw,15px);width: 100%;max-width: 760px;margin: 18px auto 0;text-align: center;}.hero-family-item{min-width: 0;padding: 12px clamp(8px,1vw,15px) 11px;border: 1px solid rgba(224,211,196,.72);border-radius: 9px;background: rgba(255,253,249,.42);}.hero-family-label{margin: 0 0 7px;color: #b57b7a;font: 600 10px/1.4 var(--body);letter-spacing: .05em;}.hero-family-parents{margin: 0;color: #315348;font: 500 clamp(13px,1vw,16px)/1.5 var(--serif);overflow-wrap: anywhere;}.hero-family-address{margin: 5px 0 0;color: #778076;font: 400 11px/1.55 var(--body);overflow-wrap: anywhere;}.hero-venue-details{margin: 12px auto 0;}.hero .venue-name{margin-top: 0;font-size: 16px;line-height: 1.45;}.hero .venue-address{max-width: 520px;margin: 3px auto 0;color: #777f75;font-size: 11px;line-height: 1.5;}.hero .text-link{margin-top: 14px;padding: 5px 8px;}.hero .hero-image-placeholder{grid-column: 2 / 3;grid-row: 1;align-self: center;justify-self: stretch;display: flex;flex-direction: column;align-items: center;justify-content: center;gap: 9px;min-width: 0;min-height: 300px;padding: 24px 8px;position: relative;z-index: 1;color: #607c70;text-align: center;opacity: .88;transition: opacity .25s ease;pointer-events: none;}.hero[data-subject-side="left"] .hero-image-placeholder{grid-column: 1 / 2;}.hero .hero-image-ornament{font-size: 34px;line-height: 1;opacity: .72;}.hero .hero-image-placeholder strong{color: #536d61;font: 600 10px/1.4 var(--body);letter-spacing: .04em;}.hero .hero-image-placeholder small{max-width: 245px;padding: 5px 12px;border: 1px solid rgba(221,207,191,.62);border-radius: 999px;background: rgba(255,253,249,.55);color: #7b887e;font-size: 10px;line-height: 1.5;overflow-wrap: anywhere;}.hero .hero-image-caption{margin-top: 17px;color: #71887b;font: 24px/1.2 var(--script);transform: rotate(-4deg);}.hero.has-hero-image .hero-image-placeholder{opacity: 0;visibility: hidden;}.hero .floral-hero-tl{width: clamp(170px,18vw,275px);left: -46px;top: -30px;z-index: 3;opacity: .9;}.hero .floral-hero-br{width: clamp(200px,20vw,310px);right: -48px;bottom: -63px;z-index: 3;opacity: .94;transform: rotate(7deg);}.hero[data-subject-side="left"] .floral-hero-tl{left: auto;right: -46px;transform: scaleX(-1);}.hero[data-subject-side="left"] .floral-hero-br{right: auto;left: -48px;transform: scaleX(-1) rotate(7deg);}:root{color-scheme: light;--ds-ivory: #f3f2e8;--ds-paper: #fbfaf4;--ds-sage: #e5e8d9;--ds-sage-pale: #eef0e6;--ds-olive: #58644d;--ds-ink: #41463e;--ds-muted: #626b5d;--ds-border: #d6d4c5;--ds-blush: #ebe8dd;--ds-focus: #687957;--ds-surface-white: #fffefb;--ds-white: #ffffff;--ds-ink-deep: #294251;--ds-forest: #294b40;--ds-olive-hover: #46523d;--ds-sage-deep: #536e61;--ds-sage-muted: #84937f;--ds-sage-soft-text: #7a8379;--ds-border-warm: #dfd2c6;--ds-accent-muted: #d7a6a1;--ds-paper-soft: #f5f4ec;--ds-paper-warm: #fbf8f2;--ds-card: #fcfaf6;--ds-success-bg: #e6f6ec;--ds-warm-neutral: #f4efea;--ds-black: #000000;--ds-radius-sm: .45rem;--ds-radius-md: .75rem;--ds-radius-lg: 1rem;--ds-space-1: .25rem;--ds-space-2: .5rem;--ds-space-3: .75rem;--ds-space-4: 1rem;--ds-space-5: 1.5rem;--ds-space-6: 2rem;--type-display: clamp(2.35rem,3.55vw,3.45rem);--type-intro-mobile: clamp(.78rem,3.1vw,.85rem);--type-heading: clamp(2rem,1.55rem + 1.15vw,2.65rem);--type-subheading: clamp(1.125rem,1.05rem + .3vw,1.35rem);--type-body: clamp(.95rem,.91rem + .15vw,1rem);--type-small: clamp(.85rem,.82rem + .12vw,.92rem);--type-label: clamp(.72rem,.70rem + .12vw,.8rem);--type-date: clamp(1.4rem,1.2rem + .72vw,1.75rem);}html{font-size: 100%;color-scheme: light;-webkit-text-size-adjust: 100%;text-size-adjust: 100%;scroll-padding-top: 5.5rem;overflow-x: clip;}body{background: var(--ds-ivory);color: var(--ds-ink);font-family: var(--body);font-size: var(--type-body);line-height: var(--line-body);overflow-x: hidden;}*,*::before,*::after{box-sizing: border-box;}img,svg,video,iframe{max-width: 100%;}button,input,select,textarea{font-family: var(--body);font-size: inherit;}:focus-visible{outline: 2px solid var(--ds-focus);outline-offset: 3px;}.site-header{background: rgba(251,250,244,.97);border-bottom-color: var(--ds-border);}.hero.section-shell{background-color: var(--ds-ivory);border-color: var(--ds-border);background-image: radial-gradient(ellipse at 83% 42%,rgba(214,218,199,.52),transparent 36%),linear-gradient(110deg,#f8f7f0 0%,var(--ds-ivory) 55%,#e9ecdf 100%);}.hero.section-shell::before{background: linear-gradient(90deg,rgba(243,242,232,.99) 0%,rgba(243,242,232,.98) 30%,rgba(243,242,232,.94) 43%,rgba(243,242,232,.82) 52%,rgba(243,242,232,.56) 60%,rgba(243,242,232,.28) 67%,rgba(243,242,232,.06) 74%,rgba(243,242,232,0) 80%);}.hero.section-shell[data-subject-side="left"]::before{background: linear-gradient(270deg,rgba(243,242,232,.99) 0%,rgba(243,242,232,.98) 30%,rgba(243,242,232,.94) 43%,rgba(243,242,232,.82) 52%,rgba(243,242,232,.56) 60%,rgba(243,242,232,.28) 67%,rgba(243,242,232,.06) 74%,rgba(243,242,232,0) 80%);}.hero.section-shell.has-hero-image{}.countdown-section{background: var(--ds-sage);border-color: var(--ds-border);}.schedule-section{background: var(--ds-ivory);}.story-section{background: var(--ds-sage-pale);}.gallery-section{background: var(--ds-ivory);}.gallery-frame{border-color: var(--ds-border);background: linear-gradient(145deg,rgba(251,250,244,.98),rgba(238,240,230,.96));box-shadow: 0 14px 36px rgba(65,70,62,.055);}.rsvp-form-section{background: var(--ds-sage);}.form-card,.thankyou-card,.wish-form{background: rgba(251,250,244,.97);border-color: var(--ds-border);box-shadow: 0 8px 28px rgba(65,70,62,.06);}.guestbook-section{background: var(--ds-ivory);border-color: var(--ds-border);}.wish-card,.status-pill,.count-card,.event-card{border-color: var(--ds-border);}.event-card{background: rgba(251,250,244,.94);box-shadow: 0 6px 19px rgba(65,70,62,.035);}.event-card.location-option.is-selected{border-color: #8c9b7c;background: #e9ede2;box-shadow: 0 0 0 2px rgba(88,100,77,.1);}.primary-button,.accent-button{background: var(--ds-olive);border-color: var(--ds-olive);color: #fffdf7;}.primary-button:hover,.accent-button:hover{background: var(--ds-olive-hover);border-color: var(--ds-olive-hover);}.brand-heart,.divider-heart,.hero h1 .ampersand,.story-gallery-hint span,.wish-heart,.map-pin,.main-nav .nav-cta span{color: var(--ds-olive);}.main-nav .nav-cta{border-color: var(--ds-border);}.main-nav .nav-cta:hover{background: var(--ds-sage-pale);border-color: #a8b09a;}.main-nav a.active::after{background: var(--ds-olive);}.main-nav a:hover,.main-nav a.active{color: var(--ds-olive);}.lang-toggle{color: var(--ds-muted);background: rgba(251,250,244,.92);border-color: var(--ds-border);}.lang-toggle .lang-opt.active{color: var(--ds-olive);background: rgba(140,149,123,.18);}.toggle-pill{border-color: var(--ds-olive);}.toggle-pill i{background: #8c957b;}.toggle-pill.active{background: var(--ds-olive);border-color: var(--ds-olive);}.status-pill i,.realtime-note span{background: var(--ds-olive);}.site-footer{background: var(--ds-olive);color: var(--ds-paper-soft);padding-bottom: max(2.5rem,env(safe-area-inset-bottom));}.site-footer .brand{color: var(--ds-paper-soft);}.site-footer p{color: rgba(245,244,236,.86);}body,.form-card label,.wish-form label,.event-card p,.map-copy p,.story-copy p,.guestbook-heading p,.wish-card p,.form-disclaimer{font-family: var(--body);color: var(--ds-ink);}h2,.story-copy h2,.schedule-section>h2,.gallery-heading h2,.countdown-content h2,.section-heading-centered h2,.guestbook-heading h2,.rsvp-cta h2{margin-top: 0;color: var(--ds-ink);font-family: var(--serif);font-size: var(--type-heading);font-weight: 500;line-height: 1.18;letter-spacing: 0;text-wrap: balance;overflow-wrap: break-word;}.hero .intro,.story-copy p:not(.section-kicker),.event-card p,.map-copy p,.section-heading-centered>p:not(.section-kicker),.guestbook-heading>div>p:not(.section-kicker),.wish-card p,.rsvp-cta p:not(.section-kicker){color: var(--ds-muted);font-family: var(--body);font-size: var(--type-body);line-height: var(--line-body);}.subtle-copy,.placeholder-note,.gallery-footer-note,.form-card label small,.wish-actions .char-count,.guestbook-heading p,.section-heading-centered p:last-child{font-size: var(--type-small);line-height: 1.55;color: var(--ds-muted);}.section-kicker,.hero .eyebrow,.hero-family-label,.map-selected-kicker{color: var(--ds-olive);font-family: var(--body);font-size: var(--type-label);font-weight: 500;line-height: 1.45;letter-spacing: .05em;text-transform: uppercase;}.hero.section-shell{min-height: clamp(31rem,39vw,39rem);padding-top: clamp(2.25rem,4vw,3.75rem);padding-bottom: clamp(2rem,3.5vw,3.25rem);}.hero .hero-copy{min-width: 0;padding-block: .5rem;}.hero .eyebrow{margin-bottom: .7rem;}.hero h1.couple-names{display: flex;flex-wrap: nowrap;align-items: baseline;justify-content: center;gap: clamp(.2rem,1.1vw,.85rem);width: 100%;max-width: 100%;min-width: 0;margin: .4rem auto 0;padding-inline: 4px;white-space: nowrap;}.hero h1.couple-names>.couple-name{display: block;flex: 0 1 auto;width: auto;min-width: 0;max-width: none;color: var(--ds-olive);font-family: var(--serif);font-size: var(--type-display);font-style: italic;font-weight: 600;letter-spacing: -.025em;line-height: 1.06;text-transform: none;font-variant-caps: normal;white-space: nowrap;}.hero h1.couple-names>.couple-name:first-child{text-align: right;}.hero h1.couple-names>.couple-name:last-child{text-align: left;}.hero h1.couple-names>.ampersand{flex: 0 0 auto;align-self: baseline;margin: 0;padding: 0;color: var(--ds-olive);font: 500 clamp(.8rem,.95vw,1.1rem)/1 var(--serif);text-align: center;white-space: nowrap;}.hero .intro{max-width: 38rem;margin: 1.1rem auto .8rem;color: var(--ds-muted);font-size: var(--type-body);line-height: 1.75;text-wrap: pretty;}.hero .hero-date{max-width: 100%;margin: 0;color: var(--ds-ink);font-family: var(--serif);font-size: var(--type-date);font-weight: 500;line-height: 1.4;letter-spacing: .01em;font-variant-numeric: lining-nums tabular-nums;font-feature-settings: "lnum" 1,"tnum" 1;text-wrap: balance;}.hero-family-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));align-items: start;gap: clamp(.75rem,1.8vw,1.5rem);width: 100%;max-width: 47rem;margin: .9rem auto 0;text-align: center;}.hero-family-item{min-width: 0;padding: .1rem .4rem .2rem;border: 0;border-radius: 0;background: transparent;box-shadow: none;}.hero-family-label{margin: 0 0 .25rem;color: #697958;font-size: var(--type-label);letter-spacing: .04em;}.hero-family-parents{margin: 0;color: var(--ds-ink);font-family: var(--body);font-size: var(--type-small);line-height: 1.5;overflow-wrap: anywhere;}.hero-family-address{margin: .15rem 0 0;color: var(--ds-muted);font-family: var(--body);font-size: var(--type-small);line-height: 1.5;overflow-wrap: anywhere;}.hero .text-link{margin-top: .65rem;font-size: var(--type-small);}.hero-venue-details{display: none;}.hero .hero-image-placeholder{color: var(--ds-olive);opacity: .82;}.hero .hero-image-placeholder strong{color: var(--ds-olive);font-family: var(--body);font-size: var(--type-label);letter-spacing: .04em;}.hero .hero-image-placeholder small{max-width: 15rem;border-color: var(--ds-border);background: rgba(251,250,244,.72);color: var(--ds-muted);font-size: var(--type-small);}.hero .hero-image-caption{color: #7c8970;font-family: var(--script);font-size: clamp(1.25rem,1.2rem + .6vw,1.8rem);}.countdown-section{min-height: 0;padding-block: clamp(2rem,4vw,3.25rem);}.countdown-wrap{width: min(100%,58rem);padding-inline: clamp(.25rem,2vw,2rem);}.countdown-grid{display: grid;grid-template-columns: repeat(4,minmax(0,1fr));gap: clamp(.4rem,1.3vw,.9rem);width: min(100%,34rem);margin: 1.25rem auto .35rem;}.count-card{width: auto;min-width: 0;height: clamp(4rem,7vw,5rem);padding: .35rem .2rem;border-color: var(--ds-border);background: rgba(251,250,244,.96);border-radius: .65rem;}.count-card strong{color: var(--ds-ink);font-family: var(--serif);font-size: clamp(1.4rem,2vw,1.85rem);font-variant-numeric: lining-nums tabular-nums;font-feature-settings: "lnum" 1,"tnum" 1;}.count-card span{color: var(--ds-muted);font-size: var(--type-small);}.placeholder-note{font-size: var(--type-small);}.event-grid{gap: clamp(.65rem,1.3vw,1.1rem);}.event-card{min-width: 0;padding: clamp(1rem,2vw,1.6rem);border-radius: .8rem;}.event-card h3,.map-copy h3{color: var(--ds-ink);font-family: var(--serif);font-size: var(--type-body);font-weight: 500;line-height: 1.35;}.event-card p{overflow-wrap: anywhere;}.map-row{min-width: 0;}.map-placeholder{min-width: 0;overflow: hidden;border-color: var(--ds-border);}.map-placeholder iframe{width: 100%;max-width: 100%;}.map-copy{min-width: 0;}.map-copy p{overflow-wrap: anywhere;}.story-section{position: relative;isolation: isolate;padding: clamp(2.25rem,5vw,4rem);gap: clamp(1.5rem,4vw,3.75rem);border-color: var(--ds-border);}.story-copy{min-width: 0;}.story-copy h2{margin-bottom: .9rem;}.story-copy p:not(.section-kicker){font-size: var(--type-body);line-height: var(--line-body);}.story-visual{min-width: 0;}.story-gallery-hint{max-width: calc(100% - 1rem);white-space: normal;text-align: center;background: rgba(251,250,244,.96);border-color: var(--ds-border);color: var(--ds-olive);}.story-photo-composition:focus-visible{outline-color: var(--ds-focus);}.gallery-section[hidden]{display: none;}.gallery-section{padding-block: clamp(2.5rem,5vw,4.75rem);}.gallery-frame{position: relative;isolation: isolate;overflow: hidden;width: 100%;min-width: 0;padding: clamp(1rem,3vw,2.75rem);border: 1px solid var(--ds-border);border-radius: clamp(.8rem,1.6vw,1.25rem);background: linear-gradient(145deg,var(--ds-paper),var(--ds-sage-pale));box-shadow: 0 14px 36px rgba(65,70,62,.055);}.gallery-heading{position: relative;z-index: 2;gap: 1rem;margin-bottom: clamp(1rem,2.4vw,1.8rem);}.gallery-heading>div{min-width: 0;}.gallery-heading p{margin: .25rem 0 0;}.gallery-count{color: var(--ds-muted);font-size: var(--type-small);white-space: nowrap;}.gallery-grid{display: grid;position: relative;z-index: 1;grid-template-columns: repeat(4,minmax(0,1fr));grid-auto-rows: clamp(4rem,6.2vw,6.2rem);grid-auto-flow: dense;gap: clamp(.4rem,1vw,.8rem);align-items: stretch;}.gallery-photo{position: relative;width: auto;height: auto;min-width: 0;min-height: 0;margin: 0;padding: .65rem;border-radius: .6rem;transform: none;box-shadow: none;}.gallery-photo:hover{transform: translateY(-2px);}.gallery-photo::after{inset: .35rem;border-radius: .4rem;}.gallery-photo .photo-icon{font-size: clamp(1.35rem,2vw,2rem);}.gallery-photo strong{font-size: var(--type-label);}.gallery-photo small{font-size: var(--type-small);}.gallery-item--tall,.gallery-item--portrait,.gallery-item--tall-small{grid-column: span 1;grid-row: span 3;}.gallery-item--wide,.gallery-item--wide-short{grid-column: span 2;grid-row: span 2;}.gallery-item--square,.gallery-item--medium{grid-column: span 1;grid-row: span 2;}.gallery-photo img{position: absolute;inset: 0;display: block;width: 100%;height: 100%;object-fit: cover;border-radius: inherit;}.gallery-floral{z-index: 0;right: -2rem;bottom: -3rem;width: clamp(9rem,20vw,18rem);opacity: .2;}.gallery-footer-note{position: relative;z-index: 1;margin: 1.2rem 0 0;text-align: center;color: var(--ds-muted);font: italic var(--type-small)/1.6 var(--serif);}.form-card .attend-fieldset .radio-line{display: flex;align-items: flex-start;justify-content: flex-start;gap: .55rem;width: 100%;margin: .45rem 0;text-align: left;}.form-card .attend-fieldset .radio-line input[type="radio"]{appearance: auto;accent-color: var(--ds-olive,var(--ds-olive));display: inline-block;width: 1rem;min-width: 1rem;max-width: 1rem;height: 1rem;flex: 0 0 1rem;margin: .15em 0 0;padding: 0;}.form-card .attend-fieldset .radio-line>span{display: block;flex: 1 1 auto;min-width: 0;text-align: left;overflow-wrap: normal;}.rsvp-form-section{padding-block: clamp(2.25rem,4.5vw,4.5rem);}.section-heading-centered{margin-bottom: clamp(1.2rem,2vw,1.75rem);}.section-heading-centered>p:last-child{font-size: var(--type-body);color: var(--ds-muted);}.rsvp-layout{grid-template-columns: minmax(0,1.5fr) minmax(14rem,.7fr);gap: clamp(.8rem,2vw,1.6rem);}.form-card{min-width: 0;padding: clamp(1rem,2.5vw,2rem);border-radius: .9rem;}.form-card label,.wish-form>label{font-size: var(--type-small);line-height: 1.5;}.form-card label small{font-size: var(--type-small);}.form-card input:not([type=radio]),.form-card textarea,.form-card select,.wish-form input,.wish-form textarea{min-width: 0;max-width: 100%;width: 100%;border-color: var(--ds-border);background: var(--ds-surface-white);color: var(--ds-ink);font-size: var(--type-body);}.form-card input:focus,.form-card textarea:focus,.form-card select:focus,.wish-form input:focus,.wish-form textarea:focus{border-color: #889579;box-shadow: 0 0 0 3px rgba(88,100,77,.1);}.thankyou-card{border-radius: .9rem;}.guestbook-section{padding: clamp(1.4rem,4vw,3.75rem);margin-bottom: clamp(2.5rem,5vw,4rem);border-radius: clamp(.8rem,1.6vw,1.25rem);}.guestbook-heading{gap: 1rem;margin-bottom: 1.25rem;}.guestbook-heading>div{min-width: 0;}.guestbook-heading p{font-size: var(--type-body);}.guestbook-layout{grid-template-columns: minmax(16rem,.8fr) minmax(0,1.5fr);gap: clamp(1rem,2.8vw,2.6rem);}.guestbook-form-col{min-width: 0;}.wish-form{min-width: 0;padding: clamp(.9rem,2vw,1.5rem);border-radius: .85rem;gap: 1rem;}.wish-form label{font-size: var(--type-small);}.wish-form textarea{min-height: 6rem;}.wish-actions{flex-wrap: wrap;gap: .65rem;}.wish-actions .char-count{font-size: var(--type-small);}.wish-card{min-width: 0;border-radius: .7rem;}.botanical-frame-overlay{position: absolute;z-index: 0;pointer-events: none;user-select: none;object-fit: contain;opacity: .13;width: clamp(13rem,28vw,25rem);}.botanical-frame-story{right: -5rem;bottom: -4rem;transform: rotate(-3deg);}.botanical-frame-guestbook{right: -5rem;top: -4.5rem;transform: scaleX(-1);opacity: .1;}.floral{pointer-events: none;user-select: none;}.floral-hero-tl{width: clamp(7rem,15vw,13rem);left: -.7rem;top: -.9rem;opacity: .72;}.floral-hero-br{width: clamp(8rem,18vw,15rem);right: -1.5rem;bottom: -2rem;opacity: .7;transform: rotate(12deg);}.floral-count-left{height: clamp(4.5rem,8vw,7.5rem);left: -.5rem;opacity: .5;}.floral-count-right{height: clamp(4.5rem,8vw,7.5rem);right: -.5rem;opacity: .5;}.floral-schedule{width: clamp(8rem,15vw,14rem);right: -2.5rem;top: -3rem;opacity: .18;}.story-floral{width: clamp(6rem,11vw,10rem);opacity: .5;}.story-floral-petal{width: clamp(3.5rem,6vw,5.5rem);opacity: .35;}.thankyou-floral{opacity: .24;}.thankyou-floral-petal{opacity: .2;}.guestbook-floral{width: clamp(7rem,12vw,11rem);opacity: .22;}.guestbook-floral-bl,.guestbook-floral-br{width: clamp(6rem,10vw,9rem);opacity: .18;}.floral-footer-center{width: clamp(5rem,9vw,8rem);opacity: .7;}.thankyou-card[hidden],.hero-family-item[hidden],.hero-family-parents[hidden],.hero-family-address[hidden],.event-card[hidden],.event-time[hidden],.event-venue[hidden],.event-address[hidden],.event-address-part[hidden],.map-location-address-part[hidden]{display: none;}.rsvp-form-section .section-heading-centered .rsvp-invitation-message{max-width: 58rem;margin: 0 auto;color: #294638;font-size: clamp(1.12rem,1.55vw,1.38rem);font-weight: 700;line-height: 1.55;letter-spacing: 0;text-wrap: balance;}.rsvp-form-section .section-heading-centered .rsvp-welcome-message{margin: .45rem auto 0;color: #294638;font-size: clamp(1.12rem,1.55vw,1.38rem);font-weight: 700;line-height: 1.55;letter-spacing: 0;text-align: center;text-wrap: balance;}@media (max-width: 550px){.rsvp-form-section .section-heading-centered .rsvp-invitation-message{max-width: 36rem;font-size: clamp(1.04rem,4.15vw,1.18rem);line-height: 1.55;}.rsvp-form-section .section-heading-centered .rsvp-welcome-message{margin-top: .35rem;color: #294638;font-size: clamp(1.04rem,4.15vw,1.18rem);font-weight: 700;line-height: 1.55;}}:root{--page-gutter: clamp(1rem,3.5vw,2.5rem);--section-space: clamp(2.5rem,6vw,5.75rem);--type-display: clamp(2.45rem,4.2vw,3.35rem);--type-heading: clamp(1.85rem,1.5rem + 1.08vw,2.65rem);--type-subheading: clamp(1.12rem,1.02rem + .35vw,1.35rem);--type-body: clamp(.96rem,.92rem + .15vw,1.03rem);--type-small: clamp(.86rem,.83rem + .12vw,.94rem);--type-label: clamp(.72rem,.70rem + .12vw,.82rem);--type-date: clamp(1.35rem,1.15rem + .7vw,1.8rem);}*,*::before,*::after{box-sizing: border-box;}html{width: 100%;max-width: 100%;overflow-x: clip;scroll-padding-top: 6rem;-webkit-text-size-adjust: 100%;text-size-adjust: 100%;}body{width: 100%;min-width: 0;margin: 0;overflow-x: clip;}img,svg,video,iframe{max-width: 100%;}button,input,select,textarea{min-width: 0;max-width: 100%;}section[id]{scroll-margin-top: 6rem;}.section-shell{width: min(1320px,calc(100% - var(--page-gutter) - var(--page-gutter)));margin-inline: auto;}.section-pad{padding-block: var(--section-space);}.hero.section-shell{width: min(1450px,calc(100% - var(--page-gutter) - var(--page-gutter)));min-height: clamp(36rem,47vw,44.5rem);}.brand > span:not(.brand-heart){font-family: "Great Vibes",cursive;font-size: 1em;font-weight: 400;font-style: normal;line-height: 1.05;letter-spacing: 0;}.hero h1.couple-names{display: flex;flex-flow: row nowrap;align-items: baseline;justify-content: center;gap: clamp(.28rem,1.05vw,.75rem);width: 100%;max-width: 100%;min-width: 0;margin: .4rem auto 0;padding-inline: .15rem;overflow: visible;text-align: center;white-space: nowrap;}.hero h1.couple-names > .couple-name{display: block;flex: 0 1 auto;width: auto;min-width: 0;max-width: none;font-family: "Great Vibes",cursive;font-size: var(--type-display);font-style: normal;font-weight: 400;line-height: 1.22;letter-spacing: 0;word-spacing: normal;font-kerning: normal;font-variant-caps: normal;font-feature-settings: "kern" 1,"liga" 1,"calt" 1;text-transform: none;white-space: nowrap;overflow-wrap: normal;}.hero h1.couple-names > .ampersand{flex: 0 0 auto;margin-inline: .12em;font-family: "Cormorant Garamond",Georgia,serif;font-size: clamp(.9rem,1.15vw,1.18rem);font-style: italic;font-weight: 500;line-height: 1;}.hero .intro{max-width: 42rem;margin-inline: auto;text-wrap: pretty;}.hero .hero-date-block{display: flex;flex-direction: column;align-items: center;justify-content: center;gap: clamp(.08rem,.28vw,.22rem);width: 100%;max-width: 100%;margin: 0 auto;text-align: center;color: var(--ds-ink-deep);}.hero .hero-date-block p{max-width: 100%;margin: 0;font-family: var(--body,"Lora",Georgia,serif);text-wrap: balance;overflow-wrap: normal;}.hero .hero-date-time,.hero .hero-date-lunar{color: #647365;font-size: clamp(.96rem,1.05vw,1.08rem);font-weight: 400;line-height: 1.5;letter-spacing: 0;}.hero .hero-date-main{margin-block: .06rem;color: var(--ds-ink-deep);font-size: clamp(1.3rem,1.55vw,1.48rem);font-weight: 700;line-height: 1.32;letter-spacing: 0;}.hero-family-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(.45rem,1vw,.9rem);width: 100%;max-width: 760px;min-width: 0;margin: 1rem auto 0;}.hero-family-item{min-width: 0;}.hero .hero-family-grid .hero-family-label{margin-bottom: .3rem;font-size: clamp(.78rem,.9vw,.86rem);line-height: 1.45;}.hero .hero-family-grid .hero-family-parents{font-size: clamp(.94rem,1vw,1.02rem);line-height: 1.48;overflow-wrap: anywhere;}.hero .hero-family-grid .hero-family-address{margin-top: .28rem;font-size: clamp(.85rem,.92vw,.94rem);line-height: 1.52;overflow-wrap: anywhere;}.floral,.botanical-frame-overlay,.floral-footer-center{height: auto;max-width: none;pointer-events: none;user-select: none;}.floral{object-fit: contain;}.hero .floral-hero-tl{width: clamp(8.5rem,14vw,13.5rem);left: clamp(-2rem,-2.3vw,-.7rem);top: clamp(-1.2rem,-1vw,-.2rem);opacity: .78;}.hero .floral-hero-br{width: clamp(9.5rem,17vw,15rem);right: clamp(-2.3rem,-2.4vw,-.6rem);bottom: clamp(-2.4rem,-2.6vw,-.8rem);opacity: .78;transform: rotate(7deg);}.hero[data-subject-side="left"] .floral-hero-tl{left: auto;right: clamp(-2rem,-2.3vw,-.7rem);transform: scaleX(-1);}.hero[data-subject-side="left"] .floral-hero-br{right: auto;left: clamp(-2.3rem,-2.4vw,-.6rem);transform: scaleX(-1) rotate(7deg);}.countdown-wrap .floral-count-left,.countdown-wrap .floral-count-right{width: auto;height: clamp(4.5rem,8vw,7.5rem);}.schedule-section > .floral-schedule{width: clamp(7.5rem,15vw,14rem);right: clamp(-2.5rem,-3vw,-1rem);top: clamp(-3rem,-4vw,-1.2rem);opacity: .2;}.gallery-section .gallery-floral{width: clamp(7rem,18vw,17.5rem);right: clamp(-3.75rem,-4vw,-1.25rem);bottom: clamp(-3rem,-4vw,-1rem);opacity: .2;}.rsvp-cta .cta-floral-left,.rsvp-cta .cta-floral-right{width: clamp(6rem,13vw,12.5rem);height: auto;}.rsvp-hero .rsvp-hero-left,.rsvp-hero .rsvp-hero-right{width: clamp(8.5rem,18vw,16rem);height: auto;opacity: .65;}.thankyou-card .thankyou-floral{width: clamp(7.5rem,13vw,12rem);opacity: .24;}.thankyou-card .thankyou-floral-petal{width: clamp(3.5rem,6vw,6rem);opacity: .2;}.guestbook-section .guestbook-floral{width: clamp(8rem,15vw,14rem);opacity: .22;}.guestbook-section .guestbook-floral-bl,.guestbook-section .guestbook-floral-br{width: clamp(6rem,11vw,10rem);opacity: .18;}.floral-footer-center{width: clamp(5.5rem,10vw,9rem);opacity: .7;}.botanical-frame-story{display: none;}.botanical-frame-guestbook{opacity: .08;}.event-grid,.gallery-grid,.countdown-grid,.rsvp-layout,.guestbook-layout,.form-grid,.two-col,.form-inline-row,.map-row{min-width: 0;}.event-card,.form-card,.wish-form,.wish-card,.map-copy,.hero-family-item{min-width: 0;}.event-card p,.map-copy p,.hero-family-parents,.hero-family-address,.wish-card p,.guestbook-heading p{overflow-wrap: anywhere;}.event-icon svg{display: block;width: 1.4rem;height: 1.4rem;fill: none;stroke: currentColor;stroke-width: 1.5;stroke-linecap: round;stroke-linejoin: round;}.map-placeholder iframe{width: 100%;max-width: 100%;height: 100%;min-height: inherit;border: 0;}.map-placeholder-state{width: 100%;box-sizing: border-box;}.map-placeholder-state[hidden]{display: none;}.event-address-parts,.map-location-address-parts{display: block;min-width: 0;margin-top: .3rem;line-height: 1.55;}.event-address-parts{text-align: center;}.map-location-address-parts{text-align: left;line-height: 1.65;}.event-address-part,.map-copy .map-location-address-part{display: inline;margin: 0;color: var(--ds-sage-soft-text);font-size: clamp(.9rem,.97vw,.99rem);line-height: inherit;overflow-wrap: normal;word-break: normal;}.map-copy .map-location-address-part{color: var(--ds-muted,var(--ds-muted));font-size: .9rem;}.event-address-part + .event-address-part::before,.map-copy .map-location-address-part + .map-location-address-part::before{content: " - ";white-space: pre;color: var(--ds-olive,var(--ds-olive));}.event-address-label,.map-location-address-label{color: var(--ds-olive,var(--ds-olive));font-weight: 600;}.event-address-parts[hidden],.map-location-address-parts[hidden],.event-venue[hidden],.event-address[hidden],.map-location-venue[hidden],.map-location-address[hidden]{display: none;}.schedule-section .location-options .event-card .event-icon{width: clamp(2.65rem,3vw,3rem);height: clamp(2.65rem,3vw,3rem);margin-bottom: .7rem;}.schedule-section .location-options .event-card .event-icon svg{width: 1.55rem;height: 1.55rem;}.schedule-section .location-options .event-card h3{margin: 0 0 .7rem;font-size: clamp(1.12rem,1.28vw,1.25rem);font-weight: 600;line-height: 1.38;}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{margin-block: .38rem;font-size: clamp(.98rem,1.02vw,1.06rem);line-height: 1.55;}.schedule-section .location-options .event-card .event-address-parts{margin-top: .45rem;line-height: 1.65;}.schedule-section .location-options .event-card .event-address-part{font-size: clamp(.9rem,.97vw,.99rem);}.story-section{position: relative;isolation: isolate;min-width: 0;overflow: clip;}.story-copy{min-width: 0;}.story-visual.story-photo-composition{position: relative;display: block;width: 100%;min-width: 0;min-height: clamp(24rem,30vw,26rem);padding: .4rem 0 4.1rem;box-sizing: border-box;isolation: isolate;cursor: pointer;}.story-visual.story-photo-composition > .photo-story{position: relative;z-index: 1;display: flex;width: min(67%,22rem);max-width: 72%;height: clamp(14rem,20vw,18rem);margin: .15rem auto 0;transform: rotate(-2.5deg);}.story-visual.story-photo-composition > .photo-story-small{position: absolute;z-index: 3;right: clamp(.7rem,4%,1.25rem);bottom: 4.05rem;width: clamp(7rem,29%,9rem);height: clamp(8.5rem,15vw,10.5rem);transform: rotate(6deg);}.story-visual.story-photo-composition > .story-gallery-hint{position: absolute;z-index: 5;left: 50%;bottom: .35rem;display: block;width: max-content;max-width: calc(100% - 1rem);margin: 0;padding: .45rem .8rem;transform: translateX(-50%);box-sizing: border-box;line-height: 1.4;text-align: center;white-space: normal;overflow-wrap: anywhere;border: 1px solid var(--ds-border,var(--ds-border));border-radius: 999px;background: rgba(251,250,244,.97);box-shadow: 0 3px 12px rgba(65,70,62,.04);}.story-visual.story-photo-composition > .story-floral{position: absolute;left: clamp(.5rem,6%,2rem);bottom: 2.4rem;width: clamp(6rem,11vw,8rem);height: auto;opacity: .46;z-index: 2;pointer-events: none;}.story-visual.story-photo-composition > .story-floral-petal{position: absolute;right: clamp(.9rem,5%,1.8rem);top: .15rem;width: clamp(3rem,6vw,4.5rem);height: auto;opacity: .25;z-index: 0;pointer-events: none;transform: rotate(22deg);}.story-visual.story-photo-composition .photo-icon{display: block;width: 1.65rem;height: 1.45rem;color: var(--ds-sage-muted);opacity: .78;font-size: 0;line-height: 0;}.story-visual.story-photo-composition .photo-icon svg{display: block;width: 100%;height: 100%;fill: none;stroke: currentColor;stroke-width: 1.5;stroke-linecap: round;stroke-linejoin: round;}.gallery-section[hidden]{display: none;}.gallery-grid{grid-auto-flow: dense;align-items: stretch;}.gallery-photo{min-width: 0;min-height: 0;}.gallery-photo img{position: absolute;inset: 0;display: block;width: 100%;height: 100%;object-fit: cover;border-radius: inherit;}.form-card input[type="radio"],.form-card .attend-fieldset .radio-line input[type="radio"]{appearance: auto;accent-color: var(--ds-olive,var(--ds-olive));display: inline-block;width: 1rem;min-width: 1rem;max-width: 1rem;height: 1rem;flex: 0 0 1rem;margin: .15em 0 0;padding: 0;}.form-card .attend-fieldset .radio-line{display: flex;align-items: flex-start;justify-content: flex-start;gap: .55rem;width: 100%;margin: .45rem 0;text-align: left;}.form-card .attend-fieldset .radio-line > span{display: block;flex: 1 1 auto;min-width: 0;text-align: left;overflow-wrap: normal;}@media (min-width: 1500px){.hero.section-shell{min-height: 44.5rem;}.hero .hero-image-placeholder{min-height: 22rem;}}@media (max-width: 1099px) and (min-width: 850px){:root{--page-gutter: clamp(1rem,2.2vw,1.5rem);--section-space: clamp(2.5rem,5vw,4rem);--type-display: clamp(2.2rem,3.2vw,2.75rem);--type-heading: clamp(1.8rem,2.5vw,2.2rem);--type-date: clamp(1.35rem,2.2vw,1.65rem);}.site-header{gap: .75rem;padding-inline: clamp(1rem,2vw,1.5rem);}.brand{font-size: clamp(1.9rem,2.8vw,2.25rem);}.main-nav{gap: clamp(.45rem,.9vw,.8rem);}.main-nav a{font-size: var(--type-label);}.main-nav .nav-cta{padding-inline: .6rem;}.header-actions{gap: .5rem;}.hero.section-shell{padding: clamp(2.2rem,4vw,3.2rem);min-height: clamp(35rem,52vw,39rem);}.hero h1.couple-names{gap: clamp(.25rem,.8vw,.5rem);}.hero h1.couple-names > .couple-name{font-size: clamp(2.1rem,3.35vw,2.75rem);}.hero-family-grid{gap: .6rem;}.hero .hero-family-grid .hero-family-item{padding-inline: .15rem;}.event-grid{gap: clamp(.65rem,1.3vw,1rem);}.schedule-section .location-options .event-card{padding: clamp(.9rem,1.6vw,1.2rem);}.schedule-section .location-options .event-card h3{font-size: clamp(1.05rem,1.5vw,1.15rem);}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: .95rem;}.schedule-section .location-options .event-card .event-address-part{font-size: .88rem;}.story-section{gap: clamp(1.5rem,3.3vw,2.5rem);}.gallery-grid{grid-template-columns: repeat(3,minmax(0,1fr));}.rsvp-layout{grid-template-columns: minmax(0,1.25fr) minmax(13rem,.75fr);}.guestbook-layout{grid-template-columns: minmax(14rem,.8fr) minmax(0,1.4fr);}}@media (max-width: 849px) and (min-width: 651px){:root{--page-gutter: clamp(.8rem,2vw,1.25rem);--section-space: clamp(2.2rem,5vw,3.8rem);--type-display: clamp(1.8rem,3.5vw,2.45rem);--type-heading: clamp(1.65rem,2.6vw,2.1rem);--type-body: clamp(.96rem,1.5vw,1.02rem);--type-small: clamp(.84rem,1.3vw,.92rem);--type-label: clamp(.7rem,1.1vw,.78rem);--type-date: clamp(1.12rem,2.7vw,1.45rem);}html{scroll-padding-top: 5.5rem;}section[id]{scroll-margin-top: 5.5rem;}.site-header{display: grid;grid-template-columns: minmax(0,1fr) auto;grid-template-rows: auto auto;align-items: center;gap: .35rem .65rem;min-height: 0;padding: .55rem clamp(.75rem,2vw,1rem) .3rem;}.brand{grid-column: 1;grid-row: 1;min-width: 0;font-size: clamp(1.8rem,4.5vw,2.2rem);}.header-actions{grid-column: 2;grid-row: 1;display: flex;align-items: center;gap: .4rem;margin-left: auto;}.lang-toggle{min-width: 44px;min-height: 44px;justify-content: center;padding: .24rem .45rem;font-size: .72rem;}.main-nav{grid-column: 1 / -1;grid-row: 2;display: flex;flex-wrap: nowrap;justify-content: flex-start;align-items: center;gap: clamp(.8rem,2vw,1.15rem);width: 100%;min-width: 0;padding: .1rem .2rem .3rem;overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;scrollbar-width: none;mask-image: linear-gradient(to right,var(--ds-black) 94%,transparent 100%);font-size: .76rem;}.main-nav::-webkit-scrollbar{display: none;}.main-nav a{flex: 0 0 auto;display: inline-flex;align-items: center;min-height: 44px;padding: .25rem 0;font-size: .76rem;white-space: nowrap;}.main-nav .nav-cta{padding: .22rem .55rem;}.section-shell{width: calc(100% - var(--page-gutter) - var(--page-gutter));}.section-pad{padding-block: var(--section-space);}.hero.section-shell{width: calc(100% - var(--page-gutter) - var(--page-gutter));min-height: clamp(32rem,66vw,39rem);padding: clamp(1.7rem,3.5vw,2.4rem) clamp(1rem,2.6vw,1.6rem);grid-template-columns: minmax(0,72%) minmax(0,28%);}.hero .hero-copy{max-width: 100%;min-width: 0;padding: .25rem .5rem .25rem 0;}.hero h1.couple-names{gap: clamp(.18rem,.65vw,.42rem);padding-inline: 0;}.hero h1.couple-names > .couple-name{font-size: clamp(1.7rem,3.5vw,2.35rem);}.hero h1.couple-names > .ampersand{font-size: clamp(.72rem,1.7vw,.95rem);margin-inline: .04em;}.hero .intro{font-size: clamp(.82rem,1.7vw,.94rem);line-height: 1.55;margin-block: .6rem .45rem;}.hero .divider-heart{margin-block: .55rem .65rem;}.hero .hero-date-time,.hero .hero-date-lunar{font-size: clamp(.86rem,1.75vw,.97rem);}.hero .hero-date-main{font-size: clamp(1.02rem,2.45vw,1.25rem);letter-spacing: 0;}.hero-family-grid{gap: clamp(.25rem,.8vw,.55rem);margin-top: .75rem;}.hero .hero-family-grid .hero-family-label{font-size: clamp(.67rem,1.3vw,.76rem);letter-spacing: .05em;}.hero .hero-family-grid .hero-family-parents{font-size: clamp(.78rem,1.6vw,.9rem);line-height: 1.42;}.hero .hero-family-grid .hero-family-address{font-size: clamp(.72rem,1.4vw,.84rem);line-height: 1.42;}.hero .hero-image-placeholder{min-height: 13rem;padding: .5rem .25rem;gap: .45rem;}.hero .hero-image-placeholder strong{font-size: .65rem;}.hero .hero-image-placeholder small{max-width: 100%;padding: .25rem .4rem;font-size: .72rem;}.hero .hero-image-caption{font-size: clamp(.9rem,1.8vw,1.08rem);margin-top: .4rem;}.hero .floral-hero-tl{width: clamp(5.7rem,12vw,7.5rem);left: -.35rem;top: -.35rem;opacity: .55;}.hero .floral-hero-br{width: clamp(6.2rem,13vw,8.3rem);right: -.45rem;bottom: -.65rem;opacity: .5;}.countdown-section{min-height: 0;padding: 2rem .85rem 1.8rem;}.countdown-wrap{padding-inline: .4rem;}.countdown-wrap .floral-count-left,.countdown-wrap .floral-count-right{display: none;}.countdown-grid{grid-template-columns: repeat(4,minmax(0,1fr));gap: clamp(.35rem,1.1vw,.65rem);width: min(100%,38rem);}.count-card{width: auto;min-width: 0;height: clamp(3.8rem,7vw,4.6rem);padding: .35rem .15rem;}.count-card strong{font-size: clamp(1.2rem,3.1vw,1.55rem);}.count-card span{font-size: clamp(.68rem,1.4vw,.8rem);}.event-grid{grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(.65rem,1.5vw,1rem);}.event-card{min-height: 0;padding: clamp(.9rem,1.8vw,1.2rem);}.event-card:nth-child(3):last-child{grid-column: 1 / -1;justify-self: center;width: min(100%,29rem);}.schedule-section .location-options .event-card h3{font-size: clamp(1rem,1.8vw,1.12rem);margin-bottom: .55rem;}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: clamp(.86rem,1.55vw,.95rem);line-height: 1.5;}.schedule-section .location-options .event-card .event-address-part{font-size: clamp(.78rem,1.45vw,.88rem);}.map-row{grid-template-columns: minmax(0,1fr);gap: 1.1rem;margin-top: 1.3rem;}.map-placeholder{min-height: clamp(13rem,32vw,18rem);}.map-placeholder iframe{min-height: 100%;}.story-section{display: flex;flex-direction: column;align-items: stretch;gap: 1.25rem;padding: clamp(1.6rem,4vw,2.5rem);}.story-copy,.story-visual{width: 100%;max-width: 100%;min-width: 0;}.story-copy h2{font-size: var(--type-heading);}.story-copy p:not(.section-kicker){font-size: var(--type-body);line-height: 1.7;}.story-visual.story-photo-composition{min-height: clamp(22rem,46vw,24rem);padding-bottom: 3.9rem;}.story-visual.story-photo-composition > .photo-story{width: min(66%,22rem);height: clamp(13rem,26vw,15.5rem);}.story-visual.story-photo-composition > .photo-story-small{right: clamp(.6rem,4%,1rem);bottom: 3.8rem;width: clamp(6.5rem,23vw,8rem);height: clamp(8rem,18vw,9.5rem);}.story-visual.story-photo-composition > .story-gallery-hint{bottom: .3rem;max-width: calc(100% - .8rem);font-size: .86rem;}.story-visual.story-photo-composition > .story-floral{width: clamp(4.8rem,10vw,6.6rem);bottom: 2.15rem;left: .6rem;}.story-visual.story-photo-composition > .story-floral-petal{width: clamp(2.8rem,6vw,3.7rem);right: .8rem;}.gallery-section{padding-block: clamp(2rem,4vw,3rem);}.gallery-frame{padding: clamp(.8rem,2vw,1.25rem);}.gallery-heading{align-items: flex-start;gap: .75rem;}.gallery-heading h2{font-size: var(--type-heading);}.gallery-grid{grid-template-columns: repeat(3,minmax(0,1fr));grid-auto-rows: clamp(4rem,8vw,5.5rem);gap: .55rem;}.gallery-item--wide,.gallery-item--wide-short{grid-column: span 2;grid-row: span 2;}.gallery-item--tall,.gallery-item--tall-small,.gallery-item--portrait{grid-column: span 1;grid-row: span 3;}.gallery-item--square,.gallery-item--medium{grid-column: span 1;grid-row: span 2;}.rsvp-form-section{padding-block: clamp(2rem,4vw,3.2rem);}.rsvp-layout,.guestbook-layout{grid-template-columns: minmax(0,1fr);gap: 1.2rem;}.form-card{padding: clamp(1rem,2.5vw,1.6rem);}.guestbook-section{padding: clamp(1.2rem,3vw,2rem);margin-bottom: 2.5rem;}.guestbook-layout{margin-top: .85rem;}.guestbook-form-col{position: static;max-width: 100%;}.wishes-grid,.wishes-list{max-height: 28rem;}.wish-actions{flex-wrap: wrap;}.site-footer{padding-bottom: max(2rem,env(safe-area-inset-bottom));}}@media (max-width: 550px){:root{--page-gutter: .55rem;--section-space: clamp(2rem,7vw,2.8rem);--type-display: clamp(1.12rem,5.4vw,1.5rem);--type-heading: clamp(1.48rem,5.3vw,1.85rem);--type-subheading: 1.08rem;--type-body: clamp(.96rem,3.8vw,1rem);--type-small: clamp(.82rem,3.4vw,.9rem);--type-label: clamp(.68rem,2.8vw,.75rem);--type-date: clamp(1.08rem,4.4vw,1.35rem);}html{scroll-padding-top: 5.15rem;}section[id]{scroll-margin-top: 5.15rem;}.site-header{display: grid;grid-template-columns: minmax(0,1fr) auto;grid-template-rows: auto auto;align-items: center;gap: .3rem .45rem;min-height: 0;padding: .42rem clamp(.5rem,2.3vw,.8rem) .22rem;}.brand{grid-column: 1;grid-row: 1;min-width: 0;font-size: clamp(1.55rem,6.8vw,2.1rem);}.header-actions{grid-column: 2;grid-row: 1;display: flex;align-items: center;gap: .3rem;margin-left: auto;}.lang-toggle{min-width: 44px;min-height: 44px;justify-content: center;padding: .2rem .38rem;font-size: .67rem;}.music-toggle{min-width: 44px;min-height: 44px;justify-content: center;font-size: 1rem;}.main-nav{grid-column: 1 / -1;grid-row: 2;display: flex;flex-wrap: nowrap;justify-content: flex-start;align-items: center;gap: clamp(.72rem,3.2vw,1rem);width: 100%;min-width: 0;padding: .08rem .12rem .25rem;overflow-x: auto;overflow-y: hidden;-webkit-overflow-scrolling: touch;scrollbar-width: none;mask-image: linear-gradient(to right,var(--ds-black) 94%,transparent 100%);font-size: .7rem;}.main-nav::-webkit-scrollbar{display: none;}.main-nav a{flex: 0 0 auto;display: inline-flex;align-items: center;min-height: 44px;padding: .22rem 0;font-size: .7rem;white-space: nowrap;}.main-nav .nav-cta{padding: .2rem .45rem;}.section-shell,.hero.section-shell{width: calc(100% - .85rem);}.section-pad{padding-block: clamp(1.9rem,7vw,2.7rem);}.hero.section-shell{display: block;min-height: 0;padding: clamp(2rem,7.5vw,2.75rem) clamp(.5rem,2.5vw,.8rem) 1.35rem;background-position: var(--hero-bg-position-mobile,center center);}.hero.section-shell::before,.hero.section-shell[data-subject-side="left"]::before{background: linear-gradient(180deg,rgba(243,242,232,.985) 0%,rgba(243,242,232,.95) 56%,rgba(243,242,232,.8) 100%);}.hero .hero-copy,.hero[data-subject-side="left"] .hero-copy{width: 100%;max-width: 100%;min-width: 0;margin: 0 auto;padding: 0;text-align: center;}.hero .eyebrow{margin-bottom: .45rem;font-size: var(--type-label);letter-spacing: .05em;}.hero h1.couple-names{gap: clamp(.22rem,.95vw,.38rem);margin-top: .28rem;padding-inline: 0;align-items: baseline;}.hero h1.couple-names > .couple-name{flex: 0 1 auto;min-width: 0;font-size: clamp(1.12rem,5.4vw,1.5rem);line-height: 1.25;letter-spacing: 0;word-spacing: normal;}.hero h1.couple-names > .ampersand{flex: 0 0 auto;font-size: clamp(.72rem,3vw,.88rem);margin-inline: .045em;line-height: 1;}.hero .intro{max-width: 100%;margin: .55rem auto .45rem;font-size: clamp(.79rem,3.25vw,.88rem);line-height: 1.52;}.hero .divider-heart{margin: .55rem auto .7rem;}.hero .hero-date-block{gap: .09rem;padding-inline: .1rem;}.hero .hero-date-time,.hero .hero-date-lunar{font-size: clamp(.84rem,3.35vw,.96rem);line-height: 1.43;}.hero .hero-date-main{font-size: clamp(1rem,3.8vw,1.22rem);line-height: 1.3;letter-spacing: 0;}.hero-family-grid{grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(.25rem,1.3vw,.5rem);margin-top: .65rem;}.hero-family-item{padding-inline: .08rem;}.hero .hero-family-grid .hero-family-label{font-size: clamp(.68rem,2.8vw,.78rem);line-height: 1.4;margin-bottom: .2rem;letter-spacing: .05em;}.hero .hero-family-grid .hero-family-parents{font-size: clamp(.82rem,3.4vw,.94rem);line-height: 1.42;}.hero .hero-family-grid .hero-family-address{font-size: clamp(.76rem,3.1vw,.86rem);line-height: 1.42;margin-top: .2rem;}.hero .text-link{margin-top: .45rem;font-size: var(--type-small);}.hero .hero-image-placeholder{position: relative;inset: auto;width: min(100%,18rem);min-height: 0;margin: 1.15rem auto 0;padding: .28rem;gap: .3rem;background: transparent;}.hero .hero-image-placeholder strong{font-size: .68rem;}.hero .hero-image-placeholder small{max-width: 100%;font-size: var(--type-small);overflow-wrap: anywhere;}.hero .hero-image-caption{margin-top: .3rem;font-size: clamp(.95rem,3.8vw,1.12rem);}.hero.has-hero-image .hero-image-placeholder{display: none;}.hero .floral-hero-tl{width: clamp(4.4rem,21vw,6.2rem);left: -.25rem;top: -.25rem;opacity: .5;}.hero .floral-hero-br{width: clamp(4.9rem,24vw,6.9rem);right: -.35rem;bottom: -.5rem;opacity: .45;}.hero[data-subject-side="left"] .floral-hero-tl{left: auto;right: -.25rem;}.hero[data-subject-side="left"] .floral-hero-br{right: auto;left: -.35rem;}.countdown-section{min-height: 0;padding: 1.55rem .55rem 1.4rem;}.countdown-wrap{width: 100%;padding-inline: .1rem;}.countdown-wrap .floral-count-left,.countdown-wrap .floral-count-right{display: none;}.countdown-grid{grid-template-columns: repeat(4,minmax(0,1fr));gap: clamp(.2rem,1.15vw,.4rem);width: 100%;margin-top: .9rem;}.count-card{width: auto;min-width: 0;height: clamp(3.8rem,16vw,4.2rem);padding: .25rem .08rem;}.count-card strong{font-size: clamp(1.05rem,4.5vw,1.32rem);}.count-card span{font-size: clamp(.61rem,2.55vw,.73rem);}.placeholder-note{font-size: clamp(.78rem,3.15vw,.87rem);}.schedule-section > h2{margin-bottom: 1.3rem;}.event-grid{grid-template-columns: minmax(0,1fr);gap: .8rem;}.event-card,.event-card.location-option{width: 100%;min-height: 0;padding: .95rem .85rem;}.schedule-section .location-options .event-card .event-icon{width: 2.45rem;height: 2.45rem;margin-bottom: .5rem;}.schedule-section .location-options .event-card .event-icon svg{width: 1.35rem;height: 1.35rem;}.schedule-section .location-options .event-card h3{font-size: clamp(1rem,3.75vw,1.12rem);line-height: 1.35;margin-bottom: .5rem;}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: clamp(.87rem,3.3vw,.95rem);line-height: 1.48;}.schedule-section .location-options .event-card .event-address-parts{margin-top: .32rem;line-height: 1.5;}.schedule-section .location-options .event-card .event-address-part{font-size: clamp(.78rem,2.95vw,.86rem);}.map-row{grid-template-columns: minmax(0,1fr);gap: .9rem;margin-top: 1.1rem;}.map-placeholder{min-height: clamp(12rem,52vw,16rem);padding: .8rem;}.map-placeholder-state{padding: 1rem .75rem;gap: .65rem;flex-direction: column;}.map-placeholder iframe{min-height: 12rem;}.map-copy{padding: .25rem .1rem;}.map-copy h3{font-size: 1.12rem;}.map-copy p{font-size: .9rem;line-height: 1.55;}.map-copy .map-location-address-part{font-size: .82rem;}.story-section{display: flex;flex-direction: column;align-items: stretch;gap: 1rem;padding: clamp(1.2rem,4vw,1.8rem);}.story-copy,.story-visual{width: 100%;max-width: 100%;min-width: 0;}.story-copy h2{font-size: var(--type-heading);margin-bottom: .7rem;}.story-copy p:not(.section-kicker){font-size: var(--type-body);line-height: 1.62;}.story-copy .subtle-copy,.subtle-copy{font-size: var(--type-small);}.story-visual.story-photo-composition{min-height: 22rem;padding: .2rem 0 3.9rem;}.story-visual.story-photo-composition > .photo-story{width: min(70%,19rem);height: clamp(13rem,56vw,14.1rem);margin-top: .15rem;}.story-visual.story-photo-composition > .photo-story-small{right: clamp(.55rem,3.5vw,.8rem);bottom: 3.85rem;width: clamp(6.25rem,30%,7.25rem);height: clamp(7.75rem,34vw,8.5rem);}.story-visual.story-photo-composition > .story-gallery-hint{bottom: .2rem;max-width: calc(100% - .5rem);padding: .4rem .6rem;font-size: clamp(.75rem,3.2vw,.875rem);}.story-visual.story-photo-composition > .story-floral{width: clamp(4.6rem,12vw,5.6rem);left: .35rem;bottom: 2.15rem;}.story-visual.story-photo-composition > .story-floral-petal{width: clamp(2.7rem,7vw,3.4rem);right: .45rem;top: .15rem;}.gallery-section{padding-block: 1.9rem;}.gallery-frame{padding: .7rem;}.gallery-heading{align-items: flex-start;gap: .45rem;margin-bottom: .85rem;}.gallery-heading h2{font-size: var(--type-heading);}.gallery-count{font-size: .78rem;}.gallery-grid{grid-template-columns: repeat(2,minmax(0,1fr));grid-auto-rows: clamp(4rem,17vw,5.8rem);gap: .4rem;}.gallery-item--wide,.gallery-item--wide-short{grid-column: span 2;grid-row: span 2;}.gallery-item--tall,.gallery-item--tall-small,.gallery-item--portrait{grid-column: span 1;grid-row: span 3;}.gallery-item--square,.gallery-item--medium{grid-column: span 1;grid-row: span 2;}.gallery-photo{padding: .28rem;}.gallery-photo strong{font-size: var(--type-label);}.gallery-photo small{font-size: var(--type-small);overflow-wrap: anywhere;}.gallery-floral{width: clamp(6rem,20vw,8rem);right: -1.5rem;bottom: -1.5rem;opacity: .12;}.rsvp-hero{min-height: 0;padding: 2.25rem .8rem 1.8rem;}.rsvp-hero h1{font-size: clamp(2.65rem,12vw,4rem);}.rsvp-hero > p:not(.section-kicker){font-size: .95rem;line-height: 1.55;}.rsvp-hero .rsvp-intro{max-width: 32rem;font-size: .82rem;}.rsvp-hero .rsvp-hero-left,.rsvp-hero .rsvp-hero-right{width: clamp(5.5rem,22vw,8rem);opacity: .45;}.rsvp-form-section{padding-block: 2rem;}.section-heading-centered{margin-bottom: 1.15rem;}.section-heading-centered > p:last-child{font-size: var(--type-small);}.rsvp-layout,.guestbook-layout{grid-template-columns: minmax(0,1fr);gap: .9rem;}.form-grid.two-col,.two-col,.form-inline-row{grid-template-columns: minmax(0,1fr);gap: .8rem;}.form-card{min-width: 0;padding: .9rem;border-radius: .75rem;}.form-card label,.wish-form > label{font-size: var(--type-small);line-height: 1.48;}.form-card input:not([type="radio"]),.form-card textarea,.form-card select,.wish-form input,.wish-form textarea{font-size: 1rem;padding: .7rem .75rem;}.form-card .attend-fieldset{min-width: 0;}.form-card .attend-fieldset .radio-line{gap: .5rem;align-items: flex-start;}.form-card .attend-fieldset .radio-line > span{font-size: var(--type-small);line-height: 1.42;}.guest-count-label{min-width: 0;}.guest-count-label select{width: 100%;}.thankyou-card{min-height: 15rem;padding: 1.6rem 1rem;}.guestbook-section{width: calc(100% - .85rem);padding: 1.2rem .8rem;margin-bottom: 2.2rem;border-radius: .85rem;}.guestbook-heading{align-items: flex-start;flex-direction: column;gap: .45rem;}.guestbook-heading h2{font-size: var(--type-heading);}.guestbook-heading p{font-size: var(--type-small);}.status-pill{white-space: normal;font-size: .75rem;}.guestbook-form-col{position: static;max-width: 100%;}.wish-form{padding: .85rem;margin-bottom: 0;gap: .8rem;}.wish-form textarea{min-height: 6.5rem;}.wish-actions{align-items: stretch;flex-direction: column;gap: .7rem;}.wish-actions .char-count{text-align: right;}.wish-actions .accent-button{width: 100%;justify-content: center;}.wishes-grid,.wishes-list{grid-template-columns: minmax(0,1fr);max-height: none;overflow-y: visible;padding-right: 0;}.wish-card{padding: .9rem;}.guestbook-floral-bl,.guestbook-floral-br{display: none;}.site-footer{padding: 1.35rem .7rem max(2rem,env(safe-area-inset-bottom));}.site-footer p{font-size: 1.05rem;}.toast{right: .65rem;left: .65rem;bottom: max(.7rem,env(safe-area-inset-bottom));max-width: none;padding: .75rem .9rem;font-size: .85rem;}}@media (max-width: 650px) and (min-width: 551px){.hero.section-shell{display: block;min-height: 0;padding: clamp(1.8rem,4.5vw,2.2rem) clamp(.75rem,2.5vw,1.1rem) 1.2rem;}.hero .hero-copy{width: 100%;max-width: 100%;padding: 0;}.hero .hero-image-placeholder{width: min(100%,17rem);min-height: 0;margin: .9rem auto 0;padding: .35rem;}.hero .hero-image-caption{font-size: 1rem;margin-top: .3rem;}.hero .floral-hero-tl{width: 6rem;}.hero .floral-hero-br{width: 6.7rem;}}@media (max-width: 350px){:root{--page-gutter: .35rem;--section-space: 1.9rem;--type-display: 1.1rem;--type-heading: 1.42rem;--type-body: .92rem;--type-small: .79rem;--type-label: .65rem;--type-date: 1rem;}.main-nav{gap: .68rem;}.main-nav a{font-size: .65rem;}.section-shell,.hero.section-shell{width: calc(100% - .6rem);}.hero.section-shell{padding-inline: .35rem;}.hero h1.couple-names{gap: .15rem;padding-inline: 0;}.hero h1.couple-names > .couple-name{font-size: 1.04rem;line-height: 1.3;letter-spacing: 0;word-spacing: normal;}.hero h1.couple-names > .ampersand{font-size: .66rem;margin-inline: .02em;}.hero .intro{font-size: .76rem;line-height: 1.48;}.hero .hero-date-time,.hero .hero-date-lunar{font-size: .82rem;}.hero .hero-date-main{font-size: .96rem;line-height: 1.28;}.hero-family-grid{column-gap: .2rem;}.hero .hero-family-grid .hero-family-label{font-size: .64rem;letter-spacing: .02em;}.hero .hero-family-grid .hero-family-parents{font-size: .79rem;line-height: 1.36;}.hero .hero-family-grid .hero-family-address{font-size: .72rem;line-height: 1.36;}.countdown-grid{gap: .16rem;}.count-card{height: 3.6rem;padding-inline: .04rem;}.count-card strong{font-size: .98rem;}.count-card span{font-size: .58rem;}.schedule-section .location-options .event-card{padding: .85rem .65rem;}.schedule-section .location-options .event-card h3{font-size: .98rem;}.schedule-section .location-options .event-card .event-time,.schedule-section .location-options .event-card .event-venue,.schedule-section .location-options .event-card .event-address{font-size: .84rem;}.schedule-section .location-options .event-card .event-address-part{font-size: .72rem;}.story-visual.story-photo-composition{min-height: 20.5rem;padding-bottom: 3.7rem;}.story-visual.story-photo-composition > .photo-story{width: min(69%,17rem);height: 12.5rem;}.story-visual.story-photo-composition > .photo-story-small{bottom: 3.7rem;width: 6rem;height: 7.25rem;}.story-visual.story-photo-composition > .story-gallery-hint{font-size: .7rem;padding: .33rem .45rem;}.gallery-frame{padding: .5rem;}.gallery-grid{grid-auto-rows: 3.8rem;gap: .3rem;}.form-card,.wish-form{padding: .75rem;}.guestbook-section{padding: .9rem .6rem;}}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto;}*,*::before,*::after{animation-duration: .01ms !important;transition-duration: .01ms !important;}}.form-honeypot{position: absolute;left: -10000px;top: auto;width: 1px;height: 1px;overflow: hidden;clip-path: inset(50%);white-space: nowrap;}.story-visual.story-photo-composition > img.photo-story,.story-visual.story-photo-composition > img.photo-story-small{display: block;object-fit: cover;border-radius: .6rem;box-shadow: 0 12px 30px rgba(65,70,62,.12);}.hero-family-item[hidden],.hero-family-parents[hidden],.hero-family-address[hidden],.event-card[hidden],.event-time[hidden],.event-venue[hidden],.event-address[hidden],.event-address-parts[hidden],.event-address-part[hidden],.map-location-address-parts[hidden],.map-location-address-part[hidden],.map-location-time[hidden],.map-location-venue[hidden],.map-location-address[hidden],.map-row[hidden],.map-display[hidden]{display: none;}@media (max-width: 550px){.hero .hero-rsvp-cta{width: min(100%,18rem);min-height: 44px;margin-top: .8rem;}}.page-layout{display: grid;grid-template-columns: minmax(0,1fr);grid-template-areas: "hero" "countdown" "schedule" "story" "rsvp" "guestbook";align-content: start;row-gap: 0;min-width: 0;}.page-layout > .layout-block{min-width: 0;outline: 0;}.layout-block--hero{grid-area: hero;}.layout-block--countdown{grid-area: countdown;}.layout-block--schedule{grid-area: schedule;}.layout-block--story{grid-area: story;}.layout-block--rsvp{grid-area: rsvp;}.layout-block--guestbook{grid-area: guestbook;}.hero.section-shell.has-hero-image{background-image: none;background-color: var(--ds-ivory);border: 0;border-radius: 0;isolation: isolate;}.hero.section-shell.has-hero-image::before{z-index: 1;pointer-events: none;}.hero-media-block{position: absolute;inset: 0;z-index: 0;overflow: hidden;min-width: 0;min-height: 0;margin: 0;padding: 0;border: 0;background: transparent;pointer-events: none;}.hero-media-picture,.hero-media-image{display: block;width: 100%;height: 100%;}.hero-media-image{object-fit: cover;object-position: var(--hero-photo-position,center center);}.hero.section-shell.has-hero-image .hero-copy{z-index: 2;}.hero.section-shell.has-hero-image .hero-image-placeholder{display: none;}@media (min-width: 551px) and (max-width: 1099px){.page-layout{grid-template-areas: "hero" "countdown" "schedule" "story" "rsvp" "guestbook";}.hero.section-shell.has-hero-image{min-height: clamp(34rem,64vw,42rem);}.hero-media-image{object-position: 54% center;}}@media (max-width: 550px){.page-layout{grid-template-areas: "hero" "countdown" "schedule" "story" "rsvp" "guestbook";}.hero.section-shell.has-hero-image{display: grid;grid-template-columns: minmax(0,1fr);grid-template-rows: auto;align-items: start;min-height: 0;padding: .6rem 0 1.25rem;overflow: hidden;background: var(--ds-paper-warm);}.hero.section-shell.has-hero-image::before{content: none;display: none;}.hero.section-shell.has-hero-image .hero-media-block{display: none;}.hero.section-shell.has-hero-image .hero-copy{grid-column: 1;grid-row: 1;width: 100%;max-width: none;margin: 0;padding: 1rem 1rem .25rem;background: var(--ds-paper-warm);z-index: 2;}.hero.section-shell.has-hero-image .floral-hero-tl,.hero.section-shell.has-hero-image .floral-hero-br{display: none;}.hero.section-shell.has-hero-image .hero-family-grid{margin-top: .8rem;}.hero.section-shell.has-hero-image .text-link{margin-top: .75rem;}}@media (max-width: 550px){.hero.section-shell.has-hero-image .hero-copy h1.couple-names{display: grid;grid-template-columns: minmax(0,1fr);grid-template-rows: auto auto auto;align-items: center;justify-items: center;gap: 0;width: 100%;margin: .35rem auto .3rem;padding: 0;white-space: normal;text-align: center;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .couple-name{width: 100%;max-width: 100%;min-width: 0;justify-self: center;text-align: center;white-space: normal;overflow-wrap: normal;word-break: normal;font-size: clamp(1.8rem,8vw,2.5rem);line-height: 1.12;letter-spacing: -.015em;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .couple-name:first-child{grid-column: 1;grid-row: 1;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .ampersand{grid-column: 1;grid-row: 2;align-self: center;justify-self: center;margin: .05rem 0 .08rem;font-size: clamp(.78rem,3.2vw,.98rem);line-height: 1;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .couple-name:last-child{grid-column: 1;grid-row: 3;}}@media (max-width: 550px){.hero.section-shell.has-hero-image .hero-copy > .eyebrow{margin-bottom: .55rem;color: #5c715f;font-size: clamp(.82rem,3.5vw,.92rem);font-weight: 600;line-height: 1.5;letter-spacing: .05em;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .couple-name{color: #214638;font-size: clamp(2.45rem,11.2vw,3.65rem);font-weight: 500;line-height: 1.2;letter-spacing: -.018em;text-shadow: .35px 0 currentColor,-.35px 0 currentColor,0 2px 0 rgba(255,255,255,.62),0 5px 13px rgba(35,68,54,.12);}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .ampersand{color: #9a6f4b;font-size: clamp(.86rem,3.5vw,1rem);font-weight: 600;margin-block: .08rem .12rem;}.hero.section-shell.has-hero-image .hero-copy > .intro{max-width: 34rem;margin: .72rem auto .58rem;color: #435d50;font-size: clamp(.98rem,4vw,1.08rem);font-weight: 500;line-height: 1.62;letter-spacing: 0;}.hero.section-shell.has-hero-image .hero-copy .divider-heart{margin: .68rem auto .82rem;gap: .8rem;}.hero.section-shell.has-hero-image .hero-copy .divider-heart span{width: clamp(2.3rem,9vw,3rem);background: #c9ad92;}.hero.section-shell.has-hero-image .hero-copy .divider-heart b{color: #806044;font-size: .9rem;}.hero.section-shell.has-hero-image .hero-copy .hero-date-time{color: #4c6556;font-size: clamp(.98rem,3.9vw,1.06rem);font-weight: 500;line-height: 1.5;}.hero.section-shell.has-hero-image .hero-copy .hero-date-main{color: #243f34;font-size: clamp(1.08rem,4.3vw,1.25rem);font-weight: 700;line-height: 1.36;letter-spacing: 0;}.hero.section-shell.has-hero-image .hero-copy .hero-date-lunar{color: #4f6557;font-size: clamp(1rem,4vw,1.08rem);font-weight: 500;line-height: 1.5;}.hero.section-shell.has-hero-image .hero-copy > .intro{display: none;}.hero.section-shell.has-hero-image .hero-copy .hero-family-grid{margin-top: .82rem;column-gap: clamp(.35rem,1.8vw,.65rem);}.hero.section-shell.has-hero-image .hero-copy .hero-family-label{color: #89684d;font-size: clamp(.76rem,3.1vw,.84rem);font-weight: 700;letter-spacing: .05em;}.hero.section-shell.has-hero-image .hero-copy .hero-family-parents{color: #2e4a3d;font-size: clamp(.9rem,3.7vw,.98rem);font-weight: 600;line-height: 1.46;}.hero.section-shell.has-hero-image .hero-copy .hero-family-address{color: #5f7064;font-size: clamp(.82rem,3.3vw,.9rem);line-height: 1.45;}}@media (min-width: 1100px){.hero.section-shell.has-hero-image .hero-copy h1.couple-names{display: grid;grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);align-items: baseline;justify-items: stretch;column-gap: clamp(.35rem,.85vw,.9rem);width: 100%;max-width: 100%;margin-inline: auto;padding-inline: 0;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .couple-name:first-child{grid-column: 1;justify-self: stretch;text-align: right;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .ampersand{grid-column: 2;justify-self: center;align-self: baseline;margin: 0;text-align: center;}.hero.section-shell.has-hero-image .hero-copy h1.couple-names > .couple-name:last-child{grid-column: 3;justify-self: stretch;text-align: left;}}.hero .hero-copy > .hero-invitation-line{display: block;max-width: 100%;margin: 0 auto clamp(.45rem,.9vw,.75rem);font-family: var(--body,"Lora",Georgia,serif);text-align: center;text-wrap: balance;}@media (max-width: 550px){.hero .hero-copy > .hero-invitation-line{margin-bottom: .55rem;}}body.profile-groom-simple .schedule-section .location-options{width: min(100%,34rem);margin-inline: auto;grid-template-columns: minmax(0,1fr);justify-content: center;}body.profile-groom-simple .schedule-section .location-options > .event-card{width: 100%;min-height: 210px;}body.profile-groom-simple .story-photo-composition{cursor: default;}@media (max-width: 550px){body.profile-groom-simple .hero.section-shell.has-hero-image .hero-media-block{display: none;}}.hero.section-shell.has-hero-image .hero-copy > .hero-date-main.hero-invitation-line{display: block;max-width: 100%;margin: .24rem auto .42rem;text-align: center;text-wrap: balance;}.hero.section-shell.has-hero-image .hero-copy > .hero-date-main.hero-recipient-line{font-size: clamp(1.4rem,1.67vw,1.6rem);margin-block: .28rem .5rem;}@media (min-width: 551px) and (max-width: 1099px){.hero.section-shell.has-hero-image .hero-copy > .hero-date-main.hero-recipient-line{font-size: clamp(1.1rem,2.65vw,1.35rem);}}@media (max-width: 550px){.hero.section-shell.has-hero-image .hero-copy > .hero-date-main.hero-invitation-line{margin-block: .26rem .42rem;}.hero.section-shell.has-hero-image .hero-copy > .hero-date-main.hero-recipient-line{font-size: clamp(1.17rem,4.65vw,1.35rem);margin-block: .28rem .52rem;}}@media (max-width: 350px){.hero.section-shell.has-hero-image .hero-copy > .hero-date-main.hero-recipient-line{font-size: 1.04rem;}}.hero.section-shell.has-hero-image .hero-copy .hero-date-time,.hero.section-shell.has-hero-image .hero-copy .hero-date-lunar{color: #294638;font-weight: 700;}.schedule-section .location-options .event-card .event-lunar-date{margin: .42rem 0 .12rem;color: #294638;font-size: clamp(.93rem,1.02vw,1.04rem);font-weight: 700;line-height: 1.5;letter-spacing: 0;}.event-lunar-date[hidden]{display: none;}@media (max-width: 1099px){.schedule-section .location-options .event-card .event-lunar-date{font-size: clamp(.9rem,1.8vw,1rem);}}@media (max-width: 550px){.hero.section-shell.has-hero-image .hero-copy .hero-date-time,.hero.section-shell.has-hero-image .hero-copy .hero-date-lunar{color: #294638;font-weight: 700;}.schedule-section .location-options .event-card .event-lunar-date{margin-top: .45rem;font-size: .92rem;line-height: 1.5;}}body.profile-groom-simple .schedule-section .location-options .event-card.location-option,body.profile-groom-simple .schedule-section .location-options .event-card.location-option *{font-weight: 700 !important;}body.profile-groom-simple .schedule-section :is(h2,h3,p,span,strong,a,button){font-weight: 700;}body.profile-groom-simple .schedule-section .location-options .event-card h3,body.profile-groom-simple .schedule-section #map-location-title{font-weight: 700;}body.profile-groom-simple .schedule-section .location-options .event-card .event-venue,body.profile-groom-simple .schedule-section .map-location-venue{font-weight: 700;}
