.cfpc-open-screening{background:#34728d;color:#fff;border:0;border-radius:16px;padding:16px 30px;font-size:18px;font-weight:800;box-shadow:0 12px 28px rgba(52,114,141,.25);cursor:pointer;transition:.2s}.cfpc-open-screening:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(52,114,141,.3)}
.cfpc-modal-open{overflow:hidden}.cfpc-modal-backdrop{position:fixed;inset:0;background:rgba(15,20,35,.72);z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px}.cfpc-modal{width:min(1080px,96vw);height:min(820px,94vh);background:#fff;border-radius:30px;box-shadow:0 30px 100px rgba(0,0,0,.35);position:relative;overflow:auto}.cfpc-modal-inner{padding:42px 56px 76px}.cfpc-close{position:absolute;right:22px;top:20px;width:48px;height:48px;border-radius:50%;border:0;background:#eaf3f6;font-size:34px;line-height:1;cursor:pointer;color:#173c4d;z-index:5}.cfpc-head h2{margin:0 64px 22px 0;font-size:32px;line-height:1.15;color:#173344}.cfpc-head p{color:#6b6472;font-weight:800;margin:22px 0 6px}.cfpc-progress{height:13px;background:#e7f1f5;border-radius:999px;overflow:hidden;margin:10px 0 26px}.cfpc-progress div{height:100%;background:linear-gradient(90deg,#34728d,#5ba0b8);border-radius:999px;transition:.25s}.cfpc-intro,.cfpc-question,.cfpc-results{max-width:900px;margin:0 auto}.cfpc-intro{padding-top:36px}.cfpc-intro p{font-size:21px;line-height:1.55}.cfpc-small{font-size:14px!important;color:#6b6472!important}.cfpc-question h3{font-size:29px;line-height:1.25;color:#173344;margin:8px 0 24px}.cfpc-options{display:grid;gap:14px;margin:24px 0 22px}.cfpc-option{display:flex;justify-content:space-between;align-items:center;border:2px solid #eee;border-radius:20px;background:#fff;padding:18px 24px;text-align:left;font-size:19px;line-height:1.25;cursor:pointer;box-shadow:0 2px 0 rgba(0,0,0,.025);transition:background-color .18s,border-color .18s,box-shadow .18s;box-sizing:border-box;min-height:70px}.cfpc-option:hover,.cfpc-option.selected{border-color:#34728d;background:#f7fbfd;box-shadow:0 10px 26px rgba(52,114,141,.09)}.cfpc-option em{font-style:normal;width:28px;height:28px;border-radius:50%;background:#34728d;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;flex:0 0 28px;margin-left:18px;opacity:0;visibility:hidden;transform:scale(.92);transition:opacity .18s,visibility .18s,transform .18s}.cfpc-option.selected em{opacity:1;visibility:visible;transform:scale(1)}.cfpc-nav,.cfpc-actions{display:flex;gap:18px;justify-content:space-between;margin-top:24px}.cfpc-nav{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.82),#fff 35%);padding:18px 0 2px;z-index:4}.cfpc-primary,.cfpc-secondary{border:0;border-radius:15px;padding:16px 28px;font-weight:850;font-size:17px;cursor:pointer;transition:.18s}.cfpc-primary{background:#34728d;color:white;box-shadow:0 10px 22px rgba(52,114,141,.2)}.cfpc-primary:hover{background:#2d637a}.cfpc-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.cfpc-secondary{background:#eef5f7;color:#173c4d}.cfpc-input{display:block;width:100%;padding:15px;border:2px solid #d9edf3;border-radius:13px;margin:8px 0 18px}.cfpc-results{padding:12px 0 20px}.cfpc-result-hero{display:grid;grid-template-columns:230px 1fr;gap:34px;align-items:center;background:linear-gradient(135deg,#f7fbfd,#fff);border:1px solid #dbeaf0;border-radius:28px;padding:28px;margin-bottom:28px;box-shadow:0 18px 45px rgba(52,114,141,.08)}.cfpc-score-badge{background:linear-gradient(135deg,#34728d,#67aec6);color:white;border-radius:26px;padding:26px 22px;width:210px;text-align:center;box-shadow:0 18px 38px rgba(52,114,141,.28)}.cfpc-score-badge span{display:block;text-transform:uppercase;font-size:14px;letter-spacing:.1em;font-weight:900}.cfpc-score-badge strong{font-size:76px;line-height:1;font-weight:900}.cfpc-eyebrow{margin:0 0 8px!important;color:#34728d!important;text-transform:uppercase;letter-spacing:.08em;font-size:13px!important;font-weight:900}.cfpc-results h2{font-size:38px;line-height:1.12;color:#173344;margin:0 0 10px}.cfpc-results p{font-size:18px;line-height:1.5;margin:0}.cfpc-next-steps{border:1px solid #eee;border-radius:26px;padding:26px;background:#fff}.cfpc-next-steps h3{font-size:25px;color:#173344;margin:0 0 8px}.cfpc-next-steps>p{font-size:15px;color:#6b6472;margin:0 0 20px}.cfpc-resource-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.cfpc-resource-card{display:flex;flex-direction:column;justify-content:space-between;min-height:116px;border:2px solid #eee;border-radius:20px;padding:22px;text-decoration:none!important;color:#173344;background:#fff;transition:.18s}.cfpc-resource-card:hover{border-color:#34728d;background:#f7fbfd;transform:translateY(-2px);box-shadow:0 12px 24px rgba(52,114,141,.1)}.cfpc-resource-card span{font-size:18px;font-weight:800}.cfpc-resource-card b{color:#34728d;margin-top:18px}.cfpc-disclaimer{margin-top:18px;padding:14px 16px;background:#f4fafc;border-left:5px solid #34728d;border-radius:12px;color:#50616a;font-weight:650}.cfpc-loading{text-align:center;padding:90px}.cfpc-loading div{margin:auto;width:54px;height:54px;border-radius:50%;border:6px solid #eee;border-top-color:#34728d;animation:cfpcspin 1s linear infinite}@keyframes cfpcspin{to{transform:rotate(360deg)}}
@media(max-width:760px){.cfpc-modal-backdrop{padding:0}.cfpc-modal{width:100vw;height:100vh;border-radius:0}.cfpc-modal-inner{padding:28px 20px 84px}.cfpc-head h2{font-size:24px}.cfpc-question h3{font-size:23px}.cfpc-option{font-size:17px;padding:16px 18px}.cfpc-nav{padding:14px 0 10px}.cfpc-primary,.cfpc-secondary{width:100%}.cfpc-result-hero{grid-template-columns:1fr;padding:22px;gap:18px}.cfpc-score-badge{width:auto}.cfpc-results h2{font-size:30px}.cfpc-actions{flex-direction:column}}
@media print{body>*:not(.cfpc-modal-backdrop){display:none!important}.cfpc-modal-backdrop{position:static;background:white;padding:0}.cfpc-modal{box-shadow:none;width:100%;height:auto}.cfpc-close,.cfpc-actions{display:none!important}}

/* v1.0.7 richer frontend result screen */
.cfpc-result-hero-new{position:relative;overflow:hidden;background:radial-gradient(circle at 85% 20%,rgba(255,255,255,.28),transparent 24%),linear-gradient(135deg,#1f4d60,#34728d 58%,#76bbd1)!important;color:#fff;border:0!important}.cfpc-result-hero-new:before{content:"";position:absolute;right:-90px;bottom:-110px;width:280px;height:280px;border-radius:50%;background:rgba(255,255,255,.12)}.cfpc-result-hero-new .cfpc-result-copy,.cfpc-score-orb{position:relative;z-index:2}.cfpc-result-hero-new h2,.cfpc-result-hero-new p{color:#fff!important}.cfpc-score-orb{width:210px;height:210px;border-radius:50%;background:rgba(255,255,255,.14);border:2px solid rgba(255,255,255,.28);box-shadow:inset 0 0 30px rgba(255,255,255,.08),0 24px 48px rgba(24,64,80,.24);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.cfpc-score-orb span{text-transform:uppercase;letter-spacing:.12em;font-size:13px;font-weight:900}.cfpc-score-orb strong{font-size:84px;line-height:.95}.cfpc-score-orb small{font-weight:800;color:rgba(255,255,255,.78)}.cfpc-result-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.cfpc-result-chips span{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:8px 12px;color:#fff;font-size:13px;font-weight:800}.cfpc-next-steps-new{border:0!important;background:linear-gradient(180deg,#fff,#f7fbfd)!important;box-shadow:0 16px 45px rgba(52,114,141,.09)}.cfpc-section-head{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:8px}.cfpc-section-head h3{margin-top:0!important}.cfpc-resource-count{background:#e0eef3;color:#34728d;border-radius:999px;padding:7px 12px;font-weight:900;white-space:nowrap}.cfpc-actions-new{justify-content:flex-end!important;background:#fff;border:1px solid #dbeaf0;border-radius:22px;padding:16px;margin-top:18px;box-shadow:0 10px 28px rgba(52,114,141,.06)}.cfpc-disclaimer-new{border:1px solid #d2e5ed;border-left:6px solid #34728d;background:linear-gradient(90deg,#edf6f9,#fff)!important}.cfpc-resource-card{position:relative;overflow:hidden}.cfpc-resource-card:after{content:"";position:absolute;right:-35px;top:-35px;width:86px;height:86px;border-radius:50%;background:rgba(52,114,141,.06)}
@media(max-width:760px){.cfpc-score-orb{width:170px;height:170px}.cfpc-score-orb strong{font-size:66px}.cfpc-section-head{display:block}.cfpc-actions-new{display:grid!important;grid-template-columns:1fr;gap:12px}}

/* v1.0.8 demographics + logo */
.cfpc-modal-logo{display:block;max-width:170px;max-height:80px;object-fit:contain;margin:0 auto 12px;}
.cfpc-demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0;}
.cfpc-demographics label{font-weight:800;color:#2b123f;display:flex;flex-direction:column;gap:8px;}
.cfpc-input{width:100%;border:2px solid #ede7f3;border-radius:16px;padding:14px 16px;font-size:16px;background:#fff;color:#261238;}
.cfpc-input:focus{outline:none;border-color:#34728d;box-shadow:0 0 0 4px rgba(52,114,141,.14);}
@media(max-width:700px){.cfpc-demo-grid{grid-template-columns:1fr}.cfpc-modal-logo{max-width:140px}}
.cfpc-modal-logo{max-height:74px;max-width:220px;object-fit:contain;display:block;margin:0 auto 12px auto}
.cfpc-demo-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:22px 0 30px}
.cfpc-demo-grid label{font-weight:800;color:#32104f;display:flex;flex-direction:column;gap:8px}
.cfpc-demographics .cfpc-input{height:54px}
@media(max-width:700px){.cfpc-demo-grid{grid-template-columns:1fr}}


/* v1.0.9 dynamic survey transitions */
.cfpc-modal-inner{overflow:hidden}
.cfpc-step-shell{will-change:transform,opacity;animation-duration:.36s;animation-timing-function:cubic-bezier(.22,.82,.22,1);animation-fill-mode:both}
.cfpc-step-forward{animation-name:cfpcStepForward}
.cfpc-step-back{animation-name:cfpcStepBack}
@keyframes cfpcStepForward{
  from{opacity:0;transform:translateX(34px) scale(.985)}
  to{opacity:1;transform:translateX(0) scale(1)}
}
@keyframes cfpcStepBack{
  from{opacity:0;transform:translateX(-34px) scale(.985)}
  to{opacity:1;transform:translateX(0) scale(1)}
}
.cfpc-question h3{animation:cfpcSoftRise .42s cubic-bezier(.22,.82,.22,1) both}
.cfpc-options .cfpc-option{animation:cfpcOptionIn .38s cubic-bezier(.22,.82,.22,1) both}
.cfpc-options .cfpc-option:nth-child(1){animation-delay:.03s}
.cfpc-options .cfpc-option:nth-child(2){animation-delay:.06s}
.cfpc-options .cfpc-option:nth-child(3){animation-delay:.09s}
.cfpc-options .cfpc-option:nth-child(4){animation-delay:.12s}
.cfpc-options .cfpc-option:nth-child(5){animation-delay:.15s}
.cfpc-options .cfpc-option:nth-child(6){animation-delay:.18s}
@keyframes cfpcSoftRise{
  from{opacity:0;transform:translateY(10px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes cfpcOptionIn{
  from{opacity:0;transform:translateY(12px)}
  to{opacity:1;transform:translateY(0)}
}
.cfpc-option.selected{transform:none}
.cfpc-option.selected em{animation:cfpcCheckPop .22s cubic-bezier(.2,1.25,.3,1) both}
@keyframes cfpcCheckPop{
  0%{opacity:0;transform:scale(.55)}
  100%{opacity:1;transform:scale(1)}
}
.cfpc-progress div{transition:width .45s cubic-bezier(.22,.82,.22,1)}
.cfpc-result-hero-new{animation:cfpcResultPop .48s cubic-bezier(.2,1.05,.25,1) both}
.cfpc-next-steps-new,.cfpc-actions-new,.cfpc-disclaimer-new{animation:cfpcSoftRise .46s cubic-bezier(.22,.82,.22,1) both}
.cfpc-next-steps-new{animation-delay:.08s}
.cfpc-actions-new{animation-delay:.14s}
.cfpc-disclaimer-new{animation-delay:.2s}
@keyframes cfpcResultPop{
  from{opacity:0;transform:translateY(16px) scale(.975)}
  to{opacity:1;transform:translateY(0) scale(1)}
}
@media (prefers-reduced-motion: reduce){
  .cfpc-step-shell,.cfpc-question h3,.cfpc-options .cfpc-option,.cfpc-option.selected em,.cfpc-result-hero-new,.cfpc-next-steps-new,.cfpc-actions-new,.cfpc-disclaimer-new{animation:none!important}
  .cfpc-progress div,.cfpc-option{transition:none!important}
}


/* v1.0.11 modern survey header */
.cfpc-head-modern{margin-bottom:22px;}
.cfpc-title-row{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 64px 18px 0;padding:18px 20px;border:1px solid #dbeaf0;border-radius:24px;background:linear-gradient(135deg,#f7fbfd 0%,#ffffff 60%,#edf6f9 100%);box-shadow:0 14px 35px rgba(52,114,141,.07)}
.cfpc-title-wrap{display:flex;align-items:center;gap:16px;min-width:0;}
.cfpc-title-wrap h2{display:flex;align-items:center;gap:10px;margin:0!important;font-size:29px!important;line-height:1.12!important;color:#173344;}
.cfpc-kicker{display:inline-flex;align-items:center;gap:8px;margin-bottom:5px;text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:900;color:#34728d;}
.cfpc-kicker:before{content:"";width:9px;height:9px;border-radius:999px;background:linear-gradient(135deg,#34728d,#16a374);box-shadow:0 0 0 5px rgba(22,163,116,.16)}
.cfpc-question-pill{flex:0 0 auto;display:flex;align-items:center;gap:10px;border-radius:999px;background:#173c4d;color:#fff;padding:11px 16px;box-shadow:0 10px 20px rgba(50,18,77,.16)}
.cfpc-question-pill span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:850;opacity:.78;}
.cfpc-question-pill strong{font-size:18px;line-height:1;font-weight:950;white-space:nowrap;}
.cfpc-top-logo{margin:0!important;max-width:92px!important;max-height:50px!important;flex:0 0 auto;}
.cfpc-head-modern .cfpc-progress{margin:0 0 20px 0;}
.cfpc-head-modern + .cfpc-question h3{margin-top:0;}
@media(max-width:760px){.cfpc-title-row{margin-right:54px;align-items:flex-start;padding:15px;gap:12px}.cfpc-title-wrap h2{font-size:22px!important}.cfpc-question-pill{padding:9px 12px}.cfpc-question-pill span{display:none}.cfpc-question-pill strong{font-size:15px}.cfpc-kicker{font-size:10px}.cfpc-top-logo{max-width:70px!important;max-height:42px!important}}
@media(max-width:520px){.cfpc-title-row{flex-direction:column;margin-right:48px}.cfpc-question-pill{align-self:flex-start}.cfpc-title-wrap{align-items:flex-start}}

/* v1.0.11 header refinements */
.cfpc-kicker{display:none!important;}
.cfpc-title-dot{display:inline-block;width:12px;height:12px;flex:0 0 12px;border-radius:999px;background:linear-gradient(135deg,#34728d,#16a374);box-shadow:0 0 0 6px rgba(22,163,116,.16)}
.cfpc-ready-pill{padding:12px 18px;}
.cfpc-ready-pill strong{font-size:15px;text-transform:uppercase;letter-spacing:.08em;}
.cfpc-intro-modern{max-width:780px;margin:22px auto 0;padding:26px 30px;border:1px solid #dbeaf0;border-radius:24px;background:linear-gradient(135deg,#fff,#f7fbfd);box-shadow:0 12px 32px rgba(52,114,141,.06)}
.cfpc-intro-modern p{font-size:18px;line-height:1.55;margin:0 0 16px;color:#2b193b}
.cfpc-intro-modern .cfpc-small{font-size:14px;color:#6e6478}
.cfpc-intro-modern .cfpc-start{margin-top:8px}
@media(max-width:760px){.cfpc-title-dot{width:10px;height:10px;flex-basis:10px}.cfpc-ready-pill strong{font-size:13px}}

/* v1.0.12 header/start screen width refinements */
.cfpc-head-modern .cfpc-title-row{margin:0 0 18px 0!important;}
.cfpc-head-modern .cfpc-progress{margin:0 0 20px 0!important;}
.cfpc-intro-modern{max-width:900px!important;width:100%;box-sizing:border-box;}
@media(max-width:760px){.cfpc-head-modern .cfpc-title-row{margin-right:54px!important}.cfpc-intro-modern{max-width:100%!important}}
@media(max-width:520px){.cfpc-head-modern .cfpc-title-row{margin-right:48px!important}}

/* v1.0.13 close-button clearance refinement */
.cfpc-head-modern .cfpc-title-row{margin:0 78px 18px 0!important;}
.cfpc-head-modern .cfpc-progress{margin:0 78px 20px 0!important;}
@media(max-width:760px){
  .cfpc-head-modern .cfpc-title-row{margin-right:58px!important;}
  .cfpc-head-modern .cfpc-progress{margin-right:58px!important;}
}
@media(max-width:520px){
  .cfpc-head-modern .cfpc-title-row{margin-right:50px!important;}
  .cfpc-head-modern .cfpc-progress{margin-right:50px!important;}
}


/* v1.0.14 centered modal layout + close button isolation */
.cfpc-close{right:24px!important;top:22px!important;z-index:20!important;box-shadow:0 10px 24px rgba(50,18,77,.10)}
.cfpc-head-modern{max-width:900px;width:100%;margin:0 auto 22px!important;box-sizing:border-box;}
.cfpc-head-modern .cfpc-title-row{margin:0 0 18px 0!important;width:100%;box-sizing:border-box;}
.cfpc-head-modern .cfpc-progress{margin:0 0 20px 0!important;width:100%;box-sizing:border-box;}
.cfpc-intro,.cfpc-question,.cfpc-results,.cfpc-demographics{max-width:900px!important;width:100%;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box;}
.cfpc-intro-modern{max-width:900px!important;margin-left:auto!important;margin-right:auto!important;}
.cfpc-title-row{padding-right:22px!important;}
@media(min-width:761px){
  .cfpc-modal-inner{padding-left:56px!important;padding-right:56px!important;}
}
@media(max-width:760px){
  .cfpc-close{right:16px!important;top:16px!important;width:44px!important;height:44px!important;font-size:30px!important;}
  .cfpc-head-modern{max-width:100%!important;padding-right:58px;}
  .cfpc-head-modern .cfpc-title-row{margin:0 0 16px 0!important;}
  .cfpc-head-modern .cfpc-progress{margin:0 0 18px 0!important;}
  .cfpc-title-row{padding:15px!important;}
}
@media(max-width:520px){
  .cfpc-head-modern{padding-right:50px;}
  .cfpc-title-row{flex-direction:column;align-items:flex-start;}
  .cfpc-question-pill{align-self:flex-start;}
}

/* v1.0.16 intro standard drink guide - compact */
.cfpc-standard-drink-block{margin:0 0 18px;padding:14px 18px 16px;border:1px solid #dbeaf0;border-radius:20px;background:#fff;box-shadow:0 10px 24px rgba(52,114,141,.05);text-align:center}
.cfpc-standard-drink-block h3{margin:0 0 10px!important;font-size:22px!important;line-height:1.2!important;color:#173344!important;text-align:center}
.cfpc-standard-drink-block img{display:block;width:100%;max-width:760px;max-height:300px;height:auto;object-fit:contain;margin:0 auto;border-radius:14px;background:#fff}
@media(max-width:760px){.cfpc-standard-drink-block{padding:10px;margin-bottom:14px}.cfpc-standard-drink-block h3{font-size:18px!important}.cfpc-standard-drink-block img{max-height:210px}}

/* v1.0.17 move drink guide to age/gender screen */
.cfpc-demographics .cfpc-standard-drink-block{
  margin:28px auto 8px;
  max-width:760px;
  padding:12px 16px 14px;
}
.cfpc-demographics .cfpc-standard-drink-block h3{
  font-size:20px!important;
  margin-bottom:8px!important;
}
.cfpc-demographics .cfpc-standard-drink-block img{
  max-height:230px;
  max-width:700px;
}
@media(max-height:820px){
  .cfpc-demographics .cfpc-standard-drink-block{margin-top:20px;padding:10px 14px;}
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:185px;}
  .cfpc-demographics .cfpc-nav{margin-top:22px;}
}
@media(max-width:760px){
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:180px;}
  .cfpc-demographics .cfpc-standard-drink-block h3{font-size:17px!important;}
}

/* v1.0.18 compact age/gender + full-width drink guide */
.cfpc-demographics{display:flex;flex-direction:column;min-height:0;}
.cfpc-demographics h3{margin:0 0 14px!important;font-size:30px!important;line-height:1.15!important;}
.cfpc-demographics > .cfpc-small{margin:0 0 14px!important;font-size:14px!important;line-height:1.35!important;}
.cfpc-demo-grid{margin:14px 0 16px!important;gap:14px!important;}
.cfpc-demo-grid label{gap:6px!important;font-size:15px!important;}
.cfpc-demographics .cfpc-input{height:46px!important;padding:10px 12px!important;margin:6px 0 0!important;font-size:16px!important;}
.cfpc-demographics .cfpc-standard-drink-block{width:100%!important;max-width:100%!important;box-sizing:border-box;margin:10px 0 12px!important;padding:10px 14px 12px!important;border-radius:18px!important;}
.cfpc-demographics .cfpc-standard-drink-block h3{font-size:18px!important;margin:0 0 6px!important;line-height:1.15!important;}
.cfpc-demographics .cfpc-standard-drink-block img{width:100%!important;max-width:760px!important;max-height:175px!important;height:auto!important;object-fit:contain!important;}
.cfpc-demographics .cfpc-nav{margin-top:8px!important;padding-top:10px!important;padding-bottom:4px!important;}
@media(max-height:820px){
  .cfpc-modal-inner{padding-top:34px!important;padding-bottom:52px!important;}
  .cfpc-head-modern{margin-bottom:14px!important;}
  .cfpc-head-modern .cfpc-title-row{padding-top:16px!important;padding-bottom:16px!important;margin-bottom:14px!important;}
  .cfpc-head-modern .cfpc-progress{margin-bottom:16px!important;}
  .cfpc-demographics h3{font-size:27px!important;margin-bottom:10px!important;}
  .cfpc-demographics > .cfpc-small{margin-bottom:10px!important;}
  .cfpc-demo-grid{margin:10px 0 12px!important;}
  .cfpc-demographics .cfpc-standard-drink-block{margin:8px 0 10px!important;padding:8px 12px 10px!important;}
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:145px!important;}
  .cfpc-demographics .cfpc-standard-drink-block h3{font-size:16px!important;}
  .cfpc-demographics .cfpc-nav{position:relative!important;background:transparent!important;padding-top:8px!important;}
}
@media(max-width:760px){
  .cfpc-demo-grid{grid-template-columns:1fr!important;gap:10px!important;}
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:150px!important;}
  .cfpc-demographics .cfpc-nav{display:grid!important;grid-template-columns:1fr;}
}

/* v1.0.19 make standard drink guide larger without pushing buttons off screen */
.cfpc-demographics .cfpc-standard-drink-block{
  padding:10px 14px 12px!important;
  margin:10px 0 10px!important;
}
.cfpc-demographics .cfpc-standard-drink-block h3{
  font-size:18px!important;
  margin:0 0 4px!important;
}
.cfpc-demographics .cfpc-standard-drink-block img{
  max-height:220px!important;
  max-width:920px!important;
}
.cfpc-demographics .cfpc-nav{
  margin-top:6px!important;
}
@media(max-height:820px){
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:200px!important;}
}
@media(max-height:760px){
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:180px!important;}
  .cfpc-demographics .cfpc-standard-drink-block h3{font-size:16px!important;}
}
@media(max-width:700px){
  .cfpc-demographics .cfpc-standard-drink-block img{max-height:175px!important;}
}

/* v1.0.29: match landing page green pulsing dot in the screening modal header */
.cfpc-title-dot{background:#059669!important;background-image:none!important;box-shadow:0 0 0 5px rgba(5,150,105,.18)!important;animation:cfpcPulseGreen 2s infinite!important;}
@keyframes cfpcPulseGreen{0%,100%{box-shadow:0 0 0 5px rgba(5,150,105,.18)}50%{box-shadow:0 0 0 9px rgba(5,150,105,0)}}

/* v1.0.32 teal cleanup: remove remaining purple accents from survey controls */
.cfpc-secondary{background:#eef5f7!important;color:#173c4d!important;}
.cfpc-secondary:hover{background:#e2f0f4!important;}
.cfpc-input, .cfpc-demographics select, .cfpc-modal select{border-color:#d9edf3!important;color:#173344;}
.cfpc-input:focus, .cfpc-demographics select:focus, .cfpc-modal select:focus{outline:none!important;border-color:#34728d!important;box-shadow:0 0 0 4px rgba(52,114,141,.14)!important;}
.cfpc-title-dot{background:#16a374!important;background-image:none!important;box-shadow:0 0 0 6px rgba(22,163,116,.14)!important;}
.cfpc-kicker:before{background:#16a374!important;box-shadow:0 0 0 5px rgba(22,163,116,.14)!important;}
.cfpc-drink-card, .cfpc-intro-modern, .cfpc-demographics-card{border-color:#d9edf3!important;}

/* v1.0.34: smaller question text so longer questions do not push navigation off-screen */
.cfpc-question h3{
  font-size:25px!important;
  line-height:1.18!important;
  margin:0 0 18px!important;
}
.cfpc-options{
  gap:12px!important;
  margin:18px 0 14px!important;
}
.cfpc-option{
  min-height:62px!important;
  padding:14px 22px!important;
}
.cfpc-question .cfpc-nav{
  margin-top:12px!important;
  padding-top:14px!important;
}
@media(max-height:820px){
  .cfpc-question h3{font-size:23px!important;line-height:1.16!important;margin-bottom:14px!important;}
  .cfpc-options{gap:10px!important;margin-top:14px!important;}
  .cfpc-option{min-height:56px!important;padding:12px 20px!important;}
}
@media(max-width:760px){
  .cfpc-question h3{font-size:22px!important;line-height:1.2!important;}
}

/* v1.0.37: use the same easy-to-read sans-serif font for survey question text as the answer choices */
.cfpc-question h3{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif!important;
  font-weight:800!important;
  letter-spacing:-0.01em!important;
}

/* v1.0.37: reduce question font weight for better readability */
.cfpc-question h3{
  font-weight:650!important;
}


/* v39 compact result resources */
.cfpc-result-chips{display:none!important}
.cfpc-next-steps-new>p{display:none!important}
.cfpc-resource-grid-compact{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;gap:10px!important}
.cfpc-resource-card-compact{min-height:0!important;padding:12px 14px!important;border-radius:14px!important;display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important}
.cfpc-resource-card-compact:after{display:none!important}
.cfpc-resource-card-compact .cfpc-resource-icon{width:30px;height:30px;border-radius:999px;background:#e7f1f5;color:#34728d;display:inline-flex;align-items:center;justify-content:center;font-size:16px;font-weight:900;flex:0 0 30px}
.cfpc-resource-card-compact .cfpc-resource-label{font-size:15px!important;font-weight:750!important;line-height:1.2!important}
.cfpc-resource-card-compact b{display:none!important}
.cfpc-resource-type-call .cfpc-resource-icon{font-size:15px}
.cfpc-resource-type-text .cfpc-resource-icon{font-size:14px}
.cfpc-actions-compact{padding:10px!important;border-radius:16px!important;margin-top:14px!important;gap:10px!important}
.cfpc-actions-compact .cfpc-primary,.cfpc-actions-compact .cfpc-secondary{padding:11px 18px!important;border-radius:12px!important;font-size:14px!important;box-shadow:none!important}
.cfpc-resource-count{font-size:12px!important;padding:5px 9px!important}
@media(max-width:760px){.cfpc-resource-grid-compact{grid-template-columns:1fr!important}.cfpc-actions-compact{grid-template-columns:1fr 1fr!important}}

/* v1.0.41: mobile header alignment + compact ready pill */
@media(max-width:760px){
  .cfpc-modal-backdrop{padding:12px!important;align-items:flex-start!important;overflow:auto!important;}
  .cfpc-modal{width:100%!important;max-width:100%!important;min-height:calc(100vh - 24px)!important;height:auto!important;border-radius:22px!important;overflow:visible!important;}
  .cfpc-modal-inner{padding:58px 18px 52px!important;}
  .cfpc-close{top:12px!important;right:12px!important;width:44px!important;height:44px!important;font-size:30px!important;z-index:20!important;}
  .cfpc-head-modern{margin-top:0!important;margin-bottom:18px!important;}
  .cfpc-head-modern .cfpc-title-row{width:100%!important;box-sizing:border-box!important;margin:0 0 14px 0!important;padding:13px 14px!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;border-radius:20px!important;}
  .cfpc-title-wrap{min-width:0!important;flex:1 1 auto!important;gap:8px!important;}
  .cfpc-title-wrap h2{font-size:20px!important;line-height:1.12!important;gap:8px!important;min-width:0!important;}
  .cfpc-title-dot{width:10px!important;height:10px!important;flex:0 0 10px!important;}
  .cfpc-question-pill{padding:7px 10px!important;border-radius:999px!important;gap:5px!important;flex:0 0 auto!important;box-shadow:none!important;}
  .cfpc-ready-pill strong{font-size:11px!important;letter-spacing:.08em!important;}
  .cfpc-question-pill span{display:none!important;}
  .cfpc-question-pill strong{font-size:12px!important;}
  .cfpc-head-modern .cfpc-progress{width:100%!important;margin:0 0 18px 0!important;}
  .cfpc-intro-modern{width:100%!important;max-width:100%!important;margin:0!important;padding:24px 26px!important;border-radius:22px!important;}
  .cfpc-intro-modern p{font-size:22px!important;line-height:1.38!important;}
  .cfpc-intro-modern .cfpc-small{font-size:16px!important;line-height:1.45!important;}
  .cfpc-intro-modern .cfpc-start{width:100%!important;margin-top:14px!important;padding:15px 18px!important;}
}
@media(max-width:430px){
  .cfpc-modal-inner{padding-left:14px!important;padding-right:14px!important;}
  .cfpc-title-wrap h2{font-size:18px!important;}
  .cfpc-question-pill{padding:6px 9px!important;}
  .cfpc-ready-pill strong{font-size:10px!important;}
}
/* v47 result page: hide numeric score and use completion/risk label */
.cfpc-complete-orb{width:170px!important;height:170px!important;padding:18px!important;gap:8px;}
.cfpc-complete-orb span{font-size:12px!important;line-height:1.15;max-width:120px;}
.cfpc-complete-orb strong{font-size:25px!important;line-height:1.12!important;max-width:140px;word-break:normal;}
.cfpc-resource-intro{font-size:15px!important;line-height:1.45!important;color:#50616a!important;margin:6px 0 14px!important;max-width:760px;}
@media(max-width:760px){.cfpc-complete-orb{width:138px!important;height:138px!important;margin:0 auto}.cfpc-complete-orb strong{font-size:20px!important}.cfpc-complete-orb span{font-size:10px!important}}

/* v48 result screen refinements */
.cfpc-risk-orb{width:145px!important;height:145px!important;padding:18px!important;}
.cfpc-risk-orb strong{font-family:inherit!important;font-size:26px!important;font-weight:700!important;line-height:1.1!important;max-width:118px!important;text-align:center!important;}
.cfpc-result-copy h2{font-size:44px!important;font-weight:500!important;letter-spacing:-.02em!important;}
@media(max-width:760px){.cfpc-risk-orb{width:120px!important;height:120px!important}.cfpc-risk-orb strong{font-size:20px!important}.cfpc-result-copy h2{font-size:32px!important}}

/* v50 results page final cleanup */
.cfpc-result-hero-new .cfpc-result-copy > .cfpc-eyebrow:first-child{display:none!important;}
.cfpc-risk-orb{width:172px!important;height:172px!important;}
.cfpc-risk-orb strong{font-family:inherit!important;font-size:34px!important;line-height:1.04!important;font-weight:800!important;letter-spacing:-.02em!important;max-width:130px!important;text-align:center!important;}
.cfpc-result-copy h2{margin-top:0!important;}
@media(max-width:760px){.cfpc-risk-orb{width:128px!important;height:128px!important;}.cfpc-risk-orb strong{font-size:24px!important;max-width:104px!important;}}

/* v55 close button hover cleanup - no outside ring */
.cfpc-close,
.cfpc-close:visited{
  background:#eaf3f6!important;
  color:#173c4d!important;
  border:0!important;
  box-shadow:0 10px 24px rgba(23,60,77,.10)!important;
  text-decoration:none!important;
}
.cfpc-close:hover,
.cfpc-close:focus,
.cfpc-close:active{
  background:#34728d!important;
  color:#ffffff!important;
  border:0!important;
  outline:0!important;
  outline-offset:0!important;
  box-shadow:0 12px 28px rgba(52,114,141,.24)!important;
}
.cfpc-close:focus:not(:focus-visible){outline:0!important;}

/* v55 ensure no hover/focus ring is added around close button */
.cfpc-close:hover,.cfpc-close:focus,.cfpc-close:active,.cfpc-close:focus-visible{outline:0!important;outline-offset:0!important;box-shadow:0 10px 24px rgba(52,114,141,.18)!important;}
