
:root {
 --itfr-navy: #282828;
 --itfr-blue: #00bcf2;
 --itfr-cyan: #00bcf2;
 --itfr-sky: #80def9;
 --itfr-orange: #fcd31e;
 --itfr-magenta: #d41d52;
 --itfr-purple: #854499;
 --itfr-text: #24313d;
 --itfr-muted: #667786;
 --itfr-line: #d7e9f1;
 --itfr-bg: #f5fbfe;
 --itfr-white: #ffffff;
 --itfr-danger: #b42318;
 --itfr-shadow: 0 16px 42px rgba(20, 143, 195, 0.16);
}

.ask-itfr-home-shell,
.ask-itfr-modal *,
.ask-itfr-launcher {
 box-sizing: border-box;
}

.ask-itfr-home-shell {
 width: 100%;
 max-width: 1180px;
 margin: 0 auto;
 padding: 28px;
 border-radius: 24px;
 background:
 radial-gradient(circle at 12% 18%, rgba(255,255,255,.24), transparent 30%),
 radial-gradient(circle at 88% 20%, rgba(255,255,255,.16), transparent 26%),
 linear-gradient(90deg,#80DEF9 0%,#00BCF2 100%);
 color: var(--itfr-text);
 box-shadow: var(--itfr-shadow);
}

.ask-itfr-home-heading {
 margin: 0 0 8px;
 font-size: clamp(28px, 3.6vw, 44px);
 line-height: 1.08;
 font-weight: 600;
 color: #ffffff;
 letter-spacing: -0.03em;
}

.ask-itfr-home-copy {
 max-width: 820px;
 margin: 0 0 22px;
 font-size: 18px;
 line-height: 1.55;
 color: rgba(36,49,61,.88);
}

.ask-itfr-search-box {
 position: relative;
}

.ask-itfr-input-row {
 display: flex;
 gap: 10px;
 align-items: stretch;
}

.ask-itfr-input {
 width: 100%;
 min-height: 62px;
 border: 1px solid rgba(255,255,255,.85);
 border-radius: 15px;
 padding: 0 54px 0 20px;
 background: var(--itfr-white);
 color: var(--itfr-text);
 font-size: 17px;
 outline: none;
 box-shadow: 0 8px 24px rgba(10,92,130,.13);
}

.ask-itfr-input:focus {
 border-color: var(--itfr-cyan);
 box-shadow: 0 0 0 3px rgba(255,255,255,.45), 0 8px 24px rgba(10,92,130,.14);
}

.ask-itfr-clear {
 position: absolute;
 right: 16px;
 top: 15px;
 width: 32px;
 height: 32px;
 border: 0;
 background: transparent;
 color: #667085;
 font-size: 26px;
 line-height: 1;
 cursor: pointer;
 display: none;
}

.ask-itfr-search-box.has-value .ask-itfr-clear {
 display: block;
}

.ask-itfr-popular {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 gap: 8px;
 margin-top: 15px;
}

.ask-itfr-popular-label {
 font-size: 14px;
 color: rgba(36,49,61,.72);
}

.ask-itfr-chip {
 border: 1px solid rgba(255,255,255,.72);
 border-radius: 999px;
 padding: 8px 12px;
 background: rgba(255,255,255,.34);
 color: #24313d;
 font-size: 13px;
 cursor: pointer;
 transition: .18s ease;
}

.ask-itfr-chip:hover,
.ask-itfr-chip:focus {
 background: rgba(255,255,255,.62);
 transform: translateY(-1px);
}

.ask-itfr-results {
 display: none;
 margin-top: 18px;
 padding: 14px;
 border-radius: 18px;
 background: var(--itfr-white);
 color: var(--itfr-text);
 box-shadow: 0 15px 35px rgba(0,0,0,.16);
}

.ask-itfr-results.is-open {
 display: block;
}

.ask-itfr-result-title {
 margin: 0 0 10px;
 color: var(--itfr-muted);
 font-size: 12px;
 font-weight: 600;
 letter-spacing: .09em;
 text-transform: uppercase;
}

.ask-itfr-result {
 display: block;
 width: 100%;
 padding: 15px;
 border: 1px solid transparent;
 border-radius: 13px;
 background: transparent;
 text-align: left;
 cursor: pointer;
 transition: .16s ease;
}

.ask-itfr-result + .ask-itfr-result {
 margin-top: 7px;
}

.ask-itfr-result:hover,
.ask-itfr-result:focus {
 border-color: var(--itfr-line);
 background: var(--itfr-bg);
}

.ask-itfr-result.is-best {
 border-color: #b9e7f5;
 background: #f2fbfe;
}

.ask-itfr-result-badge {
 display: inline-block;
 margin-bottom: 6px;
 border-radius: 999px;
 padding: 4px 8px;
 background: #dff6fc;
 color: #00bcf2;
 font-size: 11px;
 font-weight: 800;
 letter-spacing: .05em;
 text-transform: uppercase;
}

.ask-itfr-result-question {
 display: block;
 margin-bottom: 5px;
 color: var(--itfr-navy);
 font-size: 16px;
 font-weight: 750;
 line-height: 1.35;
}

.ask-itfr-result-meta {
 display: block;
 color: var(--itfr-muted);
 font-size: 13px;
}

.ask-itfr-answer {
 display: none;
 margin-top: 18px;
 padding: 22px;
 border-radius: 18px;
 background: var(--itfr-white);
 color: var(--itfr-text);
 box-shadow: 0 15px 35px rgba(0,0,0,.16);
}

.ask-itfr-answer.is-open {
 display: block;
}

.ask-itfr-answer-kicker {
 margin: 0 0 7px;
 color: var(--itfr-blue);
 font-size: 12px;
 font-weight: 850;
 letter-spacing: .09em;
 text-transform: uppercase;
}

.ask-itfr-answer h3 {
 margin: 0 0 10px;
 color: var(--itfr-navy);
 font-size: 23px;
 line-height: 1.25;
}

.ask-itfr-answer p {
 margin: 0;
 color: #344054;
 font-size: 16px;
 line-height: 1.62;
}

.ask-itfr-actions {
 display: flex;
 flex-wrap: wrap;
 gap: 10px;
 margin-top: 18px;
}

.ask-itfr-primary,
.ask-itfr-secondary {
 display: inline-flex;
 align-items: center;
 justify-content: center;
 min-height: 45px;
 border-radius: 10px;
 padding: 10px 16px;
 text-decoration: none !important;
 font-size: 14px;
 font-weight: 750;
}

.ask-itfr-primary {
 background: linear-gradient(90deg,#80DEF9 0%,#00BCF2 100%);
 color: var(--itfr-white) !important;
}

.ask-itfr-primary:hover {
 background: linear-gradient(90deg,#80DEF9 0%,#00BCF2 100%);
}

.ask-itfr-secondary {
 border: 1px solid var(--itfr-line);
 background: var(--itfr-white);
 color: var(--itfr-navy) !important;
}

.ask-itfr-empty {
 padding: 8px 4px;
}

.ask-itfr-empty h3 {
 margin: 0 0 6px;
 color: var(--itfr-navy);
 font-size: 18px;
}

.ask-itfr-empty p {
 margin: 0 0 13px;
 color: var(--itfr-muted);
 line-height: 1.55;
}


.ask-itfr-modal {
 position: fixed;
 inset: 0;
 z-index: 99999;
 display: none;
 padding: 24px;
 background: rgba(4, 18, 34, .74);
 backdrop-filter: blur(6px);
}

.ask-itfr-modal.is-open {
 display: flex;
 align-items: flex-start;
 justify-content: center;
 overflow-y: auto;
}

.ask-itfr-modal-panel {
 width: min(760px, 100%);
 margin: 6vh auto;
 border-radius: 22px;
 padding: 25px;
 background: var(--itfr-white);
 box-shadow: var(--itfr-shadow);
}

.ask-itfr-modal-header {
 display: flex;
 justify-content: space-between;
 gap: 20px;
 margin-bottom: 17px;
}

.ask-itfr-modal-header h2 {
 margin: 0 0 5px;
 color: var(--itfr-navy);
 font-size: 30px;
}

.ask-itfr-modal-header p {
 margin: 0;
 color: var(--itfr-muted);
 line-height: 1.45;
}

.ask-itfr-modal-close {
 flex: 0 0 auto;
 width: 40px;
 height: 40px;
 border: 1px solid var(--itfr-line);
 border-radius: 10px;
 background: var(--itfr-white);
 color: var(--itfr-navy);
 font-size: 25px;
 cursor: pointer;
}

.ask-itfr-modal .ask-itfr-popular-label {
 color: var(--itfr-muted);
}

.ask-itfr-modal .ask-itfr-chip {
 border-color: var(--itfr-line);
 background: var(--itfr-bg);
 color: var(--itfr-navy);
}

.ask-itfr-modal .ask-itfr-results,
.ask-itfr-modal .ask-itfr-answer {
 border: 1px solid var(--itfr-line);
 box-shadow: none;
}

body.ask-itfr-no-scroll {
 overflow: hidden;
}

@media (max-width: 767px) {
 .ask-itfr-home-shell {
 padding: 22px 17px;
 border-radius: 18px;
 }

 .ask-itfr-home-copy {
 font-size: 16px;
 }

 .ask-itfr-input {
 min-height: 57px;
 font-size: 16px;
 }

 .ask-itfr-modal {
 padding: 10px;
 }

 .ask-itfr-modal-panel {
 margin: 10px auto;
 min-height: calc(100vh - 20px);
 border-radius: 17px;
 padding: 18px 14px;
 }

 .ask-itfr-modal-header h2 {
 font-size: 25px;
 }
}

.ask-itfr-pillar-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}
.ask-itfr-pillar-links a{display:inline-flex;align-items:center;min-height:32px;padding:5px 10px;border-radius:8px;background:rgba(255,255,255,.24);color:#174b68!important;font-size:12px;font-weight:750;text-decoration:none!important}
.ask-itfr-pillar-links a:hover{background:rgba(255,255,255,.55)}
.ask-itfr-modal .ask-itfr-pillar-links a{border:1px solid var(--itfr-line);background:#fff;color:var(--itfr-navy)!important}
.ask-itfr-next-step{margin-top:12px!important;padding-top:12px;border-top:1px solid var(--itfr-line);font-size:14px!important;color:var(--itfr-muted)!important}


.ask-itfr-quick-row{
 display:flex;
 align-items:flex-end;
 justify-content:space-between;
 gap:18px;
 margin-top:11px
}
.ask-itfr-quick-row .ask-itfr-pillar-links{
 margin-top:0;
 flex:0 1 auto
}
.ask-itfr-contact-quick{
 display:flex;
 align-items:center;
 justify-content:flex-end;
 flex-wrap:wrap;
 gap:7px 12px;
 margin-left:auto;
 color:var(--itfr-muted);
 font-size:12px
}
.ask-itfr-contact-label{
 font-weight:750;
 color:var(--itfr-navy)
}
.ask-itfr-contact-link{
 display:inline-flex;
 align-items:center;
 gap:4px;
 color:#00bcf2!important;
 text-decoration:none!important;
 white-space:nowrap
}
.ask-itfr-contact-link:hover{
 color:var(--itfr-blue)!important;
 text-decoration:underline!important
}
.ask-itfr-modal .ask-itfr-contact-quick{
 padding-left:8px
}
@media (max-width:900px){
 .ask-itfr-quick-row{
 align-items:flex-start;
 flex-direction:column;
 gap:12px
 }
 .ask-itfr-contact-quick{
 justify-content:flex-start;
 margin-left:0;
 padding-left:0!important
 }
}
@media (max-width:520px){
 .ask-itfr-contact-quick{
 display:grid;
 grid-template-columns:1fr;
 gap:7px
 }
}


.ask-itfr-quick-guide{
 margin-top:16px;
 padding:15px 17px;
 border:1px solid #b9e7f5;
 border-radius:13px;
 background:#f2fbfe
}
.ask-itfr-quick-guide.is-urgent{
 border-color:#f1c7c3;
 background:#fff6f5
}
.ask-itfr-quick-guide-title{
 margin-bottom:8px;
 color:var(--itfr-navy);
 font-size:14px;
 font-weight:850
}
.ask-itfr-quick-guide.is-urgent .ask-itfr-quick-guide-title{
 color:var(--itfr-danger)
}
.ask-itfr-quick-guide ol{
 margin:10px 0 0 !important;
 padding-left:24px !important;
 list-style:decimal outside !important
}
.ask-itfr-quick-guide li{
 display:list-item !important;
 list-style:decimal outside !important;
 margin:0 0 7px !important;
 padding-left:2px !important;
 color:#344054;
 font-size:14px;
 line-height:1.5
}


.ask-itfr-journey-guide{margin-top:16px;padding:16px 18px;border:1px solid #b9e7f5;border-radius:13px;background:linear-gradient(135deg,#f5fcff,#eef9fd)}
.ask-itfr-journey-title{margin-bottom:4px;color:#00bcf2;font-size:11px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.ask-itfr-journey-guide h4{margin:0 0 9px;color:var(--itfr-navy);font-size:17px}
.ask-itfr-journey-guide ol{margin:10px 0 0 !important;padding-left:24px !important;list-style:decimal outside !important}
.ask-itfr-journey-guide li{display:list-item !important;list-style:decimal outside !important;margin:0 0 7px !important;padding-left:2px !important;color:#344054;font-size:14px;line-height:1.5}
.ask-itfr-journey-guide li::marker,
.ask-itfr-quick-guide li::marker{color:#00bcf2 !important;font-weight:800 !important}
.ask-itfr-journey-guide.is-urgent li::marker,
.ask-itfr-quick-guide.is-urgent li::marker{color:#d41d52 !important}


.ask-itfr-enquiry{
 display:none;
 margin-top:16px;
 padding:18px;
 border:1px solid var(--itfr-line);
 border-radius:15px;
 background:#fff
}
.ask-itfr-enquiry.is-open{display:block}
.ask-itfr-enquiry h4{margin:0 0 5px;color:var(--itfr-navy);font-size:18px}
.ask-itfr-enquiry-intro{margin:0 0 14px!important;color:var(--itfr-muted)!important;font-size:14px!important}
.ask-itfr-form-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1.5fr) minmax(0,.9fr);gap:10px}
.ask-itfr-field{display:flex;flex-direction:column;gap:5px}
.ask-itfr-field.full{grid-column:1/-1}
.ask-itfr-field label{font-size:12px;font-weight:750;color:#344054}
.ask-itfr-field input,.ask-itfr-field textarea{
 width:100%;border:1px solid var(--itfr-line);border-radius:9px;padding:10px 11px;
 background:#fff;color:var(--itfr-text);font:inherit;outline:none
}
.ask-itfr-field textarea{min-height:82px;resize:vertical}
.ask-itfr-field input:focus,.ask-itfr-field textarea:focus{border-color:var(--itfr-cyan);box-shadow:0 0 0 3px rgba(47,195,232,.13)}
.ask-itfr-context{
 margin:12px 0;padding:11px 12px;border-radius:9px;background:var(--itfr-bg);
 color:#4b5b68;font-size:12px;line-height:1.5
}
.ask-itfr-notes-context-grid{
 display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;
 align-items:stretch;margin-top:10px
}
.ask-itfr-notes-context-grid.is-notes-only{grid-template-columns:1fr}
.ask-itfr-notes-context-grid .ask-itfr-field{min-width:0}
.ask-itfr-notes-context-grid .ask-itfr-context{height:100%;margin:0}
.ask-itfr-consent{display:flex;gap:8px;align-items:flex-start;margin:10px 0 14px;color:#52616d;font-size:12px;line-height:1.45}
.ask-itfr-consent input{margin-top:3px}
.ask-itfr-form-status{display:none;margin-top:11px;padding:10px 12px;border-radius:9px;font-size:13px}
.ask-itfr-form-status.is-success{display:block;background:#eefaf2;color:#166534}
.ask-itfr-form-status.is-error{display:block;background:#fff3f2;color:#9f2d25}
.ask-itfr-hp{position:absolute!important;left:-99999px!important;width:1px!important;height:1px!important;opacity:0!important}
@media(max-width:620px){.ask-itfr-form-grid{grid-template-columns:1fr}.ask-itfr-field.full{grid-column:auto}}
@media(max-width:760px){.ask-itfr-notes-context-grid{grid-template-columns:1fr}}


.ask-itfr-related{margin-top:16px;padding-top:14px;border-top:1px solid var(--itfr-line)}
.ask-itfr-related-title{margin-bottom:8px;font-size:12px;font-weight:800;color:var(--itfr-navy);text-transform:uppercase;letter-spacing:.06em}
.ask-itfr-related{display:flex;flex-wrap:wrap;gap:7px}
.ask-itfr-related-title{width:100%}
.ask-itfr-related button{border:1px solid var(--itfr-line);background:#fff;color:var(--itfr-navy);border-radius:999px;padding:7px 10px;font-size:12px;cursor:pointer}
.ask-itfr-related button:hover{background:var(--itfr-bg)}


.ask-itfr-managed-note{margin:14px 0;padding:13px 15px;border:1px solid var(--itfr-line);border-radius:12px;background:var(--itfr-bg);color:var(--itfr-text);font-size:13px;line-height:1.55}
.ask-itfr-managed-note strong{color:var(--itfr-navy)}



/* =========================================================
 ASK ITFR V3.2.1, CTA BUTTON POLISH
 Removes heavy grey/Divi border effect and adds ITFR hover
 ========================================================= */

#ask-itfr-root .ask-itfr-actions a,
#ask-itfr-root .ask-itfr-actions button,
#ask-itfr-root .ask-result-actions a,
#ask-itfr-root .ask-result-actions button {
 box-shadow: none !important;
 transition: background-color .18s ease, border-color .18s ease,
 color .18s ease, box-shadow .18s ease,
 transform .18s ease !important;
}

#ask-itfr-root .ask-itfr-actions a:first-child,
#ask-itfr-root .ask-itfr-actions button:first-child,
#ask-itfr-root .ask-result-actions a:first-child,
#ask-itfr-root .ask-result-actions button:first-child {
 background: #00bcf2 !important;
 border: 1px solid #00bcf2 !important;
 color: #fff !important;
}

#ask-itfr-root .ask-itfr-actions a:first-child:hover,
#ask-itfr-root .ask-itfr-actions button:first-child:hover,
#ask-itfr-root .ask-result-actions a:first-child:hover,
#ask-itfr-root .ask-result-actions button:first-child:hover {
 background: #00bcf2 !important;
 border-color: #00bcf2 !important;
 color: #fff !important;
 transform: translateY(-2px);
 box-shadow: 0 8px 20px rgba(28,169,218,.24) !important;
}

#ask-itfr-root .ask-itfr-actions a:not(:first-child),
#ask-itfr-root .ask-itfr-actions button:not(:first-child),
#ask-itfr-root .ask-result-actions a:not(:first-child),
#ask-itfr-root .ask-result-actions button:not(:first-child) {
 background: #fff !important;
 border: 1px solid #d3eaf4 !important;
 color: #282828 !important;
}

#ask-itfr-root .ask-itfr-actions a:not(:first-child):hover,
#ask-itfr-root .ask-itfr-actions button:not(:first-child):hover,
#ask-itfr-root .ask-result-actions a:not(:first-child):hover,
#ask-itfr-root .ask-result-actions button:not(:first-child):hover {
 background: #eefaff !important;
 border-color: #00bcf2 !important;
 color: #282828 !important;
 transform: translateY(-2px);
 box-shadow: 0 8px 20px rgba(28,169,218,.14) !important;
}

#ask-itfr-root .ask-itfr-actions a:focus-visible,
#ask-itfr-root .ask-itfr-actions button:focus-visible,
#ask-itfr-root .ask-result-actions a:focus-visible,
#ask-itfr-root .ask-result-actions button:focus-visible {
 outline: 3px solid rgba(28,169,218,.28) !important;
 outline-offset: 3px;
}



/* =========================================================
 ASK ITFR V3.2.2, STRONG CTA + SMART ASSISTANT FAB
 ========================================================= */

/* Result/action CTAs: remove Divi inset/grey effects and make hover unmistakable */
#ask-itfr-root a[class*="btn"],
#ask-itfr-root button[class*="btn"],
#ask-itfr-root a[class*="button"],
#ask-itfr-root button[class*="button"],
#ask-itfr-root .ask-actions a,
#ask-itfr-root .ask-actions button,
#ask-itfr-root .result-actions a,
#ask-itfr-root .result-actions button {
 -webkit-appearance:none !important;
 appearance:none !important;
 box-shadow:none !important;
 text-shadow:none !important;
 transition:transform .18s ease, box-shadow .18s ease, background .18s ease,
 border-color .18s ease, color .18s ease, filter .18s ease !important;
}

#ask-itfr-root a[class*="btn"]:hover,
#ask-itfr-root button[class*="btn"]:hover,
#ask-itfr-root a[class*="button"]:hover,
#ask-itfr-root button[class*="button"]:hover,
#ask-itfr-root .ask-actions a:hover,
#ask-itfr-root .ask-actions button:hover,
#ask-itfr-root .result-actions a:hover,
#ask-itfr-root .result-actions button:hover {
 transform:translateY(-3px) scale(1.025) !important;
 box-shadow:0 10px 24px rgba(0,155,220,.28) !important;
 border-color:#00bcf2 !important;
 filter:brightness(1.08) !important;
}

/* White secondary buttons visibly light up cyan on hover */
#ask-itfr-root a[style*="background:#fff"]:hover,
#ask-itfr-root a[style*="background: #fff"]:hover,
#ask-itfr-root button[style*="background:#fff"]:hover,
#ask-itfr-root button[style*="background: #fff"]:hover {
 background:#e9f9ff !important;
 color:#282828 !important;
 border-color:#00bcf2 !important;
}

/* =========================================================
 ASK ITFR V3.5.3, FINAL BUTTON NORMALISATION
 Actual V3 selectors; removes browser/Divi grey treatment
 ========================================================= */

/* ALL generated answer/action buttons */
#ask-itfr-root .ask-itfr-actions a,
#ask-itfr-root .ask-itfr-actions button,
#ask-itfr-root .ask-result-actions a,
#ask-itfr-root .ask-result-actions button,
#ask-itfr-root .ask-itfr-enquiry button,
#ask-itfr-root .ask-itfr-enquiry input[type="submit"] {
 -webkit-appearance:none !important;
 appearance:none !important;
 text-decoration:none !important;
 text-shadow:none !important;
 outline:none;
 box-shadow:none !important;
 transition:all .18s ease !important;
}

/* Secondary result CTAs: clean white/blue, absolutely no grey border */
#ask-itfr-root .ask-itfr-actions a:not(.primary),
#ask-itfr-root .ask-itfr-actions button:not(.primary),
#ask-itfr-root .ask-result-actions a:not(.primary),
#ask-itfr-root .ask-result-actions button:not(.primary) {
 background:#ffffff !important;
 background-image:none !important;
 color:#282828 !important;
 border:2px solid #cceaf6 !important;
}

/* Make ANY result/action CTA light up clearly on hover */
#ask-itfr-root .ask-itfr-actions a:hover,
#ask-itfr-root .ask-itfr-actions button:hover,
#ask-itfr-root .ask-result-actions a:hover,
#ask-itfr-root .ask-result-actions button:hover {
 background:#00bcf2 !important;
 background-image:none !important;
 color:#ffffff !important;
 border-color:#00bcf2 !important;
 transform:translateY(-3px) !important;
 box-shadow:0 9px 22px rgba(17,157,211,.30) !important;
 filter:none !important;
}

/* Keep the urgent/primary action blue at rest, brighter on hover */
#ask-itfr-root .ask-itfr-actions .primary,
#ask-itfr-root .ask-result-actions .primary {
 background:#00bcf2 !important;
 background-image:none !important;
 color:#fff !important;
 border:2px solid #00bcf2 !important;
}
#ask-itfr-root .ask-itfr-actions .primary:hover,
#ask-itfr-root .ask-result-actions .primary:hover {
 background:#00bcf2 !important;
 border-color:#00bcf2 !important;
 color:#fff !important;
 transform:translateY(-3px) scale(1.02) !important;
 box-shadow:0 10px 24px rgba(17,157,211,.34) !important;
}

/* Enquiry submit, same ITFR button language, no grey browser/Divi rim */
#ask-itfr-root .ask-itfr-enquiry button[type="submit"],
#ask-itfr-root .ask-itfr-enquiry input[type="submit"],
#ask-itfr-root button.ask-itfr-submit,
#ask-itfr-root .ask-itfr-submit {
 -webkit-appearance:none !important;
 appearance:none !important;
 background:#00bcf2 !important;
 background-image:none !important;
 color:#fff !important;
 border:2px solid #00bcf2 !important;
 border-radius:10px !important;
 box-shadow:none !important;
 text-shadow:none !important;
}
#ask-itfr-root .ask-itfr-enquiry button[type="submit"]:hover,
#ask-itfr-root .ask-itfr-enquiry input[type="submit"]:hover,
#ask-itfr-root button.ask-itfr-submit:hover,
#ask-itfr-root .ask-itfr-submit:hover {
 background:#00bcf2 !important;
 border-color:#00bcf2 !important;
 color:#fff !important;
 transform:translateY(-3px) !important;
 box-shadow:0 9px 22px rgba(17,157,211,.30) !important;
}

/* Keyboard focus remains accessible but uses ITFR cyan, not grey */
#ask-itfr-root .ask-itfr-actions a:focus-visible,
#ask-itfr-root .ask-itfr-actions button:focus-visible,
#ask-itfr-root .ask-result-actions a:focus-visible,
#ask-itfr-root .ask-result-actions button:focus-visible,
#ask-itfr-root .ask-itfr-enquiry button:focus-visible,
#ask-itfr-root .ask-itfr-enquiry input[type="submit"]:focus-visible {
 outline:3px solid rgba(32,183,232,.28) !important;
 outline-offset:3px !important;
}


/* ASK ITFR V4.5.2, guidance disclaimer */
.ask-itfr-disclaimer{
 margin:14px 0 0!important;
 padding:10px 12px;
 border-left:3px solid #b9e7f5;
 border-radius:7px;
 background:#f7fcfe;
 color:#667786!important;
 font-size:11.5px!important;
 line-height:1.5!important;
}
.ask-itfr-disclaimer strong{color:#344054}


.ask-itfr-service-role{font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#5f6f82;margin:0 0 7px}.ask-itfr-service-match[data-service-pillar="secure"] .ask-itfr-service-role{color:#d41d52}.ask-itfr-service-match[data-service-pillar="manage"] .ask-itfr-service-role{color:#00bcf2}.ask-itfr-service-match[data-service-pillar="procure"] .ask-itfr-service-role{color:#854499}.ask-itfr-service-match[data-service-pillar="govern"] .ask-itfr-service-role{color:#79b643}


/* ASK ITFR — near-square compact floating launcher.
   This is the single authoritative launcher definition. */
.ask-itfr-launcher {
 width: 82px !important;
 min-width: 82px !important;
 height: 72px !important;
 min-height: 72px !important;
 padding: 0 !important;
 gap: 0 !important;
 border: 0 !important;
 border-radius: 14px !important;
 background: transparent !important;
 box-shadow: none !important;
 overflow: visible !important;
 position: fixed !important;
 right: 22px !important;
 bottom: 22px !important;
 z-index: 99990 !important;
 display: inline-flex !important;
 align-items: center !important;
 justify-content: center !important;
 cursor: pointer !important;
 transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}

.ask-itfr-launcher::after {
 content: "?";
 position: absolute;
 top: -8px;
 right: -8px;
 width: 30px;
 height: 30px;
 display: flex;
 align-items: center;
 justify-content: center;
 border: 2px solid #fff;
 border-radius: 50%;
 background: #e53935;
 color: #fff;
 font: 800 18px/1 Arial,sans-serif;
 box-shadow: 0 3px 9px rgba(150,0,0,.28);
 pointer-events: none;
 animation: ask-itfr-badge-pulse 4.8s ease-in-out infinite;
}

.ask-itfr-launcher-prompt {
 position: absolute !important;
 right: 28px !important;
 bottom: calc(100% + 5px) !important;
 display: flex !important;
 flex-direction: column !important;
 align-items: center !important;
 gap: 4px !important;
 width: 26px !important;
 pointer-events: none !important;
}

.ask-itfr-launcher-prompt-text {
 display: block !important;
 writing-mode: vertical-rl !important;
 text-orientation: mixed !important;
 transform: rotate(180deg) !important;
 padding: 8px 6px !important;
 border: 1px solid rgba(7,158,216,.24) !important;
 border-radius: 999px !important;
 background: rgba(255,255,255,.96) !important;
 color: #282828 !important;
 box-shadow: 0 4px 12px rgba(10,63,114,.12) !important;
 font: 800 10px/1.1 Arial,sans-serif !important;
 letter-spacing: .08em !important;
 text-transform: uppercase !important;
 white-space: nowrap !important;
}

.ask-itfr-launcher-prompt-arrow {
 display: block !important;
 color: #00bcf2 !important;
 font: 900 21px/1 Arial,sans-serif !important;
 animation: ask-itfr-prompt-arrow 2.2s ease-in-out infinite !important;
}

@keyframes ask-itfr-prompt-arrow {
 0%,100% { transform: translateY(0); }
 50% { transform: translateY(3px); }
}

@keyframes ask-itfr-badge-pulse {
 0%,82%,100% { transform: scale(1); box-shadow:0 3px 9px rgba(150,0,0,.28); }
 87% { transform: scale(1.14); box-shadow:0 3px 9px rgba(150,0,0,.28),0 0 0 6px rgba(229,57,53,.13); }
 92% { transform: scale(1); box-shadow:0 3px 9px rgba(150,0,0,.28); }
}

.ask-itfr-launcher.ask-itfr-attention {
 animation: ask-itfr-attention 650ms ease-out 1 !important;
}

@keyframes ask-itfr-attention {
 0%,100% { margin-bottom:0; }
 40% { margin-bottom:4px; }
 70% { margin-bottom:-1px; }
}

.ask-itfr-launcher:hover {
 transform: translateY(-2px) !important;
 filter: brightness(1.04) !important;
 box-shadow: none !important;
}

/* Show the complete supplied compact artwork, including “Ask ITFR”. The
   transparent button avoids a second blue background, edge or shadow. */
.ask-itfr-launcher-logo-frame {
 display: block !important;
 position: relative !important;
 width: 82px !important;
 height: 72px !important;
 flex: 0 0 82px !important;
 overflow: visible !important;
 border-radius: 0 !important;
 line-height: 0 !important;
 pointer-events: none !important;
}

.ask-itfr-launcher-logo {
 display: block !important;
 position: static !important;
 width: 100% !important;
 height: 100% !important;
 max-width: 100% !important;
 max-height: 100% !important;
 object-fit: contain !important;
 object-position: center center !important;
 margin: 0 auto !important;
 padding: 0 !important;
 border: 0 !important;
 background: transparent !important;
 box-shadow: none !important;
 transform: none !important;
 transform-origin: center center !important;
 pointer-events: none !important;
}

@media (max-width:767px) {
 .ask-itfr-launcher {
  width: 74px !important;
  min-width: 74px !important;
  height: 66px !important;
  min-height: 66px !important;
  padding: 0 !important;
  border-radius: 13px !important;
  right: 14px !important;
  bottom: 14px !important;
 }
 .ask-itfr-launcher-logo-frame {
  width: 74px !important;
  height: 66px !important;
  flex-basis: 74px !important;
  border-radius: 0 !important;
 }
 .ask-itfr-launcher::after {
  top: -7px !important;
  right: -7px !important;
  width: 27px !important;
  height: 27px !important;
  font-size: 16px !important;
 }
 .ask-itfr-launcher-prompt {
  display: none !important;
 }
}

@media (prefers-reduced-motion: reduce) {
 .ask-itfr-launcher::after,
 .ask-itfr-launcher.ask-itfr-attention,
 .ask-itfr-launcher-prompt-arrow {
  animation: none !important;
 }
}


/* Context appears only when the visitor is on pricing UI, uses pricing language,
   or opens Ask ITFR from a contextual page CTA. */
.ask-itfr-entry-context[hidden]{display:none !important}
.ask-itfr-entry-context{
  display:flex !important;
  align-items:center !important;
  gap:9px !important;
  margin:0 0 10px !important;
  padding:9px 12px !important;
  border:1px solid rgba(255,255,255,.48) !important;
  border-radius:9px !important;
  background:rgba(255,255,255,.14) !important;
  color:#fff !important;
  font-size:12.5px !important;
  line-height:1.35 !important;
}
.ask-itfr-home-shell .ask-itfr-entry-context{
  border-color:#B7E6F5 !important;
  background:#EFFAFF !important;
  color:#282828 !important;
}
.ask-itfr-entry-context-label{
  display:inline-flex !important;
  flex:0 0 auto !important;
  padding:4px 8px !important;
  border-radius:999px !important;
  background:#fff !important;
  color:#282828 !important;
  font-size:9.5px !important;
  font-weight:800 !important;
  letter-spacing:.55px !important;
  text-transform:uppercase !important;
}

/* The direct-human route is a genuine secondary conversion action{
  position:relative !important;
  grid-template-columns:46px minmax(0,1fr) auto !important;
  gap:14px !important;
  padding:18px 20px !important;
  border:2px solid #80def9 !important;
  border-left:5px solid #00bcf2 !important;
  border-radius:11px !important;
  background:linear-gradient(135deg,#FFFFFF 0%,#EFFAFF 100%) !important;
  box-shadow:0 10px 24px rgba(7,90,145,.13) !important;
}

.ask-itfr-pricing-options{
  margin:14px 0 16px !important;
  padding:15px !important;
  border:1px solid #B9E6F5 !important;
  border-radius:10px !important;
  background:#F3FBFE !important;
}
.ask-itfr-pricing-options-head{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(260px,.9fr) !important;
  align-items:end !important;
  gap:16px !important;
  margin-bottom:11px !important;
}
.ask-itfr-pricing-options-kicker{
  display:inline-block !important;
  margin-bottom:3px !important;
  color:#00bcf2 !important;
  font-size:9.5px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
  letter-spacing:.65px !important;
}
.ask-itfr-pricing-options h4{
  margin:0 !important;
  color:#282828 !important;
  font-size:16px !important;
  line-height:1.25 !important;
}
.ask-itfr-pricing-options-head p,
.ask-itfr-pricing-options-note{
  margin:0 !important;
  color:#5B7180 !important;
  font-size:11.5px !important;
  line-height:1.42 !important;
}
.ask-itfr-pricing-options-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:9px !important;
}
.ask-itfr-pricing-option{
  position:relative !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:start !important;
  gap:4px 8px !important;
  min-width:0 !important;
  min-height:92px !important;
  padding:12px !important;
  border:1.5px solid #C9DFE9 !important;
  border-radius:9px !important;
  background:#fff !important;
  color:#263744 !important;
  text-align:left !important;
  box-shadow:0 4px 10px rgba(7,90,145,.06) !important;
  cursor:pointer !important;
  transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease,background .15s ease !important;
}
.ask-itfr-pricing-option:hover{
  border-color:#00bcf2 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 7px 15px rgba(7,90,145,.12) !important;
}
.ask-itfr-pricing-option.is-selected{
  border-color:#00bcf2 !important;
  background:#EAF8FD !important;
  box-shadow:0 0 0 3px rgba(7,159,211,.13),0 8px 17px rgba(7,90,145,.14) !important;
}
.ask-itfr-pricing-option strong{
  grid-column:1 / -1 !important;
  padding-right:25px !important;
  color:#282828 !important;
  font-size:12.5px !important;
  line-height:1.3 !important;
}
.ask-itfr-pricing-option-price{
  color:#282828 !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.ask-itfr-pricing-option small{
  grid-column:1 / -1 !important;
  color:#6A7C88 !important;
  font-size:10px !important;
  line-height:1.3 !important;
}
.ask-itfr-pricing-option-check{
  position:absolute !important;
  top:9px !important;
  right:9px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:20px !important;
  height:20px !important;
  border:1px solid #BDD4DF !important;
  border-radius:50% !important;
  background:#fff !important;
  color:transparent !important;
  font-size:11px !important;
}
.ask-itfr-pricing-option.is-selected .ask-itfr-pricing-option-check{
  border-color:#00bcf2 !important;
  background:#00bcf2 !important;
  color:#fff !important;
}
.ask-itfr-pricing-options-note{margin-top:9px !important}
.ask-itfr-pricing-options.is-inline{
  margin:9px 0 0 !important;
  padding:11px 12px 10px !important;
  border-color:#C9E2EC !important;
  background:rgba(247,252,254,.96) !important;
  box-shadow:none !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-head{
  grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr) !important;
  align-items:center !important;
  gap:12px !important;
  margin-bottom:8px !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-kicker{
  margin-bottom:2px !important;
  font-size:8.5px !important;
}
.ask-itfr-pricing-options.is-inline h4{
  font-size:14px !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-head p,
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-note{
  font-size:10.5px !important;
  line-height:1.35 !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-grid{
  gap:7px !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-option{
  min-height:74px !important;
  padding:9px 10px !important;
  border-width:1px !important;
  box-shadow:none !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-option strong{
  padding-right:20px !important;
  font-size:11.5px !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-option-price{
  font-size:11px !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-option small{
  font-size:9.5px !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-option-check{
  top:8px !important;
  right:8px !important;
  width:18px !important;
  height:18px !important;
  border:0 !important;
  background:#E4F5FB !important;
  color:#00bcf2 !important;
  font-size:12px !important;
  font-weight:800 !important;
}
.ask-itfr-pricing-option-action{
  grid-column:1 / -1 !important;
  margin-top:1px !important;
  color:#00bcf2 !important;
  font-size:9.5px !important;
  line-height:1.2 !important;
  font-weight:800 !important;
}
.ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-note{
  margin-top:7px !important;
}
.ask-itfr-pricing-help{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin-top:9px !important;
  color:#5B7180 !important;
  font-size:11.5px !important;
  line-height:1.42 !important;
}
.ask-itfr-pricing-help-button{
  appearance:none !important;
  border:1px solid #00bcf2 !important;
  background:#fff !important;
  color:#00bcf2 !important;
  border-radius:8px !important;
  padding:6px 10px !important;
  font:inherit !important;
  font-weight:800 !important;
  cursor:pointer !important;
  white-space:nowrap !important;
}
.ask-itfr-pricing-help-button:hover,
.ask-itfr-pricing-help-button:focus-visible{background:#EAF8FD !important;outline:none !important}

@media(max-width:760px){
  .ask-itfr-entry-context{align-items:flex-start !important;flex-direction:column !important;gap:5px !important}
  .ask-itfr-pricing-options-head{grid-template-columns:1fr !important;gap:6px !important}
  .ask-itfr-pricing-options-grid{grid-template-columns:1fr !important}
  .ask-itfr-pricing-option{min-height:82px !important}
  .ask-itfr-pricing-options.is-inline .ask-itfr-pricing-options-head{grid-template-columns:1fr !important;gap:4px !important}
  .ask-itfr-pricing-options.is-inline .ask-itfr-pricing-option{min-height:68px !important}
  .ask-itfr-pricing-help{align-items:flex-start !important;flex-direction:column !important}
  .ask-itfr-pricing-help-button{min-height:32px !important}
}


.ask-itfr-modal-title-logo{margin:0 0 5px!important;padding:0!important;line-height:0!important}
.ask-itfr-modal-logo{display:block!important;width:auto!important;height:58px!important;max-width:min(330px,72vw)!important;object-fit:contain!important;object-position:left center!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important}
@media(max-width:600px){.ask-itfr-modal-logo{height:48px!important;max-width:min(275px,68vw)!important}}


/* Behaviour only: existing service-card visual design remains authoritative. */
.ask-itfr-service-carousel-viewport{overflow:hidden}
.ask-itfr-service-carousel-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:8px}
.ask-itfr-service-carousel-controls button{width:30px;height:30px;border:1px solid var(--itfr-line);border-radius:999px;background:#fff;color:var(--itfr-navy);cursor:pointer}
.ask-itfr-service-carousel-controls span{font-size:11px;color:var(--itfr-muted)}
.ask-itfr-service-carousel-track .ask-itfr-service-match[hidden]{display:none!important}

@media(max-width:767px){
 /* Mobile: reduce secondary clutter without changing the visual language. */
 .ask-itfr-modal .ask-itfr-popular-track{min-height:0!important}
 .ask-itfr-modal .ask-itfr-related button:not(:first-of-type){display:none}
 .ask-itfr-modal .ask-itfr-answer{padding:16px}
 .ask-itfr-modal .ask-itfr-journey-guide{padding:13px 14px}
 .ask-itfr-modal .ask-itfr-service-match p{font-size:12px}
}

/* Recommendation packing only; existing visual design remains unchanged. */
@media(min-width:1051px){.ask-itfr-service-carousel-track{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:768px) and (max-width:1050px){.ask-itfr-service-carousel-track{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.ask-itfr-service-carousel-track{grid-template-columns:1fr}}

