@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{--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}*,::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}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}b,strong{font-weight:bolder}.small,small{font-size:.875em}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{font-family:var(--bs-font-monospace);font-size:1em}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,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,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=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}::-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;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.img-fluid{max-width:100%;height:auto}.container{--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{max-width:540px}}@media (min-width:768px){.container{max-width:720px}}@media (min-width:992px){.container{max-width:960px}}@media (min-width:1200px){.container{max-width:1140px}}@media (min-width:1400px){.container{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-6{flex:0 0 auto;width:50%}.col-12{flex:0 0 auto;width:100%}.g-0{--bs-gutter-x:0}.g-0{--bs-gutter-y:0}.g-2{--bs-gutter-x:0.5rem}.g-2{--bs-gutter-y:0.5rem}.g-3{--bs-gutter-x:1rem}.g-3{--bs-gutter-y:1rem}.g-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5{--bs-gutter-x:3rem}.g-5{--bs-gutter-y:3rem}@media (min-width:576px){.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%}}@media (min-width:768px){.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%}}@media (min-width:992px){.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%}}.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}.form-label{margin-bottom:.5rem}.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)}textarea.form-control{min-height:calc(1.5em + .75rem + 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)}.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}.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{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-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-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-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-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}}.dropdown,.dropup{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)}.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}.dropdown-menu.show{display:block}.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}.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{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-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%}@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-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}}.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}.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)}.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-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.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-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)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{--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)}.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)}.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-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-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)}@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}}@media (min-width:992px){.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}@keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 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-16x9{--bs-aspect-ratio:56.25%}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.visually-hidden{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:not(caption){position:absolute!important}.overflow-hidden{overflow:hidden!important}.d-block{display:block!important}.d-flex{display:flex!important}.d-none{display:none!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.top-0{top:0!important}.end-0{right:0!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-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.w-100{width:100%!important}.flex-shrink-0{flex-shrink:0!important}.flex-wrap{flex-wrap:wrap!important}.justify-content-center{justify-content:center!important}.align-items-start{align-items:flex-start!important}.align-items-center{align-items:center!important}.m-2{margin:.5rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!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}.me-2{margin-right:.5rem!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}.ms-1{margin-left:.25rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-2{padding:.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pb-0{padding-bottom:0!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.fw-semibold{font-weight:600!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-circle{border-radius:50%!important}@media (min-width:576px){.text-sm-end{text-align:right!important}}@media (min-width:768px){.d-md-block{display:block!important}}@media (min-width:992px){.d-lg-block{display:block!important}}/* ============================================================
   Ghar Sathi 24x7 — Bootstrap 5 theme layer
   Brand: royal navy (#193B7A) + saffron-orange (#EC7332), sampled from logo.png
   ============================================================ */

:root{
  --gs-navy: #193B7A;
  --gs-navy-dark: #10274F;
  --gs-orange: #EC7332;
  --gs-orange-dark: #D45E20;
  --gs-ink: #1A2330;
  --gs-muted: #5B6B7C;
  --gs-bg-alt: #F7F9FC;
  --gs-border: #E2E8F0;

  /* Re-point Bootstrap's own variables at the brand palette so every
     Bootstrap component (buttons, links, form focus rings, badges...)
     automatically matches the brand without per-component overrides. */
  --bs-primary: var(--gs-orange);
  --bs-primary-rgb: 236,115,50;
  --bs-secondary: var(--gs-navy);
  --bs-secondary-rgb: 25,59,122;
  --bs-link-color: var(--gs-navy);
  --bs-link-hover-color: var(--gs-orange);
  --bs-body-color: var(--gs-ink);
  --bs-body-font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --bs-font-sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}

/* Match fallback text metrics to the web fonts so late font availability does not move content. */
@font-face{
  font-family:"Inter Fallback";
  src:local("Arial");
  size-adjust:107.4%;
  ascent-override:90%;
  descent-override:22%;
  line-gap-override:0%;
}
@font-face{
  font-family:"Poppins Fallback";
  src:local("Arial");
  size-adjust:105.5%;
  ascent-override:92%;
  descent-override:24%;
  line-gap-override:0%;
}
body{ font-family:'Inter','Inter Fallback',-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; }
h1,h2,h3,h4,h5,h6{ font-family:'Poppins','Poppins Fallback',var(--bs-body-font-family); }

/* Bootstrap Icons CDN defaults to font-display:block; swap avoids invisible content while its font loads. */
@font-face{
  font-family:"bootstrap-icons";
  src:url("https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.11.3/font/fonts/bootstrap-icons.woff2?dd67030699838ea613ee6dbda90effa6") format("woff2");
  font-display:swap;
}
/* Reserve icon size before the async icon stylesheet/font arrives, to avoid layout shift. */
i.bi{ display:inline-block; width:1em; height:1em; line-height:1; vertical-align:-.125em; }

body{ background:#fff; }
h1,h2,h3,h4,h5,h6{ font-family:'Poppins', var(--bs-font-sans-serif); font-weight:700; color:var(--gs-navy-dark); }
a{ text-decoration:none; }
.text-accent{ color:var(--gs-orange) !important; }
.bg-navy{ background:var(--gs-navy) !important; }

/* ---- Buttons ---- */
.btn-primary{ --bs-btn-color:#fff; --bs-btn-hover-color:#fff; --bs-btn-active-color:#fff; --bs-btn-bg:var(--gs-orange); --bs-btn-border-color:var(--gs-orange); --bs-btn-hover-bg:var(--gs-orange-dark); --bs-btn-hover-border-color:var(--gs-orange-dark); --bs-btn-active-bg:var(--gs-orange-dark); --bs-btn-focus-shadow-rgb:236,115,50; font-weight:600; border-radius:8px; }
.btn-dark{ --bs-btn-bg:var(--gs-navy); --bs-btn-border-color:var(--gs-navy); --bs-btn-hover-bg:var(--gs-navy-dark); --bs-btn-hover-border-color:var(--gs-navy-dark); border-radius:8px; font-weight:600; }
.btn-outline-primary{ --bs-btn-color:var(--gs-orange); --bs-btn-border-color:var(--gs-orange); --bs-btn-hover-bg:var(--gs-orange); --bs-btn-hover-border-color:var(--gs-orange); border-radius:8px; font-weight:600; }
.btn-outline-light{ border-radius:8px; font-weight:600; }
.btn{ border-radius:8px; }
.btn-lg{ padding:.75rem 1.5rem; }

/* ---- Topbar ---- */
.topbar{ background:var(--gs-navy-dark); color:#C9D6E3; font-size:13px; }
.topbar-inner{ display:flex; justify-content:space-between; align-items:center; padding:7px 0; }
.topbar-contact{ display:flex; gap:22px; align-items:center; flex-wrap:wrap; }
.topbar-contact a, .topbar-contact span{ color:#C9D6E3; display:inline-flex; align-items:center; gap:6px; }
.topbar-contact a:hover{ color:#fff; }
.topbar-social{ display:flex; gap:14px; }
.topbar-social a{ color:#C9D6E3; font-size:15px; }
.topbar-social a:hover{ color:var(--gs-orange); }

/* ---- Navbar ---- */
.site-navbar{ background:#fff; box-shadow:0 2px 16px rgba(16,39,79,.08); padding:10px 0; z-index:1030; }
.site-navbar .navbar-brand img{ display:block; width:auto; height:56px; }
.site-navbar .nav-link{ color:var(--gs-ink); font-weight:600; padding:10px 16px !important; }
.site-navbar .nav-link:hover, .site-navbar .nav-link.active{ color:var(--gs-orange); }
.header-phone{ display:flex; align-items:center; gap:8px; font-weight:700; color:var(--gs-navy); }
.header-phone:hover{ color:var(--gs-orange); }

.mega-menu{ padding:18px; min-width:560px; border:none; border-radius:12px; }
.mega-item{ display:flex; align-items:center; gap:10px; padding:8px 10px; border-radius:8px; color:var(--gs-ink); font-weight:600; font-size:14px; }
.mega-item:hover{ background:var(--gs-bg-alt); color:var(--gs-orange); }
.mega-icon{ display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:8px; background:color-mix(in srgb, var(--badge-color, var(--gs-orange)) 15%, white); color:var(--badge-color, var(--gs-orange)); font-size:16px; flex-shrink:0; }
.mega-footer{ margin-top:10px; text-align:right; }
.mega-footer a{ font-weight:700; color:var(--gs-orange); font-size:14px; }

@media (min-width: 992px){
  .site-navbar .mega-menu{
    width:clamp(680px, 66vw, 900px);
    max-width:calc(100vw - 300px);
    max-height:72vh;
    overflow-y:auto;
    padding:22px;
  }
  .site-navbar .mega-menu .mega-item{ min-height:52px; padding:10px 12px; }
}
@media (min-width: 1200px){
  .site-navbar .mega-menu .row > .col-lg-4{ flex:0 0 25%; width:25%; }
}

@media (max-width: 991.98px){
  .mega-menu{ min-width:100%; box-shadow:none !important; }
}

@media (max-width: 991.98px){
  .site-navbar .navbar-collapse.collapse{
    display:block;
    position:fixed;
    top:0;
    right:0;
    bottom:0;
    z-index:1050;
    width:min(86vw, 360px) !important;
    max-width:min(86vw, 360px);
    height:100vh;
    height:100dvh;
    overflow-y:auto;
    padding:16px 20px 28px;
    background:#fff;
    box-shadow:-18px 0 38px rgba(16,39,79,.16);
    transform:translate3d(100%,0,0);
    visibility:hidden;
    backface-visibility:hidden;
    will-change:transform;
    transition:transform .32s cubic-bezier(.22,.61,.36,1), visibility 0s linear .32s;
  }
  .site-navbar .navbar-collapse.show{
    display:block;
    width:min(86vw, 360px) !important;
    max-width:min(86vw, 360px);
    height:100vh !important;
    height:100dvh !important;
    overflow-y:auto;
    transform:translate3d(0,0,0);
    visibility:visible;
    transition:transform .32s cubic-bezier(.22,.61,.36,1), visibility 0s;
  }
  .mobile-menu-heading{ display:flex; align-items:center; justify-content:space-between; min-height:48px; margin:0 0 12px; padding:0 4px 12px; border-bottom:1px solid var(--gs-border); color:var(--gs-navy-dark); font-family:'Poppins',sans-serif; font-size:18px; font-weight:700; }
  .mobile-menu-close{ display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border:1px solid var(--gs-border); border-radius:12px; background:#fff; color:var(--gs-navy-dark); font-size:17px; cursor:pointer; }
  .mobile-menu-close:hover{ border-color:var(--gs-orange); background:#fff8f2; color:var(--gs-orange-dark); }
  .site-navbar .navbar-nav{ margin:0 !important; }
  .site-navbar .navbar-nav .nav-link{ padding:12px 10px !important; }
  .site-navbar .navbar-nav .dropdown-menu{ position:static; margin:4px 0 10px; padding:10px; background:var(--gs-bg-alt); border-radius:12px; }
  .site-navbar .mega-menu .row{ display:block; margin:0; }
  .site-navbar .mega-menu .row > [class*="col-"]{ width:100%; padding:0; }
  .site-navbar .mega-menu .mega-item{ min-height:52px; padding:9px 10px; font-size:15px; }
  .site-navbar .mega-menu hr{ margin:10px 0; }
  .site-navbar .header-cta{ padding:12px 10px 0; }
  .site-navbar .header-cta .btn{ width:100%; padding:10px 14px; }
}
@media (min-width: 992px){
  .mobile-menu-heading,.mobile-menu-close{ display:none; }
}

/* ---- Hero + search ---- */
.hero{ background:linear-gradient(135deg, var(--gs-navy) 0%, var(--gs-navy-dark) 100%); color:#fff; padding:64px 0 90px; position:relative; overflow:hidden; }
.hero::after{ content:""; position:absolute; inset:0; background:radial-gradient(circle at 85% 20%, rgba(236,115,50,.28), transparent 45%); pointer-events:none; }
.hero h1{ color:#fff; font-size:clamp(28px,4vw,46px); line-height:1.15; }
.hero .lead{ color:#D7E1EE; font-size:17px; max-width:560px; }
.hero-stats{ display:flex; gap:28px; margin-top:28px; flex-wrap:wrap; }
.hero-stats strong{ display:block; font-size:24px; font-family:'Poppins',sans-serif; color:var(--gs-orange); }
.hero-stats span{ font-size:13px; color:#B9C6D8; }
.hero-image-wrap{ position:relative; }
.hero-image-wrap img{ display:block; width:100%; height:auto; aspect-ratio:2/1; border-radius:16px; box-shadow:0 24px 50px rgba(0,0,0,.35); }

.search-card{ background:#fff; border-radius:16px; padding:22px; box-shadow:0 24px 50px rgba(0,0,0,.25); margin-top:-54px; position:relative; z-index:5; }
.search-card h3{ font-size:17px; margin-bottom:4px; }
.search-form .form-control{ height:52px; border-radius:10px 0 0 10px; border:1px solid var(--gs-border); font-size:15px; }
.search-form .btn{ border-radius:0 10px 10px 0; padding-left:22px; padding-right:22px; }
.search-suggestions{ margin-top:10px; display:flex; gap:8px; flex-wrap:wrap; }
.search-suggestions .chip{ background:var(--gs-bg-alt); border:1px solid var(--gs-border); border-radius:20px; padding:5px 13px; font-size:12.5px; color:var(--gs-muted); cursor:pointer; }
.search-suggestions .chip:hover{ background:#fff0e6; border-color:var(--gs-orange); color:var(--gs-orange-dark); }

/* ---- Sections ---- */
.section{ position:relative; padding:70px 0; }
.section:not(:first-of-type){ border-top:1px solid var(--gs-border); }
.section::before{ content:""; position:absolute; left:50%; top:0; width:130px; height:3px; border-radius:999px; transform:translateX(-50%); background:linear-gradient(90deg, transparent, var(--gs-orange), transparent); opacity:0; }
.section:not(:first-of-type)::before{ opacity:1; }
.section-alt{ background:var(--gs-bg-alt); }
.section-navy{ background:linear-gradient(135deg, var(--gs-navy) 0%, var(--gs-navy-dark) 100%); color:#fff; border-top-color:rgba(255,255,255,.08); }
.section-navy h2{ color:#fff; }
.section-navy::before{ background:linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent); }
.eyebrow{ display:inline-block; color:var(--gs-orange); font-weight:700; letter-spacing:.06em; text-transform:uppercase; font-size:12.5px; margin-bottom:6px; }
.section-head{ max-width:640px; margin:0 auto 42px; text-align:center; }
.section-head p{ color:var(--gs-muted); }
.section-navy .section-head{ max-width:980px; }
.section-navy .section-head h2{ font-size:clamp(34px, 4vw, 64px); line-height:1.08; letter-spacing:-.04em; }
.section-navy .section-head p{ color:rgba(255,255,255,.8); font-size:1.05rem; }

/* ---- Icon badges ---- */
.icon-badge{ width:52px; height:52px; border-radius:12px; display:inline-flex; align-items:center; justify-content:center; background:color-mix(in srgb, var(--badge-color, var(--gs-orange)) 14%, white); color:var(--badge-color, var(--gs-orange)); font-size:22px; }
.section-navy .icon-badge{ background:rgba(255,255,255,.12); color:var(--gs-orange); }

/* ---- Cards ---- */
.card{ border:1px solid var(--gs-border); border-radius:14px; }
.service-card{
    height:100%;
    overflow:hidden;
    border-radius:18px;
    border:1px solid var(--gs-border);
    background:#fff;
    box-shadow:0 12px 28px rgba(16,39,79,.06);
    transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.service-card:hover{ transform:translateY(-4px); box-shadow:0 20px 40px rgba(16,39,79,.12); border-color:rgba(37,99,235,.16); }
.service-card-media{ position:relative; height:220px; overflow:hidden; }
.service-card-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.service-card-media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(13,25,45,.02), rgba(13,25,45,.18)); }
.service-card-icon{
    position:absolute;
    left:18px;
    bottom:18px;
    z-index:1;
    width:56px;
    height:56px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:rgba(255,255,255,.96);
    color:var(--badge-color, var(--gs-orange));
    box-shadow:0 10px 20px rgba(15,23,42,.12);
    font-size:24px;
}
.service-card-body{ padding:18px 18px 0; }
.service-card h3{ font-size:1.15rem; margin:0 0 8px; }
.service-card p{ color:var(--gs-muted); font-size:14px; min-height:54px; margin:0; }
.service-card .card-links{ display:flex; justify-content:space-between; align-items:center; gap:10px; padding:16px 18px 18px; font-size:13.5px; font-weight:700; }
.service-card .card-links a:first-child{ color:var(--gs-navy); }
.service-card .card-links a:last-child{ color:var(--gs-orange); }

.quick-card{ border-radius:14px; border:1px dashed var(--gs-orange); background:#fff8f2; padding:22px; height:100%; }
.quick-badge{ display:inline-block; background:var(--gs-orange); color:#fff; font-size:11px; font-weight:700; padding:3px 10px; border-radius:20px; margin-bottom:10px; }

.quick-service-card{ position:relative; height:100%; overflow:hidden; background:#fff; border:1px solid var(--gs-border); border-radius:22px; box-shadow:0 18px 40px rgba(16,39,79,.06); transition:transform .2s ease, box-shadow .2s ease; }
.quick-service-card:hover{ transform:translateY(-4px); box-shadow:0 24px 50px rgba(16,39,79,.12); }
.quick-service-media{ position:relative; height:220px; overflow:hidden; }
.quick-service-media img{ width:100%; height:auto; object-fit:cover; display:block; }
.quick-service-media::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(13,25,45,.02), rgba(13,25,45,.42)); }
.quick-service-tag{ position:absolute; left:18px; top:18px; z-index:1; display:inline-flex; align-items:center; gap:8px; background:rgba(255,255,255,.9); color:var(--gs-navy); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; padding:7px 12px; border-radius:999px; box-shadow:0 10px 20px rgba(15,23,42,.12); }
.quick-service-body{ display:flex; align-items:flex-start; gap:14px; padding:20px 20px 12px; }
.quick-service-copy{ flex:1; }
.quick-service-copy h3{ margin:0 0 8px; font-size:1.2rem; color:var(--gs-navy); }
.quick-service-copy p{ margin:0; color:var(--gs-muted); line-height:1.6; }
.quick-service-card .card-links{ display:flex; justify-content:space-between; align-items:center; padding:0 20px 20px; font-size:13.5px; font-weight:700; }
.quick-service-card .card-links a:first-child{ color:var(--gs-navy); }
.quick-service-card .card-links a:last-child{ color:var(--gs-orange); }
.quick-service-card .quick-badge{ margin-bottom:8px; }

.project-card{ border-radius:14px; overflow:hidden; border:1px solid var(--gs-border); background:#fff; height:100%; }
.project-card .thumb{ aspect-ratio:4/3; overflow:hidden; }
.project-card .thumb img{ width:100%; height:100%; object-fit:cover; }
.project-card .body{ padding:18px; }
.project-card .tag{ display:inline-block; background:var(--gs-bg-alt); color:var(--gs-navy); font-size:11.5px; font-weight:700; padding:3px 10px; border-radius:20px; margin-bottom:8px; }

.testimonial-card{ background:#fff; border:1px solid var(--gs-border); border-radius:14px; padding:26px; height:100%; }
.testimonial-card .stars{ color:#F2B01E; font-size:14px; margin-bottom:10px; }
.testimonial-card .name{ font-weight:700; margin-top:14px; color:var(--gs-navy); }

.owner-card{ background:#fff; border:1px solid var(--gs-border); border-radius:18px; overflow:hidden; height:100%; box-shadow:0 10px 30px rgba(16,39,79,.06); }
.owner-card .photo{ display:flex; align-items:center; justify-content:center; padding:22px 0 10px; }
.owner-card .photo img{ width:170px; height:170px; object-fit:cover; border-radius:50%; border:4px solid #fff; box-shadow:0 12px 28px rgba(25,59,122,.18); }
.owner-card .body{ padding:18px 22px 24px; }
.owner-card .designation{ color:var(--gs-orange); font-weight:700; font-size:12.5px; text-transform:uppercase; letter-spacing:.04em; }
.exp-badge{ display:inline-block; background:var(--gs-bg-alt); color:var(--gs-navy); font-size:12px; font-weight:700; padding:4px 10px; border-radius:20px; margin:8px 0 10px; }

@media (max-width: 575.98px){
  .owner-card .photo img{ width:130px; height:130px; }
}

.why-grid{ --why-gap: 22px; }
.why-item{ height:100%; text-align:center; padding:28px 20px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:rgba(255,255,255,.05); box-shadow:inset 0 1px 0 rgba(255,255,255,.04); transition:transform .2s ease, border-color .2s ease, background .2s ease; }
.why-item:hover{ transform:translateY(-4px); border-color:rgba(236,115,50,.55); background:rgba(255,255,255,.08); }
.why-item .icon-badge{ width:62px; height:62px; border-radius:16px; font-size:24px; margin-bottom:6px; }
.why-item h4{ margin:18px 0 10px; font-size:18px; color:#fff; }
.why-item p{ margin:0; font-size:14px; line-height:1.7; color:rgba(201,214,227,.9); }
.why-item.compact{ background:#fff; border:1px solid var(--gs-border); border-radius:18px; padding:26px 18px; box-shadow:0 10px 24px rgba(16,39,79,.05); }
.why-item.compact .icon-badge{ background:color-mix(in srgb, var(--gs-orange) 14%, white); color:var(--gs-orange); }
.why-item.compact h4{ color:var(--gs-navy); margin-top:16px; }
.why-item.compact p{ color:var(--gs-muted); }

.process-step{ text-align:center; position:relative; padding:0 10px; }
.process-step .step-num{ width:30px; height:30px; border-radius:50%; background:var(--gs-orange); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:13px; margin:0 auto 10px; }
.process-step h4{ font-size:16px; margin:14px 0 6px; }
.process-step p{ color:var(--gs-muted); font-size:13.5px; }

.vendor-strip{ display:flex; flex-wrap:wrap; justify-content:center; gap:40px; align-items:center; }
.vendor-item{ display:flex; width:140px; height:46px; align-items:center; justify-content:center; }
.vendor-item img{ display:block; width:140px; height:46px; object-fit:contain; filter:grayscale(100%); opacity:.7; transition:.2s; }
.vendor-item:hover img{ filter:none; opacity:1; }

/* ---- Page header / breadcrumbs ---- */
.page-header{ background:var(--gs-bg-alt); padding:40px 0; border-bottom:1px solid var(--gs-border); }
.page-header h1{ margin:8px 0 6px; font-size:clamp(24px,3vw,34px); }
.page-header p{ color:var(--gs-muted); margin:0; }
.crumbs{ font-size:13px; color:var(--gs-muted); }
.crumbs a{ color:var(--gs-muted); }
.crumbs a:hover{ color:var(--gs-orange); }

/* ---- Forms ---- */
.card-form{ background:#fff; border:1px solid var(--gs-border); border-radius:14px; padding:28px; }
.form-control, .form-select{ border-radius:8px; border-color:var(--gs-border); padding:10px 14px; }
.form-control:focus, .form-select:focus{ border-color:var(--gs-orange); box-shadow:0 0 0 .2rem rgba(236,115,50,.15); }
.form-label{ font-weight:600; font-size:13.5px; color:var(--gs-navy-dark); }
.honeypot-field{ position:absolute; left:-9999px; opacity:0; }
.captcha-row{ display:flex; align-items:center; gap:12px; }
.captcha-row .question{ font-weight:700; background:var(--gs-bg-alt); padding:10px 16px; border-radius:8px; white-space:nowrap; }
.hint{ font-size:12.5px; color:var(--gs-muted); margin-top:4px; }

.quote-modal-dialog{ max-width:960px; }
.quote-modal-content{ border:0; border-radius:24px; overflow:hidden; box-shadow:0 28px 80px rgba(16,39,79,.24); }
.quote-modal-visual{ position:relative; display:flex; flex-direction:column; justify-content:flex-end; min-height:570px; padding:30px; overflow:hidden; background-image:linear-gradient(180deg, rgba(10,25,51,.24) 0%, rgba(16,39,79,.62) 46%, rgba(16,39,79,.94) 100%), var(--quote-modal-background); background-size:cover; background-position:center; background-repeat:no-repeat; }
.quote-modal-visual-content{ position:relative; z-index:1; color:#fff; text-shadow:0 1px 8px rgba(0,0,0,.28); }
.quote-modal-badge{ display:inline-flex; align-items:center; gap:7px; margin-bottom:18px; background:rgba(236,115,50,.96); color:#fff; font-size:12px; font-weight:700; letter-spacing:.02em; padding:8px 12px; border-radius:999px; box-shadow:0 8px 22px rgba(0,0,0,.16); }
.quote-modal-visual-content h2{ max-width:300px; margin:0 0 10px; color:#fff; font-size:clamp(26px,3vw,34px); line-height:1.15; }
.quote-modal-visual-content p{ max-width:310px; margin:0 0 22px; color:rgba(255,255,255,.82); font-size:14px; line-height:1.65; }
.quote-trust-list{ display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.quote-trust-list li{ display:flex; align-items:center; gap:10px; color:rgba(255,255,255,.94); font-size:13px; }
.quote-trust-list .bi{ display:inline-flex; align-items:center; justify-content:center; width:28px; height:28px; flex:0 0 28px; border-radius:9px; background:rgba(255,255,255,.14); color:#FFB27F; }
.quote-modal-body{ position:relative; padding:42px 42px 30px; }
.quote-modal-close{ position:absolute; top:20px; right:20px; padding:10px; border-radius:50%; background-color:var(--gs-bg-alt); opacity:.8; }
.quote-modal-header{ margin-bottom:26px; padding-right:28px; }
.quote-modal-header .eyebrow{ display:inline-flex; align-items:center; gap:7px; margin-bottom:9px; }
.quote-modal-header .modal-title{ margin:0 0 8px; color:var(--gs-navy); font-size:clamp(25px,3vw,34px); }
.quote-modal-header p{ margin:0; color:var(--gs-muted); }
.quote-modal-body .form-label{ display:flex; align-items:center; gap:7px; margin-bottom:8px; }
.quote-modal-body .form-label > .bi{ color:var(--gs-orange); font-size:13px; }
.quote-modal-body .form-label span{ color:var(--gs-orange); }
.quote-modal-body .form-label small{ color:var(--gs-muted); font-weight:400; }
.quote-modal-body .form-control{ min-height:48px; background:#fff; }
.quote-modal-body textarea.form-control{ min-height:112px; resize:vertical; }
.quote-modal-bottom{ display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-top:20px; }
.quote-captcha{ display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
.quote-captcha .question{ font-weight:700; color:var(--gs-navy-dark); background:var(--gs-bg-alt); padding:12px 14px; border-radius:10px; white-space:nowrap; }
.quote-captcha .form-control{ width:110px; }
.quote-submit-btn{ min-height:50px; border-radius:12px; padding:12px 24px; font-weight:700; box-shadow:0 8px 18px rgba(236,115,50,.2); }
.quote-submit-btn .bi{ margin-right:7px; }
.quote-privacy-note{ display:flex; align-items:center; gap:6px; margin:15px 0 0; color:var(--gs-muted); font-size:11.5px; }
.quote-privacy-note .bi{ color:#2f9e68; }

@media (max-width: 767.98px){
  .quote-modal-dialog{ margin:12px; }
  .quote-modal-content{ border-radius:18px; }
  .quote-modal-visual{ min-height:220px; padding:22px; }
  .quote-modal-visual{ background-position:center 42%; }
  .quote-modal-visual-content h2{ max-width:380px; font-size:25px; }
  .quote-modal-visual-content p{ max-width:440px; margin-bottom:0; }
  .quote-trust-list{ display:none; }
  .quote-modal-body{ padding:25px 22px 22px; }
  .quote-modal-header{ margin-bottom:20px; }
  .quote-modal-header .modal-title{ font-size:25px; }
  .quote-modal-bottom{ align-items:stretch; flex-direction:column; }
  .quote-submit-btn{ width:100%; }
}

/* ---- Sidebar cards (service detail, contact) ---- */
.sidebar-card{ background:#fff; border:1px solid var(--gs-border); border-radius:14px; padding:22px; margin-bottom:18px; }
.sidebar-card h3{ font-size:16px; margin-bottom:10px; display:flex; align-items:center; gap:8px; }
.trust-list{ list-style:none; padding:0; margin:0; font-size:13.5px; }
.trust-list li{ display:flex; align-items:center; gap:8px; padding:7px 0; color:var(--gs-muted); border-bottom:1px solid var(--gs-border); }
.trust-list li:last-child{ border-bottom:none; }
.trust-list .bi{ color:var(--gs-orange); }

.feature-checklist{ list-style:none; padding:0; margin:14px 0; display:grid; grid-template-columns:1fr 1fr; gap:10px 18px; }
.feature-checklist li{ display:flex; align-items:flex-start; gap:8px; font-size:14.5px; }
.feature-checklist .bi{ color:#1E9E5A; margin-top:3px; }


@media (max-width:575.98px){ .feature-checklist{ grid-template-columns:1fr; } }

.gallery-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px; margin:16px 0; }
.gallery-grid img{ width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:10px; cursor:pointer; transition:.2s; }
.gallery-grid img:hover{ opacity:.85; transform:scale(1.02); }

.faq-list .accordion-button{ font-weight:600; }
.accordion-button:not(.collapsed){ color:var(--gs-orange-dark); background:#fff5ed; }
.accordion-button:focus{ box-shadow:0 0 0 .2rem rgba(236,115,50,.15); }

/* ---- Calculator ---- */
.calc-result{ background:linear-gradient(135deg, var(--gs-navy) 0%, var(--gs-navy-dark) 100%); color:#fff; border-radius:14px; padding:28px; text-align:center; position:sticky; top:100px; }
.calc-result .amount{ font-family:'Poppins',sans-serif; font-size:30px; font-weight:800; color:#fff; margin:8px 0; }
.calc-result .disclaimer{ font-size:12.5px; color:#C9D6E3; }
.bhk-quickfill .btn{ font-size:12.5px; padding:5px 14px; }

/* ---- Booking visit-type cards ---- */
.visit-type-option{ border:2px solid var(--gs-border); border-radius:12px; padding:18px; cursor:pointer; height:100%; transition:.15s; }
.visit-type-option:hover{ border-color:var(--gs-orange); }
.visit-type-option input{ position:absolute; opacity:0; }
.visit-type-option .bi{ font-size:24px; color:var(--gs-orange); }
.visit-type-option.checked, .btn-check:checked + .visit-type-option{ border-color:var(--gs-orange); background:#fff8f2; }

/* ---- Site visit booking page ---- */
.booking-hero{ padding:48px 0 66px; }
.booking-hero .crumbs,
.booking-hero .crumbs a{ color:rgba(255,255,255,.72); }
.booking-hero .eyebrow{ color:#FFB27F; margin-top:14px; }
.booking-hero h1{ max-width:800px; margin:6px 0 12px; color:#fff; font-size:clamp(32px,4.4vw,50px); line-height:1.12; }
.booking-hero .lead{ max-width:750px; margin:0; }
.booking-hero-points{ display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:21px; color:#E7EDF6; font-size:13px; }
.booking-hero-points span{ display:inline-flex; align-items:center; gap:7px; }
.booking-hero-points .bi{ color:#FFB27F; }
.booking-hero-card{ display:flex; flex-direction:column; gap:12px; padding:24px; border:1px solid rgba(255,255,255,.16); border-radius:20px; background:rgba(255,255,255,.09); color:#fff; box-shadow:0 16px 34px rgba(0,0,0,.12); }
.booking-hero-icon{ display:flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:15px; background:var(--gs-orange); color:#fff; font-size:21px; }
.booking-hero-card strong{ font-family:'Poppins',sans-serif; font-size:18px; }
.booking-hero-card > span:last-child{ color:rgba(255,255,255,.78); font-size:13.5px; line-height:1.6; }
.booking-section{ padding-top:48px; }
.booking-layout{ display:grid; grid-template-columns:minmax(0,1fr) 300px; align-items:start; gap:26px; max-width:1160px; margin:0 auto; }
.booking-main{ min-width:0; padding:32px; border:1px solid var(--gs-border); border-radius:22px; background:#fff; box-shadow:0 16px 40px rgba(16,39,79,.07); }
.booking-heading{ margin-bottom:26px; }
.booking-heading h2{ margin:0 0 7px; font-size:clamp(24px,3vw,32px); }
.booking-heading p{ margin:0; color:var(--gs-muted); }
.booking-form-section{ padding:24px 0; border-top:1px solid var(--gs-border); }
.booking-step-title{ display:flex; align-items:flex-start; gap:13px; margin-bottom:18px; }
.booking-step-title > span{ display:flex; align-items:center; justify-content:center; width:34px; height:34px; flex:0 0 34px; border-radius:11px; background:#fff0e6; color:var(--gs-orange-dark); font-size:12px; font-weight:800; }
.booking-step-title h3{ margin:0 0 4px; font-size:17px; }
.booking-step-title p{ margin:0; color:var(--gs-muted); font-size:13px; }
.booking-main .form-label{ display:block; margin-bottom:7px; }
.booking-main .form-label > span{ color:var(--gs-orange); }
.booking-main .form-label small{ color:var(--gs-muted); font-weight:400; }
.booking-type-option{ display:flex; flex-direction:column; align-items:flex-start; text-align:left !important; gap:8px; min-height:178px; padding:17px; border:1px solid var(--gs-border); border-radius:15px; background:#fff; }
.booking-type-option:hover{ transform:translateY(-2px); box-shadow:0 10px 22px rgba(16,39,79,.07); }
.booking-type-option.checked,.btn-check:checked + .booking-type-option{ border:2px solid var(--gs-orange); padding:16px; background:#fff8f2; box-shadow:0 8px 20px rgba(236,115,50,.1); }
.booking-type-icon{ display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:12px; background:#fff0e6; color:var(--gs-orange); }
.booking-type-icon .bi{ font-size:18px; color:inherit; }
.booking-type-option strong{ color:var(--gs-navy-dark); font-size:14px; }
.booking-type-option .hint{ margin:0; color:var(--gs-muted); font-size:12px; line-height:1.5; }
.booking-notes-section{ padding-bottom:6px; }
.booking-submit-row{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:18px; padding-top:22px; border-top:1px solid var(--gs-border); }
.booking-submit-row .captcha-row .form-control{ width:110px; }
.booking-submit-row .btn{ display:inline-flex; align-items:center; gap:9px; }
.booking-privacy-note{ display:flex; align-items:center; gap:6px; margin:13px 0 0; color:var(--gs-muted); font-size:11.5px; }
.booking-privacy-note .bi{ color:#26945d; }
.booking-sidebar{ position:sticky; top:110px; display:grid; gap:16px; }
.booking-help-card,.booking-support-card{ padding:23px; border:1px solid var(--gs-border); border-radius:18px; background:#fff; box-shadow:0 12px 30px rgba(16,39,79,.05); }
.booking-help-card{ background:linear-gradient(145deg,#fff 0%,#f6f8fc 100%); }
.booking-help-card h3{ margin:0 0 20px; font-size:19px; }
.booking-help-card ol{ display:grid; gap:18px; margin:0; padding:0; list-style:none; }
.booking-help-card li{ display:flex; align-items:flex-start; gap:11px; }
.booking-help-card li > span{ display:flex; align-items:center; justify-content:center; width:27px; height:27px; flex:0 0 27px; border-radius:50%; background:#fff0e6; color:var(--gs-orange-dark); font-size:12px; font-weight:800; }
.booking-help-card li strong,.booking-help-card li small{ display:block; }
.booking-help-card li strong{ color:var(--gs-navy-dark); font-size:13px; }
.booking-help-card li small{ margin-top:3px; color:var(--gs-muted); font-size:11.5px; line-height:1.5; }
.booking-support-card{ display:grid; grid-template-columns:42px 1fr; gap:12px; align-items:start; }
.booking-support-icon{ display:flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:13px; background:#eaf0fb; color:var(--gs-navy); font-size:17px; }
.booking-support-card strong{ color:var(--gs-navy-dark); font-size:14px; }
.booking-support-card p{ margin:5px 0 14px; color:var(--gs-muted); font-size:12px; line-height:1.55; }
.booking-support-card .btn{ grid-column:1 / -1; }
@media (max-width:991.98px){
  .booking-layout{ grid-template-columns:minmax(0,1fr) 260px; gap:18px; }
  .booking-main{ padding:25px; }
}
@media (max-width:767.98px){
  .booking-hero{ padding:38px 0 54px; }
  .booking-hero-points{ display:grid; gap:8px; }
  .booking-layout{ grid-template-columns:1fr; }
  .booking-main{ padding:22px 18px; }
  .booking-sidebar{ position:static; grid-template-columns:1fr; }
  .booking-type-option{ min-height:0; }
  .booking-submit-row{ align-items:stretch; }
  .booking-submit-row .btn{ justify-content:center; width:100%; }
}

/* ---- Footer ---- */
.site-footer{ background:var(--gs-navy-dark); color:#C9D6E3; padding:64px 0 0; font-size:14.5px; }
.footer-logo-badge{ display:inline-block; background:#fff; border-radius:12px; padding:10px 16px; }
.footer-logo-badge img{ display:block; }
.site-footer h4{ color:#fff; font-size:15px; margin-bottom:16px; }
.site-footer p{ color:#AEBCCF; }
.footer-social{ display:flex; gap:10px; margin-top:16px; }
.footer-social a{ width:34px; height:34px; border-radius:50%; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; color:#fff; }
.footer-social a:hover{ background:var(--gs-orange); }
.footer-links{ list-style:none; padding:0; margin:0; }
.footer-links li{ margin-bottom:10px; }
.footer-links a{ color:#AEBCCF; display:flex; align-items:center; gap:8px; }
.footer-links a:hover{ color:#fff; }
.svc-dot{ width:8px; height:8px; border-radius:50%; background:var(--badge-color,var(--gs-orange)); flex-shrink:0; }
.footer-contact-list{ list-style:none; padding:0; margin:0; }
.footer-contact-list li{ display:flex; gap:10px; margin-bottom:14px; align-items:flex-start; color:#AEBCCF; }
.footer-contact-list a{ color:#AEBCCF; }
.footer-contact-list a:hover{ color:#fff; }
.footer-contact-list .bi{ color:var(--gs-orange); margin-top:3px; }
.footer-seo-links{ margin-top:28px; padding-top:22px; border-top:1px solid rgba(255,255,255,.08); }
.footer-seo-links h4{ margin-bottom:12px; }
.footer-seo-list{ display:flex; flex-wrap:wrap; gap:8px 12px; }
.footer-seo-list a{ color:#C7D7EA; font-size:13px; }
.footer-seo-list a:hover{ color:#fff; }
.footer-location-heading{ margin-top:22px; }
.footer-location-list{ margin-bottom:16px; }
.footer-location-button{ display:inline-flex; align-items:center; gap:8px; }
.footer-bottom{ border-top:1px solid rgba(255,255,255,.1); margin-top:40px; padding:18px 0; text-align:center; font-size:13px; color:#8CA0B8; }

/* ---- Service-area directory ---- */
.service-areas-hero{ padding:48px 0 72px; }
.service-areas-hero .crumbs,
.service-areas-hero .crumbs a{ color:rgba(255,255,255,.72); }
.service-areas-hero .eyebrow{ color:#FFB27F; margin-top:14px; }
.service-areas-hero h1{ color:#fff; max-width:760px; margin:6px 0 12px; font-size:clamp(32px,4.5vw,52px); }
.service-areas-hero .lead{ max-width:740px; margin:0; }
.service-areas-section{ padding-top:48px; }
.service-area-jump{ display:flex; flex-wrap:wrap; gap:9px; margin-bottom:30px; }
.service-area-jump a{ display:inline-flex; align-items:center; gap:6px; padding:8px 12px; border:1px solid var(--gs-border); border-radius:999px; background:#fff; color:var(--gs-navy); font-size:13px; font-weight:600; transition:color .18s ease, border-color .18s ease, transform .18s ease; }
.service-area-jump a:hover{ transform:translateY(-2px); border-color:var(--gs-orange); color:var(--gs-orange-dark); }
.service-area-groups{ display:grid; gap:22px; }
.service-area-card{ scroll-margin-top:100px; padding:26px; border:1px solid var(--gs-border); border-radius:18px; background:#fff; box-shadow:0 10px 28px rgba(16,39,79,.05); }
.service-area-card-head{ display:flex; align-items:flex-start; gap:14px; margin-bottom:18px; }
.service-area-pin{ display:flex; align-items:center; justify-content:center; width:44px; height:44px; flex:0 0 44px; border-radius:13px; background:#fff0e6; color:var(--gs-orange); font-size:18px; }
.service-area-card-head h2{ margin:0 0 5px; font-size:clamp(20px,2.4vw,25px); }
.service-area-card-head p{ margin:0; color:var(--gs-muted); font-size:14px; }
.service-area-link-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 14px; margin:0; padding:0; list-style:none; }
.service-area-link-grid a{ display:flex; align-items:center; gap:10px; min-height:54px; padding:9px 11px; border:1px solid #edf0f5; border-radius:11px; background:#fff; color:var(--gs-ink); font-size:13.5px; font-weight:600; line-height:1.4; transition:background .18s ease,border-color .18s ease,color .18s ease; }
.service-area-link-grid a:hover{ background:#fff9f5; border-color:rgba(236,115,50,.35); color:var(--gs-orange-dark); }
.service-area-service-icon{ display:flex; align-items:center; justify-content:center; width:34px; height:34px; flex:0 0 34px; border-radius:10px; background:color-mix(in srgb,var(--badge-color,var(--gs-orange)) 14%,white); color:var(--badge-color,var(--gs-orange)); font-size:16px; }
.service-area-arrow{ margin-left:auto; color:var(--gs-muted); font-size:12px; }
@media (max-width:575.98px){
  .service-areas-hero{ padding:38px 0 58px; }
  .service-area-card{ padding:19px 15px; }
  .service-area-link-grid{ grid-template-columns:1fr; gap:7px; }
}

/* ---- Custom multi-service project request ---- */
.custom-request-hero{ padding:48px 0 64px; }
.custom-request-hero .crumbs,
.custom-request-hero .crumbs a{ color:rgba(255,255,255,.72); }
.custom-request-hero .eyebrow{ color:#FFB27F; margin-top:14px; }
.custom-request-hero h1{ max-width:800px; margin:6px 0 12px; color:#fff; font-size:clamp(32px,4.4vw,50px); line-height:1.12; }
.custom-request-hero .lead{ max-width:760px; margin:0; }
.custom-request-points{ display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:22px; color:#E7EDF6; font-size:13px; }
.custom-request-points span{ display:inline-flex; align-items:center; gap:7px; }
.custom-request-points .bi{ color:#FFB27F; }
.custom-request-hero-card{ display:flex; flex-direction:column; gap:12px; padding:24px; border:1px solid rgba(255,255,255,.16); border-radius:20px; background:rgba(255,255,255,.09); color:#fff; box-shadow:0 16px 34px rgba(0,0,0,.12); }
.custom-request-hero-icon{ display:flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:15px; background:var(--gs-orange); color:#fff; font-size:22px; }
.custom-request-hero-card strong{ font-family:'Poppins',sans-serif; font-size:18px; }
.custom-request-hero-card > span:last-child{ color:rgba(255,255,255,.78); font-size:13.5px; line-height:1.6; }
.custom-request-section{ padding-top:48px; }
.custom-request-layout{ display:grid; grid-template-columns:minmax(0,1fr) 310px; align-items:start; gap:28px; max-width:1160px; margin:0 auto; }
.custom-request-main{ min-width:0; padding:32px; border:1px solid var(--gs-border); border-radius:22px; background:#fff; box-shadow:0 16px 40px rgba(16,39,79,.07); }
.custom-request-heading{ margin-bottom:25px; }
.custom-request-heading h2{ margin:0 0 7px; font-size:clamp(24px,3vw,32px); }
.custom-request-heading p{ margin:0; color:var(--gs-muted); }
.custom-form-section{ padding:24px 0; border-top:1px solid var(--gs-border); }
.custom-section-title{ display:flex; align-items:flex-start; gap:13px; margin-bottom:18px; }
.custom-section-title > span{ display:flex; align-items:center; justify-content:center; width:34px; height:34px; flex:0 0 34px; border-radius:11px; background:#fff0e6; color:var(--gs-orange-dark); font-size:12px; font-weight:800; }
.custom-section-title h3{ margin:0 0 4px; font-size:17px; }
.custom-section-title p{ margin:0; color:var(--gs-muted); font-size:13px; }
.custom-request-main .form-label{ display:block; margin-bottom:7px; }
.custom-request-main .form-label > span{ color:var(--gs-orange); }
.custom-service-items{ display:grid; gap:14px; }
.custom-service-item{ padding:20px; border:1px solid var(--gs-border); border-radius:16px; background:#fbfcfe; }
.custom-service-item-head{ display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:16px; color:var(--gs-navy-dark); }
.custom-remove-service{ display:inline-flex; align-items:center; gap:6px; padding:6px 9px; border:0; border-radius:8px; background:#fff0f0; color:#a33; font-size:12px; font-weight:700; }
.custom-remove-service:hover{ background:#ffe0e0; }
.custom-add-service{ display:inline-flex; align-items:center; gap:8px; margin-top:14px; }
.custom-submit-row{ display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:18px; padding-top:22px; border-top:1px solid var(--gs-border); }
.custom-submit-row .captcha-row .form-control{ width:110px; }
.custom-submit-row .btn{ display:inline-flex; align-items:center; gap:9px; }
.custom-form-privacy{ display:flex; align-items:center; gap:6px; margin:13px 0 0; color:var(--gs-muted); font-size:11.5px; }
.custom-form-privacy .bi{ color:#2f9e68; }
.custom-request-sidebar{ position:sticky; top:110px; display:grid; gap:16px; }
.custom-advice-card,.custom-request-steps{ padding:23px; border:1px solid var(--gs-border); border-radius:18px; background:#fff; box-shadow:0 12px 30px rgba(16,39,79,.05); }
.custom-advice-card{ background:linear-gradient(145deg,#fff 0%,#fff8f2 100%); }
.custom-advice-card h3,.custom-request-steps h3{ margin:0 0 10px; font-size:19px; }
.custom-advice-card p{ margin:0 0 15px; color:var(--gs-muted); font-size:13px; line-height:1.65; }
.custom-advice-card ul,.custom-request-steps ol{ display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.custom-advice-card li{ display:flex; align-items:flex-start; gap:9px; color:var(--gs-ink); font-size:12.5px; line-height:1.5; }
.custom-advice-card li .bi{ flex:0 0 auto; margin-top:2px; color:#26945d; }
.custom-request-steps li{ display:flex; align-items:center; gap:10px; color:var(--gs-muted); font-size:12.5px; }
.custom-request-steps li span{ display:flex; align-items:center; justify-content:center; width:25px; height:25px; flex:0 0 25px; border-radius:50%; background:var(--gs-bg-alt); color:var(--gs-navy); font-weight:800; }
@media (max-width:991.98px){
  .custom-request-layout{ grid-template-columns:minmax(0,1fr) 260px; gap:18px; }
  .custom-request-main{ padding:25px; }
}
@media (max-width:767.98px){
  .custom-request-hero{ padding:38px 0 54px; }
  .custom-request-points{ display:grid; gap:8px; }
  .custom-request-layout{ grid-template-columns:1fr; }
  .custom-request-main{ padding:22px 18px; }
  .custom-request-sidebar{ position:static; grid-template-columns:1fr; }
  .custom-form-section{ padding:20px 0; }
  .custom-service-item{ padding:15px; }
  .custom-submit-row{ align-items:stretch; }
  .custom-submit-row .btn{ justify-content:center; width:100%; }
}

/* ---- Individual service detail hero (mega-menu destinations) ---- */
.service-detail-hero{ padding:48px 0 66px; }
.service-detail-hero .crumbs,
.service-detail-hero .crumbs a{ color:rgba(255,255,255,.72); }
.service-detail-hero .crumbs a:hover{ color:#fff; }
.service-detail-hero .custom-request-points{ margin-top:20px; }
.service-location-hero .eyebrow{ max-width:100%; }
.service-location-hero h1{ overflow-wrap:anywhere; }
.service-location-hero .lead{ max-width:700px; }
.service-location-hero .service-detail-image-caption div > span{ max-width:230px; }
.service-detail-hero-actions{ display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.service-detail-hero-actions .btn{ display:inline-flex; align-items:center; gap:8px; padding:11px 17px; }
.service-detail-hero-image{ position:relative; min-height:330px; overflow:hidden; border:1px solid rgba(255,255,255,.2); border-radius:22px; background:rgba(255,255,255,.08); box-shadow:0 24px 50px rgba(0,0,0,.28); }
.service-detail-hero-image::after{ content:""; position:absolute; inset:35% 0 0; background:linear-gradient(180deg,transparent,rgba(8,22,47,.75)); pointer-events:none; }
.service-detail-hero-image > img{ position:absolute; inset:0; width:100%; height:100%; aspect-ratio:4/3; object-fit:cover; }
.service-detail-image-caption{ position:absolute; z-index:1; right:16px; bottom:16px; left:16px; display:flex; align-items:center; gap:12px; padding:14px; border:1px solid rgba(255,255,255,.2); border-radius:15px; background:rgba(12,30,61,.76); color:#fff; -webkit-backdrop-filter:blur(7px); backdrop-filter:blur(7px); }
.service-detail-image-icon{ display:flex; align-items:center; justify-content:center; width:42px; height:42px; flex:0 0 42px; border-radius:13px; background:color-mix(in srgb,var(--badge-color,var(--gs-orange)) 18%,white); color:var(--badge-color,var(--gs-orange)); font-size:19px; }
.service-detail-image-caption strong,.service-detail-image-caption span{ display:block; }
.service-detail-image-caption strong{ color:#fff; font-size:14px; }
.service-detail-image-caption div > span{ margin-top:3px; color:rgba(255,255,255,.78); font-size:11.5px; }
.page-feature-hero{ padding:48px 0 66px; }
.page-feature-hero .crumbs,
.page-feature-hero .crumbs a{ color:rgba(255,255,255,.72); }
.page-feature-hero .crumbs a:hover{ color:#fff; }
.page-feature-hero .custom-request-points{ margin-top:20px; }
.projects-list-section,.videos-gallery-section{ scroll-margin-top:100px; }
.projects-hero-image,.about-hero-image,.videos-hero-image{ min-height:330px; }
.contact-hero{ padding:48px 0 66px; }
.contact-hero .crumbs,
.contact-hero .crumbs a{ color:rgba(255,255,255,.72); }
.contact-hero .eyebrow{ color:#FFB27F; margin-top:14px; }
.contact-hero h1{ max-width:760px; margin:6px 0 12px; color:#fff; font-size:clamp(32px,4.4vw,50px); line-height:1.12; }
.contact-hero .lead{ max-width:680px; margin:0; }
.contact-hero-card{ display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:24px; border:1px solid rgba(255,255,255,.16); border-radius:20px; background:rgba(255,255,255,.09); color:#fff; box-shadow:0 16px 34px rgba(0,0,0,.12); }
.contact-hero-icon{ display:flex; align-items:center; justify-content:center; width:48px; height:48px; border-radius:15px; background:var(--gs-orange); color:#fff; font-size:21px; }
.contact-hero-card strong{ font-family:'Poppins',sans-serif; font-size:18px; }
.contact-hero-card > span{ color:rgba(255,255,255,.78); font-size:13.5px; line-height:1.6; }
.contact-hero-card a{ display:inline-flex; align-items:center; gap:8px; margin-top:3px; color:#fff; font-weight:700; }
.contact-hero-card a:hover{ color:#FFB27F; }
.video-hero-play{ position:absolute; z-index:1; top:50%; left:50%; display:flex; align-items:center; justify-content:center; width:68px; height:68px; transform:translate(-50%,-50%); border:1px solid rgba(255,255,255,.72); border-radius:50%; background:rgba(236,115,50,.94); color:#fff; font-size:30px; box-shadow:0 12px 30px rgba(0,0,0,.28); }
.videos-empty-state{ max-width:760px; margin:0 auto; padding:48px 24px; border:1px solid var(--gs-border); border-radius:20px; background:#fff; box-shadow:0 12px 30px rgba(16,39,79,.05); }
.videos-empty-icon{ display:flex; align-items:center; justify-content:center; width:58px; height:58px; margin:0 auto 14px; border-radius:16px; background:#fff0e6; color:var(--gs-orange); font-size:23px; }
@media (max-width:767.98px){
  .service-detail-hero{ padding:38px 0 54px; }
  .page-feature-hero,.contact-hero{ padding:38px 0 54px; }
  .contact-hero h1{ font-size:clamp(30px,8vw,42px); }
  .service-location-hero .eyebrow{ margin-top:12px; }
  .service-detail-hero-image{ min-height:240px; }
  .projects-hero-image,.about-hero-image,.videos-hero-image{ min-height:240px; }
  .service-detail-hero-actions{ justify-content:center; }
  .service-detail-hero-actions .btn{ flex:1 1 100%; justify-content:center; }
}

/* ---- Floating action buttons ---- */
.fab-stack{ position:fixed; right:18px; bottom:18px; display:flex; flex-direction:column; gap:12px; z-index:1040; }
.fab-btn{ width:56px; height:56px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; font-size:24px; box-shadow:0 10px 26px rgba(0,0,0,.25); position:relative; }
.fab-whatsapp{ background:#25D366; }
.fab-call{ background:var(--gs-orange); }
.fab-ping{ position:absolute; inset:0; border-radius:50%; border:2px solid #25D366; animation:fabPing 1.8s ease-out infinite; }
@keyframes fabPing{ 0%{ transform:scale(1); opacity:.8; } 100%{ transform:scale(1.7); opacity:0; } }

/* ---- Video embeds ---- */
.video-embed iframe, .video-embed video{ width:100%; height:100%; border-radius:12px; background:#000; }
.video-card{ background:#fff; border:1px solid var(--gs-border); border-radius:14px; overflow:hidden; height:100%; box-shadow:0 10px 30px rgba(16,39,79,.05); }
.video-card-body{ padding:18px 18px 20px; }
.video-card h3{ color:var(--gs-navy); }

/* ---- Scroll reveal ---- */
.reveal{ opacity:0; transform:translateY(24px); transition:opacity .5s ease, transform .5s ease; }
.reveal.revealed{ opacity:1; transform:none; }

.empty-state{ text-align:center; padding:60px 20px; color:var(--gs-muted); }

/* ---- Stat cards (home) ---- */
.stat-cards .num{ font-family:'Poppins',sans-serif; font-weight:800; font-size:30px; color:var(--gs-orange); }

@media (max-width:767.98px){
  .section{ padding:50px 0; }
  .hero{ padding:46px 0 70px; text-align:center; }
  .hero .lead{ margin-left:auto; margin-right:auto; }
  .hero-stats{ justify-content:center; }
  .search-card{ margin-top:-40px; }
}

/* ---- Search results page ---- */
.search-page-hero{ padding:52px 0 96px; }
.search-page-hero .crumbs,
.search-page-hero .crumbs a{ color:rgba(255,255,255,.72); }
.search-page-hero .crumbs a:hover{ color:#fff; }
.search-page-hero .eyebrow{ color:#FFB27F; }
.search-page-hero h1{ max-width:720px; margin:10px 0 12px; font-size:clamp(30px,4.4vw,50px); line-height:1.12; }
.search-page-hero .lead{ max-width:650px; margin:0; }
.search-hero-image img{ max-height:270px; width:100%; object-fit:cover; }
.search-page-search-wrap{ position:relative; z-index:5; margin-top:-54px; }
.search-page-search-card{ margin-top:0; padding:24px 28px; }
.search-page-search-card h3{ color:var(--gs-navy-dark); }
.search-page-search-card .search-suggestions .chip{ font:inherit; }
.search-page-search-card .search-form .btn{ min-width:132px; }
.search-results-section{ padding-top:58px; }
.search-results-heading{ display:flex; align-items:flex-end; justify-content:space-between; gap:20px; margin-bottom:26px; }
.search-results-heading h2{ margin:0 0 5px; font-size:clamp(24px,3vw,32px); }
.search-results-heading p{ color:var(--gs-muted); margin:0; }
.search-clear-link{ flex:0 0 auto; color:var(--gs-orange-dark); font-weight:700; font-size:14px; }
.search-clear-link:hover{ color:var(--gs-navy); }
.search-result-card{ display:flex; flex-direction:column; }
.search-result-card .service-card-body{ flex:1; }
.search-result-card .service-card p{ min-height:54px; }
.search-inquiry-wrap{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:36px; align-items:center; margin-top:56px; padding:34px; border:1px solid var(--gs-border); border-radius:22px; background:#fff; box-shadow:0 16px 40px rgba(16,39,79,.07); }
.search-inquiry-copy h2{ margin:0 0 10px; font-size:clamp(25px,3vw,34px); }
.search-inquiry-copy p{ max-width:380px; margin:0; color:var(--gs-muted); line-height:1.7; }
.search-inquiry-form{ padding:24px; border-radius:16px; background:var(--gs-bg-alt); }
.search-inquiry-form .captcha-row .form-control{ max-width:140px; }
.search-empty-state{ max-width:760px; margin:0 auto; padding:52px 28px; border:1px solid var(--gs-border); border-radius:22px; background:#fff; text-align:center; box-shadow:0 16px 40px rgba(16,39,79,.07); }
.search-empty-icon{ display:flex; width:64px; height:64px; align-items:center; justify-content:center; margin:0 auto 18px; border-radius:20px; background:#fff0e6; color:var(--gs-orange); font-size:25px; }
.search-empty-state h2{ margin:0 auto 10px; font-size:clamp(23px,3vw,30px); }
.search-empty-state p{ max-width:540px; margin:0 auto 22px; color:var(--gs-muted); }
@media (max-width:767.98px){
  .search-page-hero{ padding:40px 0 74px; }
  .search-page-search-wrap{ margin-top:-38px; }
  .search-page-search-card{ padding:20px; text-align:left; }
  .search-page-search-card .search-form .btn{ min-width:auto; padding-left:14px; padding-right:14px; }
  .search-results-heading{ align-items:flex-start; flex-direction:column; }
  .search-inquiry-wrap{ grid-template-columns:1fr; gap:22px; margin-top:38px; padding:22px; text-align:left; }
  .search-inquiry-form{ padding:18px; }
}
