@import"https://fonts.googleapis.com/css2?family=Spectral:ital,wght@0,300;0,400;0,500;0,600;1,400&family=Jost:wght@300;400;500;600&display=swap";body[data-ao-theme=tuscan-villa]{--cream:#f5eede;--cream-d:#ece2cd;--ink:#3a3322;--olive:#6e7a3f;--olive-d:#515b2c;--cypress:#2f4630;--terra:#b5613a;--gold:#c39a3e;--muted:#8a8262;--line:#d8cdb0;margin:0;padding:16px 11px 72px;background:var(--cypress);color:var(--ink);font:400 15px/1.6 Jost,sans-serif}body[data-ao-theme=tuscan-villa] *{box-sizing:border-box}body[data-ao-theme=tuscan-villa] .reveal{opacity:1;transform:none;transition:none}body[data-ao-theme=tuscan-villa] .invitation-card{width:min(100%,520px);margin:auto;overflow:hidden;border:1px solid #22341f;background:var(--cream);box-shadow:0 24px 64px #00000080}body[data-ao-theme=tuscan-villa] .ao-invite-section{margin:0;padding:30px 19px;background:var(--cream);text-align:center}body[data-ao-theme=tuscan-villa] .section-label{margin:0 0 5px;color:#934a28;font:italic 15px Spectral,serif}body[data-ao-theme=tuscan-villa] .section-title{margin:0 0 20px;color:var(--cypress);font:500 28px/1.1 Spectral,serif}body[data-ao-theme=tuscan-villa] .invitation-hero{display:flex;flex-direction:column;padding:0 17px 26px;background:linear-gradient(180deg,#e3d6ba,var(--cream))}body[data-ao-theme=tuscan-villa] .hero-copy{order:1;padding:34px 5px 19px}body[data-ao-theme=tuscan-villa] .lead-text{margin:0 0 9px;color:#934a28;font:500 10px Jost,sans-serif;letter-spacing:.32em;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .hero-copy .host-names{display:block;color:var(--cypress);font:500 clamp(43px,12vw,63px)/1.04 Spectral,serif}body[data-ao-theme=tuscan-villa] .hero-copy .event-title{max-width:30ch;margin:14px auto 0;color:var(--muted);font:italic 18px/1.5 Spectral,serif}body[data-ao-theme=tuscan-villa] .hero-copy .event-title:after{content:"▴  ▴  ▴  ▴  ▴  ▴  ▴  ▴  ▴";display:block;margin:20px auto 0;padding-bottom:4px;border-bottom:3px solid var(--olive-d);color:var(--cypress);font-size:28px;letter-spacing:-7px}body[data-ao-theme=tuscan-villa] .hero-image{order:2;overflow:hidden;border:5px solid var(--cream);border-radius:6px;box-shadow:0 0 0 2px var(--terra),0 12px 28px #0003}body[data-ao-theme=tuscan-villa] .hero-image img{display:block;width:100%;aspect-ratio:3/4;object-fit:cover}body[data-ao-theme=tuscan-villa] .invitation-details{display:flex;flex-direction:column}body[data-ao-theme=tuscan-villa] .invitation-details>.section-label,body[data-ao-theme=tuscan-villa] .invitation-details>.section-title{order:2}body[data-ao-theme=tuscan-villa] .details-grid{order:3;display:grid;gap:15px;padding:22px;border:1px solid var(--line);border-radius:4px;background:var(--cream-d)}body[data-ao-theme=tuscan-villa] .detail-card{padding:0;background:none}body[data-ao-theme=tuscan-villa] .detail-label{display:block;margin-bottom:5px;color:#934a28;font:600 9px Jost,sans-serif;letter-spacing:.2em;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .detail-value{display:block;color:var(--ink);font:400 20px Spectral,serif}body[data-ao-theme=tuscan-villa] .detail-sub{display:block;color:var(--muted);font-size:12px}body[data-ao-theme=tuscan-villa] .countdown{order:1;margin:0 0 31px}body[data-ao-theme=tuscan-villa] .countdown-heading{display:none}body[data-ao-theme=tuscan-villa] .countdown-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}body[data-ao-theme=tuscan-villa] .countdown-grid span{display:flex;flex-direction:column;padding:10px 3px;border-radius:4px;background:var(--cypress);color:#c9d3bc}body[data-ao-theme=tuscan-villa] .countdown-grid b{color:var(--gold);font:500 27px/1 Spectral,serif}body[data-ao-theme=tuscan-villa] .countdown-grid small{margin-top:5px;font:600 7px Jost,sans-serif;letter-spacing:.14em;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .calendar-actions,body[data-ao-theme=tuscan-villa] .event-links{order:4;display:flex;justify-content:center;gap:15px;flex-wrap:wrap;margin-top:14px}body[data-ao-theme=tuscan-villa] :is(.btn-cal,.btn-ics,.event-link){padding:5px 0;border:0;border-bottom:1px solid var(--gold);background:none;color:var(--olive-d);font:500 12px Jost,sans-serif;text-decoration:none}body[data-ao-theme=tuscan-villa] .timeline{display:grid;gap:9px}body[data-ao-theme=tuscan-villa] .tl-item{display:grid;grid-template-columns:44px 1fr;gap:2px 12px;padding:11px 15px;border:1px solid var(--line);border-left:4px solid var(--olive);border-radius:0 4px 4px 0;background:var(--cream-d);text-align:left}body[data-ao-theme=tuscan-villa] .tl-item:nth-child(2n){border-left-color:var(--terra)}body[data-ao-theme=tuscan-villa] .tl-time{grid-row:1/3;color:var(--cypress);font:500 16px Spectral,serif}body[data-ao-theme=tuscan-villa] .tl-event{color:var(--olive-d);font:500 17px Spectral,serif}body[data-ao-theme=tuscan-villa] .tl-sub{color:var(--muted);font-size:12px}body[data-ao-theme=tuscan-villa] .location-card{padding:19px;border:1px solid var(--line);border-radius:4px;background:var(--cream-d)}body[data-ao-theme=tuscan-villa] .location-map{height:160px;overflow:hidden;background:var(--cream-d)}body[data-ao-theme=tuscan-villa] .location-map iframe{display:none}body[data-ao-theme=tuscan-villa] .location-card>.venue-name{display:block;margin-top:15px;color:var(--cypress);font:500 21px Spectral,serif}body[data-ao-theme=tuscan-villa] .location-card>.venue-address{display:block;color:var(--muted);font-size:12px}body[data-ao-theme=tuscan-villa] .location-meta{display:flex;justify-content:center;gap:8px;margin:12px;flex-wrap:wrap}body[data-ao-theme=tuscan-villa] .location-tag{padding:4px 10px;border:1px solid var(--olive);border-radius:99px;color:var(--muted);font-size:9px}body[data-ao-theme=tuscan-villa] .map-link{display:inline-block;padding:9px 23px;border-radius:4px;background:var(--terra);color:#fff;font:600 9px Jost,sans-serif;letter-spacing:.14em;text-decoration:none;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .swatches{display:flex;justify-content:center;gap:11px;flex-wrap:wrap}body[data-ao-theme=tuscan-villa] .swatch{display:flex;flex-direction:column;align-items:center;gap:5px}body[data-ao-theme=tuscan-villa] .sw-dot{width:32px!important;height:32px!important;border:3px solid var(--cream)!important;border-radius:50%!important;box-shadow:0 0 0 1px var(--line)}body[data-ao-theme=tuscan-villa] .sw-lbl{max-width:48px;color:var(--muted);font-size:7px}body[data-ao-theme=tuscan-villa] .privacy-note{padding:18px;border:1px solid var(--line);background:var(--cream-d)}body[data-ao-theme=tuscan-villa] .priv-h{margin:0;color:var(--terra);font:500 19px Spectral,serif}body[data-ao-theme=tuscan-villa] :is(.priv-t,.event-notes){margin:4px 0 0;color:var(--muted);font:italic 15px Spectral,serif}body[data-ao-theme=tuscan-villa] .gallery-section{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}body[data-ao-theme=tuscan-villa] .gallery-image{aspect-ratio:1;margin:0;overflow:hidden;border:3px solid var(--cream);border-radius:4px;box-shadow:0 0 0 1px var(--line)}body[data-ao-theme=tuscan-villa] .gallery-image img{display:block;width:100%;height:100%;object-fit:cover}body[data-ao-theme=tuscan-villa] .gallery-toggle,body[data-ao-theme=tuscan-villa] .story-image{display:none}body[data-ao-theme=tuscan-villa] .story-copy .section-title{margin-bottom:10px}body[data-ao-theme=tuscan-villa] .story-text{margin:0;color:var(--ink);font:400 19px/1.55 Spectral,serif}body[data-ao-theme=tuscan-villa] .music-card{display:grid;grid-template-columns:55px 1fr 42px;align-items:center;gap:12px;padding:11px;border:1px solid var(--ink);border-radius:13px;background:var(--cream-d);text-align:left}body[data-ao-theme=tuscan-villa] .music-artwork{width:48px;height:48px;display:grid;place-items:center;border-radius:8px;background:var(--terra);color:#fff}body[data-ao-theme=tuscan-villa] .music-title{margin:0;font:600 14px Jost,sans-serif}body[data-ao-theme=tuscan-villa] .music-artist{margin:0;color:var(--muted);font-size:11px}body[data-ao-theme=tuscan-villa] .music-link{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--ink);border-radius:50%;color:var(--ink);font-size:0;text-decoration:none}body[data-ao-theme=tuscan-villa] .music-link:before{content:"▶";font-size:11px}body[data-ao-theme=tuscan-villa] .music-card iframe{width:100%;border:0}body[data-ao-theme=tuscan-villa] .invitation-rsvp{padding-inline:19px}body[data-ao-theme=tuscan-villa] .rsvp-title{margin:0;color:var(--cypress);font:500 31px Spectral,serif}body[data-ao-theme=tuscan-villa] .rsvp-deadline{margin:4px 0 20px;color:#934a28;font:600 10px Jost,sans-serif;letter-spacing:.1em;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .rsvp-form{padding:22px;border:1px solid var(--line);border-radius:4px;background:var(--cream-d);text-align:left}body[data-ao-theme=tuscan-villa] .form-group{margin:0 0 14px;padding:0;border:0}body[data-ao-theme=tuscan-villa] .form-group>label,body[data-ao-theme=tuscan-villa] .form-group>legend{display:block;margin:0 0 5px;color:#934a28;font:600 9px Jost,sans-serif;letter-spacing:.15em;text-transform:uppercase}body[data-ao-theme=tuscan-villa] :is(input[type=text],input[type=email],input[type=number],textarea){width:100%;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:4px;background:var(--cream);color:var(--ink);font:14px Jost,sans-serif}body[data-ao-theme=tuscan-villa] textarea{min-height:78px}body[data-ao-theme=tuscan-villa] .radio-row{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;gap:8px}body[data-ao-theme=tuscan-villa] .radio-opt{display:flex!important;width:auto!important;min-width:0!important;min-height:42px!important;flex:1 1 90px!important;align-items:center;justify-content:center;padding:7px;border:1px solid var(--line);border-radius:4px;color:var(--ink);font:500 14px Spectral,serif;text-align:center}body[data-ao-theme=tuscan-villa] .radio-opt input{width:auto!important;min-height:0!important;margin-right:5px;accent-color:var(--terra)}body[data-ao-theme=tuscan-villa] .ao-note-suggestions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}body[data-ao-theme=tuscan-villa] .ao-note-suggestions button{padding:5px 8px;border:1px dashed var(--muted);border-radius:99px;background:none;color:var(--muted);font-size:9px}body[data-ao-theme=tuscan-villa] .btn-submit{width:100%;margin-top:8px;padding:12px;border:0;border-radius:4px;background:var(--cypress);color:#fff;font:500 19px Spectral,serif}body[data-ao-theme=tuscan-villa] .quick-links{display:flex;justify-content:center;gap:9px}body[data-ao-theme=tuscan-villa] .btn-share{display:flex!important;width:calc((min(100vw,430px) - 66px)/2)!important;min-width:0!important;align-items:center;justify-content:center;padding:10px;border:0;border-radius:4px;background:var(--terra);color:#fff;font:600 9px Jost,sans-serif;text-decoration:none;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .btn-share-wa{background:var(--olive-d)}body[data-ao-theme=tuscan-villa] .qr-img{display:inline-block;width:85px;height:85px;margin:22px 12px 0 0;padding:4px;border:2px solid var(--line);border-radius:4px;vertical-align:middle}body[data-ao-theme=tuscan-villa] .qr-hint{display:inline-block;max-width:150px;margin:22px 0 0;color:var(--muted);font:italic 15px Spectral,serif;vertical-align:middle;text-align:left}body[data-ao-theme=tuscan-villa] .invitation-closing{padding:35px 20px}body[data-ao-theme=tuscan-villa] .closing-copy{margin:0;color:var(--muted);font:italic 17px Spectral,serif}body[data-ao-theme=tuscan-villa] .invitation-closing .host-names{display:block;margin-top:7px;color:var(--cypress);font:500 29px Spectral,serif}body[data-ao-theme=tuscan-villa] .invitation-branding{margin:0;padding:24px;background:var(--cypress);color:#c9d3bc;font:500 8px Jost,sans-serif;letter-spacing:.2em;text-align:center;text-transform:uppercase}body[data-ao-theme=tuscan-villa] .invitation-branding a{color:#fff}body[data-ao-theme=tuscan-villa] .ao-sticky-rsvp{position:fixed!important;z-index:100;right:0!important;bottom:0!important;left:0!important;width:min(520px,100%)!important;height:53px!important;margin:auto!important;background:var(--cypress)!important}body[data-ao-theme=tuscan-villa] .ao-sticky-rsvp button{display:block;width:126px;height:37px;margin:8px auto;border:0;border-radius:4px;background:var(--gold);color:var(--ink);font:500 18px Spectral,serif}body[data-ao-theme=tuscan-villa] .ao-sticky-rsvp small{display:none}body[data-ao-theme=tuscan-villa] .invitation-lightbox{display:none;position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center;background:#22341ff2}body[data-ao-theme=tuscan-villa] .invitation-lightbox.open{display:flex}body[data-ao-theme=tuscan-villa] .invitation-lightbox img{max-width:92vw;max-height:88vh;border:5px solid var(--cream)}body[data-ao-theme=tuscan-villa] .invitation-lightbox button{position:absolute;width:40px;height:40px;border:2px solid var(--gold);border-radius:50%;background:var(--cypress);color:var(--cream)}body[data-ao-theme=tuscan-villa] #lbClose{top:16px;right:16px}body[data-ao-theme=tuscan-villa] #lbPrev{left:16px}body[data-ao-theme=tuscan-villa] #lbNext{right:16px}body[data-ao-theme=tuscan-villa] .location-map{position:relative;height:92px;min-height:92px;background:radial-gradient(ellipse 8px 36px at 18% 100%,rgba(47,70,48,.55) 0 72%,transparent 74%),radial-gradient(ellipse 7px 31px at 27% 100%,rgba(81,91,44,.5) 0 72%,transparent 74%),radial-gradient(ellipse 9px 39px at 80% 100%,rgba(47,70,48,.52) 0 72%,transparent 74%),radial-gradient(ellipse at 50% 115%,rgba(110,122,63,.28) 0 57%,transparent 58%),linear-gradient(180deg,#efe4cc,#e4d2ae)}body[data-ao-theme=tuscan-villa] .location-map:before{content:"";position:absolute;top:47%;left:50%;width:22px;height:22px;transform:translate(-50%,-50%) rotate(-45deg);border:2px solid var(--terra);border-radius:50% 50% 50% 0;background:var(--cream)}body[data-ao-theme=tuscan-villa] .location-map:after{content:"";position:absolute;top:47%;left:50%;width:6px;height:6px;transform:translate(-50%,-50%);border-radius:50%;background:var(--terra)}body[data-ao-theme=tuscan-villa] .hero-copy .event-title{padding-bottom:7px;background:linear-gradient(var(--olive-d),var(--olive-d)) center bottom/min(100%,320px) 3px no-repeat}body[data-ao-theme=tuscan-villa] .hero-copy .event-title:after{content:"";width:min(100%,300px);height:58px;margin:17px auto 0;padding:0;border:0;background:var(--cypress);-webkit-mask:radial-gradient(ellipse 13px 38px at 50% 100%,#000 98%,transparent 100%) center bottom/38px 55px repeat-x;mask:radial-gradient(ellipse 13px 38px at 50% 100%,#000 98%,transparent 100%) center bottom/38px 55px repeat-x}
