@font-face {
    font-family: 'Roboto';
    src: url('/assets/webfonts/subset-Roboto-Light.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('/assets/webfonts/subset-Roboto-Regular.woff2') format('woff2');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('/assets/webfonts/subset-Roboto-SemiBold.woff2') format('woff2');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Roboto';
    src: url('/assets/webfonts/subset-Roboto-Bold.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

:root {
  --bs-body-font-family: 'Roboto', system-ui, -apple-system, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  
  --bs-nav-height: 0px;
  --bs-nav-extra: 50px;
  
  --bs-spacer-45: 2.25rem;
  --bs-spacer-6: 4rem;
  --bs-spacer-7: 6rem;

  --bs-primary: #00a682;
  --bs-primary-rgb: 0, 166, 130;
  
  --bs-primary-shade-1: #00785E;
  --bs-primary-shade-1-rgb: 0, 120, 94;
  
  --bs-primary-shade-2: #00604B;
  --bs-primary-shade-2-rgb: 0, 96, 75;
  
  --bs-secondary: #6e6e6e;
  --bs-secondary-rgb: 110,110,110;
}

/* Color scheme */

a {
    color: rgba(var(--bs-primary-rgb), var(--bs-link-opacity, 1));
    text-decoration: underline;
}

a:hover {
    color: rgba(var(--bs-primary-shade-1-rgb), var(--bs-link-opacity, 1));
}

.link-primary:focus, .link-primary:hover {
    color: rgba(var(--bs-primary-shade-1-rgb), var(--bs-link-opacity, 1)) !important;
    -webkit-text-decoration-color: rgba(var(--bs-primary-shade-1-rgb), var(--bs-link-underline-opacity, 1)) !important;
    text-decoration-color: rgba(var(--bs-primary-shade-1-rgb), var(--bs-link-underline-opacity, 1)) !important;
}

.btn-link {
    --bs-btn-font-weight: 400;
    --bs-btn-color: var(--bs-link-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: transparent;
    --bs-btn-hover-color: var(--bs-link-hover-color);
    --bs-btn-hover-border-color: transparent;
    --bs-btn-active-color: var(--bs-link-hover-color);
    --bs-btn-active-border-color: transparent;
    
    --bs-btn-disabled-color: #6c757d;
    --bs-btn-disabled-border-color: transparent;
    
    --bs-btn-box-shadow: 0 0 0 #000;
    --bs-btn-focus-shadow-rgb: 49, 132, 253;
    text-decoration: underline;
}

.btn-link {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-hover-color: var(--bs-primary-shade-1);
    --bs-btn-active-color: var(--bs-primary-shade-2);
    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);
}

.btn-primary {
    --bs-btn-color: #fff;
    --bs-btn-bg: var(--bs-primary);
    --bs-btn-border-color: var(--bs-primary);
    
    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary-shade-1);
    --bs-btn-hover-border-color: var(--bs-primary-shade-2);
    
    --bs-btn-focus-shadow-rgb: rgb(var(--bs-primary-rgb));
    
    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary-shade-1);
    --bs-btn-active-border-color: var(--bs-primary-shade-2);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
    
    --bs-btn-disabled-color: #fff;
    --bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
}

.btn-outline-primary {
    --bs-btn-color: var(--bs-primary);
    --bs-btn-bg: transparent;
    --bs-btn-border-color: var(--bs-primary);

    --bs-btn-hover-color: #fff;
    --bs-btn-hover-bg: var(--bs-primary);
    --bs-btn-hover-border-color: var(--bs-primary);

    --bs-btn-focus-shadow-rgb: var(--bs-primary-rgb);

    --bs-btn-active-color: #fff;
    --bs-btn-active-bg: var(--bs-primary-shade-1);
    --bs-btn-active-border-color: var(--bs-primary-shade-2);
    --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);

    --bs-btn-disabled-color: var(--bs-primary);
    --bs-btn-disabled-bg: transparent;
    --bs-btn-disabled-border-color: var(--bs-primary);

    --bs-gradient: none;
}

.form-control:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}

.accordion-button:not(.collapsed) {
    color: var(--bs-primary);
    background-color: rgba(var(--bs-primary-rgb), 0.08);
    box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .125);
}

.accordion-button:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 .25rem rgba(var(--bs-primary-rgb), .25);
}

/* General */


body {
    display: flex;
    flex-direction: column;
}

main {
    flex: 1 0 auto;
}

h2 {
    font-weight: 600;
}

ul {
  list-style-type: circle;
}

.fa-secondary{
    opacity: .4
}

.hide-scrollbar {
    overflow-x: scroll;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.hide-scrollbar::-webkit-scrollbar {
    display: none;
}

b, strong {
    font-weight: 600;
}

.text-shadow-1 {
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}
        
.text-shadow-2 {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.45);
}
        
.text-shadow-3 {
    text-shadow: 0 3px 6px rgba(0, 0, 0, 0.55);
}

.content {
    padding-top: calc(var(--bs-nav-height) + var(--bs-nav-extra));
}

.content.no-extra {
    --bs-nav-extra: 0px;
    padding-top: var(--bs-nav-height);
}

/* Fixes */

.btn-group>.btn-group:not(:last-child)>.btn,
.btn-group>.btn.dropdown-toggle-split:first-child,
.btn-group>.btn:not(:last-child):not(.dropdown-toggle) {
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}

.btn-group>.btn-group:not(:first-child)>.btn,
.btn-group>.btn:nth-child(n+3),
.btn-group>:not(.btn-check)+.btn {
	border-top-left-radius: 0 !important;
	border-bottom-left-radius: 0 !important;
}

.dropdown-toggle::after {
    content: "" !important;
    display: inline-block !important;
    width: 1em !important;
    height: 1em !important;
    margin-left: .3em !important;
    vertical-align: middle !important;

    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'><path fill='rgba(0,0,0,0.65)' d='M241 369c-9.4 9.4-24.6 9.4-33.9 0L47 209c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l143 143L367 175c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L241 369z'/></svg>") !important;

    background-repeat: no-repeat !important;
    background-size: contain !important;

    border: none !important;
}

/* Error page */

#error-401 .content,
#error-403 .content,
#error-404 .content,
#error-500 .content,
#error-503 .content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 100%;
}

.error-page-container {
    max-width: 550px;
}

/* Icons */

.icon {
	width: 1em;
	height: auto;
	vertical-align: -0.125em;
	fill: currentColor;
	flex: 0 0 auto;
	display: inline-block
}

.icon-fw {
	width: 1.25em;
	text-align: center;
	display: inline-block
}

/* Breadcrumbs */

.breadcrumb-item + .breadcrumb-item::before {
    display: inline-block;
    width: 10px;
    height: 14px;
    margin: 0 .25rem;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 320 512'><path fill='%23dee2e6' d='M310.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-192 192c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L242.7 256 73.4 86.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l192 192z'/></svg>");
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    
    content: "" !important;
    float: initial !important;
    padding-right: initial !important;
    color: initial !important;
}

.breadcrumb-item.active {
    color: var(--bs-secondary);
}

/* Navbar */

.nav-link:focus-visible {
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.25) !important;
}

.nav-link,
nav .dropdown-item {
    color: var(--bs-secondary);
}

.nav-link:focus, .nav-link:hover {
    color: var(--bs-dark);
}

nav .dropdown-item:focus, nav .dropdown-item:hover,
nav .dropdown-item.active, nav .dropdown-item:active {
    color: var(--bs-dark);
    background-color: #f8f9fa;
}

.navbar-nav .nav-link.active,
 nav .dropdown-item.active, nav .dropdown-item:active {
    font-weight: 600;
    color: var(--bs-dark);
}

/* Header */

.secondary-header {
    --bs-bg-opacity: 1;
    background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
}

#main-header {
    background: url('/assets/img/g/main-header.webp') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative;
    z-index: 1;
    color: #fff;
}
        
#main-header .overlay {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.65);
    z-index: 1;
}

/* Get in touch */

#get-in-touch {
    background: url('/assets/img/g/bg-get-in-touch.webp') no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    position: relative;
    z-index: 1;
    color: #fff;
}
         
#get-in-touch .overlay {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(5px); 
    z-index: 1;
}

/* Footer */

.footer-column-list li:not(:last-child) {
    margin-bottom: 0.5rem;
}

@media (max-width: 991.98px){
    .footer-toggle .icon{
        transition: transform .33s ease;
        transform-origin: 50% 50%;
        transform-box: fill-box;
    }
  
    .footer-toggle.collapsed .icon {
        transform: rotate(0deg); 
    }
  
    .footer-toggle:not(.collapsed) .icon{
        transform: rotate(180deg); 
    }
}

/* Social media icons */

.social-media-icon {
  display: inline-block;
  width: 1.15rem; 
  height: 1.15rem;
  vertical-align: middle;
  fill: var(--bs-dark);
  transition: fill .33s ease, transform .33s ease;
}

a:hover .social-media-icon.facebook,
a:focus-visible .social-media-icon.facebook {
  fill: #1877F2;
}

a:hover .social-media-icon.instagram,
a:focus-visible .social-media-icon.instagram {
  fill: #E4405F;
}

a:hover .social-media-icon.linkedin,
a:focus-visible .social-media-icon.linkedin {
  fill: #0A66C2;
}

a:hover .social-media-icon.youtube,
a:focus-visible .social-media-icon.youtube {
  fill: #FF0000;
}

a:hover .social-media-icon.x-twitter,
a:focus-visible .social-media-icon.x-twitter {
  fill: #000000;
}

a:hover .social-media-icon.tiktok,
a:focus-visible .social-media-icon.tiktok {
  fill: #EE1D52;
}

a:hover .social-media-icon,
a:focus-visible .social-media-icon {
  transform: translateY(-1px);
}

/* Cookie Policy */

#cookie-policy {
    position: fixed;
    width: 550px;
    bottom: 1rem;
    right: 1rem;
    z-index: 1055;
}

@media (max-width: 991.98px) {
    #cookie-policy {
        width: 100%;
        left: 0;
        right: 0;
        bottom: env(safe-area-inset-bottom, 0);
    }
    
    .cookie-container {
        border-radius: 0 !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    #cookie-policy,
    #cookie-policy * {
        animation: none !important;
        transition: none !important;
        scroll-behavior: auto !important;
    }
}

@media print {
    #cookie-policy { display: none !important; }
}
