/* Layout is scoped to invitation content; the shared envelope remains independent. */
.inv{max-width:640px}.content{padding:76px 30px 44px;gap:34px}.content>section{min-width:0}.content .small{letter-spacing:.17em;font-size:10px}.content .names{font-size:clamp(44px,9vw,68px);line-height:1.16;margin:20px 0;position:relative}.content .names .amp{font-size:32px;margin:10px 0}.content .host{font:12px/1.8 var(--fb);color:var(--tx2)}.content .greeting{padding:14px 8px}.content .greeting p{font:22px/1.7 var(--fd)}.content .greeting p::first-line{font:inherit;color:var(--tx)}.content .quote{font:italic 23px/1.55 var(--fd);margin:10px 14px;padding:0}.content .garden-art{color:var(--gl);width:100%;height:140px;display:block;margin:auto}.content .photo{border-radius:160px 160px 12px 12px;width:230px;height:290px;box-shadow:none;border:1px solid var(--line);padding:6px}.content .photo img{border-radius:inherit}.content .ev{border:1px solid var(--line);background:var(--p1);padding:22px 18px;gap:8px 18px;border-radius:4px}.content .ev .n{font-weight:500;font-size:23px}.content .ev .t{font-size:22px}.content .cd div{background:transparent;border:0;border-right:1px solid var(--line);border-radius:0}.content .cd div:last-child{border:0}.content .cd b{font-size:26px;font-weight:500}.content .cd span{font-size:9px;letter-spacing:.02em}.content .frame{padding:26px 20px;border-color:var(--line)}.content .btn{min-height:44px}.content .parents div{background:var(--p2);padding:20px 12px}.content .form input,.content .form textarea{background:var(--p1);font-size:16px}.content .salut{border-style:dashed}.content :is(.names,.quote,.greeting,.ev){overflow-wrap:anywhere}
@media(max-width:380px){.content{padding:70px 18px 32px;gap:26px}.content .names{font-size:42px}.content .ev{padding:18px 12px;gap:8px 12px}.content .greeting p{font-size:21px}.content .garden-art{height:105px}.content .parents{grid-template-columns:1fr}.content .quote{margin:8px 0}}
@media(prefers-reduced-motion:reduce){.content *{animation:none!important;scroll-behavior:auto!important}}
body{background:var(--p2)}.inv{box-shadow:0 0 90px #542d3110}.letter-head{display:flex;justify-content:space-between;gap:12px;font:9px/1.6 var(--fb);letter-spacing:.15em;color:var(--tx2);border-bottom:1px solid var(--line);padding-bottom:18px}.letter-cover{border:1px solid var(--line);padding:0 18px 35px;background:linear-gradient(150deg,var(--p1) 55%,var(--p2));position:relative;border-radius:3px 3px 100px 3px}.letter-cover .garden-art{height:105px}.letter-seal{display:grid;place-items:center;margin:18px auto;border:1px solid var(--gl);outline:3px double var(--line);outline-offset:4px;border-radius:50%;width:45px;height:45px;font-size:28px;color:var(--gl)}.letter-date{font:14px/1.6 var(--fb);letter-spacing:.09em}.letter-date span{display:block;font-size:11px;letter-spacing:0;margin-top:8px}.content .greeting{text-align:left;padding:18px 12px 18px 24px;border-left:2px solid var(--gl)}.content .parents div{background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0}.content .s-events .ev{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.content .frame{border-radius:4px}
