/* A bespoke wedding canvas. Every rule stays inside the couple example. */
.dream-invitation{--dream-paper:#f8f5ef;--dream-ink:#3e352f;--dream-gold:#967b53;--dream-line:#dcd2c3;--dream-serif:'Cormorant Garamond',Georgia,serif;background:var(--dream-paper);color:var(--dream-ink);font:400 14px/1.8 'DM Sans',Arial,sans-serif;overflow:hidden;width:100%}
.dream-invitation *{box-sizing:border-box}
body.sd-interface .dream-invitation :is(h1,h2,h3,p){margin:0;max-width:none}
body.sd-interface .dream-invitation :is(h1,h2,h3){font-family:var(--dream-serif);font-weight:400;letter-spacing:-.035em;line-height:1.08;color:var(--dream-ink)}
body.sd-interface .dream-invitation h2{font-size:clamp(40px,5vw,64px)}
body.sd-interface .dream-invitation h3{font-size:30px}
body.sd-interface .dream-invitation p{font:400 14px/1.9 'DM Sans',Arial,sans-serif;color:#766a5e}
body.sd-interface .dream-invitation :is(em,i){font-family:inherit;font-style:italic;font-weight:400;color:inherit}
.dream-invitation .dream-eyebrow{font:400 9px/1.8 'DM Sans',Arial,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--dream-gold);display:block;margin-bottom:20px}
.dream-cover{position:relative;height:min(900px,calc(100svh - 105px));min-height:640px;isolation:isolate;background:#55483f;display:flex;align-items:flex-end;justify-content:center;text-align:center}
.dream-cover-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%;z-index:-3;animation:dream-arrive 1.8s ease-out both}
.dream-cover-shade{position:absolute;inset:0;background:linear-gradient(180deg,#241d172e 0%,transparent 23%,#2920180a 36%,#231b17c7 100%);z-index:-2}
.dream-cover-line{position:absolute;inset:22px;border:1px solid #fff9e847;pointer-events:none;z-index:-1}
.dream-cover-top{position:absolute;top:40px;left:48px;right:48px;display:flex;justify-content:space-between;align-items:center;color:#fff7e9}
.dream-cover-top>span:first-child{font:400 25px/1 var(--dream-serif);letter-spacing:.04em}
.dream-cover-top>span:last-child{font-size:8px;letter-spacing:.22em}
.dream-amp{font-style:italic;color:#eed8b4}
.dream-cover-copy{padding:270px 24px 95px;max-width:900px}
body.sd-interface .dream-cover .dream-eyebrow{color:#f6e7d0;font-size:9px;margin-bottom:19px}
body.sd-interface .dream-cover .dream-names{font:400 clamp(76px,9vw,130px)/1 var(--dream-serif);letter-spacing:-.045em;color:#fffaf2;display:flex;align-items:center;justify-content:center;gap:22px;margin:0 0 22px}
.dream-names>span{font-size:.6em;font-style:italic;color:#ead3ad}
body.sd-interface .dream-cover-copy>p:not(.dream-eyebrow){color:#fff6e8;font-size:13px;line-height:1.8;letter-spacing:.02em}
.dream-cover-button{display:inline-flex;justify-content:center;align-items:center;gap:28px;min-height:46px;border:1px solid #f6e6d47d;background:#ead7bb0d;color:#fff8ef;text-decoration:none;padding:10px 25px;margin-top:26px;font-size:11px;letter-spacing:.04em;backdrop-filter:blur(5px)}
.dream-cover-button:hover{background:#f6e7d020}
.dream-cover-date{display:block;margin-top:20px;font-size:9px;letter-spacing:.12em;color:#eadfce}
.dream-scroll{position:absolute;bottom:37px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;color:#f5e7d6;text-decoration:none;font-size:7px;letter-spacing:.22em;min-height:30px}
.dream-scroll>span{font-size:17px}
.dream-section{padding:90px max(7%,24px)}
.dream-intro{text-align:center;max-width:1000px;margin:auto}
.dream-flower{width:90px;height:90px;margin:0 auto 25px;color:#aa8e61}
.dream-flower svg{display:block;width:100%;height:100%}
.dream-intro h2{margin-bottom:30px!important}
body.sd-interface .dream-intro>p:not(.dream-eyebrow){max-width:51ch;margin:0 auto 18px}
.dream-signature{font:italic 40px/1.3 var(--dream-serif);display:block;margin:25px 0;color:#92744f}
body.sd-interface .dream-invitation .dream-demo-small{font-size:10px;line-height:1.7;color:#8e8376}
.dream-count-section{text-align:center;padding:38px 24px 45px;border-block:1px solid var(--dream-line);background:#f0eae0}
.dream-countdown{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:650px;margin:18px auto 22px;gap:0}
.dream-countdown>span{border-right:1px solid #d9cbb8;display:flex;flex-direction:column;gap:8px;align-items:center}
.dream-countdown>span:last-child{border-right:0}
.dream-countdown b{font:400 clamp(30px,5vw,60px)/1 var(--dream-serif);color:#6f573b;font-variant-numeric:tabular-nums}
.dream-countdown small{font-size:8px;letter-spacing:.16em;text-transform:uppercase;color:#95816a}
body.sd-interface .dream-count-section>p{font-size:10px;color:#8d7c68}
.dream-program{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:80px;max-width:1200px;margin:auto}
.dream-section-heading>p:last-child{max-width:36ch!important;margin-top:23px!important}
.dream-timeline{position:relative;list-style:none;padding:0;margin:8px 0 0}
.dream-timeline::before{content:'';position:absolute;left:81px;top:12px;bottom:50px;width:1px;background:var(--dream-line)}
.dream-timeline li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:40px;margin-bottom:34px;position:relative}
.dream-timeline li:last-child{margin-bottom:0}
.dream-timeline time{font:400 24px/1.2 var(--dream-serif);color:#8b704e;padding-top:2px}
.dream-timeline li>div{position:relative}
.dream-timeline li>div::before{content:'';position:absolute;left:-26px;top:8px;border:1px solid #a28b6b;border-radius:50%;height:7px;width:7px;background:var(--dream-paper)}
.dream-timeline li>div>span{font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:#9b876e;display:block;margin-bottom:8px}
body.sd-interface .dream-timeline h3{font-size:29px;margin-bottom:10px}
body.sd-interface .dream-timeline p{font-size:12px;line-height:1.8}
.dream-photo-story{background:#39342e;color:#f8f0e5;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:30px;padding:50px max(7%,24px)}
.dream-photo-mat{padding:12px;border:1px solid #b6a18555;max-width:540px;width:100%;margin:auto;border-radius:240px 240px 2px 2px}
.dream-photo-mat img{display:block;width:100%;height:450px;object-fit:cover;object-position:50% 30%;border-radius:230px 230px 1px 1px}
.dream-photo-quote{text-align:center;padding:20px}
body.sd-interface .dream-photo-quote p{font:400 clamp(36px,4vw,55px)/1.13 var(--dream-serif);letter-spacing:-.03em;color:#fcf3e6}
.dream-photo-quote .dream-eyebrow{font-size:8px;color:#c2ac8d}
.dream-fine-line{display:block;width:45px;height:1px;background:#c5ae8a;margin:28px auto 0}
.dream-practical{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center;max-width:1200px;margin:auto}
.dream-place>p:not(.dream-eyebrow){margin-top:20px!important}
.dream-place .dream-demo-small{margin-top:7px!important}
.dream-outline-button{min-height:46px;padding:10px 18px;display:inline-flex;align-items:center;gap:35px;color:#6d573f;text-decoration:none;font-size:11px;border:1px solid #cabcaa;margin-top:24px}
.dream-outline-button:hover{background:#e9dfd0}
.dream-dress{background:#eee6da;border:1px solid #dfd2c1;padding:45px 24px;text-align:center}
.dream-dress .dream-flower{height:65px;width:65px;margin-bottom:18px}
body.sd-interface .dream-dress h3{font-size:34px;margin-bottom:20px}
body.sd-interface .dream-dress p{font-size:12px}
.dream-dress>small{font-size:9px;color:#94836e}
.dream-swatch-row{display:flex;justify-content:center;gap:10px;margin:20px 0 10px}
.dream-swatch-row i{display:block;width:20px;height:20px;border-radius:50%;background:#d5c6b0;border:1px solid #b9a78a44}
.dream-swatch-row i:nth-child(2){background:#f9f5ee}.dream-swatch-row i:nth-child(3){background:#a99a80}
.dream-response{background:#eee7dd;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:65px}
.dream-response .dream-section-heading{justify-self:end;width:100%;max-width:420px}
.dream-rsvp{padding:32px;background:#fbf8f2;border:1px solid #d8cbb9;width:100%;max-width:560px}
.dream-rsvp label{display:block;font-size:11px;color:#76654f;margin-bottom:17px;line-height:1.7}
.dream-rsvp :is(input,select){display:block;background:transparent;border:0;border-bottom:1px solid #cabcaa;min-height:48px;padding:10px 0;width:100%;font:400 16px/1.5 'DM Sans',Arial,sans-serif;color:#4c4034;border-radius:0}
.dream-rsvp input::placeholder{color:#b0a28e;font-size:12px}
.dream-form-row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px}
.dream-submit{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;min-height:48px;background:#484035;color:#fcf3e6;border:1px solid #484035;padding:12px 18px;font:400 11px/1.7 'DM Sans',Arial,sans-serif;margin-top:22px;cursor:pointer}
.dream-submit:hover{background:#5d4e3d}
.dream-rsvp>small{display:block;text-align:center;font-size:9px;color:#9e8e78;line-height:1.7;margin-top:15px}
body.sd-interface .dream-rsvp .rsvp-result{font-size:11px;line-height:1.8;margin-top:15px;color:#74614a}
.dream-signoff{text-align:center;padding:65px 24px 55px;background:var(--dream-paper)}
.dream-monogram{display:block;font:400 54px/1 var(--dream-serif);color:#8d7250;margin-bottom:24px}
.dream-monogram>span{font-style:italic;font-size:.65em}
body.sd-interface .dream-signoff p{font:400 33px/1.15 var(--dream-serif);color:#6b5946}
.dream-signoff small{display:block;font-size:9px;letter-spacing:.1em;color:#9f8b70;margin-top:25px}
.dream-signoff>a{display:inline-flex;align-items:center;min-height:44px;font-size:10px;color:#9a7c56;text-decoration:none;margin-top:20px}
.dream-invitation :is(a,button,input,select):focus-visible{outline:2px solid #9b7a4e;outline-offset:4px}
.dream-couple-page .demo-sitebar{background:#fffdf8;border-bottom:1px solid #e6decf;padding:12px 24px}
.dream-couple-page .demo-sitebar-inner{max-width:1320px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:auto}
.dream-couple-page .demo-sitebar .brand{display:inline-flex;max-width:155px;text-decoration:none}
.dream-couple-page .demo-sitebar a:not(.brand){font-size:11px;min-height:44px;display:inline-flex;align-items:center;color:#8a7356;text-decoration:none}
body.dream-couple-page main.dream-main{width:100%!important;max-width:100%!important;margin:0;padding:0}
body.sd-interface main .dream-demo-notice{padding:10px 20px;text-align:center;background:#f3eee5;color:#99856b;font-size:9px;line-height:1.7}
.dream-after{text-align:center;padding:35px 20px;background:#fffdf8;font:14px/1.8 'DM Sans',Arial,sans-serif;color:#87735b}
.dream-after a{margin:8px 12px}.dream-after small{display:block;margin-top:16px;font-size:9px;color:#a18f77}
.home .home-dream-frame{height:650px;max-height:none;overflow-y:auto;padding:0;background:#f8f5ef;border:1px solid #e4dbcd;scrollbar-width:thin;scrollbar-color:#c5b393 #f8f5ef}
.dream-preview .dream-cover{height:560px;min-height:560px}
.dream-preview .dream-cover-line{inset:12px}
.dream-preview .dream-cover-top{top:26px;left:26px;right:26px}
.dream-preview .dream-cover-top>span:first-child{font-size:20px}
.dream-preview .dream-cover-top>span:last-child{font-size:6px;letter-spacing:.1em}
.dream-preview .dream-cover-copy{padding:240px 24px 75px}
body.sd-interface .dream-preview .dream-cover .dream-names{font-size:60px;gap:10px;letter-spacing:-.055em;margin-bottom:18px}
body.sd-interface .dream-preview .dream-cover .dream-eyebrow{font-size:6px;letter-spacing:.18em;margin-bottom:15px}
body.sd-interface .dream-preview .dream-cover-copy>p:not(.dream-eyebrow){font-size:10px}
.dream-preview .dream-cover-button{min-height:44px;font-size:9px;gap:20px;margin-top:20px;padding:9px 16px}
.dream-preview .dream-cover-date{font-size:7px;letter-spacing:.08em;margin-top:16px}
.dream-preview .dream-scroll{bottom:22px;font-size:6px}
.dream-preview .dream-section{padding:50px 24px}
body.sd-interface .dream-preview h2{font-size:36px}
body.sd-interface .dream-preview h3{font-size:25px}
body.sd-interface .dream-preview p{font-size:11px;line-height:1.9}
.dream-preview .dream-flower{width:65px;height:65px;margin-bottom:16px}
.dream-preview .dream-eyebrow{font-size:7px;margin-bottom:15px;letter-spacing:.15em}
.dream-preview .dream-signature{font-size:34px;margin:20px 0}
body.sd-interface .dream-preview .dream-demo-small{font-size:8px}
.dream-preview .dream-count-section{padding:27px 18px}
.dream-preview .dream-countdown b{font-size:34px}.dream-preview .dream-countdown small{font-size:6px}
body.sd-interface .dream-preview .dream-count-section>p{font-size:8px}
.dream-preview .dream-program,.dream-preview .dream-practical,.dream-preview .dream-response{grid-template-columns:minmax(0,1fr);gap:35px}
.dream-preview .dream-timeline::before{left:59px}
.dream-preview .dream-timeline li{grid-template-columns:45px minmax(0,1fr);gap:26px;margin-bottom:28px}
.dream-preview .dream-timeline li>div::before{left:-15px}
.dream-preview .dream-timeline time{font-size:19px}
.dream-preview .dream-timeline li>div>span{font-size:6px}
body.sd-interface .dream-preview .dream-timeline h3{font-size:25px}
body.sd-interface .dream-preview .dream-timeline p{font-size:10px}
.dream-preview .dream-photo-story{grid-template-columns:minmax(0,1fr);gap:20px;padding:35px 24px}
.dream-preview .dream-photo-mat{padding:7px}.dream-preview .dream-photo-mat img{height:305px}
body.sd-interface .dream-preview .dream-photo-quote p{font-size:34px}
.dream-preview .dream-dress{padding:28px 20px}
.dream-preview .dream-rsvp{padding:22px}
.dream-preview .dream-form-row{grid-template-columns:minmax(0,1fr);gap:0}
.dream-preview .dream-rsvp label{font-size:10px}
.dream-preview .dream-rsvp>small{font-size:8px}
.dream-preview .dream-signoff{padding:45px 24px}
body.sd-interface .dream-preview .dream-signoff p{font-size:29px}
@media(max-width:760px){.dream-cover{height:calc(100svh - 100px);min-height:620px;max-height:820px}.dream-cover-line{inset:15px}.dream-cover-top{top:32px;left:30px;right:30px}.dream-cover-top>span:last-child{font-size:7px;letter-spacing:.1em}.dream-cover-copy{padding:270px 24px 90px}body.sd-interface .dream-cover .dream-names{font-size:clamp(65px,13vw,90px);gap:15px}.dream-section{padding:65px 28px}.dream-program,.dream-practical,.dream-response{grid-template-columns:minmax(0,1fr);gap:40px}.dream-photo-story{grid-template-columns:minmax(0,1fr);padding:38px 28px;gap:25px}.dream-photo-mat{max-width:430px}.dream-photo-mat img{height:390px}.dream-response .dream-section-heading{justify-self:start;max-width:none}.dream-rsvp{max-width:none}.dream-couple-page .demo-sitebar{padding:10px 14px}.dream-couple-page .demo-sitebar-inner{gap:10px}.dream-couple-page .demo-sitebar .brand{max-width:120px}.dream-couple-page .demo-sitebar a:not(.brand){font-size:10px}.dream-form-row{grid-template-columns:minmax(0,1fr);gap:0}.dream-couple-page .demo-sitebar .sd-create-link{max-width:105px}.dream-countdown small{font-size:7px}}
@media(max-width:400px){body.sd-interface .dream-cover .dream-names{font-size:65px;gap:10px}.dream-cover-copy{padding-left:22px;padding-right:22px}.dream-timeline li{grid-template-columns:48px minmax(0,1fr);gap:30px}.dream-timeline::before{left:61px}.dream-timeline li>div::before{left:-20px}.dream-timeline time{font-size:21px}.dream-rsvp{padding:23px}.dream-cover-top>span:last-child{font-size:6px}body.sd-interface .dream-preview .dream-cover .dream-names{font-size:56px}.dream-preview .dream-timeline::before{left:59px}.dream-preview .dream-timeline li>div::before{left:-15px}}
@keyframes dream-arrive{from{transform:scale(1.035);opacity:.85}to{transform:scale(1);opacity:1}}
@media(prefers-reduced-motion:reduce){.dream-invitation *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.dream-cover-photo{transform:none}}
