@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,500&family=DM+Sans:wght@400;500;600;700&family=Great+Vibes&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{font-family:Manrope,system-ui,sans-serif;color:#292d2b;background:#f7f6f3}body{background:#f7f6f3}header{background:#fffdfb;border-color:#eeeae4}header>a{font-size:1.55rem;letter-spacing:.12em;color:#303f36;font-weight:800}nav a{text-decoration:none;font-size:.83rem;color:#536357;font-weight:700}nav a:hover{color:#ad7e67}footer{font-size:.8rem}main{max-width:1300px}.biran-hero{max-width:850px;padding:20px 0 8px}.hero-spark{font-size:2.5rem;color:#b39a7c}.biran-hero h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(3.2rem,6vw,5.5rem);font-weight:500;letter-spacing:-.04em;line-height:.98}.biran-hero h1 em{color:#b18b76;font-weight:400}.biran-hero>p:not(.eyebrow){max-width:600px;margin:20px auto;line-height:1.85}.hero-pills span{border-color:#e8e3db;color:#6c706a}.editor-v3{grid-template-columns:1.05fr .95fr;gap:32px}.form-panel{padding:34px;border-radius:16px;box-shadow:0 20px 80px #3a34200a}.editor-topline{display:flex;justify-content:space-between}.editor-step{font-size:.7rem;letter-spacing:.2em;color:#9b9b8d}.form-panel h2,.preview-head h2{font-family:'Cormorant Garamond',serif;font-size:2.4rem;letter-spacing:-.02em;margin:8px 0}.editor-help{color:#86867f;line-height:1.8;margin:-8px 0 24px;font-size:.85rem}.form-section{border-top:1px solid #eeeae5;padding-top:25px;margin-top:8px;display:grid;gap:17px}.form-section-title{display:flex;align-items:center;gap:13px;margin-bottom:2px}.form-section-title>span{font-size:.7rem;border:1px solid #d9d5cc;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:#8a7662}.form-section-title h3{font-family:'Cormorant Garamond',serif;font-size:1.65rem;font-weight:600;margin:0}label{color:#555b55;font-size:.78rem;letter-spacing:.01em}input,select,textarea{border:1px solid #e4e3dd;border-radius:7px;background:#fcfbf9;padding:13px 14px;color:#3c453d}input:focus,select:focus,textarea:focus{outline:2px solid #b6a58d;outline-offset:1px}.advanced{border:1px solid #e9e5df;background:#faf9f6;padding:14px;border-radius:8px}.advanced summary{font-size:.79rem;cursor:pointer;font-weight:700;display:flex;justify-content:space-between}.advanced[open]{display:grid;gap:12px}.advanced[open] summary{margin-bottom:10px}.theme-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.theme-choice{background:transparent!important;border:1px solid transparent!important;border-radius:8px!important;min-height:unset;padding:5px!important;color:#3f443f!important;box-shadow:none!important;display:block;text-align:center}.theme-choice.selected{border-color:#b18b76!important;background:#f7f1e9!important}.theme-choice:hover{transform:translateY(-3px)}.theme-mini{height:120px;width:100%;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;background:#faf3e9;color:#78665a;border:1px solid #e7e1d9}.theme-mini:before,.theme-mini:after{content:'';position:absolute;pointer-events:none}.theme-mini i{position:absolute;inset:10px;border:1px solid currentColor;opacity:.35}.theme-mini b{font-size:1.5rem;z-index:1;font-weight:400}.theme-mini em{font-family:'Cormorant Garamond',serif;font-size:1.15rem;z-index:1}.theme-label{display:block;padding:8px 0 3px;font-size:.72rem}.theme-choice.garden .theme-mini{background:#f7ebe6 url('art/floral.svg') no-repeat left top;background-size:90% auto;color:#955a65}.theme-choice.gold .theme-mini{background:#f8f0db;color:#a47b3d}.theme-choice.gold .theme-mini i{border:3px double}.theme-choice.romantic .theme-mini{background:#fbe4e9 url('art/hearts.svg') center/cover;color:#aa6583}.theme-choice.night .theme-mini{background:#191b30 url('art/stars.svg') center/cover;color:#e8c98c}.theme-choice.botanical .theme-mini{background:#e9eee2 url('art/leaf.svg') left top/cover;color:#41674c}.theme-choice.minimal .theme-mini{background:#f0eee9;color:#333}.theme-choice.henna .theme-mini{background:#651d34 url('art/henna.svg') center/cover;color:#f4d9a3}.theme-choice.baby .theme-mini{background:#e2f0f5 url('art/stars.svg') center/cover;color:#6186a2}.theme-choice.birthday .theme-mini{background:#fff1da url('art/balloons.svg') center/cover;color:#a46a7a}.theme-choice.sunset .theme-mini{background:linear-gradient(#ffdebd,#d79a98,#936a8d);color:#fff}.theme-choice.celebrate .theme-mini{background:#34263d url('art/stars.svg') center/cover;color:#efd1ae}.theme-choice.royal .theme-mini{background:#123d3e;color:#e3c486}.publish-btn{background:#324a3d;border-radius:7px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;letter-spacing:.02em}.publish-btn:hover{background:#22382c}.publish-note{text-align:center}.preview-column{top:20px}.preview-head h2{margin:5px 0 15px}.preview-frame{padding:17px;background:#eae6df;border:1px solid #e4ded5;box-shadow:0 30px 70px #28201a14}.invite{border-radius:0;box-shadow:0 15px 50px #211b1912;min-height:690px;padding:95px 46px;gap:0;isolation:isolate}.invite-inner{gap:17px;z-index:2}.invite h1,.invite h2{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(2.8rem,4.2vw,4.2rem);line-height:1.05;font-weight:500}.invite .small{font-size:.68rem;letter-spacing:.3em}.invite .ornament{font-size:1.5rem}.invite h3{font-family:'Cormorant Garamond',serif;font-size:1.55rem}.invite p{line-height:1.9}.invite .venue{letter-spacing:.1em;text-transform:uppercase;font-size:.82rem}.invite .divider-flower{letter-spacing:.4em}.invite .decor{width:240px;height:240px;background-repeat:no-repeat;background-size:contain;z-index:0;opacity:.92}.invite .decor-top{top:-15px;left:-15px}.invite .decor-bottom{bottom:-15px;right:-15px;transform:rotate(180deg)}
/* Truly different card treatments: layouts, illustration, borders, hierarchy and type. */
.invite.garden{background:#fff8f2;color:#795762}.invite.garden .decor{background-image:url('art/floral.svg');width:330px;height:330px}.invite.garden:after{inset:28px;border:1px solid #d9b9b2;border-radius:210px 210px 0 0}.invite.garden h2,.invite.garden h1{font-family:'Great Vibes',cursive;font-size:clamp(3.2rem,5vw,4.7rem);font-weight:400;line-height:1.2}.invite.garden .ornament{color:#b77c8b}
.invite.gold{background:#fdf8e9;color:#715531}.invite.gold:before{inset:18px;border:7px double #c9a56b;box-shadow:inset 0 0 0 14px #fdf8e9,inset 0 0 0 15px #c9a56b}.invite.gold:after{inset:45px;border:1px solid #c9a56b}.invite.gold .ornament{font-size:3rem}.invite.gold h2,.invite.gold h1{font-family:'Cormorant Garamond',serif;font-weight:600;font-variant:small-caps;letter-spacing:.03em}
.invite.romantic{background:#fce8ee;color:#8e4c67}.invite.romantic .decor{background-image:url('art/hearts.svg');width:310px;height:310px;opacity:.7}.invite.romantic .invite-inner{padding:50px 18px;background:#fff8faab;border-radius:160px 160px 15px 15px}.invite.romantic h2,.invite.romantic h1{font-family:'Great Vibes',cursive;font-size:4.2rem}.invite.romantic .divider-flower{font-size:2rem}
.invite.night{background:#151a30;color:#f4dfb9}.invite.night .decor{background-image:url('art/stars.svg');width:320px;height:320px;opacity:.85}.invite.night:after{inset:26px;border:1px solid #ab956c;border-radius:230px 230px 8px 8px}.invite.night h2,.invite.night h1{text-transform:uppercase;letter-spacing:.05em;font-size:3.2rem}.invite.night .ornament{font-size:3rem}
.invite.botanical{background:#f4f5e9;color:#4d674c}.invite.botanical .decor{background-image:url('art/leaf.svg');width:335px;height:335px}.invite.botanical:after{inset:28px;border:1px solid #8fa78c}.invite.botanical h2,.invite.botanical h1{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:4.3rem}.invite.botanical .small{letter-spacing:.4em}
.invite.minimal{background:#f5f2ec;color:#2d302e;text-align:left;align-items:flex-start;padding:90px 58px}.invite.minimal .invite-inner{align-items:flex-start;text-align:left;gap:24px}.invite.minimal:before{height:13px;top:0;left:0;right:0;background:#303d36}.invite.minimal:after{width:80px;height:2px;bottom:55px;left:58px;background:#303d36}.invite.minimal h2,.invite.minimal h1{font-family:Manrope,sans-serif;font-size:clamp(2.3rem,4vw,3.6rem);font-weight:800;letter-spacing:-.07em}.invite.minimal .divider-flower{display:none}.invite.minimal .ornament{font-size:2.2rem}
.invite.henna{background:#671e33;color:#fbe8be}.invite.henna .decor{background-image:url('art/henna.svg');width:320px;height:320px;opacity:.55}.invite.henna:after{inset:22px;border:4px double #cda663}.invite.henna h2,.invite.henna h1{font-family:'Great Vibes',cursive;font-size:4.3rem}.invite.henna .ornament{font-size:3rem}.invite.henna .small{letter-spacing:.35em}
.invite.baby{background:#eaf5f8;color:#557c91}.invite.baby .decor{background-image:url('art/stars.svg');width:320px;height:320px;opacity:.65}.invite.baby:after{inset:28px;border:2px dashed #abcbd9;border-radius:40px}.invite.baby h2,.invite.baby h1{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:4.4rem}.invite.baby .ornament{font-size:3.5rem}
.invite.birthday{background:#fff3de;color:#805a6a}.invite.birthday .decor{background-image:url('art/balloons.svg');width:270px;height:270px;opacity:.8}.invite.birthday h2,.invite.birthday h1{font-family:Manrope,sans-serif;font-size:clamp(2.2rem,3.8vw,3.5rem);font-weight:800;letter-spacing:-.06em}.invite.birthday .ornament{font-size:3rem}.invite.birthday .invite-inner{padding-top:40px}
.invite.sunset{background:linear-gradient(180deg,#f7d5b4 0%,#e6a5a0 55%,#ad8198 100%);color:#4f344a}.invite.sunset:before{width:260px;height:260px;border-radius:50%;background:#ffe3b7;left:50%;top:7%;transform:translateX(-50%);box-shadow:0 0 90px #fff0cd}.invite.sunset .invite-inner{padding-top:80px}.invite.sunset h2,.invite.sunset h1{font-family:'Great Vibes',cursive;font-size:4.6rem}.invite.sunset .ornament{font-size:3rem}
.invite.celebrate{background:#34243e;color:#ffe4c5}.invite.celebrate .decor{background-image:url('art/stars.svg');width:350px;height:350px}.invite.celebrate h2,.invite.celebrate h1{font-family:Manrope,sans-serif;text-transform:uppercase;font-weight:800;letter-spacing:-.04em;font-size:3.3rem}.invite.celebrate:after{inset:25px;border:1px solid #e5b78c}.invite.celebrate .ornament{font-size:3rem}
.invite.royal{background:#143d3e;color:#efdcaf}.invite.royal:before{inset:18px;border:6px double #c6a46e;border-radius:250px 250px 6px 6px}.invite.royal:after{inset:42px;border:1px solid #c6a46e;border-radius:220px 220px 0 0}.invite.royal h2,.invite.royal h1{font-family:'Cormorant Garamond',serif;text-transform:uppercase;font-weight:600;letter-spacing:.06em}.invite.royal .ornament{font-size:3rem}
/* Published page: structured editorial sections, not a strip of random buttons */
.published-v3{max-width:850px;margin:auto}.published-v3 .invite{max-width:670px;margin:0 auto;min-height:760px}.published-heading{text-align:center;margin:40px auto 24px}.published-heading h2{font-family:'Cormorant Garamond',serif;font-size:2.6rem;margin:0}.published-heading p{color:#8a867e;font-size:.82rem}.event-detail{margin:20px auto;background:#fff;border:1px solid #eae6de;padding:35px 35px 30px;box-shadow:0 10px 30px #2d28120a}.detail-eyebrow{font-size:.69rem;letter-spacing:.2em;color:#9c8870;font-weight:800;text-transform:uppercase;margin:0 0 14px}.event-detail h3{font-family:'Cormorant Garamond',serif;font-size:2.3rem;font-weight:600;margin:0 0 8px;color:#303b33}.event-detail p{line-height:1.8;color:#6c716c}.detail-link{display:inline-flex;align-items:center;gap:10px;color:#3d5949;font-weight:800;font-size:.83rem;text-decoration:none;padding:9px 0;margin-right:20px;border-bottom:1px solid #b2c2b4}.detail-link:hover{color:#9c7a60}.detail-links{display:flex;flex-wrap:wrap;gap:5px 18px;margin-top:15px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.detail-grid .event-detail{margin:0}.published-footer{text-align:center;padding:28px 0;color:#777}.published-footer button{background:transparent;color:#475c4e;border:1px solid #d5dbd4;border-radius:5px;font-size:.82rem;padding:12px 20px}.published-footer .detail-link{margin:0 8px}.published-weather{padding:0!important;margin:0!important;background:transparent!important;border:0!important;text-align:left!important;color:#6c716c!important}.published-v3 .invite{box-shadow:0 25px 80px #2d21141c}.preview-note{line-height:1.8}.weather-preview{border-radius:6px;background:#fdfbf7;color:#777d73}
@media(max-width:900px){.editor-v3{grid-template-columns:1fr}.preview-column{position:static}.preview-frame{max-width:670px;margin:auto}}@media(max-width:600px){.biran-hero h1{font-size:3.3rem}.theme-picker{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.theme-mini{height:98px}.theme-choice{padding:3px!important}.theme-label{font-size:.63rem}.form-panel{padding:20px}.invite{min-height:570px;padding:65px 32px}.invite .decor{width:190px!important;height:190px!important}.invite.garden h2,.invite.garden h1,.invite.henna h2,.invite.henna h1,.invite.sunset h2,.invite.sunset h1{font-size:3.3rem}.invite.minimal{padding:70px 35px}.event-detail{padding:25px}.detail-grid{grid-template-columns:1fr;gap:14px}.published-v3 .invite{min-height:610px}.preview-frame{padding:8px}}@media print{header,footer,.published-heading,.event-detail,.published-footer{display:none!important}.published-v3 .invite{max-width:none;min-height:98vh;box-shadow:none}.published-v3{max-width:none}main{max-width:none}}
/* Remove legacy emoji decorations and theme pseudo-elements from v2. */
.invite .decor:before,.invite .decor:after{content:none!important;display:none!important}
.invite.garden:before,.invite.romantic:before,.invite.botanical:before,.invite.baby:before,.invite.birthday:before,.invite.birthday:after,.invite.celebrate:before,.invite.celebrate:after,.invite.henna:before,.invite.henna:after,.invite.sunset:after,.invite.royal:after,.invite.minimal:after{content:none}
.invite.garden:after{content:''}.invite.gold:before,.invite.gold:after,.invite.night:after,.invite.botanical:after,.invite.minimal:before,.invite.henna:after,.invite.baby:after,.invite.sunset:before,.invite.celebrate:after,.invite.royal:before,.invite.royal:after{content:''}

/* v3.1: unified invitation canvas and theme-aware detail sections */
.theme-picker{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;align-items:start}
.theme-picker .theme-choice{position:relative!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;min-width:0!important;width:100%!important;min-height:0!important;height:auto!important;padding:5px!important;overflow:hidden!important;transform:none;isolation:isolate;box-shadow:none!important}
.theme-picker .theme-choice::before,.theme-picker .theme-choice::after,.theme-picker .theme-choice .theme-mini::before,.theme-picker .theme-choice .theme-mini::after{content:none!important;display:none!important}
.theme-picker .theme-choice .theme-mini{box-sizing:border-box!important;display:flex!important;flex-direction:column!important;justify-content:center!important;align-items:center!important;width:100%!important;max-width:100%!important;height:auto!important;aspect-ratio:3/4!important;min-height:0!important;overflow:hidden!important;position:relative!important;background-position:center!important;background-size:cover!important}
.theme-picker .theme-choice .theme-mini i{position:absolute!important;inset:9%!important;width:auto!important;height:auto!important;border:1px solid currentColor!important;border-radius:0!important;opacity:.38!important;display:block!important;transform:none!important;background:none!important}
.theme-picker .theme-choice .theme-mini b{font-size:clamp(1rem,2vw,1.6rem)!important;line-height:1.2!important;position:relative!important;z-index:1!important;display:block!important;transform:none!important}
.theme-picker .theme-choice .theme-mini em{font-size:clamp(.8rem,1.4vw,1.2rem)!important;line-height:1.2!important;position:relative!important;z-index:1!important;display:block!important;transform:none!important}
.theme-picker .theme-choice .theme-label{display:block!important;line-height:1.3!important;min-height:2.4em!important;overflow-wrap:anywhere!important}
.published-v3{--biran-accent:#8e6470;--biran-ink:#4c3b42;--biran-paper:#fffaf6;--biran-stroke:#e5d7d1;--biran-body:#6d6264;max-width:670px!important;width:100%;margin-inline:auto}
.published-v3 .invite,.published-v3 .event-detail,.published-v3 .published-heading,.published-v3 .published-footer{width:100%;max-width:100%;box-sizing:border-box;margin-left:0;margin-right:0}
.published-v3 .event-detail{background:var(--biran-paper);border:1px solid var(--biran-stroke);border-radius:0;box-shadow:0 8px 24px #2d281208;margin-top:14px;margin-bottom:0;padding:clamp(22px,5vw,38px)}
.published-v3 .detail-eyebrow,.published-v3 .detail-link{color:var(--biran-accent)}
.published-v3 .event-detail h3{color:var(--biran-ink)}
.published-v3 .event-detail p{color:var(--biran-body)}
.published-v3 .detail-link{border-bottom-color:var(--biran-stroke)}
.published-v3.theme-garden{--biran-accent:#985d6d;--biran-ink:#734b57;--biran-paper:#fff9f7;--biran-stroke:#e8d2d5}
.published-v3.theme-gold{--biran-accent:#94713b;--biran-ink:#684d2c;--biran-paper:#fffbef;--biran-stroke:#e2d2ad}
.published-v3.theme-romantic{--biran-accent:#a25379;--biran-ink:#773e60;--biran-paper:#fff6fa;--biran-stroke:#efccdf}
.published-v3.theme-night{--biran-accent:#d3b47c;--biran-ink:#f1dfb8;--biran-paper:#29273a;--biran-stroke:#655773;--biran-body:#e0d8df}
.published-v3.theme-botanical{--biran-accent:#547b5e;--biran-ink:#3e614a;--biran-paper:#f5f8f0;--biran-stroke:#d1dfcb}
.published-v3.theme-minimal{--biran-accent:#62564e;--biran-ink:#2f2b29;--biran-paper:#f7f5f1;--biran-stroke:#d8d2ca}
.published-v3.theme-henna{--biran-accent:#e2bd78;--biran-ink:#ffebc9;--biran-paper:#63263b;--biran-stroke:#b68178;--biran-body:#f1d5d7}
.published-v3.theme-baby{--biran-accent:#628eab;--biran-ink:#4b728d;--biran-paper:#f1f9fc;--biran-stroke:#c9e0eb}
.published-v3.theme-birthday{--biran-accent:#ad7282;--biran-ink:#805b72;--biran-paper:#fff8eb;--biran-stroke:#ecd7c3}
.published-v3.theme-sunset{--biran-accent:#925c78;--biran-ink:#69415c;--biran-paper:#fff3e9;--biran-stroke:#e5c4c0}
.published-v3.theme-celebrate{--biran-accent:#f0c4a5;--biran-ink:#ffe5d5;--biran-paper:#35263d;--biran-stroke:#73546d;--biran-body:#ecd8e1}
.published-v3.theme-royal{--biran-accent:#d4b678;--biran-ink:#f3e1b5;--biran-paper:#153e40;--biran-stroke:#7d8069;--biran-body:#e1d8bc}
.published-v3 .published-weather{color:var(--biran-body)!important}
@media(max-width:600px){.theme-picker{gap:8px!important}.theme-picker .theme-mini{height:auto!important}.published-v3 .event-detail{padding:24px 20px}}
@media print{.published-v3 .event-detail{display:none!important}}

/* BIRAN v4 */
.optional-features{border:1px solid #e8e3da;border-radius:10px;padding:16px;display:grid;gap:12px;background:#fdfbf7}
.feature-check{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.86rem}.feature-check input{width:18px;height:18px;accent-color:#876b74;flex:none}
#contactFields[hidden]{display:none!important}.extra-event-editor{padding:17px;background:#fff;border:1px solid #e7d9d4;border-radius:9px;display:grid;gap:13px;margin-bottom:12px}.extra-head{display:flex;justify-content:space-between;align-items:center}.remove-extra,.add-event{border:1px solid #cbb8b2!important;border-radius:7px!important;background:transparent!important;color:#785b62!important;font-size:.8rem!important;padding:10px 14px!important;cursor:pointer}.add-event{width:100%}.map-status{font-size:.76rem;color:#55745e}
.countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.countdown>div{display:flex;flex-direction:column;align-items:center;padding:15px 4px;border:1px solid var(--biran-stroke);background:color-mix(in srgb,var(--biran-paper) 86%,white);border-radius:6px;color:var(--biran-ink)}.countdown strong{font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(1.5rem,4vw,2.4rem);line-height:1.2}.countdown small{font-size:.68rem;color:var(--biran-accent);margin-top:4px}.extra-date{font-size:1.12rem!important;color:var(--biran-ink)!important}.weather-credit{text-align:right;font-size:.68rem;margin:8px 5px 0}.weather-credit a{color:#92928a;text-decoration:none}.published-v3 .published-footer{padding:30px 0 12px}.published-v3 .published-footer button{border:1px solid var(--biran-stroke);background:var(--biran-paper);color:var(--biran-accent);border-radius:5px}body>footer{display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 15px!important}body>footer a{font-size:.73rem;color:#8e857c;text-decoration:none}body>footer a:hover{text-decoration:underline}
@media(max-width:600px){.countdown{gap:5px}.countdown>div{padding:11px 2px}.countdown small{font-size:.58rem}}
