html.p420-agegate-open, body.p420-agegate-open { overflow: hidden !important; }
.p420-agegate { display:none; position:fixed; inset:0; z-index:2147483000; align-items:center; justify-content:center; padding:20px; box-sizing:border-box; }
.p420-agegate.is-visible { display:flex; }
.p420-agegate__backdrop { position:absolute; inset:0; background:rgba(0,0,0,.88); }
.p420-agegate__dialog { position:relative; z-index:1; width:min(580px,100%); background:#fff; color:#414141; box-shadow:0 12px 45px rgba(0,0,0,.38); font-family:Arial,sans-serif; }
.p420-agegate__content { padding:18px 20px 20px; font-size:13px; line-height:1.5; }
.p420-agegate__content p { margin:8px 0 20px; }
.p420-agegate__action { text-align:center; padding:1px 0 0; }
.p420-agegate__button { appearance:none; border:0; border-radius:0; background:#e85b00; color:#fff; font-size:14px; line-height:1; font-weight:700; padding:14px 24px; min-height:40px; cursor:pointer; text-transform:uppercase; }
.p420-agegate__button:hover,.p420-agegate__button:focus { background:#c94f00; color:#fff; outline:2px solid rgba(232,91,0,.25); outline-offset:2px; }
.p420-agegate__footer { border-top:1px solid #e2e2e2; padding:17px 20px 18px; text-align:center; }
.p420-agegate__footer p { margin:4px 0 10px; font-size:13px; color:#555; }
.p420-agegate__footer h2 { margin:0; color:#222; font-size:18px; line-height:1.3; font-weight:700; }
@media (max-width:600px) {
  .p420-agegate { padding:12px; align-items:center; }
  .p420-agegate__content { padding:16px; font-size:13px; }
  .p420-agegate__content p { margin:5px 0 16px; }
  .p420-agegate__button { width:100%; padding:15px 12px; }
  .p420-agegate__footer { padding:15px 14px; }
  .p420-agegate__footer h2 { font-size:16px; }
}
