.cph-email-popup{box-sizing:border-box;position:fixed;z-index:2147482000;width:min(var(--cph-popup-desktop-width,680px),calc(100vw - 32px));max-height:min(92dvh,850px);overflow:auto;border:0;border-radius:14px;padding:0;margin:auto;box-shadow:0 20px 75px rgba(0,0,0,.32);color:#171717;background:#f7f5f0}
.cph-email-popup:not([open]){display:none!important}
.cph-email-popup::backdrop{background:rgba(12,12,12,.63)}
.cph-email-popup .cph-popup-body{min-width:0;grid-area:body}
.cph-email-popup .cph-email-form{border:0;max-width:none;width:100%;min-width:0;padding:30px 28px;background:transparent;border-radius:0}
/* The modal initially focuses its semantic heading for keyboard/screen-reader
   navigation instead of the email input (no mobile keyboard). Unlike an
   interactive control, this programmatically focused heading has no visible
   focus ring. Keep visible focus indicators on buttons, links and inputs. */
.cph-email-popup .cph-email-form [data-cph-popup-heading]:focus,
.cph-email-popup .cph-email-form [data-cph-popup-heading]:focus-visible{outline:none!important;box-shadow:none!important}
/* Visually discreet 32px control inside a 44x44px accessible hit target. */
.cph-email-popup .cph-popup-close{position:absolute;z-index:2;top:7px;right:7px;box-sizing:border-box;display:grid;place-items:center;isolation:isolate;border:0;border-radius:50%;padding:0;background:transparent;color:#171717;width:44px;height:44px;min-width:44px;min-height:44px;line-height:1;cursor:pointer;box-shadow:none;transition:color .16s ease}
.cph-email-popup .cph-popup-close::before{content:"";position:absolute;z-index:-1;inset:6px;border:1px solid rgba(23,23,23,.13);border-radius:50%;background:rgba(23,23,23,.06);transition:background .16s ease,border-color .16s ease}
.cph-email-popup .cph-popup-close:hover::before{background:rgba(23,23,23,.13);border-color:rgba(23,23,23,.22)}
.cph-email-popup .cph-popup-close svg{display:block;width:18px;height:18px;stroke:currentColor;pointer-events:none}
.cph-email-popup.cph-popup--theme-dark .cph-popup-close{color:#f7f5f0}
.cph-email-popup.cph-popup--theme-dark .cph-popup-close::before{background:rgba(247,245,240,.10);border-color:rgba(247,245,240,.23)}
.cph-email-popup.cph-popup--theme-dark .cph-popup-close:hover::before{background:rgba(247,245,240,.20);border-color:rgba(247,245,240,.38)}
.cph-email-popup .cph-popup-close:focus-visible,.cph-popup-test-bar :focus-visible{outline:3px solid #a76538;outline-offset:2px}
.cph-popup-media{grid-area:media;min-width:0;overflow:hidden}
.cph-popup-media img{display:block;width:100%;height:100%;min-height:100%;object-fit:cover}
.cph-popup-media--mobile{display:none}
.cph-popup--desktop-split.cph-popup--desktop-image{display:grid;grid-template-columns:minmax(0, 43%) minmax(0, 57%);grid-template-areas:'media body'}
.cph-popup--desktop-compact .cph-popup-media--desktop{display:none}
.cph-popup--desktop-position-bottom{margin:auto auto 20px}
.cph-popup--theme-dark{background:#171717;color:#fff}
.cph-popup--theme-dark .cph-email-form{color:#fff}
.cph-email-popup.cph-popup--theme-dark .cph-email-form label{color:#f7f5f0!important}
.cph-popup--theme-dark .cph-email-form h3{color:#fff}
.cph-popup--theme-dark .cph-email-form .cph-email-description{color:#e3ddd5}
/* Explicit consent colors: Astra/global label selectors can otherwise make text black. */
.cph-email-popup .cph-email-form label.cph-email-consent,
.cph-email-popup .cph-email-form label.cph-email-consent span{color:#171717!important;font-weight:400;line-height:1.5}
.cph-email-popup.cph-popup--theme-dark .cph-email-form label.cph-email-consent,
.cph-email-popup.cph-popup--theme-dark .cph-email-form label.cph-email-consent span{color:#f7f5f0!important}
.cph-email-popup .cph-email-form label.cph-email-consent input[type="checkbox"]{box-sizing:border-box;appearance:auto;-webkit-appearance:checkbox;width:18px;height:18px;min-width:18px;min-height:18px;margin:2px 0 0;flex:0 0 18px;accent-color:#a76538;cursor:pointer}
.cph-email-popup.cph-popup--theme-dark .cph-email-form .cph-email-privacy a{color:#efc4a4;text-decoration:underline;text-underline-offset:2px}
.cph-email-popup.cph-popup--theme-dark .cph-email-form .cph-email-privacy a:hover{color:#fff}
.cph-email-popup.cph-popup--theme-dark .cph-email-form .cph-email-result.is-error{color:#ffb4b4}
.cph-popup-test-bar{position:fixed;z-index:2147481900;bottom:12px;left:12px;max-width:calc(100vw - 24px);display:flex;flex-wrap:wrap;align-items:center;gap:8px;background:#171717;color:#fff;border-radius:9px;padding:10px 12px;font:12px/1.4 system-ui,sans-serif;box-shadow:0 5px 22px #0004}
.cph-popup-test-bar button{background:#a76538;color:#fff;border:0;border-radius:5px;padding:7px;cursor:pointer}
.cph-popup-test-bar a{color:#fff;text-decoration:underline}
.cph-popup-test-bar .cph-test-mode-choice{padding:6px 9px;border:1px solid #aaa;border-radius:5px;text-decoration:none}
.cph-popup-test-bar .cph-test-mode-choice[aria-current=page]{background:#f7f5f0;border-color:#f7f5f0;color:#171717;font-weight:700}
@media(max-width:767px){
  .cph-email-popup{width:min(var(--cph-popup-mobile-width,94%),calc(100vw - 14px));max-height:calc(100dvh - 24px);border-radius:12px}
  .cph-email-popup .cph-email-form{padding:28px 16px 17px}
  .cph-email-popup .cph-email-form h3{padding-right:36px}
  .cph-popup-media--desktop{display:none!important}
  .cph-popup-media--mobile{display:block}
  .cph-popup--mobile-compact .cph-popup-media--mobile{display:none!important}
  .cph-email-popup.cph-popup--mobile-split,.cph-email-popup.cph-popup--mobile-compact{display:block}
  .cph-popup--mobile-split.cph-popup--mobile-image .cph-popup-media--mobile{height:130px}
  .cph-popup--mobile-position-bottom{margin:auto auto 8px}
  .cph-popup-test-bar{font-size:11px;bottom:5px;left:5px}
}
@media(prefers-reduced-motion:reduce){.cph-email-popup{scroll-behavior:auto}}

/* V0.5.5 — A single, user-dismissible way to voluntarily reopen a dismissed offer. */
.cph-popup-reminder{box-sizing:border-box;position:fixed;z-index:2147481000;top:50%;right:0;transform:translateY(-50%);width:min(270px,calc(100vw - 30px));display:flex;align-items:stretch;gap:0;background:#171717;color:#f7f5f0;border-left:3px solid #a76538;border-radius:12px 0 0 12px;box-shadow:0 8px 35px rgba(0,0,0,.25);font-family:Manrope,system-ui,sans-serif}
.cph-popup-reminder[hidden]{display:none!important}
.cph-popup-reminder-open{flex:1;min-width:0;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;gap:2px;text-align:left;border:0;background:transparent!important;color:#f7f5f0!important;padding:11px 10px 11px 16px;cursor:pointer;line-height:1.35}
.cph-popup-reminder-open:hover{background:rgba(247,245,240,.09)!important}
.cph-popup-reminder-label{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;font-weight:700;font-size:13px;overflow-wrap:anywhere}
.cph-popup-reminder-action{font-size:12px;color:#efbd96;text-decoration:underline;text-underline-offset:2px}
.cph-popup-reminder-dismiss{display:grid;place-items:center;flex:0 0 44px;align-self:center;min-height:44px;border:0!important;background:transparent!important;color:#f7f5f0!important;font-size:24px;line-height:1;cursor:pointer;box-shadow:none!important}
.cph-popup-reminder-dismiss:hover{color:#efbd96!important}
.cph-popup-reminder button:focus-visible{outline:3px solid #efbd96!important;outline-offset:-4px}
@media(min-width:768px){.cph-popup-reminder[data-cph-reminder-desktop="0"]{display:none!important}}
@media(max-width:767px){
  .cph-popup-reminder{top:auto;bottom:calc(10px + env(safe-area-inset-bottom,0px));left:12px;right:12px;transform:none;width:auto;max-width:480px;margin:0 auto;border-left:0;border-top:3px solid #a76538;border-radius:12px;min-height:58px}
  .cph-popup-reminder-open{padding:8px 8px 8px 13px}
  .cph-popup-reminder-label{font-size:12px}
  .cph-popup-reminder-action{font-size:11px}
  .cph-popup-reminder[data-cph-reminder-mobile="0"]{display:none!important}
  /* The test toolbar sits below the reminder without covering its controls. */
  body:has(.cph-popup-test-bar) .cph-popup-reminder{bottom:calc(64px + env(safe-area-inset-bottom,0px))}
}

/* V0.5.6 — Full-width promotional reminder, inspired by a mobile bottom offer strip.
   The original compact bar remains available by choosing the compact style. */
.cph-popup-reminder-icon,.cph-popup-reminder-chevron{display:none}
@media(max-width:767px){
  .cph-popup-reminder[data-cph-reminder-mobile-style="off"]{display:none!important}
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"]{
    box-sizing:border-box;top:auto;left:0;right:0;bottom:0;transform:none;
    width:100%;max-width:none;margin:0;border:0;border-radius:0;
    background:#50311e;color:#fff;box-shadow:0 -3px 18px rgba(0,0,0,.22);
    min-height:60px;padding:0 0 env(safe-area-inset-bottom,0px);
  }
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-open{
    flex:1;min-width:0;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;
    gap:12px;padding:11px 3px 11px 16px;line-height:1.3;text-align:left;min-height:60px;
  }
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-icon,
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-chevron{
    display:flex;align-items:center;justify-content:center;flex:0 0 auto;color:#f7f5f0;
  }
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-icon svg{width:25px;height:25px}
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-chevron svg{width:21px;height:21px}
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-label{
    flex:1;min-width:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;
    max-height:2.6em;overflow:hidden;color:#fff;font-weight:750;font-size:clamp(12px,3.65vw,16px);
    letter-spacing:.005em;overflow-wrap:anywhere;
  }
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-action{display:none}
  .cph-popup-reminder[data-cph-reminder-mobile-style="banner"] .cph-popup-reminder-dismiss{
    display:grid;place-items:center;flex:0 0 48px;height:48px;min-height:48px;
    padding:0;margin-right:4px;border:0;color:#fff!important;font-size:29px;
  }
  body:has(.cph-popup-test-bar) .cph-popup-reminder[data-cph-reminder-mobile-style="banner"]{
    bottom:calc(64px + env(safe-area-inset-bottom,0px));padding-bottom:0;
  }
}
