/* "Contact Me" modal that replaces the (offline) checkout flow */
#agp-contact-overlay{
  position:fixed; inset:0; z-index:99999; display:none;
  background:rgba(20,20,20,.55); backdrop-filter:saturate(120%) blur(2px);
  align-items:center; justify-content:center; padding:24px;
}
#agp-contact-overlay.open{display:flex;}
#agp-contact-modal{
  background:#fff; color:#111; width:100%; max-width:460px; border-radius:2px;
  box-shadow:0 24px 80px rgba(0,0,0,.35); padding:34px 34px 30px;
  font-family:"futura-pt","Futura","Jost","Avenir Next",sans-serif;
  animation:agp-pop .18s ease-out;
}
@keyframes agp-pop{from{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}
#agp-contact-modal h2{
  margin:0 0 4px; font-size:22px; font-weight:600; letter-spacing:.02em; text-transform:uppercase;
}
#agp-contact-modal .agp-sub{margin:0 0 20px; font-size:13px; line-height:1.5; color:#666;}
#agp-contact-modal .agp-sub b{color:#111;font-weight:600;}
#agp-contact-modal label{display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#888; margin:14px 0 5px;}
#agp-contact-modal input,#agp-contact-modal textarea{
  width:100%; box-sizing:border-box; border:1px solid #ddd; border-radius:2px;
  padding:11px 12px; font-size:14px; font-family:inherit; color:#111; background:#fafafa;
}
#agp-contact-modal input:focus,#agp-contact-modal textarea:focus{outline:none;border-color:#111;background:#fff;}
#agp-contact-modal textarea{resize:vertical; min-height:84px;}
#agp-contact-actions{display:flex; gap:10px; margin-top:22px;}
#agp-contact-modal button{
  flex:1; cursor:pointer; border:none; border-radius:2px; padding:13px 16px;
  font-size:12px; letter-spacing:.1em; text-transform:uppercase; font-family:inherit; font-weight:600;
}
#agp-send{background:#111; color:#fff;}
#agp-send:hover{background:#333;}
#agp-cancel{background:#eee; color:#333;}
#agp-cancel:hover{background:#e2e2e2;}
#agp-contact-close{position:absolute;}
#agp-contact-modal .agp-x{position:relative;float:right;margin:-18px -14px 0 0;cursor:pointer;font-size:22px;line-height:1;color:#bbb;}
#agp-contact-modal .agp-x:hover{color:#111;}
#agp-contact-thanks{display:none; text-align:center; padding:8px 0 2px;}
#agp-contact-thanks h2{margin-bottom:10px;}
#agp-contact-thanks p{font-size:14px;color:#555;line-height:1.6;margin:0 0 18px;}

/* ===================== Nice Contact page ===================== */
.agp-hp{position:absolute!important;left:-9999px!important;height:0;overflow:hidden;}
.agp-has-contact-form .sqs-block-form,
.agp-has-contact-form .form-block,
.agp-has-contact-form form:not(.agp-contact-form){display:none!important;}
.agp-contact-page{max-width:620px;margin:0 auto;padding:8px 4px 60px;
  font-family:"proxima-nova","Montserrat","Futura",sans-serif;}
.agp-cp-title{font-size:34px;font-weight:700;letter-spacing:.01em;margin:0 0 10px;}
.agp-cp-sub{font-size:15px;line-height:1.6;color:#777;margin:0 0 28px;max-width:520px;}
html.agp-dark .agp-cp-sub{color:#9a9a9a;}
.agp-contact-form .agp-field{margin-bottom:18px;}
.agp-contact-form label{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:#999;margin:0 0 7px;}
.agp-contact-form input,.agp-contact-form textarea{
  width:100%;box-sizing:border-box;border:1px solid #ddd;border-radius:3px;
  padding:13px 14px;font-size:15px;font-family:inherit;background:#fafafa;color:#111;
  transition:border-color .2s, background .2s;}
.agp-contact-form textarea{resize:vertical;min-height:120px;}
.agp-contact-form input:focus,.agp-contact-form textarea:focus{outline:none;border-color:#111;background:#fff;}
html.agp-dark .agp-contact-form input,html.agp-dark .agp-contact-form textarea{
  background:#1b1b1b;border-color:#333;color:#eee;}
html.agp-dark .agp-contact-form input:focus,html.agp-dark .agp-contact-form textarea:focus{
  border-color:#fff;background:#222;}
.agp-cp-send{margin-top:8px;cursor:pointer;border:none;border-radius:3px;
  padding:16px 40px;font-family:inherit;font-size:13px;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;background:#111;color:#fff;transition:opacity .2s,transform .2s;}
.agp-cp-send:hover{opacity:.85;transform:translateY(-1px);}
html.agp-dark .agp-cp-send{background:#fff;color:#111;}
.agp-cp-thanks{padding:40px 0;}
.agp-cp-thanks h2{font-size:26px;font-weight:700;margin:0 0 10px;}
.agp-cp-thanks p{font-size:15px;color:#777;line-height:1.6;}
html.agp-dark .agp-cp-thanks p{color:#9a9a9a;}
@media (max-width:767px){ .agp-contact-page{padding:4px 2px 44px;} .agp-cp-title{font-size:28px;} }

/* kill browser/1Password autofill pink/yellow tint on form fields */
.agp-contact-form input:-webkit-autofill,.agp-contact-form textarea:-webkit-autofill,
#agp-form input:-webkit-autofill,#agp-form textarea:-webkit-autofill{
  -webkit-box-shadow:0 0 0 100px #fafafa inset !important;-webkit-text-fill-color:#111 !important;
  caret-color:#111;transition:background-color 99999s ease-out 0s;}
html.agp-dark .agp-contact-form input:-webkit-autofill,html.agp-dark .agp-contact-form textarea:-webkit-autofill{
  -webkit-box-shadow:0 0 0 100px #1b1b1b inset !important;-webkit-text-fill-color:#eee !important;}
