/* === Bootstrap 5.3.2 (vendor/bootstrap/css/bootstrap.min.css) === */
@charset "UTF-8";/*!
 * Bootstrap  v5.3.2 (https://getbootstrap.com/)
 * Copyright 2011-2023 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */:root, [data-bs-theme=light] {--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark] {color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*, ::after, ::before {box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root {scroll-behavior:smooth}}body {margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr {margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h1, h2, h3, h4, h5, h6 {margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1 {font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1 {font-size:2.5rem}}h2 {font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2 {font-size:2rem}}h3 {font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3 {font-size:1.75rem}}h4 {font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4 {font-size:1.5rem}}h5 {font-size:1.25rem}h6 {font-size:1rem}p {margin-top:0;margin-bottom:1rem}abbr[title] {-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address {margin-bottom:1rem;font-style:normal;line-height:inherit}ol, ul {padding-left:2rem}dl, ol, ul {margin-top:0;margin-bottom:1rem}ol ol, ol ul, ul ol, ul ul {margin-bottom:0}dt {font-weight:700}dd {margin-bottom:.5rem;margin-left:0}blockquote {margin:0 0 1rem}b, strong {font-weight:bolder}small {font-size:.875em}mark {padding:.1875em;color:var(--bs-highlight-color);background-color:var(--bs-highlight-bg)}sub, sup {position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub {bottom:-.25em}sup {top:-.5em}a {color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover {--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]), a:not([href]):not([class]):hover {color:inherit;text-decoration:none}code, kbd, pre, samp {font-family:var(--bs-font-monospace);font-size:1em}pre {display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code {font-size:inherit;color:inherit;word-break:normal}code {font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code {color:inherit}kbd {padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd {padding:0;font-size:1em}figure {margin:0 0 1rem}img, svg {vertical-align:middle}table {caption-side:bottom;border-collapse:collapse}caption {padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th {text-align:inherit;text-align:-webkit-match-parent}tbody, td, tfoot, th, thead, tr {border-color:inherit;border-style:solid;border-width:0}label {display:inline-block}button {border-radius:0}button:focus:not(:focus-visible) {outline:0}button, input, optgroup, select, textarea {margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button, select {text-transform:none}[role=button] {cursor:pointer}select {word-wrap:normal}select:disabled {opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {display:none!important}[type=button], [type=reset], [type=submit], button {-webkit-appearance:button}[type=button]:not(:disabled), [type=reset]:not(:disabled), [type=submit]:not(:disabled), button:not(:disabled) {cursor:pointer}::-moz-focus-inner {padding:0;border-style:none}textarea {resize:vertical}fieldset {min-width:0;padding:0;margin:0;border:0}legend {float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend {font-size:1.5rem}}legend+* {clear:left}::-webkit-datetime-edit-day-field, ::-webkit-datetime-edit-fields-wrapper, ::-webkit-datetime-edit-hour-field, ::-webkit-datetime-edit-minute, ::-webkit-datetime-edit-month-field, ::-webkit-datetime-edit-text, ::-webkit-datetime-edit-year-field {padding:0}::-webkit-inner-spin-button {height:auto}[type=search] {-webkit-appearance:textfield;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}summary {display:list-item;cursor:pointer}progress {vertical-align:baseline}[hidden] {display:none!important}.img-fluid {max-width:100%;height:auto}.container, .container-fluid {--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)}.gy-4 {--bs-gutter-y:1.5rem}@media (min-width:768px){.col-md-6 {flex:0 0 auto;width:50%}}@media (min-width:992px){.col-lg-3 {flex:0 0 auto;width:25%}.col-lg-4 {flex:0 0 auto;width:33.33333333%}.col-lg-6 {flex:0 0 auto;width:50%}.col-lg-8 {flex:0 0 auto;width:66.66666667%}}.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: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.active, .btn:first-child:active {color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn.active:focus-visible, .btn:first-child:active:focus-visible {box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled, fieldset:disabled .btn {color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.dropdown {position:relative}.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 {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, .navbar>.container-fluid {display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar[data-bs-theme=dark] {--bs-navbar-color:rgba(255, 255, 255, 0.55);--bs-navbar-hover-color:rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color:rgba(255, 255, 255, 0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.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-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-body {position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer {display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>* {margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width:576px){.modal {--bs-modal-margin:1.75rem;--bs-modal-box-shadow:var(--bs-box-shadow)}}@keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.d-flex {display:flex!important}.position-relative {position:relative!important}.flex-column {flex-direction:column!important}.justify-content-center {justify-content:center!important}.justify-content-between {justify-content:space-between!important}.align-items-center {align-items:center!important}.align-items-stretch {align-items:stretch!important}.mb-4 {margin-bottom:1.5rem!important}.py-4 {padding-top:1.5rem!important;padding-bottom:1.5rem!important}.pt-4 {padding-top:1.5rem!important}@media (min-width:992px){.pt-lg-0 {padding-top:0!important}}
/*# sourceMappingURL=bootstrap.min.css.map */
/* === style.css (BizLand + personalizzazioni Studio Baroni) === */
/**
* Template Name: BizLand
* Updated: Sep 18 2023 with Bootstrap v5.3.2
* Template URL: https://bootstrapmade.com/bizland-bootstrap-business-template/
* Author: BootstrapMade.com
* License: https://bootstrapmade.com/license/
*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/
body {
  font-family: "Open Sans", sans-serif;
  font-display: auto;
  color: #444444;
}

a {
  color: #106eea;
  text-decoration: none;
}

/* I link dentro un paragrafo di testo devono distinguersi anche senza fare
   affidamento sul solo colore (WCAG 1.4.1), quindi qui restano sottolineati.
   Non riguarda nav/pulsanti/card, che non sono mai dentro un <p>. */
p a {
  text-decoration: underline;
}

a:hover {
  color: #3b8af2;
  text-decoration: none;
}

h1, 
h2, 
h3, 
h4, 
h5, 
h6 {
  font-family: "Roboto", sans-serif;
  font-display: auto;
}

/*--------------------------------------------------------------
# Preloader
--------------------------------------------------------------*/
#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  overflow: hidden;
  background: #fff;
}

#preloader:before {
  content: "";
  position: fixed;
  top: calc(50% - 30px);
  left: calc(50% - 30px);
  border: 6px solid #106eea;
  border-top-color: #e2eefd;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  animation: animate-preloader 1s linear infinite;
}

@keyframes animate-preloader {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*--------------------------------------------------------------
# Back to top button
--------------------------------------------------------------*/
.back-to-top {
  position: fixed;
  visibility: hidden;
  opacity: 0;
  right: 15px;
  bottom: 15px;
  z-index: 996;
  background: #20c997;
  width: 50px;
  height: 50px;
  border-radius: 10px;
  transition: all 0.4s;
}

.back-to-top i {
  font-size: 35px;
  color: #fff;
  line-height: 0;
}

.back-to-top:hover {
  background: #20c997;
  color: #20c997;
}

.back-to-top.active {
  visibility: visible;
  opacity: 1;
}

/*--------------------------------------------------------------
# Disable aos animation delay on mobile devices
--------------------------------------------------------------*/
@media screen and (max-width: 768px) {
  [data-aos-delay] {
    transition-delay: 0 !important;
  }
}

/*--------------------------------------------------------------
# Top Bar
--------------------------------------------------------------*/














/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/
#header {
  background: #fff;
  transition: all 0.5s;
  z-index: 997;
  height: 86px;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
}



#header .logo {
  font-size: 30px;
  margin: 0;
  padding: 0;
  line-height: 1;
  font-weight: 600;
  letter-spacing: 0.8px;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#header .logo a {
  color: #222222;
}

#header .logo a span {
  color: #106eea;
}

#header .logo img {
  max-height: 40px;
}



/*--------------------------------------------------------------
# Navigation Menu
--------------------------------------------------------------*/
/**
* Desktop Navigation 
*/
.navbar {
  padding: 0;
}

.navbar ul {
  margin: 0;
  padding: 0;
  display: flex;
  list-style: none;
  align-items: center;
}

.navbar li {
  position: relative;
}

.navbar>ul>li {
  white-space: nowrap;
  padding: 5px 0 10px 28px;
}

.navbar a, 
.navbar a:focus {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 3px;
  font-size: 15px;
  font-weight: 600;
  color: #222222;
  white-space: nowrap;
  transition: 0.3s;
  position: relative;
}

.navbar a i, 
.navbar a:focus i {
  font-size: 12px;
  line-height: 0;
  margin-left: 5px;
}

.navbar>ul>li>a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  bottom: -6px;
  left: 0;
  background-color: #106eea;
  visibility: hidden;
  width: 0px;
  transition: all 0.3s ease-in-out 0s;
}

.navbar a:hover:before, 
.navbar li:hover>a:before, 
.navbar .active:before {
  visibility: visible;
  width: 100%;
}

.navbar a:hover, 
.navbar .active, 
.navbar .active:focus, 
.navbar li:hover>a {
  color: #106eea;
}

.navbar .dropdown ul {
  display: block;
  position: absolute;
  left: 28px;
  top: calc(100% + 30px);
  margin: 0;
  padding: 10px 0;
  z-index: 99;
  opacity: 0;
  visibility: hidden;
  background: #fff;
  box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
  transition: 0.3s;
}

.navbar .dropdown ul li {
  min-width: 200px;
}

.navbar .dropdown ul a {
  padding: 10px 20px;
  font-weight: 400;
}

.navbar .dropdown ul a i {
  font-size: 12px;
}

.navbar .dropdown ul a:hover, 
.navbar .dropdown ul .active:hover, 
.navbar .dropdown ul li:hover>a {
  color: #106eea;
}

.navbar .dropdown:hover>ul {
  opacity: 1;
  top: 100%;
  visibility: visible;
}

.navbar .dropdown .dropdown ul {
  top: 0;
  left: calc(100% - 30px);
  visibility: hidden;
}

.navbar .dropdown .dropdown:hover>ul {
  opacity: 1;
  top: 0;
  left: 100%;
  visibility: visible;
}

@media (max-width: 1366px) {
  .navbar .dropdown .dropdown ul {
    left: -90%;
  }

  .navbar .dropdown .dropdown:hover>ul {
    left: -100%;
  }
}

/**
* Mobile Navigation 
*/
.mobile-nav-toggle {
  color: #222222;
  font-size: 28px;
  cursor: pointer;
  display: none;
  line-height: 0;
  transition: 0.5s;
}

.mobile-nav-toggle.bi-x {
  color: #fff;
}

@media (max-width: 991px) {
  .mobile-nav-toggle {
    display: block;
  }

  .navbar ul {
    display: none;
  }
}

.navbar-mobile {
  position: fixed;
  overflow: hidden;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(9, 9, 9, 0.9);
  transition: 0.3s;
  z-index: 999;
}

.navbar-mobile .mobile-nav-toggle {
  position: absolute;
  top: 15px;
  right: 15px;
}

.navbar-mobile ul {
  display: block;
  position: absolute;
  top: 55px;
  right: 15px;
  bottom: 15px;
  left: 15px;
  padding: 10px 0;
  background-color: #fff;
  overflow-y: auto;
  transition: 0.3s;
}

.navbar-mobile a, 
.navbar-mobile a:focus {
  padding: 10px 20px;
  font-size: 15px;
  color: #222222;
}

.navbar-mobile>ul>li {
  padding: 0;
}

.navbar-mobile a:hover:before, 
.navbar-mobile li:hover>a:before, 
.navbar-mobile .active:before {
  visibility: hidden;
}

.navbar-mobile a:hover, 
.navbar-mobile .active, 
.navbar-mobile li:hover>a {
  color: #106eea;
}



.navbar-mobile .dropdown ul {
  position: static;
  display: none;
  margin: 10px 20px;
  padding: 10px 0;
  z-index: 99;
  opacity: 1;
  visibility: visible;
  background: #fff;
  box-shadow: 0px 0px 30px rgba(127, 137, 161, 0.25);
}

.navbar-mobile .dropdown ul li {
  min-width: 200px;
}

.navbar-mobile .dropdown ul a {
  padding: 10px 20px;
}

.navbar-mobile .dropdown ul a i {
  font-size: 12px;
}

.navbar-mobile .dropdown ul a:hover, 
.navbar-mobile .dropdown ul .active:hover, 
.navbar-mobile .dropdown ul li:hover>a {
  color: #106eea;
}

.navbar-mobile .dropdown>.dropdown-active {
  display: block;
}

/*--------------------------------------------------------------
# Hero Section
--------------------------------------------------------------*/
#hero {
  position: relative;        
  width: 100%;
  height: 75vh;
  display: flex;
  align-items: center;
  justify-content: flex-start; /* testo a sinistra */
  overflow: hidden;
  padding-left: 0%;           /* margine sinistro per il testo */
}

.hero-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 16%;
  z-index: 0;                 
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.5); /* overlay chiaro semi-trasparente */
  z-index: 0;
}

#hero .container-fluid {
  position: relative;
  z-index: 1;                
  color: #000;               /* testo scuro visibile sul overlay chiaro */
  text-align: left;
  padding-left: 9%; /* spazio a sinistra */
  max-width: none;
}


#hero h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero h1 span {
  color: #0A64A2;
}

#hero h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

.btn-get-started {
  font-family: "Roboto", sans-serif;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

.btn-get-started:hover {
  background: #247cf0;
  color: #fff;
}

#hero .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero .btn-get-started:hover {
  background: #247cf0;
}

#hero .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero .btn-watch-video:hover {
  color: #106eea;
}

#hero .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero {
    height: 100vh;
    background: url("../img/studio-dentistico-modena-provincia.avif") top left;
    background-size: cover;
    position: relative;

  }

  #hero h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero .btn-get-started, 
  #hero .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero {
    height: 1  20vh;
  }
}

.swiper-slide {
  width: 100%;        /* o una larghezza fissa se preferisci */
  height: 400px;      /* scegli un’altezza fissa che va bene */
  object-fit: cover;  /* fa sì che l’immagine riempia il box, ritagliando in modo proporzionale */
  object-position: center; /* opzionale: centra l’immagine nel ritaglio */
  display: block;     /* evita spazi bianchi tipici degli inline-img */
}


/*--------------------------------------------------------------
# Hero1 Section
--------------------------------------------------------------*/
#hero1 {
  width: 100%;
  height: 75vh;
  background: url("../img/implantologia-modena.avif") top left;
  background-size: cover;
  position: relative;
}

#hero1:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero1 .container {
  position: relative;
}

#hero1 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero1 h1 span {
  color: #0A64A2;
}

#hero1 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero1 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero1 .btn-get-started:hover {
  background: #247cf0;
}

#hero1 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero1 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero1 .btn-watch-video:hover {
  color: #106eea;
}

#hero1 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero1 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero1 {
    height: 100vh;
    background: url("../img/implantologia-modena-provincia.avif") top left;
    background-size: cover;
    position: relative;

  }

  #hero1 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero1 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero1 .btn-get-started, 
  #hero1 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero1 {
    height: 1  20vh;
  }
}

/*--------------------------------------------------------------
# Hero2 Section
--------------------------------------------------------------*/
#hero2 {
  width: 100%;
  height: 75vh;
  background: url("../img/conservativa-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero2:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero2 .container {
  position: relative;
}

#hero2 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero2 h1 span {
  color: #0A64A2;
}

#hero2 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero2 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero2 .btn-get-started:hover {
  background: #247cf0;
}

#hero2 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero2 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero2 .btn-watch-video:hover {
  color: #106eea;
}

#hero2 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero2 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero2 {
    height: 100vh;
    background: url("../img/conservativa-modena-provincia.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero2 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero2 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero2 .btn-get-started, 
  #hero2 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero2 {
    height: 1  20vh;
  }
}


/*--------------------------------------------------------------
# Hero3 Section
--------------------------------------------------------------*/
#hero3 {
  width: 100%;
  height: 75vh;
  background: url("../img/endodonzia-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero3:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero3 .container {
  position: relative;
}

#hero3 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero3 h1 span {
  color: #0A64A2;
}

#hero3 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero3 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero3 .btn-get-started:hover {
  background: #247cf0;
}

#hero3 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero3 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero3 .btn-watch-video:hover {
  color: #106eea;
}

#hero3 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero3 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero3 {
    height: 100vh;
    background: url("../img/endodonzia-modena-provincia.avif") top left;
    background-size: cover;
    position: relative;

  }

  #hero3 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero3 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero3 .btn-get-started, 
  #hero3 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero3 {
    height: 1  20vh;
  }
}



/*--------------------------------------------------------------
# Hero4 Section
--------------------------------------------------------------*/
#hero4 {
  width: 100%;
  height: 75vh;
  background: url("../img/sbiancamento-dentale-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero4:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero4 .container {
  position: relative;
}

#hero4 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero4 h1 span {
  color: #0A64A2;
}

#hero4 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero4 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero4 .btn-get-started:hover {
  background: #247cf0;
}

#hero4 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero4 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero4 .btn-watch-video:hover {
  color: #106eea;
}

#hero4 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero4 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero4 {
    height: 100vh;
    background: url("../img/sbiancamento-dentale-modena-provincia.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero4 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero4 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero4 .btn-get-started, 
  #hero4 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero4 {
    height: 1  20vh;
  }
}



/*--------------------------------------------------------------
# Hero5 Section
--------------------------------------------------------------*/
#hero5 {
  width: 100%;
  height: 75vh;
  background: url("../img/dentista-pediatrico-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero5:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero5 .container {
  position: relative;
}

#hero5 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero5 h1 span {
  color: #0A64A2;
}

#hero5 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero5 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero5 .btn-get-started:hover {
  background: #247cf0;
}

#hero5 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero5 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero5 .btn-watch-video:hover {
  color: #106eea;
}

#hero5 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero5 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero5 {
    height: 100vh;
    background: url("../img/dentista-pediatrico-modena-provincia.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero5 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero5 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero5 .btn-get-started, 
  #hero5 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero5 {
    height: 1  20vh;
  }
}



/*--------------------------------------------------------------
# Hero6 Section
--------------------------------------------------------------*/
#hero6 {
  width: 100%;
  height: 75vh;
  background: url("../img/dentista-ortodonzia-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero6:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero6 .container {
  position: relative;
}

#hero6 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero6 h1 span {
  color: #0A64A2;
}

#hero6 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero6 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero6 .btn-get-started:hover {
  background: #247cf0;
}

#hero6 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero6 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero6 .btn-watch-video:hover {
  color: #106eea;
}

#hero6 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero6 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero6 {
    height: 100vh;
    background: url("../img/dentista-ortodonzia-modena-provincia.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero6 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero6 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero6 .btn-get-started, 
  #hero6 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero6 {
    height: 1  20vh;
  }
}


/*--------------------------------------------------------------
# Hero7 Section
--------------------------------------------------------------*/
#hero7 {
  width: 100%;
  height: 75vh;
  background: url("../img/dentista-protesi-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero7:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero7 .container {
  position: relative;
}

#hero7 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero7 h1 span {
  color: #0A64A2;
}

#hero7 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero7 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero7 .btn-get-started:hover {
  background: #247cf0;
}

#hero7 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero7 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero7 .btn-watch-video:hover {
  color: #106eea;
}

#hero7 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero7 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero7 {
    height: 100vh;
    background: url("../img/dentista-protesi-modena-provincia.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero7 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero7 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero7 .btn-get-started, 
  #hero7 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero7 {
    height: 1  20vh;
  }
}

/*--------------------------------------------------------------
# Hero8 Section
--------------------------------------------------------------*/
#hero8 {
  width: 100%;
  height: 75vh;
  background: url("../img/chirurgia-orale-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero8:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero8 .container {
  position: relative;
}

#hero8 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero8 h1 span {
  color: #0A64A2;
}

#hero8 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero8 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero8 .btn-get-started:hover {
  background: #247cf0;
}

#hero8 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero8 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero8 .btn-watch-video:hover {
  color: #106eea;
}

#hero8 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero8 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero8 {
    height: 100vh;
    background: url("../img/chirurgia-orale-modena.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero8 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero8 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero8 .btn-get-started, 
  #hero8 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero8 {
    height: 1  20vh;
  }
}

/*--------------------------------------------------------------
# Hero9 Section
-------------------------------------------------------------*/
#hero9 {
  width: 100%;
  height: 75vh;
  background: url("../img/dentista-gnatologia-modena.jpg") top left;
  background-size: cover;
  position: relative;
}

#hero9:before {
  content: "";
  background: rgba(255, 255, 255, 0.6);
  position: absolute;
  bottom: 0;
  top: 0;
  left: 0;
  right: 0;
}

#hero9 .container {
  position: relative;
}

#hero9 h1 {
  margin: 0;
  font-size: 48px;
  font-weight: 700;
  line-height: 56px;
  color: #222222;
  font-family: "Poppins", sans-serif;
  font-display: auto;
}

#hero9 h1 span {
  color: #0A64A2;
}

#hero9 h2 {
  color: #555555;
  margin: 5px 0 30px 0;
  font-size: 24px;
  font-weight: 400;
}

#hero9 .btn-get-started {
  font-family: "Roboto", sans-serif;
  font-display: auto;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  padding: 10px 28px;
  border-radius: 4px;
  transition: 0.5s;
  color: #fff;
  background: #0A64A2;
}

#hero9 .btn-get-started:hover {
  background: #247cf0;
}

#hero9 .btn-watch-video {
  font-size: 16px;
  transition: 0.5s;
  margin-left: 25px;
  color: #222222;
  font-weight: 600;
  display: flex;
  align-items: center;
}

#hero9 .btn-watch-video i {
  color: #106eea;
  font-size: 32px;
  transition: 0.3s;
  line-height: 0;
  margin-right: 8px;
}

#hero9 .btn-watch-video:hover {
  color: #106eea;
}

#hero9 .btn-watch-video:hover i {
  color: #3b8af2;
}

@media (min-width: 1024px) {
  #hero9 {
    background-attachment: fixed;
  }
}

@media (max-width: 768px) {
  #hero9 {
    height: 100vh;
    background: url("../img/dentista-gnatologia-modena.jpg") top left;
    background-size: cover;
    position: relative;

  }

  #hero9 h1 {
    font-size: 28px;
    line-height: 36px;
  }

  #hero9 h2 {
    font-size: 18px;
    line-height: 24px;
    margin-bottom: 30px;
  }

  #hero9 .btn-get-started, 
  #hero9 .btn-watch-video {
    font-size: 13px;
  }
}

@media (max-height: 500px) {
  #hero9 {
    height: 1  20vh;
  }
}

/*--------------------------------------------------------------
# Sections General
--------------------------------------------------------------*/
section {
  padding: 60px 0;
  overflow: hidden;
}

.section-bg {
  background-color: #f6f9fe;
}

.section-title {
  text-align: center;
  padding-bottom: 30px;
}

.section-title h2 {
  font-size: 13px;
  letter-spacing: 1px;
  font-weight: 700;
  padding: 8px 20px;
  margin: 0;
  background: #e7f1fd;
  color: #0d5bc4;
  display: inline-block;
  text-transform: uppercase;
  border-radius: 50px;
}

.section-title h3 {
  margin: 15px 0 0 0;
  font-size: 32px;
  font-weight: 700;
}

.section-title h3 span {
  color: #106eea;
}

.section-title p {
  margin: 15px auto 0 auto;
  font-weight: 600;
}

@media (min-width: 1024px) {
  .section-title p {
    width: 50%;
  }
}

/*--------------------------------------------------------------
# Breadcrumbs
--------------------------------------------------------------*/
.breadcrumbs {
  padding: 20px 0;
  background-color: #f1f6fe;
  min-height: 40px;
}

.breadcrumbs h2 {
  font-size: 24px;
  font-weight: 300;
  margin: 0;
}

@media (max-width: 992px) {
  .breadcrumbs h2 {
    margin: 0 0 10px 0;
  }
}

.breadcrumbs ol {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 14px;
}

.breadcrumbs ol li+li {
  padding-left: 10px;
}

.breadcrumbs ol li+li::before {
  display: inline-block;
  padding-right: 10px;
  color: #6c757d;
  content: "/";
}

@media (max-width: 768px) {
  .breadcrumbs .d-flex {
    display: block !important;
  }

  .breadcrumbs ol {
    display: block;
  }

  .breadcrumbs ol li {
    display: inline-block;
  }
}

/*--------------------------------------------------------------
# Featured Services
--------------------------------------------------------------*/




















/*--------------------------------------------------------------
# About
--------------------------------------------------------------*/

.about .content h3 {
  font-weight: 600;
  font-size: 26px;
}

.about .content ul {
  list-style: none;
  padding: 0;
}

.about .content ul li {
  display: flex;
  align-items: flex-start;
  margin-bottom: 35px;
}

.about .content ul li:first-child {
  margin-top: 35px;
}

.about .content ul i {
  background: #fff;
  box-shadow: 0px 6px 15px rgba(16, 110, 234, 0.12);
  font-size: 24px;
  padding: 20px;
  margin-right: 15px;
  color: #106eea;
  border-radius: 50px;
}

.about .content ul h5 {
  font-size: 18px;
  color: #555555;
}

.about .content ul p {
  font-size: 15px;
}

.about .content p:last-child {
  margin-bottom: 0;
}

/*--------------------------------------------------------------
# Skills
--------------------------------------------------------------*/










/*--------------------------------------------------------------
# Counts
--------------------------------------------------------------*/










/*--------------------------------------------------------------
# Clients
--------------------------------------------------------------*/








/*--------------------------------------------------------------
# Services
--------------------------------------------------------------*/


















/* =========================================================
   ANTI-CLS FIX — HEADER + HERO
   ========================================================= */

/* === HEADER === */
#header {
  position: sticky;
  top: 0;
  z-index: 999;
  background-color: #fff;
  min-height: 100px;
  display: flex;
  align-items: center;
  transition: none !important; /* evita shift dovuti a transizioni */
}

#header .container {
  padding-top: 10px;
  padding-bottom: 10px;
}

#header .logo img {
  display: block;
  width: 118px;
  height: 100px;
  aspect-ratio: 118 / 100;
  object-fit: contain;
}

/* === NAVBAR === */
#navbar {
  min-height: 100px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

#navbar ul {
  margin: 0;
  padding: 0;
}

#navbar a, 
#navbar span, 
#navbar i {
  line-height: 1.2;
  font-display: swap;
}

/* Evita cambi di layout nei dropdown (versione desktop, hover) */
#navbar ul ul {
  visibility: hidden;
  opacity: 0;
  position: absolute;
}
#navbar li:hover > ul {
  visibility: visible;
  opacity: 1;
}

/* FIX menu mobile: la regola "#navbar ul ul" qui sopra usa un selettore con ID,
   quindi vince sempre per specificita' su ".navbar-mobile .dropdown ul" e su
   ".dropdown-active" (basate solo su classi), anche dopo il tap. Questa regola
   ha specificita' piu' alta (ID + 3 classi) e ripristina la visibilita' e il
   flusso normale del sottomenu quando e' aperto su mobile. */
#navbar.navbar-mobile .dropdown > ul.dropdown-active {
  visibility: visible;
  opacity: 1;
  position: static;
}

/* === HERO === */
#hero {
  position: relative;
  width: 100%;
  min-height: 100vh; /* riserva lo spazio per l'immagine */
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f9f9f9; /* fallback per caricamento */
}

/* Immagine hero (LCP) */
.hero-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  aspect-ratio: 1920 / 1080; /* assicura proporzioni costanti */
}

/* Overlay */
.hero-overlay {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.45);
  pointer-events: none;
}

/* Testo e contenuto */
#hero .container-fluid {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  padding: 2rem;
}

/* Evita shift dovuti ad AOS */
[data-aos] {
  transform: translateZ(0);
  will-change: transform, opacity;
}

/* Bottone stabile */
.btn-get-started {
  min-height: 45px;
}

/* === MEDIA QUERY === */
@media (max-width: 768px) {
  #hero {
    min-height: 70vh;
  }
  #header {
    min-height: 80px;
  }
}



/*--------------------------------------------------------------
# Testimonials
--------------------------------------------------------------*/
.testimonials {
  padding: 80px 0;
  background: url("../img/portfolio/odontoiatria-moderna.jpg") no-repeat;
  background-image: image-set(
    url("../img/portfolio/odontoiatria-moderna.avif") type("image/avif"),
    url("../img/portfolio/odontoiatria-moderna.jpg") type("image/jpeg")
  );
  background-position: center center;
  background-size: cover;
  position: relative;
}

.testimonials::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(10, 100, 162, 0.7);
}




.testimonials .testimonials-slider {
  overflow: hidden;
}

.testimonials .testimonial-item {
  text-align: center;
  color: #F5C90B;
}

.testimonials .testimonial-item .testimonial-img {
  width: 100px;
  height: 100px;
  object-fit: cover;
  border-radius: 50%;
  border: 6px solid rgba(255, 255, 255, 0.15);
  margin: 0 auto;
}

.testimonials .testimonial-item h3 {
  font-size: 20px;
  font-weight: bold;
  margin: 10px 0 5px 0;
  color: #fff;
}

.testimonials .testimonial-item h4 {
  font-size: 14px;
  color: #ddd;
  margin: 0 0 15px 0;
}

.testimonials .testimonial-item .quote-icon-left, 
.testimonials .testimonial-item .quote-icon-right {
  color: rgba(255, 255, 255, 0.4);
  font-size: 26px;
}

.testimonials .testimonial-item .quote-icon-left {
  display: inline-block;
  left: -5px;
  position: relative;
}

.testimonials .testimonial-item .quote-icon-right {
  display: inline-block;
  right: -5px;
  position: relative;
  top: 10px;
}

.testimonials .testimonial-item p {
  font-style: italic;
  margin: 0 auto 15px auto;
  color: #eee;
}

.testimonials .swiper-pagination {
  margin-top: 20px;
  position: relative;
}





@media (min-width: 992px) {
  .testimonials .testimonial-item p {
    width: 80%;
  }
}

/*--------------------------------------------------------------
# Portfolio
--------------------------------------------------------------*/






























/*--------------------------------------------------------------
# Portfolio Details
--------------------------------------------------------------*/
.portfolio-details {
  padding-top: 40px;
  background-color: #f6f9fe;
}

.portfolio-details .portfolio-details-slider img {
  width: 100%;
  height: 380px;
  object-fit: cover;
  display: block;
}

.portfolio-details .portfolio-details-slider .swiper-pagination {
  margin-top: 20px;
  position: relative;
}





.portfolio-details .portfolio-info {
  padding: 30px;
  box-shadow: 0px 0 30px rgba(34, 34, 34, 0.08);
}

.portfolio-details .portfolio-info h3 {
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #eee;
}

.portfolio-details .portfolio-info ul {
  list-style: none;
  padding: 0;
  font-size: 15px;
}

.portfolio-details .portfolio-info ul li+li {
  margin-top: 10px;
}

.portfolio-details .portfolio-description {
  padding-top: 30px;
}

.portfolio-details .portfolio-description h2 {
  font-size: 26px;
  font-weight: 700;
  margin-bottom: 20px;
}

.portfolio-details .portfolio-description p {
  padding: 0;
}

/*--------------------------------------------------------------
# Team
--------------------------------------------------------------*/
.team {
  padding: 60px 0;
}

.team .member {
  margin-bottom: 20px;
  overflow: hidden;
  border-radius: 4px;
  background: #fff;
  box-shadow: 0px 2px 15px rgba(16, 110, 234, 0.15);
}

.team .member .member-img {
  position: relative;
  overflow: hidden;
}









.team .member .member-info {
  padding: 25px 15px;
}

.team .member .member-info h4 {
  font-weight: 700;
  margin-bottom: 5px;
  font-size: 18px;
  color: #222222;
}

.team .member .member-info span {
  display: block;
  font-size: 13px;
  font-weight: 400;
  color: #666666;
}

.team .member .member-info p {
  font-style: italic;
  font-size: 14px;
  line-height: 26px;
  color: #555555;
}



/*--------------------------------------------------------------
# Pricing
--------------------------------------------------------------*/




























/*--------------------------------------------------------------
# Frequently Asked Questions
--------------------------------------------------------------*/






















/*--------------------------------------------------------------
# Contact
--------------------------------------------------------------*/
.contact .info-box {
  color: #444444;
  text-align: center;
  box-shadow: 0 0 30px rgba(214, 215, 216, 0.3);
  padding: 20px 0 30px 0;
}

.contact .info-box i {
  font-size: 32px;
  color: #106eea;
  border-radius: 50%;
  padding: 8px;
  border: 2px dotted #b3d1fa;
}

.contact .info-box h3 {
  font-size: 20px;
  color: #555555;
  font-weight: 700;
  margin: 10px 0;
}

.contact .info-box p {
  padding: 0;
  line-height: 24px;
  font-size: 14px;
  margin-bottom: 0;
}



























@keyframes animate-loading {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/
#footer {
  background: #fff;
  padding: 0 0 30px 0;
  color: #444444;
  font-size: 14px;
  background: #f1f6fe;
}

#footer .footer-newsletter {
  padding: 50px 0;
  background: #f1f6fe;
  text-align: center;
  font-size: 15px;
}

#footer .footer-newsletter h4 {
  font-size: 24px;
  margin: 0 0 20px 0;
  padding: 0;
  line-height: 1;
  font-weight: 600;
}

#footer .footer-newsletter form {
  margin-top: 30px;
  background: #fff;
  padding: 6px 10px;
  position: relative;
  border-radius: 4px;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.06);
  text-align: left;
}

#footer .footer-newsletter form input[type=email] {
  border: 0;
  padding: 4px 8px;
  width: calc(100% - 100px);
}

#footer .footer-newsletter form input[type=submit] {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  border: 0;
  background: none;
  font-size: 16px;
  padding: 0 20px;
  background: #106eea;
  color: #fff;
  transition: 0.3s;
  border-radius: 0 4px 4px 0;
  box-shadow: 0px 2px 15px rgba(0, 0, 0, 0.1);
}

#footer .footer-newsletter form input[type=submit]:hover {
  background: #0d58ba;
}

#footer .footer-top {
  padding: 60px 0 30px 0;
  background: ##f6f9fe;
}

#footer .footer-top .footer-contact {
  margin-bottom: 30px;
}

#footer .footer-top .footer-contact h3 {
  font-size: 24px;
  margin: 0 0 15px 0;
  padding: 2px 0 2px 0;
  line-height: 1;
  font-weight: 700;
}

#footer .footer-top .footer-contact h3 span {
  color: #0A64A2;
}

#footer .footer-top .footer-contact p {
  font-size: 14px;
  line-height: 24px;
  margin-bottom: 0;
  font-family: "Roboto", sans-serif;
  font-display: auto;
  color: #555555;
}

#footer .footer-top h4 {
  font-size: 16px;
  font-weight: bold;
  color: #444444;
  position: relative;
  padding-bottom: 12px;
}



















#footer .copyright {
  text-align: center;
  
}

#footer .credits {
  float: right;
  text-align: center;
  font-size: 13px;
  color: #444444;
}

@media (max-width: 768px) {

  #footer .copyright, 
  #footer .credits {
    float: none;
    text-align: center;
    padding: 2px 0;
  }
}

/*--------------------------------------------------------------
# FAQ
--------------------------------------------------------------*/
.faq-section {
  padding: 60px 0;
}

.faq-list {
  max-width: 860px;
  margin: 0 auto;
}

.faq-item {
  background: #fff;
  box-shadow: 0 0 29px 0 rgba(68, 88, 144, 0.12);
  border-radius: 8px;
  margin-bottom: 15px;
  padding: 20px 25px;
  transition: box-shadow 0.3s;
}

.faq-item:hover {
  box-shadow: 0 0 29px 0 rgba(16, 110, 234, 0.2);
}

.faq-item summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-size: 17px;
  color: #222222;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item summary i {
  color: #106eea;
  font-size: 18px;
  flex-shrink: 0;
  transition: transform 0.3s;
}

.faq-item[open] summary i {
  transform: rotate(180deg);
}

.faq-item p {
  margin: 15px 0 0 0;
  padding-top: 15px;
  border-top: 1px solid #ebebeb;
  color: #444444;
  line-height: 1.7;
}

/*--------------------------------------------------------------
# Trattamenti correlati
--------------------------------------------------------------*/
.related-treatments {
  padding: 10px 0 40px;
}

.related-treatments h4 {
  font-size: 15px;
  font-weight: 700;
  color: #222222;
  margin-bottom: 12px;
}

.related-treatments a {
  display: inline-block;
  margin: 0 8px 8px 0;
  padding: 8px 18px;
  background: #eef5fe;
  color: #106eea;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 600;
  transition: 0.2s;
}

.related-treatments a:hover {
  background: #106eea;
  color: #fff;
}


/*--------------------------------------------------------------
# Swiper pagination (classi generate dinamicamente da Swiper via JS,
# non presenti nell'HTML statico: aggiunte qui a mano perche' il
# processo di purge basato sulla scansione HTML non poteva vederle)
--------------------------------------------------------------*/
.testimonials .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background-color: rgba(255, 255, 255, 0.5);
  opacity: 1;
  position: relative;
}

.testimonials .swiper-pagination .swiper-pagination-bullet::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 44px;
  height: 44px;
  transform: translate(-50%, -50%);
}

.testimonials .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #106eea;
}

.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet {
  width: 12px;
  height: 12px;
  background-color: #fff;
  opacity: 1;
  border: 1px solid #106eea;
  position: relative;
}

.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 44px;
  height: 44px;
  transform: translate(-50%, -50%);
}

.portfolio-details .portfolio-details-slider .swiper-pagination .swiper-pagination-bullet-active {
  background-color: #106eea;
}
