@charset "utf-8";

body.tb-enquiry-view #wowslider-container1 { display:none!important; }
body.tb-enquiry-view #profile > .row-fluid { margin:0; }
.tb-home-contact { color:#2471a3; font-weight:bold; text-align:right; }
.tb-home-phones { display:block; font-size:18px; line-height:1.3; }
.tb-home-corporate { display:block; margin-top:4px; font-size:12px; font-weight:normal; }
.tb-home-corporate a { color:#2471a3; }
.tb-home-offer { margin:0 0 22px; }
.tb-home-typewriter { min-height:24px; margin:4px 0 0; color:#243447; font:400 15px/1.5 Arial,Helvetica,sans-serif; letter-spacing:0; text-align:left; }
.tb-home-typewriter__cursor { display:inline-block; width:2px; height:1.05em; margin-left:2px; vertical-align:-2px; background:#087dbb; animation:tb-cursor-blink .75s steps(1,end) infinite; }
@keyframes tb-cursor-blink { 0%,48%{opacity:1} 49%,100%{opacity:0} }
.tb-select-arrow { display:block; width:32px; margin:0 0 7px 3px; color:#087dbb; font:700 30px/1 Arial,sans-serif; animation:tb-arrow-bounce 1.5s ease-in-out infinite; }
@keyframes tb-arrow-bounce { 0%,100%{transform:translateY(0)} 50%{transform:translateY(5px)} }
.tb-device-picker { padding:20px; overflow:hidden; background:#fff; border:1px solid #d8e2ea; border-radius:12px; box-shadow:0 8px 24px rgba(0,64,138,.08); }
.tb-device-picker__heading { margin:0 0 15px; }
.tb-device-picker__step { display:block; margin-bottom:3px; color:#087dbb; font:700 16px/1.3 Arial,sans-serif; letter-spacing:0; }
.tb-device-picker__heading h2 { margin:0 0 5px; color:#142033; font:700 25px/1.25 Arial,Helvetica,sans-serif; }
.tb-device-picker__heading p { margin:0; color:#627180; font:13px/1.5 Arial,Helvetica,sans-serif; }
.tb-device-picker__layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:20px; align-items:stretch; }
.tb-device-picker__choices { min-width:0; }
.tb-device-picker__scroller { display:flex; gap:14px; padding:2px 2px 10px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-snap-type:x proximity; scrollbar-color:#8b9baa #edf1f4; scrollbar-width:thin; }
.tb-device-option { flex:0 0 210px; min-height:205px; margin:0; padding:12px; overflow:hidden; color:#243447; background:#f5f7f9; border:2px solid transparent; border-radius:10px; cursor:pointer; scroll-snap-align:start; text-align:left; transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.tb-device-option:hover { transform:translateY(-2px); border-color:#73b7da; box-shadow:0 8px 18px rgba(0,64,138,.12); }
.tb-device-option:focus { border-color:#087dbb; outline:3px solid rgba(8,125,187,.18); outline-offset:2px; }
.tb-device-visual { position:relative; display:block; height:125px; margin:-2px -2px 12px; overflow:hidden; background:#f5f7f9; border-radius:8px; }
.tb-device-visual img { display:block; width:100%; height:100%; object-fit:cover; border-radius:8px; }
.tb-laptop-screen { position:absolute; top:20px; left:50%; width:132px; height:82px; margin-left:-66px; background:linear-gradient(145deg,#183d59,#48a8d3); border:7px solid #263746; border-radius:7px 7px 3px 3px; box-shadow:0 9px 17px rgba(32,58,78,.2); box-sizing:border-box; }
.tb-laptop-screen:after { position:absolute; inset:10px; content:""; background:linear-gradient(135deg,rgba(255,255,255,.5),transparent 45%); border-radius:2px; }
.tb-laptop-base { position:absolute; top:103px; left:50%; width:164px; height:10px; margin-left:-82px; background:#aebcc5; border-radius:2px 2px 10px 10px; box-shadow:0 3px 5px rgba(32,58,78,.2); }
.tb-monitor { position:absolute; top:18px; left:29px; width:126px; height:80px; background:#263746; border:6px solid #263746; border-radius:5px; box-sizing:border-box; }
.tb-monitor span { display:block; width:100%; height:100%; background:linear-gradient(145deg,#24698f,#66b8d9); }
.tb-monitor-stand { position:absolute; top:96px; left:82px; width:21px; height:15px; background:#8799a6; }
.tb-monitor-stand:after { position:absolute; bottom:-4px; left:-16px; width:53px; height:5px; content:""; background:#6f818e; border-radius:4px; }
.tb-desktop-tower { position:absolute; top:27px; right:30px; width:45px; height:86px; background:linear-gradient(145deg,#566c7b,#253947); border-radius:5px; box-shadow:0 7px 12px rgba(32,58,78,.18); }
.tb-desktop-tower:before { position:absolute; top:12px; left:10px; width:7px; height:7px; content:""; background:#64d39b; border-radius:50%; }
.tb-desktop-tower:after { position:absolute; right:9px; bottom:12px; left:9px; height:2px; content:""; background:#9cacb6; box-shadow:0 -7px 0 #9cacb6; }
.tb-device-option__name { display:block; margin-bottom:4px; color:#172235; font:700 18px/1.25 Arial,Helvetica,sans-serif; text-align:center; }
.tb-device-option__action { display:block; color:#087dbb; font:700 12px/1.3 Arial,Helvetica,sans-serif; text-align:center; }
.tb-device-picker__hint { margin:3px 0 0; color:#778692; font:11px/1.4 Arial,Helvetica,sans-serif; }
.tb-value-guide { display:flex; min-width:0; min-height:247px; padding:18px; flex-direction:column; color:#006db5; background:#fff; border:1px solid #cfdce6; border-radius:10px; box-shadow:0 8px 20px rgba(0,64,138,.1); }
.tb-value-guide__top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.tb-value-guide__eyebrow { color:#087dbb; font:700 10px/1.3 Arial,sans-serif; letter-spacing:1.1px; }
.tb-value-guide h2 { margin:7px 0 16px; color:#006db5; font:700 20px/1.25 Arial,sans-serif; }
.tb-value-slides { position:relative; display:flex; min-height:92px; flex:1; align-items:center; overflow:hidden; }
.tb-value-slide { display:flex; width:100%; gap:13px; align-items:flex-start; animation:tb-value-in .42s ease both; }
.tb-value-slide[hidden] { display:none!important; }
.tb-value-slide h3 { margin:0 0 6px; color:#006db5; font:700 16px/1.3 Arial,sans-serif; }
.tb-value-slide p { margin:0; color:#006db5; font:15px/1.5 Arial,sans-serif; }
.tb-value-guide__controls { display:flex; margin-top:14px; align-items:center; justify-content:space-between; gap:10px; }
.tb-value-guide__button { width:31px; height:31px; margin:0; padding:0; color:#087dbb; background:#fff; border:1px solid #9fc4da; border-radius:50%; cursor:pointer; line-height:29px; text-align:center; }
.tb-value-guide__button:hover,.tb-value-guide__button:focus { background:#eaf7ff; outline:2px solid rgba(8,125,187,.2); outline-offset:2px; }
.tb-value-guide__dots { display:flex; flex:1; align-items:center; justify-content:center; gap:6px; }
.tb-value-dot { width:7px; height:7px; margin:0; padding:0; background:#b8cbd8; border:0; border-radius:50%; cursor:pointer; }
.tb-value-dot.is-active { width:19px; background:#087dbb; border-radius:6px; }
@keyframes tb-value-in { from{opacity:0;transform:translateY(10px)} to{opacity:1;transform:translateY(0)} }
.tb-wizard,.tb-wizard * { box-sizing:border-box; }
.tb-wizard { width:100%; margin:0 0 30px; overflow:hidden; color:#243447; background:#f7fafc; border:1px solid #d7e2ec; border-radius:12px; box-shadow:0 8px 24px rgba(0,64,138,.09); font-family:Arial,Helvetica,sans-serif; }
.tb-wizard-header { padding:11px 22px; color:#fff; background:linear-gradient(135deg,#00408a,#087dbb); }
.tb-wizard-header .tb-eyebrow { margin:0 0 2px; color:#d7efff; font-size:10px; font-weight:bold; letter-spacing:1.2px; }
.tb-wizard-header h2 { margin:0 0 2px; color:#fff; font-size:21px; line-height:1.2; }
.tb-wizard-header p:last-child { margin:0; color:#eef8ff; font-size:12px; }
.tb-progress { display:flex; margin:0; padding:15px 18px 14px; list-style:none; background:#fff; border-bottom:1px solid #e1e9f0; }
.tb-progress-item { position:relative; z-index:1; display:flex; flex:1; align-items:center; justify-content:center; min-width:0; color:#6c7b89; font-size:11px; font-weight:bold; }
.tb-progress-item:not(:last-child):after { position:absolute; top:14px; left:calc(50% + 16px); z-index:-1; width:calc(100% - 32px); height:2px; content:""; background:#d6e0e8; }
.tb-progress-item--complete:not(:last-child):after { background:#168c55; }
.tb-progress-number { display:inline-flex; width:29px; height:29px; margin-right:6px; align-items:center; justify-content:center; color:#667786; background:#fff; border:2px solid #c9d5df; border-radius:50%; }
.tb-progress-item--current { color:#00408a; }
.tb-progress-item--current .tb-progress-number { color:#fff; background:#087dbb; border-color:#087dbb; }
.tb-progress-item--complete .tb-progress-number { color:#fff; background:#168c55; border-color:#168c55; font-size:0; }
.tb-progress-item--complete .tb-progress-number:before { content:"\2713"; font-size:14px; }
.tb-wizard.is-enhanced .tb-step { display:none; }
.tb-wizard.is-enhanced .tb-step--current { display:block; }
.tb-step { padding:18px 24px 24px; }
.tb-top-actions,.tb-step-actions { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.tb-top-actions { min-height:35px; margin-bottom:8px; }
.tb-step-actions { margin-top:20px; padding-top:15px; border-top:1px solid #dce5ec; }
.tb-top-actions .tb-btn { min-height:34px; padding:6px 14px; font-size:12px; }
.tb-btn--hidden { visibility:hidden; pointer-events:none; }
.tb-step-heading { margin-bottom:16px; }
.tb-step-heading>span { display:block; margin-bottom:2px; color:#087dbb; font-size:11px; font-weight:bold; letter-spacing:.7px; text-transform:uppercase; }
.tb-step-heading h3 { margin:0 0 4px; color:#00408a; font-size:20px; line-height:1.3; }
.tb-step-heading h3:focus { outline:none; }
.tb-step-heading p,.tb-section-title p { margin:0; color:#607180; font-size:13px; line-height:1.45; }
.tb-section-title { margin:18px 0 10px; padding-top:15px; border-top:1px solid #dce5ec; }
.tb-section-title h4 { margin:0 0 2px; color:#00408a; font-size:15px; }
.tb-card-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.tb-category-grid { grid-template-columns:repeat(2,minmax(0,220px)); }
.tb-wizard.tb-category-preselected #CategoryArea { display:none!important; }
.tb-select-card { position:relative; display:block; margin:0; cursor:pointer; }
.tb-select-card input { position:absolute; width:1px; height:1px; opacity:0; }
.tb-select-card span { display:flex; min-height:86px; padding:10px; flex-direction:column; align-items:center; justify-content:center; color:#30485c; background:#fff; border:1px solid #c7d4df; border-radius:9px; text-align:center; transition:.15s; }
.tb-select-card input:checked+span { color:#00408a; background:#eaf7ff; border-color:#087dbb; box-shadow:inset 0 0 0 1px #087dbb; font-weight:bold; }
.tb-select-card input:focus+span { outline:2px solid #087dbb; outline-offset:2px; }
.tb-card-icon { display:flex; width:46px; height:34px; margin-bottom:6px; align-items:center; justify-content:center; color:#087dbb; font-size:24px; font-weight:bold; line-height:1; }
.tb-brand-mark { width:78px; height:32px; margin-bottom:6px; object-fit:contain; }
.tb-form-grid { display:grid; gap:15px 18px; }
.tb-form-grid--two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.tb-form-grid--three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.tb-field label,.tb-upload-field>label { display:block; margin:0 0 5px; color:#263b50; font-size:13px; font-weight:bold; }
.tb-optional { display:inline-block; margin-left:4px; padding:1px 6px; color:#607180; background:#eaf0f5; border-radius:8px; font-size:10px; font-weight:normal; }
.tb-wizard input[type=text],.tb-wizard input[type=tel],.tb-wizard input[type=email],.tb-wizard select { display:block; width:100%; height:42px; margin:0; padding:8px 10px; color:#25384a; background:#fff; border:1px solid #b9c8d4; border-radius:6px; box-shadow:none; font:14px Arial,sans-serif; }
.tb-wizard input:focus,.tb-wizard select:focus { border-color:#087dbb; outline:0; box-shadow:0 0 0 3px rgba(8,125,187,.13); }
.tb-field[hidden],.tb-category-dependent[hidden] { display:none!important; }
.tb-choice-field { min-width:0; margin:0 0 14px; padding:0; border:0; }
.tb-choice-field legend { width:auto; margin:0 0 6px; padding:0; color:#263b50; border:0; font-size:14px; font-weight:bold; }
.tb-choice-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.tb-choice-grid--issues { grid-template-columns:repeat(3,minmax(0,1fr)); }
.tb-choice { position:relative; display:block; margin:0; cursor:pointer; }
.tb-choice input { position:absolute; width:1px; height:1px; opacity:0; }
.tb-choice span { display:flex; min-height:38px; padding:5px 7px; align-items:center; justify-content:center; color:#395064; background:#fff; border:1px solid #c7d4df; border-radius:7px; font-size:12px; line-height:1.25; text-align:center; }
.tb-choice input:checked+span { color:#00408a; background:#eaf7ff; border-color:#087dbb; box-shadow:inset 0 0 0 1px #087dbb; font-weight:bold; }
.tb-issue-field { margin-top:16px; padding-top:14px; border-top:1px solid #dce5ec; }
.tb-upload-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tb-upload-field { padding:12px; background:#fff; border:1px dashed #9bb5c8; border-radius:8px; }
.tb-upload-field p { margin:0 0 8px; color:#657786; font-size:12px; }
.tb-wizard input[type=file] { display:block; width:100%; margin:0 0 5px; font-size:12px; }
.tb-file-name { color:#607180; font-size:11px; }
.tb-btn { min-height:42px; margin:0; padding:9px 18px; border:1px solid transparent; border-radius:6px; cursor:pointer; font:700 13px Arial,sans-serif; text-shadow:none; }
.tb-btn--primary { color:#fff; background:#087dbb; border-color:#087dbb; }
.tb-btn--secondary { color:#00408a; background:#fff; border-color:#9db1c1; }
.tb-btn--submit { min-width:160px; color:#fff; background:#168c55; border-color:#168c55; }
.tb-review-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.tb-review-card { padding:14px; background:#fff; border:1px solid #d8e2ea; border-radius:8px; }
.tb-review-card-header { display:flex; align-items:center; justify-content:space-between; margin-bottom:9px; padding-bottom:8px; border-bottom:1px solid #e4ebf0; }
.tb-review-card h4 { margin:0; color:#00408a; font-size:14px; }
.tb-edit-link { padding:2px 5px; color:#087dbb; background:transparent; border:0; cursor:pointer; font-size:12px; font-weight:bold; }
.tb-review-card dl { display:grid; grid-template-columns:minmax(90px,.8fr) minmax(0,1.2fr); gap:6px 9px; margin:0; }
.tb-review-card dt,.tb-review-card dd { margin:0; font-size:12px; line-height:1.4; overflow-wrap:anywhere; }
.tb-review-card dt { color:#677887; font-weight:normal; }.tb-review-card dd { color:#263b50; font-weight:bold; }
.tb-submit-note { margin-top:15px; padding:12px 14px; color:#28553e; background:#eaf7ef; border:1px solid #b9dfc8; border-radius:7px; font-size:12px; }
.tb-success-message { margin:0 0 30px; padding:28px 24px; color:#155e39; background:#edf9f1; border:1px solid #b6ddc5; border-radius:9px; font-size:17px; font-weight:bold; text-align:center; }
.tb-success-message[hidden] { display:none!important; }
.tb-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; }
@media(max-width:900px){.tb-device-picker__layout{grid-template-columns:1fr}.tb-value-guide{min-height:220px}.tb-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tb-form-grid--three,.tb-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb-choice-grid--issues{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.tb-home-typewriter__cursor,.tb-select-arrow,.tb-animated-hero img{animation:none}.tb-value-slide{animation:none}}
@media(max-width:767px){.tb-home-contact{text-align:left;margin-top:10px}.tb-home-typewriter{min-height:24px;font-size:15px}.tb-select-arrow{margin-bottom:8px;font-size:27px}.tb-device-picker{padding:15px 10px}.tb-device-picker__heading h2{font-size:21px}.tb-device-picker__heading p{font-size:13px}.tb-device-picker__layout{gap:14px}.tb-device-picker__scroller{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:2px;overflow-x:visible;scroll-snap-type:none}.tb-device-option{width:100%;min-width:0;min-height:150px;padding:8px}.tb-device-visual{height:88px;margin:-1px -1px 8px}.tb-device-option__name{font-size:14px}.tb-device-option__action{font-size:10px}.tb-device-picker__hint{display:none}.tb-value-guide{min-height:205px;padding:16px}.tb-value-guide h2{font-size:19px}.tb-value-slide p{font-size:15px}.tb-value-slides{min-height:82px}.tb-wizard{margin-top:10px;border-radius:9px}.tb-wizard-header{padding:10px 15px}.tb-wizard-header h2{font-size:19px}.tb-progress{padding:12px 4px}.tb-progress-item{font-size:0;flex-direction:column}.tb-progress-number{margin:0;width:27px;height:27px;font-size:11px}.tb-progress-item:not(:last-child):after{top:13px;left:calc(50% + 14px);width:calc(100% - 28px)}.tb-step{padding:14px 14px 20px}.tb-step-heading h3{font-size:18px}.tb-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb-form-grid--two,.tb-form-grid--three,.tb-upload-grid,.tb-review-grid{grid-template-columns:1fr}.tb-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tb-select-card span{min-height:76px}.tb-step-actions{margin-top:16px}.tb-btn{padding:9px 13px}.tb-btn--submit{min-width:0}.tb-review-card dl{grid-template-columns:minmax(82px,.8fr) minmax(0,1.2fr)}}
.tb-main-title{margin:18px 0 7px;color:#006db5;font:700 25px/1.25 Arial,sans-serif;text-align:center}
.tb-subtitle{max-width:820px;margin:0 auto 20px;color:#3f4b55;font:15px/1.55 Arial,sans-serif;text-align:center}
.tb-enquiry-view .tb-main-title,.tb-enquiry-view .tb-subtitle{display:none!important}
.tb-animated-hero{position:relative;width:100%;aspect-ratio:50/11;margin:0;overflow:hidden;background:#eaf4fa}
.tb-animated-hero img{position:absolute;inset:0;display:block;width:100%;height:100%;margin:0;object-fit:cover;opacity:0;transform:scale(1.01);transition:opacity .8s ease;pointer-events:none}
.tb-animated-hero img.is-active{z-index:1;opacity:1;animation:tb-hero-fly 4.8s ease-out both}
.tb-enquiry-view .tb-animated-hero{visibility:hidden}
@keyframes tb-hero-fly{0%{transform:scale(1.08) translate3d(-1.2%,.8%,0)}100%{transform:scale(1.01) translate3d(0,0,0)}}
