/**
 * Warp AI Readiness Assessment — front-end styles
 * Styles the multi-step assessment flow rendered inside the Elementor Pro form:
 * progress bar, option cards, calculating screen, score teaser and lead gate.
 */
.warp-asmt-progress{max-width:760px;margin:0 auto 8px;}
.warp-asmt-progress .row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:13px;font-family:"Roboto",sans-serif;}
.warp-asmt-progress .qcount{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.6);}
.warp-asmt-progress .dim{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#966CAF;text-align:right;}
.warp-asmt-progress .track{height:4px;border-radius:2px;background:rgba(255,255,255,.1);overflow:hidden;}
.warp-asmt-progress .fill{height:100%;border-radius:2px;background:linear-gradient(90deg,#00B3AE 0%,#2EAEC3 50%,#966CAF 100%);width:0;transition:width 340ms cubic-bezier(.4,0,.2,1);}
.warp-asmt-backwrap{max-width:760px;margin:20px auto 0;display:flex;justify-content:flex-end;}
.warp-asmt-back{display:inline-flex;align-items:center;gap:14px;background:transparent;border:0;color:rgba(255,255,255,.6);font-family:"Roboto",sans-serif;font-size:14px;letter-spacing:.1em;cursor:pointer;padding:8px 4px;transition:color .16s;}
.warp-asmt-back:hover{color:#fff;}
.warp-toscore-wrap{max-width:760px;margin:16px auto 0;display:flex;justify-content:center;}
.warp-toscore{display:inline-flex;align-items:center;gap:8px;background:transparent;border:0;color:rgba(255,255,255,.55);font-family:"Roboto",sans-serif;font-size:14px;letter-spacing:.1em;cursor:pointer;padding:6px;transition:color .16s;}
.warp-toscore:hover{color:#fff;}
.warp-asmt-gate{max-width:760px;margin:0 auto 32px;}
.warp-asmt-gate .eyebrow{font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#966CAF;}
.warp-asmt-gate h2{font-family:"Montserrat",sans-serif;font-weight:700;font-size:34px;line-height:1.18;color:#fff;margin:14px 0 0;}
.warp-asmt-gate p{font-family:"Roboto",sans-serif;font-size:16px;line-height:1.6;color:rgba(255,255,255,.74);margin:14px 0 0;}
@keyframes warpFadeUp{from{opacity:0;transform:translateY(14px);}to{opacity:1;transform:none;}}
.warp-fade{animation:warpFadeUp 360ms cubic-bezier(.4,0,.2,1) both;}
.warp-hidden{display:none !important;}
@keyframes warpSpin{to{transform:rotate(360deg);}}
@keyframes warpPulse{0%,100%{opacity:1;}50%{opacity:.3;}}
.warp-calc{max-width:520px;margin:0 auto;text-align:center;padding:30px 24px 40px;}
.warp-calc-spinner{position:relative;width:104px;height:104px;margin:0 auto;}
.warp-calc-ring{position:absolute;inset:0;border-radius:999px;border:3px solid rgba(255,255,255,.12);border-top-color:#2EAEC3;animation:warpSpin 900ms linear infinite;}
.warp-calc-pct{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:"Montserrat",sans-serif;font-weight:700;font-size:24px;color:#fff;}
.warp-calc-title{font-family:"Montserrat",sans-serif;font-weight:700;font-size:30px;line-height:1.25;color:#fff;margin:34px 0 0;}
.warp-calc-sub{font-family:"Montserrat",sans-serif;font-weight:300;font-size:15px;line-height:1.6;color:rgba(255,255,255,.66);margin:12px 0 0;}
.warp-calc-rows{display:flex;flex-direction:column;gap:10px;margin:36px 0 0;}
.warp-calc-row{display:flex;align-items:center;gap:14px;padding:13px 18px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);opacity:.45;transition:all 300ms cubic-bezier(.4,0,.2,1);}
.warp-calc-row.active{border-color:rgba(46,174,195,.5);opacity:1;}
.warp-calc-row.done{border-color:rgba(0,179,174,.4);background:rgba(0,179,174,.08);opacity:1;}
.warp-calc-badge{width:26px;height:26px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-family:"Montserrat",sans-serif;font-weight:700;font-size:13px;flex:none;border:1px solid rgba(255,255,255,.25);color:#2EAEC3;background:transparent;transition:all 300ms cubic-bezier(.4,0,.2,1);}
.warp-calc-row.done .warp-calc-badge{background:#00B3AE;border-color:#00B3AE;color:#0E0F25;}
.warp-calc-label{flex:1;text-align:left;font-family:"Roboto",sans-serif;font-weight:500;font-size:15px;color:#fff;}
.warp-pulse{animation:warpPulse 900ms ease-in-out infinite;}
.warp-teaser{max-width:920px;margin:0 auto;padding:10px 0 0;}
.warp-teaser-top{display:grid;grid-template-columns:minmax(200px,300px) 1fr;gap:44px;align-items:center;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.1);}
.warp-gauge{position:relative;}
.warp-gauge svg{display:block;width:100%;overflow:visible;}
.warp-gauge-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;}
.warp-gauge-num{font-family:"Montserrat",sans-serif;font-weight:700;font-size:70px;line-height:1;color:#fff;}
.warp-gauge-sub{font-family:"Montserrat",sans-serif;font-weight:500;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.5);margin-top:6px;}
.warp-gauge-arc{transition:stroke-dashoffset 1100ms cubic-bezier(.4,0,.2,1);}
.warp-teaser-eyebrow{font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:#966CAF;margin-bottom:30px;}
.warp-teaser-headline{font-family:"Montserrat",sans-serif;font-weight:700;font-size:40px;line-height:1.2;color:#fff;margin:0;}
.warp-teaser-desc{font-family:"Montserrat",sans-serif;font-size:16px;line-height:1.6;letter-spacing:1px;color:rgba(255,255,255,.76);margin:14px 0 0;}
.warp-teaser-card{position:relative;margin:40px 0 0;border:1px solid rgba(255,255,255,.12);border-radius:14px;overflow:hidden;}
.warp-teaser-blur{padding:34px 34px 40px;filter:blur(8px);opacity:.65;pointer-events:none;}
.warp-teaser-blur h3{font-family:"Roboto",sans-serif;font-weight:500;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.55);margin:0 0 16px;}
.warp-bd-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07);}
.warp-bd-num{width:22px;font-family:"Montserrat",sans-serif;font-weight:700;font-size:13px;color:rgba(255,255,255,.4);flex:none;}
.warp-bd-label{flex:0 0 196px;font-family:"Roboto",sans-serif;font-weight:500;font-size:15px;color:#fff;}
.warp-bd-track{flex:1;height:8px;border-radius:4px;background:rgba(255,255,255,.08);overflow:hidden;}
.warp-bd-fill{display:block;height:100%;border-radius:4px;width:0;}
.warp-bd-score{width:38px;text-align:right;font-family:"Montserrat",sans-serif;font-weight:700;font-size:16px;color:#fff;flex:none;}
.warp-teaser-lock{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:rgba(9,10,24,.6);padding:24px;text-align:center;}
.warp-lock-icon{width:48px;height:48px;border-radius:12px;background:rgba(46,174,195,.12);border:1px solid rgba(46,174,195,.45);display:flex;align-items:center;justify-content:center;margin-bottom:8px;}
.warp-lock-title{font-family:"Montserrat",sans-serif;font-weight:700;font-size:22px;color:#fff;}
.warp-teaser-lock p{font-family:"Montserrat",sans-serif;font-weight:300;font-size:15px;line-height:1.6;color:rgba(255,255,255,.72);margin:4px 0 0;max-width:480px;}
.warp-unlock{margin-top:18px;background:#29a0b4;color:#fff;border:0;border-radius:4px;padding:0 36px;height:46px;font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px;cursor:pointer;transition:background .16s;}
.warp-unlock:hover{background:#1F8C9C;}
@media(max-width:700px){.warp-teaser-top{grid-template-columns:1fr;justify-items:center;text-align:center;}.warp-bd-label{flex-basis:120px;}}

/* ---------------------------------------------------------------------------
 * Form widget — dark theme + card-style option list.
 * Scoped with :has() so it only affects Elementor forms that contain an
 * ai_readiness_question field (not other forms on the site).
 * ------------------------------------------------------------------------- */
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question){width:100%!important;max-width:760px!important;margin-left:auto!important;margin-right:auto!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-form{width:100%;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-label{color:#ffffff!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-type-ai_readiness_question{display:flex!important;flex-direction:column!important;align-items:stretch!important;flex-wrap:nowrap!important;margin-bottom:40px;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-type-ai_readiness_question > .elementor-field-label{width:100%;font-family:"Montserrat",sans-serif;font-weight:700;font-size:26px;line-height:1.3;color:#ffffff!important;margin-bottom:18px;display:block;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-readiness-options{display:flex!important;flex-direction:column;gap:12px;width:100%;counter-reset:warpopt;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-option{display:flex!important;align-items:center;gap:16px;width:100%;margin:0;padding:18px 22px;border-radius:10px;background:rgba(255,255,255,0.03)!important;border:1px solid rgba(255,255,255,0.12)!important;color:#ffffff!important;font-family:"Roboto",sans-serif;font-size:16px;line-height:1.5;cursor:pointer;counter-increment:warpopt;transition:background .16s ease, border-color .16s ease;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-option:hover{background:rgba(46,174,195,0.10)!important;border-color:#2EAEC3!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-option::before{content:counter(warpopt);flex:none;width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,0.28);color:rgba(255,255,255,0.7);font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px;line-height:1;transition:all .16s ease;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-radio{display:none!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-option:has(.warp-ai-radio:checked){background:rgba(46,174,195,0.13)!important;border-color:#2EAEC3!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .warp-ai-option:has(.warp-ai-radio:checked)::before{background:#2EAEC3;border-color:#2EAEC3;color:#0E0F25;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) input[type=text],
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) input[type=email],
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) input[type=tel],
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) textarea,
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) select{background:rgba(255,255,255,0.04)!important;border:1px solid rgba(255,255,255,0.15)!important;color:#ffffff!important;border-radius:8px;padding:13px 16px!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) select option{background:#151a35;color:#ffffff;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) input::placeholder,
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) textarea::placeholder{color:rgba(255,255,255,0.4);}
/* Contact-gate step (the fields after "Where should we send it?"): the
   Elementor defaults pack every field 10px apart with the label sitting
   flush against its input, which is what made this step feel cramped next
   to the more spacious question screens. Loosen the rhythm to match. */
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-group:not(.elementor-field-type-ai_readiness_question){margin-bottom:22px!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-group:not(.elementor-field-type-ai_readiness_question) .elementor-field-label{margin-bottom:8px!important;display:block;font-size:14px;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-type-acceptance{margin-top:6px!important;margin-bottom:26px!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-type-acceptance label{line-height:1.5;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-field-type-submit{margin-top:4px!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-button,
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) button[type=submit]{background-color:#29a0b4!important;color:#ffffff!important;border-radius:4px;font-family:"Montserrat",sans-serif;font-weight:600;padding-top:16px!important;padding-bottom:16px!important;}
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) .elementor-button:hover,
.elementor-widget-form:has(.elementor-field-type-ai_readiness_question) button[type=submit]:hover{background-color:#1F8C9C!important;}

/* ---------------------------------------------------------------------------
 * Thank-you / confirmation section.
 * The markup is a native Elementor section (#warp-thankyou-section) built in the
 * page; these rules give it the assessment's dark theme. It stays visible inside
 * the Elementor editor (body.elementor-editor-active) so it can be edited, and is
 * hidden on the live page until the JS reveals it on a successful submit.
 * ------------------------------------------------------------------------- */
body:not(.elementor-editor-active) #warp-thankyou-section{display:none;}
#warp-thankyou-section{text-align:center;}

#warp-thankyou-section .warp-ty-check .elementor-icon{width:64px;height:64px;border-radius:999px;background:rgba(46,174,195,.12);border:1px solid rgba(46,174,195,.4);display:flex;align-items:center;justify-content:center;color:#2EAEC3;}
#warp-thankyou-section .warp-ty-eyebrow .elementor-heading-title{font-family:"Montserrat",sans-serif;font-weight:600;font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:#966CAF;margin:0;}
#warp-thankyou-section .warp-ty-headline .elementor-heading-title{font-family:"Montserrat",sans-serif;font-weight:700;font-size:52px;line-height:1.12;color:#fff;margin:0;}
#warp-thankyou-section .warp-ty-lead{max-width:640px;}
#warp-thankyou-section .warp-ty-lead,#warp-thankyou-section .warp-ty-lead p{font-family:"Roboto",sans-serif;font-size:17px;line-height:1.6;color:rgba(255,255,255,.72);margin:0;}
#warp-thankyou-section .warp-ty-lead strong{color:#fff;font-weight:700;}

#warp-thankyou-section #warp-ty-card{max-width:560px;width:100%;margin-top:16px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.03);padding:36px 34px!important;}
#warp-thankyou-section .warp-ty-card-title .elementor-heading-title{font-family:"Montserrat",sans-serif;font-weight:700;font-size:26px;color:#fff;margin:0;}
#warp-thankyou-section .warp-ty-card-text,#warp-thankyou-section .warp-ty-card-text p{font-family:"Roboto",sans-serif;font-size:15px;line-height:1.6;color:rgba(255,255,255,.7);margin:0;}

#warp-thankyou-section .warp-ty-cta .elementor-button{background-color:#29a0b4;color:#fff;border-radius:4px;font-family:"Montserrat",sans-serif;font-weight:600;font-size:14px;padding:15px 34px;transition:background-color .16s;}
#warp-thankyou-section .warp-ty-cta .elementor-button:hover{background-color:#1F8C9C;}

#warp-thankyou-section .warp-ty-retake{margin-top:6px;}
#warp-thankyou-section .warp-ty-retake .elementor-button{background:transparent;color:rgba(255,255,255,.5);font-family:"Roboto",sans-serif;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;padding:8px 6px;box-shadow:none;transition:color .16s;}
#warp-thankyou-section .warp-ty-retake .elementor-button:hover{background:transparent;color:#fff;}

@media(max-width:700px){#warp-thankyou-section .warp-ty-headline .elementor-heading-title{font-size:34px;}#warp-thankyou-section #warp-ty-card{padding:28px 22px!important;}}

