
:root{--n:#030819;--n2:#0d1b40;--g:#e6b960;--b:#1f68ff;--light:#f8f8ff;--muted:#c9cee2}
body.pf-membership{background:radial-gradient(ellipse at 60% 4%,#13295f,var(--n) 50%);color:var(--light);font:16px/1.55 Arial,sans-serif;margin:0;min-height:100vh}
.pf-membership *{box-sizing:border-box}.pf-membership a{color:inherit}.pf-nav{background:#030713e6;border-bottom:1px solid #ffffff22;display:flex;align-items:center;justify-content:space-between;padding:16px max(20px,calc((100vw - 1100px)/2));gap:14px}
.pf-nav a{text-decoration:none;font-weight:bold;letter-spacing:.11em;color:var(--g)}.pf-nav span{color:#8aaeff}.pf-shell{max-width:1020px;margin:auto;padding:58px 20px}.pf-title{font-family:Georgia,serif;font-weight:normal;font-size:clamp(32px,4vw,52px);margin:4px 0}.pf-eyebrow{color:var(--g);text-transform:uppercase;letter-spacing:.28em;font-size:12px}.pf-lead{color:var(--muted);max-width:750px}.pf-panel{background:#0e1630;border:1px solid #c99e5466;border-radius:17px;padding:30px;margin-top:27px;box-shadow:0 18px 60px #0005}
.pf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.pf-field label{display:block;font-size:14px;margin:0 0 6px;color:#e7e8f5}.pf-field input{width:100%;background:#090e22;border:1px solid #6c7caa;border-radius:8px;color:#fff;font:16px Arial;padding:14px 15px}.pf-field input[type=file]{font-size:14px}.pf-check{display:flex;gap:10px;align-items:flex-start;margin:18px 0;color:#e4e7fb}.pf-check input{margin-top:6px}.pf-errors{background:#4b1c28;border:1px solid #e7828b;color:#ffe8ec;border-radius:8px;padding:16px;margin-bottom:22px}.pf-btn{display:inline-block;background:linear-gradient(120deg,#f7cf75,#c9923c);color:#071228!important;border:0;padding:16px 25px;border-radius:8px;font-weight:bold;cursor:pointer;text-decoration:none}.pf-btn-alt{background:transparent;color:#fafafa!important;border:1px solid #8e9dcb}.pf-note{font-size:13px;color:#bbc2dc}.pf-subtotal{display:flex;justify-content:space-between;border-bottom:1px solid #65739455;padding:13px 0}.pf-success{padding:15px;border-radius:8px;background:#123e38;border:1px solid #329982;color:#c9fdef}.pf-warn{background:#37301b;border:1px solid #bf9b56;border-radius:8px;padding:15px}.pf-footer{text-align:center;color:#aab5d4;padding:45px 15px;border-top:1px solid #ffffff2b}.pf-btn-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:25px}.pf-photo-preview{width:180px;height:130px;object-fit:contain}.pf-member-picture{height:290px;max-width:100%;border-radius:8px}.pf-quiet{font-size:12px;color:#aab5d4} @media(max-width:650px){.pf-grid{grid-template-columns:1fr}.pf-nav{padding:18px 12px}.pf-panel{padding:20px}.pf-shell{padding:40px 13px}}

/* Pure Flavor age verification – fully styled, accessible date selectors. */
.pf-field select{width:100%;background:#090e22;border:1px solid #6c7caa;border-radius:8px;color:#fff;font:16px Arial,sans-serif;padding:14px 12px;min-width:0}
.pf-age-fieldset legend{max-width:100%}
@media(max-width:460px){.pf-age-fieldset .pf-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important}.pf-age-fieldset .pf-field select{padding:12px 4px;font-size:13px}}

/* Pure Flavor 21+ application form v2 — form-only enhancements. */
.pf-membership [hidden]{display:none!important}
.pf-gold,.pf-required{color:#f5c871}
.pf-application-panel{padding:clamp(22px,3.4vw,38px)}
.pf-form-heading{display:flex;justify-content:space-between;gap:22px;align-items:center;margin-bottom:26px}
.pf-form-heading h2{font-size:clamp(25px,2.5vw,32px);line-height:1.22;margin:7px 0 6px}
.pf-intro{font-size:14px;color:#bbc5dc;margin:0}
.pf-membership-chip{border:1px solid #bd9656;border-radius:100px;background:rgba(220,170,80,.11);color:#efc778;padding:10px 15px;font-size:13px;font-weight:700;white-space:nowrap}
.pf-main-fields{gap:22px 20px}
.pf-membership .pf-field label{color:#e6eafa;font-size:14px;font-weight:600;letter-spacing:.01em;margin-bottom:9px}
.pf-membership .pf-field input:not([type=file]),.pf-membership .pf-field select{appearance:none;-webkit-appearance:none;width:100%;min-height:55px;border:1px solid #687ba5;border-radius:10px;background-color:#090f26;color:#f5f7ff;font-family:inherit;font-size:16px;line-height:1.35;padding:15px 17px;box-shadow:inset 0 1px 2px #0003;transition:border-color .18s,box-shadow .18s,background-color .18s}
.pf-membership .pf-field input::placeholder{color:#7e8baa}
.pf-membership .pf-field input:not([type=file]):focus,.pf-membership .pf-field select:focus,.pf-upload:focus-within{border-color:#edbd60;outline:0;box-shadow:0 0 0 3px rgba(230,185,96,.17);background-color:#0d1937}
.pf-membership .pf-field input[aria-invalid=true],.pf-age-fieldset[aria-invalid=true]{border-color:#f27b90}
.pf-membership .pf-field select{cursor:pointer;padding-right:38px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23e6b960' stroke-linecap='round' stroke-linejoin='round' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 15px center;background-repeat:no-repeat;background-size:17px 17px}
.pf-membership .pf-field select option{background:#0c1733;color:#fff}
.pf-age-fieldset{margin:28px 0 22px!important;padding:23px 22px 17px!important;background:linear-gradient(120deg,rgba(20,41,88,.42),rgba(9,17,44,.2));border:1px solid #607399!important;border-radius:14px!important;min-width:0}
.pf-age-fieldset legend{color:#f2c16f!important;padding:0 12px!important;font-weight:700;font-size:17px}
.pf-age-legend-note{font-weight:500;font-size:15px;color:#d4bb86}
.pf-dob-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.pf-age-fieldset .pf-note{margin:16px 0 5px;line-height:1.65}
.pf-age-feedback{margin:3px 0 0;font-size:13px;min-height:0}
.pf-age-ok{color:#66e5b0}.pf-age-not-ok,.pf-field-error{color:#ff9eac}
.pf-field-help,.pf-field-error{display:block;font-size:12px;line-height:1.4;margin-top:7px}
.pf-upload{border:1px dashed #7687ad;border-radius:10px;background:#0a1028;transition:border-color .18s,box-shadow .18s}
.pf-file-input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;z-index:-1}
.pf-upload-target{min-height:55px;display:flex!important;align-items:center;gap:12px;padding:8px 11px 8px 14px;margin:0!important;cursor:pointer}
.pf-upload-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:9px;background:#283c64;color:#f1c977;font-size:23px;font-weight:500}
.pf-upload-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:1px;line-height:1.25}
.pf-upload-copy strong{font-size:13px;font-weight:700;color:#f3f5ff}
.pf-upload-copy small{display:block;font-size:12px;color:#aab8d3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}
.pf-upload-browse{flex:0 0 auto;padding:8px 12px;border:1px solid #bd9b5a;border-radius:7px;color:#f5c56c;font-size:12px;font-weight:700}
.pf-upload-preview{flex:0 0 39px;width:39px;height:39px;border-radius:7px;object-fit:cover;border:1px solid #e6b960}
.pf-honeypot{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important}
.pf-check{align-items:flex-start;line-height:1.55}.pf-check input{width:17px;height:17px;accent-color:#dba856;flex:0 0 auto}
.pf-subtotal{padding:19px 0;font-size:16px;gap:15px}.pf-subtotal strong{color:#f3c872}
.pf-submit-btn{margin-top:13px;min-height:54px;padding:15px 25px;box-shadow:0 6px 24px #dba45230}
.pf-submit-btn:hover{filter:brightness(1.08)}
.pf-modal-open{overflow:hidden}
.pf-age-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(2,7,18,.84);padding:22px;backdrop-filter:blur(4px)}
.pf-age-dialog{max-width:470px;width:100%;text-align:center;padding:31px 30px;border:1px solid #deb363;background:linear-gradient(155deg,#12244a,#080f24);box-shadow:0 22px 70px #000b;border-radius:18px}
.pf-age-dialog-icon{width:48px;height:48px;margin:0 auto 12px;display:grid;place-items:center;border:1px solid #e6b960;border-radius:50%;color:#f4c574;font-size:25px;font-weight:bold}
.pf-age-dialog h2{color:#f2c574;font-size:23px;line-height:1.3;margin:0 0 10px}
.pf-age-dialog p{color:#e4e7f4;line-height:1.6;margin:0 0 24px}
@media(max-width:760px){.pf-form-heading{align-items:flex-start;flex-direction:column;gap:13px}.pf-membership-chip{font-size:12px}.pf-dob-grid{gap:10px}.pf-age-fieldset{padding:18px 14px!important}}
@media(max-width:520px){.pf-dob-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.pf-age-legend-note{display:block;font-size:12px}.pf-age-fieldset .pf-field label{font-size:12px}.pf-age-fieldset .pf-field select{font-size:13px;padding:13px 26px 13px 9px;min-height:49px;background-position:right 8px center;background-size:13px}.pf-upload-browse{padding:7px 9px}.pf-upload-target{gap:8px}.pf-subtotal{font-size:14px}.pf-application-panel{padding:21px 16px}}
/* Keep the visually hidden native picker focusable without causing mobile overflow. */
.pf-upload{position:relative}
.pf-photo-field .pf-file-input{position:absolute;top:0;left:0;width:1px!important;height:1px!important;opacity:0;z-index:0;padding:0;border:0;clip-path:inset(50%);overflow:hidden}
