/* Optional blocks are rendered only when explicitly enabled in private admin. */
.wedding-optional-modules{background:#f8f0e6;color:#804c34}
.wedding-optional-modules .optional-section{padding:80px 22px;border-top:1px solid #dbc2ac}
.wedding-optional-modules .optional-alt{background:#efe0d2}
.wedding-optional-modules .optional-wrap{max-width:900px;margin:auto}
.wedding-optional-modules .optional-eyebrow{font:700 11px Arial,sans-serif;letter-spacing:3px;color:#a66c4a}
.wedding-optional-modules h2{font:400 clamp(44px,5vw,66px)/1.15 Georgia,serif;letter-spacing:-1px;margin:14px 0 22px}
.wedding-optional-modules h2 em{color:#b57854}
.wedding-optional-modules h3{font:400 27px/1.25 Georgia,serif;color:#8b5338}
.wedding-optional-modules p{font-size:15px;line-height:1.8}
.wedding-optional-modules .optional-post{border-top:1px solid #d6b89f;padding:12px 0 25px;margin:20px 0}
.wedding-optional-modules .optional-post small{color:#9b765d}
.wedding-optional-modules .optional-panel{margin-top:25px;padding:28px;background:#fff9f2;border:1px solid #d6b89f;display:grid;gap:15px;max-width:650px}
.wedding-optional-modules .optional-panel h3,.wedding-optional-modules .optional-panel p{margin:0}
.wedding-optional-modules label{display:grid;gap:6px;font:600 13px Arial,sans-serif;color:#81553b}
.wedding-optional-modules input:not([type=checkbox]),.wedding-optional-modules textarea,.wedding-optional-modules select{width:100%;min-height:44px;border:1px solid #d2b19a;background:#fff;font:400 15px Arial,sans-serif;padding:11px;color:#583925}
.wedding-optional-modules .optional-check{display:flex;gap:12px;align-items:flex-start;font-weight:400;line-height:1.5}
.wedding-optional-modules .optional-check input{margin-top:4px}
.wedding-optional-modules .optional-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.wedding-optional-modules .optional-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;background:#96563b;color:white;padding:14px 22px;text-decoration:none;font:700 12px Arial,sans-serif;letter-spacing:.5px;cursor:pointer;max-width:max-content}
.wedding-optional-modules .optional-btn:disabled{opacity:.55}
.wedding-optional-modules .optional-response{margin:0;color:#7f4b35;font-weight:700}
.wedding-optional-modules .optional-small{font-size:12px;color:#8b6755}
@media(max-width:600px){.wedding-optional-modules .optional-section{padding:57px 18px}.wedding-optional-modules .optional-panel{padding:22px 17px}}
