#ecc-invite *{box-sizing:border-box;margin:0;padding:0}
#ecc-invite [hidden]{display:none!important}
#ecc-invite{
  --cream:#F6F1EA; --cream-2:#EFE6D8;
  --ink:#6B563B; --deep:#4C3B26; --muted:#9C8868;
  --gold:#B08D57; --gold-lo:#8C6E3F; --gold-hi:#D9C08A;
  --line:rgba(176,141,87,.55); --line-soft:rgba(176,141,87,.28);
  position:relative; width:100%; overflow:hidden; isolation:isolate; color:var(--ink);
  font-family:'Cormorant Garamond',Georgia,serif; line-height:1.5; -webkit-font-smoothing:antialiased;
  background:#F6F1ED;
}

/* reveal */
#ecc-invite .ecc-reveal{opacity:0; transform:translateY(24px); transition:opacity 1s ease, transform 1s ease}
#ecc-invite .ecc-reveal.in{opacity:1; transform:none}
@media (prefers-reduced-motion:reduce){#ecc-invite .ecc-reveal{opacity:1;transform:none}}

/* shared bits */
#ecc-invite .ecc-diamond{display:block; width:160px; max-width:60%; height:14px; margin:18px auto; position:relative}
#ecc-invite .ecc-diamond::before{content:""; position:absolute; top:50%; left:0; right:0; height:1px; transform:translateY(-50%);
  background:linear-gradient(90deg,transparent,var(--line) 22%,var(--line) 78%,transparent)}
#ecc-invite .ecc-diamond::after{content:""; position:absolute; top:50%; left:50%; width:7px; height:7px;
  transform:translate(-50%,-50%) rotate(45deg); background:var(--gold); box-shadow:-13px 0 0 -2px var(--gold),13px 0 0 -2px var(--gold)}

/* ===================== INVITATION PAGE ===================== */
#ecc-invite .ecc-page{position:relative; z-index:1; padding:clamp(40px,6vw,84px) clamp(22px,5vw,72px)}
#ecc-invite .ecc-frame{position:absolute; inset:clamp(14px,2.2vw,26px); pointer-events:none;
  border:1.5px solid var(--gold); z-index:1}
#ecc-invite .ecc-frame::before{content:""; position:absolute; inset:6px; border:1px solid var(--line-soft)}
#ecc-invite .ecc-frame::after{content:""; position:absolute; width:18px; height:18px; top:-1px; left:-1px;
  border-top:1.5px solid var(--gold); border-left:1.5px solid var(--gold);
  box-shadow:calc(100% + 0px) 0 0 -0px transparent}
#ecc-invite .ecc-bot{position:absolute; z-index:2; pointer-events:none; height:auto}
#ecc-invite .ecc-bot.tr{top:clamp(8px,1.2vw,16px); right:clamp(8px,1.2vw,16px); width:clamp(150px,22vw,260px)}
#ecc-invite .ecc-bot.bl{bottom:clamp(8px,1.2vw,16px); left:clamp(8px,1.2vw,16px); width:clamp(150px,22vw,250px)}

#ecc-invite .ecc-hero{position:relative; z-index:3; display:grid; grid-template-columns:1.05fr .82fr;
  align-items:center; gap:clamp(10px,3vw,40px); max-width:1080px; margin:0 auto}
#ecc-invite .ecc-hero-text{text-align:center; padding:10px 0}
#ecc-invite .ecc-mono{display:block; width:clamp(120px,16vw,170px); height:auto; margin:0 auto 18px}

#ecc-invite .ecc-kicker{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.34em;
  font-size:clamp(.66rem,1.5vw,.82rem); color:var(--ink); margin-bottom:14px; padding-left:.34em}
#ecc-invite .ecc-h1{font-family:'Cinzel',serif; font-weight:500; text-transform:uppercase; letter-spacing:.12em;
  font-size:clamp(1.7rem,4.4vw,2.9rem); color:var(--deep); line-height:1.08}
#ecc-invite .ecc-and{display:flex; align-items:center; justify-content:center; gap:14px; margin:6px auto; max-width:320px}
#ecc-invite .ecc-and .ln{height:1px; flex:1; background:linear-gradient(90deg,transparent,var(--line))}
#ecc-invite .ecc-and .ln:last-child{background:linear-gradient(90deg,var(--line),transparent)}
#ecc-invite .ecc-and em{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:clamp(1.1rem,2.4vw,1.5rem); color:var(--ink)}
#ecc-invite .ecc-script{font-family:'Pinyon Script',cursive; font-size:clamp(3rem,8.5vw,5.4rem); color:var(--gold-lo); line-height:.9; margin-bottom:18px}

#ecc-invite .ecc-honor{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.34em; font-size:clamp(.62rem,1.4vw,.76rem); color:var(--muted); margin-bottom:8px; padding-left:.34em}
#ecc-invite .ecc-names{font-family:'Cinzel',serif; font-weight:600; text-transform:uppercase; letter-spacing:.08em;
  font-size:clamp(1.4rem,3.6vw,2.2rem); color:var(--deep)}

#ecc-invite .ecc-date{font-family:'Cinzel',serif; font-weight:500; text-transform:uppercase; letter-spacing:.14em; font-size:clamp(1.05rem,2.4vw,1.4rem); color:var(--ink); margin-top:2px}
#ecc-invite .ecc-time{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.2em; font-size:clamp(.66rem,1.5vw,.82rem); color:var(--muted); margin-top:5px}
#ecc-invite .ecc-loc{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.14em; font-size:clamp(.74rem,1.7vw,.92rem); color:var(--ink); margin-top:14px}
#ecc-invite .ecc-loc.is-placeholder{font-family:'Cormorant Garamond',serif; font-style:italic; text-transform:none; letter-spacing:.02em; color:var(--muted); font-size:1.05rem}
#ecc-invite .ecc-message{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.16em; font-size:clamp(.66rem,1.5vw,.82rem); line-height:1.9; color:var(--muted); margin-top:14px}

#ecc-invite .ecc-cta{display:flex; gap:12px; flex-wrap:wrap; justify-content:center; margin-top:6px}
#ecc-invite .ecc-hero-art{display:flex; justify-content:center; align-items:flex-end}
#ecc-invite .ecc-couple{width:100%; max-width:360px; height:auto; filter:drop-shadow(0 22px 30px rgba(120,90,50,.14))}

/* ===================== buttons ===================== */
#ecc-invite .ecc-btn{display:inline-flex; align-items:center; justify-content:center;
  font-family:'Jost',sans-serif; font-weight:400; letter-spacing:.16em; text-transform:uppercase; font-size:.68rem;
  padding:1em 1.9em; border-radius:1px; cursor:pointer; border:1px solid transparent; text-decoration:none;
  transition:transform .3s ease, box-shadow .3s ease, background .3s ease, color .3s ease}
#ecc-invite .ecc-btn:hover{transform:translateY(-2px)}
#ecc-invite .ecc-btn:focus-visible{outline:2px solid var(--gold); outline-offset:3px}
#ecc-invite .ecc-btn-primary{color:#FCF7EE; background:linear-gradient(135deg,#C2A063,var(--gold) 55%,var(--gold-lo));
  box-shadow:0 14px 28px -14px rgba(140,110,63,.6)}
#ecc-invite .ecc-btn-primary:hover{box-shadow:0 18px 34px -14px rgba(140,110,63,.72)}
#ecc-invite .ecc-btn-ghost{color:var(--gold-lo); border-color:var(--line); background:rgba(255,255,255,.35)}
#ecc-invite .ecc-btn-ghost:hover{border-color:var(--gold); background:rgba(176,141,87,.1); color:var(--deep)}
#ecc-invite .ecc-btn-sm{font-size:.62rem; padding:.8em 1.3em}
#ecc-invite .ecc-btn-block{width:100%; padding:1.15em}
#ecc-invite .ecc-btn:disabled{opacity:.55; cursor:default; transform:none}

/* ===================== sections ===================== */
#ecc-invite .ecc-section{position:relative; z-index:1; padding:clamp(52px,8vw,92px) clamp(22px,5vw,40px); text-align:center; border-top:1px solid var(--line-soft)}
#ecc-invite .ecc-eyebrow{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.36em; font-size:.62rem; color:var(--gold-lo); padding-left:.36em}
#ecc-invite .ecc-section-title{font-family:'Cinzel',serif; font-weight:500; text-transform:uppercase; letter-spacing:.1em; font-size:clamp(1.6rem,4.4vw,2.4rem); color:var(--deep); margin-top:8px}

/* slider */
#ecc-invite .ecc-slider{display:flex; align-items:center; gap:12px; justify-content:center; max-width:720px; margin:18px auto 0}
#ecc-invite .ecc-slide-stage{position:relative; flex:1; min-height:168px; display:flex; align-items:center; justify-content:center}
#ecc-invite .ecc-slide{position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center;
  opacity:0; transform:translateY(12px); transition:opacity .7s ease, transform .7s ease; padding:6px; pointer-events:none}
#ecc-invite .ecc-slide.is-active{opacity:1; transform:none; position:relative; pointer-events:auto}
#ecc-invite .ecc-quote-mark{font-family:'Cormorant Garamond',serif; font-size:3.2rem; color:var(--gold); line-height:.2; margin-bottom:16px; opacity:.7}
#ecc-invite .ecc-slide-text{font-size:clamp(1.2rem,2.5vw,1.6rem); font-style:italic; color:var(--ink); max-width:36ch; margin:0 auto 14px}
#ecc-invite .ecc-slide-name{font-family:'Cinzel',serif; font-style:normal; letter-spacing:.2em; text-transform:uppercase; font-size:.64rem; color:var(--gold-lo)}
#ecc-invite .ecc-slide-arrow{flex:0 0 auto; width:44px; height:44px; border-radius:50%; border:1px solid var(--line);
  background:rgba(255,255,255,.4); color:var(--gold-lo); font-size:1.3rem; cursor:pointer; line-height:1; transition:.3s}
#ecc-invite .ecc-slide-arrow:hover{background:var(--gold); color:#FCF7EE; border-color:var(--gold)}
#ecc-invite .ecc-dots{display:flex; gap:9px; justify-content:center; margin-top:18px}
#ecc-invite .ecc-dot{width:7px; height:7px; border-radius:50%; border:none; background:var(--line-soft); cursor:pointer; transition:.3s; padding:0}
#ecc-invite .ecc-dot.is-active{background:var(--gold); transform:scale(1.4)}
#ecc-invite .ecc-wish-form-wrap{max-width:520px; margin:40px auto 0}
#ecc-invite .ecc-mini-label{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.26em; font-size:.6rem; color:var(--gold-lo); margin-bottom:13px}
#ecc-invite .ecc-wish-form{display:flex; flex-direction:column; gap:11px}

/* forms */
#ecc-invite .ecc-rsvp-sub{color:var(--muted); font-style:italic; font-size:1.1rem; margin-top:14px}
#ecc-invite .ecc-form{max-width:560px; margin:30px auto 0; text-align:left}
#ecc-invite .ecc-field{margin-bottom:19px; display:flex; flex-direction:column}
#ecc-invite .ecc-row{display:grid; grid-template-columns:1fr 1fr; gap:14px}
#ecc-invite .ecc-form label,#ecc-invite .ecc-label{font-family:'Jost',sans-serif; text-transform:uppercase; letter-spacing:.2em;
  font-size:.6rem; color:var(--gold-lo); margin-bottom:9px; font-weight:400}
#ecc-invite .ecc-opt{text-transform:none; letter-spacing:0; color:var(--muted); font-size:.72rem}
#ecc-invite .ecc-input{font-family:'Jost',sans-serif; font-weight:300; font-size:.92rem; color:var(--deep);
  background:rgba(255,255,255,.6); border:1px solid var(--line-soft); border-radius:2px; padding:.85em .95em; width:100%; transition:.25s}
#ecc-invite textarea.ecc-input{font-family:'Cormorant Garamond',serif; font-size:1.1rem; resize:vertical}
#ecc-invite .ecc-input::placeholder{color:#b6a282}
#ecc-invite .ecc-input:focus{outline:none; border-color:var(--gold); background:#fff; box-shadow:0 0 0 3px rgba(176,141,87,.14)}
#ecc-invite select.ecc-input{appearance:none; -webkit-appearance:none;
  background-image:linear-gradient(45deg,transparent 50%,var(--gold) 50%),linear-gradient(135deg,var(--gold) 50%,transparent 50%);
  background-position:calc(100% - 18px) center,calc(100% - 13px) center; background-size:5px 5px,5px 5px; background-repeat:no-repeat}
#ecc-invite .ecc-guest-names{display:flex; flex-direction:column; gap:9px; margin-top:11px}
#ecc-invite .ecc-toggle{display:flex; gap:11px; flex-wrap:wrap}
#ecc-invite .ecc-pill{position:relative; cursor:pointer}
#ecc-invite .ecc-pill input{position:absolute; opacity:0; pointer-events:none}
#ecc-invite .ecc-pill span{display:block; font-family:'Jost',sans-serif; font-weight:300; letter-spacing:.04em; font-size:.82rem;
  color:var(--ink); padding:.75em 1.3em; border:1px solid var(--line-soft); border-radius:40px; background:rgba(255,255,255,.5); transition:.25s}
#ecc-invite .ecc-pill input:checked+span{background:linear-gradient(135deg,#C2A063,var(--gold) 55%,var(--gold-lo)); color:#FCF7EE; border-color:var(--gold)}
#ecc-invite .ecc-pill input:focus-visible+span{outline:2px solid var(--gold); outline-offset:2px}
#ecc-invite .ecc-captcha-input{max-width:160px}
#ecc-invite .ecc-hp{position:absolute!important; left:-9999px!important; width:1px; height:1px; opacity:0}
#ecc-invite .ecc-form-note{font-family:'Jost',sans-serif; font-weight:300; font-size:.78rem; margin-top:10px; min-height:1em; color:var(--muted)}
#ecc-invite .ecc-form-note.err{color:#B5654B}
#ecc-invite .ecc-form-note.ok{color:#7E9152}
#ecc-invite .ecc-thankyou{max-width:520px; margin:0 auto; text-align:center; padding:24px 10px}
#ecc-invite .ecc-thankyou-mark{font-size:1.5rem; color:var(--gold); margin-bottom:8px}
#ecc-invite .ecc-thankyou h3{font-family:'Pinyon Script',cursive; font-size:2.8rem; color:var(--gold-lo); font-weight:400}
#ecc-invite .ecc-thankyou p{font-style:italic; color:var(--ink); font-size:1.15rem; margin:6px 0 20px}

/* footer */
#ecc-invite .ecc-footer{position:relative; z-index:1; text-align:center; padding:clamp(46px,7vw,72px) 20px clamp(38px,5vw,56px); border-top:1px solid var(--line-soft)}
#ecc-invite .ecc-foot-names{font-family:'Pinyon Script',cursive; font-size:2.6rem; color:var(--gold-lo); line-height:.9; margin-top:6px}
#ecc-invite .ecc-foot-credit{font-family:'Cinzel',serif; text-transform:uppercase; letter-spacing:.28em; font-size:.6rem; color:var(--muted); margin-top:14px}
#ecc-invite .ecc-foot-credit strong{color:var(--gold-lo); font-weight:600}
#ecc-invite .ecc-admin-dot{position:absolute; right:18px; bottom:16px; width:26px; height:26px; border:none; background:none; color:var(--line-soft); font-size:.7rem; cursor:pointer; transition:.3s}
#ecc-invite .ecc-admin-dot:hover{color:var(--gold)}

/* admin modal */
#ecc-invite .ecc-modal{position:fixed; inset:0; z-index:99999; display:flex; align-items:center; justify-content:center; padding:16px}
#ecc-invite .ecc-modal-backdrop{position:absolute; inset:0; background:rgba(70,52,30,.42); backdrop-filter:blur(4px)}
#ecc-invite .ecc-modal-card{position:relative; width:min(700px,100%); max-height:90vh; overflow:auto;
  background:var(--cream); border:1px solid var(--line); border-radius:6px; padding:clamp(22px,4vw,36px);
  box-shadow:0 50px 100px -30px rgba(70,52,30,.5)}
#ecc-invite .ecc-modal-x{position:absolute; top:12px; right:16px; background:none; border:none; font-size:1.7rem; color:var(--gold-lo); cursor:pointer; line-height:1}
#ecc-invite .ecc-admin-h{font-family:'Cinzel',serif; font-weight:500; text-transform:uppercase; letter-spacing:.08em; font-size:1.5rem; color:var(--deep)}
#ecc-invite .ecc-admin-p{color:var(--muted); font-size:1.02rem; margin:6px 0 16px}
#ecc-invite .ecc-admin-login{max-width:340px; margin:14px auto; text-align:center; display:flex; flex-direction:column; gap:12px}
#ecc-invite .ecc-tabs{display:flex; gap:4px; flex-wrap:wrap; border-bottom:1px solid var(--line-soft); margin-bottom:20px}
#ecc-invite .ecc-tab{font-family:'Jost',sans-serif; font-weight:300; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; color:var(--muted);
  background:none; border:none; border-bottom:2px solid transparent; padding:.7em .9em; cursor:pointer; margin-bottom:-1px}
#ecc-invite .ecc-tab.is-active{color:var(--gold-lo); border-color:var(--gold)}
#ecc-invite .ecc-tabpane{display:none}
#ecc-invite .ecc-tabpane.is-active{display:block}
#ecc-invite .ecc-stat-row{display:flex; gap:10px; margin-bottom:18px; flex-wrap:wrap}
#ecc-invite .ecc-stat{flex:1; min-width:92px; background:rgba(176,141,87,.07); border:1px solid var(--line-soft); border-radius:5px; padding:15px; text-align:center}
#ecc-invite .ecc-stat-n{display:block; font-family:'Cinzel',serif; font-size:1.8rem; font-weight:600; color:var(--gold-lo)}
#ecc-invite .ecc-stat-l{font-family:'Jost',sans-serif; text-transform:uppercase; letter-spacing:.18em; font-size:.54rem; color:var(--muted)}
#ecc-invite .ecc-admin-actions{display:flex; gap:8px; flex-wrap:wrap; margin-bottom:16px}
#ecc-invite .ecc-table-wrap{overflow:auto; border:1px solid var(--line-soft); border-radius:5px}
#ecc-invite .ecc-table{width:100%; border-collapse:collapse; font-family:'Jost',sans-serif; font-weight:300; font-size:.78rem}
#ecc-invite .ecc-table th{background:rgba(176,141,87,.12); text-align:left; padding:10px; color:var(--gold-lo); text-transform:uppercase; letter-spacing:.08em; font-size:.6rem; font-weight:400}
#ecc-invite .ecc-table td{padding:10px; border-top:1px solid var(--line-soft); color:var(--ink)}
#ecc-invite .ecc-empty{color:var(--muted); padding:20px; text-align:center; font-family:'Jost',sans-serif; font-weight:300; font-size:.82rem}
#ecc-invite .ecc-word-row{display:flex; justify-content:space-between; gap:12px; align-items:flex-start; padding:13px 0; border-top:1px solid var(--line-soft)}
#ecc-invite .ecc-word-row strong{color:var(--deep); font-weight:600}
#ecc-invite .ecc-word-row p{font-size:1.05rem; color:var(--ink)}
#ecc-invite .ecc-word-row.hidden{opacity:.4}
#ecc-invite .ecc-mini-btn{flex:0 0 auto; font-family:'Jost',sans-serif; font-size:.6rem; text-transform:uppercase; letter-spacing:.1em;
  border:1px solid var(--line-soft); background:rgba(255,255,255,.5); color:var(--gold-lo); padding:.45em .9em; border-radius:30px; cursor:pointer}
#ecc-invite .ecc-mini-btn:hover{border-color:var(--gold); color:var(--deep)}
#ecc-invite .ecc-set-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:18px}
#ecc-invite .ecc-set-field{display:flex; flex-direction:column; gap:6px}
#ecc-invite .ecc-set-field span{font-family:'Jost',sans-serif; text-transform:uppercase; letter-spacing:.12em; font-size:.56rem; color:var(--gold-lo)}
#ecc-invite .ecc-setup h4{font-family:'Jost',sans-serif; font-weight:400; font-size:.82rem; letter-spacing:.04em; color:var(--gold-lo); margin:18px 0 4px}
#ecc-invite .ecc-setup p{font-size:1.02rem; color:var(--ink); margin-bottom:6px}
#ecc-invite .ecc-setup em{color:var(--deep); font-style:normal}
#ecc-invite .ecc-code{font-family:ui-monospace,Menlo,Consolas,monospace; font-size:.74rem; white-space:pre; margin:8px 0; color:var(--deep)}

/* responsive */
@media (max-width:860px){
  #ecc-invite .ecc-hero{grid-template-columns:1fr; gap:6px}
  #ecc-invite .ecc-hero-art{order:2; margin-top:10px}
  #ecc-invite .ecc-couple{max-width:260px}
  #ecc-invite .ecc-bot.tr,#ecc-invite .ecc-bot.bl{width:clamp(120px,30vw,170px); opacity:.85}
}
@media (max-width:560px){
  #ecc-invite .ecc-row{grid-template-columns:1fr}
  #ecc-invite .ecc-set-grid{grid-template-columns:1fr}
}
/* ===================== one-page navigation ===================== */
#ecc-invite{--nav-h:54px}
html{scroll-behavior:smooth}
#ecc-nav{position:fixed;top:0;left:0;right:0;z-index:9000;height:var(--nav-h);
  display:flex;align-items:center;justify-content:center;
  background:transparent;transition:background .35s ease,box-shadow .35s ease,backdrop-filter .35s ease}
#ecc-nav .ecc-nav-links{display:flex;align-items:center;gap:clamp(20px,3vw,48px)}
#ecc-nav .ecc-nav-brand{position:absolute;left:clamp(14px,3vw,32px);top:50%;transform:translateY(-50%);
  display:flex;align-items:center;opacity:0;pointer-events:none;transition:opacity .35s ease}
#ecc-nav .ecc-nav-brand img{height:36px;width:auto;display:block}
#ecc-nav.scrolled .ecc-nav-brand{opacity:1;pointer-events:auto}
#ecc-nav.scrolled{background:rgba(246,241,234,.94);backdrop-filter:blur(8px);
  box-shadow:0 1px 0 rgba(176,141,87,.22),0 12px 30px -24px rgba(120,90,50,.55)}
#ecc-nav .ecc-nav-links a{font-family:'Jost',sans-serif;text-transform:uppercase;letter-spacing:.2em;font-size:.74rem;
  color:var(--ink);text-decoration:none;position:relative;padding:8px 1px;transition:color .25s ease}
#ecc-nav .ecc-nav-links a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--gold);transition:right .3s ease}
#ecc-nav .ecc-nav-links a:hover,#ecc-nav .ecc-nav-links a.active{color:var(--gold-lo)}
#ecc-nav .ecc-nav-links a:hover::after,#ecc-nav .ecc-nav-links a.active::after{right:0}
#ecc-nav a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
/* drop below the WordPress admin bar when logged in */
body.admin-bar #ecc-nav{top:32px}
@media screen and (max-width:782px){body.admin-bar #ecc-nav{top:46px}}

/* leave room for the fixed bar + anchor offsets */
#ecc-invite.has-nav .ecc-page{padding-top:clamp(78px,9vw,118px)}
#ecc-invite #ecc-top{scroll-margin-top:var(--nav-h)}
#ecc-invite .ecc-section{scroll-margin-top:var(--nav-h)}

/* ===================== back to top ===================== */
#ecc-top-btn{position:fixed;right:22px;bottom:22px;z-index:9000;width:46px;height:46px;border-radius:50%;
  border:1px solid var(--gold);background:linear-gradient(135deg,#C2A063,var(--gold) 55%,var(--gold-lo));
  color:#FCF7EE;cursor:pointer;display:flex;align-items:center;justify-content:center;
  opacity:0;visibility:hidden;transform:translateY(12px);
  transition:opacity .3s ease,transform .3s ease,visibility .3s ease,box-shadow .3s ease;
  box-shadow:0 12px 26px -12px rgba(140,110,63,.7)}
#ecc-top-btn.show{opacity:1;visibility:visible;transform:none}
#ecc-top-btn:hover{transform:translateY(-3px);box-shadow:0 16px 32px -12px rgba(140,110,63,.8)}
#ecc-top-btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
#ecc-top-btn svg{width:18px;height:18px}

@media (max-width:600px){
  #ecc-nav .ecc-nav-links{gap:16px}
  #ecc-nav .ecc-nav-links a{font-size:.64rem;letter-spacing:.12em}
  #ecc-nav .ecc-nav-brand{display:none}
  #ecc-top-btn{right:16px;bottom:16px;width:42px;height:42px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* ===================== remove white space around the invitation ===================== */
/* This stylesheet only loads on the page with the [ecc_invitation] shortcode,
   so these page-level tweaks do not affect the rest of the site. They make any
   space the theme leaves around the invitation blend into the cream instead of
   showing as white, and trim the theme's default top/bottom content padding. */
html, body{background:#F6F1ED !important;}
body #page, body .site, body #wrapper, body #content, body .site-content,
body .content-area, body main, body .entry-content, body .page-content,
body .elementor, body .elementor-page, body .e-con, body .e-con-inner{
  background-color:#F6F1ED !important;
}
body .entry-content, body .page-content, body .site-content, body .content-area, body main{
  padding-top:0 !important; padding-bottom:0 !important;
  margin-top:0 !important; margin-bottom:0 !important;
}
body.elementor-page .elementor-section,
body.elementor-page .elementor-widget-shortcode,
body.elementor-page .elementor-widget-wrap{
  padding-top:0 !important; padding-bottom:0 !important;
}
