/* INVI's shared application shell. Invitation themes use their own styles. */
body.invi-front{--paper:#f8f5ee;--ink:#34372f;--muted:#73796a;--line:#dedfd4;--accent:#56644a;--gold:#a58a60;--soft:#edf0e5;--sage:#e6e9dd;margin:0;background:var(--paper);color:var(--ink);font:14px/1.65 Arial,Helvetica,sans-serif}
.invi-front main :is(h1,h2,h3){font-family:Georgia,'Times New Roman',serif;font-weight:400}.invi-front main .eyebrow{color:#8b754f;font-size:10px;letter-spacing:1.7px;font-weight:600}.invi-front main :is(.card,.quote-form,.offer-free,.offer-basic,.offer-custom){border-color:var(--line);border-radius:14px}.invi-front main .card{background:#fffdf9;box-shadow:0 4px 22px #34372f04}.invi-front main :is(button,.btn,.button):not(.link):not(.icon-button):not(.invi-preview-toggle){font-family:Arial,Helvetica,sans-serif;border-radius:8px}.invi-front main :is(.btn,.button):not(.outline):not(.secondary),.invi-front main button:not(.outline):not(.link):not(.icon-button):not(.invi-preview-toggle){background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:none}.invi-front main :is(.outline,.button.secondary){color:var(--accent);border-color:#aeb7a4;background:transparent;box-shadow:none}.invi-front main :is(input,select,textarea){border-radius:7px;border-color:var(--line);color:var(--ink);font-family:Arial,Helvetica,sans-serif}.invi-front main :is(input,select,textarea):focus{outline:2px solid #9aab87;outline-offset:2px}.invi-front main :is(.new-event,.featured,.tinted){background:#edf0e5}.invi-front main .custom-promo{background:#efebe1;border-radius:14px}.invi-front main .custom-promo :is(.eyebrow,.text-link){color:#7c6846}.invi-front .invi-client-nav{max-width:1180px;box-sizing:border-box;background:#fffdf9;border-color:var(--line)}.invi-front .invi-client-nav>div a{border-color:#c6cdbb;color:var(--accent)}.invi-front .invi-client-nav>div a[aria-current=page]{background:var(--accent);color:white}.invi-front .invi-premium-note{background:#edf0e5;border-color:#c6cdbb;color:#414b38}.invi-front .invi-premium-account{color:var(--ink);background:#fffdf9;border-color:var(--line)}.invi-front .invi-premium-account :is(a,select){color:var(--accent)}.invi-front .invi-premium-select,.invi-front .invi-premium-purchase{background:#edf0e5}.invi-front .invi-premium-account button{background:var(--accent)}
.invi-front .invi-site-header{height:auto;min-height:92px;display:block;position:relative;top:auto;z-index:20;border:0;border-bottom:1px solid var(--line);padding:0 5%;margin:0;background:#f8f5ee}
.invi-site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;max-width:1360px;margin:auto;min-height:92px}
.invi-front .invi-site-brand{display:inline-flex;align-items:center;gap:8px;color:var(--ink);font:italic 40px/1 Georgia,serif;letter-spacing:-2px;text-decoration:none;white-space:nowrap;flex:none;padding:0;border:0;background:none}
.invi-front .invi-site-brand span{color:var(--gold);font:30px/1 Georgia,serif;letter-spacing:0}
.invi-front .invi-site-celebrations{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;font:600 12px/1.4 Arial,sans-serif;padding:0;margin:0}
.invi-front .invi-site-celebrations a{display:block;padding:11px 15px;border:1px solid transparent;border-radius:25px;color:var(--muted);font:inherit;text-decoration:none;background:transparent}
.invi-front .invi-site-celebrations a:hover{background:#e9ecdf;color:var(--ink)}.invi-front .invi-site-celebrations a[aria-current=page]{color:var(--accent);background:#e9ecdf;border-color:#d1d8c6}
.invi-site-account{display:flex;gap:17px;align-items:center;flex-wrap:wrap;justify-content:flex-end;font:600 12px/1.5 Arial,sans-serif}
.invi-front .invi-site-account>a{font:inherit;text-decoration:none;padding:8px 0;color:var(--ink)}.invi-front .invi-site-account .invi-site-quote{color:var(--muted)}.invi-site-quote span{padding-left:5px}.invi-front .invi-site-account .invi-site-create{border:1px solid var(--accent);background:var(--accent);color:white;border-radius:8px;padding:11px 15px}
.invi-site-menu{position:relative;margin:0;padding:0;border:0}.invi-site-menu summary{cursor:pointer;list-style:none;padding:10px 15px;border:1px solid #bfc8b3;border-radius:8px;color:var(--ink);background:#fffdf9;font:600 12px/1.5 Arial,sans-serif}.invi-site-menu summary:after{content:'⌄';padding-left:10px}.invi-site-menu summary::-webkit-details-marker{display:none}
.invi-site-menu>div{position:absolute;right:0;top:calc(100% + 10px);display:grid;gap:4px;min-width:220px;padding:10px;background:#fffdf9;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #34372f20;z-index:30}
.invi-front .invi-site-menu>div>a,.invi-front .invi-site-menu button{display:block;box-sizing:border-box;width:100%;padding:11px 12px;border:0;border-radius:7px;background:none;color:var(--ink);font:500 13px/1.5 Arial,sans-serif;text-align:left;white-space:normal;text-decoration:none;cursor:pointer}.invi-front .invi-site-menu form{display:block;margin:0;padding:0}.invi-front .invi-site-menu :is(a,button):hover{background:#edf0e5}
.invi-front .invi-site-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;border:0;border-top:1px solid var(--line);margin:50px 0 0;padding:32px max(5%,calc((100% - 1360px)/2));background:var(--paper);color:var(--muted)}.invi-site-footer p{margin:0;font:12px/1.6 Arial,sans-serif}.invi-front .invi-site-footer nav{display:flex;gap:18px;flex-wrap:wrap;font:12px/1.6 Arial,sans-serif;margin:0;padding:0}.invi-site-footer nav a{font:inherit;text-decoration:none}.invi-site-footer nav a:hover{text-decoration:underline;text-underline-offset:4px}.invi-site-footer .invi-site-brand{font-size:34px}.invi-site-footer .invi-site-brand span{font-size:25px}
.invi-skip{position:absolute;left:15px;top:10px;transform:translateY(-180%);background:#34372f;color:#fff;padding:12px 18px;z-index:100;border-radius:8px;text-decoration:none}.invi-skip:focus{transform:none}.invi-front :is(.invi-site-header,.invi-site-footer) :is(a,summary,button):focus-visible{outline:3px solid #9aab87;outline-offset:3px}
.invi-phone-field{min-width:0;grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 18px;align-items:start}.invi-phone-field .hint{grid-column:1/-1;margin:0 0 18px;font:12px/1.6 Arial,sans-serif;color:var(--muted)}.invi-phone-field input[type=hidden]{display:none}.invi-phone-field label{min-width:0}.invi-phone-field select,.invi-phone-field input{width:100%;box-sizing:border-box}.invi-front .quote-form label{font-size:12px}.invi-front .quote-form :is(input,select,textarea){font-size:14px}.invi-front .quote-phone-help{font-size:11px;line-height:1.6}
@media(max-width:1050px){.invi-site-header-inner{gap:16px}.invi-front .invi-site-celebrations{gap:2px}.invi-front .invi-site-celebrations a{padding:10px}.invi-site-account{gap:12px}}
@media(max-width:700px){.invi-front .invi-site-header{padding:0 20px}.invi-site-header-inner{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0 14px;padding-top:16px;min-height:112px}.invi-front .invi-site-brand{font-size:34px}.invi-front .invi-site-brand span{font-size:26px}.invi-front .invi-site-celebrations{grid-column:1/-1;grid-row:2;justify-content:flex-start;padding:12px 0;gap:4px}.invi-front .invi-site-celebrations a{padding:8px 12px;font-size:12px}.invi-site-account{justify-content:flex-end;gap:12px;font-size:11px}.invi-front .invi-site-account .invi-site-create{padding:9px 11px}.invi-site-menu summary{padding:9px 12px}.invi-site-menu>div{min-width:220px;max-width:calc(100vw - 40px)}.invi-front .invi-site-footer{padding:28px 22px;gap:18px;justify-content:flex-start}.invi-site-footer p{font-size:11px;max-width:190px;text-align:left}.invi-front .invi-site-footer nav{width:100%;gap:15px;font-size:11px}.invi-phone-field{grid-template-columns:1fr}.invi-front main :is(input,select,textarea){font-size:16px}.invi-front main .quote-fields{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.invi-skip{transition:none}}
