/* === COMBINED FROM bootstrap.min.css === */
@charset "UTF-8";/*!
 * Bootstrap  v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;color:var(--bs-highlight-color);background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button;appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button;appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.66666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.66666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.66666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.66666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.66666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.66666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), 0.05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), 0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#a6b5cc;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#b5b6b7;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#a7b9b1;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#a6c3ca;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#ccc2a4;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#c6acae;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#c6c7c8;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#4d5154;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-moz-placeholder-shown)~label::after{position:absolute;inset:1rem 0.375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control-plaintext~label::after,.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem 0.375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#6c757d}.form-floating>.form-control:disabled~label::after,.form-floating>:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:var(--bs-form-valid-border-color)}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{--bs-form-select-bg-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3rem + calc(1.5em + .75rem))}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:var(--bs-form-invalid-border-color)}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{--bs-form-select-bg-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3rem + calc(1.5em + .75rem))}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.15),0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked:focus-visible+.btn{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:var(--bs-border-radius-lg)}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius:var(--bs-border-radius-sm)}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:0 0;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:0.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, 0.55);--bs-navbar-hover-color:rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color:rgba(255, 255, 255, 0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:0.5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:0.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:var(--bs-body-bg);--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--bs-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform 0.2s ease-in-out;--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e");--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type>.accordion-header .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type>.accordion-header .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type>.accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush>.accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush>.accordion-item:first-child{border-top:0}.accordion-flush>.accordion-item:last-child{border-bottom:0}.accordion-flush>.accordion-item>.accordion-header .accordion-button,.accordion-flush>.accordion-item>.accordion-header .accordion-button.collapsed{border-radius:0}.accordion-flush>.accordion-item>.accordion-collapse{border-radius:0}[data-bs-theme=dark] .accordion-button::after{--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:0.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "https://html.awaikenthemes.com/")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:0.75rem;--bs-pagination-padding-y:0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:0.5rem;--bs-pagination-padding-y:0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x:0.65em;--bs-badge-padding-y:0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity:0.5;--bs-btn-close-hover-opacity:0.75;--bs-btn-close-focus-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:0.25;--bs-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-color: ;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:var(--bs-box-shadow)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-top>.popover-arrow::before{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-end>.popover-arrow::before{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::before{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-start>.popover-arrow::before{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin:calc(-.5 * var(--bs-offcanvas-padding-y)) calc(-.5 * var(--bs-offcanvas-padding-x)) calc(-.5 * var(--bs-offcanvas-padding-y)) auto}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(var(--bs-primary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(var(--bs-success-rgb),var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(var(--bs-danger-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,0.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,0.75))!important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.5));text-underline-offset:0.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media (prefers-reduced-motion:reduce){.icon-link>.bi{transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){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}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:var(--bs-box-shadow)!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.shadow-none{box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translateX(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--bs-border-opacity:0.1}.border-opacity-25{--bs-border-opacity:0.25}.border-opacity-50{--bs-border-opacity:0.5}.border-opacity-75{--bs-border-opacity:0.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:rgba(255,255,255,.5)!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10{--bs-link-opacity:0.1}.link-opacity-10-hover:hover{--bs-link-opacity:0.1}.link-opacity-25{--bs-link-opacity:0.25}.link-opacity-25-hover:hover{--bs-link-opacity:0.25}.link-opacity-50{--bs-link-opacity:0.5}.link-opacity-50-hover:hover{--bs-link-opacity:0.5}.link-opacity-75{--bs-link-opacity:0.75}.link-opacity-75-hover:hover{--bs-link-opacity:0.75}.link-opacity-100{--bs-link-opacity:1}.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1{text-underline-offset:0.125em!important}.link-offset-1-hover:hover{text-underline-offset:0.125em!important}.link-offset-2{text-underline-offset:0.25em!important}.link-offset-2-hover:hover{text-underline-offset:0.25em!important}.link-offset-3{text-underline-offset:0.375em!important}.link-offset-3-hover:hover{text-underline-offset:0.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0{--bs-link-underline-opacity:0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10{--bs-link-underline-opacity:0.1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:0.1}.link-underline-opacity-25{--bs-link-underline-opacity:0.25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:0.25}.link-underline-opacity-50{--bs-link-underline-opacity:0.5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:0.5}.link-underline-opacity-75{--bs-link-underline-opacity:0.75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:0.75}.link-underline-opacity-100{--bs-link-underline-opacity:1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}
/*# sourceMappingURL=bootstrap.min.css.map */

/* === COMBINED FROM slicknav.min.css === */
/*!
 * SlickNav Responsive Mobile Menu v1.0.10
 * (c) 2016 Josh Cope
 * licensed under MIT
 */.slicknav_btn,.slicknav_nav .slicknav_item{cursor:pointer}.slicknav_menu,.slicknav_menu *{box-sizing:border-box}.slicknav_btn{position:relative;display:block;float:right;padding:.438em .625em;line-height:1.125em}.slicknav_btn .slicknav_icon-bar+.slicknav_icon-bar{margin-top:.188em}.slicknav_menu .slicknav_menutxt{display:block;line-height:1.188em;float:left;color:#fff;font-weight:700;text-shadow:0 1px 3px #000}.slicknav_menu .slicknav_icon{float:left;width:1.125em;height:.875em;margin:.188em 0 0 .438em}.slicknav_menu .slicknav_icon:before{background:0 0;width:1.125em;height:.875em;display:block;content:"";position:absolute}.slicknav_menu .slicknav_no-text{margin:0}.slicknav_menu .slicknav_icon-bar{display:block;width:1.125em;height:.125em;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,.25);box-shadow:0 1px 0 rgba(0,0,0,.25)}.slicknav_menu:after,.slicknav_menu:before{content:" ";display:table}.slicknav_menu:after{clear:both}.slicknav_nav li,.slicknav_nav ul{display:block}.slicknav_nav .slicknav_arrow{font-size:.8em;margin:0 0 0 .4em}.slicknav_nav .slicknav_item a{display:inline}.slicknav_nav .slicknav_row,.slicknav_nav a{display:block}.slicknav_nav .slicknav_parent-link a{display:inline}.slicknav_menu{zoom:1;font-size:16px;background:#4c4c4c;padding:5px}.slicknav_nav,.slicknav_nav ul{list-style:none;overflow:hidden;padding:0}.slicknav_menu .slicknav_icon-bar{background-color:#fff}.slicknav_btn{margin:5px 5px 6px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,.75);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;background-color:#222}.slicknav_nav{clear:both;color:#fff;margin:0;font-size:.875em}.slicknav_nav ul{margin:0 0 0 20px}.slicknav_nav .slicknav_row,.slicknav_nav a{padding:5px 10px;margin:2px 5px}.slicknav_nav .slicknav_row:hover{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;background:#ccc;color:#fff}.slicknav_nav a{text-decoration:none;color:#fff}.slicknav_nav a:hover{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;background:#ccc;color:#222}.slicknav_nav .slicknav_txtnode{margin-left:15px}.slicknav_nav .slicknav_item a,.slicknav_nav .slicknav_parent-link a{padding:0;margin:0}.slicknav_brand{float:left;color:#fff;font-size:18px;line-height:30px;padding:7px 12px;height:44px}

/* === COMBINED FROM topbar-extracted.css === */
/* ==========================================================================
   TOPBAR STYLESHEET — Split Layout with Social Icons
   Contact info left · Social icons right · Premium hover effects
   ========================================================================== */


/* ── 1. TOPBAR WRAPPER ──────────────────────────────────────────── */
.topbar {
  padding: 12px 0 62px;
  background-color: var(--primary-color, #023047);
  border-bottom: none;
  transition: all 0.3s ease;
}

html .topbar {
  background: transparent !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  border-bottom: none !important;
}
html[data-contrast="light"] .topbar,
html[data-contrast="light"] .topbar .container {
  background-color: #ffffff !important;
  background: #ffffff !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  border-bottom: none !important;
}

/* Inner flex wrapper: grid-like alignment with main nav */
.topbar-inner-wrapper {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  flex-wrap: nowrap;
}

/* Spacer matching the logo column width to align topbar content with nav items */
.topbar-brand-spacer {
  display: none;
}

@media only screen and (min-width: 992px) {
  .topbar-brand-spacer {
    display: block;
    width: 166px;         /* Adjusted down by 12px to keep the main nav closely connected to the logo */
    flex-shrink: 0;
  }
  /* Force .navbar-brand width on desktop to align horizontal rhythm */
  .navbar-brand {
    width: 166px !important;
    flex-shrink: 0 !important;
    margin-right: 0 !important;
  }
}

/* Right content area occupying remaining width */
.topbar-content-area {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex: 1;
  min-width: 0;
}


/* ── 2. CONTACT SECTION ─────────────────────────────────────────── */
.topbar-contact-info {
  flex-shrink: 0;
}

.topbar-contact-info ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 22px;            /* Increased gap for balanced visual breathing room */
}

.topbar-contact-info ul li a {
  color: rgba(255, 255, 255, 0.85);
  display: inline-flex !important;
  align-items: center;
  gap: 7px;
  border-radius: 4px;
  padding: 10px 0 !important;   /* Spacing handled by gap instead of horizontal padding */
  min-height: 44px !important;
  min-width: 44px !important;
  font-size: 13.5px !important;
  text-decoration: none;
  transition: color 0.25s ease;
  white-space: nowrap;
}

.topbar-contact-info ul li a:hover {
  color: #ffffff;
}



.topbar-contact-info ul li a img {
  width: 15px !important;
  max-width: 16px;
  height: auto !important;
  flex-shrink: 0;
  opacity: 0.8;
  margin-right: 0 !important;
}


/* ── 3. SOCIAL ICONS SECTION ────────────────────────────────────── */

/* Outer wrapper is a flex row: separator + icon list */
.topbar-social-links {
  flex-shrink: 0;
  display: flex;
  align-items: center;
}

/* Subtle divider between contact and icons */
.topbar-social-links::before {
  content: '';
  display: block;
  width: 1px;
  height: 13px;         /* Match content height perfectly */
  background: rgba(255, 255, 255, 0.25);
  margin-right: 0px;    /* Reduced to 0px so only first-child padding controls the alignment gap */
  flex-shrink: 0;
  align-self: center;
}

.topbar-social-links ul {
  display: flex;
  align-items: center;
  gap: 0;               /* Spacing handled by padding */
  list-style: none;
  padding: 0;
  margin: 0;
}

.topbar-social-links ul li {
  display: flex;
  align-items: center;
}

/*
 * Social icon links — padding-based sizing instead of fixed 44px box.
 * This eliminates the excess dead space that made the divider gap look huge
 * and the icons look misaligned.
 *
 * Accessibility: min 44px tap target preserved via min-width/min-height.
 * Optical gap between icons: left/right padding (9px each) = 18px between
 * adjacent SVG edges.
 */
.topbar-social-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 44px !important;   /* a11y: tap target */
  min-height: 44px !important;  /* a11y: tap target */
  width: auto !important;
  height: auto !important;
  padding: 0 9px !important;    /* 9px × 2 = 18px visual gap between adjacent icons */
  border-radius: 4px;
  color: rgba(255, 255, 255, 0.96);  /* 96% opacity to match nav link optical weight */
  text-decoration: none;
  transform: translateY(1px);   /* Tiny 1px downward correction for perfect text alignment */
  transition: color 0.25s ease, transform 0.25s ease;
}

.topbar-social-icon:hover {
  color: #ffffff;
  transform: translateY(-2px);  /* Smooth hover translation */
}

/* Tighter gap between the divider and the first social icon */
.topbar-social-links ul li:first-child .topbar-social-icon {
  padding-left: 0 !important;   /* Shrunk to bring first icon close to vertical divider */
  min-width: 35px !important;
}

/* Align the last social icon perfectly with the right container edge */
.topbar-social-links ul li:last-child .topbar-social-icon {
  padding-right: 0 !important;
  min-width: 35px !important;
}

/* Keyboard focus ring */
.topbar-social-icon:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}

/* SVG crisp rendering */
.topbar-social-icon svg {
  display: block;
  flex-shrink: 0;
}


/* ── 4. RESPONSIVE ──────────────────────────────────────────────── */

/* Slightly tighter on mid-range desktops */
@media only screen and (max-width: 1200px) {
  .topbar-contact-info ul {
    gap: 20px;
  }
  .topbar-contact-info ul li a {
    font-size: 13.5px !important;
    padding: 10px 0 !important;
  }
}

/* By default, hide the short address variant */
.address-short {
  display: none !important;
}

/* Swap to short address on narrower viewports to prevent wrapping/overflow while keeping the link active */
@media only screen and (max-width: 1150px) {
  .address-full {
    display: none !important;
  }
  .address-short {
    display: inline !important;
  }
}

/* Tighter layout on medium desktops where brand spacer + contact + social overflow */
@media only screen and (max-width: 1120px) {
  .topbar-brand-spacer {
    width: 80px;
  }
  .topbar-contact-info ul {
    gap: 20px;
  }
  .topbar-contact-info ul li a {
    font-size: 13px !important;
  }
  .topbar-social-icon {
    min-width: 38px !important;
    padding: 0 6px !important;
  }
  .topbar-social-links ul li:first-child .topbar-social-icon {
    min-width: 30px !important;
    padding-left: 0 !important;
  }
  .topbar-social-links ul li:last-child .topbar-social-icon {
    min-width: 30px !important;
    padding-right: 0 !important;
  }
}

/* Center items and hide topbar social on tablet/mobile (icons shown in mobile nav overlay) */
@media only screen and (max-width: 991px) {
  .topbar-inner-wrapper {
    justify-content: center;
    flex-wrap: wrap;
    gap: 0;
  }
  .topbar-content-area {
    justify-content: center;
  }
  .topbar-contact-info ul {
    justify-content: center;
    flex-wrap: wrap;
    gap: 6px 14px;
  }
  .topbar-contact-info ul li a {
    padding: 4px 2px !important;
    font-size: 12px !important;
  }
  .topbar-contact-info ul li a img {
    max-width: 15px;
  }
  .visually-hidden-mobile {
    display: inline-block !important;
    position: static !important;
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    clip: auto !important;
    clip-path: none !important;
    white-space: normal !important;
    border: 0 !important;
  }
  .topbar-social-links {
    display: none; /* Social icons shown in mobile overlay instead */
  }
  body.menu-open .topbar {
    display: none !important;
  }
}

/* Mobile topbar adjustments */
@media only screen and (max-width: 767px) {
  .topbar {
    display: block !important;
  }
  .topbar-contact-info ul li a img {
    max-width: 14px;
  }
  .topbar-contact-info ul li a {
    font-size: 11.5px !important;
  }
}

@media only screen and (max-width: 480px) {
  .topbar-contact-info {
    width: 100% !important;
  }
  .topbar-contact-info ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 4px 10px !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
  }
  .topbar-contact-info ul li {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
  .topbar-contact-info ul li a {
    font-size: 11px !important;
    padding: 2px 0 !important;
    min-height: auto !important;
    min-width: auto !important;
  }
}

@media only screen and (max-width: 425px) {
  html .topbar {
    padding-top: 6px !important;
    padding-bottom: 2px !important;
  }
  .topbar .container {
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  .topbar-contact-info ul {
    gap: 4px 8px !important;
  }
  .topbar-contact-info ul li a {
    font-size: 10.5px !important;
    gap: 4px !important;
  }
  .topbar-contact-info ul li a img {
    max-width: 12px !important;
  }
  .main-header .navbar {
    min-height: 54px !important;
    padding: 6px 0 !important;
  }
  .main-header .navbar .container {
    min-height: 54px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}


/* ── 5. STICKY HEADER BEHAVIOR ──────────────────────────────────── */
.main-header.header-scrolled .topbar {
  height: 0;
  opacity: 0;
  visibility: hidden;
  overflow: hidden;
  display: none !important;
  padding: 0 !important;
  margin: 0 !important;
}


/* ── 6. MOBILE OVERLAY SOCIAL ICONS ────────────────────────────── */
.mobile-nav-social {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 6px;
  padding: 20px 0 10px;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  margin-top: auto;
}

.mobile-nav-social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: rgba(255, 255, 255, 0.72);
  border-radius: 8px;
  transition: color 0.25s ease, transform 0.25s ease;
  text-decoration: none;
}

.mobile-nav-social a:hover,
.mobile-nav-social a:focus-visible {
  color: #ffffff;
  transform: translateY(-2px);
}

.mobile-nav-social a:focus-visible {
  outline: 2px solid rgba(255, 255, 255, 0.8);
  outline-offset: 2px;
}


/* ── 7. ACCESSIBILITY CONTRAST OVERRIDES ───────────────────────── */

/* Dark high-contrast */
html[data-contrast="dark"] .topbar-contact-info ul li a,
html[data-contrast="dark"] .topbar-social-icon,
html[data-contrast="dark"] .mobile-nav-social a {
  color: #ffff00 !important;
}
html[data-contrast="dark"] .topbar-social-icon:hover,
html[data-contrast="dark"] .mobile-nav-social a:hover {
  color: #000000 !important;
  background-color: #ffff00 !important;
}

/* Light high-contrast */
html[data-contrast="light"] .topbar-contact-info ul li a,
html[data-contrast="light"] .topbar-contact-info ul li a *,
html[data-contrast="light"] .topbar-social-icon,
html[data-contrast="light"] .topbar-social-icon * {
  color: #000000 !important;
}
html[data-contrast="light"] .topbar-contact-info ul li a img {
  filter: invert(100%) !important;
}
html[data-contrast="light"] .topbar-social-icon:hover {
  color: #000000 !important;
  background-color: transparent !important;
  transform: none !important;
}
html[data-contrast="light"] .topbar-contact-info ul li a:hover,
html[data-contrast="light"] .topbar-contact-info ul li a:hover * {
  color: #000000 !important;
}
html[data-contrast="light"] .topbar-social-links::before {
  background: rgba(0, 0, 0, 0.2) !important;
}
html[data-contrast="light"] .header-sticky {
  margin-top: 0 !important;
}

/* Invert mode */
html[data-contrast="invert"] .topbar,
html[data-contrast="invert"] .topbar .container {
  background-color: #ffffff !important;
  background: #ffffff !important;
}
html[data-contrast="invert"] .topbar {
  display: block !important;
  height: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
  padding: 10px 0 !important;
  margin: 0 !important;
}
html[data-contrast="invert"] .header-sticky {
  margin-top: 0 !important;
}
html[data-contrast="invert"] .main-header.header-scrolled .topbar {
  display: none !important;
  height: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  overflow: hidden !important;
  padding: 0 !important;
  margin: 0 !important;
}
html[data-contrast="invert"] .topbar-contact-info ul li a,
html[data-contrast="invert"] .topbar-contact-info ul li a * {
  color: #000000 !important;
}
html[data-contrast="invert"] .topbar-social-icon {
  color: #ffffff !important;
}
html[data-contrast="invert"] .topbar-social-icon:hover {
  color: #ffffff !important;
  background-color: transparent !important;
  transform: none !important;
}
html[data-contrast="invert"] .topbar-contact-info ul li a:hover,
html[data-contrast="invert"] .topbar-contact-info ul li a:hover * {
  color: #000000 !important;
}
html[data-contrast="invert"] .topbar-contact-info ul li a img {
  filter: invert(100%) hue-rotate(180deg) !important;
}
html[data-contrast="invert"] .topbar-contact-info ul li a:focus-visible,
html[data-contrast="invert"] .topbar-social-icon:focus-visible {
  outline: #ffffff solid 3px !important;
  outline-offset: 3px !important;
  box-shadow: #ffffff 0 0 0 3px !important;
  background-color: rgba(0, 0, 0, 0.2) !important;
  z-index: 10000 !important;
}
html[data-contrast="invert"] .topbar-social-links::before {
  background: rgba(0, 0, 0, 0.2) !important;
}

.topbar-contact-info ul li a:focus,
.topbar-contact-info ul li a:focus-visible {
  outline: 3px solid #ffcc00 !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 2px #000000 !important;
  border-radius: 4px !important;
}


/* ── 8. TEXT SCALING COMPATIBILITY ─────────────────────────────── */
body.acc-text-x1 .topbar,
body.acc-text-x2 .topbar,
body.acc-text-x3 .topbar {
  height: auto !important;
  min-height: 0 !important;
}

/* Mobile topbar gap (< 425px) — Balanced Visual Rhythm */
@media only screen and (max-width: 425px) {
  html .topbar,
  .topbar {
    padding-top: 10px !important;
    padding-bottom: 8px !important;
  }
  .topbar-contact-info ul {
    gap: 6px 12px !important;
    margin-bottom: 0 !important;
  }
  .topbar-contact-info ul li a {
    font-size: 11px !important;
    padding: 2px 0 !important;
    min-height: auto !important;
  }
  header.main-header .navbar,
  .main-header .navbar {
    min-height: 56px !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
    margin-top: 0 !important;
  }
  header.main-header .navbar .container,
  .main-header .navbar .container {
    min-height: 56px !important;
    padding-top: 0px !important;
    padding-bottom: 0px !important;
  }
  .navbar-brand {
    padding-top: 0px !important;
    padding-bottom: 0px !important;
    min-height: 40px !important;
  }
}


/* === COMBINED FROM header-extra.css === */
/* =========================================
   MEGA DROPDOWN (Premium Medical Navigation)
   ========================================= */

/* Default hidden state */
.main-menu li.submenu > nav.mega-dropdown-nav {
  position: absolute !important;
  left: 0;
  top: 100%;
  z-index: 2000 !important;
  visibility: hidden;
  opacity: 0;
  transform: scaleY(0.8);
  transform-origin: top;
  transition: all 0.25s ease;
  display: none;
}

/* =========================================
   NAVIGATION DESIGN SYSTEM: SHARED STYLES
   ========================================= */

.treatments-mega-grid,
.nonsurgical-dropdown {
  background: #023047 !important; /* Solid Premium Brand Dark Blue */
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.3) !important;
  border-radius: 16px !important;
  overflow: visible !important;
}

/* =========================================
   TREATMENTS DROPDOWN (Medium 2-Column List)
   ========================================= */

.treatments-mega-grid {
  width: 680px;
  max-width: 90vw;
  padding: 36px 40px 24px;
}

.treatments-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 24px 0 !important; /* Spacing before footer divider */
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 0 40px !important;
  /* Reset default nested submenu styles (.main-menu ul ul) */
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  width: auto !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  transition: none !important;
}

.treatments-list li {
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.treatments-link {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: rgba(255, 255, 255, 0.7) !important; /* Muted default */
  background: transparent !important;
  border-radius: 0 !important;
  transition: color 0.25s ease, transform 0.25s ease !important;
  text-decoration: none !important;
}

.treatments-link:hover {
  background-color: transparent !important; /* No background card highlight */
  color: #FFFFFF !important;
  transform: translateX(4px) !important;
  padding: 8px 0 !important; /* Prevent hover padding shifts from theme rules */
}

.treatments-link:hover .mega-link-arrow {
  opacity: 1;
  transform: translateX(0);
}

.treatments-mega-footer {
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: 20px;
}

.treatments-mega-footer a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 10px 28px !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important; /* Standard button outline */
  border-radius: 30px !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  background: transparent !important;
}

.treatments-mega-footer a:hover {
  background-color: #FFFFFF !important;
  color: #023047 !important;
  border-color: #FFFFFF !important;
}

/* =========================================
   NON SURGICAL ORTHOPEDICS (Compact 1-Column)
   ========================================= */

.nonsurgical-dropdown {
  width: 320px;
  max-width: 90vw;
  padding: 28px 32px 20px;
}

.nonsurgical-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 20px 0 !important; /* Spacing before footer divider */
  display: block !important;
  /* Reset default nested submenu styles (.main-menu ul ul) */
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
  transform: none !important;
  width: auto !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  overflow: visible !important;
  transition: none !important;
}

.nonsurgical-list li {
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
}

.nonsurgical-link {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: rgba(255, 255, 255, 0.7) !important;
  background: transparent !important;
  border-radius: 0 !important;
  transition: color 0.25s ease, transform 0.25s ease !important;
  text-decoration: none !important;
}

.nonsurgical-link:hover {
  background-color: transparent !important;
  color: #FFFFFF !important;
  transform: translateX(4px) !important;
  padding: 8px 0 !important; /* Prevent hover padding shifts from theme rules */
}

.nonsurgical-link:hover .mega-link-arrow {
  opacity: 1;
  transform: translateX(0);
}

.nonsurgical-dropdown-footer {
  text-align: center;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: 16px;
}

.nonsurgical-dropdown-footer a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 10px 24px !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important;
  border-radius: 30px !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  background: transparent !important;
}

.nonsurgical-dropdown-footer a:hover {
  background-color: #FFFFFF !important;
  color: #023047 !important;
  border-color: #FFFFFF !important;
}

/* =========================================
   DROPDOWN POSITIONING & TRANSITIONS
   ========================================= */

/* Treatments (2nd menu item) - left-aligned */
.main-menu .nav-item:nth-child(2) > nav.treatments-mega-nav {
  left: 0 !important;
  right: auto !important;
  transform: translateY(-8px) !important;
}

.main-menu .nav-item:nth-child(2) > a[aria-expanded="true"] + nav.treatments-mega-nav {
  visibility: visible !important;
  opacity: 1 !important;
  transform: translateY(0) !important;
}

/* Non Surgical Orthopedics (3rd menu item) - centered */
.main-menu .nav-item:nth-child(3) > nav.nonsurgical-mega-nav {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) translateY(-8px) !important;
}

.main-menu .nav-item:nth-child(3) > a[aria-expanded="true"] + nav.nonsurgical-mega-nav {
  visibility: visible !important;
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
}

/* =========================================
   RESPONSIVE DESIGN SYSTEM OVERRIDES
   ========================================= */

@media (max-width: 1199px) {
  .treatments-mega-grid {
    width: 600px;
    gap: 0 32px;
    padding: 32px 36px 20px;
  }
}

@media (max-width: 991px) {
  .treatments-mega-grid {
    width: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px 28px;
    padding: 24px 28px;
  }
  .nonsurgical-dropdown {
    width: auto;
    padding: 24px 28px;
  }
}

@media (max-width: 767px) {
  .treatments-mega-grid,
  .nonsurgical-dropdown {
    display: block !important;
    width: auto !important;
    max-width: 100% !important;
    padding: 16px !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    border: none !important;
  }
  .treatments-list,
  .nonsurgical-list {
    display: block !important;
    margin: 0 0 16px 0 !important;
  }
  .treatments-list li,
  .nonsurgical-list li {
    margin-bottom: 8px !important;
  }
  .treatments-link,
  .nonsurgical-link {
    padding: 6px 0 !important;
    font-size: 14px !important;
  }
  .treatments-link:hover,
  .nonsurgical-link:hover {
    transform: none !important;
  }
  .treatments-mega-footer,
  .nonsurgical-dropdown-footer {
    margin-top: 8px;
    border-top: none;
    padding-top: 0;
  }
  .treatments-mega-footer a,
  .nonsurgical-dropdown-footer a {
    width: 100%;
    justify-content: center;
    border-radius: 8px !important;
  }
}

/* =========================================
   CONDITIONS CATEGORIZED MEGA MENU
   ========================================= */

/* Default hidden — nav wrapper is invisible */
.main-menu li.submenu > nav.conditions-mega-nav {
  position: absolute !important;
  top: 100%;
  z-index: 2000 !important;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.18s ease, transform 0.18s ease, visibility 0.18s ease;
}

/* Position: centered under Conditions nav item (4th) */
.main-menu .nav-item:nth-child(4) > nav.conditions-mega-nav {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) translateY(-8px) !important;
}

/* Show state — same selector handles centering + visibility together
   (avoids transform shorthand overwriting translateX(-50%)) */
.main-menu .nav-item:nth-child(4) > a[aria-expanded="true"] + nav.conditions-mega-nav {
  visibility: visible !important;
  opacity: 1 !important;
  transform: translateX(-50%) translateY(0) !important;
}

/* Grid container */
.conditions-mega-grid {
  width: 1080px;
  max-width: 90vw;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 40px;
  padding: 40px 48px 30px;
  background: #023047 !important; /* Solid Premium Brand Dark Blue */
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.3) !important;
  border-radius: 16px !important;
}

/* Category column */
.conditions-mega-column {
  min-width: 0;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Category heading */
.mega-category-title {
  display: block;
  font-family: var(--accent-font), serif;
  font-size: 14px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: rgba(255, 255, 255, 0.55) !important;
  margin-bottom: 12px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  pointer-events: none;
}

/* Category list */
.mega-category-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 28px 0 !important; /* Added bottom margin to create breathing room above footer divider */
  visibility: visible !important;
  opacity: 1 !important;
  width: auto !important;
  position: static !important;
  transform: none !important;
  overflow: visible !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.mega-category-list li {
  margin: 0 !important;
  padding: 0 !important;
}

/* Condition link */
.mega-category-link {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 0 !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: rgba(255, 255, 255, 0.7) !important; /* Slightly dimmer for better hover contrast */
  background: transparent !important;
  border-radius: 0 !important;
  transition: color 0.25s ease, transform 0.25s ease !important;
  text-decoration: none !important;
}

.mega-category-link:hover {
  background-color: transparent !important; /* Typography-first: no card highlights */
  color: #FFFFFF !important;
  transform: translateX(4px) !important;
}

/* Arrow icon on links - hidden by default */
.mega-link-arrow {
  opacity: 0;
  transform: translateX(-4px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  font-size: 10px;
  margin-left: auto;
  color: rgba(255, 255, 255, 0.8);
}

.mega-category-link:hover .mega-link-arrow {
  opacity: 1;
  transform: translateX(0);
}

/* Footer / View All */
.conditions-mega-footer {
  grid-column: 1 / -1;
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  text-align: center;
}

.conditions-mega-footer a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: #FFFFFF !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 10px 28px !important;
  border: 1px solid rgba(255, 255, 255, 0.28) !important; /* Enhanced outline contrast */
  border-radius: 30px !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  background: transparent !important;
}

.conditions-mega-footer a:hover {
  background-color: #FFFFFF !important;
  color: #023047 !important;
  border-color: #FFFFFF !important;
}

/* Responsive */
@media (max-width: 1199px) {
  .conditions-mega-grid {
    width: 900px;
    grid-template-columns: repeat(4, 1fr);
    gap: 0 28px;
    padding: 32px 36px 24px;
  }
}

@media (max-width: 991px) {
  .conditions-mega-grid {
    width: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 32px;
    padding: 28px 32px 20px;
  }
}

/* Mobile: handled by existing hamburger nav; degrade gracefully */
@media (max-width: 767px) {
  .conditions-mega-grid {
    display: block;
    width: auto;
    max-width: 100%;
    padding: 16px;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    border: none !important;
  }
  .conditions-mega-column {
    margin-bottom: 24px;
    padding: 0 !important;
  }
  .mega-category-title {
    font-size: 12px;
    padding: 0 0 6px 0;
    margin-bottom: 8px;
    font-family: var(--default-font), sans-serif;
    font-weight: 700;
  }
  .mega-category-link {
    padding: 6px 0 !important;
    font-size: 14px !important;
  }
  .mega-category-link:hover {
    transform: none !important;
  }
  .conditions-mega-footer {
    margin-top: 8px;
    border-top: none;
    padding-top: 0;
  }
}

/* =========================================
   WCAG 2.2 VISIBLE FOCUS & ACCESSIBILITY
   ========================================= */

    /* 1. Global Focus Indicator (High Contrast, 2px+ thick, Double Ring) */
    :focus-visible {
      outline: 3px solid #ffcc00 !important;
      /* Bright Gold for high visibility on dark/light backgrounds */
      outline-offset: 2px !important;
      box-shadow: 0 0 0 2px #000000 !important;
      /* Black ring for high contrast */
      position: relative !important;
      z-index: 10000 !important;
    }

    /* 2. Fallback for older browsers (standard :focus) */
    :focus {
      outline: 3px solid #ffcc00;
      position: relative;
      z-index: 10000;
    }

    /* 3. Mouse Users: No focus ring on click, only keyboard (if supported) */
    @supports selector(:focus-visible) {
      :focus:not(:focus-visible) {
        outline: none !important;
        box-shadow: none !important;
        position: static !important;
      }
    }

    /* 4. Component-Specific Visibility & Overrides */
    a:focus-visible,
    button:focus-visible,
    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible,
    [tabindex]:focus-visible,
    .btn:focus-visible,
    .nav-link:focus-visible {
      outline: 3px solid #ffcc00 !important;
      outline-offset: 2px !important;
      box-shadow: 0 0 0 2px #000000 !important;
      position: relative !important;
      z-index: 10000 !important;
      opacity: 1 !important;
    }

    /* Ensure rounded buttons get rounded focus rings */
    /* UPDATED: High Contrast for Dark Backgrounds
       - Outer Ring: White (#ffffff) to stand out against dark hero image
       - Inner Ring: Dark Blue (#1a237e) to contrast against the light button itself
    */
    .btn-default:focus-visible,
    .btn-default span:focus-visible {
      border-radius: 100px !important;
      outline: 3px solid #ffffff !important;
      outline-offset: 4px !important;
      box-shadow: 0 0 0 4px #1a237e !important;
      /* Dark ring fills the gap to the outline */
    }

    /* 5. Prevent Focus Obscuration (Sticky Headers) */
    :focus {
      scroll-margin-top: 150px;
      /* offset for sticky header */
      scroll-margin-bottom: 50px;
    }

    /* 6. Existing Submenu Focus Logic */
    .submenu>a:focus-visible {
      text-decoration: underline;
      /* Additional cue for links */
    }

    /* =========================================
       EXISTING MENU LOGIC (DO NOT REMOVE) 
       ========================================= */

    /* OVERRIDE: Forced Hidden on Focus-Within (wins against custom.css) - DISABLED to allow JS-controlled keyboard focus states
    .main-menu ul li:focus-within>ul,
    .main-menu ul li:focus-within>.sub-menu {
      visibility: hidden !important;
      opacity: 0 !important;
      display: none !important;
    }
    */

    /* SHOW: specific override for Aria-Expanded (wins against the rule above due to higher specificity) */
    .main-menu li.submenu>a[aria-expanded="true"]+nav,
    .main-menu li.submenu>a[aria-expanded="true"]+ul,
    .main-menu li.submenu>a[aria-expanded="true"]+.sub-menu,
    .main-menu li.submenu>a[aria-expanded="true"]+nav .mega-dropdown-list:not(.expanded) {
      visibility: visible !important;
      opacity: 1 !important;
      display: block !important;
      transform: scaleY(1) !important;
    }

    .main-menu li.submenu>a[aria-expanded="true"]+nav .mega-dropdown-list.expanded {
      visibility: visible !important;
      opacity: 1 !important;
      display: grid !important;
      transform: scaleY(1) !important;
    }

    /* SHOW: Preserve Mouse Hover (wins against hidden rule) - DISABLED FOR WCAG SC 1.4.13 ACCESSIBILITY (DISMISSIBLE ON ESCAPE)
    .main-menu ul li:hover>ul,
    .main-menu ul li:hover>.sub-menu {
      visibility: visible !important;
      opacity: 1 !important;
      display: block !important;
      transform: scaleY(1) !important;
    }
    */

    /* =========================================
       WCAG 2.2 CONTRAST FIXES
       ========================================= */

    /* Fix 2: Main Menu & Mobile Menu Hover States */
    /* Updated: Added solid background to nav items to ensure contrast compliance over hero images (WAVE Fix) */
    .main-menu ul li a {
      color: #FFFFFF !important;
      background-color: var(--primary-color) !important;
      border-radius: 8px;
      /* Rounded pill look matching motionis/buttons */
      margin: 0 2px;
      /* Visual separation */
    }

    .main-menu ul li a:hover,
    .main-menu ul li a:focus,
    .slicknav_nav a:hover,
    .slicknav_nav a:focus,
    .slicknav_nav .slicknav_row:hover {
      color: var(--secondary-color) !important;
      background-color: rgba(2, 48, 71, 0.9) !important;
      /* Slightly lighter/different on hover */
    }

    /* Fix 3: Submenu Hover States */
    /* Previous: Gray on Dark Blue -> Fail */
    /* New: Secondary Color + Slight Background for touch target clarity */
    .main-menu ul ul li a:hover,
    .main-menu ul ul li a:focus {
      color: var(--secondary-color) !important;
      background-color: rgba(255, 255, 255, 0.05) !important;
    }

    /* Fix 4: Navbar Motionis Contrast */
    /* Previous: Primary Color (Dark Blue) on Dark Header -> Fail (Invisible) */
    /* New: White Color -> 15:1 (Pass) */
    .navbar-brand .motionis-text {
      color: #FFFFFF !important;
      /* Hex for safety */
      background-color: var(--primary-color) !important;
      /* Ensure WAVE sees a dark background */
      padding: 5px 15px;
      /* Visual design: Make it look like a pill/badge */
      border-radius: 8px;
      font-size: 2rem;
      font-weight: bold;
      display: inline-block;
      /* Required for padding/bg */
    }

    .navbar-brand:hover .motionis-text,
    .navbar-brand:focus .motionis-text {
      color: var(--secondary-color) !important;
    }

    /* Fix 5: Skip Link Visibility */
    .visually-hidden-focusable:not(:focus):not(:focus-within) {
      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;
    }

    .visually-hidden-focusable:focus,
    .visually-hidden-focusable:focus-visible {
      position: absolute !important;
      top: 10px !important;
      left: 10px !important;
      width: auto !important;
      height: auto !important;
      clip: auto !important;
      clip-path: none !important;
      background-color: #ffffff !important;
      color: #023047 !important;
      padding: 15px 25px !important;
      z-index: 1000000 !important;
      border: 2px solid #ffcc00 !important;
      border-radius: 8px !important;
      font-weight: 700 !important;
      box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25) !important;
      text-decoration: none !important;
    }

    /* Fix 6: Preloader Motionis Contrast */
    /* Previous: Primary Color (Dark Blue) on Accent Color (Dark Blue) -> Fail */
    /* New: White Color -> 15:1 (Pass) */
    .preloader h2 {
      color: var(--white-color) !important;
      margin: 0 !important;
      /* Reset header margin */
      font-size: 24px;
      line-height: 1;
      white-space: nowrap;
      /* Prevent wrapping */
    }

    #loading-icon {
      max-width: none !important;
      /* Remove restrictive 66px limit */
      width: auto !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
    }

    /* Fix 8: Main Menu Focus Spacing
       Increase padding to ensure the focus ring is not cramped against the text.
    */
    .main-menu .nav-link {
      padding: 10px 15px !important;
    }

    /* Fix 9: Image Link Focus (Thick Double Border)
       Target specifically image-heavy links (thumbnails, featured images, galleries).
       Uses a White Outer Ring + Black Inner Ring for maximum visibility on any content.
    */
    .image-anime:focus-visible,
    figure>a:focus-visible,
    a:has(figure):focus-visible,
    /* Catch wrappers like video gallery where a wraps figure */
    .popup-video:focus-visible,
    .post-featured-image a:focus-visible,
    .project-item a:focus-visible,
    /* Generic fallback for block-level image links, excluding nav/motionis */
    a:not(.nav-link):not(.navbar-brand):has(img):focus-visible {
      outline: 4px solid #ffffff !important;
      outline-offset: -4px !important;
      /* Pull white ring inside */
      box-shadow: inset 0 0 0 4px #000000 !important;
      /* Black ring inside the white one */
      border-radius: 2px;
      /* Slight rounding if needed, but square usually fits images better */
      display: block;
      /* Ensure it behaves like a block for the outline */
    }

    .slicknav_menutxt {
      display: none !important;
    }

    /* =========================================
       MOBILE MENU - FULL SCREEN POP-UP (MODERN)
       ========================================= */

    /* 1. Hamburger Container & Button */
    .slicknav_menu {
      background: transparent !important;
      padding: 0 !important;
    }

    .slicknav_btn {
      background-color: transparent !important;
      margin-top: 5px !important;
      position: relative !important;
      z-index: 1000000 !important;
      /* Always on top of everything */
      width: 44px !important;
      height: 44px !important;
      display: flex !important;
      align-items: center;
      justify-content: center;
    }

    /* 2. Hamburger Icon Animation to "X" */
    .slicknav_icon {
      width: 22px;
      height: 16px;
      position: relative;
      transition: all 0.3s ease-in-out;
    }

    .slicknav_icon-bar {
      position: absolute;
      left: 0;
      width: 100%;
      height: 2px;
      background-color: #ffffff;
      border-radius: 2px;
      transition: all 0.3s ease-in-out;
      transform-origin: center;
    }

    /* Default State (Hamburger) */
    .slicknav_icon-bar:nth-child(1) {
      top: 0;
    }

    .slicknav_icon-bar:nth-child(2) {
      top: 7px;
      opacity: 1;
    }

    .slicknav_icon-bar:nth-child(3) {
      top: 14px;
    }

    /* Open State (X Close Button) */
    .slicknav_open .slicknav_icon-bar:nth-child(1) {
      top: 7px !important;
      transform: rotate(45deg);
    }

    .slicknav_open .slicknav_icon-bar:nth-child(2) {
      opacity: 0 !important;
    }

    .slicknav_open .slicknav_icon-bar:nth-child(3) {
      top: 7px !important;
      transform: rotate(-45deg);
    }

    /* 3. Full Screen Overlay */
    .slicknav_nav {
      /* Fixed Full Screen */
      position: fixed !important;
      top: 0 !important;
      left: 0 !important;
      width: 100vw !important;
      height: 100vh !important;
      background-color: var(--primary-color) !important;

      /* Layout */
      display: flex !important;
      flex-direction: column !important;
      justify-content: center !important;
      align-items: center !important;

      z-index: 99999 !important;
      /* Under button */
      padding-top: 60px !important;
      /* Space for the X button */

      /* Transition Logic */
      transition: opacity 0.3s ease, visibility 0s linear 0.3s;
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
    }

    /* Show State */
    .slicknav_nav:not(.slicknav_hidden) {
      opacity: 1 !important;
      visibility: visible !important;
      pointer-events: auto !important;
      transition: opacity 0.3s ease;
    }

    /* Hide State Override */
    .slicknav_nav.slicknav_hidden {
      display: none !important;
      /* Fallback */
    }

    /* Fix 11: EMERGENCY OVERRIDE for 'Find Out More' Button Text
       The text '#FFFFFF' is being overridden by a persistent browser/inheritance
       issue. We are applying this directly in the header styling block to win
       the specificity war against any external stylesheet conflict.
    */
    .more-service-btn a,
    .more-service-btn a:visited,
    .more-service-btn a:hover,
    .more-service-btn a:focus {
      color: #FFFFFF !important;
      opacity: 1 !important;
      visibility: visible !important;
      z-index: 1000 !important;
      /* Ensure it's on top */
    }

    /* Scrollable Menu for Long Dropdowns */
    .scrollable-menu {
      max-height: 400px;
      overflow-y: auto;
      overflow-x: hidden;
    }

    /* Custom Scrollbar for the menu */
    .scrollable-menu::-webkit-scrollbar {
      width: 6px;
    }

    .scrollable-menu::-webkit-scrollbar-track {
      background: #f1f1f1;
    }

    .scrollable-menu::-webkit-scrollbar-thumb {
      background: var(--primary-color);
      border-radius: 3px;
    }

    .scrollable-menu::-webkit-scrollbar-thumb:hover {
      background: var(--accent-color);
    }

    /* =========================================
       NAVBAR REDESIGN (Premium, Center-Weighted) - REVISED
       ========================================= */

    /* 1. Container & Height */
    .main-header .navbar {
      min-height: 90px !important; /* Increased for breathing room */
      padding: 20px 0 !important; /* Restored padding for distinct separation */
      align-items: center !important;
    }

    /* 2. REFINED BALANCED GRID ( मैथमेटिकल Precision ) */
    .main-header .navbar .container {
      display: grid !important;
      grid-template-columns: 280px 1fr 280px !important; /* Balanced side columns for perfect centering */
      align-items: center !important;
      position: relative !important;
      min-height: 110px !important;
      max-width: 1480px !important; /* Premium wide-screen layout */
      margin: 0 auto !important;
      width: 100% !important;
      padding: 0 20px !important;
      gap: 0 !important;
    }

    .navbar-brand {
      grid-column: 1 / 2 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: flex-start !important;
      padding: 0 !important;
      margin-right: 100px !important;
      min-height: 44px !important;
      min-width: 44px !important;
    }

    .collapse.navbar-collapse.main-menu {
      grid-column: 2 / 3 !important;
      display: flex !important;
      justify-content: center !important;
      align-items: center !important;
      width: 100% !important;
      margin: 0 !important;
      padding: 0 !important;
      background: transparent !important;
    }



    /* Prevent hidden mobile elements from taking space */
    .custom-mobile-toggle, .navbar-toggle {
       display: none !important;
    }
    @media (max-width: 991px) {
       .custom-mobile-toggle { 
         display: flex !important; 
         position: relative !important; 
         z-index: 20 !important;
       }
       .collapse.navbar-collapse.main-menu {
         position: static !important;
         transform: none !important;
         display: none !important;
       }
    }

    .nav-menu-wrapper {
      display: flex !important;
      justify-content: center !important;
      width: auto !important;
    }

    /* 3. Typography & Spacing */
    .navbar-nav {
      display: flex !important;
      flex-direction: row !important;
      align-items: center !important;
      gap: 12px !important; /* More space for larger text */
      margin: 0 !important;
    }

    .main-menu .nav-link {
      font-weight: 600 !important;
      font-size: 17px !important; /* Increased Premium Size */
      letter-spacing: 0px !important;
      padding: 10px 12px !important;
      color: #FFFFFF !important;
      white-space: nowrap !important;
      transition: all 0.3s ease;
    }

    /* FLUID SCALING ARCHITECTURE: Ensures zero-clipping on ALL desktop resolutions */
    @media (max-width: 1700px) {
       .main-menu .nav-link { font-size: 16px !important; padding: 10px 11px !important; }
       .navbar-nav { gap: 10px !important; }
    }
    @media (max-width: 1550px) {
       .main-menu .nav-link { font-size: 15px !important; padding: 10px 10px !important; }
       .navbar-nav { gap: 8px !important; }
       .main-header .navbar .container { grid-template-columns: max-content 1fr max-content !important; }
       .navbar-brand { margin-right: 40px !important; }
    }
    @media (max-width: 1380px) {
       .main-menu .nav-link { font-size: 14px !important; padding: 8px 8px !important; }
       .navbar-nav { gap: 6px !important; }
       .main-header .navbar .container { grid-template-columns: max-content 1fr max-content !important; }
       .navbar-brand { margin-right: 20px !important; }
    }
    @media (max-width: 1180px) {
       .main-menu .nav-link { font-size: 13px !important; padding: 8px 5px !important; }
       .navbar-nav { gap: 4px !important; }
       .main-header .navbar .container { grid-template-columns: max-content 1fr max-content !important; padding: 0 10px !important; }
       .navbar-brand { margin-right: 15px !important; }
    }
    @media (min-width: 992px) and (max-width: 1080px) {
       /* EMERGENCY COMPRESSION TIER (Tier 5) - Fix for Motionis Collision */
       .main-menu .nav-link { font-size: 12px !important; padding: 8px 3px !important; letter-spacing: -0.3px !important;}
       .navbar-nav { gap: 2px !important; }
       .main-header .navbar .container { grid-template-columns: max-content 1fr max-content !important; padding: 0 10px !important; gap: 5px !important;}
       .navbar-brand { margin-right: 10px !important; }
       
       /* Remove separators to free up critical space */
       .main-menu .nav-item::after { display: none !important; }
    }




    .main-menu .nav-link:hover,
    .main-menu .nav-link:focus,
    .main-menu .nav-link[aria-expanded="true"] {
      color: var(--secondary-color) !important;
      /* Changed to Secondary (Light Gray) for hover visibility */
      transform: translateY(-2px);
    }

    /* 4. Logical Grouping (Visual Separation) */
    /* Group 1: Home(1), About(2), Services(3) */
    .navbar-nav .nav-item:nth-child(3) {
      margin-right: 15px !important;
      /* Balanced visual gap */
      position: relative;
    }

    .navbar-nav .nav-item:nth-child(3)::after {
      content: '';
      position: absolute;
      right: -20px;
      top: 50%;
      transform: translateY(-50%);
      height: 20px;
      width: 1px;
      background-color: rgba(255, 255, 255, 0.2);
    }

    /* Group 2: Treatments(4), Non-Surg(5), Cond(6) */
    .navbar-nav .nav-item:nth-child(6) {
      margin-right: 15px !important;
      /* Balanced visual gap */
      position: relative;
    }

    .navbar-nav .nav-item:nth-child(6)::after {
      content: '';
      position: absolute;
      right: -20px;
      top: 50%;
      transform: translateY(-50%);
      height: 20px;
      width: 1px;
      background-color: rgba(255, 255, 255, 0.2);
    }

    /* 5. Contact Link */
    .navbar-nav .nav-item:last-child {
      margin-left: 15px !important;
      /* Separation for CTA */
    }

    /* Ensure Brand Motionis aligns */
    .navbar-brand {
      margin-right: 0 !important;
      padding: 0 !important;
    }

    /* =========================================
       INVERT MODE FOCUS OVERRIDES
       ========================================= */

    /* Override default focus styles for invert mode */
    html[data-contrast="invert"] :focus-visible,
    html[data-contrast="invert"] a:focus-visible,
    html[data-contrast="invert"] button:focus-visible,
    html[data-contrast="invert"] [tabindex]:focus-visible {
      outline: 4px solid #000000 !important;
      /* BLACK inverts to WHITE */
      outline-offset: 4px !important;
      box-shadow: 0 0 0 4px #000000 !important;
      /* BLACK inverts to WHITE */
      z-index: 10000 !important;
    }

    /* Navigation items - same black outline */
    html[data-contrast="invert"] .nav-link:focus-visible,
    html[data-contrast="invert"] .main-menu ul li a:focus-visible {
      outline: 4px solid #000000 !important;
      /* BLACK inverts to WHITE */
      outline-offset: 4px !important;
      box-shadow: 0 0 0 4px #000000 !important;
      /* BLACK inverts to WHITE */
    }

    /* Dropdown menu background and items in invert mode */
    /* Set dropdown to WHITE background so it inverts to BLACK */
    html[data-contrast="invert"] .main-menu .mega-dropdown-list {
      background: #ffffff !important;
      /* WHITE inverts to BLACK */
      background-color: #ffffff !important;
    }

    /* All dropdown menu items - BLACK text inverts to WHITE */
    html[data-contrast="invert"] .main-menu .mega-dropdown-list li a {
      color: #000000 !important;
      /* BLACK inverts to WHITE for visibility */
    }

    /* View More link - MAXIMUM VISIBILITY in invert mode */
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li {
      border-top: 2px solid #000000 !important;
      /* BLACK border inverts to WHITE */
      opacity: 1 !important;
      visibility: visible !important;
      display: flex !important;
      background: transparent !important;
    }

    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a,
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a span {
      color: #000000 !important;
      /* BLACK inverts to WHITE */
      opacity: 1 !important;
      visibility: visible !important;
      font-weight: 700 !important;
      display: flex !important;
      text-transform: uppercase !important;
    }

    /* View More icon */
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a i,
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a .fa-arrow-right {
      color: #000000 !important;
      /* BLACK inverts to WHITE */
      opacity: 1 !important;
      display: inline-block !important;
    }

    /* Overall Navbar Hover Logic for Invert Mode */
    /* Logic: CSS WHITE inverts to VISUAL BLACK */
    /* Logic: CSS BLACK inverts to VISUAL WHITE */
    html[data-contrast="invert"] .main-menu ul li a:hover,
    html[data-contrast="invert"] .main-menu ul li a:focus,
    html[data-contrast="invert"] .main-menu .mega-dropdown-list li a:hover,
    html[data-contrast="invert"] .main-menu .mega-dropdown-list li a:focus {
      color: #ffffff !important;
      /* Visual BLACK */
      background-color: #000000 !important;
      /* Visual WHITE */
    }

    /* View More hover state */
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a:hover,
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a:focus {
      color: #ffffff !important;
      /* Visual BLACK */
      background-color: #000000 !important;
      /* Visual WHITE */
    }

    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a:hover span,
    html[data-contrast="invert"] .main-menu .mega-dropdown-list .view-more-li a:hover i {
      color: #ffffff !important;
      /* Visual BLACK */
    }

    /* =========================================
       STICKY NAVBAR (Premium Scroll Experience)
       ========================================= */

    /* Base Header State - High specificity to win against accessibility widget */
    html .main-header,
    html[data-contrast="light"] .main-header {
      width: 100%;
      z-index: 2000 !important;
      transition: all 0.3s ease;
      background: #023047 !important; /* Force Brand Dark Blue */
    }

    /* Ensure Logo visibility at top of page */
    html .navbar-brand .motionis-text,
    html[data-contrast="light"] .navbar-brand .motionis-text {
      color: #FFFFFF !important;
      background-color: transparent !important;
      text-decoration: none !important;
    }

    /* Remove underlines and border decorations, allowing focus outlines to work */
    .navbar-brand, 
    .navbar-brand:hover, 
    .main-menu ul li a,
    .main-menu ul li a:hover {
      text-decoration: none !important;
      border: none !important;
    }

    /* Scrolled Class added via JS - High Specificity to win against accessibility settings */
    html .main-header.header-scrolled,
    html[data-contrast="light"] .main-header.header-scrolled {
      position: fixed !important;
      top: 0 !important;
      left: 0 !important;
      transform: none !important;
      width: 100% !important;
      max-width: 100% !important;
      background: rgba(2, 48, 71, 0.9) !important; /* Direction B: Dark Blue Glass */
      backdrop-filter: blur(15px) !important;
      -webkit-backdrop-filter: blur(15px) !important;
      box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
      border-bottom: 1px solid rgba(255, 255, 255, 0.05);
      border-radius: 0 !important;
      animation: navSlideDown 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
      z-index: 2000 !important;
    }

    @keyframes navSlideDown {
      from { transform: translateY(-100%); opacity: 0; }
      to { transform: translateY(0); opacity: 1; }
    }

    /* Navbar strip styling in scrolled state */
    .main-header.header-scrolled .header-sticky,
    .main-header.header-scrolled .navbar {
      background: transparent !important; /* Force transparent to show brand blue background */
    }

    .main-header.header-scrolled .header-sticky {
      margin-top: 0 !important;
      padding-top: 8px !important; /* Slimmer padding for 'Thin Strip' look */
      padding-bottom: 8px !important;
      transition: all 0.3s ease;
    }

    .main-header.header-scrolled .navbar {
      min-height: 60px !important; /* Minimalist height for medical grade feel */
      padding: 0 !important;
    }

    /* Ensure Logo and Links are White in Sticky State (Direction B) */
    .main-header.header-scrolled .motionis-text,
    html[data-contrast="light"] .main-header.header-scrolled .motionis-text {
      color: #FFFFFF !important; /* Contrast on Dark Blue Glass */
      background: transparent !important;
      font-size: 1.8rem !important; /* Shrink Logo on Scroll */
      padding: 0 !important;
      text-decoration: none !important;
      border: none !important;
      transition: font-size 0.3s ease;
    }

    .main-header.header-scrolled .nav-link,
    html[data-contrast="light"] .main-header.header-scrolled .nav-link {
      color: #FFFFFF !important;
      background: transparent !important;
      text-decoration: none !important;
      transition: all 0.3s ease;
    }

    .main-header.header-scrolled .nav-link:hover {
      color: var(--secondary-color) !important; /* Soft light blue/gray hover */
    }

    /* Adjust navbar container to match scrolled height */
    .main-header.header-scrolled .navbar .container {
      min-height: 60px !important; /* Match slimmer height */
    }

    /* =========================================
       MOBILE FULL-SCREEN OVERLAY NAVIGATION
       ========================================= */

    /* --- HIDE OLD SLICKNAV & UNUSED CONTAINERS COMPLETELY --- */
    .slicknav_menu,
    .responsive-menu,
    .navbar-toggle {
      display: none !important;
    }

    /* --- CUSTOM MOBILE TOGGLE (HAMBURGER) --- */
    .custom-mobile-toggle {
      display: none;
      /* Hidden on Desktop */
      position: absolute;
      right: 15px;
      /* Position to the right */
      top: 50%;
      transform: translateY(-50%);
      /* Vertically center */
      z-index: 10001;
      /* Above Header */
      background: transparent;
      border: none;
      width: 44px;
      height: 44px;
      cursor: pointer;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 6px;
    }

    .custom-mobile-toggle .bar {
      width: 25px;
      height: 2px;
      background-color: var(--white-color, #fff);
      /* Fallback white */
      border-radius: 2px;
      transition: all 0.3s ease;
    }

  /* Show Hamburger on Mobile */
    @media (max-width: 991px) {
      .custom-mobile-toggle {
        display: flex;
        position: relative !important;
        transform: none !important;
        margin-left: auto !important;
        top: auto !important;
        right: 0 !important;
      }

      /* Ensure navbar container allows positioning */
      .main-header .navbar .container {
        position: relative;
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        width: 100% !important;
      }

      /* Hide Main Desktop Menu & User Icons on Mobile */
      .main-header .collapse.navbar-collapse.main-menu,
      .main-header .header-user-icon {
        display: none !important;
      }
    }

    /* --- FULL SCREEN OVERLAY --- */
    .mobile-nav-overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background-color: var(--primary-color, #023047);
      /* Solid Brand Color */
      z-index: 99999;
      /* Highest Priority */
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start; /* Changed from center to prevent collisions at the top */
      overflow-y: auto; /* Allow scrolling for long menus */
      padding-bottom: 50px; /* Space at the bottom */
 
      /* HIDDEN STATE (DEFAULT) */
      opacity: 0;
      visibility: hidden;
      pointer-events: none;
      transition: opacity 0.3s ease, visibility 0.3s ease;
    }
    
    /* --- MENU OPEN STATE (GLOBAL UI STATE) --- */
    /* When menu is open, hide the header on mobile */
    @media (max-width: 991px) {

      body.menu-open .main-header {
        display: none !important;
      }
    }

    /* When menu is open, show the overlay */
    body.menu-open .mobile-nav-overlay {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
    }

    /* Safety Fix: Ensure mobile overlay never shows on desktop unless triggered */
    @media (min-width: 992px) {
      .mobile-nav-overlay {
        display: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
      }
    }

    /* --- MOBILE NAV HEADER (MOTIONIS + CLOSE) --- */
    .mobile-nav-header {
      width: 100%;
      padding: 20px 30px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      background: rgba(0, 0, 0, 0.02);
      border-bottom: 1px solid rgba(255, 255, 255, 0.05);
      position: sticky;
      top: 0;
      z-index: 100001;
    }

    .mobile-nav-header .navbar-brand {
      margin: 0 !important;
    }

    .mobile-nav-close {
      background: transparent;
      border: none;
      color: #fff;
      font-size: 28px;
      cursor: pointer;
      padding: 5px;
      transition: transform 0.3s ease;
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .mobile-nav-close:hover {
      transform: rotate(90deg);
      color: var(--secondary-color, #E5EAEC);
    }

    /* --- NAV LINKS INSIDE OVERLAY --- */
    .mobile-nav-links {
      display: flex;
      flex-direction: column;
      align-items: center;
      gap: 5px; /* Tighter gap */
      width: 100%;
      overflow-y: visible;
      padding: 10px;
    }

    .mobile-nav-links a {
      font-family: var(--default-font, sans-serif);
      font-size: 20px; /* Slightly smaller for density */
      font-weight: 600;
      color: #ffffff;
      text-decoration: none;
      transition: color 0.3s ease;
      text-align: center;
      display: block;
    }

    .mobile-nav-links a:hover {
      color: var(--secondary-color, #E5EAEC);
    }

    /* Section Container */
    .mobile-nav-section {
      width: 100%;
    }

    /* Category Headers */
    .mobile-nav-category {
      font-family: var(--accent-font, sans-serif);
      font-size: 20px; /* Unified size */
      font-weight: 700;
      color: #ffffff;
      background: transparent;
      border: none;
      width: 100%;
      text-align: center;
      padding: 8px 20px; /* Reduced vertical padding */
      margin: 2px 0; /* Tighter margin */
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      transition: color 0.3s ease;
      position: relative;
    }

    .mobile-nav-category:hover {
      color: var(--secondary-color, #E5EAEC);
    }

    .mobile-nav-category i {
      font-size: 14px;
      transition: transform 0.3s ease;
    }

    /* Submenu Container (Collapsible) */
    .mobile-nav-submenu {
      list-style: none;
      margin: 0;
      padding: 0;
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.4s ease;
      width: 100%;
      background: rgba(0,0,0,0.05); /* Subtle grouping background */
    }

    /* Top-level navigation items */
    .mobile-nav-item {
      font-size: 20px !important; /* Unified size */
      font-weight: 600 !important;
      padding: 8px 0 !important; /* Reduced vertical padding */
      color: #ffffff;
      text-decoration: none;
      display: block;
      text-align: center;
    }

    .mobile-nav-item:hover {
      color: var(--secondary-color, #E5EAEC) !important;
    }

    /* Submenu items (indented) */
    .mobile-nav-subitem {
      font-size: 16px !important; /* Smaller submenu items */
      font-weight: 500 !important;
      color: rgba(255, 255, 255, 0.8) !important;
      padding: 6px 0 !important; /* Tighter vertical padding */
      text-decoration: none;
      display: block;
      text-align: center;
      transition: all 0.3s ease;
    }

    .mobile-nav-subitem:hover {
      color: var(--secondary-color, #E5EAEC) !important;
    }

    /* View More links */
    .mobile-nav-viewmore {
      font-size: 14px !important;
      font-weight: 700 !important;
      color: var(--secondary-color, #E5EAEC) !important;
      padding: 10px 0 !important;
      margin-top: 5px !important;
      display: inline-flex !important;
      align-items: center;
      justify-content: center;
      gap: 8px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      text-decoration: none;
      width: 100%;
      transition: color 0.3s ease;
    }

    .mobile-nav-viewmore:hover {
      color: #ffffff !important;
    }

    .mobile-nav-viewmore i {
      font-size: 12px;
    }

/* Unique Mobile User Component */
    .mobile-user-nav {
      width: 90%;
      margin: 15px auto 15px auto; /* Tighter margins */
      padding: 10px 15px; /* More compact padding */
      background: rgba(255, 255, 255, 0.05);
      -webkit-backdrop-filter: blur(10px);
      backdrop-filter: blur(10px);
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: 12px; /* Slightly sharper for compact look */
      display: flex;
      align-items: center;
      justify-content: space-between;
      flex-wrap: nowrap;
      gap: 10px;
    }

    .mobile-user-link {
      color: #fff !important;
      font-size: 16px; /* Scaled down to fit cleanly */
      font-weight: 700;
      display: flex;
      align-items: center;
      gap: 10px;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      transition: all 0.3s ease;
      text-decoration: none;
      white-space: nowrap;
    }

    .mobile-user-link i {
      font-size: 20px;
      color: var(--secondary-color);
    }

    .mobile-user-link:hover {
      color: var(--secondary-color, #E5EAEC) !important;
      transform: translateY(-2px);
    }

    /* Mobile Motionisut Icon Styling */
    .mobile-motionisut-link {
      color: #ff6b6b !important;
      font-size: 18px;
      display: flex;
      align-items: center;
      justify-content: center;
      padding-left: 15px;
      border-left: 1px solid rgba(255, 255, 255, 0.2);
      transition: all 0.3s ease;
    }

    .mobile-motionisut-link:hover {
      color: #ff4757 !important;
      /* Brighter red on hover */
      transform: translateX(3px);
      /* Subtle slide effect */
    }

    /* Active Body Lock (when menu is open) */
    body.menu-open {
      overflow: hidden !important;
      height: 100vh;
    }

/* ==========================================================================
   MEGA DROPDOWN WCAG CONTRAST MODE OVERRIDES (Invert, Dark, Light Modes)
   ========================================================================== */

/* --- 1. INVERT CONTRAST MODE --- */
html[data-contrast="invert"] .treatments-mega-grid,
html[data-contrast="invert"] .nonsurgical-dropdown,
html[data-contrast="invert"] .conditions-mega-grid {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 2px solid #000000 !important;
  box-shadow: none !important;
}

html[data-contrast="invert"] .main-menu li.submenu ul.treatments-list,
html[data-contrast="invert"] .main-menu li.submenu ul.nonsurgical-list,
html[data-contrast="invert"] .main-menu li.submenu ul.mega-category-list {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
}

html[data-contrast="invert"] .treatments-mega-footer,
html[data-contrast="invert"] .nonsurgical-dropdown-footer,
html[data-contrast="invert"] .conditions-mega-footer {
  border-top: 1px solid #000000 !important;
}

html[data-contrast="invert"] .treatments-mega-footer a,
html[data-contrast="invert"] .nonsurgical-dropdown-footer a,
html[data-contrast="invert"] .conditions-mega-footer a {
  color: #000000 !important;
  border-color: #000000 !important;
}

html[data-contrast="invert"] .treatments-mega-footer a:hover,
html[data-contrast="invert"] .nonsurgical-dropdown-footer a:hover,
html[data-contrast="invert"] .conditions-mega-footer a:hover {
  background-color: #000000 !important;
  color: #ffffff !important;
  border-color: #000000 !important;
}

html[data-contrast="invert"] .mega-link-arrow {
  color: #000000 !important;
}

/* --- 2. DARK CONTRAST MODE --- */
html[data-contrast="dark"] .treatments-mega-grid,
html[data-contrast="dark"] .nonsurgical-dropdown,
html[data-contrast="dark"] .conditions-mega-grid {
  background: #000000 !important;
  background-color: #000000 !important;
  border: 2px solid #ffffff !important;
  box-shadow: none !important;
}

html[data-contrast="dark"] .main-menu li.submenu ul.treatments-list,
html[data-contrast="dark"] .main-menu li.submenu ul.nonsurgical-list,
html[data-contrast="dark"] .main-menu li.submenu ul.mega-category-list {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
}

html[data-contrast="dark"] .treatments-mega-footer a,
html[data-contrast="dark"] .nonsurgical-dropdown-footer a,
html[data-contrast="dark"] .conditions-mega-footer a {
  color: #ffff00 !important;
  border-color: #ffff00 !important;
}
html[data-contrast="dark"] .treatments-mega-footer a:hover,
html[data-contrast="dark"] .nonsurgical-dropdown-footer a:hover,
html[data-contrast="dark"] .conditions-mega-footer a:hover {
  background-color: #ffff00 !important;
  color: #000000 !important;
  border-color: #ffff00 !important;
}
html[data-contrast="dark"] .mega-link-arrow {
  color: #ffffff !important;
}

/* --- 3. LIGHT CONTRAST MODE --- */
html[data-contrast="light"] .treatments-mega-grid,
html[data-contrast="light"] .nonsurgical-dropdown,
html[data-contrast="light"] .conditions-mega-grid {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: 2px solid #000000 !important;
  box-shadow: none !important;
}

html[data-contrast="light"] .main-menu li.submenu ul.treatments-list,
html[data-contrast="light"] .main-menu li.submenu ul.nonsurgical-list,
html[data-contrast="light"] .main-menu li.submenu ul.mega-category-list {
  background: transparent !important;
  background-color: transparent !important;
  border: none !important;
}

html[data-contrast="light"] .treatments-mega-footer a,
html[data-contrast="light"] .nonsurgical-dropdown-footer a,
html[data-contrast="light"] .conditions-mega-footer a {
  color: #000000 !important;
  border-color: #000000 !important;
}
html[data-contrast="light"] .treatments-mega-footer a:hover,
html[data-contrast="light"] .nonsurgical-dropdown-footer a:hover,
html[data-contrast="light"] .conditions-mega-footer a:hover {
  background-color: #000000 !important;
  color: #ffffff !important;
  border-color: #000000 !important;
}
html[data-contrast="light"] .mega-link-arrow {
  color: #000000 !important;
}

/* --- Main nav links active state contrast overrides --- */
html[data-contrast="invert"] .main-menu .nav-link[aria-expanded="true"],
html[data-contrast="invert"] .main-menu li.submenu:hover > a.nav-link,
html[data-contrast="invert"] .main-menu li.submenu:focus-within > a.nav-link {
  color: #000000 !important; /* Inverts to white */
}

html[data-contrast="dark"] .main-menu .nav-link[aria-expanded="true"],
html[data-contrast="dark"] .main-menu li.submenu:hover > a.nav-link,
html[data-contrast="dark"] .main-menu li.submenu:focus-within > a.nav-link {
  color: #ffff00 !important; /* Yellow text for dark mode */
}

html[data-contrast="light"] .main-menu .nav-link[aria-expanded="true"],
html[data-contrast="light"] .main-menu li.submenu:hover > a.nav-link,
html[data-contrast="light"] .main-menu li.submenu:focus-within > a.nav-link {
  color: #000000 !important; /* Black text for light mode */
}

/* Prevent double-inversion on dropdown footer arrows in Invert Mode */
html[data-contrast="invert"] .treatments-mega-footer a i,
html[data-contrast="invert"] .nonsurgical-dropdown-footer a i,
html[data-contrast="invert"] .conditions-mega-footer a i {
  filter: none !important;
}

/* --- Mobile Menu Hamburger Toggle Contrast Overrides --- */
html[data-contrast="invert"] .custom-mobile-toggle .bar {
  background-color: #000000 !important; /* Inverts to white */
}

html[data-contrast="dark"] .custom-mobile-toggle .bar {
  background-color: #ffff00 !important; /* Yellow bars for dark contrast */
}

html[data-contrast="light"] .custom-mobile-toggle .bar {
  background-color: #000000 !important; /* Black bars for light contrast */
}

/* --- Mobile Nav Overlay Invert Mode Custom Theme (Black & Cyan) --- */
html[data-contrast="invert"] .mobile-nav-overlay {
  filter: invert(100%) hue-rotate(180deg) !important;
  background-color: #000000 !important; /* Solid black background */
  background: #000000 !important;
}

html[data-contrast="invert"] .mobile-nav-header {
  background: rgba(0, 0, 0, 0.2) !important;
  border-bottom: 1px solid #00ffff !important; /* Bright cyan border */
}

/* Close icon and branding text -> Bright Cyan */
html[data-contrast="invert"] .mobile-nav-overlay .motionis-text,
html[data-contrast="invert"] .mobile-nav-overlay .logo-text,
html[data-contrast="invert"] .mobile-nav-close,
html[data-contrast="invert"] .mobile-nav-close i {
  color: #00ffff !important;
  -webkit-text-fill-color: #00ffff !important;
}

html[data-contrast="invert"] .mobile-nav-close:hover {
  color: #ffffff !important; /* White on hover */
  -webkit-text-fill-color: #ffffff !important;
}

/* Nav Links inside overlay -> Bright Cyan */
html[data-contrast="invert"] .mobile-nav-links a,
html[data-contrast="invert"] .mobile-nav-category,
html[data-contrast="invert"] .mobile-nav-item,
html[data-contrast="invert"] .mobile-nav-subitem,
html[data-contrast="invert"] .mobile-nav-viewmore {
  color: #00ffff !important;
  -webkit-text-fill-color: #00ffff !important;
}

/* Hover state for links -> White */
html[data-contrast="invert"] .mobile-nav-links a:hover,
html[data-contrast="invert"] .mobile-nav-category:hover,
html[data-contrast="invert"] .mobile-nav-item:hover,
html[data-contrast="invert"] .mobile-nav-subitem:hover,
html[data-contrast="invert"] .mobile-nav-viewmore:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Social media icons -> Bright Cyan */
html[data-contrast="invert"] .mobile-nav-social a {
  color: #00ffff !important;
  border-color: #00ffff !important;
}

html[data-contrast="invert"] .mobile-nav-social a svg {
  stroke: #00ffff !important;
}

html[data-contrast="invert"] .mobile-nav-social a:hover {
  background-color: #00ffff !important;
  color: #000000 !important;
  border-color: #00ffff !important;
}

html[data-contrast="invert"] .mobile-nav-social a:hover svg {
  stroke: #000000 !important;
}

/* Prevent nested icons and SVGs from getting extra inversions inside the double-inverted overlay */
html[data-contrast="invert"] .mobile-nav-overlay i,
html[data-contrast="invert"] .mobile-nav-overlay svg {
  filter: none !important;
}

/* === COMBINED FROM custom.css === */
/* ----------------------------------------------------------------------------------------
* Template Name : Carefirst - Physiotherapy HTML Template
* File          : CSS File
* Version       : 1.0
* ---------------------------------------------------------------------------------------- */
/* WCAG 2.2.2 (SC 2.2.2 Pause, Stop, Hide): Disable all animations for users who prefer reduced motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/* INDEX
----------------------------------------------------------------------------------------
01. Global Variables
02. General css
03. Header css
04. Hero css
05. Our Benefits css
06. About Us css
07. Our Services css
08. Care Rehabilitation css
09. Quality Treatment css
10. How It Work css
11. Our Pricing css
12. Therapist Team css
13. Our Testimonial css
14. Our Blog css
15. Footer css
16. About us Page css
17. Services Page css
18. Service Single css
19. Blog Archive css
20. Blog Single css
21. Team Page css
22. Team Single css
23. Video Gallery Page css
24.	FAQs Page css
25. Contact us Page css
26. Make Appointment Page css
27. 404 Page css
28. Responsive css
-------------------------------------------------------------------------------------- */

/************************************/
/*** 	 01. Global Variables	  ***/
/************************************/

:root {
  --primary-color: #023047;
  --secondary-color: #e5eaec;
  --text-color: #4a505e;
  --accent-color: #033e5b;
  --white-color: #ffffff;
  --black-color: #000000;
  --divider-color: #ffffff33;
  --dark-divider-color: #d4f0f533;
  --error-color: rgb(230, 87, 87);
  --default-font: "Sora", sans-serif;
  --accent-font: "Marcellus", serif;

  /* ========================================
     WCAG 2.2 AAA CONTRAST DESIGN TOKENS
     ======================================== */
  /* These tokens are mathematically verified for contrast compliance.
     Use these for guaranteed accessibility across all states. */

  /* â”€â”€â”€â”€ Dark Backgrounds (for white/light text) â”€â”€â”€â”€ */
  --wcag-text-pure-white: #ffffff;
  /* 15:1+ on dark backgrounds (AAA) */
  --wcag-text-high-contrast: #e8f1f5;
  /* 12:1+ on dark backgrounds (AAA) */
  --wcag-text-readable: #f1f5f8;
  /* 11:1+ on dark backgrounds (AAA) */
  --wcag-bg-dark-stable: #023047;
  /* For text contrast calculations */
  --wcag-bg-darker: #011823;
  /* Enhanced dark for maximum contrast */

  /* â”€â”€â”€â”€ Light Backgrounds (for dark text) â”€â”€â”€â”€ */
  --wcag-text-dark-primary: #023047;
  /* 15.3:1 on white backgrounds (AAA) */
  --wcag-text-dark-secondary: #033e5b;
  /* 13.2:1 on white backgrounds (AAA) */
  --wcag-text-body: #4a505e;
  /* 8.1:1 on white backgrounds (AAA) */
  --wcag-bg-light-stable: #ffffff;
  /* Pure white for maximum contrast */
  --wcag-bg-light-subtle: #f8f9fa;
  /* Off-white with 1.03:1 from pure white */

  /* â”€â”€â”€â”€ Usage Guide â”€â”€â”€â”€
     
     LIGHT SECTION (white/light background):
       background: var(--wcag-bg-light-stable);
       color: var(--wcag-text-dark-primary);
     
     DARK SECTION (dark/blue background):
       background: var(--wcag-bg-dark-stable);
       color: var(--wcag-text-pure-white);
     
     DO NOT MIX:
       âŒ Never use --wcag-text-pure-white on light backgrounds
       âŒ Never use --wcag-text-dark-primary on dark backgrounds
       âŒ Never apply opacity to these tokens
  */
}

/* ============================================================================
   GLOBAL WCAG COMPLIANCE - ANIMATION OVERRIDE SYSTEM
   ============================================================================
   
   PROBLEM: GSAP animations (text-anime-style-1, -2, -3) set opacity: 0 on
   individual characters during initialization. This causes WAVE to flag
   "Very low contrast" errors across ALL sections with animated text.
   
   SOLUTION: Global CSS override that forces ALL animated text elements to
   remain visible with proper contrast, regardless of JavaScript animation state.
   
   This fixes the issue ONCE AND FOR ALL across the entire website.
   ============================================================================ */

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   1. GLOBAL ANIMATION OVERRIDE - All Text Animation Classes
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Override parent animated elements */
.text-anime-style-1,
.text-anime-style-2,
.text-anime-style-3 {
  opacity: 1 !important;
  visibility: visible !important;
  /* Ensure parent container is always visible */
}

/* Override ALL child elements created by SplitText/GSAP */
.text-anime-style-1 *,
.text-anime-style-1 > *,
.text-anime-style-1 div,
.text-anime-style-1 span,
.text-anime-style-1 .split-line,
.text-anime-style-1 [class*="split"],
.text-anime-style-2 *,
.text-anime-style-2 > *,
.text-anime-style-2 div,
.text-anime-style-2 span,
.text-anime-style-2 .split-line,
.text-anime-style-2 [class*="split"],
.text-anime-style-3 *,
.text-anime-style-3 > *,
.text-anime-style-3 div,
.text-anime-style-3 span,
.text-anime-style-3 .split-line,
.text-anime-style-3 [class*="split"] {
  opacity: 1 !important;
  visibility: visible !important;
  /* Force all split characters/words/lines to be visible */
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   2. ENSURE PROPER COLOR INHERITANCE - COMPREHENSIVE COVERAGE
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   DARK SECTIONS - WHITE TEXT (Background: Dark blue/gradient)
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

.our-testimonial .text-anime-style-1,
.our-testimonial .text-anime-style-2,
.our-testimonial .text-anime-style-3,
.our-testimonial .text-anime-style-1 *,
.our-testimonial .text-anime-style-2 *,
.our-testimonial .text-anime-style-3 *,
.our-testimonial h1,
.our-testimonial h2,
.our-testimonial h3,
.our-testimonial h4,
.our-testimonial h5,
.our-testimonial h6,
.our-testimonial p,
.our-testimonial li,
.our-testimonial span {
  color: #023047 !important;
  /* Force dark blue on light backgrounds */
}

.our-pricing .text-anime-style-1,
.our-pricing .text-anime-style-2,
.our-pricing .text-anime-style-3,
.our-pricing .text-anime-style-1 *,
.our-pricing .text-anime-style-2 *,
.our-pricing .text-anime-style-3 *,
.our-pricing h1,
.our-pricing h2,
.our-pricing h3,
.our-pricing h4,
.our-pricing h5,
.our-pricing h6,
.our-pricing p,
.our-pricing li,
.our-pricing span {
  color: #ffffff !important;
  /* Force white on dark backgrounds */
}

.page-header .text-anime-style-1,
.page-header .text-anime-style-2,
.page-header .text-anime-style-3,
.page-header .text-anime-style-1 *,
.page-header .text-anime-style-2 *,
.page-header .text-anime-style-3 *,
.page-header h1,
.page-header h2,
.page-header h3 {
  color: #ffffff !important;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   LIGHT SECTIONS - DARK TEXT (Background: White/light)
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* About Us */
.about-us .text-anime-style-1,
.about-us .text-anime-style-2,
.about-us .text-anime-style-3,
.about-us .text-anime-style-1 *,
.about-us .text-anime-style-2 *,
.about-us .text-anime-style-3 *,
.about-us .section-title h1,
.about-us .section-title h2,
.about-us .section-title h3,
.about-us .section-title p {
  color: #023047 !important;
  /* Force dark blue on white backgrounds */
}

/* Services */
.our-services .text-anime-style-1,
.our-services .text-anime-style-2,
.our-services .text-anime-style-3,
.our-services .text-anime-style-1 *,
.our-services .text-anime-style-2 *,
.our-services .text-anime-style-3 *,
.our-services .section-title h1,
.our-services .section-title h2,
.our-services .section-title h3,
.our-services .section-title p {
  color: #023047 !important;
}

/* Blog */
.our-blog .text-anime-style-1,
.our-blog .text-anime-style-2,
.our-blog .text-anime-style-3,
.our-blog .text-anime-style-1 *,
.our-blog .text-anime-style-2 *,
.our-blog .text-anime-style-3 *,
.our-blog .section-title h1,
.our-blog .section-title h2,
.our-blog .section-title h3,
.our-blog .section-title p {
  color: #023047 !important;
}

/* Quality Treatment */
.quality-treatment .text-anime-style-1,
.quality-treatment .text-anime-style-2,
.quality-treatment .text-anime-style-3,
.quality-treatment .text-anime-style-1 *,
.quality-treatment .text-anime-style-2 *,
.quality-treatment .text-anime-style-3 *,
.quality-treatment .section-title h1,
.quality-treatment .section-title h2,
.quality-treatment .section-title h3,
.quality-treatment .section-title p {
  color: #023047 !important;
}

/* Care Rehabilitation */
.care-rehabilitation .text-anime-style-1,
.care-rehabilitation .text-anime-style-2,
.care-rehabilitation text-anime-style-3,
.care-rehabilitation .text-anime-style-1 *,
.care-rehabilitation .text-anime-style-2 *,
.care-rehabilitation .text-anime-style-3 *,
.care-rehabilitation .section-title h1,
.care-rehabilitation .section-title h2,
.care-rehabilitation .section-title h3,
.care-rehabilitation .section-title p {
  color: #023047 !important;
}

/* How It Work */
.how-it-work .text-anime-style-1,
.how-it-work .text-anime-style-2,
.how-it-work .text-anime-style-3,
.how-it-work .text-anime-style-1 *,
.how-it-work .text-anime-style-2 *,
.how-it-work .text-anime-style-3 *,
.how-it-work .section-title h1,
.how-it-work .section-title h2,
.how-it-work .section-title h3,
.how-it-work .section-title p {
  color: #023047 !important;
}

/* Therapist Team */
.therapist-team .text-anime-style-1,
.therapist-team .text-anime-style-2,
.therapist-team .text-anime-style-3,
.therapist-team .text-anime-style-1 *,
.therapist-team .text-anime-style-2 *,
.therapist-team .text-anime-style-3 *,
.therapist-team .section-title h1,
.therapist-team .section-title h2,
.therapist-team .section-title h3,
.therapist-team .section-title p {
  color: #023047 !important;
}

/* Page About Us (about.php) */
.page-about-us .text-anime-style-1,
.page-about-us .text-anime-style-2,
.page-about-us .text-anime-style-3,
.page-about-us .text-anime-style-1 *,
.page-about-us .text-anime-style-2 *,
.page-about-us .text-anime-style-3 *,
.page-about-us .section-title h1,
.page-about-us .section-title h2,
.page-about-us .section-title h3,
.page-about-us .section-title p {
  color: #023047 !important;
}

/* Our Rehabilitation (about.php) */
.our-rehabilitation .text-anime-style-1,
.our-rehabilitation .text-anime-style-2,
.our-rehabilitation .text-anime-style-3,
.our-rehabilitation .text-anime-style-1 *,
.our-rehabilitation .text-anime-style-2 *,
.our-rehabilitation .text-anime-style-3 *,
.our-rehabilitation .section-title h1,
.our-rehabilitation .section-title h2,
.our-rehabilitation .section-title h3,
.our-rehabilitation .section-title p {
  color: #023047 !important;
}

/* Therapy Process (about.php) - DARK BACKGROUND */
.therapy-process .text-anime-style-1,
.therapy-process .text-anime-style-2,
.therapy-process .text-anime-style-3,
.therapy-process .text-anime-style-1 *,
.therapy-process .text-anime-style-2 *,
.therapy-process .text-anime-style-3 *,
.therapy-process .section-title h1,
.therapy-process .section-title h2,
.therapy-process .section-title h3,
.therapy-process .section-title p {
  color: #ffffff !important;
  /* WCAG: Pure white on dark background */
}

/* Our Video (about.php) - LIGHT BACKGROUND */
.our-video .text-anime-style-1,
.our-video .text-anime-style-2,
.our-video .text-anime-style-3,
.our-video .text-anime-style-1 *,
.our-video .text-anime-style-2 *,
.our-video .text-anime-style-3 *,
.our-video .section-title h1,
.our-video .section-title h2,
.our-video .section-title h3,
.our-video .section-title p {
  color: #023047 !important;
  /* WCAG: Dark Blue on White background */
}

/* Process Steps (about.php) */
.process-steps .text-anime-style-1,
.process-steps .text-anime-style-2,
.process-steps .text-anime-style-3,
.process-steps .text-anime-style-1 *,
.process-steps .text-anime-style-2 *,
.process-steps .text-anime-style-3 *,
.process-steps .section-title h1,
.process-steps .section-title h2,
.process-steps .section-title h3,
.process-steps .section-title p {
  color: #023047 !important;
}

/* â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•
   SPECIAL CASES - Card/Component Level Overrides
   â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â•â• */

/* Therapy Rehabilitation Cards (about.php) - WHITE TEXT on dark backgrounds */
.therapy-rehabilitation-item h3,
.therapy-rehabilitation-item p,
.therapy-rehabilitation-item li,
.therapy-rehabilitation-dec p,
.therapy-rehabilitation-title h3,
.therapy-rehabilitation-list ul li {
  color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Our Testimonial (about.php) - Light Section, Dark Cards */
.our-testimonial .section-title h2,
.our-testimonial .section-title p,
.our-testimonial .sub-title,
.our-testimonial .text-anime-style-3 * {
  color: #023047 !important;
  /* Dark section title */
}

/* Testimonial Cards - Dark Text on White Card */
.our-testimonial .testimonial-item p,
.our-testimonial .testimonial-item h3,
.our-testimonial .author-content p,
.our-testimonial .author-content h3 {
  color: #023047 !important;
  /* Dark text on white card */
}

/* About Icon Box List (about.php, team-single.php) - DARK BACKGROUND */
.about-icon-box-list .section-title h2,
.about-icon-box-list .section-title p,
.about-icon-box-list .sub-title,
.about-icon-box-list .text-anime-style-3 * {
  color: #ffffff !important;
  /* Fix contrast for all headers on dark bg */
}

.about-icon-box-list .about-icon-list-content h3 {
  color: #ffffff !important;
  /* Visible text on dark bg */
}

/* Sidebar CTA Box (service-single.php) - Dark Widget */
.sidebar-cta-box {
  background-color: #023047 !important;
}

.sidebar-cta-content h3,
.sidebar-cta-content p {
  color: #ffffff !important;
}

.sidebar-cta-item .icon-box img {
  filter: brightness(0) invert(1) !important;
  /* White Icon */
}

/* Buttons in Dark Sections (Therapy Process ONLY) */
.therapy-process .btn-default {
  background-color: #ffffff !important;
  /* White container creates the border & cap effect */
  border: none !important;
  /* Padding creates the spacing */
  box-shadow: none !important;
}

/* Inner Pill - Matches background to simulate transparency */
.therapy-process .btn-default span {
  background-color: #023047 !important;
  color: #ffffff !important;
}

/* Arrow Icon - Ensure it sits on white background */
.therapy-process .btn-default::before {
  z-index: 5;
  /* Ensure on top */
}

/* Hover State - Invert Colors */
.therapy-process .btn-default:hover {
  background-color: #023047 !important;
  /* Cap turns Dark Blue */
}

.therapy-process .btn-default:hover span {
  background-color: #ffffff !important;
  /* Body turns White */
  color: #023047 !important;
  /* Text turns Dark Blue */
}

/* Fix Hover Arrow Visibility (Invert to White) */
.therapy-process .btn-default:hover::before {
  filter: brightness(0) invert(1) !important;
  /* Arrow turns White on Dark Cap */
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   3. FALLBACK - Any section not explicitly defined above
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Default: Assume light background, use dark text */
section .text-anime-style-1,
section .text-anime-style-2,
section .text-anime-style-3 {
  color: #023047;
  /* Dark blue - safe on white/light backgrounds */
}

/* Override for any section with dark background class */
section[class*="dark"] .text-anime-style-1,
section[class*="dark"] .text-anime-style-2,
section[class*="dark"] .text-anime-style-3,
section[class*="dark"] .text-anime-style-1 *,
section[class*="dark"] .text-anime-style-2 *,
section[class*="dark"] .text-anime-style-3 * {
  color: #ffffff !important;
}

/************************************/
/*** 	   02. General css		  ***/
/************************************/

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--default-font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5em;
  color: var(--text-color);
  background-color: var(--white-color);
}

blockquote {
  margin: 1.5em 0;
  padding: 0.5em 1.5em;
  border-left: 5px solid var(--primary-color);
  font-style: italic;
  color: #4a5568;
}

p {
  line-height: 1.5em;
  margin-bottom: 1.6em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-family: var(--accent-font);
  font-weight: 400;
  line-height: 1.2em;
  color: var(--primary-color);
}

figure {
  margin: 0;
}

img {
  max-width: 100%;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

a:focus {
  text-decoration: none;
  outline: 2px solid var(--accent-color);
  outline-offset: 2px;
}

/* Accessibility Utilities */
.visually-hidden {
  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;
  /* WCAG Fix: Ensure hidden text passes contrast checks in automated tools */
  color: #000000 !important;
  background-color: #ffffff !important;
}

.visually-hidden-focusable:not(:focus):not(:focus-within) {
  /* WCAG Fix: Ensure hidden focusable elements pass contrast checks */
  color: #000000 !important;
  background-color: #ffffff !important;
}

html,
body {
  width: 100%;
  overflow-x: clip;
}

.container {
  max-width: 1300px;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl,
.container-xxl {
  padding-right: 15px;
  padding-left: 15px;
}

.image-anime {
  position: relative;
  overflow: hidden;
}

.image-anime:after {
  content: "";
  position: absolute;
  width: 200%;
  height: 0%;
  left: 50%;
  top: 50%;
  background-color: rgba(255, 255, 255, 0.3);
  transform: translate(-50%, -50%) rotate(-45deg);
  z-index: 1;
}

.image-anime:hover:after {
  height: 250%;
  transition: all 600ms linear;
  background-color: transparent;
}

.reveal {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  visibility: hidden;
  overflow: hidden;
}

.reveal img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transform-origin: left;
  transform-origin: left;
}

.row {
  margin-right: -15px;
  margin-left: -15px;
}

.row > * {
  padding-right: 15px;
  padding-left: 15px;
}

.row.no-gutters {
  margin-right: 0px;
  margin-left: 0px;
}

.row.no-gutters > * {
  padding-right: 0px;
  padding-left: 0px;
}

.btn-default {
  position: relative !important;
  display: inline-flex;
  line-height: 1.2em;
  background: var(--secondary-color);
  text-transform: capitalize;
  border-radius: 100px;
  padding: 2px 25px 2px 2px;
  border: none;
  overflow: hidden !important;
  isolation: isolate;
  transition: all 0.5s ease-in-out;
}

.btn-default:focus-visible,
.btn-default:focus,
body.user-is-tabbing .btn-default:focus {
  outline: 3px solid #ffcc00 !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 4px #000000 !important;
  border-radius: 100px !important;
  z-index: 10000 !important;
}

.btn-default:hover {
  background-color: transparent;
}

.btn-default::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  bottom: 0;
  width: 10px;
  height: 10px;
  background-image: url("../images/arrow-blue.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto;
  transform: translate(-10px, -50%);
  transition: all 0.4s ease-in-out;
  z-index: 1;
}

.btn-default:hover:before {
  filter: brightness(0) invert(1);
  transform: translate(-10px, -50%);
}

.btn-default::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  height: 100%;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: 100px;
  background: var(--primary-color);
  transition: all 0.4s ease-in-out;
  z-index: 0;
}

.btn-default:hover::after {
  width: 100%;
}

.btn-default span {
  position: relative !important;
  display: inline-block;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.2em;
  background-color: var(--primary-color);
  color: var(--secondary-color);
  border-radius: 100px;
  padding: 15px 20px;
  overflow: hidden !important;
  clip-path: inset(0 round 100px) !important;
  z-index: 1;
  transition: all 0.5s ease-in-out;
  z-index: 1;
}

.btn-default:hover span {
  background-color: transparent;
  color: var(--primary-color);
}

.btn-default span::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
  height: 100%;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: 100px;
  background: var(--secondary-color);
  transition: all 0.4s ease-in-out;
  z-index: -1;
}

.btn-default:hover span::after {
  width: 100%;
}

.btn-default.btn-highlighted {
  background-color: var(--primary-color);
}

.btn-default.btn-highlighted:hover:after {
  background-color: var(--secondary-color);
}

.btn-default.btn-highlighted::before {
  background-image: url("../images/arrow-white.svg");
}

.btn-default.btn-highlighted:hover:before {
  filter: brightness(0.1) invert(0);
}

.btn-default.btn-highlighted span {
  background-color: var(--secondary-color);
  color: var(--primary-color);
}

.btn-default.btn-highlighted:hover span {
  background-color: transparent;
  color: var(--secondary-color);
}

.btn-default.btn-highlighted span::after {
  background-color: var(--primary-color);
}

#magic-cursor {
  position: absolute;
  width: 10px !important;
  height: 10px !important;
  pointer-events: none;
  z-index: 1000000;
}

#ball {
  position: fixed;
  display: block;
  left: 0;
  top: 0;
  transform: translate(-50%, -50%);
  width: 8px !important;
  height: 8px !important;
  background: var(--accent-color);
  margin: 0;
  border-radius: 50%;
  pointer-events: none;
  opacity: 1 !important;
}

.preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 999999 !important;
  background-color: var(--primary-color, #023047);
  display: flex;
  align-items: center;
  justify-content: center;
}

.loading-container,
.loading {
  height: 100px;
  position: relative;
  width: 100px;
  border-radius: 100%;
}

.loading-container {
  margin: 40px auto;
}

.loading {
  border: 1px solid transparent;
  border-color: transparent var(--white-color) transparent var(--white-color);
  animation: rotate-loading 1.5s linear 0s infinite normal;
  transform-origin: 50% 50%;
}

.loading-container:hover .loading,
.loading-container .loading {
  transition: all 0.5s ease-in-out;
}

#loading-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 66px;
  transform: translate(-50%, -50%);
}

@keyframes rotate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.bg-radius-section {
  position: relative;
  z-index: 2;
  /* Force sections to sit cleanly on top of each other */
  border-radius: 50px 50px 0 0;
  margin-top: -50px;
}

.section-row {
  margin-bottom: 60px;
}

.section-row .section-title {
  margin-bottom: 0;
}

.section-btn {
  text-align: end;
}

.section-title {
  margin-bottom: 40px;
}

.section-title h3,
.section-title .sub-title {
  display: inline-block;
  position: relative;
  font-family: var(--default-font);
  font-size: 14px;
  font-weight: 400;
  text-transform: capitalize;
  color: var(--primary-color);
  padding-left: 10px;
  margin-bottom: 10px;
}

.section-title h3::before,
.section-title .sub-title::before {
  content: "/";
  position: absolute;
  top: 0;
  left: 0;
  color: var(--primary-color);
  width: 6px;
  height: 15px;
}

.section-title h1 {
  font-size: 66px;
  margin-bottom: 0;
}

.section-title h2 {
  font-size: 54px;
  margin-bottom: 0;
}

.section-title p {
  margin-top: 20px;
  margin-bottom: 0;
}

.help-block.with-errors ul {
  margin: 0;
  text-align: left;
}

.help-block.with-errors ul li {
  color: var(--error-color);
  font-weight: 500;
  font-size: 14px;
}

/************************************/
/**** 	   03. Header css		 ****/
/************************************/

/* Topbar CSS consolidated to topbar-extracted.css */

header.main-header {
  background-color: var(--primary-color);
  border: none;
  position: relative;
  z-index: 100;
  margin-top: 0;
  /* Fixed: Moved negative margin to sticky container */
}

header.main-header .header-sticky {
  position: relative;
  top: 0;
  z-index: 100;
  margin-top: -50px;
  /* Restored overlap effect here */
}

header.main-header .header-sticky.hide {
  transform: translateY(-100%);
  transition: transform 0.3s ease-in-out;
  border-radius: 0;
}

header.main-header .header-sticky.active {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  border-radius: 0;
  transform: translateY(0);
  background: var(--primary-color);
  border: none;
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
}

/* WCAG 2.5.8 Target Size: .header-sticky overlaps topbar by 50px,
   intercepting clicks. Allow events to pass through the wrapper;
   interactive children retain pointer-event capability. */
header.main-header .header-sticky {
  pointer-events: none;
}
header.main-header .header-sticky a,
header.main-header .header-sticky button,
header.main-header .header-sticky .slicknav_btn,
header.main-header .header-sticky input,
header.main-header .header-sticky select,
header.main-header .header-sticky textarea,
header.main-header .header-sticky [tabindex]:not([tabindex="-1"]) {
  pointer-events: auto;
}
header.main-header .header-sticky.active {
  pointer-events: auto;
}

.navbar {
  padding: 20px 0;
  align-items: center;
}

.navbar-brand {
  padding: 0;
  margin: 0;
}

.main-menu .nav-menu-wrapper {
  flex: 1;
  text-align: center;
}

.main-menu .nav-menu-wrapper > ul {
  align-items: center;
  display: inline-flex;
}

.main-menu ul li {
  margin: 0 9px;
  position: relative;
}

.main-menu ul li.submenu::after {
  content: '';
  position: absolute;
  bottom: -20px;
  left: 0;
  width: 100%;
  height: 20px;
  z-index: 2000;
  pointer-events: auto;
}

.main-menu ul li a {
  font-size: 16px;
  font-weight: 500;
  padding: 14px 15px !important;
  color: var(--white-color);
  text-transform: capitalize;
  transition: all 0.3s ease-in-out;
}

.main-menu ul li.submenu > a:after {
  content: "\f107";
  font-family: "FontAwesome";
  font-weight: 900;
  font-size: 14px;
  margin-left: 8px;
}

.main-menu ul li a:hover,
.main-menu ul li a:focus {
  color: var(--text-color);
}

.main-menu ul ul {
  visibility: hidden;
  opacity: 0;
  transform: scaleY(0.8);
  transform-origin: top;
  padding: 0;
  margin: 0;
  list-style: none;
  width: 220px;
  border-radius: 20px;
  position: absolute;
  left: 0;
  top: 100%;
  overflow: hidden;
  background-color: var(--primary-color);
  transition: all 0.3s ease-in-out;
  text-align: left;
}

.main-menu ul li.submenu:first-child ul {
  width: 220px;
}

.main-menu ul ul ul {
  left: 100%;
  top: 0;
  text-align: left;
}

.main-menu ul ul li {
  margin: 0;
  padding: 0;
}

.main-menu ul ul li a {
  color: var(--white-color);
  padding: 8px 20px !important;
  transition: all 0.3s ease-in-out;
}

/* DISABLED FOR WCAG SC 1.4.13 ACCESSIBILITY (DISMISSIBLE ON ESCAPE)
.main-menu ul li:hover > ul,
.main-menu ul li:focus-within > ul {
  visibility: visible;
  opacity: 1;
  transform: scaleY(1);
  padding: 5px 0;
}
*/

.main-menu ul ul li a:hover,
.main-menu ul ul li a:focus {
  color: var(--text-color);
  background-color: transparent;
  padding: 8px 20px 8px 23px !important;
}

.header-btn .btn-default {
  padding: 2px 30px 2px 2px;
}

.header-btn .btn-default::before {
  background-image: url("../images/-icon-phone-header-btn.svg");
  width: 15px;
  height: 15px;
}

.responsive-menu,
.navbar-toggle {
  display: none;
}

.responsive-menu {
  top: 0;
  position: relative;
}

.slicknav_btn {
  background: var(--primary-color);
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  margin: 0;
  border-radius: 8px;
}

.slicknav_icon .slicknav_icon-bar {
  display: block;
  width: 100%;
  height: 3px;
  width: 22px;
  background-color: var(--white-color);
  border-radius: 6px;
  margin: 4px auto !important;
  transition: all 0.1s ease-in-out;
}

.slicknav_icon .slicknav_icon-bar:first-child {
  margin-top: 0 !important;
}

.slicknav_icon .slicknav_icon-bar:last-child {
  margin-bottom: 0 !important;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(1) {
  transform: rotate(-45deg) translate(-5px, 5px);
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(2) {
  opacity: 0;
}

.navbar-toggle a.slicknav_btn.slicknav_open .slicknav_icon span.slicknav_icon-bar:nth-child(3) {
  transform: rotate(45deg) translate(-5px, -5px);
}

.slicknav_menu {
  position: absolute;
  width: 100%;
  padding: 0;
  background: var(--primary-color);
}

.slicknav_menu ul {
  margin: 5px 0;
}

.slicknav_menu ul ul {
  margin: 0;
}

.slicknav_nav .slicknav_row,
.slicknav_nav li a {
  position: relative;
  font-size: 16px;
  font-weight: 500;
  text-transform: capitalize;
  padding: 10px 20px;
  color: var(--white-color);
  line-height: normal;
  margin: 0;
  border-radius: 0 !important;
  transition: all 0.3s ease-in-out;
}

.slicknav_nav a:hover,
.slicknav_nav a:focus,
.slicknav_nav .slicknav_row:hover {
  background-color: transparent;
  color: var(--text-color);
}

.slicknav_menu ul ul li a {
  padding: 10px 20px 10px 30px;
}

.slicknav_arrow {
  font-size: 0 !important;
}

.slicknav_arrow:after {
  content: "\f107";
  font-family: "FontAwesome";
  font-weight: 900;
  font-size: 12px;
  margin-left: 8px;
  color: var(--white-color);
  position: absolute;
  right: 15px;
  top: 15px;
  transition: all 0.3s ease-out;
}

.slicknav_open > a .slicknav_arrow:after {
  transform: rotate(-180deg);
  color: var(--text-color);
}

/************************************/
/***        04. Hero css	      ***/
/************************************/

.hero::before {
  display: none;
}

.hero.hero-video {
  overflow: hidden;
}

.hero.hero-video .hero-bg-video {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.hero.hero-video .hero-bg-video::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--black-color);
  opacity: 50%;
  width: 100%;
  height: 100%;
}

.hero.hero-video .hero-bg-video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero.hero-slider-layout {
  padding: 0;
  z-index: 0;
}

.hero.hero-slider-layout .hero-slide {
  position: relative;
  padding: 240px 0 210px;
}

.hero.hero-slider-layout .hero-slide::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--black-color);
  opacity: 50%;
  width: 100%;
  height: 100%;
  z-index: 1;
}

.hero.hero-slider-layout .hero-slide .hero-slider-image {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.hero.hero-slider-layout .hero-slide .hero-slider-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero.hero-slider-layout .hero-pagination {
  position: absolute;
  bottom: 120px;
  text-align: center;
  z-index: 1;
}

.hero.hero-slider-layout .hero-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background: var(--white-color);
  opacity: 1;
  transition: all 0.3s ease-in-out;
  margin: 0 5px;
  box-sizing: content-box;
  border: 16px solid transparent;
  /* Increase hit area to 44x44px */
  background-clip: padding-box;
}

.hero.hero-slider-layout .hero-pagination .swiper-pagination-bullet-active {
  background-color: var(--accent-color);
}

.hero-content {
  position: relative;
  width: 100%;
  max-width: 610px;
  z-index: 1;
}

.hero-content .section-title h1 {
  color: var(--white-color);
  font-size: 56px;
  line-height: 1.1em;
}

.hero-content .section-title p {
  font-size: 18px;
  color: var(--white-color);
}

.hero-content-body .btn-default.btn-highlighted {
  margin-left: 30px;
}

/************************************/
/***      05. Our Benefits css	  ***/
/************************************/

.our-benefits {
  background-color: var(--primary-color);
  padding: 50px 0 100px;
  position: relative;
  z-index: 2;
}

.our-benefits h2 {
  color: var(--white-color);
  background-color: var(--primary-color);
  /* Explicitly define bg for contrast logic */
}

.benefits-item {
  display: flex;
  align-items: start;
  border-right: 1px solid var(--divider-color);
  padding-right: 15px;
}

.our-benefits .col-lg-4:last-child .benefits-item {
  border: none;
  padding-right: 0;
}

.benefits-item .icon-box {
  position: relative;
  margin-right: 20px;
}

.benefits-item .icon-box::before {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -10px;
  background-color: var(--accent-color);
  border-radius: 50%;
  width: 30px;
  height: 30px;
}

.benefits-item .icon-box img {
  position: relative;
  width: 35px;
  z-index: 1;
}

.benefits-content {
  width: calc(100% - 55px);
}

.benefits-content h3 {
  font-size: 22px;
  text-transform: capitalize;
  color: var(--secondary-color);
  margin-bottom: 5px;
}

.benefits-content p {
  color: var(--white-color);
  margin: 0;
}

/************************************/
/***       06. About Us css 	  ***/
/************************************/

.about-us {
  background-color: var(--white-color);
  padding: 100px 0;
  position: relative;
  z-index: 2;
  overflow: visible !important;
  /* Ensure focus rings and wave are visible */
}

/* Recommended Mandatory Structure Fixes */
.about-section {
  position: relative;
  overflow: visible;
}

.background-wave {
  /* Disabled - was causing dark artifacts */
  display: none;
}

.image-collage-wrapper {
  position: relative;
  z-index: 2;
  overflow: visible;
  /* Changed to visible to allow focus rings of inner elements if any, but collage itself is decorative */
  display: flex;
  justify-content: center;
  align-items: center;
}

.content-area {
  position: relative;
  z-index: 3;
}

/* Stable Focus for buttons */
.about-content .btn-default:focus-visible {
  outline: 3px solid var(--primary-color) !important;
  outline-offset: 4px;
  box-shadow: none !important;
  transform: none !important;
  /* Prevent any movement on focus */
}

/* Fix for WAVE 1:1 Contrast - Explicitly define background for text to resolve overlap ambiguity */
.about-us .section-title h2,
.about-us .section-title p {
  background-color: var(--white-color);
}

.about-content {
  position: relative;
  z-index: 1;
}

.about-content-body {
  margin-bottom: 40px;
}

.about-list-item {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

.about-list-item:last-child {
  margin-bottom: 0;
}

.about-list-item .icon-box {
  position: relative;
  margin-right: 20px;
}

.about-list-item .icon-box::before {
  content: "";
  position: absolute;
  bottom: -5px;
  right: -5px;
  background-color: var(--secondary-color);
  border-radius: 50%;
  width: 30px;
  height: 30px;
}

.about-list-item .icon-box img {
  position: relative;
  max-width: 40px;
  z-index: 1;
}

.about-list-content {
  width: calc(100% - 60px);
}

.about-list-content p {
  font-weight: 600;
  color: var(--primary-color);
  text-transform: capitalize;
  margin: 0;
}

.about-trusted-customer {
  background-color: var(--white-color);
  box-shadow: 0px 0px 30px 0px #0000001a;
  border-radius: 10px;
  padding: 25px;
}

.trusted-customer-image {
  margin-bottom: 15px;
}

.trusted-customer-image img {
  max-width: 160px;
}

.trusted-customer-rating {
  margin-bottom: 5px;
}

.trusted-customer-rating ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.trusted-customer-rating ul li i {
  font-size: 14px;
  color: #ff7d05;
}

.trusted-customer-content p {
  text-transform: capitalize;
  margin: 0;
}

/* Circular Image Collage - Stable Absolute Positioning */
.about-us-images {
  position: relative;
  width: 100%;
  max-width: 540px;
  aspect-ratio: 1 / 1;
  margin: 0 auto;
  z-index: 10;
  /* High z-index to appear above Services ::before background */
}

.image-circle {
  aspect-ratio: 1 / 1;
  max-width: 540px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  overflow: visible;
}

.about-image {
  position: absolute;
  width: calc(50% - 5px);
  height: calc(50% - 5px);
}

/* Precise quadrant positioning - no flex, no shifts */
.about-image.img-box-1 {
  top: 0;
  left: 0;
}

.about-image.img-box-2 {
  top: 0;
  right: 0;
}

.about-image.img-box-3 {
  bottom: 0;
  left: 0;
}

.about-image.img-box-4 {
  bottom: 0;
  right: 0;
}

.about-image figure {
  box-shadow: 0px 0px 30px 0px #00000033;
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.about-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.about-image.img-box-1 figure,
.about-image.img-box-1 img {
  border-radius: 500px 0 0 0;
}

.about-image.img-box-2 figure,
.about-image.img-box-2 img {
  border-radius: 0 500px 0 0;
}

.about-image.img-box-3 figure,
.about-image.img-box-3 img {
  border-radius: 0 0 0 500px;
}

.about-image.img-box-4 figure,
.about-image.img-box-4 img {
  border-radius: 0 0 500px 0;
}

.about-circle-motionis {
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -105px;
  /* Half of height 210px */
  margin-left: -105px;
  /* Half of width 210px */
  /* transform: translate(-50%, -50%); removed to prevent parent transform issues */
  background-color: var(--white-color);
  box-shadow: 0px 0px 30px 0px #0000004d;
  border-radius: 50%;
  width: 210px;
  height: 210px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: all 0.6s ease-in-out;
  z-index: 5;
  /* Ensure it stays on top of images */
  pointer-events: none;
  /* Decorative */
}

.about-us-images:hover .about-circle-motionis {
  /* Keep white background - no transparency to avoid artifacts */
  background-color: var(--white-color);
}

.about-circle-motionis::before {
  /* Disabled - was causing dark semi-circle artifact */
  display: none;
}

.about-us-images:hover .about-circle-motionis::before {
  /* Disabled */
  display: none;
}

.about-us-images .about-circle-motionis img {
  max-width: 85px;
  transition: none;
  /* Disabled to prevent layout shifts */
}

.about-us-images:hover .about-circle-motionis img {
  /* Keep original appearance - no filter changes */
  filter: none;
}

/************************************/
/***     07. Our Services css 	  ***/
/************************************/

.our-services {
  position: relative;
  background: var(--secondary-color);
  padding: 100px 0;
}

/* Fix for WAVE 1:1 Contrast Error: Explicitly define background for text to resolve overlap ambiguity */
.our-services .section-title h2,
.our-services .section-title p {
  background-color: var(--secondary-color);
  color: var(--primary-color);
  /* Strong contrast for Heading */
}

.our-services .section-title p {
  color: var(--text-color);
  /* Restore body text color for paragraph, ensuring contrast */
}

.our-services::before {
  /* COMPLETELY DISABLED - was causing dark semi-circle over About Us images */
  display: none !important;
}

.our-services::after {
  content: "";
  position: absolute;
  top: 40px;
  right: 0;
  background: url("../images/service-bg-cricle.svg") no-repeat;
  background-position: top right;
  background-size: auto;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.our-services .section-row {
  position: relative;
  z-index: 1;
}

.service-item {
  position: relative;
  height: calc(100% - 30px);
  margin-bottom: 30px;
  z-index: 1;
}

.service-item-image {
  position: relative;
  box-shadow: 0px 0px 30px 0px #00000026;
  border-radius: 10px;
  overflow: hidden;
  background-color: var(--primary-color);
  aspect-ratio: 1 / 0.98;
  width: 100%;
}

.service-item-image::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--black-color);
  opacity: 50%;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: none;
  /* Hide overlay as we are removing the image */
}

.service-item-image img {
  aspect-ratio: 1 / 0.98;
  object-fit: cover;
  border-radius: 10px;
  transition: all 0.4s ease-in-out;
  display: none;
  /* Hide image as requested */
}

.service-item:hover .service-item-image img {
  transform: scale(1.1);
}

.service-item .icon-box {
  position: absolute;
  top: 0;
  left: 30px;
  border-radius: 0 0 10px 10px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  transition: all 0.5s ease-in-out;
  z-index: 2;
}

.service-item .icon-box::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--white-color);
  opacity: 20%;
  width: 100%;
  height: 100%;
}

.service-item .icon-box::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: var(--primary-color);
  top: 0;
  left: 0;
  transform: scale(0);
  transition: all 0.4s ease-in-out;
  border-radius: 0 0 10px 10px;
}

.service-item:hover .icon-box::after {
  transform: scale(1.1);
}

.service-item .icon-box img {
  position: relative;
  max-width: 56px;
  transition: all 0.4s ease-in-out;
  z-index: 1;
}

.service-item:hover .icon-box img {
  filter: brightness(0) invert(1);
}

.service-body {
  position: absolute;
  bottom: 30px;
  left: 30px;
  right: 10px;
  z-index: 2;
}

.service-content {
  margin-bottom: 20px;
  background-color: var(--primary-color);
  /* Explicit dark background */
  padding: 20px 15px 25px 15px;
  /* Increased internal spacing: +5px top, +10px bottom for balance */
  border-radius: 8px;
  /* Rounded corners */
}

.service-content h3 {
  font-size: 1.375em;
  /* 22px */
  font-weight: 600;
  /* Strengthen visual hierarchy */
  letter-spacing: 0.2px;
  /* Subtle spacing */
  text-transform: capitalize;
  color: #ffffff;
  /* Pure white */
  margin-bottom: 8px;
}

.service-content p {
  color: rgba(255, 255, 255, 0.9);
  /* Very slightly off-white for depth */
  font-weight: 400;
  /* Lighter weight for readability */
  line-height: 1.6;
  /* Increased line height for breathing room */
  margin: 0;
}

.dot-separator {
  color: #ffffff;
  opacity: 0.65;
  /* Reduced opacity for scanning */
  margin: 0 5px;
  /* Increased horizontal spacing */
  position: relative;
  top: -1px;
  /* Optical adjustment */
}

.service-btn a {
  position: relative;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  padding: 0;
  margin: 0;
  border: 0;
  box-sizing: border-box;
  text-decoration: none;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
  transform: translateZ(0);
  /* Hardware acceleration to prevent paint shifting */
  vertical-align: middle;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.15);
  /* Subtle inner highlight */
}

.service-btn a:focus-visible {
  outline: 2px solid #0d6efd !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 2px #ffffff !important;
  background-color: transparent !important;
  z-index: 10;
  /* Ensure focus ring is visible */
}

.service-btn a::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--secondary-color);
  opacity: 0.45;
  /* Increased visibility */
  width: 100%;
  height: 100%;
  transition: all 0.3s ease-in-out;
  z-index: 0;
}

.service-btn a:hover:after {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--primary-color);
  width: 100%;
  height: 100%;
  z-index: 0;
}

.service-btn a img {
  position: relative;
  max-width: 16px;
  display: block;
  pointer-events: none;
  z-index: 1;
}

.more-service-btn {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 20px;
  z-index: 1;
}

.more-service-btn a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
  gap: 0.5rem;
  padding: 10px 20px;
  border-radius: 8px;
  font-family: var(--accent-font);
  font-size: 24px;
  background-color: var(--primary-color);
  color: var(--white-color) !important;
}

.more-service-btn a:hover {
  background-color: var(--accent-color);
  /* Visual feedback */
  color: var(--white-color) !important;
}

.more-service-btn a:focus-visible {
  outline: 3px solid #ffffff;
  outline-offset: 3px;
}

.more-service-btn a img {
  max-width: 24px;
  margin-left: 0;
}

.bg-section {
  position: relative;
  background-color: var(--primary-color);
  padding: 150px 0;
  border-radius: 50px 50px 0 0;
  margin-top: -300px;
}

/*************************************/
/***  08. Targeted Treatments css  ***/
/*************************************/

.targeted-treatments {
  background-color: var(--white-color);
  padding: 100px 0 120px;
  position: relative;
  z-index: 2;
}

/* WCAG Contrast Fix - Explicitly define background for text */
.targeted-treatments .section-title h2,
.targeted-treatments .section-title p {
  background-color: var(--white-color);
  color: var(--primary-color);
}

.targeted-treatments .section-title p {
  color: var(--text-color);
}

/* Treatment Areas Card */
.treatment-areas-card {
  background-color: var(--primary-color);
  border-radius: 10px;
  padding: 45px 40px;
  margin-bottom: 30px;
  box-shadow: 0px 4px 20px rgba(0, 0, 0, 0.1);
  position: relative;
}

.treatment-areas-title {
  font-family: var(--accent-font);
  font-size: 1.75em;
  /* 28px */
  font-weight: 600;
  color: #ffffff;
  margin-bottom: 12px;
  text-transform: capitalize;
  letter-spacing: 0.3px;
}

.treatment-areas-intro {
  font-size: 1em;
  /* 16px */
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 30px;
  line-height: 1.6;
  font-weight: 400;
}

.treatment-areas-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

/* ── All list items: grid layout only ── */
.treatment-areas-list li {
  position: relative;
}

/* ── Shared base card surface (multi-link <li> + single-link <a>) ── */
.treatment-areas-list li.multi-link-item,
.treatment-areas-list li.single-link-item a.treatment-area-link {
  padding: 18px 22px;
  background: rgba(255, 255, 255, 0.04);
  border-radius: 6px;
  border-left: 3px solid rgba(255, 255, 255, 0.2);
  transition: background 0.3s ease-in-out, border-left-color 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  color: #ffffff;
  font-size: 0.9375em;
  line-height: 1.7;
}

/* ── Shared card hover ── */
.treatment-areas-list li.multi-link-item:hover,
.treatment-areas-list li.single-link-item a.treatment-area-link:hover {
  background: rgba(255, 255, 255, 0.08);
  border-left-color: #ffffff;
  box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.15);
}

/* ── Single-link: li is structural only, a fills grid cell ── */
.treatment-areas-list li.single-link-item {
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
}
.treatment-areas-list li.single-link-item a.treatment-area-link {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  margin: 0;
}

/* Responsive Design */
@media (max-width: 991px) {
  .treatment-areas-list {
    grid-template-columns: 1fr;
  }
  .treatment-areas-list li.multi-link-item,
  .treatment-areas-list li.single-link-item a.treatment-area-link {
    font-size: 0.95rem;
    line-height: 1.5;
  }
}

@media (max-width: 767px) {
  .treatment-areas-card {
    padding: 35px 25px;
  }

  .treatment-areas-title {
    font-size: 1.5em;
    /* 24px */
  }

  .treatment-areas-intro {
    font-size: 0.9375em;
    /* 15px */
    margin-bottom: 25px;
  }

  .treatment-areas-list {
    gap: 12px;
  }

  .treatment-areas-list li.multi-link-item,
  .treatment-areas-list li.single-link-item a.treatment-area-link {
    font-size: 0.875em;
    /* 14px */
    padding: 16px 20px;
  }
}

/* Treatment CTA Cards */
.treatment-cta-wrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.treatment-cta-card {
  display: flex;
  align-items: center;
  gap: 20px;
  background-color: var(--secondary-color);
  border-radius: 10px;
  padding: 25px 20px;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
  border: 2px solid transparent;
  position: relative;
}

.treatment-cta-card:hover {
  background-color: var(--primary-color);
  border-color: var(--accent-color);
  transform: translateY(-3px);
  box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.15);
}

.treatment-cta-card:focus-visible {
  outline: 3px solid var(--primary-color);
  outline-offset: 3px;
  border-color: var(--accent-color);
}

.treatment-cta-icon {
  flex-shrink: 0;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--primary-color);
  border-radius: 8px;
  transition: all 0.3s ease-in-out;
}

.treatment-cta-card:hover .treatment-cta-icon {
  background-color: var(--accent-color);
  transform: scale(1.1);
}

.treatment-cta-icon svg {
  color: #ffffff;
  transition: all 0.3s ease-in-out;
}

.treatment-cta-content {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.treatment-cta-content h3,
.treatment-cta-content h4 {
  font-family: var(--accent-font);
  font-size: 1.125em;
  font-weight: 600;
  color: var(--primary-color);
  margin: 0;
  text-transform: capitalize;
  line-height: 1.3;
  transition: color 0.3s ease-in-out;
}

.treatment-cta-card:hover .treatment-cta-content h3,
.treatment-cta-card:hover .treatment-cta-content h4 {
  color: #ffffff;
}

.treatment-cta-card:hover .treatment-cta-icon svg,
.treatment-cta-card:hover .treatment-cta-icon svg * {
  fill: #ffffff;
  stroke: #ffffff;
}

.treatment-cta-arrow::after {
  content: "→";
}

.treatment-cta-arrow {
  font-size: 1.5em;
  color: var(--accent-color);
  font-weight: bold;
  transition: all 0.3s ease-in-out;
  flex-shrink: 0;
}

.treatment-cta-card:hover .treatment-cta-arrow {
  color: #ffffff;
  transform: translateX(5px);
}

/* Responsive Design */
@media (max-width: 991px) {
  .treatment-areas-card {
    margin-bottom: 30px;
  }

  .treatment-cta-wrapper {
    margin-bottom: 30px;
  }
}

@media (max-width: 767px) {
  .treatment-areas-list {
    gap: 14px;
  }

  .treatment-areas-list li.multi-link-item {
    font-size: 0.9375em;
    /* 15px */
  }

  .treatment-cta-card {
    padding: 20px 15px;
  }

  .treatment-cta-icon {
    width: 45px;
    height: 45px;
  }

  .treatment-cta-content h3,
  .treatment-cta-content h4 {
    font-size: 1em;
  }
}

/************************************/
/***   09. Quality Treatment css  ***/
/************************************/

.our-quality {
  background-color: var(--secondary-color);
}

.quality-treatment {
  background:
    linear-gradient(90deg, var(--secondary-color) 50%, transparent 50%),
    url(../images/quality-treatment-img.jpg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: auto;
  padding: 100px 0 150px;
  overflow: hidden;
}

.quality-treatment::before {
  content: "";
  position: absolute;
  bottom: 50px;
  right: 0;
  background: url("../images/quality-treatment-img-shape.svg") no-repeat;
  background-position: bottom right;
  background-size: auto;
  width: 100%;
  height: 100%;
}

.quality-treatment::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 50%;
  transform: translateX(99%);
  background: var(--secondary-color);
  border-radius: 0 0 200px 0;
  width: 200px;
  height: 100%;
}

.quality-treatment-content {
  position: relative;
  width: 100%;
  max-width: 600px;
  z-index: 2;
  /* Increased Z-Index to strictly float above all background layers */
  background-color: var(--secondary-color);
  /* Explicit background to resolve WAVE 1:1 overlap error */
  padding: 20px;
  /* Spacing for the background */
  border-radius: 10px;
}

.quality-treatment-body {
  margin-bottom: 40px;
}

.quality-treatment-body ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.quality-treatment-body ul li {
  position: relative;
  color: var(--primary-color);
  text-transform: capitalize;
  padding-left: 30px;
  margin-bottom: 15px;
}

.quality-treatment-body ul li:last-child {
  margin-bottom: 0;
}

.quality-treatment-body ul li:before {
  content: "\f058";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  font-size: 18px;
  color: var(--primary-color);
  display: inline-block;
  line-height: normal;
  position: absolute;
  top: 2px;
  left: 0;
}

.quality-treatment-footer .btn-default {
  background-color: var(--white-color);
}

.quality-treatment-footer .btn-default span::after {
  background-color: var(--white-color);
}

/* Physician-Led Care Section Enhancements */
.physician-care-content {
  max-width: 700px;
}

.physician-credentials-card {
  background: rgba(255, 255, 255, 0.95);
  border-radius: 12px;
  padding: 40px 45px;
  margin: 35px 0;
  box-shadow: 0 4px 20px rgba(2, 48, 71, 0.12);
}

.physician-credentials-card .credentials-title {
  font-family: var(--accent-font);
  font-size: 1.375em;
  font-weight: 600;
  color: var(--primary-color);
  margin-bottom: 30px;
  text-transform: none;
  letter-spacing: 0.3px;
}

.physician-credentials-card .credentials-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.physician-credentials-card .credentials-list li {
  position: relative;
  color: var(--primary-color);
  font-size: 1.0625em;
  line-height: 1.7;
  padding-left: 24px;
  font-weight: 400;
  letter-spacing: 0.2px;
  transition: all 0.2s ease-in-out;
}

.physician-credentials-card .credentials-list li::before {
  content: "";
  position: absolute;
  top: 8px;
  left: 0;
  width: 4px;
  height: calc(100% - 16px);
  background: var(--primary-color);
  border-radius: 2px;
  opacity: 0.4;
  transition: all 0.2s ease-in-out;
}

.physician-credentials-card .credentials-list li:hover::before {
  opacity: 1;
  width: 5px;
}

.care-continuity-statement {
  background: rgba(2, 48, 71, 0.12);
  border-radius: 8px;
  padding: 25px 30px;
  margin: 25px 0 35px;
}

.care-continuity-statement p {
  color: var(--primary-color);
  font-size: 1em;
  line-height: 1.7;
  margin: 0;
  font-weight: 500;
  letter-spacing: 0.2px;
}

/* Responsive adjustments */
@media (max-width: 767px) {
  .physician-credentials-card {
    padding: 32px 25px;
    margin: 30px 0;
  }

  .physician-credentials-card .credentials-title {
    font-size: 1.25em;
    margin-bottom: 26px;
  }

  .physician-credentials-card .credentials-list {
    gap: 18px;
  }

  .physician-credentials-card .credentials-list li {
    font-size: 1em;
    padding-left: 20px;
  }

  .physician-credentials-card .credentials-list li::before {
    width: 3px;
  }

  .care-continuity-statement {
    padding: 20px 22px;
  }

  .care-continuity-statement p {
    font-size: 0.9375em;
  }
}

/************************************/
/***      10. How It Work css     ***/
/************************************/

.how-it-work {
  background: var(--white-color) url("../images/how-work-bg.svg") no-repeat;
  background-position: left top;
  background-size: auto;
  padding: 100px 0 150px;
  position: relative;
  z-index: 2;
}

/* Fix for WAVE 1:1 Contrast - Explicitly define background for text */
.how-it-work .section-title h2,
.how-it-work .section-title p {
  background-color: var(--white-color);
  color: var(--primary-color);
}

.how-work-images {
  background: url("../images/how-work-image-bg-shape.svg") no-repeat;
  background-position: right -30px bottom;
  background-size: auto;
  padding: 0 40px 40px 0;
}

.how-work-image-box-1 {
  border-radius: 10px 0 0 10px;
  overflow: hidden;
}

.how-work-image-box-2 {
  border-radius: 0 10px 10px 0;
  overflow: hidden;
}

.how-work-img-4,
.how-work-img-3,
.how-work-img-2,
.how-work-img-1 {
  width: 100%;
}

.how-work-img-4 figure,
.how-work-img-3 figure,
.how-work-img-2 figure,
.how-work-img-1 figure {
  display: block;
}

.how-work-img-4 img,
.how-work-img-3 img,
.how-work-img-2 img,
.how-work-img-1 img {
  width: 100%;
  object-fit: cover;
}

.how-work-img-1 img {
  aspect-ratio: 1 / 1.1;
}

.how-work-img-2 img {
  aspect-ratio: 1 / 1.12;
}

.how-work-img-3 img {
  aspect-ratio: 1 / 2.28;
}

.how-work-img-4 img {
  aspect-ratio: 1 / 0.57;
}

.how-work-accordion .accordion-item {
  margin-bottom: 25px;
  border-radius: 10px;
  overflow: visible;
  /* changed from hidden to visible for focus ring */
}

.how-work-accordion .accordion-item:last-child {
  margin-bottom: 0;
}

.how-work-accordion .accordion-header {
  position: relative;
}

.how-work-accordion .accordion-item .icon-box {
  position: absolute;
  left: 30px;
  top: 50%;
  transform: translateY(-50%);
  background-color: var(--secondary-color);
  border-radius: 50%;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20;
  /* Increased to stay above focused button */
  pointer-events: none;
  /* Allow clicks to pass through to the button */
}

/* WCAG Fix: Ensure icon remains visible and on top during keyboard navigation */
.how-work-accordion .accordion-item:focus-within .icon-box {
  z-index: 30;
  opacity: 1;
  visibility: visible;
}

.how-work-accordion .accordion-item .accordion-header .icon-box img {
  max-width: 36px;
}

.how-work-accordion .accordion-header .accordion-button {
  position: relative;
  font-family: var(--accent-font);
  font-size: 22px;
  line-height: 1.2em;
  background-color: transparent;
  color: var(--primary-color);
  padding: 20px 30px 20px 110px;
  /* Increased padding to enclose 60px icon */
  transition: all 0.3s ease-in-out;
  z-index: 0;
  border-radius: 10px;
  /* Added for shape retention with overflow:visible */
}

/* Explicit Focus Styles */
.how-work-accordion .accordion-header .accordion-button:focus-visible {
  outline: 3px solid var(--primary-color);
  outline-offset: 2px;
  z-index: 10;
  border-radius: 10px;
}

.how-work-accordion .accordion-button:not(.collapsed) {
  padding: 30px 30px 30px 110px;
  background-color: var(--primary-color);
  color: var(--white-color);
  border-radius: 10px 10px 0 0;
  /* Flat bottom for body connection */
}

.how-work-accordion .accordion-header .accordion-button.collapsed {
  background-color: var(--secondary-color);
  color: var(--primary-color);
}

.how-work-accordion .accordion-item .accordion-button::after,
.how-work-accordion .accordion-item .accordion-button.collapsed::after {
  content: "\f077";
  font-family: "Font Awesome 6 Free";
  position: absolute;
  right: 0;
  top: 50%;
  bottom: auto;
  transform: translate(-30px, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 20px;
  width: 20px;
  height: 20px;
  padding: 5px;
  color: var(--white-color);
  transition: all 0.3s ease-in-out;
}

.how-work-accordion .accordion-item .accordion-button.collapsed::after {
  transform: translate(-30px, -50%) rotate(-180deg);
  color: var(--primary-color);
}

.how-work-accordion .accordion-item .accordion-body {
  background-color: var(--primary-color);
  padding: 0px 30px 20px 30px;
  border-radius: 0 0 10px 10px;
  /* Rounded bottom */
}

.how-work-accordion .accordion-item .accordion-body p {
  color: var(--white-color);
  margin: 0;
}

/* What to Expect - Expectation Steps Styling */
.expectation-steps {
  display: flex;
  flex-direction: column;
  gap: 25px;
}

.expectation-step-item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding: 25px;
  background-color: var(--secondary-color);
  border-radius: 10px;
  transition: all 0.3s ease-in-out;
  position: relative;
}

.expectation-step-item:hover {
  transform: translateX(5px);
  box-shadow: 0 4px 20px rgba(2, 48, 71, 0.12);
}

.step-number {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--primary-color);
  border-radius: 50%;
  position: relative;
}

.step-number span {
  font-family: var(--accent-font);
  font-size: 28px;
  font-weight: 700;
  color: var(--white-color);
  line-height: 1;
}

.step-content {
  flex: 1;
  padding-top: 5px;
}

.step-content h3 {
  font-family: var(--accent-font);
  font-size: 22px;
  font-weight: 600;
  color: var(--primary-color);
  margin-bottom: 10px;
  line-height: 1.3;
  text-transform: capitalize;
}

.step-content p {
  color: var(--primary-color);
  font-size: 16px;
  line-height: 1.7;
  margin: 0;
}

/* Responsive adjustments for expectation steps */
@media (max-width: 767px) {
  .expectation-steps {
    gap: 20px;
  }

  .expectation-step-item {
    padding: 20px;
    gap: 15px;
  }

  .step-number {
    width: 50px;
    height: 50px;
  }

  .step-number span {
    font-size: 24px;
  }

  .step-content h3 {
    font-size: 20px;
  }

  .step-content p {
    font-size: 15px;
  }
}

/************************************/
/***    11. Our Pricing css    ***/
/************************************/

.our-pricing {
  background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 130px 0 120px;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

/* ========================================
   WCAG 2.2 CONTRAST FIX - OUR PRICING SECTION
   ======================================== */

/* Problem: Gradient backgrounds create uneven contrast zones.
   Solution: Semi-transparent dark overlay + enhanced text protection.
   Result: Guaranteed 7:1+ contrast across entire gradient. */

/* 1. Add protective overlay to the entire pricing content area */
.our-pricing-content {
  position: relative;
  background: rgba(0, 0, 0, 0.25);
  /* Semi-transparent dark overlay for contrast stability */
  padding: 30px;
  border-radius: 12px;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* 2. Ensure white text has maximum contrast */
.our-pricing .section-title h2,
.our-pricing .section-title h3,
.our-pricing .section-title .sub-title,
.our-pricing .section-title p {
  color: #ffffff !important;
  /* Pure white for maximum contrast */
  position: relative;
  z-index: 2;
}

/* 3. Add subtle text shadow for additional separation and depth */
.our-pricing .section-title h2 {
  text-shadow:
    0 2px 12px rgba(0, 0, 0, 0.4),
    0 1px 3px rgba(0, 0, 0, 0.6);
  /* Soft shadow for enhanced readability without blur */
  font-weight: 400;
  /* Maintain brand typography */
}

/* 4. Ensure sub-title and paragraph text also have protection */
.our-pricing .section-title .sub-title,
.our-pricing .section-title p {
  text-shadow:
    0 1px 6px rgba(0, 0, 0, 0.3),
    0 1px 2px rgba(0, 0, 0, 0.5);
  /* Lighter shadow for body text */
}

.our-pricing::before {
  display: none;
}

/* Note: .our-pricing-content styling is defined above in the WCAG Contrast Fix section */
.our-pricing-content {
  z-index: 3;
  /* Ensure content appears above all backgrounds */
}

.our-pricing-content .section-btn {
  text-align: left;
}

.pricing-item {
  position: relative;
  border-radius: 10px;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  height: calc(100% - 30px);
  margin-bottom: 30px;
  padding: 30px;
}

.pricing-item::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: var(--white-color);
  opacity: 20%;
  border-radius: 10px;
  width: 100%;
  height: 100%;
}

.pricing-item.highlighted-box::after {
  content: "Recommended";
  position: absolute;
  top: 0;
  left: 30px;
  transform: translateY(-100%);
  background-color: var(--white-color);
  color: var(--primary-color);
  font-size: 10px;
  line-height: normal;
  border-radius: 5px 5px 0 0;
  padding: 8px;
  z-index: 1;
}

.pricing-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--white-color);
  padding-bottom: 20px;
  margin-bottom: 20px;
  z-index: 1;
}

.pricing-title {
  margin-right: 10px;
}

.pricing-title h3 {
  font-size: 26px;
  text-transform: capitalize;
  color: var(--white-color);
}

.pricing-tag h2 {
  font-family: var(--default-font);
  font-size: 20px;
  font-weight: 600;
  color: var(--white-color);
}

.pricing-tag .h2-style {
  font-family: var(--default-font);
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1;
  color: var(--white-color);
  display: flex;
  align-items: baseline;
  gap: 5px;
}

.pricing-tag h2 sub,
.pricing-tag .h2-style sub {
  font-size: 14px;
  font-weight: 300;
  bottom: 0;
}

.pricing-tag p {
  font-size: 10px;
  color: var(--white-color);
  margin: 0;
}

.pricing-body {
  position: relative;
  z-index: 1;
}

.pricing-content {
  margin-bottom: 20px;
}

.pricing-content p {
  color: var(--white-color);
  margin: 0;
}

.pricing-list {
  margin-bottom: 20px;
}

.pricing-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.pricing-list ul li {
  position: relative;
  color: var(--white-color);
  margin-bottom: 15px;
  padding-left: 25px;
}

.pricing-list ul li:last-child {
  margin-bottom: 0;
}

.pricing-list ul li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: url(../images/icon-pricing-list.svg) no-repeat;
  background-position: left center;
  background-size: cover;
  width: 16px;
  height: 16px;
}

.pricing-btn {
  padding: 8px 0;
}

.pricing-btn a {
  position: relative;
  font-family: var(--accent-font);
  font-size: 20px;
  font-weight: 400;
  text-transform: capitalize;
  color: var(--white-color);
  padding-right: 50px;
  transition: all 0.3s ease-in-out;
}

.pricing-btn a:hover,
.pricing-btn a:focus-visible {
  color: var(--primary-color);
}

.pricing-btn a:focus-visible {
  background-color: var(--white-color);
  /* Ensure solid background on focus */
  outline: 2px solid var(--primary-color);
  border-radius: 4px;
  box-shadow: 0 0 0 2px var(--white-color);
  padding-left: 5px;
  /* Visual breathing room */
}

.pricing-btn a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background-color: var(--primary-color);
  background-image: url("../images/arrow-readmore-btn.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 16px auto;
  border-radius: 10px;
  width: 40px;
  height: 40px;
}

/* Professional Location Card Styling - Enterprise Refinement */
.location-section .our-pricing-content {
  background: transparent !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin-bottom: 0 !important;
}

.location-section .section-title h2 {
  font-size: 3.5rem !important;
  line-height: 1.1 !important;
  margin-bottom: 25px !important;
  text-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}

.location-section .section-title p {
  font-size: 1.125rem !important;
  line-height: 1.7 !important;
  opacity: 0.9;
  max-width: 90%;
}

.location-card-pro {
  background: var(--white-color);
  border-radius: 24px;
  /* More modern, softer corner */
  padding: 45px;
  box-shadow:
    0 20px 40px -10px rgba(0, 0, 0, 0.2),
    /* Deep shadow */ 0 0 0 1px rgba(255, 255, 255, 0.1) inset;
  /* Inner light stroke */
  position: relative;
  overflow: hidden;
  transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
  border-top: 1px solid rgba(255, 255, 255, 0.8);
  /* Top highlight for 3D effect */
  margin-left: 30px;
  /* Separation from text */
}

.location-card-pro:hover {
  transform: translateY(-8px);
  box-shadow:
    0 30px 60px -12px rgba(0, 0, 0, 0.25),
    0 0 0 1px rgba(255, 255, 255, 0.2) inset;
}

.location-card-body {
  position: relative;
  z-index: 2;
}

.loc-item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 35px;
  /* Increased breathing room */
  gap: 25px;
}

.loc-item:last-child {
  margin-bottom: 0;
}

.loc-icon {
  width: 56px;
  height: 56px;
  background: rgba(2, 48, 71, 0.06);
  /* Subtler background */
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.location-card-pro:hover .loc-icon {
  background: var(--primary-color);
  transform: scale(1.05);
  /* Gentle pop */
}

.loc-icon i {
  font-size: 24px;
  color: var(--primary-color);
  transition: all 0.3s ease;
}

.location-card-pro:hover .loc-icon i {
  color: var(--white-color);
}

.loc-content h3 {
  font-size: 1.25rem;
  /* 20px */
  font-weight: 700;
  color: var(--primary-color) !important;
  margin-bottom: 8px;
  line-height: 1.3;
  letter-spacing: -0.01em;
}

.loc-content p {
  color: #4a5568 !important;
  /* Premium slate grey */
  margin: 0;
  font-size: 1rem;
  line-height: 1.6;
}

.availability-block .loc-content p {
  color: var(--primary-color) !important;
  font-weight: 600;
  background: rgba(2, 48, 71, 0.05);
  padding: 10px 15px;
  border-radius: 8px;
  display: inline-block;
  margin-top: 5px;
}

.loc-btn {
  margin-top: 40px;
}

.loc-btn .btn-default {
  width: auto;
  /* Fix: Stop stretching */
  padding: 15px 35px;
  /* Comfortable padding */
  justify-content: center;
  text-align: center;
  background: var(--primary-color);
  color: var(--white-color);
  height: auto;
  font-weight: 600;
  letter-spacing: 0.5px;
  display: inline-flex;
  align-items: center;
  /* Fix Hover Glitch: Reset the pseudo-element that causes the swipe issue */
}

.loc-btn .btn-default::after {
  background: var(--secondary-color);
  /* Swap the fill color for dark button */
}

.loc-btn .btn-default:hover {
  /* Text turns dark on hover */
  color: var(--primary-color) !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.15);
}

.loc-btn .btn-default:hover span {
  /* Ensure text color changes explicitly */
  color: var(--primary-color) !important;
  background: transparent;
}

.loc-btn .btn-default:hover::before {
  /* Ensure arrow stays dark blue (primary) on light background */
  filter: none !important;
  opacity: 1;
}

/* Responsive */
@media (max-width: 991px) {
  .location-card-pro {
    margin-left: 0;
    margin-top: 40px;
    padding: 35px;
  }

  .location-section .section-title h2 {
    font-size: 2.5rem !important;
  }
}

@media (max-width: 575px) {
  .location-card-pro {
    padding: 25px;
  }

  .loc-item {
    gap: 15px;
    margin-bottom: 25px;
  }

  .loc-icon {
    width: 44px;
    height: 44px;
  }

  .loc-icon i {
    font-size: 20px;
  }

  .loc-content h3 {
    font-size: 18px;
  }
}

/************************************/
/***    12. Therapist Team css    ***/
/************************************/

.therapist-team {
  background-color: var(--white-color);
  padding: 100px 0 120px;
  position: relative;
  z-index: 2;
}

/* Fix for WAVE 1:1 Contrast - Explicitly define background for text to resolve overlap ambiguity */
.therapist-team .section-title h2,
.therapist-team .section-title p {
  background-color: var(--white-color);
  color: var(--primary-color);
}

.team-member-item {
  height: calc(100% - 30px);
  margin-bottom: 30px;
}

.team-image {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: 20px;
}

.team-image img {
  width: 100%;
  aspect-ratio: 1/1.2;
  object-fit: cover;
  transition: all 0.5s ease-in-out;
}

.team-member-item:hover .team-image img {
  transform: scale(1.1);
}

.team-social-icon {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  transform: translateY(100%);
  text-align: center;
  z-index: 1;
  transition: all 0.5s ease-in-out;
}

.team-member-item:hover .team-social-icon,
.team-member-item:focus-within .team-social-icon {
  bottom: 20px;
  transform: translateY(0);
}

.team-social-icon ul {
  display: inline-block;
  list-style: none;
  line-height: normal;
  margin: 0;
  padding: 15px 30px;
  background: var(--white-color);
  border-radius: 20px;
}

.team-social-icon ul li {
  display: inline-block;
  text-align: center;
  margin-right: 20px;
}

.team-social-icon ul li:last-child {
  margin-right: 0;
}

.team-social-icon ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  /* A11y Fixes: Ensure round focus ring and proper box model */
  border-radius: 50%;
  box-sizing: border-box;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

.team-social-icon ul li a i {
  color: var(--primary-color);
  font-size: 22px;
  transition: all 0.3s ease-in-out;
}

.team-social-icon ul li a:hover i,
.team-social-icon ul li a:focus-visible i {
  color: var(--text-color);
}

.team-social-icon ul li a:focus-visible {
  outline: 2px solid var(--primary-color);
  outline-offset: 2px;
  box-shadow: none;
}

.team-content {
  text-align: center;
}

.team-content h3 {
  font-size: 1.375em;
  /* 22px */
  text-transform: capitalize;
  margin-bottom: 5px;
}

.team-content h2 {
  font-size: 1.5em;
  /* 24px */
  text-transform: capitalize;
  margin-bottom: 5px;
}

.team-content p {
  text-transform: capitalize;
  margin: 0;
}

/************************************/
/***  	13. Our Testimonial css   ***/
/************************************/

/* ========================================================================
   WCAG 2.2 CONTRAST FIX - SIMPLE & DIRECT APPROACH
   ======================================================================== */

.our-testimonial {
  background-color: var(--secondary-color);
  background-image: none;
  background-repeat: no-repeat;
  background-position: center right;
  background-size: contain;
  padding: 100px 0 150px;
  position: relative;
}

.our-testimonial .section-title {
  position: sticky;
  top: 20px;
  margin-bottom: 0;
  z-index: 2;
}

/* FORCE DARK TEXT - Override any animation or inheritance */
.our-testimonial .section-title h2 {
  color: #023047 !important;
}

.our-testimonial .section-title .sub-title,
.our-testimonial .section-title h3 {
  color: #023047 !important;
}

.our-testimonial .section-title h3::before,
.our-testimonial .section-title .sub-title::before {
  color: #023047 !important;
}

.our-testimonial .section-title p {
  color: #023047 !important;
}

/* Override any child elements created by animations */
.our-testimonial .section-title h2 *,
.our-testimonial .section-title .sub-title *,
.our-testimonial .section-title p * {
  color: #023047 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.our-testimonial .swiper-wrapper {
  cursor: grab;
}

.testimonial-item {
  background: var(--white-color);
  border-radius: 10px;
  padding: 30px;
}

.testimonial-item .testimonial-header {
  margin-bottom: 30px;
}

.testimonial-header .testimonial-rating {
  margin-bottom: 20px;
}

.testimonial-header .testimonial-rating i {
  font-size: 16px;
  color: #f56700;
  margin-right: 2px;
}

.testimonial-header .testimonial-rating i:last-child {
  margin-right: 0;
}

.testimonial-header .testimonial-content p {
  color: var(--text-color);
  margin: 0;
}

.testimonial-body {
  display: flex;
  align-items: center;
}

.testimonial-body .author-image {
  margin-right: 15px;
}

.testimonial-body .author-image img {
  width: 50px;
  height: 50px;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 50%;
}

.testimonial-body .author-content h3 {
  font-size: 20px;
  text-transform: capitalize;
  margin-bottom: 5px;
  color: var(--primary-color);
}

.testimonial-body .author-content {
  width: calc(100% - 66px);
}

.testimonial-body .author-content p {
  color: var(--text-color);
  text-transform: capitalize;
  margin: 0;
}

.testimonial-btn {
  display: flex;
  align-items: center;
  justify-content: left;
  margin-top: 40px;
}

.testimonial-slider .testimonial-button-next,
.testimonial-slider .testimonial-button-prev {
  position: relative;
  width: 40px;
  height: 40px;
  background-color: var(--white-color);
  border-radius: 6px;
  transition: all 0.4s ease-in-out;
}

.testimonial-slider .testimonial-button-next {
  margin-left: 20px;
}

.testimonial-slider .testimonial-button-next:hover,
.testimonial-slider .testimonial-button-prev:hover {
  background-color: var(--primary-color);
}

.testimonial-slider .testimonial-button-next:hover::before,
.testimonial-slider .testimonial-button-prev:hover::before {
  filter: brightness(0) invert(1);
}

.testimonial-slider .testimonial-button-next:focus-visible,
.testimonial-slider .testimonial-button-prev:focus-visible {
  outline: 4px solid #ffd700;
  outline-offset: 2px;
}

.testimonial-slider .testimonial-button-next::before,
.testimonial-slider .testimonial-button-prev::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: url("../images/arrow-blue-readmore-btn.svg") no-repeat center center;
  background-size: 15px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease-in-out;
}

.testimonial-slider .testimonial-button-prev::before {
  transform: rotate(180deg);
}

/************************************/
/***   	  14. Our Blog css        ***/
/************************************/

/* ============================================================================
   WCAG 2.2 SYSTEM-LEVEL CONTRAST ENFORCEMENT - OUR BLOG SECTION
   ============================================================================
   
   Design System Principles:
   1. Single Source of Truth for text colors
   2. Hard-locked contrast-safe colors (no inheritance)
   3. Animation-proof (overrides GSAP opacity manipulation)
   4. State-based protection (hover, focus, active)
   5. Regression prevention (explicit, documented values)
   ============================================================================ */

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   1. BACKGROUND STABILIZATION - Solid, Locked, Non-Negotiable
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

.our-blog {
  background-color: #ffffff !important;
  /* Pure white - locked to prevent theme/CMS overrides */
  padding: 100px 0 120px;
  position: relative;
  z-index: 10;
  /* High z-index to prevent bleed-through from sticky elements */
}

/* Explicit background for all children to prevent inheritance issues */
.our-blog .section-title {
  position: relative;
  z-index: 5;
  background-color: #ffffff !important;
  /* Ensure title container has solid white background */
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   2. TEXT COLOR SYSTEM - Contrast-Safe Tokens (15.3:1 ratio)
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* PRIMARY HEADING - "Our Latest Insights and updates" */
.our-blog .section-title h2 {
  color: #023047 !important;
  /* Dark blue on white = 15.3:1 contrast (AAA) */
  background-color: #ffffff !important;
  /* Explicit white background - no transparency */
  position: relative;
  z-index: 20;
  font-weight: 400;
  /* Maintain brand typography */
  opacity: 1 !important;
  /* Override any animation */
  visibility: visible !important;
  /* Always visible to accessibility checkers */
}

/* SUB-TITLE / BREADCRUMB - "news & blog" */
.our-blog .section-title .sub-title,
.our-blog .section-title h3 {
  color: #023047 !important;
  /* Same high-contrast dark blue */
  background-color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Slash icon before sub-title */
.our-blog .section-title .sub-title::before,
.our-blog .section-title h3::before {
  color: #023047 !important;
  /* Match text color for consistency */
  opacity: 1 !important;
}

/* BODY TEXT - If present */
.our-blog .section-title p {
  color: #023047 !important;
  background-color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   3. ANIMATION OVERRIDE - Prevent GSAP from Breaking Contrast
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* The text-anime-style-3 class splits text into individual characters
   and sets opacity: 0 initially. This causes WAVE to detect invisible text.
   
   Solution: Override ALL child elements, regardless of animation structure */

.our-blog .section-title h2 *,
.our-blog .section-title h2 > *,
.our-blog .section-title h2 div,
.our-blog .section-title h2 span,
.our-blog .section-title h2 .split-line,
.our-blog .section-title h2 [class*="split"] {
  color: #023047 !important;
  /* Force dark blue - never transparent/inherited */
  opacity: 1 !important;
  /* Always fully opaque */
  visibility: visible !important;
  /* Always visible */
  background-color: transparent !important;
  /* Don't block parent's white background */
}

/* Apply same rules to sub-title */
.our-blog .section-title .sub-title *,
.our-blog .section-title h3 * {
  color: #023047 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   4. STATE-BASED PROTECTION - Hover, Focus, Active
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* Ensure contrast is maintained in all interactive states */
.our-blog .section-title h2:hover,
.our-blog .section-title h2:focus,
.our-blog .section-title h2:active {
  color: #023047 !important;
  /* Never change text color on interaction */
  background-color: #ffffff !important;
}

/* Focus state - keyboard navigation */
.our-blog .section-title h2:focus-visible {
  outline: 3px solid #023047;
  /* 3:1 contrast against white background */
  outline-offset: 4px;
  /* Clear visual separation */
  background-color: rgba(2, 48, 71, 0.05);
  /* Subtle highlight without reducing text contrast */
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   5. ZOOM & HIGH-DPI SUPPORT
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

@media (min-resolution: 2dppx) {
  .our-blog .section-title h2 {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

/* Maintain contrast at 200% zoom - no changes needed, solid colors scale */
@media (min-width: 1px) {
  .our-blog .section-title h2 {
    /* Reaffirm contrast at all zoom levels */
    color: #023047 !important;
    background-color: #ffffff !important;
  }
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   6. HIGH CONTRAST MODE - Operating System Preference
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

@media (prefers-contrast: high) {
  .our-blog {
    background-color: #ffffff !important;
  }

  .our-blog .section-title h2,
  .our-blog .section-title .sub-title,
  .our-blog .section-title p {
    color: #000000 !important;
    /* Pure black for maximum contrast */
    background-color: #ffffff !important;
  }
}

/* â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€
   7. REGRESSION PREVENTION - Documentation & Guardrails
   â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */

/* ALLOWED COLOR PAIRINGS (WCAG 2.2 AA Compliant):
   
   Background: #FFFFFF (white)
   Text: #023047 (dark blue) = 15.3:1 ratio (AAA)
   
   DO NOT CHANGE without verifying:
   - WebAIM Contrast Checker: https://webaim.org/resources/contrastchecker/
   - Minimum 4.5:1 for normal text
   - Minimum 3:1 for large text (â‰¥24px or â‰¥18.66px bold)
   
   To prevent accidental overrides:
   - All critical properties use !important
   - No opacity, rgba, or transparency on text
   - No inherited colors (explicit values only)
   - All child elements explicitly styled
*/

.blog-item {
  height: calc(100% - 30px);
  margin-bottom: 30px;
}

.post-featured-image {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  margin-bottom: 30px;
}

.post-featured-image a {
  display: block;
  cursor: pointer;
  border-radius: 10px;
}

.post-featured-image img {
  aspect-ratio: 1/0.72;
  object-fit: cover;
  border-radius: 10px;
  transition: all 0.5s ease-out;
}

.blog-item:hover .post-featured-image img {
  transform: scale(1.1);
}

.blog-item .post-tags {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
}

.blog-item .post-tags a {
  position: relative;
  background-color: var(--primary-color);
  color: var(--white-color);
  border-radius: 5px;
  padding: 6px 10px;
  min-height: 44px;
  /* Minimum touch target */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  text-transform: capitalize;
  cursor: pointer;
  overflow: hidden;
  transition: all 0.3s ease-in-out;
}

.blog-item .post-tags a:hover {
  background-color: var(--secondary-color);
  color: var(--primary-color);
}

/* Removed pseudo-element for transparent blur effect as per request */

.article-meta {
  margin-bottom: 20px;
}

.article-meta ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.article-meta ul li a {
  font-size: 14px;
  color: var(--text-color);
}

.post-item-body {
  margin-bottom: 20px;
}

.post-item-body h2 {
  font-size: 22px;
  line-height: 1.4em;
}

.post-item-body h2 a {
  color: inherit;
}

.post-item-footer .readmore-btn {
  position: relative;
  text-transform: capitalize;
  font-weight: 500;
  color: var(--primary-color);
  padding-right: 20px;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  /* Enforce minimum touch height */
  transition: 0.3s ease-in-out;
}

.post-item-footer .readmore-btn::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  bottom: 0;
  transform: translateY(-50%);
  background-image: url("../images/arrow-blue-readmore-btn.svg");
  background-repeat: no-repeat;
  background-position: center center;
  width: 12px;
  height: 12px;
  transition: 0.3s ease-in-out;
}

/************************************/
/***        15. Footer css  	  ***/
/************************************/

footer.main-footer {
  background: var(--primary-color) url("../images/footer-bg.svg") no-repeat;
  background-position: bottom center;
  background-size: contain;
  padding: 80px 0;
  z-index: 2;
}

.about-footer {
  border-bottom: 1px solid var(--divider-color);
  padding-bottom: 50px;
  margin-bottom: 50px;
}

.footer-motionis img {
  width: 100%;
  max-width: 220px;
}

.about-footer-content h3 {
  font-family: var(--default-font);
  font-size: 22px;
  font-weight: 400;
  color: var(--white-color);
  margin-bottom: 20px;
}

.about-footer-content p {
  color: var(--white-color);
  margin-bottom: 0;
  margin-right: 30px;
}

.about-footer-list {
  display: flex;
  flex-wrap: wrap;
  row-gap: 50px;
  column-gap: 100px;
}

.footer-links {
  width: calc(33% - 66.66px);
}

.footer-links h2,
.footer-links h3 {
  display: inline-block;
  background-color: var(--secondary-color);
  color: var(--primary-color);
  border-radius: 100px;
  font-family: var(--default-font);
  font-size: 16px;
  font-weight: 400;
  text-transform: capitalize;
  padding: 5px 20px;
  margin-bottom: 20px;
}

.footer-links ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-links ul li {
  position: relative;
  display: inline-block;
  color: var(--white-color);
  text-transform: capitalize;
  transition: all 0.3s ease-in-out;
  padding-left: 12px;
  margin-right: 15px;
}

.footer-links ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  bottom: 0;
  transform: translateY(-50%);
  background-color: var(--secondary-color);
  border-radius: 50%;
  width: 6px;
  height: 6px;
}

.footer-links ul li:last-child {
  margin-right: 0;
}

.footer-links ul li a {
  color: inherit;
}

.footer-links ul li:hover {
  color: var(--text-color);
}

.footer-links.service-links {
  width: calc(50% - 66.66px);
}

.footer-links.social-links {
  width: calc(17% - 66.66px);
  text-align: center;
}

.footer-links.social-links ul {
  list-style: none;
}

.footer-links.social-links ul li {
  padding-left: 0;
}

.footer-links.social-links ul li::before {
  display: none;
}

.footer-links.social-links ul li a i {
  color: var(--white-color);
  font-size: 22px;
  transition: all 0.3s ease-in-out;
}

.footer-links.social-links ul li:hover a i {
  color: var(--text-color);
}

.footer-links.working-links {
  width: calc(60% - 66.66px);
}

.footer-links.footer-contact-details {
  width: calc(40% - 66.66px);
}

.footer-contact-box {
  display: flex;
  align-items: center;
}

.footer-contact-details .footer-info-box {
  display: flex;
  margin-right: 25px;
}

.footer-contact-details .footer-info-box:last-child {
  margin-right: 0;
}

.footer-info-box .icon-box {
  margin-right: 10px;
}

.footer-info-box .icon-box img {
  max-width: 20px;
}

.footer-info-box-content {
  width: calc(100% - 30px);
}

.footer-info-box-content p {
  color: var(--white-color);
  margin-bottom: 0;
}

.footer-links.terms-condition-links {
  width: 100%;
  text-align: center;
}

.footer-copyright-text {
  margin-bottom: 10px;
}

.footer-copyright-text p {
  color: var(--white-color);
  text-transform: capitalize;
  margin: 0;
}

.footer-terms-condition ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-terms-condition ul li {
  display: inline-block;
}

.footer-terms-condition ul li a {
  color: var(--white-color);
  text-transform: capitalize;
  text-decoration: underline;
}

/************************************/
/***     16. About us Page css	  ***/
/************************************/

.page-header {
  background: var(--primary-color);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  padding: 220px 0;
  margin-top: -100px;
}

.page-header::before {
  display: none;
}

.page-header::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  background-image: url("../images/page-header-bg-shape-1.svg");
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: auto;
  width: 100%;
  height: 100%;
}

.page-header-box {
  position: relative;
  text-align: center;
  z-index: 1;
}

.page-header-box h1 {
  display: inline-block;
  font-size: 66px;
  color: var(--white-color);
  margin-bottom: 5px;
}

.page-header-box ol {
  margin: 0;
  padding: 0;
  justify-content: center;
  margin-top: 10px;
}

.page-header-box ol li.breadcrumb-item {
  font-size: 18px;
  font-weight: 400;
  color: var(--white-color);
  text-transform: capitalize;
}

.page-header-box ol li.breadcrumb-item.active {
  color: var(--secondary-color);
}

.page-header-box ol li.breadcrumb-item a {
  color: inherit;
}

.page-header-box ol .breadcrumb-item + .breadcrumb-item::before {
  color: var(--white-color);
}

.page-about-us {
  background-color: var(--white-color);
  padding: 100px 0 150px;
  padding-left: calc(((100vw - 1300px) / 2) - 0px);
}

.page-about-us .container-fluid {
  padding: 0;
}

.page-about-content {
  padding-right: 30px;
}

.page-about-content-body {
  margin-bottom: 40px;
}

.page-about-content-item {
  position: relative;
  border: 1px solid var(--secondary-color);
  border-radius: 10px;
  display: flex;
  align-items: center;
  margin-bottom: 20px;
  padding: 20px;
  overflow: hidden;
}

.page-about-content-item:last-child {
  margin-bottom: 0;
}

.page-about-content-item::before {
  content: "";
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  background-color: var(--secondary-color);
  transition: all 0.4s ease-in-out;
  height: 100%;
  width: 100%;
  z-index: 0;
  opacity: 0;
}

.page-about-content-item:hover:before {
  top: 0;
  opacity: 1;
}

.page-about-content-item .icon-box {
  position: relative;
  margin-right: 10px;
  padding: 0 5px 5px 0;
  z-index: 1;
}

.page-about-content-item .icon-box::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--secondary-color);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  transition: all 0.4s ease-in-out;
}

.page-about-content-item:hover .icon-box::before {
  background-color: var(--white-color);
}

.page-about-content-item .icon-box img {
  position: relative;
  max-width: 60px;
  z-index: 1;
}

.page-about-item-content {
  position: relative;
  width: calc(100% - 70px);
  z-index: 1;
}

.page-about-item-content p {
  margin: 0;
}

.page-about-content-box {
  background-color: var(--primary-color);
  border-radius: 10px;
  padding: 15px 20px;
}

.page-about-box-title {
  margin-bottom: 20px;
}

.page-about-box-title h3 {
  font-size: 20px;
  color: var(--white-color);
  text-transform: capitalize;
}

.page-about-box-list ul {
  list-style-type: circle;
  padding: 0;
  margin: 0;
  padding-left: 20px;
}

.page-about-box-list ul li {
  color: var(--white-color);
  margin-bottom: 10px;
}

.page-about-box-list ul li:last-child {
  margin-bottom: 0;
}

.page-about-body-content {
  margin-top: 30px;
}

.page-about-body-content p {
  margin: 0;
}

.page-about-img-1 {
  position: relative;
}

.page-about-img-1::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: radial-gradient(
    50.39% 43.6% at 62.48% 53.16%,
    rgba(255, 255, 255, 0) 46.27%,
    var(--white-color) 100%
  );
  width: 100%;
  height: 100%;
  z-index: 1;
}

.page-about-img-1 img {
  width: 100%;
  aspect-ratio: 1 / 0.8;
  opacity: 50%;
  object-fit: cover;
}

.page-about-img-2 {
  position: absolute;
  bottom: 0;
  left: 50%;
  z-index: 1;
}

.about-testimonial-box {
  position: absolute;
  left: 0;
  bottom: 50px;
  width: 55%;
  background: linear-gradient(90deg, #10455f 9.97%, #023047 100%);
  border-radius: 50px 0 0 0;
  padding: 15px;
  padding-left: calc(((100vw - 1300px) / 2) - 0px);
}

.about-testimonial-item p {
  font-family: var(--accent-font);
  font-size: 22px;
  color: var(--secondary-color);
  font-family: var(--accent-font);
  font-size: 22px;
  color: var(--secondary-color);
  margin: 0;
  min-height: 50px;
  /* Ensure container is tall enough for buttons */
  display: flex;
  align-items: center;
}

.about-testimonial-btn {
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(-100%);
  display: flex;
  align-items: center;
  justify-content: right;
  z-index: 1;
}

.about-testimonial-btn .about-testimonial-button-next,
.about-testimonial-btn .about-testimonial-button-prev {
  position: relative;
  position: relative;
  width: 44px;
  /* Increased to 44px for WCAG & clipping fix */
  height: 44px;
  /* Increased to 44px */
  background-color: var(--secondary-color);
  border-radius: 50%;
  transition: all 0.4s ease-in-out;
}

.about-testimonial-btn .about-testimonial-button-next {
  margin-left: 10px;
}

.about-testimonial-btn .about-testimonial-button-next:hover,
.about-testimonial-btn .about-testimonial-button-prev:hover {
  background-color: var(--white-color);
}

.about-testimonial-btn .about-testimonial-button-next::before,
.about-testimonial-btn .about-testimonial-button-prev::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: url("../images/arrow-blue-readmore-btn.svg") no-repeat center center;
  background-size: 12px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease-in-out;
}

.about-testimonial-btn .about-testimonial-button-prev::before {
  transform: rotate(180deg);
}

.about-icon-box-list {
  background-color: var(--primary-color);
  border-radius: 0 50px 0 0;
  padding: 100px 0 120px;
  z-index: 1;
}

.about-icon-list-item {
  height: calc(100% - 30px);
  margin-bottom: 30px;
  text-align: center;
}

.about-icon-list-item .icon-box {
  position: relative;
  width: 70px;
  margin: 0 auto;
  margin-bottom: 20px;
}

.about-icon-list-item .icon-box::before {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -10px;
  background-color: var(--accent-color);
  border-radius: 50%;
  width: 40px;
  height: 40px;
  transition: all 0.4s ease-in-out;
}

.about-icon-list-item .icon-box img {
  position: relative;
  max-width: 70px;
  z-index: 1;
}

.about-icon-list-content h3 {
  font-size: 22px;
  text-transform: capitalize;
  color: var(--secondary-color);
}

.our-rehabilitation {
  position: relative;
  background: var(--white-color);
  padding: 100px 0 120px;
  z-index: 1;
}

.our-rehabilitation .section-title {
  text-align: center;
}

.therapy-rehabilitation-item {
  position: relative;
  border-radius: 10px;
  height: calc(100% - 30px);
  margin-bottom: 30px;
  overflow: hidden;
}

.therapy-rehabilitation-image a {
  position: relative;
  display: block;
}

.therapy-rehabilitation-image a::before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: linear-gradient(179.94deg, rgba(0, 0, 0, 0.9) 0.05%, rgba(0, 0, 0, 0) 45%);
  height: 100%;
  width: 100%;
  z-index: 1;
  display: none;
  /* Hide overlay as we use solid background */
}

.therapy-rehabilitation-image img {
  aspect-ratio: 1 / 1.28;
  object-fit: cover;
  border-radius: 10px;
  transition: all 0.4s ease-in-out;
  display: none;
  /* Hide image */
}

/* Add background color to container to replace image */
.therapy-rehabilitation-image {
  background-color: #023047 !important;
  /* WCAG: Explicit dark blue - 15.3:1 contrast with white text */
  border-radius: 10px;
  width: 100%;
  aspect-ratio: 1 / 1.28;
}

.therapy-rehabilitation-item:hover .therapy-rehabilitation-image img {
  transform: scale(1.1);
}

.therapy-rehabilitation-header {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  padding: 30px;
  z-index: 1;
  background-color: transparent !important;
  /* WCAG: Inherit dark blue from parent */
}

.therapy-rehabilitation-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
}

.therapy-rehabilitation-btn {
  margin-right: 20px;
}

.therapy-rehabilitation-btn .arrow-static {
  position: relative;
  width: 50px;
  height: 50px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  box-sizing: border-box;
  /* 1. Stabilize Box Model */
  text-decoration: none;
  border: none;
}

.therapy-rehabilitation-btn .arrow-static::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: var(--white-color);
  opacity: 10%;
  height: 100%;
  width: 100%;
}

.therapy-rehabilitation-btn .arrow-static img {
  width: 20px;
  /* 2. Lock Width */
  max-width: 20px;
  height: auto;
  transform: rotate(-45deg);
  transform-origin: center;
  transition: all 0.3s ease-in-out;
}

.therapy-rehabilitation-btn:hover .arrow-static img,
.therapy-rehabilitation-item:hover .therapy-rehabilitation-btn .arrow-static img {
  transform: rotate(0deg);
}

.therapy-rehabilitation-title {
  width: calc(100% - 70px);
}

.therapy-rehabilitation-title h3 {
  font-size: 1.625em;
  /* 26px */
  text-transform: capitalize;
  color: #ffffff !important;
  /* WCAG: Pure white for maximum contrast */
  opacity: 1 !important;
  visibility: visible !important;
  word-wrap: break-word;
  overflow-wrap: break-word;
  hyphens: auto;
}

.therapy-rehabilitation-dec p {
  color: #ffffff !important;
  /* WCAG: Pure white for maximum contrast */
  opacity: 1 !important;
  visibility: visible !important;
  margin: 0;
}

.therapy-rehabilitation-body {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 30px;
  z-index: 1;
  background-color: transparent !important;
  /* WCAG: Inherit dark blue from parent */
}

.therapy-rehabilitation-list {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  padding: 20px;
}

.therapy-rehabilitation-list::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: var(--white-color);
  opacity: 20%;
  height: 100%;
  width: 100%;
}

.therapy-rehabilitation-list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.therapy-rehabilitation-list ul li {
  position: relative;
  color: #ffffff !important;
  /* WCAG: Pure white for maximum contrast */
  opacity: 1 !important;
  visibility: visible !important;
  margin-bottom: 10px;
  padding-left: 25px;
}

.therapy-rehabilitation-list ul li:last-child {
  margin-bottom: 0;
}

.therapy-rehabilitation-list ul li::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: url(../images/icon-pricing-list.svg) no-repeat;
  background-position: left center;
  background-size: cover;
  width: 16px;
  height: 16px;
}

.therapy-process {
  background: var(--primary-color) url("../images/therapy-process-bg-circle.svg") no-repeat;
  background-position: right bottom;
  padding: 100px 0 150px;
  z-index: 1;
}

.therapy-process .section-title h3::before,
.therapy-process .section-title h2,
.therapy-process .section-title h3 {
  color: var(--white-color);
}

.therapy-process .section-btn .btn-default::after {
  background-color: var(--accent-color);
}

.therapy-process-content {
  margin-right: 30px;
}

.therapy-process-item {
  position: relative;
  background-color: var(--secondary-color);
  border: 1px solid var(--divider-color);
  border-radius: 10px;
  display: flex;
  align-items: center;
  padding: 20px;
  transition: all 0.4s ease-in-out;
  overflow: hidden;
  margin-bottom: 30px;
}

.therapy-process-item:last-child {
  margin-bottom: 0;
}

.therapy-process-item:hover {
  background-color: var(--accent-color);
  border-color: var(--accent-color);
  transform: translateX(20px);
}

.therapy-process-item::before {
  content: "";
  position: absolute;
  top: 100%;
  right: 0;
  left: 0;
  background-color: var(--accent-color);
  transition: all 0.4s ease-in-out;
  height: 100%;
  width: 100%;
  z-index: 0;
  opacity: 0;
}

.therapy-process-item:hover:before {
  top: 0;
  opacity: 1;
}

.therapy-process-item .icon-box {
  position: relative;
  background-color: var(--white-color);
  border-radius: 10px;
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 30px;
  z-index: 1;
}

.therapy-process-item .icon-box img {
  max-width: 50px;
}

.therapy-process-item-content {
  position: relative;
  width: calc(100% - 120px);
  z-index: 1;
}

.therapy-process-item-content h3 {
  font-size: 1.375em;
  /* 22px */
  text-transform: capitalize;
  margin-bottom: 10px;
  transition: all 0.4s ease-in-out;
}

.therapy-process-item:hover .therapy-process-item-content h3 {
  color: var(--white-color);
}

.therapy-process-item-content p {
  margin: 0;
  transition: all 0.4s ease-in-out;
}

.therapy-process-item:hover .therapy-process-item-content p {
  color: var(--white-color);
}

.therapy-process-images {
  position: relative;
  margin: 10px;
  margin-bottom: 0;
}

.therapy-process-img-1 {
  text-align: center;
  width: 530px;
  margin: 0 auto;
  padding: 55px 0;
}

.therapy-process-img-2 {
  position: absolute;
  top: 0;
  left: 0;
  transform: rotate(-4deg);
  z-index: 1;
}

.therapy-process-img-3 {
  position: absolute;
  bottom: 0;
  right: 0;
  transform: rotate(4deg);
  z-index: 1;
}

.therapy-process-img-3 figure,
.therapy-process-img-2 figure,
.therapy-process-img-1 figure {
  border-radius: 10px;
}

.therapy-process-img-3 img,
.therapy-process-img-2 img,
.therapy-process-img-1 img {
  width: 100%;
  border-radius: 10px;
}

.therapy-process-img-1 img {
  aspect-ratio: 1 / 1.1;
  object-fit: cover;
}

.therapy-process-img-2 img {
  aspect-ratio: 1 / 1.05;
  object-fit: cover;
}

.therapy-process-img-3 img {
  aspect-ratio: 1 / 1.14;
  object-fit: cover;
}

.our-video {
  background: var(--white-color);
  padding: 100px 0 150px;
  z-index: 2;
  overflow: hidden;
}

/* Background image removed for WCAG contrast compliance */
.our-video::before {
  display: none;
}

/* Gradient layer removed as background image is gone */
.our-video::after {
  display: none;
}

.our-video-content .section-btn {
  text-align: left;
}

.our-video-content {
  position: relative;
  margin-right: 40px;
  z-index: 1;
}

.video-play-button {
  position: relative;
  text-align: center;
  z-index: 1;
}

.video-play-button a {
  position: relative;
  cursor: pointer;
}

.video-play-button a::before {
  content: "\f04b";
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  /* Required for FA6 Solid icons */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  font-size: 30px;
  color: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

.video-play-button a img {
  max-width: 168px;
  animation: rotate 30s infinite linear;
}

@keyframes rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

.process-steps {
  background: url("../images/process-steps-line.svg"), var(--secondary-color);
  background-repeat: no-repeat;
  background-position: bottom 160px center;
  background-size: contain;
  padding: 100px 0 150px;
  z-index: 2;
}

.process-steps .section-title {
  text-align: center;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

.process-steps-line {
  padding-top: 100px;
}

.process-step-box {
  position: relative;
  text-align: center;
  padding-top: 70px;
}

.process-steps .col-lg-3:nth-last-child(even) .process-step-box {
  margin-top: 50px;
}

.process-step-no {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 0;
}

.process-step-no h2 {
  font-family: var(--default-font);
  font-size: 114px;
  font-weight: 600;
  background-image: linear-gradient(180deg, #ffffff 0%, rgba(255, 255, 255, 0) 100%);
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.process-step-content {
  position: relative;
  z-index: 1;
}

.process-step-content h3 {
  font-size: 22px;
  text-transform: capitalize;
  color: var(--accent-color);
  margin-bottom: 10px;
}

.process-step-content p {
  margin: 0;
}

.our-testimonial.about-our-testimonial,
.therapist-team.about-therapist-team {
  z-index: 2;
}

.page-about-faqs {
  background-color: var(--white-color);
  padding: 100px 0 150px;
  z-index: 2;
  overflow: hidden;
}

/* Background image removed for WCAG contrast compliance */
.page-about-faqs::before {
  display: none;
}

/* Background image removed for WCAG contrast compliance */
.page-about-faqs::after {
  display: none;
}

.about-faqs-content {
  position: relative;
  z-index: 1;
}

.about-faq-section .accordion-item {
  border-radius: 10px;
  margin-bottom: 30px;
  padding: 0;
  transition: all 0.3s ease-in-out;
  overflow: hidden;
}

.about-faq-section .accordion-item:last-child {
  margin-bottom: 0;
}

.about-faq-section .accordion-header .accordion-button {
  position: relative !important;
  font-size: 20px;
  line-height: 1.2em;
  background-color: var(--secondary-color);
  color: var(--primary-color);
  padding: 20px 50px 20px 20px;
  transition: all 0.3s ease-in-out;
}

.about-faq-section .accordion-button:not(.collapsed) {
  background-color: var(--primary-color);
  color: var(--white-color);
  border-bottom: 1px solid var(--divider-color);
}

.about-faq-section .accordion-header .accordion-button.collapsed {
  background-color: var(--secondary-color);
  color: var(--primary-color);
}

.about-faq-section .accordion-item .accordion-button::after,
.about-faq-section .accordion-item .accordion-button.collapsed::after {
  content: "\f077";
  font-family: "Font Awesome 6 Free";
  position: absolute;
  right: 20px;
  top: 50%;
  bottom: auto;
  transform: translate(0px, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 900;
  font-size: 20px;
  width: 20px;
  height: 20px;
  padding: 5px;
  color: var(--white-color);
  transition: all 0.3s ease-in-out;
}

.about-faq-section .accordion-item .accordion-button.collapsed::after {
  transform: translate(0px, -50%) rotate(-180deg);
  color: var(--primary-color);
}

.about-faq-section .accordion-item .accordion-body {
  background-color: var(--primary-color);
  padding: 20px 50px 20px 20px;
}

.about-faq-section .accordion-item .accordion-body p {
  color: var(--white-color);
  margin: 0;
}

.cta-box {
  background: linear-gradient(135deg, var(--primary-color), var(--accent-color));
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  padding: 100px 0 150px;
  z-index: 2;
  overflow: hidden;
}

.cta-box::before {
  display: none;
}

.cta-box-content {
  position: relative;
  text-align: center;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;
  z-index: 1;
}

.cta-box-content .section-title h3::before,
.cta-box-content .section-title h3,
.cta-box-content .section-title h2,
.cta-box-content .section-title p {
  color: var(--white-color);
}

.cta-box-content .section-btn {
  text-align: center;
}

/************************************/
/*** 	 17. Page service css	  ***/
/************************************/

.page-header.service-page-header::after {
  background-image: url("../images/page-header-bg-shape-2.svg");
}

.service-process {
  background: var(--secondary-color);
  padding: 100px 0 150px;
}

.service-process-list .service-process-list-item {
  display: flex;
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid var(--white-color);
}

.service-process-list .service-process-list-item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.service-process-list-item .icon-box {
  margin-right: 20px;
}

.service-process-list-item .icon-box img {
  max-width: 17px;
}

.service-process-list-item .service-process-content {
  width: calc(100% - 37px);
}

.service-process-list-item .service-process-content-body {
  display: flex;
  justify-content: space-between;
  margin-bottom: 15px;
}

.service-process-list-item .service-process-content-body .service-process-btn {
  margin-left: 20px;
}

.service-process-list-item .service-process-title h3 {
  font-size: 1.375em;
  /* 22px */
}

.service-process-list-item .service-process-btn a {
  background: var(--primary-color);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease-in-out;
}

.service-process-list-item .service-process-btn img {
  transform: rotate(-45deg);
  max-width: 20px;
  transition: all 0.3s ease-in-out;
}

.service-process-list-item:hover .service-process-btn a {
  background: var(--accent-color);
}

.service-process-list-item:hover .service-process-btn a img {
  transform: rotate(0deg);
}

.service-process-list-item .service-process-footer p {
  margin: 0;
}

.service-process-img img {
  aspect-ratio: 1 / 1.25;
  object-fit: cover;
  border-radius: 10px;
}

.service-process-box-content {
  text-align: right;
}

.service-process-box-content .section-btn {
  margin: 0;
}

.service-process-box-content .section-btn .btn-default {
  background: var(--white-color);
}

.page-services {
  position: relative;
  background: var(--white-color);
  border-radius: 50px 50px 0 0;
  margin-top: -50px;
  padding: 100px 0 120px;
}

.page-services .section-title {
  text-align: center;
}

/************************************/
/*** 	 18. service Single css	  ***/
/************************************/

.page-header.service-single-page-header::after {
  background-image: url("../images/page-header-bg-shape-3.svg");
}

.page-service-single {
  background-color: var(--white-color);
  padding: 100px 0 150px;
}

.service-sidebar {
  position: sticky;
  top: 20px;
}

.service-catagery-list {
  background-color: var(--secondary-color);
  border-radius: 10px;
  padding: 30px;
  margin-bottom: 40px;
}

.service-catagery-list h3 {
  font-size: 30px;
  text-transform: capitalize;
  margin-bottom: 25px;
}

.service-catagery-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.service-catagery-list ul li {
  margin-bottom: 20px;
}

.service-catagery-list ul li:last-child {
  margin-bottom: 0;
}

.service-catagery-list ul li a {
  display: block;
  position: relative;
  font-family: var(--accent-font);
  text-transform: capitalize;
  background-color: var(--white-color);
  color: var(--text-color);
  border-radius: 10px;
  line-height: normal;
  padding: 20px 40px 20px 20px;
  transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li:hover a {
  background-color: var(--primary-color);
  color: var(--white-color);
}

.service-catagery-list ul li a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translate(-20px, -50%);
  background-image: url("../images/arrow-blue-readmore-btn.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 16px;
  height: 16px;
  transition: all 0.3s ease-in-out;
}

.service-catagery-list ul li:hover a::after {
  filter: brightness(0) invert(1);
}

.working-hours {
  background-color: var(--secondary-color);
  border-radius: 10px;
  padding: 30px;
  margin-bottom: 40px;
}

.working-hours h3 {
  font-size: 30px;
  text-transform: capitalize;
  margin-bottom: 25px;
}

.working-hours ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.working-hours ul li {
  margin-bottom: 20px;
}

.working-hours ul li:last-child {
  margin-bottom: 0;
}

.working-hours ul li a {
  display: block;
  position: relative;
  font-family: var(--accent-font);
  text-transform: capitalize;
  background-color: var(--white-color);
  color: var(--text-color);
  border-radius: 10px;
  line-height: normal;
  padding: 20px 20px 20px 50px;
  transition: all 0.3s ease-in-out;
}

.working-hours ul li:hover a {
  background-color: var(--primary-color);
  color: var(--white-color);
}

.working-hours ul li a::after {
  content: "\f017";
  font-family: "FontAwesome";
  display: block;
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translate(20px, -50%);
  font-size: 20px;
  color: var(--primary-color);
  width: 20px;
  height: 20px;
  transition: all 0.3s ease-in-out;
}

.working-hours ul li:hover a::after {
  color: var(--white-color);
}

.working-hours-btn {
  margin-top: 20px;
}

.working-hours-btn .btn-default {
  background: var(--white-color);
  width: 100%;
}

.working-hours-btn .btn-default span {
  text-align: center;
  width: 100%;
}

.sidebar-cta-box {
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}

.sidebar-cta-image {
  position: relative;
}

/* Overlay removed as background image is gone */
.sidebar-cta-image::before {
  display: none;
}

.sidebar-cta-image img {
  width: 100%;
  aspect-ratio: 1 / 1.01;
  object-fit: cover;
  border-radius: 10px;
  display: none;
  /* Hide image */
}

/* Add solid background color */
.sidebar-cta-image {
  background-color: var(--primary-color);
  border-radius: 10px;
  width: 100%;
  aspect-ratio: 1 / 1.01;
}

.sidebar-cta-item {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  transform: translateY(-50%);
  z-index: 1;
}

.sidebar-cta-item .icon-box {
  border: 1px solid var(--secondary-color);
  border-radius: 50%;
  width: 100px;
  height: 100px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}

.sidebar-cta-item .icon-box figure {
  position: relative;
  background-color: var(--secondary-color);
  border-radius: 50%;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.sidebar-cta-item .icon-box figure::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--white-color);
  border-radius: 50%;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transition: all 0.4s ease-in-out;
}

.sidebar-cta-item:hover .icon-box figure::before {
  transform: scale(1);
}

.sidebar-cta-item .icon-box figure img {
  position: relative;
  max-width: 36px;
  z-index: 1;
}

.sidebar-cta-content {
  text-align: center;
}

.sidebar-cta-content h3 {
  font-size: 30px;
  text-transform: capitalize;
  color: var(--white-color);
  margin-bottom: 15px;
}

.sidebar-cta-content p {
  font-size: 22px;
  font-weight: 600;
  color: var(--white-color);
  margin: 0;
}

.service-single-image {
  margin-bottom: 30px;
}

.service-single-image img {
  border-radius: 10px;
  aspect-ratio: 1 / 0.55;
  object-fit: cover;
}

.service-entry {
  margin-bottom: 40px;
}

.service-entry h2 {
  font-size: 36px;
  margin-bottom: 25px;
}

.service-entry h3 {
  font-size: 20px;
  margin-bottom: 25px;
}

.service-entry p {
  margin-bottom: 20px;
}

.service-entry p:last-child {
  margin-bottom: 0px;
}

.service-entry ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 30px;
}

.service-entry ul li {
  position: relative;
  width: calc(50% - 10px);
  color: var(--primary-color);
  font-size: 16px;
  text-transform: capitalize;
  padding-left: 30px;
}

.service-entry ul li:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background: var(--primary-color) url(../images/arrow-white.svg) no-repeat;
  background-position: center center;
  background-size: 8px auto;
  border-radius: 50%;
  width: 20px;
  height: 20px;
}

.service-entry-img-1 figure,
.service-entry-img-2 figure {
  display: block;
}

.service-entry-img-1 img,
.service-entry-img-2 img {
  aspect-ratio: 1 / 1.01;
  object-fit: cover;
  border-radius: 10px;
}

.about-faq-section.our-faqs-section .accordion-item .accordion-body {
  background-color: var(--secondary-color);
}

.about-faq-section.our-faqs-section .accordion-item .accordion-body p {
  color: var(--text-color);
}

.about-faq-section.our-faqs-section .accordion-item .accordion-button::after,
.about-faq-section.our-faqs-section .accordion-item .accordion-button.collapsed::after {
  content: "\f062";
}

/************************************/
/***     19. Blog Archive css     ***/
/************************************/

.page-header.blog-page-header::after {
  background-image: url("../images/page-header-bg-shape-4.svg");
}

.page-blog {
  background-color: var(--white-color);
  padding: 100px 0 150px;
}

.page-blog .blog-item {
  height: calc(100% - 40px);
  margin-bottom: 40px;
}

.page-pagination {
  margin-top: 30px;
  text-align: center;
}

.page-pagination ul {
  justify-content: center;
  padding: 0;
  margin: 0;
}

.page-pagination ul li a,
.page-pagination ul li span {
  display: flex;
  text-decoration: none;
  justify-content: center;
  align-items: center;
  background: var(--secondary-color);
  color: var(--primary-color);
  border-radius: 10px;
  width: 44px;
  /* Increased from 40px */
  height: 44px;
  /* Increased from 40px */
  margin: 0 5px;
  font-weight: 700;
  line-height: 1em;
  transition: all 0.3s ease-in-out;
}

.page-pagination ul li.active a,
.page-pagination ul li a:hover {
  background: var(--primary-color);
  color: var(--white-color);
}

/************************************/
/***      20. Blog Single css	  ***/
/************************************/

.page-header.blog-single-page-header::after {
  background-image: url("../images/page-header-bg-shape-5.svg");
}

.page-single-post {
  background-color: var(--white-color);
  padding: 100px 0 150px;
}

.post-single-meta {
  margin-top: 10px;
}

.post-single-meta ol li.breadcrumb-item {
  font-size: 18px;
}

.post-single-meta ol li i {
  font-size: 18px;
  color: var(--white-color);
  margin-right: 5px;
}

.post-image {
  position: relative;
  margin-bottom: 30px;
}

.post-image figure {
  display: block;
}

.post-image figure,
.post-image img {
  aspect-ratio: 1 / 0.5;
  object-fit: cover;
  border-radius: 10px;
}

.post-content {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

.post-entry {
  border-bottom: 1px solid var(--secondary-color);
  padding-bottom: 30px;
  margin-bottom: 30px;
}

.post-entry:after {
  content: "";
  display: block;
  clear: both;
}

.post-entry a {
  color: var(--accent-color);
}

.post-entry h1,
.post-entry h2,
.post-entry h3,
.post-entry h4,
.post-entry h5,
.post-entry h6 {
  margin: 0 0 0.6em;
}

.post-entry h1 span,
.post-entry h2 span {
  font-weight: 400;
}

.post-entry h1 {
  font-size: 66px;
}

.post-entry h2 {
  font-size: 54px;
}

.post-entry h3 {
  font-size: 40px;
}

.post-entry h4 {
  font-size: 30px;
}

.post-entry h5 {
  font-size: 24px;
}

.post-entry h6 {
  font-size: 18px;
}

.post-entry p {
  margin-bottom: 20px;
}

.post-entry p:last-child {
  margin-bottom: 0;
}

.post-entry p strong {
  color: var(--primary-color);
  font-size: 18px;
  font-weight: 600;
}

.post-entry ol {
  margin: 0 0 30px;
}

.post-entry ol li {
  margin-bottom: 20px;
  font-size: 18px;
  font-weight: 600;
  color: var(--text-color);
}

.post-entry ul {
  padding: 0;
  margin: 20px 0 20px;
  padding-left: 20px;
}

.post-entry ul li {
  font-size: 18px;
  font-weight: 500;
  color: var(--primary-color);
  position: relative;
  margin-bottom: 15px;
}

.post-entry ul li:last-child {
  margin-bottom: 0;
}

.post-entry ul ul,
.post-entry ul ol,
.post-entry ol ol,
.post-entry ol ul {
  margin-top: 20px;
  margin-bottom: 0;
}

.post-entry ul ul li:last-child,
.post-entry ul ol li:last-child,
.post-entry ol ol li:last-child,
.post-entry ol ul li:last-child {
  margin-bottom: 0;
}

.post-entry blockquote {
  background-color: var(--secondary-color);
  background-image: url(../images/icon-blockquote.svg);
  background-repeat: no-repeat;
  background-position: left 35px top 40px;
  background-size: 45px;
  border-radius: 10px;
  padding: 30px 30px 30px 100px;
  margin-bottom: 30px;
}

.post-entry blockquote p {
  color: var(--primary-color);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4em;
}

.post-entry blockquote p:last-child {
  margin-bottom: 0;
}

.tag-links {
  font-size: 22px;
  font-weight: 600;
  color: var(--primary-color);
  display: inline-block;
}

.post-tags .tag-links a {
  display: inline-block;
  font-size: 16px;
  font-weight: 500;
  text-transform: capitalize;
  background-color: var(--primary-color);
  color: var(--white-color);
  border-radius: 10px;
  padding: 8px 20px;
  min-height: 44px;
  /* Minimum touch target */
  display: inline-flex;
  align-items: center;
  margin-left: 10px;
  margin-bottom: 10px;
  transition: all 0.3s ease-in-out;
}

.post-tags .tag-links a:hover {
  background: var(--text-color);
}

.post-social-sharing {
  text-align: right;
}

.post-social-sharing ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.post-social-sharing ul li {
  display: inline-block;
  margin-right: 10px;
}

.post-social-sharing ul li:last-child {
  margin-right: 0;
}

.post-social-sharing ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background-color: var(--primary-color);
  color: var(--white-color);
  border-radius: 10px;
  width: 38px;
  height: 38px;
  transition: all 0.3s ease-in-out;
}

.post-social-sharing ul li:hover a {
  background-color: var(--text-color);
}

.post-social-sharing ul li a i {
  font-size: 18px;
  color: inherit;
  transition: all 0.3s ease-in-out;
}

.post-social-sharing ul li:hover a i {
  color: var(--secondry-color);
}

/************************************/
/***      21. Page Team css 	  ***/
/************************************/

.page-header.team-page-header::after {
  background-image: url("../images/page-header-bg-shape-6.svg");
}

.page-team {
  background-color: var(--white-color);
  padding: 100px 0 120px;
}

/************************************/
/***      22. Team Single css 	  ***/
/************************************/

.page-header.team-page-single-header::after {
  background-image: url("../images/page-header-bg-shape-1.svg");
}

.page-team-single {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.page-team-single .team-member-image figure {
  width: 100%;
}

.page-team-single .team-member-image img {
  width: 100%;
  border-radius: 10px;
  aspect-ratio: 1 / 1.15;
  object-fit: cover;
}

.team-member-details {
  margin-left: 50px;
}

.member-detail-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--secondary-color);
}

.member-detail-header .member-detail-title h2 {
  font-size: 1.875em;
  /* 30px */
  margin-bottom: 0.625em;
}

.member-detail-header .member-detail-title p {
  font-size: 1em;
  /* Default to inherit/scale with body */
  text-transform: capitalize;
  margin: 0;
}

.member-social-list ul {
  margin: 0;
  padding: 0;
}

.member-social-list ul li {
  display: inline-flex;
  margin-right: 10px;
}

.member-social-list ul li:last-child {
  margin-right: 0;
}

.member-social-list ul li a i {
  color: var(--primary-color);
  font-size: 20px;
  transition: all 0.3s ease-in-out;
}

.member-social-list ul li:hover a i {
  color: var(--text-color);
}

.member-detail-content {
  margin-bottom: 30px;
}

.member-detail-content p {
  margin: 0;
}

.member-detail-body {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.member-detail-body .member-detail-list-item {
  width: calc(50% - 20px);
  display: flex;
}

.member-detail-list-item .icon-box {
  position: relative;
  margin-right: 20px;
  padding: 0 10px 10px 0;
}

.member-detail-list-item .icon-box::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  background-color: var(--secondary-color);
  border-radius: 50%;
  width: 50px;
  height: 50px;
}

.member-detail-list-item .icon-box img {
  max-width: 45px;
  position: relative;
  top: 4px;
}

.member-detail-list-content {
  width: calc(100% - 75px);
}

.member-detail-list-content h3 {
  font-size: 1.5em;
  /* 24px */
  text-transform: capitalize;
  margin-bottom: 0.625em;
}

.member-detail-list-content p {
  font-size: 1.125em;
  /* 18px */
  margin: 0;
}

.about-icon-box-list.member-expertise {
  border-radius: 50px 50px 0 0;
  z-index: 0;
}

.about-icon-box-list.member-expertise .section-title {
  text-align: center;
}

.about-icon-box-list.member-expertise .section-title h3::before {
  color: var(--white-color);
}

.about-icon-box-list.member-expertise .section-title h3,
.about-icon-box-list.member-expertise .section-title h2 {
  color: var(--white-color);
}

.member-personal-info {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.member-info-list ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

.member-info-list ul li {
  position: relative;
  color: var(--primary-color);
  padding-left: 30px;
  margin-bottom: 15px;
}

.member-info-list ul li:last-child {
  margin-bottom: 0;
}

.member-info-list ul li:before {
  position: absolute;
  content: "\f058";
  font-family: "Font Awesome 6 Free";
  font-size: 20px;
  font-weight: 900;
  color: var(--primary-color);
  display: inline-block;
  line-height: normal;
  top: 3px;
  left: 0;
}

.member-working-hour {
  position: relative;
  background-color: var(--primary-color);
  /* Theme Color */
  border-radius: 10px;
  margin-left: 50px;
  overflow: hidden;
}

.member-working-hour-box {
  padding: 30px;
}

.member-working-hour::before {
  content: none;
  display: none;
}

.member-working-hour .section-title {
  position: relative;
  z-index: 1;
}

.member-working-hour .section-title h3::before {
  color: var(--white-color);
}

.member-working-hour .section-title h3,
.member-working-hour .section-title h2,
.member-working-hour .section-title p {
  color: var(--white-color);
}

.member-working-hour .section-title h2 {
  font-size: 36px;
}

.member-working-hour-list {
  position: relative;
  z-index: 1;
}

.member-working-hour-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.member-working-hour-list ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 15px;
}

.member-working-hour-list ul li:last-child {
  margin-bottom: 0;
}

.member-working-hour-list ul li h3 {
  font-size: 18px;
  text-transform: capitalize;
  color: var(--white-color);
}

.member-working-hour-list ul li span {
  border: 1px solid var(--white-color);
  width: 40%;
}

.member-working-hour-list ul li p {
  font-size: 18px;
  color: var(--white-color);
  margin: 0;
}

.member-working-history {
  background: var(--secondary-color);
  padding: 100px 0 150px;
}

.member-working-history .member-contact-form {
  background: var(--white-color);
  padding: 30px;
  border-radius: 10px;
  margin-right: 100px;
}

.member-contact-form .section-title {
  margin-bottom: 30px;
}

.member-contact-form .form-control {
  padding: 13px 20px;
  background-color: var(--secondary-color);
  color: var(--primary-color);
  box-shadow: none;
  border: none;
  border-radius: 10px;
}

.member-contact-form .form-control::placeholder {
  color: var(--text-color);
  text-transform: capitalize;
}

.member-contact-form form button {
  text-align: center;
}

.member-working-history-content .working-history-item {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--white-color);
}

.member-working-history-content .working-history-item:last-child {
  margin-bottom: 0px;
  padding-bottom: 0px;
  border-bottom: none;
}

.working-history-item .working-history-content h3 {
  font-size: 1.375em;
  /* 22px */
  margin-bottom: 15px;
}

.working-history-item .working-history-content h3 span {
  color: var(--text-color);
}

.working-history-item .working-history-content p {
  margin: 0;
}

.member-winning-award {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.member-winning-award .section-title {
  text-align: center;
}

.winning-award-image img {
  width: 100%;
  max-width: 230px;
}

/************************************/
/***     23. Video Gallery css    ***/
/************************************/

.page-header.Video-page-header::after {
  background-image: url("../images/page-header-bg-shape-2.svg");
}

.page-video-gallery {
  background: var(--white-color);
  padding: 100px 0 120px;
}

.video-gallery-image {
  border-radius: 10px;
  overflow: hidden;
  height: calc(100% - 30px);
  margin-bottom: 30px;
}

.video-gallery-image a {
  position: relative;
  cursor: pointer;
  border-radius: 10px;
  display: block;
  /* Ensure it fills container */
}

/* ... existing focus ... */

.video-gallery-image a:focus-visible {
  outline: 4px solid var(--primary-color);
  outline-offset: 2px;
}

/* ... existing ::before ... */

.video-gallery-image a::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--black-color);
  border-radius: 10px;
  opacity: 0%;
  visibility: hidden;
  width: 100%;
  height: 100%;
  z-index: 1;
  transform: scale(0);
  transition: all 0.4s ease-in-out;
}

.video-gallery-image:hover a::before,
.video-gallery-image a:focus-visible::before {
  opacity: 50%;
  visibility: visible;
  transform: scale(1);
}

.video-gallery-image a::after {
  content: "\f04b";
  font-family: "Font Awesome 6 Free";
  position: absolute;
  top: 50%;
  left: 50%;
  /* Genuine Center */
  transform: translate(-50%, -50%);
  /* Genuine Center */
  width: 60px;
  height: 60px;
  font-size: 20px;
  font-weight: 900;
  background: var(--white-color);
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease-in-out;
}

.video-gallery-image:hover a::after,
.video-gallery-image a:focus-visible::after {
  opacity: 1;
  visibility: visible;
}

.video-gallery-image img {
  width: 100%;
  /* Force fill */
  aspect-ratio: 1 / 0.86;
  object-fit: cover;
  border-radius: 10px;
}

.video-gallery-image figure {
  margin: 0;
  /* Reset figure margin */
}

/************************************/
/***      24. Page FAQs css       ***/
/************************************/

.page-header.faqs-page-header::after {
  background-image: url("../images/page-header-bg-shape-3.svg");
}

.page-faqs {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.page-faqs-images figure {
  display: block;
}

.page-faqs-images img {
  width: 100%;
  aspect-ratio: 1 / 1.31;
  object-fit: cover;
  border-radius: 10px;
}

/************************************/
/***    25. Contact Us Page css   ***/
/************************************/

.page-header.contact-page-header::after {
  background-image: url("../images/page-header-bg-shape-4.svg");
}

.page-contact-us {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.contact-information {
  margin-right: 30px;
}

.contact-information .section-title {
  margin-bottom: 20px;
}

.contact-info-list {
  margin-bottom: 40px;
}

.contact-info-list p {
  margin-bottom: 15px;
}

.contact-info-list p:last-child {
  margin-bottom: 0;
}

.contact-info-list .support-btn {
  background: url("../images/arrow-blue-readmore-btn.svg");
  background-repeat: no-repeat;
  background-position: right 15px center;
  /* Adjusted for padding */
  background-size: 14px auto;
  text-transform: capitalize;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding-right: 40px;
  /* Space for icon */
  padding-left: 10px;
  text-decoration: none;
  color: var(--primary-color);
}

/* Removed orphan properties */

.contact-info-list .support-btn:hover {
  color: var(--text-color);
  padding-right: 22px;
}

.contact-information-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
}

.contact-info-item {
  width: calc(50% - 15px);
}

.contact-info-item .icon-box {
  margin-bottom: 20px;
}

.contact-info-item .icon-box img {
  max-width: 30px;
}

.contact-info-content h3 {
  font-size: 22px;
  text-transform: capitalize;
  margin-bottom: 10px;
}

.contact-info-content p {
  margin: 0;
}

.contact-us-form {
  background: var(--primary-color);
  /* WCAG: Dark Blue High Contrast */
  border-radius: 10px;
  height: 100%;
  padding: 30px;
}

.contact-us-form .form-label,
.contact-us-form p,
.contact-us-form h2,
.contact-us-form .section-title h2,
.contact-us-form .text-anime-style-3 * {
  color: #ffffff !important;
  /* White labels/text on Dark BG */
}

/* Fix Asterisk Contrast on Dark BG */
.contact-us-form .text-danger {
  color: #ff9999 !important;
  /* Light Red passes AA */
}

.contact-us-form .section-title h2 {
  font-size: 30px;
}

.contact-us-form .form-control {
  padding: 20px;
  font-size: 16px;
  background-color: var(--white-color);
  border: none;
  border-radius: 10px;
  color: var(--text-color);
  line-height: normal;
  box-shadow: none;
}

.contact-us-form .form-control:focus {
  outline: 2px solid var(--accent-color);
  outline-offset: 2px;
}

.contact-us-form .form-control::placeholder {
  color: var(--text-color);
  text-transform: capitalize;
}

.contact-form-btn {
  text-align: center;
}

.contact-form-btn .btn-default {
  background: var(--white-color);
}

.google-map {
  overflow: hidden;
}

.google-map .container-fluid {
  padding: 0;
}

.google-map-iframe {
  width: 100%;
  height: 700px;
  overflow: hidden;
}

.google-map-iframe iframe {
  width: 100%;
  height: 700px;
  filter: grayscale(100%);
  transition: all 0.3s ease-in-out;
}

.google-map-iframe iframe:hover {
  filter: grayscale(0);
}

.contact-faqs {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.contact-faqs-content {
  margin-right: 50px;
}

.contact-faqs-content .section-btn {
  text-align: left;
}

/*************************************/
/*** 26. Make Appointment Page css ***/
/*************************************/

.page-header.appointment-page-header::after {
  background-image: url("../images/page-header-bg-shape-5.svg");
}

.page-book-appointment {
  background: var(--white-color);
  padding: 100px 0 150px;
}

.page-book-appointment .section-title {
  width: 100%;
  max-width: 650px;
  margin: 0 auto;
  text-align: center;
}

.contact-us-form.appointment-form {
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
  background: transparent;
  padding: 0;
}

.contact-us-form.appointment-form .form-label {
  color: var(--primary-color) !important;
  /* Restore dark labels for white page */
}

.contact-us-form.appointment-form .form-control {
  background-color: var(--secondary-color);
}

.contact-us-form.appointment-form .btn-default.btn-highlighted {
  background: var(--primary-color);
}

.contact-us-form.appointment-form .btn-default.btn-highlighted:hover {
  background-color: var(--secondary-color);
}

/* WCAG Fix: On white appointment page, use dark red for asterisks */
.contact-us-form.appointment-form .text-danger {
  color: #d32f2f !important;
  /* 4.6:1 against white */
}

/* WCAG Fix: Required-note paragraph - must be dark on the white appointment page.
   The parent .contact-us-form rule sets color: #fff !important (designed for dark bg),
   but the appointment form has transparent/white bg, so we need higher specificity. */
.contact-us-form.appointment-form p.required-note {
  color: #023047 !important; /* primary-color, dark navy = 10:1+ contrast on white */
}

.booking-process {
  position: relative;
  background-color: var(--white-color);
  border-radius: 50px 50px 0 0;
  margin-top: -50px;
  padding: 100px 0 150px;
}

.booking-process .section-title {
  text-align: center;
  width: 100%;
  max-width: 750px;
  margin: 0 auto;
}

.booking-process-box {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 30px;
}

.booking-process-item {
  position: relative;
  width: calc(25% - 22.5px);
  text-align: center;
  z-index: 1;
}

.booking-process-item::before {
  content: "";
  position: absolute;
  top: calc(50% - 30px);
  left: 0;
  right: 0;
  transform: translateY(-50%);
  border: 1px solid var(--secondary-color);
  width: 115%;
  z-index: -1;
}

.booking-process-item:nth-child(4n + 4):before {
  width: 100%;
}

.booking-process-no {
  margin-bottom: 10px;
}

.booking-process-no h3 {
  font-family: var(--default-font);
  font-size: 26px;
  font-weight: 600;
  color: var(--primary-color);
  /* WCAG: Switched to Dark Blue for contrast */
}

.booking-process-item .icon-box {
  background-color: var(--primary-color);
  border-radius: 50%;
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  margin-bottom: 20px;
}

.booking-process-item:nth-last-of-type(odd) .icon-box {
  background-color: var(--secondary-color);
}

.booking-process-item .icon-box img {
  max-width: 26px;
}

.booking-process-item:nth-last-of-type(even) .icon-box img {
  filter: brightness(0) invert(1);
}

.booking-process-content h3 {
  font-size: 20px;
  text-transform: capitalize;
  margin-bottom: 15px;
}

.booking-process-content p {
  margin: 0;
}

/************************************/
/*** 	   27. 404 Page css       ***/
/************************************/

.page-header.error-page-header::after {
  background-image: url("../images/page-header-bg-shape-6.svg");
}

.error-page {
  background-color: var(--white-color);
  padding: 100px 0 150px;
}

.error-page-image {
  text-align: center;
  margin-bottom: 30px;
}

.error-page-image img {
  max-width: 50%;
}

.error-page .error-page-content {
  text-align: center;
}

.error-page-content-heading {
  margin-bottom: 30px;
}

.error-page-content-heading h2 {
  font-size: 54px;
}

.error-page-content-body p {
  margin-bottom: 30px;
}

/************************************/
/***     28. responsive css       ***/
/************************************/

@media only screen and (max-width: 1366px) {
  .our-services::before {
    top: -270px;
  }

  .page-about-us {
    padding-left: 0;
  }

  .page-about-us .container-fluid {
    padding: 0 15px;
  }
}

@media only screen and (max-width: 1024px) {
  .navbar {
    padding: 20px 0px;
  }

  .main-menu ul li {
    margin-left: 0;
  }

  .our-services::before {
    top: -200px;
  }
}

@media only screen and (max-width: 991px) {
  #magic-cursor {
    display: none !important;
  }

  .slicknav_nav li,
  .slicknav_nav ul {
    display: block;
  }

  .responsive-menu,
  .navbar-toggle {
    display: block;
  }

  .btn-default span {
    font-size: 16px;
    padding: 14px 18px;
  }

  .bg-radius-section {
    border-radius: 30px 30px 0 0;
  }

  .section-row {
    margin-bottom: 40px;
  }

  .section-title {
    margin-bottom: 30px;
  }

  .section-title h1 {
    font-size: 56px;
  }

  .section-title h2 {
    font-size: 42px;
  }

  .section-title p {
    margin-top: 15px;
  }

  .section-btn {
    text-align: left;
    margin-top: 15px;
  }

  .section-title-content {
    text-align: left;
    margin-top: 20px;
  }

  /* Mobile topbar styles moved to topbar-extracted.css */

  .hero {
    padding: 150px 0 100px;
  }

  .hero.hero-slider-layout .hero-slide {
    padding: 150px 0;
  }

  .hero.hero-slider-layout .hero-pagination {
    bottom: 80px;
  }

  .hero-content {
    max-width: 100%;
  }

  .hero-content .section-title p {
    font-size: 16px;
  }

  .our-benefits {
    padding: 50px 0 80px;
  }

  .benefits-item {
    margin-bottom: 20px;
  }

  .our-benefits .col-lg-4:nth-child(2n + 2) .benefits-item {
    border: none;
    padding-right: 0;
  }

  .benefits-content h3 {
    font-size: 20px;
  }

  .about-us {
    padding: 50px 0 100px;
  }

  .about-content {
    margin-bottom: 30px;
  }

  .about-content-body {
    margin-bottom: 30px;
  }

  .about-list-item .icon-box {
    margin-right: 15px;
  }

  .about-list-item .icon-box img {
    max-width: 34px;
    padding: 0 5px 5px 0;
  }

  /* Fix for Service Section Overlap */
  .our-services {
    position: relative;
    z-index: 5 !important;
  }

  .about-list-content {
    width: calc(100% - 49px);
  }

  .about-us-images {
    max-width: 450px;
    margin: 0 auto;
  }

  .about-circle-motionis {
    width: 180px;
    height: 180px;
    margin-top: -90px;
    /* Half of 180px */
    margin-left: -90px;
    /* Half of 180px */
  }

  .about-us-images .about-circle-motionis img {
    max-width: 70px;
  }

  .our-services {
    padding: 50px 0;
  }

  .our-services::before {
    top: -155px;
    background-size: 100% auto;
  }

  .our-services::after {
    background-size: 50% auto;
  }

  .service-item .icon-box {
    left: 20px;
    width: 70px;
    height: 70px;
  }

  .service-item .icon-box img {
    max-width: 46px;
  }

  .service-body {
    bottom: 20px;
    left: 20px;
  }

  .service-content h3 {
    font-size: 1.25em;
    /* 20px */
    margin-bottom: 15px;
  }

  .service-btn a {
    width: 44px;
    /* Kept large for touch target compliance */
    height: 44px;
  }

  .service-btn a img {
    max-width: 16px;
    /* Slightly larger icon for better visibility */
  }

  .more-service-btn {
    margin-top: 10px;
  }

  .more-service-btn a {
    font-size: 22px;
  }

  .more-service-btn a i {
    font-size: 18px;
    margin-left: 15px;
  }

  .bg-section {
    margin-top: -250px;
  }

  .care-rehabilitation {
    padding: 50px 0 70px;
  }

  .rehab-benefits-item {
    padding: 30px 15px;
  }

  .rehab-benefits-item .icon-box img {
    max-width: 44px;
  }

  .rehab-benefits-content h3 {
    font-size: 16px;
  }

  .quality-treatment {
    padding: 50px 0 100px;
    overflow: hidden;
  }

  .quality-treatment::before {
    background-size: 20% auto;
  }

  .quality-treatment::after {
    width: 130px;
  }

  .quality-treatment-body {
    margin-bottom: 30px;
  }

  .how-it-work {
    padding: 50px 0 100px;
  }

  .how-work-images {
    background-position: right -30px bottom;
    padding: 0 0px 40px 0;
  }

  .how-work-img-1 img {
    aspect-ratio: 1 / 0.95;
  }

  .how-work-img-2 img {
    aspect-ratio: 1 / 0.78;
  }

  .how-work-img-3 img {
    aspect-ratio: 1 / 1.61;
  }

  .how-work-img-4 img {
    aspect-ratio: 1 / 0.5;
  }

  .how-work-content {
    margin-bottom: 30px;
  }

  .how-work-accordion .accordion-item .accordion-header .icon-box {
    left: 20px;
    width: 50px;
    height: 50px;
  }

  .how-work-accordion .accordion-item .accordion-header .icon-box img {
    max-width: 30px;
  }

  .how-work-accordion .accordion-header .accordion-button {
    font-size: 20px;
    padding: 15px 20px 15px 90px;
  }

  .how-work-accordion .accordion-button:not(.collapsed) {
    padding: 30px 20px 30px 90px;
  }

  .how-work-accordion .accordion-item .accordion-body {
    background-color: var(--primary-color);
    padding: 0px 20px 20px 20px;
  }

  .how-work-accordion .accordion-item .accordion-button::after,
  .how-work-accordion .accordion-item .accordion-button.collapsed::after {
    font-size: 18px;
    width: 18px;
    height: 18px;
    transform: translate(-20px, -50%);
  }

  .how-work-accordion .accordion-item .accordion-button.collapsed::after {
    transform: translate(-20px, -50%) rotate(-180deg);
  }

  .our-pricing {
    padding: 50px 0 70px;
  }

  .our-pricing-content {
    margin-bottom: 60px;
  }

  .pricing-item {
    padding: 20px;
  }

  .our-pricing::before {
    background: linear-gradient(
      0deg,
      rgba(2, 48, 71, 0) 30.13%,
      rgba(0, 0, 0, 0.9) 100.06%,
      #021c29 100.7%
    );
  }

  .pricing-title h3 {
    font-size: 24px;
  }

  .pricing-btn a {
    font-size: 18px;
    padding-right: 40px;
  }

  .pricing-btn a::before {
    background-size: 14px auto;
    width: 30px;
    height: 30px;
  }

  .therapist-team {
    padding: 50px 0 70px;
  }

  .team-image img {
    aspect-ratio: 1 / 1.1;
  }

  .team-content h3 {
    font-size: 1.25em;
    /* 20px */
  }

  .our-testimonial {
    padding: 50px 0 100px;
    background-position: bottom right;
  }

  .testimonial-content {
    margin-bottom: 30px;
  }

  .testimonial-item {
    padding: 20px;
  }

  .testimonial-header .testimonial-rating {
    margin-bottom: 15px;
  }

  .testimonial-content {
    margin-bottom: 20px;
  }

  .testimonial-btn {
    justify-content: center;
    margin-top: 30px;
  }

  .our-blog {
    padding: 50px 0 70px;
  }

  .post-featured-image {
    margin-bottom: 20px;
  }

  .article-meta {
    margin-bottom: 15px;
  }

  .post-item-body h2 {
    font-size: 20px;
  }

  .post-item-body {
    margin-bottom: 15px;
  }

  footer.main-footer {
    padding: 50px 0;
    background-size: auto;
  }

  .footer-motionis {
    margin-bottom: 30px;
  }

  .about-footer {
    padding-bottom: 30px;
    margin-bottom: 30px;
  }

  .about-footer-content p {
    margin-right: 0px;
  }

  .about-footer-list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 40px;
    column-gap: 30px;
  }

  .footer-links {
    width: calc(45% - 15px);
  }

  .footer-links ul li {
    margin-right: 12px;
  }

  .footer-links.service-links {
    width: calc(55% - 15px);
  }

  .footer-links.social-links {
    width: calc(25% - 15px);
    text-align: left;
  }

  .footer-links.working-links {
    width: calc(75% - 15px);
  }

  .footer-links.footer-contact-details {
    width: 100%;
  }

  .page-header {
    padding: 150px 0;
  }

  .page-header::after {
    background-size: 50% auto;
  }

  .page-header-box h1 {
    font-size: 56px;
  }

  .page-header-box ol li.breadcrumb-item {
    font-size: 16px;
  }

  .page-about-us {
    padding: 110px 0 60px !important;
  }

  .page-about-image {
    position: relative !important;
    padding: 20px 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
  }

  .page-about-img-1 {
    display: none !important;
  }

  .page-about-img-2 {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 450px !important;
    margin: 0 auto !important;
  }

  .page-about-content {
    padding-right: 0px;
    margin-bottom: 30px;
  }

  .page-about-content-body {
    margin-bottom: 30px;
  }

  .page-about-content-item {
    padding: 15px;
  }

  .page-about-content-box {
    padding: 20px;
  }

  .page-about-box-title {
    margin-bottom: 15px;
  }

  .page-about-img-1 img {
    aspect-ratio: 1 / 0.6;
  }

  .page-about-img-2 {
    left: auto;
    right: 0;
    text-align: right;
    z-index: 2;
    max-width: 30%;
  }

  .about-testimonial-box {
    width: 75%;
    padding: 15px 15px 15px 15px;
    border-radius: 30px 0 0 0;
    z-index: 1;
  }

  .about-testimonial-item p {
    font-size: 20px;
  }

  .about-testimonial-btn {
    transform: translateX(-20%);
  }

  .about-icon-box-list {
    padding: 50px 0 70px;
    border-radius: 0 30px 0 0;
    z-index: 2;
  }

  .about-icon-list-item .icon-box {
    margin-bottom: 15px;
  }

  .about-icon-list-item .icon-box img {
    max-width: 60px;
  }

  .about-icon-list-content h3 {
    font-size: 20px;
  }

  .our-rehabilitation {
    padding: 50px 0 70px;
    z-index: 2;
  }

  .therapy-rehabilitation-header {
    padding: 20px;
  }

  .therapy-rehabilitation-content {
    margin-bottom: 20px;
  }

  .therapy-rehabilitation-btn a {
    width: 44px;
    /* Kept large for touch target compliance */
    height: 44px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
  }

  .therapy-rehabilitation-title {
    width: calc(100% - 60px);
  }

  .therapy-rehabilitation-title h3 {
    font-size: 24px;
  }

  .therapy-rehabilitation-body {
    padding: 20px;
  }

  .therapy-rehabilitation-list {
    padding: 15px;
  }

  .therapy-process {
    padding: 50px 0 100px;
    background-size: 50% auto;
    z-index: 2;
  }

  .therapy-process-item:hover {
    transform: translateX(0px);
  }

  .therapy-process-item .icon-box {
    width: 80px;
    height: 80px;
    margin-right: 20px;
  }

  .therapy-process-item .icon-box img {
    max-width: 40px;
  }

  .therapy-process-item-content {
    width: calc(100% - 100px);
  }

  .therapy-process-content {
    margin-right: 0px;
    margin-bottom: 30px;
  }

  .our-video {
    padding: 50px 0 100px;
    z-index: 2;
  }

  .our-video-content {
    margin-right: 0;
    margin-bottom: 30px;
  }

  .video-play-button img {
    max-width: 130px;
  }

  .process-steps {
    background-position: center center;
    background-size: 140% auto;
    padding: 50px 0 100px;
  }

  .process-steps-line {
    padding-top: 70px;
  }

  .process-step-box {
    padding-top: 60px;
  }

  .process-step-no h2 {
    font-size: 94px;
  }

  .process-step-content h3 {
    font-size: 20px;
  }

  .process-step-content p {
    font-size: 14px;
  }

  .page-about-faqs {
    padding: 50px 0 100px;
  }

  .about-faq-section .accordion-header .accordion-button {
    padding: 15px 45px 15px 15px;
  }

  .about-faq-section .accordion-item .accordion-body {
    padding: 15px 45px 15px 15px;
  }

  .about-faq-section .accordion-item .accordion-button::after,
  .about-faq-section .accordion-item .accordion-button.collapsed::after {
    right: 15px;
  }

  .cta-box {
    padding: 50px 0 100px;
  }

  .service-process {
    padding: 50px 0 100px;
  }

  .service-process-list {
    margin-bottom: 30px;
  }

  .service-process-list .service-process-list-item {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }

  .service-process-list-item .service-process-title h3 {
    font-size: 20px;
  }

  .service-process-img {
    text-align: center;
  }

  .service-process-box-content {
    text-align: left;
    margin-bottom: 30px;
  }

  .page-services {
    padding: 50px 0 70px;
  }

  .page-service-single {
    padding: 50px 0 100px;
  }

  .service-sidebar {
    position: initial;
    margin-bottom: 30px;
  }

  .service-catagery-list {
    padding: 20px;
    margin-bottom: 30px;
  }

  .service-catagery-list h3 {
    font-size: 26px;
    margin-bottom: 20px;
  }

  .service-catagery-list ul li a {
    padding: 15px 35px 15px 15px;
  }

  .service-catagery-list ul li a::after {
    transform: translate(-15px, -50%);
  }

  .working-hours {
    padding: 20px;
    margin-bottom: 30px;
  }

  .working-hours h3 {
    font-size: 26px;
    margin-bottom: 20px;
  }

  .working-hours ul li a {
    padding: 15px 15px 15px 45px;
  }

  .working-hours ul li a::after {
    transform: translate(15px, -50%);
    font-size: 18px;
    width: 18px;
    height: 18px;
  }

  .sidebar-cta-image img {
    aspect-ratio: 1 / 0.5;
  }

  .sidebar-cta-item .icon-box {
    margin-bottom: 20px;
  }

  .sidebar-cta-content h3 {
    font-size: 26px;
    margin-bottom: 10px;
  }

  .sidebar-cta-content p {
    font-size: 20px;
  }

  .service-entry {
    margin-bottom: 30px;
  }

  .service-entry h2 {
    font-size: 32px;
  }

  .service-entry ul li {
    padding-left: 25px;
  }

  .service-entry ul li:before {
    background-size: 6px auto;
    width: 18px;
    height: 18px;
  }

  .page-blog {
    padding: 50px 0 100px;
  }

  .page-blog .blog-item {
    height: calc(100% - 30px);
    margin-bottom: 30px;
  }

  .page-pagination {
    margin-top: 10px;
  }

  .page-single-post {
    padding: 50px 0 100px;
  }

  .post-image {
    margin-bottom: 20px;
  }

  .post-entry blockquote {
    background-position: left 30px top 35px;
    padding: 25px 25px 25px 90px;
    margin-bottom: 20px;
  }

  .post-entry blockquote p {
    font-size: 18px;
  }

  .post-entry h2 {
    font-size: 42px;
  }

  .post-entry ul li {
    font-size: 16px;
  }

  .post-tag-links {
    padding: 0 0px;
  }

  .post-tags {
    margin-bottom: 10px;
  }

  .post-social-sharing ul {
    text-align: left;
  }

  .post-tags .tag-links a {
    font-size: 16px;
    padding: 8px 15px;
  }

  .page-team {
    padding: 50px 0 70px;
  }

  .page-team-single {
    padding: 50px 0 100px;
  }

  .team-member-image {
    margin-bottom: 30px;
  }

  .team-member-details {
    margin-left: 0px;
  }

  .member-detail-header {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }

  .member-detail-header .member-detail-title h2 {
    font-size: 1.625em;
    /* 26px */
  }

  .member-detail-content {
    margin-bottom: 20px;
  }

  .page-team-single .team-member-image img {
    aspect-ratio: 1 / 0.85;
  }

  .member-detail-body {
    gap: 30px;
  }

  .member-detail-body .member-detail-list-item {
    width: calc(50% - 15px);
  }

  .member-detail-list-item .icon-box {
    margin-right: 15px;
  }

  .member-detail-list-item .icon-box::before {
    width: 40px;
    height: 40px;
  }

  .member-detail-list-item .icon-box img {
    max-width: 40px;
  }

  .member-detail-list-content {
    width: calc(100% - 65px);
  }

  .member-detail-list-content h3 {
    font-size: 22px;
    margin-bottom: 5px;
  }

  .member-detail-list-content p {
    font-size: 16px;
  }

  .about-icon-box-list.member-expertise {
    border-radius: 30px 30px 0 0;
  }

  .member-personal-info {
    padding: 50px 0 100px;
  }

  .member-info-content {
    margin-bottom: 30px;
  }

  .member-working-hour {
    margin-left: 0;
  }

  .member-working-hour-box {
    padding: 20px;
  }

  .member-working-hour .section-title h2 {
    font-size: 32px;
  }

  .member-working-hour-list ul li span {
    width: 55%;
  }

  .member-working-history {
    padding: 50px 0 100px;
  }

  .member-working-history .member-contact-form {
    padding: 20px;
    margin-right: 0;
    margin-bottom: 30px;
  }

  .member-contact-form .form-control {
    padding: 10px 20px;
  }

  .member-working-history-content .working-history-item {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }

  .working-history-item .working-history-content h3 {
    font-size: 1.25em;
    /* 20px */
    margin-bottom: 10px;
  }

  .member-winning-award {
    padding: 50px 0 100px;
  }

  .page-video-gallery {
    padding: 50px 0 70px;
  }

  .video-gallery-image img {
    aspect-ratio: 1 / 0.8;
  }

  .page-faqs {
    padding: 50px 0 100px;
  }

  .page-faqs-images {
    margin-bottom: 30px;
  }

  .page-faqs-images img {
    aspect-ratio: 1 / 0.95;
  }

  .page-contact-us {
    padding: 50px 0 100px;
  }

  .contact-information {
    margin-right: 0px;
    margin-bottom: 30px;
  }

  .contact-info-list {
    margin-bottom: 30px;
  }

  .contact-info-item .icon-box img {
    max-width: 26px;
  }

  .contact-info-item .icon-box {
    margin-bottom: 15px;
  }

  .contact-info-content h3 {
    font-size: 20px;
    margin-bottom: 5px;
  }

  .contact-us-form {
    padding: 20px;
  }

  .contact-us-form .section-title h2 {
    font-size: 26px;
  }

  .contact-us-form .form-control {
    padding: 15px;
  }

  .google-map-iframe iframe,
  .google-map-iframe {
    height: 500px;
  }

  .contact-faqs {
    padding: 50px 0 100px;
  }

  .contact-faqs-content {
    margin-right: 0px;
    margin-bottom: 30px;
  }

  .page-book-appointment {
    padding: 50px 0 100px;
  }

  .booking-process {
    padding: 50px 0 100px;
  }

  .booking-process-item::before {
    top: calc(50% - 65px);
    width: 120%;
  }

  .booking-process-no h3 {
    font-size: 24px;
  }

  .booking-process-item .icon-box {
    margin-bottom: 15px;
  }

  .error-page {
    padding: 50px 0 100px;
  }

  .error-page-image {
    margin-bottom: 20px;
  }

  .error-page-content-heading {
    margin-bottom: 20px;
  }

  .error-page-content-heading h2 {
    font-size: 42px;
  }
}

@media only screen and (max-width: 767px) {
  .section-row {
    margin-bottom: 30px;
  }

  .section-title {
    margin-bottom: 20px;
  }

  .section-title h1 {
    font-size: 40px;
  }

  .section-title h2 {
    font-size: 30px;
  }

  /* Mobile topbar responsive styles moved to topbar-extracted.css */

  .hero-content-body .btn-default.btn-highlighted {
    margin: 15px 0 0 0;
  }

  .benefits-item {
    border: none;
    padding-right: 0;
  }

  .benefits-content h3 {
    font-size: 18px;
  }

  .about-content-list {
    margin-bottom: 30px;
  }

  .about-circle-motionis {
    width: 140px;
    height: 140px;
    margin-top: -70px;
    /* Half of 140px */
    margin-left: -70px;
    /* Half of 140px */
  }

  .about-us-images .about-circle-motionis img {
    max-width: 60px;
  }

  .our-services::before {
    display: none;
  }

  .service-item .icon-box {
    width: 60px;
    height: 60px;
  }

  .service-item .icon-box img {
    max-width: 40px;
  }

  .service-content h3 {
    font-size: 18px;
    margin-bottom: 10px;
  }

  .more-service-btn a {
    font-size: 18px;
  }

  .bg-section {
    padding: 100px 0;
    margin-top: -160px;
  }

  .rehab-benefits-item {
    padding: 20px 15px;
  }

  .rehab-benefits-item .icon-box {
    margin-bottom: 15px;
  }

  .quality-treatment {
    background: var(--secondary-color);
  }

  .quality-treatment::before {
    display: none;
  }

  .quality-treatment::after {
    display: none;
  }

  .how-work-image {
    max-width: 100%;
    padding: 0;
    margin-bottom: 30px;
  }

  .how-work-image::before {
    background-size: 90% auto;
    margin: 0;
  }

  .how-work-accordion .accordion-item .accordion-header .icon-box {
    left: 15px;
    width: 40px;
    height: 40px;
  }

  .how-work-accordion .accordion-item .accordion-header .icon-box img {
    max-width: 22px;
  }

  .how-work-accordion .accordion-header .accordion-button {
    font-size: 18px;
    padding: 15px 15px 15px 70px;
  }

  .how-work-accordion .accordion-button:not(.collapsed) {
    padding: 20px 15px 20px 70px;
  }

  .how-work-accordion .accordion-item .accordion-body {
    padding: 0px 15px 15px 15px;
  }

  .how-work-accordion .accordion-item .accordion-button::after,
  .how-work-accordion .accordion-item .accordion-button.collapsed::after {
    font-size: 16px;
    width: 16px;
    height: 16px;
    transform: translate(-15px, -50%);
  }

  .how-work-accordion .accordion-item .accordion-button.collapsed::after {
    transform: translate(-15px, -50%) rotate(-180deg);
  }

  .how-work-accordion .accordion-item .accordion-body p {
    font-size: 14px;
  }

  footer.main-footer {
    padding: 50px 0 50px;
  }

  .about-footer-content h3 {
    font-size: 20px;
    margin-bottom: 20px;
  }

  .footer-links ul li {
    display: block;
    margin-right: 0px;
    margin-bottom: 10px;
  }

  .footer-links ul li:last-child {
    margin-bottom: 0;
  }

  .footer-links.social-links {
    width: 100%;
  }

  .footer-links.working-links {
    width: 100%;
  }

  .footer-links.social-links ul li {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 0;
  }

  .footer-links.social-links ul li:last-child {
    margin-right: 0;
  }

  .footer-contact-box {
    display: block;
  }

  .footer-info-box {
    margin-right: 0;
    margin-bottom: 10px;
  }

  .footer-info-box:last-child {
    margin-bottom: 0;
  }

  .footer-terms-condition ul li {
    display: inline-block;
    margin-right: 10px;
    margin-bottom: 0px;
  }

  .page-header-box h1 {
    font-size: 40px;
  }

  .page-about-content-list {
    margin-bottom: 30px;
  }

  .page-about-box-title h3 {
    font-size: 18px;
  }

  .page-about-body-content {
    margin-top: 20px;
  }

  .page-about-img-2 {
    position: relative;
    max-width: 100%;
    margin-top: -100px;
    z-index: 1;
  }

  .about-testimonial-box {
    width: 100%;
    background: linear-gradient(0deg, #10455f 9.97%, #023047 100%);
    border-radius: 30px 30px 0 0;
    text-align: center;
    padding: 20px 20px 70px;
  }

  .about-testimonial-item p {
    font-size: 18px;
  }

  .about-testimonial-btn {
    position: relative;
    transform: translateX(0%);
    justify-content: center;
    margin-top: 15px;
  }

  .about-icon-box-list {
    padding: 50px 0 70px;
    border-radius: 30px 30px 0 0;
    margin-top: -95px;
    z-index: 2;
  }

  .about-icon-list-item .icon-box::before {
    bottom: -5px;
    right: -5px;
  }

  .about-icon-list-item .icon-box img {
    max-width: 50px;
  }

  .about-icon-list-content h3 {
    font-size: 18px;
  }

  .therapy-rehabilitation-title h3 {
    font-size: 22px;
  }

  .therapy-process-item {
    display: block;
    text-align: center;
    padding: 15px;
  }

  .therapy-process-item .icon-box {
    width: 80px;
    height: 80px;
    margin: 0 auto;
    margin-bottom: 20px;
  }

  .therapy-process-item-content {
    width: 100%;
  }

  .therapy-process-item-content h3 {
    font-size: 1.25em;
    /* 20px */
  }

  .therapy-process-img-1 {
    width: 100%;
    padding: 55px 0;
  }

  .therapy-process-img-2 img {
    max-width: 200px;
    aspect-ratio: 1 / 1.01;
  }

  .therapy-process-img-3 img {
    max-width: 200px;
    aspect-ratio: 1 / 0.9;
  }

  .our-video::after {
    width: 100%;
  }

  .our-video::before {
    background-position: center center;
    width: 100%;
  }

  .video-play-button a img {
    max-width: 140px;
  }

  .process-steps {
    background-image: none;
  }

  .process-steps-line {
    padding-top: 0px;
  }

  .process-steps .col-lg-3:nth-last-child(even) .process-step-box {
    margin-top: 0px;
  }

  .process-step-box {
    padding-top: 50px;
    margin-bottom: 30px;
  }

  .process-steps .col-lg-3:last-child .process-step-box {
    margin-bottom: 0;
  }

  .process-step-no h2 {
    font-size: 74px;
  }

  .process-step-content h3 {
    font-size: 18px;
    margin-bottom: 5px;
  }

  .about-faq-section .accordion-header .accordion-button {
    font-size: 18px;
  }

  .about-faq-section .accordion-item .accordion-button::after,
  .about-faq-section .accordion-item .accordion-button.collapsed::after {
    font-size: 18px;
  }

  .service-process-list {
    margin-bottom: 0px;
  }

  .about-faq-section .accordion-item .accordion-body {
    padding: 15px;
  }

  .service-process-list-item .service-process-content-body {
    margin-bottom: 10px;
  }

  .service-process-list-item .service-process-title h3 {
    font-size: 1.125em;
    /* 18px */
  }

  .service-process-list-item .service-process-btn a {
    width: 44px;
    height: 44px;
  }

  .service-process-list-item .service-process-btn img {
    max-width: 16px;
  }

  .service-process-img {
    margin-bottom: 30px;
  }

  .working-hours h3,
  .service-catagery-list h3 {
    font-size: 22px;
  }

  .sidebar-cta-image img {
    aspect-ratio: 1 / 0.95;
  }

  .sidebar-cta-item .icon-box {
    width: 90px;
    height: 90px;
  }

  .sidebar-cta-item .icon-box figure {
    width: 70px;
    height: 70px;
  }

  .sidebar-cta-item .icon-box figure img {
    max-width: 30px;
  }

  .sidebar-cta-content h3 {
    font-size: 22px;
  }

  .service-single-image img {
    aspect-ratio: 1 / 0.7;
  }

  .service-entry h2 {
    font-size: 28px;
    margin-bottom: 15px;
  }

  .service-entry p {
    margin-bottom: 15px;
  }

  .service-entry ul {
    gap: 15px;
  }

  .service-entry ul li {
    width: 100%;
  }

  .post-image figure,
  .post-image img {
    aspect-ratio: 1 / 0.8;
  }

  .post-entry blockquote {
    background-position: left 20px top 20px;
    background-size: 35px;
    padding: 55px 20px 20px 20px;
  }

  .post-entry h2 {
    font-size: 30px;
  }

  .tag-links {
    font-size: 20px;
  }

  .page-team-single .team-member-image img {
    aspect-ratio: 1 / 1.15;
  }

  .member-detail-header .member-detail-title h2 {
    font-size: 22px;
  }

  .member-detail-body {
    gap: 20px;
  }

  .member-detail-body .member-detail-list-item {
    width: 100%;
  }

  .about-icon-box-list.member-expertise {
    margin-top: -50px;
  }

  .member-working-hour .section-title h2 {
    font-size: 28px;
  }

  .member-working-hour-list ul li {
    justify-content: start;
  }

  .member-working-hour-list ul li span {
    display: none;
  }

  .member-working-hour-list ul li h3 {
    font-size: 16px;
    margin-right: 20px;
  }

  .member-working-hour-list ul li p {
    font-size: 16px;
  }

  .contact-information-box {
    gap: 20px;
  }

  .contact-info-item {
    width: calc(50% - 10px);
  }

  .contact-info-item .icon-box img {
    max-width: 22px;
  }

  .contact-info-content p {
    font-size: 14px;
  }

  .contact-us-form .section-title h2 {
    font-size: 22px;
  }

  .google-map-iframe iframe,
  .google-map-iframe {
    height: 400px;
  }

  .booking-process-item {
    width: calc(50% - 15px);
  }

  .booking-process-item::before {
    display: none;
  }

  .booking-process-content h3 {
    margin-bottom: 10px;
  }

  .error-page-image img {
    max-width: 100%;
  }

  .error-page-content-heading h2 {
    font-size: 30px;
  }
}

/* =========================================
   WCAG 2.2 TARGET SIZE COMPLIANCE (Global)
   ========================================= */

/* Ensure all interactive elements have a minimum size of 44x44px */
button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.btn,
.button,
.slicknav_btn,
.testimonial-button-prev,
.testimonial-button-next,
.owl-nav button,
.swiper-button-prev,
.swiper-button-next,
.social-icon,
.icon-btn,
[role="button"] {
  min-width: 44px;
  min-height: 44px;
}

/* Ensure form inputs are tall enough */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="search"],
input[type="number"],
input[type="url"],
input[type="date"],
select,
textarea {
  min-height: 44px;
}

/* Ensure links in lists have separation */
.pagination li a,
.pagination li span {
  min-width: 44px;
  min-height: 44px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* =========================================
   WCAG 2.2 VIDEO PLAY BUTTON FOCUS FIX
   ========================================= */

/* 1. Ensure the container is visible and handles layout correctly */
.video-play-button {
  overflow: visible !important;
  position: relative;
  z-index: 2;
  /* Ensure it remains block-level to fill width and center content */
  display: block;
  /* Cramp the width to fit content and center it to prevent shifts */
  width: fit-content;
  margin: 0 auto;
}

/* 2. Ensure anchor is visible and respects box model */
.video-play-button a.popup-video {
  overflow: visible !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: inline-block !important;
  /* Allows proper outline rendering */
}

/* 3. Anchor Focus State - Prevent clipping but preserve transforms */
.video-play-button a.popup-video:focus,
.video-play-button a.popup-video:focus-visible {
  opacity: 1 !important;
  visibility: visible !important;
  clip: auto;
  clip-path: none;
  /* Do NOT reset transform: none here or it might shift if centered via transform */
}

/* 4. Image Focus State - Force Visibility without stopping animation */
.video-play-button a.popup-video:focus img,
.video-play-button a.popup-video:focus-visible img {
  opacity: 1 !important;
  visibility: visible !important;
  display: block !important;
  /* Do NOT reset transform: none here to allow rotation animation to continue */
}

/* 5. Focus Ring Customization - Circular and Clear */
.video-play-button a.popup-video:focus-visible {
  border-radius: 50%;
  outline: 4px solid #ffffff !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 6px #023047 !important;
  /* Ring for contrast */
  z-index: 100 !important;
}

/* =========================================
   WCAG 2.2 ACCESSIBILITY FIXES - ABOUT PAGE
   ========================================= */

/* Ensure the "The Best in Physiotherapy Care" heading scales with text resize tool */
/* Using em allows it to scale with body font-size adjustments from accessibility widget */
.page-about-box-title h3 {
  font-size: 1.875em;
  /* 30px relative to base */
  line-height: 1.2;
  margin-bottom: 20px;
  word-wrap: break-word;
  overflow-wrap: break-word;
  /* Ensure long words wrap */
  word-break: break-word;
  hyphens: auto;
  height: auto;
  /* Ensure it grows vertically */
}

/* Ensure container grows with text */
.page-about-content-box {
  height: auto;
  min-height: min-content;
}

/* Ensure list items and text also use relative units for scaling if not already */
.page-about-box-list ul li {
  font-size: 1.125em;
  /* 18px relative to base */
  overflow-wrap: break-word;
  word-wrap: break-word;
  hyphens: auto;
}

.page-about-body-content p {
  font-size: 1em;
  /* 16px relative to base */
}

.more-service-btn {
  text-align: center;
  margin-top: 60px;
}

.centered-section-btn {
  text-align: center;
  margin-top: 60px;
}

/* --- Clinical Feature Card (Concept 1 - Medical Grade) --- */
.clinical-feature-card {
  position: relative;
  height: calc(100% - 30px);
  margin-bottom: 30px;
  /* Override default service-item behavior */
  background: transparent;
  z-index: 1;
}

.clinical-feature-card .service-item-image {
  display: none;
  /* We hide the standard image/bg container */
}

/* Redefined Service Body as Main Card Container */
.clinical-feature-card .service-body {
  position: relative;
  inset: auto;
  width: 100%;
  height: 100%;
  padding: 35px 30px;
  background-color: var(--primary-color);
  background-image: linear-gradient(135deg, var(--primary-color) 0%, #002e4d 100%);
  /* Subtle depth */
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
  /* Soft elevation */
  overflow: hidden;
  /* Contain inner elements */
}

/* 1. Header Zone */
.clinical-header {
  display: flex;
  align-items: center;
  margin-bottom: 25px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  /* Subtle divider */
  padding-bottom: 20px;
}

.clinical-feature-card .icon-badge {
  width: 64px;
  height: 64px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 20px;
  flex-shrink: 0;
  -webkit-backdrop-filter: blur(5px);
  backdrop-filter: blur(5px);
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.clinical-feature-card .icon-badge img {
  width: 32px;
  height: 32px;
  max-width: none;
  /* Override default */
  filter: brightness(0) invert(1);
  /* Ensure white icon */
}

.clinical-feature-card h3 {
  font-size: 26px;
  /* Larger visual dominance */
  font-weight: 700;
  color: #fff;
  margin: 0;
  line-height: 1.1;
  letter-spacing: -0.5px;
}

/* 2. Content Zone */
.clinical-feature-card .service-content {
  background: transparent;
  padding: 0;
  margin: 0;
  border-radius: 0;
}

/* Reset generic overrides */
.clinical-feature-card .service-content p {
  display: none;
  /* Hide original p if it lingered, though we replaced it */
}

.clinical-list {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  align-content: flex-start;
  /* Visual Rhythm */
  line-height: 1.8;
}

.clinical-term {
  color: rgba(255, 255, 255, 0.95);
  font-size: 16px;
  font-weight: 400;
}

.clinical-feature-card .dot-separator {
  color: #fff;
  opacity: 0.3;
  /* Low visual weight */
  font-size: 14px;
  /* Slightly smaller */
  margin: 0 12px;
  /* Generous spacing */
  position: relative;
  top: 1px;
}

/* 3. CTA Zone (Action Layer) */
.clinical-feature-card .service-btn {
  position: absolute;
  bottom: 25px;
  right: 25px;
  z-index: 10;
}

.clinical-feature-card .service-btn a {
  width: 56px;
  height: 56px;
  background: rgba(255, 255, 255, 0.15);
  /* Glassy feel */
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 14px;
  /* Soft square */
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.clinical-feature-card .service-btn a img {
  width: 20px;
  opacity: 1;
}

/* Hover Effects */
.clinical-feature-card .service-btn a:hover {
  background: #ffffff;
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
  border-color: #fff;
}

.clinical-feature-card .service-btn a:hover img {
  filter: invert(1);
  /* Black icon on white button */
}

/* Hover state for the whole card to lift slightly? optional */
.clinical-feature-card:hover .service-body {
  /* transformative effect handled by parent usually, but we can add subtle border highlight */
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.25);
}

/* Resp */
@media (max-width: 991px) {
  .clinical-feature-card .service-body {
    padding: 25px;
  }

  .clinical-header {
    flex-direction: row;
    /* Keep row */
    align-items: flex-start;
  }

  .clinical-feature-card h3 {
    font-size: 22px;
    margin-top: 5px;
  }

  .clinical-feature-card .icon-badge {
    width: 48px;
    height: 48px;
  }

  .clinical-feature-card .icon-badge img {
    width: 24px;
    height: 24px;
  }
}

/* Final CTA Section */
/* Final CTA Section - Enhanced */
.final-cta-section {
  padding: 100px 0;
  /* Increased spacing */
  background-color: #ecf3f5;
  /* Light Tint of Primary */
  position: relative;
  z-index: 1;
}

/* Subtle Technical Grid Pattern */
.final-cta-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: radial-gradient(var(--primary-color) 1px, transparent 1px);
  background-size: 40px 40px;
  opacity: 0.1;
  z-index: -1;
  pointer-events: none;
}

.final-cta-box {
  background-color: var(--primary-color);
  padding: 70px 60px;
  border-radius: 30px;
  position: relative;
  overflow: hidden;
  /* Stronger, Colored Shadow for depth */
  box-shadow: 0 30px 60px rgba(2, 48, 71, 0.3);
  isolation: isolate;
  /* Subtle Border */
  border: 1px solid rgba(255, 255, 255, 0.1);
  transform: translateY(0);
  transition: transform 0.5s ease;
}

.final-cta-box:hover {
  transform: translateY(-5px);
  /* Active Feel */
}

/* Decorative Background Elements (Glassmorphism Accents) */
.final-cta-box::before {
  content: "";
  position: absolute;
  top: -100px;
  right: -50px;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0) 70%);
  border-radius: 50%;
  z-index: -1;
  pointer-events: none;
}

.final-cta-box::after {
  content: "";
  position: absolute;
  bottom: -150px;
  left: -50px;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.03) 0%, rgba(255, 255, 255, 0) 70%);
  border-radius: 50%;
  z-index: -1;
  pointer-events: none;
}

.final-cta-content {
  position: relative;
  z-index: 2;
  padding-right: 30px;
}

.final-cta-content h2 {
  color: #ffffff !important;
  margin-bottom: 20px;
  font-size: 42px;
  /* Increased Size */
  font-weight: 700;
  line-height: 1.2;
}

.final-cta-content p {
  color: rgba(255, 255, 255, 0.95);
  margin-bottom: 0;
  font-size: 20px;
  font-weight: 400;
  max-width: 95%;
  line-height: 1.6;
}

.final-cta-btn {
  text-align: right;
  position: relative;
  z-index: 2;
}

/* Enhanced Button Presence */
.final-cta-btn .btn-default span {
  font-size: 19px;
  padding: 16px 32px;
}

@media (max-width: 991px) {
  .final-cta-box {
    padding: 50px 30px;
    text-align: center;
  }

  .final-cta-content {
    padding-right: 0;
    margin-bottom: 35px;
  }

  .final-cta-content p {
    max-width: 100%;
    margin: 0 auto;
  }

  .final-cta-btn {
    text-align: center;
    margin-top: 0;
  }

  .final-cta-content h2 {
    font-size: 30px;
  }
}

/* Decorative Icon Styles */
.cta-deco-1,
.cta-deco-2 {
  position: absolute;
  z-index: 1;
  opacity: 0.1;
  pointer-events: none;
  transition: transform 0.5s ease;
}

.cta-deco-1 img,
.cta-deco-2 img {
  filter: brightness(0) invert(1);
  width: 100%;
}

.cta-deco-1 {
  width: 250px;
  top: -50px;
  right: -30px;
  transform: rotate(-15deg);
}

.cta-deco-2 {
  width: 180px;
  bottom: -40px;
  left: -20px;
  transform: rotate(10deg);
  opacity: 0.08;
}

/* Flashy Hover Effect */
.final-cta-box:hover .cta-deco-1 {
  transform: rotate(-10deg) scale(1.05);
}

.final-cta-box:hover .cta-deco-2 {
  transform: rotate(15deg) scale(1.05);
}

/* Enhanced Testimonials */
.our-testimonial {
  overflow: hidden;
  background: linear-gradient(180deg, var(--secondary-color) 0%, #f5f8fa 100%);
}

/* Background Shape */
.our-testimonial::before {
  content: "";
  position: absolute;
  top: -100px;
  left: -100px;
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(2, 48, 71, 0.03) 0%, transparent 70%);
  z-index: 0;
  pointer-events: none;
}

/* Decorative Quote Icon */
.testimonial-quote-icon {
  position: absolute;
  right: -50px;
  top: 50%;
  transform: translateY(-50%) rotate(15deg);
  width: 250px;
  opacity: 0.05;
  z-index: -1;
  pointer-events: none;
}

.testimonial-quote-icon img {
  width: 100%;
  filter: invert(16%) sepia(35%) saturate(2476%) hue-rotate(180deg) brightness(95%) contrast(101%);
  /* Matches primary color roughly */
}

/* Stylish Card Enhancements */
.testimonial-item {
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.5);
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  position: relative;
  z-index: 1;
}

.testimonial-item:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
  border-color: var(--primary-color);
}

/* Author Image Pop */
.testimonial-body .author-image img {
  border: 4px solid #fff;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  transition: all 0.3s ease;
}

.testimonial-item:hover .author-image img {
  transform: scale(1.1);
}

/* Testimonial Decorative Shapes - Stylish & Animated */
.testimonial-deco-shape-1 {
  position: absolute;
  top: -50px;
  left: 0;
  width: 400px;
  opacity: 0.05;
  z-index: 0;
  pointer-events: none;
  animation: floatShape1 10s ease-in-out infinite;
}

.testimonial-deco-shape-2 {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 300px;
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
  animation: floatShape2 12s ease-in-out infinite;
}

@keyframes floatShape1 {
  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-20px) rotate(2deg);
  }
}

@keyframes floatShape2 {
  0%,
  100% {
    transform: translateY(0) scale(1);
  }

  50% {
    transform: translateY(15px) scale(1.05);
  }
}

/* Location Section Decorative Shapes */
.location-section {
  position: relative;
  overflow: hidden;
}

.location-deco-1 {
  position: absolute;
  top: 10%;
  left: -5%;
  width: 300px;
  opacity: 0.05;
  z-index: 0;
  pointer-events: none;
  transform: rotate(-15deg);
}

.location-deco-2 {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 400px;
  opacity: 0.03;
  z-index: 0;
  pointer-events: none;
}

.location-deco-3 {
  position: absolute;
  top: 20%;
  right: 10%;
  width: 150px;
  opacity: 0.1;
  z-index: 0;
  pointer-events: none;
  animation: spinSlow 30s linear infinite;
}

@keyframes spinSlow {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

/* Physician Section Decorative Shapes */
.quality-treatment {
  position: relative;
  overflow: hidden;
}

.physician-deco-1 {
  position: absolute;
  top: 50px;
  right: 5%;
  width: 200px;
  opacity: 0.08;
  z-index: 0;
  pointer-events: none;
  transform: rotate(20deg);
}

.physician-deco-2 {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 400px;
  opacity: 0.1;
  z-index: 0;
  pointer-events: none;
  margin-bottom: -100px;
}

.physician-deco-3 {
  position: absolute;
  top: 10%;
  right: 40%;
  width: 100px;
  opacity: 0.05;
  z-index: 0;
  pointer-events: none;
  animation: floatPhysician 8s ease-in-out infinite;
}

@keyframes floatPhysician {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-20px);
  }
}

/* ============================================================================
   CLINICAL CONFIDENCE CARD
   ============================================================================ */

.clinical-card-section {
  background-color: #f7fbfe;
  /* Pale blue tint */
  padding: 80px 0;
}

.clinical-card {
  background: linear-gradient(135deg, #ffffff 0%, #f4f8fb 100%);
  border-radius: 20px;
  box-shadow: 0 10px 40px rgba(0, 50, 80, 0.08);
  /* Soft medical shadow */
  padding: 60px;
  position: relative;
  overflow: hidden;
  max-width: 1200px;
  margin: 0 auto;
}

.clinical-card-content {
  position: relative;
  padding-left: 30px;
  /* Space for accent line */
  z-index: 2;
}

/* Vertical Accent Line */
.clinical-card-content::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 0;
  width: 3px;
  background-color: var(--primary-color);
  opacity: 0.6;
  border-radius: 2px;
}

/* Typography */
.clinical-heading {
  font-family: var(--accent-font);
  /* Serif/Humanist */
  font-size: 42px;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: var(--primary-color);
  margin-bottom: 30px;
}

.clinical-text p {
  font-size: 18px;
  line-height: 1.8;
  color: var(--text-color);
  margin-bottom: 25px;
}

/* CTA Button */
.btn-clinical {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(90deg, var(--primary-color) 0%, var(--accent-color) 100%);
  color: #fff !important;
  padding: 14px 40px;
  border-radius: 50px;
  font-weight: 500;
  font-size: 16px;
  width: auto;
  border: none;
  position: relative;
  overflow: hidden;
  box-shadow: 0 4px 15px rgba(2, 48, 71, 0.2);
  transition: all 0.4s ease;
  margin-top: 20px;
}

.btn-clinical span {
  position: relative;
  z-index: 2;
}

.btn-clinical i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  margin-left: 12px;
  font-size: 12px;
  transition: transform 0.3s ease;
}

.btn-clinical:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 25px rgba(2, 48, 71, 0.3);
}

.btn-clinical:hover i {
  transform: translateX(4px);
  background-color: rgba(255, 255, 255, 0.4);
}

/* Right Column Visuals */
.clinical-visuals {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 300px;
}

/* Floating Icons Motif */
.diagnostic-motif-container {
  position: relative;
  width: 300px;
  height: 300px;
}

.motif-icon {
  position: absolute;
  color: var(--primary-color);
  opacity: 0.1;
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
}

.motif-main {
  font-size: 180px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0.08;
}

.motif-float-1 {
  font-size: 60px;
  top: 10%;
  right: 20%;
  animation: floatVertical 6s ease-in-out infinite;
}

.motif-float-2 {
  font-size: 50px;
  bottom: 20%;
  left: 10%;
  animation: floatVertical 8s ease-in-out infinite reverse;
}

.motif-float-3 {
  font-size: 40px;
  top: 40%;
  left: 0%;
  animation: floatHorizontal 10s ease-in-out infinite;
}

@keyframes floatVertical {
  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px);
  }
}

@keyframes floatHorizontal {
  0%,
  100% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(10px);
  }
}

/* Mobile Responsiveness */
@media (max-width: 991px) {
  .clinical-card {
    padding: 30px 20px;
    text-align: center;
  }

  .clinical-card-content {
    padding-left: 0;
  }

  .clinical-card-content::before {
    display: none;
  }

  .clinical-heading {
    font-size: 32px;
    margin-bottom: 20px;
  }

  .clinical-visuals {
    margin-top: 40px;
    min-height: 200px;
  }

  .btn-clinical {
    width: 100%;
  }

  .diagnostic-motif-container {
    width: 250px;
    height: 250px;
  }
}

/* === Mobile-only: Clinical Card Section (≤480px) === */
@media (max-width: 480px) {
  /* Section: reduce desktop 80px vertical padding */
  .clinical-card-section {
    padding: 50px 0;
  }

  /* Card: tighten padding further beyond the 991px layer */
  .clinical-card {
    padding: 20px 16px;
    border-radius: 14px;
    text-align: center;
  }

  /* Heading: 32px (from 991px layer) → 22px for 320px screens */
  .clinical-heading {
    font-size: 22px;
    line-height: 1.3;
    margin-bottom: 16px;
  }

  /* Body paragraphs: 18px → 15px */
  .clinical-text p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 16px;
  }

  /* Visuals column: reduce height and top spacing */
  .clinical-visuals {
    margin-top: 24px;
    min-height: 160px;
  }

  /* CRITICAL: Shrink the fixed 250px motif to prevent icon overflow on 320px */
  .diagnostic-motif-container {
    width: 180px;
    height: 180px;
  }

  /* Main large icon: scale proportionally */
  .motif-main {
    font-size: 120px;
  }

  /* Floating small icons: scale to match container */
  .motif-float-1 {
    font-size: 40px;
  }

  .motif-float-2 {
    font-size: 36px;
  }

  .motif-float-3 {
    font-size: 28px;
  }
}

/* ============================================================================
   PROCEDURE OVERVIEW SECTION - DARK THEME
   ============================================================================ */

.procedure-overview-section {
  padding: 100px 0;
  background-color: var(--primary-color);
  /* Dark Background */
  color: #ffffff;
}

/* Left Column: Typography */
.overview-heading-block {
  padding-right: 40px;
}

.overview-eyebrow {
  font-size: 0.85rem;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: var(--secondary-color);
  /* Accent/Light Color */
  font-weight: 700;
  display: block;
  margin-bottom: 16px;
}

.overview-title {
  font-size: 2.5rem;
  font-weight: 700;
  color: #ffffff;
  /* White Text */
  line-height: 1.2;
  margin-bottom: 24px;
}

.overview-intro-text {
  font-size: 1.15rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.9);
  /* High contrast white */
  margin-bottom: 20px;
}

.overview-note {
  font-size: 1rem;
  font-weight: 500;
  color: #ffffff;
  background-color: rgba(255, 255, 255, 0.1);
  /* Glassy Background */
  padding: 15px 20px;
  border-left: 4px solid var(--secondary-color);
  border-radius: 4px;
}

/* Right Column: Benefits Grid */
.benefits-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

.benefit-card {
  background: rgba(255, 255, 255, 0.05);
  /* Very subtle glass */
  border: 1px solid rgba(255, 255, 255, 0.1);
  /* Subtle white border */
  border-radius: 12px;
  padding: 30px;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  /* Darker shadow */
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  height: 100%;
}

.benefit-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4);
  background: rgba(255, 255, 255, 0.08);
  /* Slightly lighter on hover */
  border-color: var(--secondary-color);
}

.benefit-icon {
  width: 48px;
  height: 48px;
  background-color: rgba(255, 255, 255, 0.1);
  /* White tint */
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--secondary-color);
  /* Accent color icon */
  font-size: 20px;
  margin-bottom: 20px;
  transition: all 0.3s ease;
}

.benefit-card:hover .benefit-icon {
  background-color: var(--secondary-color);
  color: var(--primary-color);
  /* Dark Icon */
}

.benefit-text {
  font-size: 1rem;
  font-weight: 600;
  color: #ffffff;
  /* White Text */
  line-height: 1.5;
  margin: 0;
}

@media (max-width: 991px) {
  .overview-heading-block {
    padding-right: 0;
    margin-bottom: 50px;
  }

  .benefits-grid {
    grid-template-columns: 1fr;
  }
}

/* === Mobile-only: Procedure Overview Section (≤480px) === */
@media (max-width: 480px) {
  /* Section: 100px → 55px padding on dark background */
  .procedure-overview-section {
    padding: 55px 0;
  }

  /* Left column heading block: reduce bottom margin */
  .overview-heading-block {
    margin-bottom: 30px;
  }

  /* Eyebrow: tighten letter-spacing on narrow screens */
  .overview-eyebrow {
    font-size: 0.75rem;
    letter-spacing: 1.5px;
    margin-bottom: 10px;
  }

  /* Title: 2.5rem → 1.6rem */
  .overview-title {
    font-size: 1.6rem;
    line-height: 1.25;
    margin-bottom: 18px;
  }

  /* Intro text: tighten for density */
  .overview-intro-text {
    font-size: 0.95rem;
    line-height: 1.65;
    margin-bottom: 14px;
  }

  /* Info note box: compact padding */
  .overview-note {
    font-size: 0.9rem;
    padding: 12px 14px;
  }

  /* Benefit cards: reduce 30px padding */
  .benefit-card {
    padding: 18px;
  }

  /* Card hover: disable translateY on touch */
  .benefit-card:hover {
    transform: none;
  }

  /* Icon box: 48px → 38px */
  .benefit-icon {
    width: 38px;
    height: 38px;
    font-size: 16px;
    margin-bottom: 14px;
    border-radius: 8px;
  }

  /* Benefit text */
  .benefit-text {
    font-size: 0.9rem;
    line-height: 1.5;
  }

  /* Benefits grid: tighten gap (already 1-col from 991px layer) */
  .benefits-grid {
    gap: 12px;
  }
}

/* ============================================================================
   CONDITIONS TREATED SECTION - REFINED
   ============================================================================ */

.conditions-section {
  padding: 120px 0;
  /* Increased padding for better breathing room */
  background-color: #f4f7fa;
  /* Slightly cooler light gray */
  position: relative;
}

.conditions-intro {
  max-width: 800px;
  margin: 0 auto 60px;
  /* Increased separation */
  text-align: center;
}

.conditions-subtitle {
  font-size: 0.95rem;
  /* Increased size */
  font-weight: 800;
  /* Bolder */
  color: var(--accent-color);
  text-transform: uppercase;
  letter-spacing: 2.5px;
  /* Wider spacing for scannability */
  display: block;
  margin-bottom: 20px;
}

.conditions-title {
  font-size: 3rem;
  /* Larger */
  font-weight: 800;
  color: var(--primary-color);
  margin-bottom: 24px;
  line-height: 1.15;
}

.conditions-desc {
  font-size: 1.25rem;
  /* Larger for readability */
  color: var(--text-color);
  line-height: 1.8;
  max-width: 90%;
  margin: 0 auto;
}

/* Conditions Grid */
.conditions-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  /* Wider gap for clarity */
  margin-bottom: 60px;
}

.condition-item-card {
  position: relative;
  background: #ffffff;
  border-radius: 16px;
  /* softer corners */
  padding: 32px;
  /* Increased internal padding */
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  /* Softer, deeper shadow */
  transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid rgba(0, 0, 0, 0.04);
  display: flex;
  align-items: center;
  justify-content: space-between;
  overflow: hidden;
  text-decoration: none;
}

.condition-item-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
  /* Lift effect */
  border-color: var(--secondary-color);
}

.condition-item-card:active {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.04) !important;
  transition: transform 0.1s ease, box-shadow 0.1s ease !important;
}

.condition-item-card:active .condition-arrow {
  transform: translateX(2px) !important;
}

/* Hover Accent Line - Thicker */
.condition-item-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 6px;
  background-color: var(--primary-color);
  transform: scaleY(0);
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform-origin: bottom;
}

.condition-item-card:hover::before {
  transform: scaleY(1);
}

.condition-name {
  font-size: 1.35rem;
  /* Larger & clearer */
  font-weight: 700;
  color: var(--primary-color);
  margin: 0;
  position: relative;
  z-index: 1;
  transition: color 0.3s ease;
}

.condition-item-card:hover .condition-name {
  color: var(--accent-color);
  /* Slight color shift on hover for hierarchy */
}

.condition-arrow {
  width: 44px;
  /* Larger target */
  height: 44px;
  background-color: #f0f7fa;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--primary-color);
  font-size: 16px;
  transition: all 0.4s ease;
}

.condition-item-card:hover .condition-arrow {
  background-color: var(--primary-color);
  color: #ffffff;
  transform: translateX(8px);
  /* More movement */
}

/* Text-only card styling */
.condition-item-card.text-only {
  cursor: default;
  background-color: #f9fbfd;
  /* Subtle differentiation */
}

.condition-item-card.text-only .condition-name {
  color: #64748b;
  /* Muted text color */
}

/* Bottom Note - High Readability Box */
.conditions-note {
  max-width: 900px;
  margin: 0 auto;
  text-align: center;
  background-color: #ffffff;
  padding: 40px;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-top: 4px solid var(--primary-color);
  /* Top accent for scan */
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.05);
}

.conditions-note p {
  margin: 0;
  font-size: 1.15rem;
  /* Larger */
  color: var(--primary-color);
  font-weight: 500;
  line-height: 1.6;
}

/* Responsive */
@media (max-width: 991px) {
  .conditions-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .conditions-grid {
    grid-template-columns: 1fr;
  }
}

/* === Mobile-only: Conditions Treated Section (≤480px) === */
@media (max-width: 480px) {
  /* Section: 120px → 55px padding */
  .conditions-section {
    padding: 55px 0;
  }

  /* Intro block: reduce bottom separation */
  .conditions-intro {
    margin-bottom: 30px;
  }

  /* Subtitle */
  .conditions-subtitle {
    font-size: 0.75rem;
    letter-spacing: 1.5px;
    margin-bottom: 12px;
  }

  /* Title: 3rem → 1.65rem — prevents overflow on all-caps text at 320px */
  .conditions-title {
    font-size: 1.65rem;
    line-height: 1.25;
    margin-bottom: 14px;
  }

  /* Description */
  .conditions-desc {
    font-size: 1rem;
    max-width: 100%;
  }

  /* Condition cards: reduce generous 32px padding */
  .condition-item-card {
    padding: 20px 16px;
    border-radius: 12px;
  }

  /* Card hover: disable translateY on touch */
  .condition-item-card:hover {
    transform: none;
  }

  /* Card arrow: scale down slightly */
  .condition-arrow {
    width: 36px;
    height: 36px;
    font-size: 13px;
    flex-shrink: 0;
  }

  /* Disable arrow translateX on touch */
  .condition-item-card:hover .condition-arrow {
    transform: none;
  }

  /* Condition name */
  .condition-name {
    font-size: 1.05rem;
  }

  /* Conditions grid: reduce gap (already 1-col from 767px) */
  .conditions-grid {
    gap: 12px;
    margin-bottom: 30px;
  }

  /* Bottom note box: reduce large 40px desktop padding */
  .conditions-note {
    padding: 22px 18px;
    border-radius: 10px;
  }

  .conditions-note p {
    font-size: 0.95rem;
    line-height: 1.6;
  }
}

/* ============================================================================
   CLINICAL SPECTRUM LAYOUT (Horizontal Axis - Dark Theme)
   ============================================================================ */

.spectrum-section {
  padding: 140px 0;
  background-color: var(--primary-color);
  position: relative;
  overflow-x: hidden;
  color: #ffffff;
}

/* Background texture */
.spectrum-section::before {
  content: "EPIDURAL";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 15vw;
  font-weight: 900;
  color: rgba(255, 255, 255, 0.03);
  z-index: 0;
  pointer-events: none;
  white-space: nowrap;
}

.spectrum-header {
  text-align: center;
  margin-bottom: 140px;
  /* Increased from 80px to separate header from content */
  position: relative;
  z-index: 2;
}

.spectrum-label {
  display: inline-block;
  padding: 6px 14px;
  border: 1px solid var(--secondary-color);
  color: var(--secondary-color);
  border-radius: 4px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.spectrum-title {
  font-size: 3rem;
  font-weight: 800;
  color: #ffffff;
  margin: 0;
}

/* The Grid System for the Spectrum */
.spectrum-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
}

/* The Central Axis Line */
.spectrum-axis {
  grid-column: 1 / -1;
  grid-row: 2;
  height: 2px;
  background-color: rgba(255, 255, 255, 0.3);
  /* Increased to 0.3 for 3:1 UI contrast */
  width: 100%;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: -1;
}

/* Individual Columns */
.spectrum-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  min-height: 520px;
  /* Increased height to accommodate spacing */
  justify-content: center;
}

/* The Anchor Point on the Line */
.spectrum-node {
  width: 20px;
  height: 20px;
  background-color: var(--primary-color);
  border: 4px solid var(--secondary-color);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  transition: all 0.4s ease;
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.1);
}

.spectrum-col:hover .spectrum-node {
  background-color: var(--secondary-color);
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.25);
  /* Stronger hover ring */
  transform: translate(-50%, -50%) scale(1.2);
}

/* Content Blocks */
.spectrum-content-block {
  text-align: center;
  width: 100%;
  padding: 0 20px;
  transition: all 0.4s ease;
  position: absolute;
  z-index: 2;
  background: transparent;
}

/* Alternating Logic */
.spectrum-top .spectrum-content-block {
  bottom: 50%;
  padding-bottom: 100px;
  /* Increased spacing */
}

.spectrum-bottom .spectrum-content-block {
  top: 50%;
  padding-top: 100px;
  /* Increased spacing */
}

/* Connector Lines from Node to Content */
.spectrum-top .spectrum-node::before {
  content: "";
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 80px;
  /* Extended line */
  background-color: rgba(255, 255, 255, 0.3);
  /* Increased to 0.3 */
}

.spectrum-bottom .spectrum-node::after {
  content: "";
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 80px;
  /* Extended line */
  background-color: rgba(255, 255, 255, 0.3);
  /* Increased to 0.3 */
}

/* Typography & Icons */
/* Typography & Icons */
.spectrum-number {
  font-family: var(--default-font);
  font-weight: 800;
  font-size: 4rem;
  line-height: 1;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 20px;
  display: inline-block;
  position: relative;
  z-index: 1;
  transition: all 0.4s ease;
}

.spectrum-col:hover .spectrum-number {
  color: #ffffff;
  transform: translateY(-5px);
  text-shadow: 0 0 20px rgba(255, 255, 255, 0.5);
}

.spectrum-item-title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 15px;
}

.spectrum-desc {
  font-size: 1rem;
  color: #e6f0f5;
  /* Increased brightness for super-safe AAA contrast */
  line-height: 1.6;
}

/* Footer Link styling inside the flow */
.spectrum-footer {
  grid-column: 1 / -1;
  text-align: center;
  margin-top: 80px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  color: var(--secondary-color);
  font-weight: 600;
  font-style: italic;
}

/* Responsive: Switch to Vertical Timeline */
@media (max-width: 991px) {
  .spectrum-section {
    padding: 80px 0;
  }

  .spectrum-container {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .spectrum-axis {
    width: 2px;
    height: 100%;
    left: 40px;
    top: 0;
    transform: none;
    background: linear-gradient(
      to bottom,
      transparent,
      rgba(255, 255, 255, 0.3) 10%,
      rgba(255, 255, 255, 0.3) 90%,
      transparent
    );
  }

  .spectrum-col {
    min-height: auto;
    padding: 0 0 60px 80px;
    align-items: flex-start;
    text-align: left;
    display: block;
  }

  .spectrum-node {
    left: 40px;
    top: 30px;
    transform: translateX(-50%);
  }

  .spectrum-col:hover .spectrum-node {
    transform: translateX(-50%) scale(1.2);
  }

  .spectrum-content-block {
    position: relative;
    top: auto !important;
    bottom: auto !important;
    padding: 0 !important;
    text-align: left;
  }

  /* Hide vertical connectors used in desktop */
  .spectrum-top .spectrum-node::before,
  .spectrum-bottom .spectrum-node::after {
    display: none;
  }

  .spectrum-icon {
    margin-top: -10px;
    padding-left: 0;
  }

  .spectrum-section::before {
    display: none !important;
  }
}

/* ============================================================================
   PROCEDURE FLOW SECTION (What to Expect)
   ============================================================================ */

.procedure-flow-section {
  padding: 120px 0;
  background-color: #f9fbfd;
  position: relative;
}

/* Left Column: Context */
.flow-header {
  margin-bottom: 40px;
}

.flow-eyebrow {
  display: block;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  letter-spacing: 2px;
  margin-bottom: 15px;
}

/* Override secondary color if it's too light for light BG */
.procedure-flow-section .flow-eyebrow {
  color: var(--primary-color);
  opacity: 0.7;
}

.flow-title {
  font-size: 2.75rem;
  font-weight: 800;
  color: var(--primary-color);
  margin-bottom: 25px;
  line-height: 1.2;
}

.flow-description {
  font-size: 1.15rem;
  color: var(--text-color);
  line-height: 1.7;
  max-width: 90%;
}

/* Time Metric Card */
.flow-metric {
  display: flex;
  align-items: center;
  background-color: #ffffff;
  padding: 25px;
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
  margin-bottom: 30px;
  border-left: 4px solid var(--primary-color);
  max-width: 400px;
}

.metric-icon {
  font-size: 2rem;
  color: var(--primary-color);
  margin-right: 20px;
  width: 50px;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f0f4f8;
  border-radius: 50%;
}

.metric-text {
  display: flex;
  flex-direction: column;
}

.metric-value {
  font-size: 1.2rem;
  font-weight: 800;
  color: var(--primary-color);
}

.metric-label {
  font-size: 0.9rem;
  color: #6c757d;
  font-weight: 500;
}

.flow-note {
  font-size: 1rem;
  font-style: italic;
  color: var(--text-color);
  border-left: 3px solid #dfe6ed;
  padding-left: 20px;
  margin-top: 20px;
}

/* Right Column: Timeline */
.flow-list-heading {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--primary-color);
  margin-bottom: 40px;
  padding-bottom: 15px;
  border-bottom: 1px solid #ebf0f5;
}

.flow-timeline {
  position: relative;
  padding-left: 15px;
}

/* Vertical Line */
.flow-timeline::before {
  content: "";
  position: absolute;
  top: 10px;
  bottom: 0;
  left: 32px;
  width: 2px;
  background-color: #e1e7ee;
  z-index: 0;
}

.timeline-item {
  position: relative;
  display: flex;
  align-items: flex-start;
  margin-bottom: 40px;
  z-index: 1;
}

.timeline-item:last-child {
  margin-bottom: 0;
}

.timeline-marker {
  width: 36px;
  height: 36px;
  background-color: #ffffff;
  border: 2px solid var(--primary-color);
  color: var(--primary-color);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.85rem;
  font-weight: 700;
  flex-shrink: 0;
  margin-right: 25px;
  position: relative;
  box-shadow: 0 0 0 4px #f9fbfd;
  /* mask line */
}

.timeline-text {
  font-size: 1.1rem;
  color: var(--text-color);
  line-height: 1.6;
  margin: 0;
  padding-top: 3px;
  /* visual alignment with marker */
}

/* Responsive */
@media (max-width: 991px) {
  .procedure-flow-section {
    padding: 80px 0;
  }

  .flow-header {
    margin-bottom: 60px;
  }

  .offset-lg-1 {
    margin-left: 0;
  }
}

/* ============================================================================
   CARE ROLE SECTION (Strategic Care Integration - Dark Theme)
   ============================================================================ */

.care-role-section {
  padding: 120px 0;
  background-color: var(--primary-color);
  position: relative;
  color: #ffffff;
}

.role-eyebrow {
  display: block;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  letter-spacing: 2px;
  margin-bottom: 20px;
}

/* Ensure secondary color is used directly in dark mode */
.care-role-section .role-eyebrow {
  color: var(--secondary-color);
  opacity: 1;
}

.role-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 30px;
  line-height: 1.2;
}

.role-intro {
  font-size: 1.15rem;
  color: #d0dbe5;
  line-height: 1.8;
  margin-bottom: 40px;
}

/* The 'Aims' Card (List 1) */
.role-card {
  background-color: rgba(255, 255, 255, 0.03);
  /* Dark Glass */
  border-radius: 12px;
  padding: 40px;
  border-left: 5px solid var(--secondary-color);
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  border-right: 1px solid rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  margin-bottom: 40px;
  transition: transform 0.3s ease;
}

.role-card:hover {
  transform: translateY(-5px);
  background-color: rgba(255, 255, 255, 0.06);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
}

.role-card-heading {
  font-size: 1.1rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 25px;
  display: block;
}

.role-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.role-list li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 15px;
  color: #d0dbe5;
  font-size: 1.05rem;
}

.role-list li::before {
  content: "\f00c" / "";
  /* FontAwesome Check */
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  top: 3px;
  color: var(--secondary-color);
  font-size: 0.9rem;
}

/* The 'Context' List (List 2) */
.role-context-group {
  margin-top: 40px;
}

.role-context-heading {
  font-size: 1.25rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 20px;
}

.role-bullet-list {
  list-style: none;
  padding: 0;
  margin-bottom: 30px;
}

.role-bullet-list li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 12px;
  color: #d0dbe5;
}

.role-bullet-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  width: 6px;
  height: 6px;
  background-color: var(--secondary-color);
  /* Light accent bullet */
  border-radius: 50%;
  opacity: 1;
}

.role-footer {
  font-size: 1rem;
  font-style: italic;
  color: rgba(255, 255, 255, 0.6);
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding-top: 20px;
  margin-top: 40px;
}

@media (max-width: 991px) {
  .care-role-section {
    padding: 80px 0;
  }

  .role-card {
    margin-top: 40px;
  }
}

/* ============================================================================
   IMAGE GUIDANCE SECTION (Precision & Safety)
   ============================================================================ */
.guidance-section {
  padding: 100px 0;
  background-color: #f9fbfd;
  /* Light medical blue/grey */
}

.guidance-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 60px;
}

.guidance-eyebrow {
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--primary-color);
  /* Switched to Primary for proper contrast on light BG */
  opacity: 0.7;
  letter-spacing: 2px;
  display: block;
  margin-bottom: 15px;
}

.guidance-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--primary-color);
  margin-bottom: 20px;
}

.guidance-intro {
  font-size: 1.2rem;
  color: var(--text-color);
}

.guidance-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-bottom: 50px;
}

.guidance-card {
  background: #ffffff;
  padding: 40px 30px;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.03);
  transition: transform 0.3s ease;
  border: 1px solid #eef2f7;
}

.guidance-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
  border-color: var(--primary-color);
  /* Darker border on hover */
}

.guidance-icon-wrapper {
  width: 70px;
  height: 70px;
  background-color: rgba(2, 48, 71, 0.05);
  /* Primary low alpha */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 25px;
  color: var(--primary-color);
  font-size: 1.75rem;
}

.guidance-card-text {
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--primary-color);
  margin: 0;
  line-height: 1.5;
}

.guidance-footer {
  text-align: center;
  font-size: 1rem;
  color: #495057;
  /* Darker grey for safer contrast */
  font-style: italic;
  border-top: 1px solid #e1e7ee;
  padding-top: 30px;
  max-width: 600px;
  margin: 0 auto;
}

@media (max-width: 991px) {
  .guidance-grid {
    grid-template-columns: 1fr;
  }
}

/* ============================================================================
   PHYSICIAN EXPERTISE SECTION (The Authority)
   ============================================================================ */
.physician-section {
  padding: 120px 0;
  background-color: var(--primary-color);
  position: relative;
  overflow: hidden;
}

.physician-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: radial-gradient(circle at 70% 30%, rgba(255, 255, 255, 0.03) 0%, transparent 60%);
  pointer-events: none;
}

.physician-content-wrapper {
  max-width: 900px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
  text-align: center;
}

.physician-eyebrow {
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  letter-spacing: 2px;
  margin-bottom: 20px;
  display: inline-block;
}

.physician-title {
  font-size: 3rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 40px;
}

.physician-bio-box {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 50px;
  border-radius: 12px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  margin-bottom: 40px;
}

.physician-text {
  font-size: 1.15rem;
  color: #d0dbe5;
  line-height: 1.8;
  margin-bottom: 25px;
}

.physician-text:last-of-type {
  margin-bottom: 0;
}

.physician-text strong {
  color: #ffffff;
  font-weight: 700;
}

.physician-btn {
  display: inline-block;
  padding: 16px 36px;
  background-color: var(--secondary-color);
  color: var(--primary-color);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  border-radius: 4px;
  text-decoration: none;
  transition: all 0.3s ease;
  border: none;
  margin-top: 10px;
}

.physician-btn:hover {
  background-color: #ffffff;
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
  color: var(--primary-color);
}

@media (max-width: 768px) {
  .physician-section {
    padding: 80px 0;
  }

  .physician-bio-box {
    padding: 30px 20px;
  }

  .physician-title {
    font-size: 2.25rem;
  }
}


/* ============================================================================
   OUTCOMES SECTION (Results & Expectations)
   ============================================================================ */
.outcomes-section {
  padding: 100px 0;
  background-color: #ffffff;
  border-top: 1px solid #ebf0f5;
}

.outcomes-header {
  text-align: center;
  max-width: 800px;
  margin: 0 auto 50px;
}

.outcomes-eyebrow {
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--primary-color);
  opacity: 0.7;
  letter-spacing: 2px;
  display: block;
  margin-bottom: 15px;
}

.outcomes-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--primary-color);
  margin-bottom: 25px;
}

.outcomes-intro {
  font-size: 1.15rem;
  color: var(--text-color);
  line-height: 1.7;
}

.outcomes-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  margin-bottom: 50px;
}

.outcome-item {
  background: #f8f9fa;
  padding: 35px 25px;
  border-radius: 12px;
  text-align: center;
  border-bottom: 4px solid var(--secondary-color);
  transition: transform 0.3s ease;
}

.outcome-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.05);
}

.outcome-icon {
  font-size: 2rem;
  color: var(--primary-color);
  margin-bottom: 20px;
  display: inline-block;
}

.outcome-text {
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--primary-color);
  margin: 0;
  line-height: 1.4;
}

.outcomes-disclaimer {
  background-color: rgba(2, 48, 71, 0.03);
  border-radius: 8px;
  padding: 20px 30px;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 15px;
  border: 1px solid #eef2f7;
}

.disclaimer-icon {
  color: var(--secondary-color);
  font-size: 1.25rem;
}

.disclaimer-text {
  font-size: 1rem;
  color: #495057;
  margin: 0;
  text-align: left;
  font-style: italic;
}

@media (max-width: 991px) {
  .outcomes-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .outcomes-disclaimer {
    flex-direction: column;
    text-align: center;
  }

  .disclaimer-text {
    text-align: center;
  }
}

/* ============================================================================
   OUTCOMES SECTION (Organic/Box-Free Redesign)
   ============================================================================ */
.outcomes-section {
  padding: 100px 0;
  background-color: #ffffff;
  position: relative;
  overflow: hidden;
}

.outcomes-header {
  text-align: left;
  max-width: 600px;
  margin-bottom: 60px;
}

.outcomes-eyebrow {
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  letter-spacing: 2px;
  display: block;
  margin-bottom: 20px;
}

/* Fix contrast for eyebrow on lighter BG if needed */
.outcomes-section .outcomes-eyebrow {
  color: var(--primary-color);
  opacity: 0.7;
}

.outcomes-title {
  font-size: 3rem;
  font-weight: 800;
  color: var(--primary-color);
  line-height: 1.1;
  margin-bottom: 25px;
}

.outcomes-intro {
  font-size: 1.25rem;
  color: var(--text-color);
  line-height: 1.6;
}

/* Minimal List Design */
.outcomes-minimal-list {
  padding-left: 0;
  border-left: 2px solid #e1e7ee;
  /* Made thicker and clearer grey */
  margin-left: 20px;
}

.outcome-minimal-item {
  position: relative;
  padding: 20px 30px;
  /* Added padding for background block */
  margin-bottom: 20px;
  border-radius: 8px;
  /* Smooth corners */
  transition: all 0.3s ease;
}

.outcome-minimal-item:last-child {
  margin-bottom: 0;
}

.outcome-minimal-item::before {
  content: "";
  position: absolute;
  left: -7px;
  /* adjusted for thicker border */
  top: 50%;
  /* Center vertically with the new padding */
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: var(--secondary-color);
  /* Solid visible color by default */
  border: 2px solid #ffffff;
  /* White ring to separate from line */
  border-radius: 50%;
  transition: all 0.3s ease;
  z-index: 2;
  box-shadow: 0 0 0 1px #e1e7ee;
  /* Subtle outer definition */
}

/* Hover State: Background & Text */
.outcome-minimal-item:hover {
  background-color: var(--primary-color);
  transform: translateX(10px);
}

.outcome-minimal-item:hover::before {
  background-color: #ffffff;
  border-color: var(--secondary-color);
  box-shadow: none;
}

.outcome-minimal-text {
  font-size: 1.5rem;
  font-weight: 500;
  color: var(--primary-color);
  line-height: 1.3;
  margin: 0;
  transition: color 0.3s ease;
}

.outcome-minimal-item:hover .outcome-minimal-text {
  transform: none;
  /* Removed internal text shift since container moves */
  color: #ffffff;
  /* White text on dark hover */
}

/* Distinct Disclaimer - Floating Text */
.outcomes-float-note {
  margin-top: 60px;
  font-size: 1.1rem;
  color: #6c757d;
  font-style: italic;
  border-top: 1px solid #ebf0f5;
  padding-top: 30px;
  display: inline-block;
}

@media (max-width: 991px) {
  .outcomes-section {
    padding: 80px 0;
  }

  .outcomes-minimal-list {
    margin-top: 40px;
    border-left: none;
    padding-left: 0;
    margin-left: 0;
  }

  .outcome-minimal-item {
    padding-left: 0;
    margin-bottom: 30px;
    text-align: center;
  }

  .outcome-minimal-item::before {
    display: none;
  }

  .outcome-minimal-text {
    font-size: 1.25rem;
  }
}

/* ============================================================================
   RELATED TREATMENTS SECTION (Compact & Organic - Dark Theme)
   ============================================================================ */
.related-section {
  padding: 100px 0;
  /* Increased padding to prevent visual collision */
  background-color: var(--primary-color);
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.related-layout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}

.related-header-group {
  flex: 0 0 auto;
  max-width: 450px;
}

.related-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
  /* White for max contrast against dark bg */
  opacity: 0.9;
  letter-spacing: 1.5px;
  display: block;
  margin-bottom: 8px;
}

.related-heading {
  font-size: 1.5rem;
  font-weight: 800;
  color: #ffffff;
  /* White text for dark mode */
  margin: 0 0 10px 0;
  line-height: 1.2;
}

.related-desc {
  font-size: 0.95rem;
  color: #e9ecef;
  /* Brightened from #d0dbe5 for safer AA/AAA contrast */
  margin: 0;
  line-height: 1.5;
}

.related-links-group {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  /* Changed from flex-end to align left */
  gap: 10px;
  margin-left: 40px;
  /* Added margin to separate from header */
}

.related-pill {
  display: inline-block;
  padding: 8px 20px;
  background-color: rgba(255, 255, 255, 0.08);
  /* Slightly more visible background */
  border: 1px solid rgba(255, 255, 255, 0.3);
  /* Higher contrast border */
  border-radius: 50px;
  color: #ffffff;
  /* White text */
  font-weight: 600;
  font-size: 0.85rem;
  text-decoration: none;
  transition: all 0.2s ease;
  box-shadow: none;
}

.related-pill:hover {
  background-color: #ffffff;
  color: var(--primary-color);
  border-color: #ffffff;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

@media (max-width: 991px) {
  .related-layout {
    flex-direction: column;
    align-items: flex-start;
    gap: 25px;
  }

  .related-header-group {
    max-width: 100%;
  }

  .related-links-group {
    justify-content: flex-start;
  }
}

/* ============================================================================
   SPINE OPTIONS SECTION (Compact & Non-Boxy)
   ============================================================================ */
.spine-options-section {
  padding-top: 60px;
  padding-bottom: 100px;
  /* Increased to prevent footer collision */
  background-color: #ffffff;
  border-top: 1px solid #ebf0f5;
}

.spine-layout {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
}

.spine-header-group {
  flex: 1;
  max-width: 650px;
}

.spine-label {
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  letter-spacing: 1.5px;
  display: block;
  margin-bottom: 8px;
}

.spine-desc {
  font-size: 1.1rem;
  font-weight: 600;
  color: var(--primary-color);
  margin: 0;
  line-height: 1.5;
}

.spine-links-group {
  flex: 0 0 auto;
  display: flex;
  gap: 30px;
  align-items: center;
}

.spine-link {
  display: inline-flex;
  align-items: center;
  font-weight: 700;
  color: var(--primary-color);
  text-decoration: none;
  font-size: 1rem;
  position: relative;
  padding: 10px 0;
  transition: color 0.3s ease;
}

.spine-link::after {
  content: "";
  position: absolute;
  bottom: 5px;
  left: 0;
  width: 0%;
  height: 2px;
  background-color: var(--secondary-color);
  transition: width 0.3s ease;
}

.spine-link:hover {
  color: var(--secondary-color);
}

.spine-link:hover::after {
  width: 100%;
}

.spine-link i {
  margin-left: 8px;
  font-size: 0.9em;
  color: var(--secondary-color);
  transition: transform 0.3s ease;
}

.spine-link:hover i {
  transform: translateX(5px);
}

@media (max-width: 991px) {
  .spine-layout {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }

  .spine-links-group {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}

/* ============================================================================
   SPINE OPTIONS SECTION (Editorial Flow - Spacious)
   ============================================================================ */
.spine-options-section {
  padding: 120px 0;
  background-color: #ffffff;
  border-top: 1px solid #ebf0f5;
}

.spine-layout-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
}

.spine-content-col {
  flex: 0 0 40%;
  padding-right: 50px;
}

.spine-links-col {
  flex: 0 0 55%;
}

.spine-heading-style {
  font-size: 0.9rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  letter-spacing: 2px;
  margin-bottom: 25px;
}

.spine-desc-style {
  font-size: 2rem;
  font-weight: 300;
  color: var(--primary-color);
  line-height: 1.4;
}

/* Editorial Link Rows */
.spine-link-row {
  display: block;
  padding: 30px 0;
  border-bottom: 1px solid #e1e7ee;
  text-decoration: none;
  transition: border-color 0.3s ease;
}

.spine-link-row:first-child {
  border-top: 1px solid #e1e7ee;
}

.spine-link-row:hover {
  border-color: var(--secondary-color);
}

.spine-row-content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.spine-link-text {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--primary-color);
  margin: 0;
  transition: color 0.3s ease;
}

.spine-link-arrow {
  font-size: 1.2rem;
  color: #cbd3da;
  transition: all 0.3s ease;
}

.spine-link-row:hover .spine-link-text {
  color: var(--secondary-color);
}

.spine-link-row:hover .spine-link-arrow {
  color: var(--secondary-color);
  transform: translateX(10px);
}

@media (max-width: 991px) {
  .spine-content-col,
  .spine-links-col {
    flex: 0 0 100%;
    padding-right: 0;
  }

  .spine-content-col {
    margin-bottom: 50px;
  }

  .spine-desc-style {
    font-size: 1.5rem;
  }
}

/* ============================================================================
   SPINE OPTIONS SECTION (Pill Gateways - Dark Theme)
   ============================================================================ */
.spine-gateway-section {
  padding: 100px 0;
  background-color: var(--primary-color);
  border-top: none;
  /* Removed visible line */
}

.spine-gateway-header {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 50px;
}

.spine-gateway-title {
  font-size: 1.8rem;
  font-weight: 800;
  color: #ffffff;
  /* White text */
  margin-bottom: 20px;
}

.spine-gateway-desc {
  font-size: 1.15rem;
  color: #e9ecef;
  /* Light grey text */
  line-height: 1.6;
}

.spine-gateway-grid {
  display: flex;
  justify-content: center;
  gap: 30px;
  flex-wrap: wrap;
}

.spine-gateway-pill {
  flex: 0 1 auto;
  min-width: 320px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 30px;
  background: rgba(255, 255, 255, 0.05);
  /* Glass Background */
  border-radius: 60px;
  box-shadow: none;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
  border: 1px solid rgba(255, 255, 255, 0.1);
  /* Subtle border */
}

.spine-gateway-pill:hover {
  transform: translateY(-5px) scale(1.02);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
  background: #ffffff;
  /* Solid White on Hover */
  border-color: #ffffff;
}

.spine-pill-text {
  font-size: 1.1rem;
  font-weight: 700;
  color: #ffffff;
  /* White text initially */
  margin-right: 15px;
  transition: color 0.3s ease;
}

.spine-gateway-pill:hover .spine-pill-text {
  color: var(--primary-color);
  /* Dark text on hover */
}

.spine-pill-icon {
  width: 40px;
  height: 40px;
  background-color: rgba(255, 255, 255, 0.1);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 0.9rem;
  transition: all 0.3s ease;
}

.spine-gateway-pill:hover .spine-pill-icon {
  background-color: var(--secondary-color) !important;
  /* Force Gold background */
  color: var(--primary-color) !important;
  /* Dark Blue Arrow for Contrast */
  transform: rotate(-45deg);
}

.spine-gateway-pill:hover .spine-pill-icon i {
  color: var(--primary-color) !important;
  /* Dark Blue Arrow */
}

@media (max-width: 768px) {
  .spine-gateway-grid {
    flex-direction: column;
    align-items: center;
  }

  .spine-gateway-pill {
    width: 100%;
    min-width: auto;
  }
}

/* ============================================================================
   FAQ SECTION (Editorial/Minimal)
   ============================================================================ */
.faq-editorial-section {
  padding: 100px 0;
  background-color: #ffffff;
}

.faq-layout {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.faq-header-col {
  flex: 0 0 35%;
  padding-right: 40px;
}

.faq-title {
  font-size: 2.5rem;
  font-weight: 800;
  color: var(--primary-color);
  line-height: 1.1;
  position: sticky;
  top: 100px;
}

.faq-list-col {
  flex: 0 0 60%;
}

.faq-item {
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: 1px solid #eef2f7;
}

.faq-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

.faq-question {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--primary-color);
  margin-bottom: 15px;
  display: flex;
  align-items: flex-start;
}

.faq-question i {
  color: var(--secondary-color);
  font-size: 0.9em;
  margin-right: 15px;
  margin-top: 5px;
}

.faq-answer {
  font-size: 1.1rem;
  color: #6c757d;
  line-height: 1.7;
  padding-left: 35px;
  /* Indent to align with text, not icon */
}

@media (max-width: 991px) {
  .faq-layout {
    flex-direction: column;
  }

  .faq-header-col,
  .faq-list-col {
    flex: 0 0 100%;
    padding-right: 0;
  }

  .faq-header-col {
    margin-bottom: 40px;
  }

  .faq-title {
    position: static;
  }
}

/* ============================================================================
   SCHEDULE EVALUATION FINAL CTA
   ============================================================================ */
.schedule-evaluation-section {
  padding: 100px 0 120px;
  /* Extra bottom padding to blend into footer visual flow */
  background-color: var(--primary-color);
  text-align: center;
  position: relative;
  z-index: 10;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  /* Subtle separation from FAQ */
}

.schedule-content {
  max-width: 800px;
  margin: 0 auto;
}

.schedule-title {
  font-size: 3rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 25px;
  line-height: 1.1;
}

.schedule-desc {
  font-size: 1.25rem;
  color: #e9ecef;
  margin-bottom: 40px;
  line-height: 1.6;
}

/* Use existing btn classes but ensure high visibility */
.schedule-btn-wrapper .btn-default {
  background-color: var(--secondary-color);
  color: var(--primary-color);
  border-color: var(--secondary-color);
}

.schedule-btn-wrapper .btn-default:hover {
  background-color: #ffffff;
  color: var(--primary-color);
  border-color: #ffffff;
}

@media (max-width: 768px) {
  .schedule-title {
    font-size: 2.25rem;
  }
}

/* ============================================================================
   CARE REHABILITATION SECTION (Screenshot Match)
   ============================================================================ */
.care-rehabilitation {
  position: relative;
  z-index: 1;
  padding: 100px 0;
}

.rehab-benefits-item {
  background-color: var(--primary-color);
  padding: 40px 20px;
  border-radius: 15px;
  text-align: center;
  transition: all 0.3s ease-in-out;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 220px;
  /* Ensure square-ish look */
}

.rehab-benefits-item:hover {
  transform: translateY(-10px);
}

.rehab-benefits-item .icon-box {
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  background-color: transparent;
  /* Removed circle bg */
  border-radius: 0;
}

.rehab-benefits-item .icon-box img {
  width: 45px;
  height: auto;
  filter: brightness(0) invert(1);
  /* Make icons white */
  transition: all 0.3s ease-in-out;
}

.rehab-benefits-item:hover .icon-box img {
  transform: scale(1.1);
}

.rehab-benefits-content h3 {
  font-size: 1.1rem;
  font-weight: 500;
  text-transform: capitalize;
  margin: 0;
  color: #ffffff;
  /* White Text */
  line-height: 1.4;
  font-family: var(--body-font);
  /* Looks like body font in ss */
}

/* Subtext inside the condition cards */
.condition-desc {
  font-size: 0.95rem;
  color: #64748b;
  /* Muted Slate Grey */
  line-height: 1.5;
  transition: color 0.3s ease;
}

/* Make text-only card look deliberately un-clickable */
.condition-item-card.text-only .condition-desc {
  color: #94a3b8;
}

/* Update the arrow container and icon to use theme variables (Default Mode) */
.condition-item-card .condition-arrow {
  background-color: #f0f7fa;
  /* Your theme's original faint blue circle background */
  color: var(--primary-color) !important;
  /* Restores the dark blue arrow */
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  transition: all 0.4s ease;
}

/* Ensure the FontAwesome icon inherits the primary color */
.condition-item-card .condition-arrow i {
  color: inherit;
}

/* Default hover state: Primary color circle, White arrow */
.condition-item-card:hover .condition-arrow {
  background-color: var(--primary-color);
  /* Solid primary color background on hover */
  color: #ffffff !important;
  /* White arrow on hover for contrast */
  transform: translateX(8px);
}

/* ============================================================================
   PROCEDURE STEPS TIMELINE (Dark Theme Design)
   ============================================================================ */

.procedure-steps-section {
  padding: 120px 0;
  background-color: var(--primary-color);
  /* Dark Background */
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

/* Header */
.procedure-intro {
  max-width: 800px;
  margin: 0 auto 60px;
  text-align: center;
}

.procedure-subtitle {
  display: block;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--secondary-color);
  /* Bright Accent */
  letter-spacing: 2px;
  margin-bottom: 15px;
}

.procedure-title {
  font-size: 2.75rem;
  font-weight: 800;
  color: #ffffff;
  /* White Text */
  margin-bottom: 25px;
  line-height: 1.2;
}

.procedure-desc {
  font-size: 1.15rem;
  color: rgba(255, 255, 255, 0.9);
  line-height: 1.7;
}

/* ============================================================================
   PROCEDURE STEPS TIMELINE - ALTERNATING LAYOUT
   ============================================================================ */

/* Timeline Container */
.procedure-timeline {
  position: relative;
  max-width: 1000px;
  /* Widened slightly for the split layout */
  margin: 0 auto;
  padding: 0;
  /* Remove old padding */
}

/* The Center Vertical Line */
.procedure-timeline::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 2px;
  background-color: rgba(255, 255, 255, 0.15);
  /* Faint white line */
  z-index: 0;
}

/* Force black icons for specifically marked high-contrast items */
/* Moved down to ensure it wins over general yellow icon rules */
html[data-contrast="dark"] .dark-icon-forced,
html[data-contrast="dark"] .dark-contrast-bg-yellow i {
  color: #000000 !important;
  opacity: 1 !important;
}

/* 4. Accessibility: Light Contrast Mode Overrides */
/* Fix for invisible white text on light backgrounds */
html[data-contrast="light"] .final-cta-impact,
html[data-contrast="light"] .final-cta-impact .dark-contrast-bg-black {
  background-color: #f8f9fa !important;
  background: #f8f9fa !important;
  color: #023047 !important;
}

html[data-contrast="light"] .final-cta-impact h2,
html[data-contrast="light"] .final-cta-impact h2 span,
html[data-contrast="light"] .final-cta-impact .dark-contrast-text-yellow {
  color: #023047 !important;
  /* Force Dark Blue */
  opacity: 1 !important;
}

html[data-contrast="light"] .final-cta-impact p {
  color: #444444 !important;
}

html[data-contrast="light"] .final-cta-impact .cta-badge {
  background-color: #023047 !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

/* Neighborhood Tags Hover Logic (Theme Aware) */
.location-neighborhood-tag:hover {
  background: var(--accent-color) !important;
  color: #ffffff !important;
}

html[data-contrast="light"] .location-neighborhood-tag {
  background-color: #ffffff !important;
  border: 1px solid #dddddd !important;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

html[data-contrast="light"] .location-neighborhood-tag:hover {
  background-color: #023047 !important;
  /* Dark Blue Hover in Light Mode */
  color: #ffffff !important;
  /* White Text on Hover */
  -webkit-text-fill-color: #ffffff !important;
  border-color: #023047 !important;
}

html[data-contrast="dark"] .location-neighborhood-tag:hover {
  background-color: #ffff00 !important;
  /* Yellow Hover in Dark Mode */
  color: #000000 !important;
  /* Black Text on Hover */
  -webkit-text-fill-color: #000000 !important;
  border-color: #000000 !important;
}

/* General override for yellow text in light mode (make it dark) */
html[data-contrast="light"] .dark-contrast-text-yellow {
  color: #023047 !important;
}

/* Fix for Patient Success / Testimonials Section in Light Mode */
html[data-contrast="light"] .our-testimonial-impact,
html[data-contrast="light"] .our-testimonial-impact *,
html[data-contrast="light"] .location-nexus-section,
html[data-contrast="light"] .location-nexus-section *,
html[data-contrast="light"] .our-services,
html[data-contrast="light"] .our-services *,
html[data-contrast="light"] .hero-section,
html[data-contrast="light"] .hero-section *,
html[data-contrast="light"] .hero,
html[data-contrast="light"] .hero *,
html[data-contrast="light"] .final-cta-impact,
html[data-contrast="light"] .final-cta-impact *,
html[data-contrast="light"] .patient-journey-vertical,
html[data-contrast="light"] .patient-journey-vertical *,
html[data-contrast="light"] .physician-highlight-section,
html[data-contrast="light"] .physician-highlight-section *,
html[data-contrast="light"] .care-principles,
html[data-contrast="light"] .care-principles * {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  /* Forces color through animation layers */
  opacity: 1 !important;
  background-image: none !important;
}

/* Specific Exception: White text for the dark blue action buttons in Location Nexas */
html[data-contrast="light"] .location-nexus-section .location-btn,
html[data-contrast="light"] .location-nexus-section .location-btn *,
html[data-contrast="light"] .location-nexus-section .location-btn i,
html[data-contrast="light"] .location-nexus-section .location-card-main .dark-contrast-bg-black i,
html[data-contrast="light"] .location-nexus-section .loc-icon-wrapper i,
html[data-contrast="light"] .physician-info-wrap .dark-contrast-bg-black i {
  background-color: #023047 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Physician Bio Section Fixes for Light Mode */
html[data-contrast="light"] .physician-info-wrap .dark-contrast-bg-black {
  background-color: #023047 !important;
  color: #ffffff !important;
  border-color: #023047 !important;
}

/* UI Component Exception: Icons and experience badges stay dark blue with white text */
html[data-contrast="light"] .physician-highlight-section .dark-contrast-bg-black,
html[data-contrast="light"] .physician-highlight-section .dark-contrast-bg-black *,
html[data-contrast="light"] .location-nexus-section .dark-contrast-bg-black i {
  background-color: #023047 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html[data-contrast="light"] .physician-info-wrap h2,
html[data-contrast="light"] .physician-info-wrap p,
html[data-contrast="light"] .physician-info-wrap span,
html[data-contrast="light"] .physician-info-wrap strong {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  opacity: 1 !important;
}

html[data-contrast="light"]
  .physician-info-wrap
  div[style*="background: rgba(255, 255, 255, 0.03)"] {
  background-color: #ffffff !important;
  border: 1px solid #dddddd !important;
  box-shadow: none !important;
}

html[data-contrast="light"] .our-testimonial-impact,
html[data-contrast="light"] .location-nexus-section,
html[data-contrast="light"] .our-services,
html[data-contrast="light"] .hero-section,
html[data-contrast="light"] .hero,
html[data-contrast="light"] .final-cta-impact,
html[data-contrast="light"] .patient-journey-vertical,
html[data-contrast="light"] .physician-highlight-section,
html[data-contrast="light"] .care-principles {
  background-color: #f8f9fa !important;
  background: #f8f9fa !important;
}

/* Targeted, Our Services & Patient Journey Heading Visibility Fix (Default, Dark, Light & Invert modes) */
.targeted-treatments .text-anime-style-3,
.targeted-treatments .text-anime-style-3 *,
.our-services .text-anime-style-3,
.our-services .text-anime-style-3 *,
.patient-journey-vertical .text-anime-style-3 *,
.spine-heading .text-anime-style-3,
.spine-heading .text-anime-style-3 *,
.our-testimonial-impact .text-anime-style-3,
.our-testimonial-impact .text-anime-style-3 * {
  color: #023047 !important;
  -webkit-text-fill-color: #023047 !important;
  opacity: 1 !important;
}

html[data-contrast="dark"] .targeted-treatments .text-anime-style-3,
html[data-contrast="dark"] .targeted-treatments .text-anime-style-3 *,
html[data-contrast="dark"] .our-services .text-anime-style-3,
html[data-contrast="dark"] .our-services .text-anime-style-3 *,
html[data-contrast="dark"] .patient-journey-vertical .text-anime-style-3 *,
html[data-contrast="dark"] .spine-heading .text-anime-style-3,
html[data-contrast="dark"] .spine-heading .text-anime-style-3 *,
html[data-contrast="dark"] .our-testimonial-impact .text-anime-style-3,
html[data-contrast="dark"] .our-testimonial-impact .text-anime-style-3 * {
  color: #ffff00 !important;
  /* Yellow for high contrast in dark mode */
  -webkit-text-fill-color: #ffff00 !important;
  opacity: 1 !important;
}

html[data-contrast="light"] .targeted-treatments .text-anime-style-3,
html[data-contrast="light"] .targeted-treatments .text-anime-style-3 *,
html[data-contrast="light"] .our-services .text-anime-style-3,
html[data-contrast="light"] .our-services .text-anime-style-3 *,
html[data-contrast="light"] .patient-journey-vertical .text-anime-style-3 *,
html[data-contrast="light"] .spine-heading .text-anime-style-3,
html[data-contrast="light"] .spine-heading .text-anime-style-3 *,
html[data-contrast="light"] .our-testimonial-impact .text-anime-style-3,
html[data-contrast="light"] .our-testimonial-impact .text-anime-style-3 * {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  opacity: 1 !important;
}

/* Fix for Invert Mode visibility - Use black as base so it inverts to white on the darkened background */
html[data-contrast="invert"] .targeted-treatments .text-anime-style-3,
html[data-contrast="invert"] .targeted-treatments .text-anime-style-3 *,
html[data-contrast="invert"] .our-services .text-anime-style-3,
html[data-contrast="invert"] .our-services .text-anime-style-3 *,
html[data-contrast="invert"] .patient-journey-vertical .text-anime-style-3 *,
html[data-contrast="invert"] .spine-heading .text-anime-style-3,
html[data-contrast="invert"] .spine-heading .text-anime-style-3 *,
html[data-contrast="invert"] .our-testimonial-impact .text-anime-style-3,
html[data-contrast="invert"] .our-testimonial-impact .text-anime-style-3 * {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  opacity: 1 !important;
}

/* Step Number Badge Exception: White text on Dark Blue circular background */
html[data-contrast="light"]
  .patient-journey-vertical
  .dark-contrast-bg-black.dark-contrast-ring-yellow,
html[data-contrast="light"] .care-principles .dark-contrast-bg-black.dark-contrast-ring-yellow {
  background-color: #023047 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #ffffff !important;
}

/* Diamond Icon Container Exception */
html[data-contrast="light"] .patient-journey-vertical .journey-row div[style*="rotate(45deg)"] {
  background-color: #ffffff !important;
  border-color: #023047 !important;
}

html[data-contrast="light"] .patient-journey-vertical .journey-row div[style*="rotate(45deg)"] i {
  color: #023047 !important;
  -webkit-text-fill-color: #023047 !important;
}

html[data-contrast="light"] .our-testimonial-impact .swiper-slide > div,
html[data-contrast="light"] .location-card-main,
html[data-contrast="light"] .clinical-feature-card,
html[data-contrast="light"] .final-cta-impact .dark-contrast-bg-black,
html[data-contrast="light"]
  .care-principles
  .dark-contrast-bg-black:not(.dark-contrast-ring-yellow),
html[data-contrast="light"] .treatment-cta-card,
html[data-contrast="light"] .treatment-cta-card:hover {
  background-color: #ffffff !important;
  border: 1px solid #000000 !important;
  color: #000000 !important;
}

/* THE ULTIMATE FIX: CSS Masking for Location Icons (100% Glitch-Proof) */
.location-icon-mask {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 12px;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  vertical-align: middle;
}

/* Light Mode: Force White icons on buttons */
html[data-contrast="light"] #main-content#main-content .location-btn svg,
html[data-contrast="light"] #main-content#main-content .location-btn svg path {
  fill: #ffffff !important;
  color: #ffffff !important;
}

/* Light Contrast: Force treatment CTA elements to be black on their white backgrounds */
html[data-contrast="light"] .treatment-cta-icon svg,
html[data-contrast="light"] .treatment-cta-icon svg * {
  color: #000000 !important;
  stroke: #000000 !important;
  opacity: 1 !important;
}

html[data-contrast="light"] .treatment-cta-card .treatment-cta-arrow,
html[data-contrast="light"] .treatment-cta-card:hover .treatment-cta-arrow,
html[data-contrast="light"] .treatment-cta-card:hover .treatment-cta-content h3,
html[data-contrast="light"] .treatment-cta-card:hover .treatment-cta-content h4,
html[data-contrast="light"] .treatment-cta-card:hover .treatment-cta-content h3 a,
html[data-contrast="light"] .treatment-cta-card:hover .treatment-cta-content h4 a {
  color: #000000 !important;
}

html[data-contrast="light"] .our-testimonial-impact .testimonial-content p,
html[data-contrast="light"] .clinical-feature-card p,
html[data-contrast="light"] .final-cta-impact p {
  color: #000000 !important;
}

html[data-contrast="light"] .our-testimonial-impact .testimonial-button-prev,
html[data-contrast="light"] .our-testimonial-impact .testimonial-button-next {
  background-color: #ffffff !important;
  border: 1px solid #023047 !important;
  color: #023047 !important;
}

/* Individual Step Wrappers */
.procedure-step-item {
  position: relative;
  display: flex;
  justify-content: flex-end;
  /* Even items (Right side) align to the right */
  width: 100%;
  margin-bottom: 40px;
  z-index: 1;
}

.procedure-step-item:nth-child(odd) {
  justify-content: flex-start;
  /* Odd items (Left side) align to the left */
}

.procedure-step-item:last-child {
  margin-bottom: 0;
}

/* Horizontal Connector Lines */
.procedure-step-item::after {
  content: "";
  position: absolute;
  top: 50px;
  /* Aligns perfectly with the dot and header icon */
  width: 40px;
  /* Gap between center line and card */
  height: 2px;
  background-color: rgba(255, 255, 255, 0.15);
  z-index: 0;
}

/* Connector line for left cards goes right from center */
.procedure-step-item:nth-child(odd)::after {
  right: 50%;
}

/* Connector line for right cards goes left from center */
.procedure-step-item:nth-child(even)::after {
  left: 50%;
}

/* The Center Dots */
.procedure-step-dot {
  position: absolute;
  left: 50%;
  top: 50px;
  transform: translate(-50%, -50%);
  /* Perfectly center over the junction */
  width: 16px;
  /* Smaller, hollow dot as per design */
  height: 16px;
  background-color: var(--primary-color);
  border: 2px solid #ffffff;
  /* Crisp white ring */
  border-radius: 50%;
  z-index: 2;
  margin: 0;
  box-shadow: 0 0 0 6px var(--primary-color);
  /* Cuts out the lines beneath it */
}

/* Step Card (Glassmorphism Dark) */
.procedure-step-card {
  width: calc(50% - 40px);
  /* Take up exactly half, minus the 40px connector gap */
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px;
  padding: 30px;
  position: relative;
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
}

.procedure-step-item:hover .procedure-step-card {
  transform: translateY(-5px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.3);
  background-color: rgba(255, 255, 255, 0.08);
}

/* Full-width standalone usage card centering */
.procedure-step-card.full-width-card {
  width: 100% !important;
  max-width: 920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  border-radius: 20px !important;
}

/* Glassmorphism Condition Tile styling for procedure cards */
.condition-glass-tile {
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 14px;
  transition: all 0.3s ease;
  min-height: 68px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 4px 15px rgba(0, 0, 0, 0.15);
}

.condition-glass-tile:hover {
  background: rgba(255, 255, 255, 0.12);
  border-color: rgba(255, 255, 255, 0.35);
  transform: translateY(-3px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
}

.tile-icon-badge {
  width: 44px;
  height: 44px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #ffffff;
  font-size: 17px;
  transition: all 0.3s ease;
}

.condition-glass-tile:hover .tile-icon-badge {
  background: #ffffff;
  color: #023047;
  border-color: #ffffff;
  box-shadow: 0 4px 15px rgba(255, 255, 255, 0.3);
}

.tile-label {
  font-size: 1.05rem;
  line-height: 1.4;
  font-weight: 700;
  color: #ffffff;
  letter-spacing: 0.2px;
}

/* Accessibility High Contrast Themes */
html[data-contrast="dark"] .condition-glass-tile {
  background: #000000 !important;
  border: 1px solid #ffff00 !important;
}
html[data-contrast="dark"] .tile-icon-badge {
  background: #000000 !important;
  border: 1px solid #ffff00 !important;
  color: #ffff00 !important;
}
html[data-contrast="dark"] .tile-label {
  color: #ffff00 !important;
}

html[data-contrast="light"] .condition-glass-tile {
  background: #ffffff !important;
  border: 2px solid #000000 !important;
}
html[data-contrast="light"] .tile-icon-badge {
  background: #000000 !important;
  border: 1px solid #000000 !important;
  color: #ffffff !important;
}
html[data-contrast="light"] .tile-label {
  color: #000000 !important;
}


/* STEP Number Tag */
.procedure-step-number {
  position: absolute;
  top: 30px;
  right: 30px;
  font-size: 0.75rem;
  font-weight: 800;
  color: rgba(255, 255, 255, 0.3);
  letter-spacing: 2px;
}

/* Step Content */
.procedure-step-header {
  display: flex;
  align-items: center;
  margin-bottom: 15px;
}

.procedure-step-icon {
  width: 40px;
  height: 40px;
  background-color: rgba(255, 255, 255, 0.1);
  color: var(--secondary-color);
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  margin-right: 15px;
  transition: all 0.3s ease;
}

.procedure-step-item:hover .procedure-step-icon {
  background-color: var(--secondary-color);
  color: var(--primary-color);
}

.procedure-step-title {
  font-size: 1.4rem;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  padding-right: 60px;
  /* Prevent title from overlapping the STEP 01 tag */
}

.procedure-step-text {
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.6;
  margin: 0;
}

/* Footer Box */
.procedure-footer {
  max-width: 800px;
  margin: 60px auto 0;
  text-align: center;
  background-color: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-left: 4px solid var(--secondary-color);
  border-radius: 8px;
  padding: 25px 30px;
}

.procedure-footer p {
  margin: 0;
  font-size: 1.15rem;
  font-style: italic;
  color: rgba(255, 255, 255, 0.9);
}

/* ============================================================================
   RESPONSIVE DESIGN (Reverts to single-column on mobile)
   ============================================================================ */
@media (max-width: 991px) {
  .procedure-timeline::before {
    left: 20px;
    transform: translateX(-50%);
  }

  .procedure-step-dot {
    left: 20px;
  }

  /* Force all items to align right on smaller screens */
  .procedure-step-item,
  .procedure-step-item:nth-child(odd) {
    justify-content: flex-end !important;
  }

  /* Force all connectors to go right from the line */
  .procedure-step-item::after,
  .procedure-step-item:nth-child(odd)::after,
  .procedure-step-item:nth-child(even)::after {
    left: 20px !important;
    right: auto !important;
    width: 30px;
    /* Shorter connector */
  }

  .procedure-step-card {
    width: calc(100% - 50px);
    /* Fill screen minus the timeline space */
  }

  .procedure-step-number {
    position: relative;
    top: 0;
    right: 0;
    display: block;
    margin-bottom: 15px;
  }

  .procedure-step-title {
    padding-right: 0;
  }
}

@media (max-width: 767px) {
  .procedure-steps-section {
    padding: 80px 0;
  }

  .procedure-step-card {
    padding: 25px;
  }
}

/* === Mobile-only: Procedure Steps Section (≤480px) === */
@media (max-width: 480px) {
  /* Section: 80px (from 767px layer) → 50px */
  .procedure-steps-section {
    padding: 50px 0;
  }

  /* Intro block: tighten bottom margin */
  .procedure-intro {
    margin-bottom: 35px;
  }

  /* Subtitle eyebrow */
  .procedure-subtitle {
    font-size: 0.75rem;
    letter-spacing: 1.5px;
  }

  /* Title: 2.75rem all-caps → 1.6rem */
  .procedure-title {
    font-size: 1.6rem;
    line-height: 1.25;
    margin-bottom: 18px;
  }

  /* Section description */
  .procedure-desc {
    font-size: 1rem;
    line-height: 1.65;
  }

  /* Timeline line: move to 16px from edge to leave more room for card */
  .procedure-timeline::before {
    left: 16px;
  }

  /* Step dot: align with tighter line */
  .procedure-step-dot {
    left: 16px;
    width: 12px;
    height: 12px;
    top: 44px;
    box-shadow: 0 0 0 4px var(--primary-color);
  }

  /* Connector lines: shorten further for 320px */
  .procedure-step-item::after,
  .procedure-step-item:nth-child(odd)::after,
  .procedure-step-item:nth-child(even)::after {
    left: 16px !important;
    width: 20px;
  }

  /* Card: /* THE ULTIMATE FIX: CSS Masking for Location Icons (100% Glitch-Proof) */
.location-icon-mask {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 12px;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  vertical-align: middle;
}

/* High Contrast: Strongforce Yellow/Black mappings for Location Buttons */
html[data-contrast="dark"] #main-content#main-content .location-btn.dark-contrast-bg-yellow {
  background-color: #ffff00 !important;
  background: #ffff00 !important;
  border-color: #000000 !important;
  box-shadow: none !important;
}

html[data-contrast="dark"] #main-content#main-content .location-btn.dark-contrast-bg-yellow,
html[data-contrast="dark"] #main-content#main-content .location-btn.dark-contrast-bg-yellow * {
  color: #000000 !important;
  fill: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

/* Invert Mode: Swapped Calibration for Location Buttons */
/* 1. Get Directions: Force WHITE result (Corrected) */
html[data-contrast="invert"] #main-content#main-content .location-btn.dark-contrast-bg-black svg,
html[data-contrast="invert"]
  #main-content#main-content
  .location-btn.dark-contrast-bg-black
  svg
  path {
  fill: #ffffff !important;
  color: #ffffff !important;
  opacity: 1 !important;
}

/* 2. Book Appointment: Force BLACK result (Corrected) */
html[data-contrast="invert"] #main-content#main-content .location-btn.dark-contrast-bg-yellow svg,
html[data-contrast="invert"]
  #main-content#main-content
  .location-btn.dark-contrast-bg-yellow
  svg
  path {
  fill: #000000 !important;
  color: #000000 !important;
  opacity: 1 !important;
}

/* Light Mode: Force White icons on buttons */
html[data-contrast="light"] #main-content#main-content .location-btn svg,
html[data-contrast="light"] #main-content#main-content .location-btn svg path {
  fill: #ffffff !important;
  color: #ffffff !important;
}

  .procedure-step-card {
    width: calc(100% - 44px);
    padding: 16px;
    border-radius: 10px;
  }

  /* Disable hover lift on touch */
  .procedure-step-item:hover .procedure-step-card {
    transform: none;
  }

  /* Step number: smaller */
  .procedure-step-number {
    font-size: 0.65rem;
    letter-spacing: 1px;
    margin-bottom: 10px;
  }

  /* Step icon */
  .procedure-step-icon {
    width: 32px;
    height: 32px;
    font-size: 14px;
    margin-right: 10px;
  }

  /* Step title: 1.4rem → 1.05rem */
  .procedure-step-title {
    font-size: 1.05rem;
    line-height: 1.3;
  }

  /* Step description text */
  .procedure-step-text {
    font-size: 0.9rem;
    margin-top: 8px;
  }

  /* Step item gap */
  .procedure-step-item {
    margin-bottom: 24px;
  }

  /* Footer box: reduce top margin and padding */
  .procedure-footer {
    margin-top: 30px;
    padding: 18px 20px;
  }

  .procedure-footer p {
    font-size: 0.95rem;
    line-height: 1.6;
  }
}

/* Accessibility: Invert Mode Helpers */
html[data-contrast="invert"] .invert-icon-black {
  color: #000000 !important;
}

html[data-contrast="invert"] .invert-icon-cyan {
  color: #22d3ee !important;
}

/* Accessibility: Dark Contrast Mode Helpers */
/* 1. Black Background Containers */
html[data-contrast="dark"] .dark-contrast-bg-black {
  background-color: #000000 !important;
  color: #ffffff !important;
}

/* Ensure child text in black containers is white by default */
html[data-contrast="dark"] .dark-contrast-bg-black * {
  color: #ffffff !important;
}

/* 2. Yellow Background Containers (High Contrast Markers) */
html[data-contrast="dark"] .dark-contrast-bg-yellow {
  background-color: #ffff00 !important;
  box-shadow: inset 0 0 0 100px #ffff00 !important;
  border-color: #000000 !important;
}

/* Force ALL children of yellow containers to be pure black for maximum contrast */
/* Strengthened with higher specificity/order to override general black section rules */
html[data-contrast="dark"] .dark-contrast-bg-yellow,
html[data-contrast="dark"] .dark-contrast-bg-yellow *,
html[data-contrast="dark"] .dark-contrast-bg-yellow i,
html[data-contrast="dark"] .dark-contrast-bg-yellow .invert-icon-black {
  color: #000000 !important;
  box-shadow: inset 0 0 0 100px #ffff00 !important;
  opacity: 1 !important;
}

/* 3. Text & Border Highlights */
html[data-contrast="dark"] .dark-contrast-text-yellow {
  color: #ffff00 !important;
  opacity: 1 !important;
}

html[data-contrast="dark"] .dark-contrast-ring-yellow {
  border-color: #ffff00 !important;
  color: #ffff00 !important;
}

html[data-contrast="dark"] .dark-contrast-text-black {
  color: #000000 !important;
}

html[data-contrast="dark"] .journey-step-description {
  color: #ffff00 !important;
  -webkit-text-fill-color: #ffff00 !important;
  opacity: 1 !important;
}
/* ==========================================================
   WAVE CONTRAST - FINAL ATTEMPT (BOX-SHADOW HACK)
   ========================================================== */

/* 1. Normal State: Black Background, Yellow Text */
html[data-contrast="dark"] a.btn-default,
html[data-contrast="dark"] a.btn-default span {
  /* WAVE reads Box Shadows as solid backgrounds */
  box-shadow: inset 0 0 0 100px #000000 !important;
  background-color: #000000 !important;
  color: #ffff00 !important;
  -webkit-text-fill-color: #ffff00 !important;
  font-weight: 900 !important;
  /* Maximum thickness for WAVE */
  text-decoration: none !important;
  border: 2px solid #ffff00 !important;
  border-color: #ffff00 !important;
}

/* 2. Fix the Crescent Shadow (The <a> tag background) */
html[data-contrast="dark"] a.btn-default {
  background: #000000 !important;
  border-radius: 100px !important;
}

/* 3. Hover State: Maintain High Contrast */
html[data-contrast="dark"] a.btn-default:hover,
html[data-contrast="dark"] a.btn-default:hover span {
  box-shadow: inset 0 0 0 100px #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: #ffffff !important;
}

/* 4. Ensure Arrows stay visible (Yellow/White on Black) */
html[data-contrast="dark"] a.btn-default::before,
html[data-contrast="dark"] a.btn-default:hover::before {
  filter: brightness(0) invert(1) !important;
  /* Yellow/White arrow on black background */
  z-index: 5 !important;
}

/* 5. Nuke any remaining animation layers */
html[data-contrast="dark"] a.btn-default::after,
html[data-contrast="dark"] a.btn-default span::after {
  display: none !important;
  content: none !important;
}

/* 6. Invert Mode Helpers: Prevent Double Inversion */
html[data-contrast="invert"] .invert-no-filter {
  filter: none !important;
}

/* Ensure bullet points in clinical lists are black in invert mode */
html[data-contrast="invert"] .clinical-list-structured i.fa-circle {
  filter: none !important;
}

/* Dark Contrast Mode: Treatment CTA Card Hover Fix (Absolute specificity hack) */
html[data-contrast="dark"] #main-content#main-content .treatment-cta-card:hover,
html[data-contrast="dark"] #main-content#main-content .treatment-cta-card:hover * {
  background-color: #ffff00 !important;
  background: #ffff00 !important;
  color: #000000 !important;
}

/* Force SVGs to black on hover in dark mode if they were white */
html[data-contrast="dark"] .treatment-cta-card:hover svg [fill="white"],
html[data-contrast="dark"] .treatment-cta-card:hover svg [fill*="white"] {
  fill: #000000 !important;
}

html[data-contrast="dark"] .treatment-cta-card:hover svg [stroke="white"],
html[data-contrast="dark"] .treatment-cta-card:hover svg [stroke*="white"] {
  stroke: #000000 !important;
}

/* High Contrast Visibility: Force full opacity for Treatment CTA Icons */
html[data-contrast="light"] .treatment-cta-icon svg *,
html[data-contrast="dark"] .treatment-cta-icon svg * {
  opacity: 1 !important;
}

/* Dark Contrast Mode: Force key section icons to yellow against black backgrounds */
html[data-contrast="dark"] .invert-force-black,
html[data-contrast="dark"] .invert-force-black path,
html[data-contrast="dark"] .invert-force-black rect,
html[data-contrast="dark"] .invert-force-black circle {
  fill: #ffff00 !important;
  stroke: #ffff00 !important;
  color: #ffff00 !important;
  opacity: 1 !important;
}

/* Specific Accessibility Utility: Elements that should be Blue by Default, Yellow in Dark, Cyan/White in Invert */
.default-primary-dark-yellow {
  color: var(--primary-color) !important;
  -webkit-text-fill-color: var(--primary-color) !important;
}

.default-primary-dark-yellow-bg {
  background-color: var(--primary-color) !important;
}

/* Dark Contrast Override (Wins against default-primary class) */
html[data-contrast="dark"] .default-primary-dark-yellow {
  color: #ffff00 !important;
  -webkit-text-fill-color: #ffff00 !important;
}

html[data-contrast="dark"] .default-primary-dark-yellow-bg {
  background-color: #ffff00 !important;
}

/* Invert Contrast Override (Wins against default-primary class) */
html[data-contrast="invert"] .default-primary-dark-yellow {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

html[data-contrast="invert"] .default-primary-dark-yellow-bg {
  background-color: #000000 !important;
}

/* Tame the background ECG sign in Light Mode (it becomes too bright on white) */
html[data-contrast="light"] .ambient-ecg-svg {
  opacity: 0.02 !important;
}
html[data-contrast="light"] .ambient-ecg-svg svg path {
  stroke: #cccccc !important; /* Neutral gray to blend in */
}

/* Force elements to black before global inversion (results in white) */
html[data-contrast="invert"] .invert-force-black path,
html[data-contrast="invert"] .invert-force-black rect,
html[data-contrast="invert"] .invert-force-black circle {
  fill: #000000 !important;
  stroke: #000000 !important;
}

/* Invert Mode: Physician Bio Icons (Ensure result is solid black on white) */
html[data-contrast="invert"] .physician-icon {
  background: transparent !important;
  border: 2.5px solid #ffffff !important; /* Code White -> Visual Black */
  box-shadow: none !important;
}

html[data-contrast="invert"] .physician-icon svg * {
  fill: #ffffff !important; /* Code White -> Visual Black */
  stroke: #ffffff !important; /* Code White -> Visual Black */
  opacity: 1 !important;
}

/* Dark Contrast Mode Utility: Elements explicitly marked for yellow transformation */
html[data-contrast="dark"] .dark-contrast-text-yellow {
  color: #ffff00 !important;
  -webkit-text-fill-color: #ffff00 !important;
}

html[data-contrast="dark"] .dark-contrast-bg-yellow {
  background-color: #ffff00 !important;
  background: #ffff00 !important;
}

html[data-contrast="dark"] .dark-contrast-bg-black {
  background-color: #000000 !important;
  background: #000000 !important;
}

html[data-contrast="dark"] .dark-contrast-border-yellow {
  border-color: #ffff00 !important;
}

/* THE ULTIMATE FIX: CSS Masking for Location Icons (100% Glitch-Proof) */
.location-icon-mask {
  display: inline-block;
  width: 1.25rem;
  height: 1.25rem;
  margin-right: 12px;
  background-color: currentColor;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  vertical-align: middle;
}

/* Light Mode: Force White icons on buttons */
html[data-contrast="light"] #main-content#main-content .location-btn svg,
html[data-contrast="light"] #main-content#main-content .location-btn svg path {
  fill: #ffffff !important;
  color: #ffffff !important;
}

/* Invert Mode: Force Final CTA Arrow to White (via Black Code) */
html[data-contrast="invert"] .final-cta-arrow {
  fill: #eae9e9 !important;
  color: #e1dada !important;
}

/* Freeze Final CTA Button in Invert Mode (No hover changes) */
html[data-contrast="invert"] .final-cta-btn,
html[data-contrast="invert"] .final-cta-btn:hover {
  transform: none !important;
  background: #ffffff !important;
  color: var(--primary-color) !important;
  border-color: #ffffff !important;
  box-shadow: none !important;
  transition: none !important;
}

.icon-diamond-turn-right {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M285.4 31.4c-15.6-15.6-40.9-15.6-56.6 0l-192 192c-15.6 15.6-15.6 40.9 0 56.6l192 192c15.6 15.6 40.9 15.6 56.6 0l192-192c15.6-15.6 15.6-40.9 0-56.6l-192-192zM328 352c0 13.3-10.7 24-24 24H272c-13.3 0-24-10.7-24-24V320H232c-22.1 0-40-17.9-40-40V240c0-4.4 3.6-8 8-8h32c4.4 0 8 3.6 8 8v32c0 4.4 3.6 8 8 8h32c13.3 0 24 10.7 24 24v40h8c4.4 0 8 3.6 8 8v32zM232 144v32c0 4.4-3.6 8-8 8H192c-4.4 0-8-3.6-8-8V144c0-13.3 10.7-24 24-24h80c13.3 0 24 10.7 24 24v48c0 4.4-3.6 8-8 8H272c-4.4 0-8-3.6-8-8V168c0-13.3-10.7-24-24-24H232z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Cpath d='M285.4 31.4c-15.6-15.6-40.9-15.6-56.6 0l-192 192c-15.6 15.6-15.6 40.9 0 56.6l192 192c15.6 15.6 40.9 15.6 56.6 0l192-192c15.6-15.6 15.6-40.9 0-56.6l-192-192zM328 352c0 13.3-10.7 24-24 24H272c-13.3 0-24-10.7-24-24V320H232c-22.1 0-40-17.9-40-40V240c0-4.4 3.6-8 8-8h32c4.4 0 8 3.6 8 8v32c0 4.4 3.6 8 8 8h32c13.3 0 24 10.7 24 24v40h8c4.4 0 8 3.6 8 8v32zM232 144v32c0 4.4-3.6 8-8 8H192c-4.4 0-8-3.6-8-8V144c0-13.3 10.7-24 24-24h80c13.3 0 24 10.7 24 24v48c0 4.4-3.6 8-8 8H272c-4.4 0-8-3.6-8-8V168c0-13.3-10.7-24-24-24H232z'/%3E%3C/svg%3E");
}

.icon-calendar-check {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192H400V448c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192zM337 273c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-112 112c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L337 273z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath d='M152 24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H64C28.7 64 0 92.7 0 128v16 48V448c0 35.3 28.7 64 64 64H384c35.3 0 64-28.7 64-64V192 144 128c0-35.3-28.7-64-64-64H384c-35.3 0-64 28.7-64 64H344V24c0-13.3-10.7-24-24-24s-24 10.7-24 24V64H152V24zM48 192H400V448c0 8.8-7.2 16-16 16H64c-8.8 0-16-7.2-16-16V192zM337 273c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-112 112c-9.4 9.4-24.6 9.4-33.9 0l-64-64c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l47 47L337 273z'/%3E%3C/svg%3E");
}

/* Light Contrast Mode: Journey Icons (force primary color) - High Specificity Hack */
html[data-contrast="light"] #main-content#main-content .invert-force-black,
html[data-contrast="light"] #main-content#main-content .invert-force-black path,
html[data-contrast="light"] #main-content#main-content .invert-force-black rect,
html[data-contrast="light"] #main-content#main-content .invert-force-black circle {
  fill: #023047 !important;
  stroke: #023047 !important;
  color: #023047 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* TrustIndex Widget Accessibility Fixes for WAVE Contrast Standards */
.ti-with-tooltip,
.ti-read-more-active {
    color: #555555 !important;
    opacity: 1 !important;
}

/* Adaptive Section Title Backgrounds for WAVE Tool Contrast Checks */
.patient-journey-vertical .section-title {
    background-color: #e5eaec !important; /* Solid light gray for WAVE */
}

.our-testimonial-impact .section-title {
    background-color: #ffffff !important; /* Solid white for WAVE */
}

/* ENSURE they are solid BLACK in DARK Contrast mode to maintain visual design and WCAG compliance */
html[data-contrast="dark"] .patient-journey-vertical .section-title,
html[data-contrast="dark"] .our-testimonial-impact .section-title {
    background-color: #000000 !important;
}

/* TrustIndex Dark Mode Overrides: Force cards and controls to black background */
html[data-contrast="dark"] .ti-widget .ti-review-item,
html[data-contrast="dark"] .ti-widget .ti-inner,
html[data-contrast="dark"] .ti-widget .ti-next,
html[data-contrast="dark"] .ti-widget.ti-widget .ti-next,
html[data-contrast="dark"] .ti-widget.ti-widget .ti-prev,
html[data-contrast="dark"] .ti-widget.ti-widget .ti-controls,
html[data-contrast="dark"] .ti-widget.ti-widget div,
html[data-contrast="dark"] .ti-widget.ti-widget a,
html[data-contrast="dark"] .ti-widget.ti-widget span,
html[data-contrast="dark"] .ti-widget.ti-widget section,
html[data-contrast="dark"] .ti-widget.ti-widget article,
html[data-contrast="dark"] .ti-widget.ti-widget div::before,
html[data-contrast="dark"] .ti-widget.ti-widget div::after,
html[data-contrast="dark"] .ti-widget.ti-widget a::before,
html[data-contrast="dark"] .ti-widget.ti-widget a::after,
html[data-contrast="dark"] .ti-widget.ti-widget span::before,
html[data-contrast="dark"] .ti-widget.ti-widget span::after,
html[data-contrast="dark"] .ti-widget.ti-widget .ti-inner,
html[data-contrast="dark"] .ti-widget.ti-widget .ti-review-item,
html[data-contrast="dark"] .ti-widget.ti-widget .ti-review-content {
    background-color: #000000 !important;
    background: #000000 !important;
    background-image: none !important;
    border: 1px solid #ffff00 !important;
    box-shadow: none !important;
}

html[data-contrast="dark"] .ti-widget .ti-review-item *,
html[data-contrast="dark"] .ti-widget .ti-inner *,
html[data-contrast="dark"] .ti-widget .ti-next::after,
html[data-contrast="dark"] .ti-widget .ti-prev::after,
html[data-contrast="dark"] .ti-widget .ti-next i,
html[data-contrast="dark"] .ti-widget .ti-prev i {
    color: #ffff00 !important;
    -webkit-text-fill-color: #ffff00 !important;
    opacity: 1 !important;
}

/* Global Accessibility: Vibrant Focus Indicators for AAA Compliance */
.btn-default:focus-visible,
.btn-highlighted:focus-visible,
.location-neighborhood-tag:focus-visible,
.final-cta-btn:focus-visible,
.location-btn:focus-visible {
    outline: 5px solid #ff3399 !important;
    outline-offset: 6px !important;
    box-shadow: 0 0 40px rgba(255, 51, 153, 0.5) !important;
    z-index: 50 !important;
    position: relative !important;
}

.service-card-wrapper:has(:focus-visible) {
    outline: 5px solid #ff3399 !important;
    outline-offset: 4px !important;
    border-radius: 24px;
    z-index: 50 !important;
    box-shadow: 0 0 25px rgba(255, 51, 153, 0.6) !important;
}

.condition-oval-card:has(:focus-visible),
.treatment-item:focus-visible {
    outline: 5px solid #ff3399 !important;
    outline-offset: -10px !important;
    border-radius: 24px;
    z-index: 50 !important;
    box-shadow: inset 0 0 45px rgba(255, 51, 153, 0.4) !important;
}

/* Ensure Treatment Items respond correctly to focus just like hover */
.treatment-item:focus-visible {
    background: #ffffff !important;
    transform: translateY(-8px) !important;
    color: var(--primary-color) !important;
}

.treatment-item:focus-visible p {
    color: var(--primary-color) !important;
}

.treatment-item:focus-visible .treatment-indicator {
    background: var(--accent-color) !important;
    border-color: var(--accent-color) !important;
}

.treatment-item:focus-visible .treatment-indicator i {
    color: #ffffff !important;
    transform: rotate(0deg) !important;
}



/* === WCAG 1.4.10 Reflow: 320px viewport (400% zoom on 1280px) === */
@media (max-width: 320px) {
  .journey-step-card {
    padding: 30px 20px !important;
  }
  .footer-links.social-links ul {
    flex-wrap: wrap !important;
  }
}

@media (max-width: 768px) {
  .bg-radius-section {
    border-radius: 40px 40px 0 0 !important;
  }
  .bg-radius-section:not(.bg-section) {
    border-radius: 0 !important;
    margin-top: 0 !important;
  }
}

/* Centered layout for related treatment cards grid */
@media (min-width: 992px) {
  .related-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 25px !important;
  }
  .related-grid > .related-item-card {
    flex: 0 0 calc(25% - 19px) !important;
    max-width: calc(25% - 19px) !important;
    width: calc(25% - 19px) !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .related-grid {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 20px !important;
  }
  .related-grid > .related-item-card {
    flex: 0 0 calc(50% - 10px) !important;
    max-width: calc(50% - 10px) !important;
    width: calc(50% - 10px) !important;
  }
}

/* Expert Card & Physician Card Master Redesign (Global) */
.expert-card,
.physician-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  background: #ffffff !important;
  border-radius: 24px !important;
  box-shadow: 0 20px 60px rgba(2, 48, 71, 0.12) !important;
  max-width: 1050px !important;
  margin: 35px auto 40px !important;
  overflow: hidden !important;
  position: relative !important;
  border: none !important;
}

.expert-image-col,
.physician-image-wrapper {
  flex: 0 0 350px !important;
  width: 350px !important;
  min-width: 350px !important;
  max-width: 350px !important;
  min-height: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, #023047 0%, #011823 100%) !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  display: block !important;
  align-self: stretch !important;
}

.expert-image-col img,
.physician-image-wrapper img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
  border-radius: 0 !important;
  border: none !important;
  transform: none !important;
  box-shadow: none !important;
  transition: none !important;
}

.expert-card:hover .expert-image-col img,
.physician-card:hover .physician-image-wrapper img {
  transform: none !important;
}

.expert-content-block,
.physician-info-wrapper {
  flex: 1 1 auto !important;
  padding: 45px 50px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  text-align: left !important;
  background: #ffffff !important;
  position: relative !important;
  z-index: 2 !important;
}

.physician-content-wrapper {
  max-width: 1050px !important;
  margin: 0 auto !important;
}

/* Doctor Profile 1:1 Aspect Ratio Matched Card (dr-tanuj-palvia.php) */
.dr-aspect-card {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  max-width: 1140px !important;
  margin: 20px auto 50px !important;
  background: #ffffff !important;
  border-radius: 32px !important;
  box-shadow: 0 25px 80px rgba(2, 48, 71, 0.1) !important;
  padding: 30px !important;
  gap: 45px !important;
  border: 1px solid #e2e8f0 !important;
}

.dr-aspect-image-box {
  flex: 0 0 440px !important;
  width: 440px !important;
  height: 440px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background: linear-gradient(145deg, #023047 0%, #011d2b 100%) !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 15px 35px rgba(2, 48, 71, 0.15) !important;
}

.dr-aspect-image-box img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
  display: block !important;
}

.dr-aspect-content {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.specialty-badge-pill {
  display: inline-block !important;
  background: #e8f4f8 !important;
  color: #023047 !important;
  border-left: 4px solid var(--accent-color, #00f2fe) !important;
  padding: 8px 18px !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  margin-top: 8px !important;
  margin-bottom: 20px !important;
}

.lead-bio-highlight {
  font-size: 1.18rem !important;
  font-weight: 700 !important;
  color: #023047 !important;
  line-height: 1.6 !important;
  margin-bottom: 16px !important;
}

@media (max-width: 991px) {
  .dr-aspect-card {
    flex-direction: column !important;
    padding: 24px !important;
    gap: 30px !important;
  }
  .dr-aspect-image-box {
    width: 100% !important;
    max-width: 440px !important;
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
  }
}

@media (max-width: 991px) {
  .expert-card,
  .physician-card {
    flex-direction: column !important;
    align-items: stretch !important;
  }
  .expert-image-col,
  .physician-image-wrapper {
    flex: none !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    height: 320px !important;
    min-height: 320px !important;
    padding: 0 !important;
  }
  .expert-content-block,
  .physician-info-wrapper {
    padding: 35px 25px !important;
  }
}



/* Physician Card Text Contrast Fix for White Card inside Dark Section */
.physician-info-wrapper .physician-text {
  color: #334155 !important;
}

.physician-info-wrapper .physician-text strong,
.physician-info-wrapper .physician-text .fw-bold {
  color: var(--primary-color) !important;
  font-weight: 700 !important;
}

.physician-info-wrapper .physician-btn {
  background-color: var(--primary-color) !important;
  color: #ffffff !important;
  border-radius: 50px !important;
  padding: 12px 30px !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  display: inline-block !important;
  margin-top: 15px !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.physician-info-wrapper .physician-btn:hover {
  background-color: var(--accent-color) !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(2, 48, 71, 0.25) !important;
}


/* Hide empty background spacer on tablet/mobile screens to prevent visual gaps */
@media (max-width: 1024px) {
  .bg-section {
    display: none !important;
  }
}

/* =============================================================================
   GLOBAL ONE-TIME FIX: .btn-default Click & Hover State Fix
   Fixes issue where clicking any .btn-default button turns text dark-green on a
   dark-green background (invisible text) and fills the button with a solid dark
   green blob before navigation.
   Disables pseudo-element fill animations globally for ALL .btn-default elements
   and provides clean, high-contrast, WCAG-compliant hover/active/focus states.
   ============================================================================= */
.btn-default::after,
.btn-default span::after {
  display: none !important;
}

.btn-default {
  transition: transform 0.3s ease, box-shadow 0.3s ease, background-color 0.3s ease !important;
}

.btn-default:hover,
.btn-default:active,
.btn-default:focus,
.btn-default:focus-visible {
  background-color: var(--secondary-color) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(2, 48, 71, 0.25) !important;
  text-decoration: none !important;
}

.btn-default span {
  transition: background-color 0.3s ease, color 0.3s ease !important;
}

.btn-default:hover span,
.btn-default:active span,
.btn-default:focus span,
.btn-default:focus-visible span {
  background-color: var(--accent-color, #033e5b) !important;
  color: #ffffff !important;
}

.btn-default:hover::before,
.btn-default:active::before,
.btn-default:focus::before {
  transform: translate(-6px, -50%) !important;
  filter: brightness(0) invert(1) !important;
}

/* Highlighted Variant (.btn-default.btn-highlighted) Fix */
.btn-default.btn-highlighted:hover,
.btn-default.btn-highlighted:active,
.btn-default.btn-highlighted:focus {
  background-color: var(--primary-color) !important;
}

.btn-default.btn-highlighted:hover span,
.btn-default.btn-highlighted:active span,
.btn-default.btn-highlighted:focus span {
  background-color: var(--secondary-color) !important;
  color: var(--primary-color) !important;
}

/* =============================================================================
   ACCORDION COLLAPSE TRANSITION FIX:
   Prevents FAQ items from visually overlapping during slide collapse/expand transitions.
   Overrides global .wow * overflow:visible rules on collapsing panels and scopes
   .accordion-item transitions to background/border/shadow so height animation is cleanly clipped.
   ============================================================================= */
.wow .accordion-collapse,
.wow .collapsing,
.accordion-item .accordion-collapse,
.accordion-item .collapsing,
.facet-faq-accordion .accordion-collapse,
.facet-faq-accordion .collapsing,
.faq-accordion .accordion-collapse,
.faq-accordion .collapsing,
.accordion-collapse.collapsing,
.collapsing,
.accordion-collapse:not(.show) {
  overflow: hidden !important;
}

.accordion-collapse.show {
  overflow: visible !important;
}

.faq-accordion .accordion-item,
.facet-faq-accordion .accordion-item {
  transition: background-color 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease !important;
}

/* Screen Reader Only Utility Class (WCAG / axe DevTools Compliant) */
.visually-hidden,
.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;
}

/* Global Equal Height Role Cards Across All Screen Sizes */
.role-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-height: 185px !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
}

.role-card-header {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
}

.role-card-header:not(:last-child) {
  margin-bottom: 20px !important;
}

.role-card-header:last-child {
  margin-bottom: 0 !important;
}

/* Responsive adjustments for Medium Desktop / Tablet Landscape (992px - 1199px including 1024px) */
@media (min-width: 992px) and (max-width: 1199px) {
  .role-card {
    padding: 30px 20px !important;
    min-height: 185px !important;
  }
  .role-card .role-card-title {
    font-size: 21px !important;
  }
  .role-card .role-icon {
    width: 50px !important;
    height: 50px !important;
    font-size: 24px !important;
    margin-right: 15px !important;
  }
}

/* Mobile Screens (<768px): Remove fixed min-height to eliminate unnecessary whitespace */
@media (max-width: 767px) {
  .role-card {
    min-height: auto !important;
    padding: 24px 20px !important;
    border-radius: 16px !important;
  }
  .role-card-header:not(:last-child) {
    margin-bottom: 12px !important;
  }
}

/* Tablet Portrait (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
  .role-card {
    min-height: 150px !important;
    padding: 28px 24px !important;
  }
}

/* Center single desktop cards in 3-column grids */
@media (min-width: 992px) {
  .role-card.role-card-center-desktop,
  .results-card.results-card-center-desktop {
    grid-column: 2 !important;
  }

  /* 5-card grid: center the 2 bottom cards together on desktop */
  .role-grid.role-grid-centered-bottom-row {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 30px !important;
    margin-bottom: 50px !important;
    align-items: stretch !important;
  }
  .role-grid.role-grid-centered-bottom-row > .role-card,
  .role-grid.role-grid-centered-bottom-row > a.role-card {
    flex: 0 0 calc(33.333% - 20px) !important;
    max-width: calc(33.333% - 20px) !important;
    width: calc(33.333% - 20px) !important;
    min-height: 185px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }
}



/* === COMBINED FROM index-page.css === */
/* =========================================
     WCAG 2.2 INDEX PAGE FIXES
     ========================================= */
  


  /* 2. Accordion Focus Visibility */
  /* Prevent 'overflow: hidden' from clipping the focus ring of the button */
  .how-work-accordion .accordion-item {
    overflow: visible !important; 
    /* Note: overflow:visible might break border-radius clipping slightly 
       but visibility of focus is higher priority for accessibility. 
       Alternately, use outline-offset: -3px; */
  }

  .how-work-accordion .accordion-button:focus-visible {
    outline: 3px solid var(--primary-color) !important;
    outline-offset: -3px !important; /* Inset to avoid clipping if overflow stays */
    z-index: 5;
  }

  /* Force clean headers - removes any residual contrast-fix backgrounds */
  .section-title,
  .section-title h1, .section-title h1 *,
  .section-title h2, .section-title h2 *,
  .section-title p, .section-title p *,
  .section-title .sub-title, .section-title .sub-title * {
    background-color: inherit !important;
    background: inherit !important;
    box-shadow: none !important;
  }

/* =========================================
     DESIGN CONCEPT 3: ANCHORED SPINE LAYOUT
     Compact | Structured | Process-Driven
     ========================================= */

  .pain-care-section {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 70px 0; 
    margin-top: -50px; 
    z-index: 2;
    border-radius: 40px 40px 0 0;
    /* FIX: Theme Secondary Color for blending + overlap definition */
    background-color: var(--secondary-color) !important; 
    color: var(--primary-color) !important;
    /* FIX: Shadow for visibility against the hero */
    box-shadow: 0 -15px 40px rgba(0, 0, 0, 0.15);
  }

  /* Background Layer */
  .pain-care-bg {
    position: absolute;
    inset: 0;
    top: 0; left: 0; bottom: 0; right: 0;
    background-color: var(--secondary-color) !important;
    z-index: 0;
  }
  
  /* Content Layer */
  .pain-care-content {
    position: relative;
    z-index: 10;
    background: transparent !important;
  }

  .pain-care-content * {
    opacity: 1 !important;
    filter: none !important;
    mix-blend-mode: normal !important;
    text-shadow: none !important;
  }

  /* --- TYPOGRAPHY (Density Controlled) --- */
  .spine-heading {
    font-family: var(--accent-font);
    font-size: 34px; /* Increased from 32px */
    font-weight: 600; /* Increased weight */
    line-height: 1.3;
    color: var(--primary-color) !important; 
    margin-bottom: 16px; 
  }

  .spine-sub {
    font-size: 17px; /* Increased from 16px for readability */
    line-height: 1.6; 
    color: var(--primary-color) !important; 
    margin-bottom: 24px;
    font-weight: 500; /* Increased weight */
  }

  .spine-divider {
    width: 40px;
    height: 3px; /* Slightly thicker */
    background-color: var(--primary-color);
    margin-bottom: 0; 
    opacity: 1 !important;
  }

  /* --- LEFT COLUMN (Intro) --- */
  .intro-col {
    padding-right: 0;
    margin-bottom: 50px;
    max-width: 900px;
  }

  /* --- CENTER SPINE (The Anchor) --- */
  .spine-container {
    position: relative;
    padding-left: 30px; 
    /* Stronger border for visibility */
    border-left: 2px solid rgba(2, 48, 71, 0.15); 
    margin-left: 0;
    margin-bottom: 50px;
    max-width: 900px;
  }

  .spine-item {
    position: relative;
    margin-bottom: 24px; 
  }

  .spine-item:last-child {
    margin-bottom: 0;
  }

  /* The Node/Dot */
  .spine-item::before {
    content: '';
    position: absolute;
    left: -35.5px; /* Aligned with border */
    top: 6px;
    width: 11px; /* Larger dot */
    height: 11px;
    background-color: var(--primary-color);
    border-radius: 50%;
    /* Ring matches bg */
    box-shadow: 0 0 0 4px var(--secondary-color); 
  }

  .spine-title {
    font-size: 18px; /* Slightly larger for vertical flow */
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--primary-color) !important; 
    margin-bottom: 6px; 
    display: block;
  }

  .spine-text {
    font-size: 16px;
    line-height: 1.5; 
    color: var(--primary-color) !important; 
    margin: 0;
    max-width: 90%;
  }

  /* --- RIGHT COLUMN (Supportive Context) --- */
  .checklist-col {
    padding-left: 0; 
    position: relative;
    max-width: 900px;
  }

  /* Removed vertical guide line as we are stacking */
  .checklist-col::before {
    display: none;
  }

  .checklist-header {
    font-size: 18px; 
    font-weight: 600; 
    color: var(--primary-color) !important; 
    margin-bottom: 24px;
    letter-spacing: 0.3px; 
    position: relative;
    display: inline-block;
  }

  /* Subtle Underline Accent */
  .checklist-header::after {
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    background-color: rgba(2, 48, 71, 0.2); 
    margin-top: 8px;
  }

  .compact-checklist {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap; /* Allow items to flow if needed, or stack */
    gap: 20px;
  }

  .compact-item {
    display: flex;
    align-items: flex-start;
    font-size: 16px; 
    line-height: 1.6; 
    color: var(--primary-color) !important; 
    margin-bottom: 10px; 
    position: relative;
    font-weight: 500; 
    width: 100%; /* Full width in vertical stack */
  }

  .compact-item:last-child {
    margin-bottom: 0;
  }

  .compact-item i {
    font-size: 16px; 
    color: var(--primary-color) !important; 
    margin-right: 15px;
    transform: translateY(4px);
    opacity: 1 !important; 
    flex-shrink: 0;
  }

  /* --- RESPONSIVENESS --- */
  @media (max-width: 991px) {
    .pain-care-section { padding: 60px 0; }
    .spine-container { 
      border-left: 2px solid rgba(2, 48, 71, 0.15); /* Keep border on mobile */
      padding-left: 25px; 
      margin-left: 0; 
    }
     .spine-item::before { display: block; left: -30.5px; } /* meaningful spine on mobile */
  }

/* 3. Testimonial Pagination Focus (High Visibility) */
  .testimonial-button-prev:focus-visible,
  .testimonial-button-next:focus-visible {
    outline: 4px solid #ffffff !important; /* High contrast White */
    outline-offset: 4px !important;
    box-shadow: 0 0 10px rgba(255, 255, 255, 0.5) !important; /* Glow for dark bg */
    z-index: 100 !important;
  }
  
  /* 4. Prevent Clipping of Focus Outlines */
  .testimonial-btn {
    padding: 10px !important;
  }

  /* 5. Service Arrow Links - Robust Layout Lock (Fixes Focus Shift) */
  .service-btn a {
    display: grid !important;
    place-items: center !important;
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    box-sizing: border-box !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    transform: none !important;
    overflow: hidden !important;
    position: relative !important;
    vertical-align: middle !important;
  }

  .service-btn a:focus-visible {
    outline: 2px solid #0d6efd !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 2px #ffffff !important;
    background-color: transparent !important;
  }

  .service-btn a img {
    pointer-events: none;
    display: block !important;
    max-width: 16px !important;
  }

  /* Prevent Parent Clipping */
  .service-item, .service-body, .service-btn {
    overflow: visible !important;
    transform: none !important;
  }

  /* 6. Clinical Term Links - "Normal Text" Appearance */
  .clinical-term a,
  .clinical-term a:visited,
  .clinical-term a:hover,
  .clinical-term a:active,
  .clinical-term a:focus {
    color: #ffffff !important; /* Force white as requested */
    text-decoration: none !important;
    
    /* Expanded Clickable Area */
    display: inline-block;
    padding: 4px 6px; 
    margin: -4px -6px;
    border-radius: 4px;
    transition: background-color 0.2s ease;
  }

  /* Multi-link items: expanded text-link hit area */
  .treatment-areas-list li.multi-link-item a,
  .treatment-areas-list li.multi-link-item a:visited,
  .treatment-areas-list li.multi-link-item a:hover,
  .treatment-areas-list li.multi-link-item a:active,
  .treatment-areas-list li.multi-link-item a:focus {
    color: #ffffff !important;
    text-decoration: none !important;
    display: inline-block;
    padding: 6px 8px;
    margin: -6px -8px;
    border-radius: 4px;
    transition: background-color 0.2s ease;
  }

  .treatment-areas-list li.multi-link-item a:hover {
    background-color: rgba(255, 255, 255, 0.1);
  }

  /* 7. Hero Revamp Styles (Sleek & Compact) */
  .hero-revamp .hero-label {
    font-family: var(--default-font);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 3px;
    font-size: 11px; /* Slightly smaller */
    color: var(--secondary-color);
    margin-bottom: 15px; /* Tightened */
    display: flex;
    align-items: center;
    gap: 12px;
    opacity: 0.8;
  }
  .hero-revamp .hero-label::after {
    content: '';
    width: 20px;
    height: 1px;
    background: var(--secondary-color);
    display: block;
    opacity: 0.5;
  }
  .hero-revamp h1 {
    font-family: var(--accent-font) !important;
    font-weight: 400 !important;
    font-size: clamp(30px, 4.5vw, 48px) !important; /* Reduced for single-glance visibility */
    line-height: 1.2 !important;
    margin-bottom: 18px !important; /* Tightened */
    color: #ffffff !important;
    letter-spacing: 0.5px;
  }
  .hero-revamp h1 span.amp {
    font-style: italic;
    opacity: 0.6;
    margin: 0 6px;
    font-family: serif;
  }
  .hero-revamp p {
    font-size: 16px; /* Slightly smaller for density */
    line-height: 1.6;
    max-width: 550px;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 25px; /* Tightened */
    font-weight: 300;
  }
  .hero-revamp .hero-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 25px; /* Tightened */
  }
  .hero-revamp .badge-item {
    background: transparent;
    border: 1px solid rgba(255, 255, 255, 0.15);
    padding: 4px 0;
    font-size: 13px; /* Slightly smaller */
    color: #ffffff;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0;
    opacity: 0.8;
  }
  .hero-revamp .badge-item:hover {
    opacity: 1;
    border-color: #fff;
    padding-left: 5px;
  }
  .hero-revamp .badge-item i {
    font-size: 12px;
    color: var(--secondary-color);
    opacity: 0.7;
    display: inline-block;
    min-width: 1.2em;
    text-align: center;
  }

  /* Fix for Contrast Modes - Make icons black */
  html[data-contrast="invert"] .hero-revamp .hero-highlights i,
  html[data-contrast="light"] .hero-revamp .hero-highlights i {
    filter: none !important;
    color: #ffffff !important; /* Invert mode: White -> Black */
    opacity: 1 !important;
  }
  html[data-contrast="light"] .hero-revamp .hero-highlights i {
    color: #000000 !important; /* Light mode: Direct Black */
  }

  /* =========================================
     MOBILE RESPONSIVENESS: PAIN CARE SECTION
     (Focus: â‰¤480px)
     ========================================= */

  @media (max-width: 480px) {
    /* 1. Section Spacing */
    .pain-care-section {
      padding: 40px 0 !important;
    }

    /* 2. Header & Paragraph Scaling */
    .spine-heading {
      font-size: 1.7rem !important;
      margin-bottom: 12px !important;
      line-height: 1.3 !important;
    }

    .spine-sub {
      font-size: 1rem !important;
      line-height: 1.5 !important;
      max-width: 100% !important;
    }

    /* 3. Timeline Adjustments */
    .spine-timeline {
      padding-left: 25px !important;
      margin-bottom: 35px !important;
    }

    /* Adjust the vertical line */
    .spine-timeline > div[style*="position: absolute"] {
      left: 11px !important; /* Align with narrower dots */
    }

    .timeline-dot {
      left: -25px !important;
      width: 25px !important;
      height: 25px !important;
      font-size: 11px !important;
    }

    .timeline-content {
      padding-left: 10px !important;
    }

    .timeline-content h3 {
      font-size: 0.95rem !important;
      line-height: 1.4 !important;
    }

    /* 4. Patient Fit Bar */
    .patient-fit-bar {
      padding: 20px 15px !important;
      border-radius: 10px !important;
    }

    .checklist-header {
      font-size: 1rem !important;
      margin-bottom: 15px !important;
    }

    /* Ensure checklist items stack and align correctly */
    .patient-fit-bar .row.g-3 > div > div {
      align-items: flex-start !important; /* Align icon with first line */
      font-size: 0.88rem !important;
    }

    .patient-fit-bar .fa-check {
      margin-top: 3px !important;
      font-size: 0.8rem !important;
    }

    /* 5. Our Services Section Updates */
    .our-services {
      padding: 40px 0 !important;
    }

    .our-services .section-row {
      text-align: center !important;
      margin-bottom: 30px !important;
    }

    .our-services .section-title h2 {
      font-size: 1.8rem !important;
    }

    .our-services .section-btn {
      margin-top: 15px !important;
      display: flex;
      justify-content: center;
    }

    .clinical-feature-card {
      padding: 30px 20px !important;
      margin-bottom: 20px !important;
      height: auto !important;
    }

    .clinical-header {
      flex-direction: column !important;
      align-items: center !important;
      text-align: center !important;
      margin-bottom: 20px !important;
    }

    .clinical-header .icon-badge {
      margin-right: 0 !important;
      margin-bottom: 12px !important;
    }

    .clinical-header h3 {
      font-size: 1.25rem !important;
    }

    .clinical-list {
      text-align: center !important;
      line-height: 1.8 !important;
    }

    .clinical-term a {
      font-size: 0.92rem !important;
      white-space: normal !important; /* Allow wrapping within terms */
    }

    .service-btn {
      position: relative !important; /* Reset from absolute positioning */
      right: auto !important;
      bottom: auto !important;
      margin: 20px auto 0 !important;
      display: flex;
      justify-content: center;
    }

    .centered-section-btn {
      margin-top: 10px !important;
    }

    /* 6. Targeted Treatments Section Updates */
    .targeted-treatments {
      padding: 40px 0 !important;
    }

    .targeted-treatments .section-row {
      text-align: center !important;
      margin-bottom: 30px !important;
    }

    .targeted-treatments .section-title h2 {
      font-size: 1.8rem !important;
    }

    .targeted-treatments .section-btn {
      margin-top: 15px !important;
      display: flex;
      justify-content: center;
    }

    .treatment-areas-card {
      padding: 25px 20px !important;
      margin-bottom: 20px !important;
      border-radius: 12px !important;
    }

    .treatment-areas-title {
      font-size: 1.25rem !important;
      margin-bottom: 15px !important;
    }

    .treatment-areas-list {
      padding-left: 0 !important;
      list-style: none !important;
    }

    .treatment-areas-list li.multi-link-item {
      margin-bottom: 12px !important;
      font-size: 0.95rem !important;
      line-height: 1.5 !important;
    }
    .treatment-areas-list li.single-link-item a.treatment-area-link {
      font-size: 0.95rem !important;
      line-height: 1.5 !important;
    }

    .treatment-cta-card {
      padding: 15px 20px !important;
      margin-bottom: 15px !important;
      display: flex !important;
      align-items: center !important;
      text-align: left !important;
    }

    .treatment-cta-icon {
      margin-bottom: 0 !important;
      margin-right: 15px !important;
      width: 40px !important;
      height: 40px !important;
    }

    .treatment-cta-content h3,
    .treatment-cta-content h4 {
      font-size: 1rem !important;
      margin-bottom: 0 !important;
    }

    /* 7. Physician-Led Care Section Updates */
    .physician-led-care {
      padding: 40px 0 !important;
    }

    .physician-led-care .section-title {
      text-align: center !important;
      margin-bottom: 30px !important;
    }

    .physician-led-care .section-title h2 {
      font-size: 1.8rem !important;
    }

    .physician-credentials-card {
      padding: 25px 20px !important;
      margin-bottom: 25px !important;
      border-radius: 12px !important;
    }

    .credentials-title {
      font-size: 1.25rem !important;
      margin-bottom: 15px !important;
      text-align: center !important;
    }

    .credentials-list {
      padding-left: 20px !important;
    }

    .credentials-list li {
      margin-bottom: 12px !important;
      font-size: 0.95rem !important;
      line-height: 1.5 !important;
    }

    .care-continuity-statement {
      padding: 20px !important;
      margin-bottom: 30px !important;
      border-left: 4px solid var(--accent-color) !important;
      background: rgba(var(--accent-rgb), 0.05) !important;
    }

    .care-continuity-statement p {
      font-size: 0.95rem !important;
      line-height: 1.6 !important;
      margin-bottom: 0 !important;
      text-align: center !important;
    }

    .physician-cta-footer {
      display: flex;
      justify-content: center;
    }

    /* Hide decorative elements on mobile for better focus */
    .physician-deco-1, .physician-deco-2, .physician-deco-3 {
      display: none !important;
    }

    /* 8. What to Expect Section Updates */
    .what-to-expect {
      padding: 40px 0 !important;
    }

    .how-work-images {
      margin-top: 30px !important;
    }

    /* Adjusting the 4/8 column split for very small screens */
    .how-work-images .row.no-gutters {
      display: flex !important;
      flex-wrap: nowrap !important;
      gap: 10px !important;
    }
    
    .how-work-images .col-4, 
    .how-work-images .col-8 {
      width: auto !important;
      flex: 1 !important;
    }

    .how-work-content {
      text-align: center !important;
    }

    .how-work-content .section-title {
      margin-bottom: 30px !important;
    }

    .expectation-steps {
      text-align: left !important;
      margin-top: 25px !important;
    }

    .expectation-step-item {
      display: flex !important;
      align-items: flex-start !important;
      margin-bottom: 25px !important;
      background: rgba(var(--primary-rgb), 0.02) !important;
      padding: 15px !important;
      border-radius: 12px !important;
    }

    .step-number {
      flex-shrink: 0 !important;
      width: 40px !important;
      height: 40px !important;
      background: var(--primary-color) !important;
      color: #fff !important;
      border-radius: 50% !important;
      display: flex !important;
      align-items: center !important;
      justify-content: center !important;
      font-weight: 700 !important;
      font-size: 1.1rem !important;
      margin-right: 15px !important;
    }

    .step-content h3 {
      font-size: 1.1rem !important;
      margin-bottom: 5px !important;
      color: var(--primary-color) !important;
    }

    .step-content p {
      font-size: 0.92rem !important;
      line-height: 1.5 !important;
      margin-bottom: 0 !important;
    }

    /* 9. Location Section Updates */
    .location-section {
      padding: 40px 0 !important;
    }

    .location-section .section-title {
      text-align: center !important;
      margin-bottom: 30px !important;
    }

    .location-section .section-title h2 {
      font-size: 1.8rem !important;
    }

    .location-card-pro {
      padding: 25px 20px !important;
      margin-top: 10px !important;
      border-radius: 15px !important;
    }

    .loc-item {
      margin-bottom: 20px !important;
      align-items: flex-start !important;
    }

    .loc-icon {
      width: 35px !important;
      height: 35px !important;
      font-size: 1.1rem !important;
      margin-right: 15px !important;
      flex-shrink: 0 !important;
    }

    .loc-content h3 {
      font-size: 1.05rem !important;
      margin-bottom: 5px !important;
    }

    .loc-content p {
      font-size: 0.92rem !important;
      line-height: 1.5 !important;
    }

    .loc-btn {
      text-align: center !important;
      margin-top: 25px !important;
    }

    /* Hide decorative elements on mobile */
    .location-deco-1, .location-deco-2, .location-deco-3 {
      display: none !important;
    }

    /* 10. Testimonials Section Updates */
    .our-testimonial {
      padding: 40px 0 !important;
    }

    .testimonial-content {
      text-align: center !important;
      margin-bottom: 30px !important;
    }

    .our-testimonial .section-title h2 {
      font-size: 1.8rem !important;
    }

    .testimonial-quote-icon {
      display: none !important; /* Hide large quote icon on small screens to save space */
    }

    .testimonial-item {
      padding: 25px 20px !important;
    }

    .testimonial-rating {
      margin-bottom: 15px !important;
      justify-content: center !important;
      display: flex !important;
    }

    .testimonial-content p {
      font-size: 0.95rem !important;
      line-height: 1.6 !important;
      text-align: center !important;
    }

    .testimonial-body {
      flex-direction: column !important;
      align-items: center !important;
      text-align: center !important;
      gap: 15px !important;
    }

    .author-image {
      margin-right: 0 !important;
    }

    .author-content h3 {
      font-size: 1rem !important;
    }

    .author-content p {
      font-size: 0.85rem !important;
    }

    .testimonial-btn {
      justify-content: center !important;
      margin-top: 25px !important;
    }

    /* Hide decorative shapes */
    .testimonial-deco-shape-1, .testimonial-deco-shape-2 {
      display: none !important;
    }

    /* 11. Final CTA Section Updates */
    .final-cta-section {
      padding: 40px 0 !important;
    }

    .final-cta-box {
      padding: 40px 20px !important;
      text-align: center !important;
      border-radius: 20px !important;
    }

    .final-cta-content h2 {
      font-size: 1.7rem !important;
      margin-bottom: 15px !important;
    }

    .final-cta-content p {
      font-size: 1rem !important;
      line-height: 1.6 !important;
      margin-bottom: 25px !important;
    }

    .final-cta-btn {
      display: flex;
      justify-content: center;
    }

    .final-cta-btn .btn-default {
      width: 100% !important;
      max-width: 300px !important;
    }

    /* Hide decorative elements */
    .cta-deco-1, .cta-deco-2 {
      display: none !important;
    }
  }

  /* Optional Tablet Fixes (481px to 768px) */
  @media (min-width: 481px) and (max-width: 768px) {
    .spine-heading {
      font-size: 1.9rem !important;
    }
    .spine-timeline {
      padding-left: 30px !important;
    }
    .our-services .section-title h2,
    .targeted-treatments .section-title h2,
    .physician-led-care .section-title h2,
    .what-to-expect .section-title h2,
    .location-section .section-title h2,
    .our-testimonial .section-title h2,
    .final-cta-content h2 {
      font-size: 2rem !important;
    }
  }

/* =============================================
   ATMOSPHERIC DEPTH — No visible spotlight circle.
   Layered radial gradients create environmental
   depth with zero circular boundary.
   ============================================= */
.hero-spotlight {
  position: absolute;
  inset: 0;
  background:
    /* Subtle right-side atmospheric band */
    radial-gradient(
      ellipse 65% 80% at 78% 50%,
      rgba(10, 58, 92, 0.10) 0%,
      transparent 65%
    ),
    /* Very faint upper depth accent */
    radial-gradient(
      ellipse 45% 55% at 88% 18%,
      rgba(5, 40, 65, 0.06) 0%,
      transparent 55%
    ),
    /* Left-side subtle vignette */
    radial-gradient(
      ellipse 35% 100% at -5% 50%,
      rgba(0, 8, 18, 0.10) 0%,
      transparent 70%
    );
  z-index: 1;
  pointer-events: none;
}

/* =============================================
   DOCTOR PORTRAIT — Zero-boundary integration.

   Strategy: Single mask on the wrapper using a
   combined radial+linear approach so the doctor
   emerges from the navy background with no
   perceptible edge on any of the four sides.
   The image filter is kept subtle so the white
   lab coat stays clearly white.
   ============================================= */
.doctor-portrait-wrapper {
  animation: heroPortraitFadeIn 1.1s cubic-bezier(0.16, 1, 0.3, 1) 0.25s forwards;

  /*
   * DUAL LINEAR GRADIENT MASK — 4-sided feathering.
   *
   * Two gradients composited with 'intersect':
   *  • Horizontal: left edge fades 0→22%, right edge fades 88→100%
   *  • Vertical: top fades 0→6%, bottom body fades 68→85%
   *
   * Result: no rectangular border on any side. Face stays sharp.
   * Shoulders and coat gradually dissolve into the navy background.
   *
   * NOTE: mask-composite is applied separately per vendor prefix.
   */
  mask-image:
    linear-gradient(to right,  transparent 0%, black 18%, black 88%, transparent 100%),
    linear-gradient(to bottom, black 0%, black 90%, transparent 100%);
  -webkit-mask-image:
    linear-gradient(to right,  transparent 0%, black 18%, black 88%, transparent 100%),
    linear-gradient(to bottom, black 0%, black 90%, transparent 100%);
  mask-composite: intersect;
  -webkit-mask-composite: source-in;
}

@keyframes heroPortraitFadeIn {
  from { opacity: 0; transform: scale(1.025) translateY(12px); }
  to   { opacity: 1; transform: scale(1.000) translateY(0);    }
}

.doctor-portrait-img {
  /*
   * CSS COLOR GRADING — Minimal, precise calibration.
   *
   * The new portrait already has a correct navy background so we
   * only need a very light touch to unify with the page:
   *
   * saturate(0.93)   → desaturate remaining amber ~7% — barely perceptible
   * hue-rotate(4deg) → 4° nudge toward cooler tones
   * contrast(1.02)   → keep face punchy
   *
   * brightness is kept at 1.0 so the WHITE LAB COAT remains clearly white.
   */
  filter:
    saturate(0.93)
    hue-rotate(4deg)
    contrast(1.02);
}






              /* Hero Label Styling */
              .hero-label {
                display: inline-block;
                padding: 6px 18px;
                background: var(--primary-color);
                border-radius: 30px;
                margin-bottom: 20px;
                color: #ffffff;
                font-size: 0.95rem;
                font-weight: 600;
                box-shadow: 0 4px 12px rgba(2, 48, 71, 0.15);
                transition: all 0.3s ease;
              }

              /* Badge Items Styling */
              .badge-item {
                padding: 10px 18px;
                background: #ffffff;
                border-radius: 50px;
                font-size: 0.95rem;
                box-shadow: 0 8px 16px rgba(2, 48, 71, 0.06);
                display: flex;
                align-items: center;
                gap: 10px;
                font-weight: 600;
                color: var(--primary-color);
                border: 1.5px solid #eef2f6;
                transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
              }
              .badge-item:hover {
                transform: translateY(-4px);
                box-shadow: 0 12px 24px rgba(2, 48, 71, 0.12);
                border-color: var(--primary-color);
              }
              .badge-item i {
                font-size: 1.1rem;
              }

              /* Accessibility Overrides for Badges & Labels */
              html[data-contrast="dark"] .badge-item,
              html[data-contrast="dark"] .hero-label {
                background: #000000 !important;
                border: 2px solid #ffff00 !important;
                box-shadow: none !important;
                color: #ffff00 !important;
              }
              html[data-contrast="dark"] .badge-item i {
                color: #ffff00 !important;
              }

              html[data-contrast="light"] .badge-item {
                background: #ffffff !important;
                border: 2px solid #000 !important;
                box-shadow: none !important;
                color: #000 !important;
              }

              /* Hide decorative spotlight glow in high-contrast modes */
              html[data-contrast="dark"] .hero-spotlight,
              html[data-contrast="light"] .hero-spotlight,
              html[data-contrast="invert"] .hero-spotlight {
                display: none !important;
              }

              html[data-contrast="invert"] .badge-item,
              html[data-contrast="invert"] .badge-item.dark-contrast-text-yellow {
                background: transparent !important;
                color: #ffffff !important; /* Inverts to Black */
                -webkit-text-fill-color: #ffffff !important;
                border: 2px solid #ffffff !important; /* Inverts to Black */
                box-shadow: none !important;
              }
              html[data-contrast="invert"] .badge-item i,
              html[data-contrast="invert"] .hero-label i {
                color: #ffffff !important; /* Code White -> Global Invert -> Visual Black */
                -webkit-text-fill-color: #ffffff !important;
                filter: none !important; /* Prevent double-inversion from accessibility-widget.css */
              }

              html[data-contrast="invert"] .hero-label {
                background: transparent !important;
                color: #ffffff !important; /* Inverts to Black */
                border: 2px solid #ffffff !important; /* Inverts to Black */
                box-shadow: none !important;
              }

              html[data-contrast="invert"] .icon-badge svg {
                filter: none !important; /* Prevent double-inversion of icons in area-of-care cards */
              }

              /* Fix for accessibility tooltip glitch - prevent huge section tooltips */
              body.acc-tooltips section::after {
                display: none !important;
              }

              /* Modern Bullet Visibility Fix */
              .clinical-list-structured .fa-circle {
                color: #ffffff !important;
              }
              html[data-contrast="light"] .clinical-list-structured .fa-circle {
                color: #000000 !important;
              }

              /* High Contrast Text Fixes for Hero Heading */
              html[data-contrast="dark"] .dark-contrast-text-yellow span {
                color: #ffff00 !important;
              }
              html[data-contrast="light"] .dark-contrast-text-yellow span {
                color: #000 !important;
              }

              /* WCAG Dark Contrast Overrides for Hero Buttons */
              html[data-contrast="dark"] .hero-content-body .btn-default {
                background: #000000 !important;
                background-color: #000000 !important;
                border: 2px solid #ffff00 !important;
                box-shadow: inset 0 0 0 100px #000000 !important;
              }
              html[data-contrast="dark"] .hero-content-body .btn-default span {
                color: #ffff00 !important;
                -webkit-text-fill-color: #ffff00 !important;
                background: #000000 !important;
                background-color: #000000 !important;
                box-shadow: inset 0 0 0 100px #000000 !important;
                font-weight: 900 !important;
              }
              html[data-contrast="dark"] .hero-content-body .btn-default::before,
              html[data-contrast="dark"] .hero-content-body .btn-default::after,
              html[data-contrast="dark"] .hero-content-body .btn-default span::after {
                display: none !important;
              }

              /* Mobile Responsive Fix for Hero Buttons */
              /* Mobile Responsive Fix for Hero Buttons */
              @media (max-width: 767px) {
                .hero {
                  padding-top: 25px !important;
                }

                /* Spacing Rhythm & Hierarchy */
                .hero-revamp .hero-label,
                .hero-label {
                  margin-bottom: 12px !important;
                  padding: 4px 12px !important;
                  font-size: 0.8rem !important;
                }

                .hero-revamp h1,
                .hero-content h1 {
                  font-size: 2.1rem !important;
                  line-height: 1.25 !important;
                  margin-bottom: 20px !important;
                  max-width: 100% !important; /* Spans full container width since portrait is hidden */
                  text-shadow: 0 2px 10px rgba(2, 48, 71, 0.9) !important;
                }

                .hero-content p {
                  font-size: 0.95rem !important;
                  line-height: 1.6 !important;
                  max-width: 100% !important; /* Full width copy for comfortable reading flow */
                  margin-bottom: 24px !important;
                  text-shadow: 0 1px 6px rgba(2, 48, 71, 0.9) !important;
                }

                /* Trust Indicators (Highlights) - 2x2 Clean Layout */
                .hero-highlights {
                  display: grid !important;
                  grid-template-columns: repeat(2, 1fr) !important;
                  gap: 12px 14px !important;
                  max-width: 100% !important;
                  margin-bottom: 28px !important;
                }

                .hero-highlights .badge-item {
                  display: flex !important;
                  align-items: center !important;
                  gap: 8px !important;
                  padding: 8px 12px !important;
                  font-size: 0.8rem !important;
                  margin: 0 !important;
                  width: 100% !important;
                  box-sizing: border-box !important;
                  justify-content: flex-start !important;
                  border: 1px solid rgba(255, 255, 255, 0.15) !important;
                  background: rgba(2, 48, 71, 0.6) !important; /* Semi-transparent to blend */
                  border-radius: 8px !important;
                  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15) !important;
                  color: #ffffff !important; /* Force visible white text against dark background */
                }

                .hero-highlights .badge-item i {
                  font-size: 0.95rem !important;
                }

                /* CTA Buttons - Vertical Stack with Touch Targets */
                .hero-content-body {
                  display: flex !important;
                  flex-direction: column !important;
                  gap: 14px !important;
                  align-items: center !important;
                  width: 100% !important;
                }
                .hero-content-body .btn-default {
                  padding: 0 !important;
                  margin: 0 !important;
                  width: 100% !important;
                  max-width: 290px !important;
                  flex: 0 1 auto !important;
                  background: transparent !important; /* Prevent bracket outline visual leakage */
                }
                .hero-content-body .btn-default span {
                  font-size: 16px !important;
                  padding: 14px 20px !important;
                  width: 100% !important;
                  text-align: center !important;
                }
                .hero-content-body .btn-default::before {
                  right: 15px !important;
                }
                
                /* Remove left margins */
                .hero-content-body .btn-default.btn-highlighted {
                  margin-left: 0 !important;
                }
              }

              @media (max-width: 425px) {
                .hero-revamp .hero-label,
                .hero-label {
                  font-size: 0.72rem !important;
                  letter-spacing: 1px !important;
                  gap: 6px !important;
                  margin-bottom: 10px !important;
                  white-space: nowrap !important;
                  justify-content: center !important;
                  padding: 3px 10px !important;
                }

                .hero-highlights {
                  display: flex !important;
                  flex-wrap: wrap !important;
                  gap: 6px 8px !important;
                  width: 100% !important;
                  max-width: 100% !important;
                  padding: 0 4px !important;
                  margin: 0 auto 18px auto !important;
                  justify-content: center !important;
                  box-sizing: border-box !important;
                }
                .hero-highlights .badge-item {
                  font-size: 0.72rem !important;
                  padding: 5px 8px !important;
                  gap: 4px !important;
                  white-space: nowrap !important;
                  justify-content: center !important;
                  width: auto !important;
                  max-width: 100% !important;
                  box-sizing: border-box !important;
                }
                .hero-highlights .badge-item i {
                  font-size: 0.8rem !important;
                }

                .hero .hero-content .hero-content-body,
                .hero-content-body {
                  display: flex !important;
                  flex-direction: column !important;
                  align-items: center !important;
                  justify-content: center !important;
                  width: 100% !important;
                  max-width: 100% !important;
                  gap: 12px !important;
                }
                .hero .hero-content-body .btn-default,
                .hero-content-body .btn-default {
                  width: 100% !important;
                  max-width: 290px !important;
                  margin: 0 auto !important;
                  flex: none !important;
                }
                .hero .hero-content-body .btn-default.btn-highlighted,
                .hero-content-body .btn-default.btn-highlighted {
                  margin-left: 0 !important;
                }
                .hero .hero-content-body .btn-default span,
                .hero-content-body .btn-default span {
                  font-size: 14.5px !important;
                  padding: 11px 16px !important;
                  width: 100% !important;
                  text-align: center !important;
                  display: block !important;
                  white-space: nowrap !important;
                }
              }

              /* Reposition fixed accessibility button & menu to bottom-right to prevent CTA overlap on tablets/mobiles */
              @media (max-width: 991px) {
                #acc-widget-btn {
                  left: auto !important;
                  right: 15px !important;
                  bottom: 15px !important;
                  width: 50px !important;
                  height: 50px !important;
                  font-size: 22px !important;
                }
                #acc-menu {
                  left: auto !important;
                  right: 15px !important;
                  bottom: 75px !important;
                  width: 320px !important;
                  max-width: calc(100vw - 30px) !important;
                }
              }

/* WCAG Dark Contrast Overrides for Content Buttons and Links */
    html[data-contrast="dark"] .care-principles .btn-default,
    html[data-contrast="dark"] .targeted-treatments .btn-default,
    html[data-contrast="dark"] .our-services .btn-default,
    html[data-contrast="dark"] .physician-highlight-section .btn-default {
      background: #000000 !important;
      background-color: #000000 !important;
      border: 2px solid #ffff00 !important;
      box-shadow: inset 0 0 0 100px #000000 !important;
      text-shadow: none !important;
    }
    html[data-contrast="dark"] .care-principles .btn-default span,
    html[data-contrast="dark"] .targeted-treatments .btn-default span,
    html[data-contrast="dark"] .our-services .btn-default span,
    html[data-contrast="dark"] .physician-highlight-section .btn-default span {
      color: #ffff00 !important;
      -webkit-text-fill-color: #ffff00 !important;
      background: #000000 !important;
      background-color: #000000 !important;
      box-shadow: inset 0 0 0 100px #000000 !important;
      font-weight: 900 !important;
      display: inline-block;
    }
    html[data-contrast="dark"] .care-principles .btn-default::before,
    html[data-contrast="dark"] .care-principles .btn-default::after,
    html[data-contrast="dark"] .care-principles .btn-default span::after,
    html[data-contrast="dark"] .targeted-treatments .btn-default::before,
    html[data-contrast="dark"] .targeted-treatments .btn-default::after,
    html[data-contrast="dark"] .targeted-treatments .btn-default span::after,
    html[data-contrast="dark"] .our-services .btn-default::before,
    html[data-contrast="dark"] .our-services .btn-default::after,
    html[data-contrast="dark"] .our-services .btn-default span::after {
      display: none !important;
    }

    /* Clinical list link contrast fixes */
    html[data-contrast="dark"] .clinical-list .clinical-term,
    html[data-contrast="dark"] .clinical-list a {
        background: #000000 !important;
        background-color: #000000 !important;
        color: #ffff00 !important;
        text-decoration: underline !important;
        font-weight: bold !important;
    }
    html[data-contrast="dark"] .clinical-list a:hover {
        color: #ffffff !important;
    }

    /* Fix contrast for service read-more arrow icons (SVG images) */
    html[data-contrast="dark"] .service-btn a img {
        filter: brightness(0) invert(1) sepia(1) saturate(10000%) hue-rotate(20deg) !important;
        background-color: #000000 !important;
        padding: 5px;
        border-radius: 4px;
    }
    html[data-contrast="dark"] .clinical-list span.dot-separator {
        color: #ffffff !important;
        background-color: #000000 !important;
        opacity: 1 !important;
    }
    /* Testimonial Nav Contrast Fixes */
    html[data-contrast="dark"] .testimonial-button-prev,
    html[data-contrast="dark"] .testimonial-button-next {
        background: #000000 !important;
        background-color: #000000 !important;
        border: 2px solid #ffff00 !important;
        box-shadow: inset 0 0 0 100px #000000 !important;
    }
    html[data-contrast="dark"] .testimonial-button-prev i,
    html[data-contrast="dark"] .testimonial-button-next i {
        color: #ffff00 !important;
        -webkit-text-fill-color: #ffff00 !important;
    }

@keyframes slow-float-medical {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-10px); }
    }

@keyframes float-med {
      0%, 100% { transform: translateY(0px); }
      50% { transform: translateY(-8px); }
    }
    .conditions-oval-gallery {
      display: flex;
      justify-content: center;
      gap: 15px;
      flex-wrap: wrap;
      margin-top: 50px;
      padding: 20px 0;
    }
    @media (min-width: 1200px) {
      .conditions-oval-gallery {
        flex-wrap: nowrap !important;
      }
    }
    .condition-oval-card {
      flex: 1;
      min-width: 160px;
      max-width: 200px;
      height: 480px;
      background: #000c14; /* Deep Medical Midnight */
      border-radius: 100px;
      overflow: hidden;
      position: relative;
      border: 1px solid rgba(0, 242, 254, 0.15); /* Subtle cyan border */
      transition: all 0.6s cubic-bezier(0.16, 1, 0.3, 1);
      text-decoration: none;
      display: flex;
      flex-direction: column;
      box-shadow: 0 20px 40px rgba(0,0,0,0.5);
    }
    @media (min-width: 1200px) {
      .condition-oval-card {
        min-width: 120px !important;
      }
    }
    .condition-oval-card:hover {
      transform: translateY(-25px) scale(1.04);
      border-color: #00f2fe;
      box-shadow: 0 40px 80px rgba(0,0,0,0.7), 0 0 35px rgba(0, 242, 254, 0.4);
      z-index: 10;
    }
    /* WCAG 2.2 AAA Focus Indicator Fix */
    .condition-oval-card:focus-visible {
      outline: 6px solid #ff3399 !important; /* Thick Pink ring INSIDE the card */
      outline-offset: -10px; /* Negative offset keeps it inside the oval */
      transform: translateY(-20px) scale(1.02);
      z-index: 20;
      border-radius: 100px;
      background: #000c14;
      box-shadow: inset 0 0 50px rgba(255, 51, 153, 0.4), 0 30px 60px rgba(0,0,0,0.6);
      border-color: #ff3399 !important;
    }


    
    html[data-contrast="dark"] .condition-oval-card:focus-visible {
      outline-color: #ffff00 !important;
      box-shadow: 0 0 40px #ffff00 !important;
    }

    html[data-contrast="light"] .condition-oval-card:focus-visible {
      outline-color: #000000 !important;
      box-shadow: 0 0 30px #000000 !important;
    }

    .oval-image-wrap {
      width: 100%;
      height: 100%; /* Fill entire oval */
      position: absolute;
      top: 0;
      left: 0;
      overflow: hidden;
    }
    .oval-image-wrap img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center 45%;
      opacity: 0.85;
      transition: transform 1.5s ease, opacity 0.8s ease;
      filter: brightness(1.05) contrast(1.05);
    }
    .condition-oval-card:hover .oval-image-wrap img {
      transform: scale(1.05) rotate(1deg);
      opacity: 1;
      filter: brightness(1.1) contrast(1.1);
    }
    /* Neck Pain: subtly reduce scale ~5% to reveal more skull/cervical spine while keeping immersive fill */
    .conditions-oval-gallery > a:nth-child(2) .oval-image-wrap {
      display: flex;
      align-items: center;
      justify-content: center;
    }
    .conditions-oval-gallery > a:nth-child(2) .oval-image-wrap img {
      width: 98%;
      height: 98%;
      transform: scale(1.03);
      object-fit: cover;
      object-position: center 50%;
    }
    /* Shoulder: shift view left via object-position to center glenohumeral joint */
    .conditions-oval-gallery > a:nth-child(3) .oval-image-wrap img {
      object-fit: cover;
      object-position: 38% 47%;
    }
    /* Elbow: shift upward ~5%, shift right ~3% to center the joint */
    .conditions-oval-gallery > a:nth-child(4) .oval-image-wrap img {
      object-position: 47% 50%;
    }
    /* Hip: move image down ~3% for breathing room above pelvis */
    .conditions-oval-gallery > a:nth-child(6) .oval-image-wrap img {
      object-position: center 42%;
    }
    /* Foot & Ankle: shift right ~6% to reduce left empty space, center ankle joint */
    .conditions-oval-gallery > a:nth-child(8) .oval-image-wrap img {
      object-position: 56% 45%;
    }
    .oval-label-wrap {
      height: 25%;
      width: 100%;
      display: flex;
      align-items: flex-end;
      justify-content: center;
      padding: 0 15px 35px 15px; /* Padding for bottom alignment */
      background: linear-gradient(0deg, rgba(0,0,0,0.95) 0%, rgba(0,0,0,0.6) 40%, transparent 100%);
      position: absolute;
      bottom: 0;
      z-index: 2;
      -webkit-backdrop-filter: blur(2px);
      backdrop-filter: blur(2px);
    }
    .oval-label-wrap h3 {
      color: #fff;
      font-size: 14px;
      font-weight: 800;
      text-align: center;
      margin: 0;
      line-height: 1.2;
      text-transform: uppercase;
      letter-spacing: 2px;
      transition: all 0.4s ease;
      font-family: var(--heading-font);
    }
    .condition-oval-card:hover .oval-label-wrap h3 {
      color: #00f2fe;
      transform: translateY(-5px);
      text-shadow: 0 0 15px rgba(0, 242, 254, 0.8);
    }

    /* WCAG & Contrast Compatibility for Oval Cards */
    html[data-contrast="dark"] .condition-oval-card {
      background: #000000 !important;
      border: 3px solid #ffff00 !important;
      box-shadow: none !important;
    }
    html[data-contrast="dark"] .oval-label-wrap h3 {
      color: #ffff00 !important;
      background: #000 !important;
    }
    html[data-contrast="dark"] .condition-oval-card:hover {
      transform: translateY(-10px) !important;
      box-shadow: 0 0 20px #ffff00 !important;
    }

    html[data-contrast="light"] .condition-oval-card {
      background: #ffffff !important;
      border: 3px solid #000000 !important;
    }
    html[data-contrast="light"] .oval-label-wrap {
      background: #ffffff !important;
    }
    html[data-contrast="light"] .oval-label-wrap h3 {
      color: #000000 !important;
    }

    html[data-contrast="invert"] .condition-oval-card {
      border-color: #ffffff !important; /* Visual Black */
    }
    html[data-contrast="invert"] .oval-label-wrap h3 {
      color: #ffffff !important; /* Visual Black */
    }

    @media (max-width: 991px) {
      .condition-oval-card {
        min-width: 170px;
        height: 400px;
      }
    }
    @media (max-width: 575px) {
      .condition-oval-card {
        min-width: 150px;
        height: 350px;
      }
    }

@keyframes float-vibrant-1 {
      0%, 100% { transform: translateY(0) rotate(2deg); }
      50% { transform: translateY(-15px) rotate(-2deg); }
    }
    @keyframes float-vibrant-2 {
      0%, 100% { transform: translateY(0) rotate(-5deg); }
      50% { transform: translateY(-12px) rotate(0deg); }
    }
    @keyframes float-vibrant-3 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-8px) scale(1.03); }
    }
    /* Responsive Fix: Hide ambient floating icons on tablets and mobiles to prevent overlap */
    @media (max-width: 991px) {
      .targeted-treatments div[style*="position: absolute"] {
        display: none !important;
      }
      .targeted-treatments {
        padding: 60px 0 !important;
      }
    }

@keyframes float-glow-1 {
      0%, 100% { transform: translateY(0) rotate(5deg); }
      50% { transform: translateY(-15px) rotate(-2deg); }
    }
    @keyframes float-glow-2 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-10px) scale(1.05); }
    }
    @keyframes pulse-glow {
      0%, 100% { filter: drop-shadow(0 0 15px rgba(0, 242, 254, 0.4)); }
      50% { filter: drop-shadow(0 0 25px rgba(0, 242, 254, 0.8)); }
    }
    /* Responsive Fix: Hide floating decorative elements on mobiles to prevent text overlap */
    @media (max-width: 991px) {
      .physician-highlight-section div[style*="position: absolute"] {
        display: none !important;
      }
      .physician-highlight-section {
        padding: 60px 0 !important;
      }
    }

@keyframes float-sticker {
      0%, 100% { transform: translateY(0); }
      50% { transform: translateY(-15px); }
    }
    @keyframes float-sticker-alt1 {
      0%, 100% { transform: translateY(0) rotate(15deg); }
      50% { transform: translateY(-20px) rotate(5deg); }
    }
    @keyframes float-sticker-alt2 {
      0%, 100% { transform: translateY(0) rotate(-10deg); }
      50% { transform: translateY(-12px) rotate(0deg); }
    }
    @keyframes float-sticker-alt3 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-8px) scale(1.05); }
    }
    .floating-sticker {
      animation: float-sticker 6s ease-in-out infinite;
    }
    /* Responsive Fix: Hide ambient stickers/shapes on tablets/mobiles to prevent text overlap */
    @media (max-width: 991px) {
      .patient-journey-vertical div[style*="position: absolute"]:not(.journey-step-number) {
        display: none !important;
      }
      .patient-journey-vertical {
        padding: 60px 0 !important;
      }
      .patient-journey-vertical .journey-step-card {
        position: relative !important;
        padding-top: 60px !important;
        margin-top: 40px !important;
      }
      .patient-journey-vertical .journey-step-number {
        display: flex !important;
        position: absolute !important;
        top: 0 !important;
        left: 50% !important;
        right: auto !important;
        transform: translate(-50%, -50%) !important;
      }
    }

@keyframes float-location-1 {
      0%, 100% { transform: translateY(0) rotate(5deg); }
      50% { transform: translateY(-15px) rotate(-5deg); }
    }
    @keyframes float-location-2 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-10px) scale(1.05); }
    }
    @keyframes float-location-3 {
      0%, 100% { transform: translateY(0) rotate(-10deg); }
      50% { transform: translateY(-12px) rotate(0deg); }
    }
    /* Responsive Fix: Hide ambient location icons on tablets/mobiles to prevent text overlap */
    @media (max-width: 991px) {
      .location-nexus-section div[style*="position: absolute"] {
        display: none !important;
      }
      .location-nexus-section {
        padding: 60px 0 !important;
      }
    }
    
    /* iPhone SE & Small Screen Optimization */
    @media (max-width: 575px) {
      .location-card-main {
        padding: 30px 20px !important;
        border-radius: 30px !important;
      }
      .location-card-main > div[style*="height: 6px"] {
        left: 30px !important;
        right: 30px !important;
      }
      .location-card-main h3 {
        font-size: 1.2rem !important;
      }
      .location-card-main div[style*="padding: 30px"] {
        padding: 20px !important;
        border-radius: 20px !important;
      }
      .location-card-main p {
        font-size: 1.05rem !important;
      }
      .location-card-main .location-btn {
        padding: 14px 20px !important;
        font-size: 0.95rem !important;
      }
    }

    /* WCAG 2.2 AAA Focus Indicator for Location Button */
    .location-btn:focus-visible {
      outline: 5px solid #ff3399 !important;
      outline-offset: 8px;
      box-shadow: 0 0 35px rgba(255, 51, 153, 0.5) !important;
      background: #023047 !important; /* Switch to brand dark color */
      color: #ffffff !important;
      border-color: #ff3399 !important;
    }

@keyframes float-testimonial-1 {
      0%, 100% { transform: translateY(0) rotate(-5deg); }
      50% { transform: translateY(-15px) rotate(5deg); }
    }
    @keyframes float-testimonial-2 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-10px) scale(1.05); }
    }
    @keyframes float-testimonial-3 {
      0%, 100% { transform: translateY(0) rotate(10deg); }
      50% { transform: translateY(-12px) rotate(0deg); }
    }
    /* Responsive Fix: Hide ambient stickers/shapes on tablets/mobiles to prevent text overlap */
    @media (max-width: 991px) {
      .our-testimonial-impact div[style*="position: absolute"] {
        display: none !important;
      }
      .our-testimonial-impact {
        padding: 60px 0 !important;
      }
    }

.testimonialSwiper {
  padding: 20px 20px 40px 20px !important;
  margin: -20px -20px -40px -20px !important;
}

.testimonialSwiper .swiper-pagination-custom {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 0 !important;
  position: relative !important;
  z-index: 10 !important;
}

.testimonialSwiper .swiper-pagination-bullet {
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  min-height: 8px !important;
  max-width: 8px !important;
  max-height: 8px !important;
  border-radius: 50% !important;
  background: var(--primary-color) !important;
  opacity: 0.35 !important;
  border: none !important;
  outline: none !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
  vertical-align: middle !important;
}

.testimonialSwiper .swiper-pagination-bullet-active {
  background: var(--primary-color) !important;
  opacity: 1 !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  transform: scale(1.25) !important;
}
        .testimonial-card-premium {
          transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
        }
        .testimonial-card-premium:hover {
          transform: translateY(-10px);
          box-shadow: 0 50px 120px rgba(2, 48, 71, 0.12) !important;
        }

        /* Mobile Responsive Styles for Testimonials */
        @media (max-width: 991px) {
          .testimonial-card-premium {
            padding: 35px !important;
          }
        }

        @media (max-width: 767px) {
          .testimonialSwiper {
            /* Prevent box-shadow from being clipped at slide boundary */
            padding: 20px 20px 60px 20px !important;
            margin: -20px -20px -60px -20px !important;
          }
          .testimonial-card-premium {
            padding: 24px 20px !important;
            border-radius: 20px !important;
          }
          .testimonial-card-premium p {
            font-size: 1rem !important;
            line-height: 1.6 !important;
            margin-bottom: 20px !important;
          }
          .testimonial-card-premium .avatar-circle {
            width: 48px !important;
            height: 48px !important;
            font-size: 1.1rem !important;
          }
          .testimonial-card-premium h4 {
            font-size: 1.05rem !important;
          }
          .testimonial-content-info .testimonial-quote-brand {
            margin-bottom: 20px !important;
            width: 60px !important;
          }
          .our-testimonial-impact {
            padding: 60px 0 !important;
          }
        }

        @media (max-width: 575px) {
          .testimonial-card-premium {
            padding: 20px 16px !important;
            border-radius: 16px !important;
          }
          .testimonial-card-premium p {
            font-size: 0.95rem !important;
            line-height: 1.55 !important;
          }
        }

        /* Specific Override for High-Contrast Dark Mode */
        html[data-contrast="dark"] .testimonial-slider-pro .avatar-circle span,
        html[data-contrast="dark"] .testimonial-slider-pro .avatar-circle {
          color: #000000 !important;
          -webkit-text-fill-color: #000000 !important;
        }
        html[data-contrast="dark"] .testimonial-card-premium {
          background-color: #000000 !important;
          border: 2px solid #ffff00 !important;
        }

        /* Testimonial Text Scaling (Accessibility Assistant Integration) */
        body.acc-text-x1 .testimonial-card-premium h4 { font-size: 1.45rem !important; }
        body.acc-text-x1 .testimonial-card-premium span { font-size: 1rem !important; }
        body.acc-text-x1 .testimonial-card-premium p { font-size: 1.4rem !important; }

        body.acc-text-x2 .testimonial-card-premium h4 { font-size: 1.8rem !important; }
        body.acc-text-x2 .testimonial-card-premium span { font-size: 1.2rem !important; }
        body.acc-text-x2 .testimonial-card-premium p { font-size: 1.7rem !important; }

        body.acc-text-x3 .testimonial-card-premium h4 { font-size: 2.1rem !important; }
        body.acc-text-x3 .testimonial-card-premium span { font-size: 1.4rem !important; }
        body.acc-text-x3 .testimonial-card-premium p { font-size: 2.1rem !important; }

@keyframes float-cta-1 {
      0%, 100% { transform: translateY(0) rotate(10deg); }
      50% { transform: translateY(-15px) rotate(5deg); }
    }
    @keyframes float-cta-2 {
      0%, 100% { transform: translateY(0) rotate(-10deg); }
      50% { transform: translateY(-12px) rotate(0deg); }
    }
    @keyframes float-cta-3 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-10px) scale(1.05); }
    }

    /* WCAG 2.2 AAA Focus Indicator for Final CTA Button */
    .final-cta-btn:focus-visible {
      outline: 5px solid #ff3399 !important;
      outline-offset: 8px;
      box-shadow: 0 0 45px rgba(255, 51, 153, 0.6) !important;
      background: var(--accent-color) !important; /* Medical Mint Green Accent */
      color: #ffffff !important;
      border-color: #ff3399 !important;
      transform: scale(1.05) !important;
      z-index: 10;
    }

@keyframes float-faq-1 {
      0%, 100% { transform: translateY(0) rotate(5deg); }
      50% { transform: translateY(-15px) rotate(-5deg); }
    }
    @keyframes float-faq-2 {
      0%, 100% { transform: translateY(0) scale(1); }
      50% { transform: translateY(-12px) scale(1.05); }
    }
    @keyframes float-faq-3 {
      0%, 100% { transform: translateY(0) rotate(-10deg); }
      50% { transform: translateY(-10px) rotate(0deg); }
    }
    /* Responsive Fix: Hide FAQ icons on tablets/mobiles to prevent text overlap */
    @media (max-width: 991px) {
      .faq-editorial-section div[style*="position: absolute"] {
        display: none !important;
      }
      .faq-editorial-section {
        padding: 60px 0 !important;
      }
    }

/* =========================================
   ACCESSIBILITY & RESPONSIVE SUBTITLE FIXES
   ========================================= */
@media (max-width: 991px) {
  .section-title h2.sub-title,
  .section-title .sub-title {
    font-size: 14px !important;
    line-height: 1.2 !important;
  }
}

/* WCAG 2.3.3 Animation/Transition from Interactions Reset */
@media (prefers-reduced-motion: reduce) {
  .hero-revamp .badge-item,
  .badge-item {
    transition: none !important;
  }
  .hero-revamp .badge-item:hover {
    padding-left: 0 !important;
    padding-inline-start: 0 !important;
  }
  .badge-item:hover {
    transform: none !important;
  }
}

/* ==========================================================================
   TABLET RESPONSIVE OVERRIDES (768px to 1024px)
   ========================================================================== */
@media (min-width: 768px) and (max-width: 1024px) {
  /* Location Label */
  .hero-revamp .hero-label,
  .hero-label {
    font-size: 0.85rem !important;
    margin-bottom: 10px !important;
  }

  /* Main Title — Compact, Elegant & Scaled for 1024px */
  .hero-revamp h1,
  .hero-content h1 {
    font-size: 1.88rem !important; /* ~30px - clean 3-line wrap without vertical height bloat */
    line-height: 1.22 !important;
    margin-bottom: 12px !important;
  }

  /* For narrower tablet viewports (<900px), scale text further */
  @media (max-width: 900px) {
    .hero-revamp h1,
    .hero-content h1 {
      font-size: 1.75rem !important;
    }
  }

  /* Description Paragraph */
  .hero-content p {
    font-size: 0.92rem !important;
    line-height: 1.5 !important;
    max-width: 92% !important;
    margin-bottom: 16px !important;
  }

  /* Full column layout on 992px-1024px */
  @media (max-width: 991px) {
    .hero-content {
      max-width: 85% !important;
      margin: 0 auto !important;
      padding-left: 0 !important;
    }
  }

  @media (min-width: 992px) {
    .hero-content {
      max-width: 100% !important;
      padding-left: 0 !important;
    }

    /* Doctor Portrait - Soft Blending (anchored to section bottom; coat dissolves smoothly without floating cut-off) */
    .doctor-portrait-wrapper {
      mask-image: linear-gradient(to right, transparent 0%, black 18%, black 100%) !important;
      -webkit-mask-image: linear-gradient(to right, transparent 0%, black 18%, black 100%) !important;
      mask-composite: normal !important;
      -webkit-mask-composite: normal !important;
    }

    /* Feature Grid Badges */
    .hero-highlights {
      display: flex !important;
      flex-wrap: wrap !important;
      gap: 8px 10px !important;
      max-width: 100% !important;
      margin-bottom: 18px !important;
    }

    .hero-highlights .badge-item {
      display: inline-flex !important;
      align-items: center !important;
      gap: 6px !important;
      padding: 6px 10px !important;
      font-size: 0.78rem !important;
      margin: 0 !important;
      width: auto !important;
      box-sizing: border-box !important;
    }

    /* CTA Buttons — Sleek Aligned Row */
    .hero-content-body {
      display: flex !important;
      flex-direction: row !important;
      gap: 12px !important;
      margin-top: 0 !important;
      align-items: center !important;
      justify-content: flex-start !important;
    }

    .hero-content-body .btn-default {
      margin: 0 !important;
      flex: 0 1 auto !important;
      width: auto !important;
    }

    .hero-content-body .btn-default.btn-highlighted {
      margin-left: 0 !important;
    }

    .hero-content-body .btn-default span {
      padding: 10px 18px !important;
      font-size: 14px !important;
      width: auto !important;
      text-align: center !important;
    }

    /* Reposition fixed accessibility button & menu to bottom-right */
    #acc-widget-btn,
    #acc-menu {
      left: auto !important;
      right: 30px !important;
    }
  }

  @media (min-width: 992px) and (max-width: 1024px) {
    .doctor-portrait-wrapper {
      width: 45% !important;
    }
    .doctor-portrait-img {
      top: 0 !important;
      bottom: 0 !important;
      left: auto !important;
      right: 0 !important;
      width: auto !important;
      height: 100% !important;
      max-height: 560px !important;
      object-fit: contain !important;
      object-position: bottom right !important;
    }
  }
}

/* ==========================================================================
   EXACT 1024px HERO — Ensure full content fits in viewport fold
   ========================================================================== */
@media (min-width: 992px) and (max-width: 1024px) {
  .hero-revamp h1,
  .hero-content h1 {
    font-size: 1.55rem !important;
    line-height: 1.2 !important;
    margin-bottom: 10px !important;
  }

  .hero-content p {
    font-size: 0.88rem !important;
    line-height: 1.48 !important;
    margin-bottom: 12px !important;
  }

  .hero-highlights {
    display: grid !important;
    grid-template-columns: repeat(2, auto) !important;
    gap: 6px 10px !important;
    margin-bottom: 14px !important;
  }

  .hero-highlights .badge-item {
    padding: 5px 10px !important;
    font-size: 0.76rem !important;
    width: auto !important;
    justify-content: flex-start !important;
  }

  .hero-content-body .btn-default span {
    padding: 9px 16px !important;
    font-size: 13px !important;
  }
}

/* ==========================================================================
   ULTRA-WIDE / 4K HERO SCALING (1600px+)
   ========================================================================== */
@media (min-width: 1600px) {
  .hero .container {
    max-width: clamp(1320px, 75vw, 2800px) !important;
  }
  .hero-content {
    max-width: clamp(610px, 35vw, 820px) !important;
  }
}

/* === COMBINED FROM focus-outline.css === */
/* focus-outline.css – loaded after all other styles */

/* Global visible focus indicator for keyboard users */
:focus-visible {
  outline: 3px solid #ffcc00 !important; /* bright gold for high contrast */
  outline-offset: 2px !important;
  box-shadow: 0 0 0 2px #000000 !important; /* inner black ring */
}

/* Ensure third‑party components cannot re‑hide the ring */
* {
  outline: initial !important;
}

/* Utility class for JS‑added focus */
.focus-visible {
  outline: 3px solid #ffcc00 !important;
  outline-offset: 2px !important;
  box-shadow: 0 0 0 2px #000000 !important;
}

/* Specific overrides for accordion buttons to prevent clipping by parent overflow hidden */
.accordion-button:focus,
.accordion-button:focus-visible,
.accordion-button.focus-visible {
  outline: 3px solid #ffcc00 !important;
  outline-offset: -3px !important;
  box-shadow: inset 0 0 0 2px #000000 !important;
  z-index: 10 !important;
}


