.dh-pop{position:fixed;inset:0;z-index:9999;display:none;align-items:var(--pop-valign,center);justify-content:var(--pop-halign,center);padding:20px;}
.dh-pop.is-open{display:flex;}
.dh-pop__scrim{position:absolute;inset:0;background:rgba(20,13,14,.55);opacity:0;transition:opacity .25s ease;}
.dh-pop.is-open .dh-pop__scrim{opacity:1;}

.dh-pop__card{position:relative;width:100%;max-width:var(--pop-w,460px);max-height:calc(100vh - 40px);overflow-y:auto;background:var(--pop-bg,#fcfaf6);color:var(--pop-text,#140d0e);border-radius:var(--pop-radius,14px);transform:translateY(12px) scale(.98);opacity:0;transition:transform .28s ease,opacity .28s ease;}
.dh-pop.is-open .dh-pop__card{transform:none;opacity:1;}
.dh-pop--border .dh-pop__card{box-shadow:inset 0 0 0 1px var(--pop-border,rgba(20,13,14,.15));}
.dh-pop--shadow .dh-pop__card{box-shadow:0 24px 60px rgba(0,0,0,.28);}
.dh-pop--border.dh-pop--shadow .dh-pop__card{box-shadow:inset 0 0 0 1px var(--pop-border,rgba(20,13,14,.15)),0 24px 60px rgba(0,0,0,.28);}

.dh-pop__close{position:absolute;top:10px;right:10px;z-index:2;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:0;border-radius:999px;background:rgba(252,250,246,.85);color:#140d0e;cursor:pointer;padding:0;}
.dh-pop__close:hover{background:#fcfaf6;}
.dh-pop__close svg{width:15px;height:15px;fill:currentColor;pointer-events:none;}

.dh-pop__media{display:block;width:100%;}
.dh-pop__media img{display:block;width:100%;height:var(--pop-img-h,180px);object-fit:cover;}

.dh-pop__body{padding:28px 28px 30px;text-align:center;}
.dh-pop__heading{font-family:"Clever",Georgia,serif;font-weight:700;font-size:calc(32px * var(--h-scale-m,100) / 100);line-height:1.08;letter-spacing:.5px;color:var(--pop-heading,var(--pop-text,#140d0e));margin:0 0 10px;}
.dh-pop__text{font-family:"GalanoGrotesque",sans-serif;font-weight:400;font-size:15px;line-height:23px;margin:0 0 18px;}
.dh-pop__text p{margin:0 0 10px;}
.dh-pop__text p:last-child{margin-bottom:0;}

.dh-pop__sr{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;}
.dh-pop__form{display:flex;flex-direction:column;gap:10px;}
.dh-pop__input{width:100%;padding:14px 16px;font-family:"GalanoGrotesque",sans-serif;font-size:15px;color:var(--pop-text,#140d0e);background:#fff;border:1px solid rgba(20,13,14,.2);border-radius:10px;outline:none;}
.dh-pop__input:focus{border-color:var(--pop-heading,#dd4011);}
.dh-pop__input[aria-invalid="true"]{border-color:#c0341d;}

.dh-pop a.dh-pop__btn,.dh-pop button.dh-pop__btn{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:14px 28px;font-family:"GalanoGrotesque",sans-serif;font-weight:700;font-size:14px;letter-spacing:1px;text-transform:uppercase;text-decoration:none;border:0;border-radius:999px;cursor:pointer;color:var(--pop-btn-text,#fcfaf6);background:var(--pop-btn-bg,#140d0e);transition:opacity .2s ease;}
.dh-pop button.dh-pop__btn:hover{opacity:.85;}
.dh-pop button.dh-pop__btn[disabled]{opacity:.6;cursor:default;}

.dh-pop__error{display:none;font-family:"GalanoGrotesque",sans-serif;font-size:13px;line-height:18px;color:#c0341d;margin:2px 0 0;}
.dh-pop__error.is-shown{display:block;}
.dh-pop__note{font-family:"GalanoGrotesque",sans-serif;font-size:12px;line-height:17px;opacity:.7;margin:12px 0 0;}

.dh-pop__success{display:none;}
/* On success, hide every block in the body except the success panel. The
   success panel reuses .dh-pop__heading / __text / __note, so hiding by
   class alone also hid the success copy. Direct children only. */
.dh-pop.is-done .dh-pop__body > *:not(.dh-pop__success){display:none;}
.dh-pop.is-done .dh-pop__success{display:block;}

.dh-pop button.dh-pop__claim{width:100%;margin-top:4px;}
.dh-pop__code{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 6px;padding:14px 16px;border:2px dashed var(--pop-heading,#dd4011);border-radius:12px;}
.dh-pop__code-value{font-family:"GalanoGrotesque",sans-serif;font-weight:700;font-size:20px;letter-spacing:2px;color:var(--pop-heading,#dd4011);}
.dh-pop__copy{flex:0 0 auto;padding:8px 14px;font-family:"GalanoGrotesque",sans-serif;font-weight:700;font-size:12px;letter-spacing:1px;text-transform:uppercase;border:0;border-radius:999px;cursor:pointer;color:var(--pop-btn-text,#fcfaf6);background:var(--pop-btn-bg,#140d0e);}
.dh-pop__copy:hover{opacity:.85;}

@media (min-width:750px){
  .dh-pop__body{padding:34px 34px 36px;}
  .dh-pop__heading{font-size:calc(38px * var(--h-scale,100) / 100);}
  .dh-pop__form{flex-direction:row;flex-wrap:wrap;}
  .dh-pop__input{flex:1 1 200px;}
  .dh-pop button.dh-pop__btn{width:auto;flex:0 0 auto;}
  .dh-pop__error{flex:1 1 100%;}
}

@media (prefers-reduced-motion:reduce){
  .dh-pop__scrim,.dh-pop__card{transition:none;}
}
