/* The capture form and the gate. Loaded by every page that carries either.
   Colours and radii come from the site: #0ABCC6, #FBF9F4, #5C4285, #2E2E2E. */

.dfpf{background:#FBF9F4;border:1px solid rgba(46,46,46,.07);border-radius:26px;padding:34px 30px;max-width:520px;}
.dfpf--compact{padding:26px 24px;}
.dfpf h2{margin:0 0 10px;font-family:var(--font-heading),Georgia,serif;font-weight:400;font-size:clamp(24px,3.2vw,32px);line-height:1.14;}
.dfpf p.dfpf-lead{margin:0 0 22px;font-size:16.5px;color:rgba(46,46,46,.78);}
.dfpf label{display:block;font-size:14.5px;font-weight:600;color:#2E2E2E;margin:0 0 6px;}
.dfpf .dfpf-field{margin:0 0 16px;}
.dfpf input{width:100%;font-family:inherit;font-size:16.5px;color:#2E2E2E;background:#fff;border:1px solid rgba(46,46,46,.16);border-radius:14px;padding:13px 15px;line-height:1.4;}
.dfpf input::placeholder{color:rgba(46,46,46,.38);}
.dfpf input:focus{outline:2px solid #0ABCC6;outline-offset:1px;border-color:#0ABCC6;}
.dfpf input[aria-invalid='true']{border-color:#B4453C;}
.dfpf .dfpf-hint{display:block;margin:6px 0 0;font-size:13.5px;color:rgba(46,46,46,.6);}
.dfpf .dfpf-error{display:block;margin:6px 0 0;font-size:13.5px;color:#B4453C;font-weight:600;}
.dfpf button{width:100%;margin:8px 0 0;font-family:inherit;font-size:17px;font-weight:700;color:#0D0D0D;background:#0ABCC6;border:0;border-radius:999px;padding:15px 28px;cursor:pointer;}
.dfpf button:hover{background:#0ABCC6;box-shadow:inset 0 0 0 99px rgba(13,13,13,.10);}
.dfpf button:focus-visible{outline:2px solid #5C4285;outline-offset:2px;}
.dfpf button[disabled]{opacity:.6;cursor:default;}
.dfpf .dfpf-legal{margin:16px 0 0;font-size:13px;line-height:1.6;color:rgba(46,46,46,.62);}
.dfpf .dfpf-legal a{color:#056B75;}
.dfpf-trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden;}
.dfpf-done h2{margin:0 0 12px;}
.dfpf-done p{margin:0 0 14px;font-size:16.5px;color:rgba(46,46,46,.82);}
.dfpf-done .dfpf-mark{width:52px;height:5px;background:#0ABCC6;border-radius:999px;margin:0 0 18px;}

.dfpg-locked{background:#FBF9F4;border:1px solid rgba(46,46,46,.07);border-radius:22px;padding:30px 28px;}
.dfpg-locked .dfpf{background:transparent;border:0;padding:0;max-width:none;}
.dfpg-note{margin:0 0 20px;font-size:16px;line-height:1.6;color:rgba(46,46,46,.78);}
.dfpg-wait{margin:0;font-size:15.5px;color:rgba(46,46,46,.55);}
.dfpg-back{margin:18px 0 0;font-size:15.5px;font-weight:600;}

.dfpg-hello{background:rgba(10,188,198,.12);border-radius:18px;padding:16px 20px;margin:0 0 26px;}
.dfpg-hello p{margin:0;font-size:16px;color:#2E2E2E;}
.dfpg-hello .dfpg-out{margin:6px 0 0;font-size:14px;}
.dfpg-hello .dfpg-out a{color:rgba(46,46,46,.62);}


/* The capture screen. It replaces the page for anyone without an account. */
.dfpg-screen{padding:112px 20px 70px;min-height:82vh;display:flex;align-items:flex-start;}
.dfpg-screen-in{max-width:520px;margin:0 auto;width:100%;}
.dfpg-eyebrow{margin:0 0 14px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;color:#056B75;background:rgba(10,188,198,.14);padding:5px 12px;border-radius:999px;display:inline-block;}
.dfpg-screen h1{margin:0 0 14px;font-family:var(--font-heading),Georgia,serif;font-weight:400;font-size:clamp(30px,5vw,44px);line-height:1.12;}
.dfpg-why{margin:0 0 26px;font-size:17.5px;line-height:1.55;color:rgba(46,46,46,.78);}
.dfpg-note{margin:0 0 26px;font-size:17px;line-height:1.55;color:#5C4285;font-weight:600;}
.dfpg-calm{margin:16px 0 0;font-size:14.5px;line-height:1.6;color:rgba(46,46,46,.6);}
.dfpg-link{font-size:17px;font-weight:700;}
.dfpg-screen .dfpf{padding:0;background:transparent;border:0;max-width:none;}
@media (max-width:520px){.dfpg-screen{padding:104px 18px 60px;}}

/* The phone field: country picker, then the number. */
.dfpf .dfpf-phone{display:flex;gap:8px;align-items:stretch;}
.dfpf .dfpf-phone input{flex:1 1 auto;min-width:0;}
.dfpf .dfpf-code{flex:0 0 auto;max-width:118px;font-family:inherit;font-size:16.5px;color:#2E2E2E;background:#fff;border:1px solid rgba(46,46,46,.16);border-radius:14px;padding:13px 8px 13px 12px;line-height:1.4;cursor:pointer;}
.dfpf .dfpf-code:focus{outline:2px solid #0ABCC6;outline-offset:1px;border-color:#0ABCC6;}
