@font-face{font-family:'Contact Condensed';src:url('../fonts/gt-walsheim-pro/GTWalsheimPro-CondensedRegular.woff2') format('woff2');font-display:swap}
@font-face{font-family:'Contact Condensed';src:url('../fonts/gt-walsheim-pro/GTWalsheimPro-CondensedBold.woff2') format('woff2');font-weight:700;font-display:swap}
body.contact-flow-page{background:#fff;--font-heading:'Times New Roman',serif}
body.contact-flow-page #navbar,body.contact-flow-page .p23-navbar-wrapper{display:none!important}
.cf-stage{position:relative;isolation:isolate;padding:100px 24px 110px;min-height:0;font-family:'Contact Condensed',sans-serif;color:#0a3d43}
.cf-stage:before{content:'';position:absolute;inset:0;z-index:-1;background:url('../images/contact/texture.png') -262px -212px / 1024px 1024px;opacity:.15;pointer-events:none}
.cf-form{position:relative;max-width:1057px;min-height:626px;margin:auto;background:#fff;border-radius:30px;box-shadow:0 10px 10px #0005}
.cf-form [hidden],.cf-success[hidden]{display:none!important}
.cf-badge{position:absolute;left:100px;top:-43px;width:91px;height:91px;z-index:2;display:grid;place-items:center}
.cf-badge img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:none;pointer-events:none}
.cf-badge span{position:relative;font:700 32px/1 'Contact Condensed',sans-serif;letter-spacing:.5px}
.cf-header{position:relative;min-height:177px;background:#0a3d43;border-radius:30px 30px 0 0;color:#fff;text-align:center;padding:97px 24px 16px}
.cf-header h1{font:800 24px/24px 'Montserrat',sans-serif;letter-spacing:.5px;text-transform:uppercase;color:#fff;margin:0 0 7px;outline:none}
.cf-header p{font:400 16px/18px 'Contact Condensed',sans-serif;max-width:416px;letter-spacing:.5px;margin:0 auto}
.cf-progress{position:absolute;top:31px;right:100px;width:157px;text-align:right}
.cf-progress>span{font-size:13px;line-height:24px;letter-spacing:.5px;display:block}
#cfProgress{height:10px;background:#e8e8e8;border-radius:30px;overflow:hidden}
#cfProgress>span{display:block;background:#df77c5;width:37.6%;height:100%;border-radius:30px;transition:width .2s}
.cf-body{padding:62px 154px 39px;border-radius:0 0 30px 30px;position:relative;isolation:isolate;min-height:449px;display:flex;flex-direction:column}
.cf-form[data-current-step="2"] .cf-body,.cf-form[data-current-step="3"] .cf-body{padding:36px 31px 39px}
.cf-form[data-current-step="2"] .cf-body:before,.cf-form[data-current-step="3"] .cf-body:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:url('../images/contact/pattern.jpg') center / 1362px 1362px;opacity:.2;pointer-events:none}
.cf-step{border:0;padding:0;margin:0;min-width:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 37px;align-content:start;flex:1}
.cf-column{display:flex;flex-direction:column;gap:16px;min-width:0}
.cf-column-right{gap:16px}
.cf-field{min-width:0}
.cf-field-center{grid-column:1 / -1;width:calc((100% - 37px) / 2);margin:0 auto}
.cf-form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){display:block;width:100%;min-width:0;height:55px;border:1px solid #e2e2e2;border-radius:30px;background:#fff;color:#0a3d43;box-shadow:0 10px 10px #0005;padding:15px 39px;font:400 13px/24px 'Contact Condensed',sans-serif;letter-spacing:.5px;outline-offset:3px}
.cf-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none}
.cf-form input[type=number]{-moz-appearance:textfield;appearance:textfield}
.cf-form input[type=number]::-webkit-inner-spin-button,.cf-form input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.cf-form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):-webkit-autofill,
.cf-form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):-webkit-autofill:hover,
.cf-form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):-webkit-autofill:focus,
.cf-form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea):autofill{-webkit-text-fill-color:#0a3d43!important;color:#0a3d43!important;-webkit-box-shadow:0 0 0 1000px #fff inset,0 10px 10px #0005!important;box-shadow:0 0 0 1000px #fff inset,0 10px 10px #0005!important;font:400 13px/24px 'Contact Condensed',sans-serif!important;letter-spacing:.5px;caret-color:#0a3d43;transition:background-color 9999s ease-out 0s}
.cf-form input::placeholder,.cf-form textarea::placeholder{color:#898d8d;opacity:1}
.cf-form select:invalid{color:#898d8d}
.cf-form textarea{height:106px;resize:vertical;line-height:18px;padding-top:26px}
.cf-form label:not(.cf-choice),.cf-form legend:not(.cf-sr-only){font:700 16px/15px 'Contact Condensed',sans-serif;letter-spacing:.5px;color:#0a3d43}
.cf-phone{display:flex;gap:6px;min-width:0}
.cf-country{position:relative;flex:0 0 89px;height:55px;border:1px solid #e2e2e2;border-radius:30px;background:#fff;box-shadow:0 10px 10px #0005}
.cf-country:focus-within{outline:3px solid #df77c5;outline-offset:3px}
.cf-country:has([aria-invalid=true]){border-color:#a6153c!important}
.cf-country>img,.cf-country>span{position:absolute;top:15px;left:19px;pointer-events:none;z-index:1}
.cf-country>img{border-radius:3px;object-fit:cover}
.cf-country>span{top:14px;font-size:26px;line-height:1}
.cf-form .cf-country select,.cf-form .cf-country select:-webkit-autofill,.cf-form .cf-country select:-webkit-autofill:hover,.cf-form .cf-country select:-webkit-autofill:focus,.cf-form .cf-country select:autofill{position:absolute;inset:0;width:100%;height:100%;opacity:0!important;padding:0!important;border:0!important;box-shadow:none!important;-webkit-box-shadow:none!important;-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important;color:transparent!important;-webkit-text-fill-color:transparent!important;cursor:pointer;z-index:2}
.cf-form .cf-country select option{color:#0a3d43;-webkit-text-fill-color:#0a3d43}
.cf-phone-number{position:relative;min-width:0;flex:1}
.cf-phone-number>span{position:absolute;top:17px;left:21px;z-index:2;pointer-events:none;color:#898d8d;font-size:13px;border-right:1px solid #e2e2e2;padding-right:10px;line-height:21px}
.cf-form .cf-phone-number input{padding-left:72px;padding-right:16px}
.cf-actions{display:flex;justify-content:center;gap:15px;margin-top:36px}
.cf-actions button{display:flex;align-items:center;justify-content:center;width:108px;min-height:53px;padding:10px;border-radius:20px;box-shadow:0 10px 10px #0005;cursor:pointer}
.cf-back{border:1px solid #b0d3cc;background:white;color:#0a3d43}
.cf-back>img{transform:rotate(180deg)}
.cf-next{border:1px solid #591044;background:#591044;color:#fff}
.cf-next:hover{background:#75185b}
.cf-actions button:disabled{opacity:.45;cursor:default}
.cf-form[data-current-step="3"] .cf-next{width:auto;min-width:150px;gap:12px;font-size:16px}
.cf-needs,.cf-readiness{grid-template-columns:minmax(0,589fr) minmax(0,346fr);gap:54px}
.cf-choice-group,.cf-referrals{border:0;padding:0;margin:0;min-width:0}
.cf-choice-group legend,.cf-referrals legend{margin-bottom:13px}
.cf-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;min-height:141px;align-content:start}
.cf-choice{position:relative;display:flex;min-height:58px;cursor:pointer}
.cf-choice input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer}
.cf-choice>span{display:flex;align-items:center;justify-content:center;width:100%;padding:10px 15px;border:1px solid #e2e2e2;border-radius:10px;box-shadow:0 10px 10px #21212126;background:white;font:400 13px/16px 'Contact Condensed',sans-serif;letter-spacing:.5px;text-align:center}
.cf-choice input:checked+span{color:#10ac8d;border-color:#1ed2aa;box-shadow:0 10px 10px #1ed2aa26}
.cf-choice input:checked+span:after{content:'';position:absolute;right:-5px;top:-6px;width:26px;height:26px;background:url('../images/contact/selected.svg') center no-repeat}
.cf-choice input:focus-visible+span{outline:3px solid #0a3d43;outline-offset:4px}
.cf-market-group{margin-top:28px}
.cf-market-group>label,.cf-budget>label,.cf-needs-right .cf-field>label,.cf-notes .cf-field>label{display:block;margin-bottom:13px}
.cf-market-input{display:flex;gap:18px;max-width:334px}
.cf-form .cf-market-input input{border-radius:10px;padding-inline:24px;flex:1}
.cf-market-input button{width:82px;flex:none;border:1px solid #e2e2e2;border-radius:10px;background:#414141;color:#fff;box-shadow:0 10px 10px #0005;font-size:15px}
.cf-markets{display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:12px 0 0;list-style:none}
.cf-markets:empty{margin:0}
.cf-markets li{display:flex;align-items:center;gap:10px;border:1px solid #b0d3cc;border-radius:20px;padding:4px 12px;background:#fff;font-size:14px}
.cf-markets button{border:0;background:transparent;font-size:21px;color:#591044;line-height:1}
.cf-needs-right{gap:28px}
.cf-form .cf-needs textarea,.cf-form .cf-readiness textarea,.cf-form .cf-referrals>input,.cf-form .cf-budget input{border-radius:10px;padding:15px 26px}
.cf-form .cf-needs textarea{height:92px}
.cf-referral-options{display:flex;flex-wrap:wrap;gap:10px 18px;margin:0 0 13px}
.cf-form .cf-referral-options label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:400;color:#898d8d;cursor:pointer;line-height:24px}
.cf-referral-options input{width:18px;height:18px;accent-color:#10ac8d;flex:none;margin:0}
.cf-budget{margin-top:28px;max-width:331px}
.cf-budget-input{position:relative}
.cf-budget-input>span{position:absolute;top:1px;bottom:1px;left:1px;width:48px;z-index:2;pointer-events:none;display:flex;align-items:center;justify-content:center;color:#898d8d;font:400 16px/1 'Contact Condensed',sans-serif;border-right:1px solid #e2e2e2}
.cf-form .cf-budget .cf-budget-input input{padding-left:64px;padding-right:20px}
.cf-notes{padding-top:28px}
.cf-form .cf-notes textarea{height:150px}
.cf-error{display:block;color:#a6153c;font:400 14px/18px 'Contact Condensed',sans-serif;white-space:normal;margin-top:6px}
.cf-error:empty{display:none}
.cf-alert{max-width:1057px;margin:0 auto 24px;padding:16px 24px;background:#fff1f4;color:#8d173c;border:1px solid #d6a7b4;border-radius:10px;font:400 16px/24px 'Contact Condensed',sans-serif}
.cf-form>.cf-alert{margin:20px 30px 0}
.cf-form [aria-invalid=true]{border-color:#a6153c!important}
.cf-success{max-width:760px;margin:auto;background:white;padding:70px 40px;border-radius:30px;box-shadow:0 10px 10px #0005;text-align:center}
.cf-success h1{font:800 32px/1.2 'Montserrat',sans-serif;color:#0a3d43}
.cf-success p{font-size:20px}
.cf-success a{display:inline-block;margin-top:16px;background:#591044;color:white;padding:14px 24px;border-radius:20px;text-decoration:none}
.cf-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.cf-form :focus-visible{outline:3px solid #df77c5}
@media(max-width:1100px){.cf-body{padding-inline:8%}.cf-needs,.cf-readiness{gap:32px}.cf-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.cf-market-group,.cf-budget{margin-top:16px}}
@media(max-width:767px){
.cf-stage{padding:80px 20px 60px;min-height:0}
.cf-form{border-radius:24px}
.cf-header{border-radius:24px 24px 0 0;min-height:200px;padding:102px 20px 24px}
.cf-header h1{font-size:21px;line-height:26px}
.cf-header p{font-size:16px;line-height:20px;max-width:340px}
.cf-badge{left:24px;top:-43px}
.cf-progress{right:24px;top:27px;width:125px}
.cf-body,.cf-form[data-current-step="2"] .cf-body,.cf-form[data-current-step="3"] .cf-body{padding:30px 24px;min-height:0}
.cf-step{grid-template-columns:1fr;gap:16px}
.cf-field-center{width:100%}
.cf-column,.cf-column-right{gap:16px}
.cf-form :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea){font-size:16px;padding-inline:24px}
.cf-form .cf-country select{padding:0}
.cf-form .cf-phone-number input{padding-left:68px;padding-right:12px}
.cf-phone-number>span{left:15px}
.cf-country{flex-basis:80px}
.cf-country>img,.cf-country>span{left:15px}
.cf-form textarea{padding-top:22px}
.cf-actions{margin-top:32px}
.cf-choices{grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}
.cf-choice>span{font-size:15px;line-height:18px;min-height:66px;padding-inline:10px}
.cf-market-group,.cf-budget{margin-top:24px}
.cf-market-input{max-width:none;gap:12px}
.cf-market-input button{width:66px}
.cf-form .cf-market-input input{padding-inline:16px}
.cf-needs-right{gap:24px}
.cf-notes{padding-top:0}
.cf-budget{max-width:none}
.cf-header .cf-progress>span{font-size:14px}
.cf-form .cf-referral-options label{font-size:15px}
.cf-success{padding:50px 24px}
}
@media(prefers-reduced-motion:reduce){#cfProgress>span{transition:none}}

.cf-form{scroll-margin-top:60px}
@media(max-width:991px){.cf-form{scroll-margin-top:60px}}
.cf-country:after{content:'';position:absolute;right:16px;top:22px;z-index:1;width:11px;height:10px;background:url('../images/contact/country-chevron.svg') center / contain no-repeat;pointer-events:none;transform:scaleY(-1)}
body.contact-flow-page #navbar .navbar-toggler{border:0!important;background:transparent!important}
body.contact-flow-page #navbar .navbar-toggler img{filter:brightness(0) invert(1)!important;-webkit-filter:brightness(0) invert(1)!important}

/* White navigation variant from the supplied contact-page reference. */
body.contact-flow-page #navbar.navbar-full,
body.contact-flow-page #navbar.bg-scrolling{background:#fff!important;background-color:#fff!important;box-shadow:none!important;top:0!important}
body.contact-flow-page #navbar .navbar{background:transparent!important}
body.contact-flow-page #navbar>div{max-width:1272px!important;padding-inline:24px!important}
body.contact-flow-page #navbar .navbar-brand.logo img{filter:brightness(0)!important;-webkit-filter:brightness(0)!important;width:64px!important;height:34px!important;object-fit:contain}
body.contact-flow-page #navbar #nav li .nav-link,
body.contact-flow-page #navbar.bg-scrolling #nav li a{color:#111!important;font-family:'Montserrat',sans-serif!important;font-size:16px!important;font-weight:400!important;text-transform:capitalize;opacity:1!important;white-space:nowrap}
body.contact-flow-page #navbar .main-nav #nav li:nth-child(2) .nav-link{font-weight:700!important}
body.contact-flow-page #navbar>.contact,
body.contact-flow-page #navbar .main-nav>.contact{display:none!important}
body.contact-flow-page #navbar .main-nav>.subscribe #btn{color:#111!important;background:transparent!important;border:1px solid #777!important;border-radius:10px!important;font:700 11px/24px 'Montserrat',sans-serif!important;padding:12px 24px!important;white-space:nowrap}
body.contact-flow-page #navbar .social-icons a,
body.contact-flow-page #navbar.bg-scrolling .social-icons a{color:#000!important;opacity:1!important;font-size:19px!important}
body.contact-flow-page #navbar .navbar-toggler img{filter:brightness(0)!important;-webkit-filter:brightness(0)!important}
@media(min-width:992px){
body.contact-flow-page #navbar .container-fluid{padding:0;flex-wrap:nowrap}
body.contact-flow-page #navbar .main-nav{margin-left:0!important}
body.contact-flow-page #navbar .navbar-brand.logo{margin:0 70px 0 0!important}
body.contact-flow-page #navbar #nav{margin-left:0!important;gap:12px!important}
body.contact-flow-page #navbar #nav li .nav-link{padding:8px 6px!important}
}
@media(min-width:992px) and (max-width:1200px){
body.contact-flow-page #navbar .navbar-brand.logo{margin-right:25px!important}
body.contact-flow-page #navbar #nav{gap:4px!important}
body.contact-flow-page #navbar #nav li .nav-link{font-size:13px!important}
body.contact-flow-page #navbar .main-nav>.subscribe #btn{padding-inline:14px!important}
body.contact-flow-page #navbar .social-icons{gap:2px!important;margin-left:8px!important}
}

/* Continue the page texture through the fixed header without a white seam. */
body.contact-flow-page #navbar.navbar-full,
body.contact-flow-page #navbar.bg-scrolling{background:#fff!important;background-color:#fff!important;isolation:isolate}
body.contact-flow-page #navbar:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:url('../images/contact/texture.png') -262px -212px / 1024px 1024px;opacity:.15}

/* Override the shared dark-header hover treatment on this light header. */
body.contact-flow-page #navbar #nav li .nav-link:hover,
body.contact-flow-page #navbar #nav li .nav-link:focus-visible,
body.contact-flow-page #navbar.bg-scrolling #nav li a:hover,
body.contact-flow-page #navbar.bg-scrolling #nav li a:focus-visible,
body.contact-flow-page #navbar .social-icons a:hover,
body.contact-flow-page #navbar .social-icons a:focus-visible,
body.contact-flow-page #navbar.bg-scrolling .social-icons a:hover{color:#0a3d43!important;opacity:1!important}
body.contact-flow-page #navbar .main-nav>.subscribe #btn:hover,
body.contact-flow-page #navbar .main-nav>.subscribe #btn:focus-visible,
body.contact-flow-page #navbar.bg-scrolling .main-nav>.subscribe #btn:hover{color:#0a3d43!important;background:#0a3d430d!important;border-color:#0a3d43!important}

/* Route 2 - Key Challenges (Figma "For consultation flow"). */
.cf-kc{min-height:626px}
.cf-kc .cf-kc-header{margin:-16px -16px 0;border-radius:10px;min-height:193px;padding:100px 24px 24px}
.cf-kc .cf-kc-header p{max-width:none;margin-top:6px}
.cf-kc .cf-kc-body{padding:79px 24px 39px;min-height:449px}
.cf-kc .cf-kc-body:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;background:url('../images/contact/pattern.jpg') center / 1362px 1362px;opacity:.35;pointer-events:none}
.cf-kc-group{border:0;padding:0;margin:0;min-width:0}
.cf-kc-choices{display:flex;flex-wrap:wrap;justify-content:center;gap:30px 25px;max-width:907px;margin:0 auto}
.cf-kc-choice{flex:0 0 208px;min-height:87px}
.cf-kc-choice>span{font-size:16px;line-height:18px;color:#0d4036;border-color:#e2e2e2;padding:10px 24px}
.cf-kc-choice input:checked+span{color:#1ed2aa;border-color:#e2e2e2}
.cf-kc-group .cf-error{text-align:center;margin-top:16px}
.cf-kc .cf-actions{margin-top:74px}
.cf-actions a{display:flex;align-items:center;justify-content:center;width:108px;min-height:53px;padding:10px;border-radius:20px;box-shadow:0 10px 10px #0005;cursor:pointer;text-decoration:none}
.cf-actions a.cf-back:hover{background:#f3faf8}
@media(max-width:1100px){.cf-kc .cf-kc-header{margin:0}}
@media(max-width:767px){
.cf-kc{min-height:0}
.cf-kc .cf-kc-header{border-radius:24px 24px 0 0;min-height:0;padding:56px 20px 28px}
.cf-kc .cf-kc-body{padding:36px 20px 32px;min-height:0}
.cf-kc-choices{gap:16px}
.cf-kc-choice{flex:0 0 calc(50% - 8px);min-height:80px}
.cf-kc-choice>span{font-size:15px;padding:10px 12px}
.cf-kc .cf-actions{margin-top:40px}
}
