:root {
   --bs-primary-rgb: 13,110,253;
   --bs-light-rgb: 248,249,250;
   --bs-white-rgb: 255,255,255;
   --bs-font-sans-serif: system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",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-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-bg: #fff
}

*,::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
}

.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
}

.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
}

ul {
   padding-left: 2rem
}

ul {
   margin-top: 0;
   margin-bottom: 1rem
}

ul ul {
   margin-bottom: 0
}

blockquote {
   margin: 0 0 1rem
}

strong {
   font-weight: bolder
}

.small,small {
   font-size: .875em
}

a {
   color: #0d6efd;
   text-decoration: underline
}

a:hover {
   color: #0a58ca
}

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;
   direction: ltr;
   unicode-bidi: bidi-override
}

code {
   font-size: .875em;
   color: #d63384;
   word-wrap: break-word
}

a>code {
   color: inherit
}

img {
   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
}

[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
}

::-webkit-search-decoration {
   -webkit-appearance: none
}

::-webkit-color-swatch-wrapper {
   padding: 0
}

::file-selector-button {
   font: inherit
}

::-webkit-file-upload-button {
   font: inherit;
   -webkit-appearance: button
}

output {
   display: inline-block
}

progress {
   vertical-align: baseline
}

.lead {
   font-size: 1.25rem;
   font-weight: 300
}

.blockquote {
   margin-bottom: 1rem;
   font-size: 1.25rem
}

.blockquote>:last-child {
   margin-bottom: 0
}

.img-fluid {
   max-width: 100%;
   height: auto
}

.container {
   width: 100%;
   padding-right: var(--bs-gutter-x,.75rem);
   padding-left: var(--bs-gutter-x,.75rem);
   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
   }
}

.row {
   --bs-gutter-x: 1.5rem;
   --bs-gutter-y: 0;
   display: flex;
   flex-wrap: wrap;
   margin-top: calc(var(--bs-gutter-y) * -1);
   margin-right: calc(var(--bs-gutter-x) * -.5);
   margin-left: calc(var(--bs-gutter-x) * -.5)
}

.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-12 {
   flex: 0 0 auto;
   width: 100%
}

.g-0 {
   --bs-gutter-x: 0
}

.g-0 {
   --bs-gutter-y: 0
}

.g-3 {
   --bs-gutter-x: 1rem
}

.g-3 {
   --bs-gutter-y: 1rem
}

.g-4 {
   --bs-gutter-x: 1.5rem
}

.g-4 {
   --bs-gutter-y: 1.5rem
}

@media (min-width: 768px) {
   .col-md-3 {
       flex:0 0 auto;
       width: 25%
   }

   .col-md-4 {
       flex: 0 0 auto;
       width: 33.33333333%
   }

   .col-md-6 {
       flex: 0 0 auto;
       width: 50%
   }

   .col-md-8 {
       flex: 0 0 auto;
       width: 66.66666667%
   }

   .col-md-9 {
       flex: 0 0 auto;
       width: 75%
   }
}

@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-5 {
       flex: 0 0 auto;
       width: 41.66666667%
   }

   .col-lg-6 {
       flex: 0 0 auto;
       width: 50%
   }

   .col-lg-7 {
       flex: 0 0 auto;
       width: 58.33333333%
   }

   .col-lg-8 {
       flex: 0 0 auto;
       width: 66.66666667%
   }

   .col-lg-10 {
       flex: 0 0 auto;
       width: 83.33333333%
   }

   .col-lg-12 {
       flex: 0 0 auto;
       width: 100%
   }
}

.table {
   --bs-table-bg: transparent;
   --bs-table-accent-bg: transparent;
   width: 100%;
   margin-bottom: 1rem;
   color: #212529;
   vertical-align: top;
   border-color: #dee2e6
}

.table>:not(caption)>*>* {
   padding: .5rem .5rem;
   background-color: var(--bs-table-bg);
   border-bottom-width: 1px;
   box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg)
}

.table>tbody {
   vertical-align: inherit
}

.table>thead {
   vertical-align: bottom
}

.table>:not(:last-child)>:last-child>* {
   border-bottom-color: currentColor
}

.table-bordered>:not(caption)>* {
   border-width: 1px 0
}

.table-bordered>:not(caption)>*>* {
   border-width: 0 1px
}

.table-responsive {
   overflow-x: auto;
   -webkit-overflow-scrolling: touch
}

.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: #212529;
   background-color: #fff;
   background-clip: padding-box;
   border: 1px solid #ced4da;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   border-radius: .25rem;
   transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out
}

@media (prefers-reduced-motion:reduce) {
   .form-control {
       transition: none
   }
}

.form-control:focus {
   color: #212529;
   background-color: #fff;
   border-color: #86b7fe;
   outline: 0;
   box-shadow: 0 0 0 .25rem rgba(13,110,253,.25)
}

.form-control::-webkit-date-and-time-value {
   height: 1.5em
}

.form-control::-moz-placeholder {
   color: #6c757d;
   opacity: 1
}

.form-control::placeholder {
   color: #6c757d;
   opacity: 1
}

.form-control:disabled {
   background-color: #e9ecef;
   opacity: 1
}

.form-control::file-selector-button {
   padding: .375rem .75rem;
   margin: -.375rem -.75rem;
   -webkit-margin-end: .75rem;
   margin-inline-end:.75rem;color: #212529;
   background-color: #e9ecef;
   pointer-events: none;
   border-color: inherit;
   border-style: solid;
   border-width: 0;
   border-inline-end-width:1px;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::file-selector-button {
       transition: none
   }
}

.form-control:hover:not(:disabled):not([readonly])::file-selector-button {
   background-color: #dde0e3
}

.form-control::-webkit-file-upload-button {
   padding: .375rem .75rem;
   margin: -.375rem -.75rem;
   -webkit-margin-end: .75rem;
   margin-inline-end:.75rem;color: #212529;
   background-color: #e9ecef;
   pointer-events: none;
   border-color: inherit;
   border-style: solid;
   border-width: 0;
   border-inline-end-width:1px;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
}

@media (prefers-reduced-motion:reduce) {
   .form-control::-webkit-file-upload-button {
       -webkit-transition: none;
       transition: none
   }
}

.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {
   background-color: #dde0e3
}

textarea.form-control {
   min-height: calc(1.5em + .75rem + 2px)
}

.form-select {
   display: block;
   width: 100%;
   padding: .375rem 2.25rem .375rem .75rem;
   -moz-padding-start: calc(0.75rem - 3px);
   font-size: 1rem;
   font-weight: 400;
   line-height: 1.5;
   color: #212529;
   background-color: #fff;
   background-image: 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 5l6 6 6-6'/%3e%3c/svg%3e");
   background-repeat: no-repeat;
   background-position: right .75rem center;
   background-size: 16px 12px;
   border: 1px solid #ced4da;
   border-radius: .25rem;
   transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none
}

@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[size]:not([size="1"]) {
   padding-right: .75rem;
   background-image: none
}

.form-select:disabled {
   background-color: #e9ecef
}

.form-select:-moz-focusring {
   color: transparent;
   text-shadow: 0 0 0 #212529
}

.form-check {
   display: block;
   min-height: 1.5rem;
   padding-left: 1.5em;
   margin-bottom: .125rem
}

.form-check .form-check-input {
   float: left;
   margin-left: -1.5em
}

.form-check-input {
   width: 1em;
   height: 1em;
   margin-top: .25em;
   vertical-align: top;
   background-color: #fff;
   background-repeat: no-repeat;
   background-position: center;
   background-size: contain;
   border: 1px solid rgba(0,0,0,.25);
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   -webkit-print-color-adjust: exact;
   color-adjust: exact
}

.form-check-input[type=checkbox] {
   border-radius: .25em
}

.form-check-input:active {
   filter: brightness(90%)
}

.form-check-input:focus {
   border-color: #86b7fe;
   outline: 0;
   box-shadow: 0 0 0 .25rem rgba(13,110,253,.25)
}

.form-check-input:checked {
   background-color: #0d6efd;
   border-color: #0d6efd
}

.form-check-input:checked[type=checkbox] {
   background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e")
}

.form-check-input[type=checkbox]:indeterminate {
   background-color: #0d6efd;
   border-color: #0d6efd;
   background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")
}

.form-check-input:disabled {
   pointer-events: none;
   filter: none;
   opacity: .5
}

.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label {
   opacity: .5
}

.input-group {
   position: relative;
   display: flex;
   flex-wrap: wrap;
   align-items: stretch;
   width: 100%
}

.input-group>.form-control,.input-group>.form-select {
   position: relative;
   flex: 1 1 auto;
   width: 1%;
   min-width: 0
}

.input-group>.form-control:focus,.input-group>.form-select:focus {
   z-index: 3
}

.input-group .btn {
   position: relative;
   z-index: 2
}

.input-group .btn:focus {
   z-index: 3
}

.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu) {
   border-top-right-radius: 0;
   border-bottom-right-radius: 0
}

.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {
   margin-left: -1px;
   border-top-left-radius: 0;
   border-bottom-left-radius: 0
}

.btn {
   display: inline-block;
   font-weight: 400;
   line-height: 1.5;
   color: #212529;
   text-align: center;
   text-decoration: none;
   vertical-align: middle;
   cursor: pointer;
   -webkit-user-select: none;
   -moz-user-select: none;
   user-select: none;
   background-color: transparent;
   border: 1px solid transparent;
   padding: .375rem .75rem;
   font-size: 1rem;
   border-radius: .25rem;
   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: #212529
}

.btn:focus {
   outline: 0;
   box-shadow: 0 0 0 .25rem rgba(13,110,253,.25)
}

.btn.disabled,.btn:disabled {
   pointer-events: none;
   opacity: .65
}

.btn-primary {
   color: #fff;
   background-color: #0d6efd;
   border-color: #0d6efd
}

.btn-primary:hover {
   color: #fff;
   background-color: #0b5ed7;
   border-color: #0a58ca
}

.btn-primary:focus {
   color: #fff;
   background-color: #0b5ed7;
   border-color: #0a58ca;
   box-shadow: 0 0 0 .25rem rgba(49,132,253,.5)
}

.btn-primary.active,.btn-primary:active {
   color: #fff;
   background-color: #0a58ca;
   border-color: #0a53be
}

.btn-primary.active:focus,.btn-primary:active:focus {
   box-shadow: 0 0 0 .25rem rgba(49,132,253,.5)
}

.btn-primary.disabled,.btn-primary:disabled {
   color: #fff;
   background-color: #0d6efd;
   border-color: #0d6efd
}

.btn-secondary {
   color: #fff;
   background-color: #6c757d;
   border-color: #6c757d
}

.btn-secondary:hover {
   color: #fff;
   background-color: #5c636a;
   border-color: #565e64
}

.btn-secondary:focus {
   color: #fff;
   background-color: #5c636a;
   border-color: #565e64;
   box-shadow: 0 0 0 .25rem rgba(130,138,145,.5)
}

.btn-secondary.active,.btn-secondary:active {
   color: #fff;
   background-color: #565e64;
   border-color: #51585e
}

.btn-secondary.active:focus,.btn-secondary:active:focus {
   box-shadow: 0 0 0 .25rem rgba(130,138,145,.5)
}

.btn-secondary.disabled,.btn-secondary:disabled {
   color: #fff;
   background-color: #6c757d;
   border-color: #6c757d
}

.btn-outline-primary {
   color: #0d6efd;
   border-color: #0d6efd
}

.btn-outline-primary:hover {
   color: #fff;
   background-color: #0d6efd;
   border-color: #0d6efd
}

.btn-outline-primary:focus {
   box-shadow: 0 0 0 .25rem rgba(13,110,253,.5)
}

.btn-outline-primary.active,.btn-outline-primary:active {
   color: #fff;
   background-color: #0d6efd;
   border-color: #0d6efd
}

.btn-outline-primary.active:focus,.btn-outline-primary:active:focus {
   box-shadow: 0 0 0 .25rem rgba(13,110,253,.5)
}

.btn-outline-primary.disabled,.btn-outline-primary:disabled {
   color: #0d6efd;
   background-color: transparent
}

.btn-lg {
   padding: .5rem 1rem;
   font-size: 1.25rem;
   border-radius: .3rem
}

.dropdown {
   position: relative
}

.btn-group {
   position: relative;
   display: inline-flex;
   vertical-align: middle
}

.btn-group>.btn {
   position: relative;
   flex: 1 1 auto
}

.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover {
   z-index: 1
}

.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child) {
   margin-left: -1px
}

.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle) {
   border-top-right-radius: 0;
   border-bottom-right-radius: 0
}

.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn {
   border-top-left-radius: 0;
   border-bottom-left-radius: 0
}

.nav {
   display: flex;
   flex-wrap: wrap;
   padding-left: 0;
   margin-bottom: 0;
   list-style: none
}

.nav-link {
   display: block;
   padding: .5rem 1rem;
   color: #0d6efd;
   text-decoration: none;
   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: #0a58ca
}

.nav-link.disabled {
   color: #6c757d;
   pointer-events: none;
   cursor: default
}

.card {
   position: relative;
   display: flex;
   flex-direction: column;
   min-width: 0;
   word-wrap: break-word;
   background-color: #fff;
   background-clip: border-box;
   border: 1px solid rgba(0,0,0,.125);
   border-radius: .25rem
}

.card-body {
   flex: 1 1 auto;
   padding: 1rem 1rem
}

.card-title {
   margin-bottom: .5rem
}

.card-text:last-child {
   margin-bottom: 0
}

.progress {
   display: flex;
   height: 1rem;
   overflow: hidden;
   font-size: .75rem;
   background-color: #e9ecef;
   border-radius: .25rem
}

.placeholder {
   display: inline-block;
   min-height: 1em;
   vertical-align: middle;
   cursor: wait;
   background-color: currentColor;
   opacity: .5
}

.placeholder.btn::before {
   display: inline-block;
   content: ""
}

.d-flex {
   display: flex!important
}

.shadow-sm {
   box-shadow: 0 .125rem .25rem rgba(0,0,0,.075)!important
}

.border-0 {
   border: 0!important
}

.h-100 {
   height: 100%!important
}

.justify-content-center {
   justify-content: center!important
}

.align-items-start {
   align-items: flex-start!important
}

.align-items-center {
   align-items: center!important
}

.mx-auto {
   margin-right: auto!important;
   margin-left: auto!important
}

.my-4 {
   margin-top: 1.5rem!important;
   margin-bottom: 1.5rem!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
}

.me-3 {
   margin-right: 1rem!important
}

.mb-0 {
   margin-bottom: 0!important
}

.mb-2 {
   margin-bottom: .5rem!important
}

.mb-3 {
   margin-bottom: 1rem!important
}

.mb-4 {
   margin-bottom: 1.5rem!important
}

.mb-5 {
   margin-bottom: 3rem!important
}

.ms-2 {
   margin-left: .5rem!important
}

.ms-5 {
   margin-left: 3rem!important
}

.p-3 {
   padding: 1rem!important
}

.p-4 {
   padding: 1.5rem!important
}

.py-5 {
   padding-top: 3rem!important;
   padding-bottom: 3rem!important
}

.text-end {
   text-align: right!important
}

.text-center {
   text-align: center!important
}

.text-primary {
   --bs-text-opacity: 1;
   color: rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important
}

.bg-light {
   --bs-bg-opacity: 1;
   background-color: rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important
}

.bg-white {
   --bs-bg-opacity: 1;
   background-color: rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important
}

@media (min-width: 768px) {
   .mt-md-0 {
       margin-top:0!important
   }

   .mb-md-0 {
       margin-bottom: 0!important
   }

   .p-md-5 {
       padding: 3rem!important
   }

   .text-md-end {
       text-align: right!important
   }
}

@media (min-width: 992px) {
   .mb-lg-0 {
       margin-bottom:0!important
   }

   .text-lg-end {
       text-align: right!important
   }
}

@font-face {
   font-family: "Crimson Text";
   font-style: normal;
   font-weight: 400;
   font-display: swap;
   src: url("cdn_fonts/Crimson_Text_400_normal.woff2") format("woff2")
}

@font-face {
   font-family: "Crimson Text";
   font-style: normal;
   font-weight: 700;
   font-display: swap;
   src: url("cdn_fonts/Crimson_Text_700_normal.woff2") format("woff2")
}

@font-face {
   font-family: "Work Sans";
   font-style: normal;
   font-weight: 300;
   font-display: swap;
   src: url("cdn_fonts/Work_Sans_300_normal.woff2") format("woff2")
}

@font-face {
   font-family: "Work Sans";
   font-style: normal;
   font-weight: 400;
   font-display: swap;
   src: url("cdn_fonts/Work_Sans_400_normal.woff2") format("woff2")
}

@font-face {
   font-family: "Work Sans";
   font-style: normal;
   font-weight: 700;
   font-display: swap;
   src: url("cdn_fonts/Work_Sans_700_normal.woff2") format("woff2")
}

:root {
   --main-color: #7f5c58;
   --accent-color: #592720;
   --background-color: #f0fcff;
   --hover-text-color: #f0fcff;
   --hover-background-color: #7f5c58;
   --icon-color: #592720;
   --icon-background-color: #f0fcff;
   --text-primary-color: #592720;
   --text-secondary-color: #7f5c58;
   --link-color: #7f5c58;
   --link-hover-color: #592720;
   --success-color: #4a7c59;
   --warning-color: #d4a76a;
   --error-color: #b55a5a;
   --font-primary: 'Crimson Text',serif;
   --font-secondary: 'Work Sans',sans-serif;
   --font-weight-light: 300;
   --font-weight-regular: 400;
   --font-weight-bold: 700;
   --letter-spacing-heading: 0.01em;
   --letter-spacing-body: 0.02em;
   --line-height-heading: 1.3;
   --line-height-body: 1.6;
   --line-height-small: 1.4;
   --spacing-unit: 1rem;
   --spacing-xs: 0.25rem;
   --spacing-sm: 0.5rem;
   --spacing-md: 1rem;
   --spacing-lg: 2rem;
   --spacing-xl: 4rem;
   --shadow-small: 0 2px 4px rgba(89, 39, 32, 0.05);
   --shadow-medium: 0 4px 8px rgba(89, 39, 32, 0.08);
   --shadow-large: 0 8px 16px rgba(89, 39, 32, 0.12);
   --border-radius-small: 4px;
   --border-radius-medium: 8px;
   --border-radius-large: 16px;
   --breakpoint-mobile: 576px;
   --breakpoint-tablet: 768px;
   --breakpoint-desktop: 1024px;
   --breakpoint-large: 1440px
}

body {
   font-family: var(--font-primary);
   font-weight: var(--font-weight-regular);
   line-height: var(--line-height-body);
   color: var(--text-primary-color);
   background-color: var(--background-color);
   letter-spacing: var(--letter-spacing-body);
   font-size: 16px
}

h1,h2,h3,h4,h5,h6 {
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   line-height: var(--line-height-heading);
   color: var(--text-primary-color);
   letter-spacing: var(--letter-spacing-heading);
   margin-bottom: var(--spacing-md)
}

h1 {
   font-size: 2.5rem
}

h2 {
   font-size: 2rem
}

h3 {
   font-size: 1.5rem
}

p {
   margin-bottom: var(--spacing-md)
}

a {
   color: var(--link-color);
   text-decoration: none;
   transition: color .3s ease
}

a:hover {
   color: var(--link-hover-color)
}

.container {
   max-width: 1280px;
   padding: 0 var(--spacing-md)
}

@media (min-width: 768px) {
   .container {
       padding:0 var(--spacing-lg)
   }
}

.btn {
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-regular);
   border-radius: var(--border-radius-small);
   padding: .5rem 1.25rem;
   transition: all .3s ease;
   box-shadow: var(--shadow-small);
   letter-spacing: var(--letter-spacing-body)
}

.btn:hover {
   transform: translateY(-2px);
   box-shadow: var(--shadow-medium)
}

.btn-primary {
   background-color: var(--accent-color);
   border-color: var(--accent-color);
   color: var(--hover-text-color)
}

.btn-primary:hover {
   background-color: var(--main-color);
   border-color: var(--main-color);
   color: var(--hover-text-color)
}

.btn-secondary {
   background-color: var(--main-color);
   border-color: var(--main-color);
   color: var(--hover-text-color)
}

.btn-secondary:hover {
   background-color: var(--accent-color);
   border-color: var(--accent-color)
}

.btn-outline-primary {
   background-color: transparent;
   border-color: var(--main-color);
   color: var(--main-color)
}

.btn-outline-primary:hover {
   background-color: var(--main-color);
   color: var(--hover-text-color)
}

.form-control {
   border: 1px solid #cac7c7;
   border-radius: var(--border-radius-small);
   padding: .75rem 1rem;
   font-family: var(--font-primary);
   color: var(--text-primary-color);
   transition: border-color .3s ease
}

.form-control:focus {
   border-color: var(--main-color);
   box-shadow: 0 0 0 .25rem rgba(127,92,88,.25)
}

.form-label {
   font-family: var(--font-secondary);
   color: var(--text-secondary-color);
   margin-bottom: var(--spacing-xs)
}

.card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   border: none;
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden
}

.card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.card-header {
   background-color: #fff;
   border-bottom: 1px solid rgba(127,92,88,.1);
   font-family: var(--font-secondary)
}

.card-body {
   padding: 1.5rem
}

.header-wrapper {
   display: flex;
   align-items: center;
   padding: var(--spacing-md) 0;
   background-color: #fff;
   box-shadow: var(--shadow-small)
}

.logo-section {
   margin-right: var(--spacing-lg)
}

.logo {
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.8rem;
   text-decoration: none;
   letter-spacing: .05em;
   display: flex;
   align-items: center;
   gap: 10px
}

.logo-image {
   width: 40px;
   height: 40px;
   object-fit: contain
}

.logo-text {
   display: flex;
   align-items: center
}

.logo-first,.logo-last,.logo-middle {
   display: inline-block;
   transition: all .3s ease
}

.logo-first {
   color: var(--accent-color)
}

.logo-middle {
   color: var(--main-color)
}

.logo-last {
   color: var(--accent-color)
}

.logo:hover .logo-first {
   transform: translateY(-2px)
}

.logo:hover .logo-middle {
   transform: translateY(-2px);
   transition-delay: 50ms
}

.logo:hover .logo-last {
   transform: translateY(-2px);
   transition-delay: 0.1s
}

.main-nav {
   flex-grow: 1
}

.nav-list {
   display: flex;
   list-style: none;
   margin: 0;
   padding: 0
}

.nav-item {
   margin-right: var(--spacing-lg)
}

.nav-link {
   text-decoration: none;
   color: var(--text-primary-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-regular);
   transition: color .3s;
   position: relative;
   padding-bottom: 3px
}

.nav-link:after {
   content: '';
   position: absolute;
   width: 0;
   height: 2px;
   bottom: 0;
   left: 0;
   background-color: var(--main-color);
   transition: width .3s
}

.nav-link:hover {
   color: var(--main-color)
}

.nav-link:hover:after {
   width: 100%
}

.contact-button-wrapper {
   margin-left: var(--spacing-md)
}

.contact-button {
   white-space: nowrap
}

.mobile-menu-checkbox {
   display: none
}

.mobile-menu-button {
   display: none;
   cursor: pointer;
   width: 30px;
   height: 24px;
   position: relative;
   z-index: 2
}

.mobile-menu-icon,.mobile-menu-icon:after,.mobile-menu-icon:before {
   display: block;
   width: 100%;
   height: 3px;
   background-color: var(--accent-color);
   position: absolute;
   transition: all .3s
}

.mobile-menu-icon {
   top: 50%;
   transform: translateY(-50%)
}

.mobile-menu-icon:after,.mobile-menu-icon:before {
   content: ''
}

.mobile-menu-icon:before {
   top: -8px
}

.mobile-menu-icon:after {
   bottom: -8px
}

.mobile-menu-checkbox:checked~.mobile-menu-button .mobile-menu-icon {
   background-color: transparent
}

.mobile-menu-checkbox:checked~.mobile-menu-button .mobile-menu-icon:before {
   top: 0;
   transform: rotate(45deg)
}

.mobile-menu-checkbox:checked~.mobile-menu-button .mobile-menu-icon:after {
   bottom: 0;
   transform: rotate(-45deg)
}

:focus {
   outline: 2px solid var(--main-color);
   outline-offset: 3px
}

@media (max-width: 991px) {
   .header-wrapper {
       flex-wrap:wrap;
       justify-content: space-between
   }

   .mobile-menu-button {
       display: block;
       order: 3
   }

   .logo-section {
       order: 1;
       margin-right: 0
   }

   .logo-image {
       width: 32px;
       height: 32px
   }

   .logo {
       font-size: 1.5rem;
       gap: 8px
   }

   .contact-button-wrapper {
       order: 2;
       margin-left: 0
   }

   .main-nav {
       flex-basis: 100%;
       order: 4;
       max-height: 0;
       overflow: hidden;
       transition: max-height .3s ease-out
   }

   .mobile-menu-checkbox:checked~.main-nav {
       max-height: 300px
   }

   .nav-list {
       flex-direction: column;
       padding: var(--spacing-sm) 0
   }

   .nav-item {
       margin-right: 0;
       margin-bottom: var(--spacing-sm)
   }

   .nav-link:after {
       display: none
   }
}

@media (max-width: 576px) {
   h1 {
       font-size:2rem
   }

   h2 {
       font-size: 1.75rem
   }

   h3 {
       font-size: 1.25rem
   }

   .btn {
       padding: .4rem 1rem
   }

   .logo-image {
       width: 28px;
       height: 28px
   }

   .logo {
       font-size: 1.3rem;
       gap: 6px
   }
}

.site-footer {
   background-color: #fff;
   padding: var(--spacing-lg) 0;
   margin-top: var(--spacing-xl);
   box-shadow: 0 -2px 10px rgba(89,39,32,.05)
}

.footer-subscribe {
   text-align: center;
   max-width: 600px;
   margin: 0 auto var(--spacing-lg)
}

.footer-subscribe h3 {
   margin-bottom: var(--spacing-md);
   color: var(--text-primary-color)
}

.subscribe-form .form-group {
   display: flex;
   gap: var(--spacing-sm)
}

.subscribe-form .form-control {
   flex-grow: 1;
   height: 48px
}

.footer-links {
   text-align: center;
   margin-bottom: var(--spacing-lg)
}

.footer-menu {
   display: flex;
   justify-content: center;
   list-style: none;
   padding: 0;
   margin: 0;
   flex-wrap: wrap
}

.footer-menu li {
   margin: 0 var(--spacing-md);
   padding: var(--spacing-xs) 0
}

.footer-menu a {
   color: var(--text-secondary-color);
   font-family: var(--font-secondary);
   font-size: .9rem;
   transition: color .3s ease
}

.footer-menu a:hover {
   color: var(--accent-color);
   text-decoration: underline
}

.copyright {
   text-align: center;
   color: var(--text-secondary-color);
   font-size: .875rem;
   border-top: 1px solid rgba(127,92,88,.1);
   padding-top: var(--spacing-md)
}

@media (max-width: 768px) {
   .subscribe-form .form-group {
       flex-direction:column
   }

   .footer-menu {
       flex-direction: column;
       gap: var(--spacing-xs)
   }

   .footer-menu li {
       margin: 0
   }
}

.brain-health-essentials .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.brain-health-essentials .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 700px;
   margin: 0 auto
}

.intro-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.intro-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.feature-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.feature-icon i {
   font-size: 28px;
   color: var(--accent-color)
}

.feature-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm)
}

.feature-link {
   display: inline-block;
   margin-top: var(--spacing-sm);
   font-weight: var(--font-weight-bold);
   color: var(--main-color);
   text-decoration: none;
   transition: color .3s ease
}

.feature-link:hover {
   color: var(--accent-color)
}

.feature-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.feature-link:hover i {
   transform: translateX(3px)
}

.practice-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background-color: var(--background-color);
   flex-shrink: 0
}

.practice-icon i {
   font-size: 20px;
   color: var(--accent-color)
}

.practice-item {
   margin-bottom: var(--spacing-md)
}

.practice-item:last-child {
   margin-bottom: 0
}

.productivity-performance .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.productivity-performance .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 700px;
   margin: 0 auto
}

.productivity-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm);
   box-shadow: var(--shadow-small)
}

.productivity-icon i {
   font-size: 28px;
   color: var(--accent-color)
}

.productivity-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm)
}

.productivity-benefits {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.productivity-benefits li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.productivity-benefits li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px
}

.testimonial-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 50px;
   height: 50px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.testimonial-icon i {
   font-size: 24px;
   color: var(--accent-color)
}

.blockquote {
   font-family: var(--font-primary);
   font-size: 1.25rem;
   font-style: italic;
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md)
}

.testimonial-author {
   color: var(--text-secondary-color);
   font-family: var(--font-secondary)
}

.stress-resilience .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.stress-resilience .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 700px;
   margin: 0 auto
}

.resilience-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm);
   box-shadow: var(--shadow-small)
}

.resilience-icon i {
   font-size: 28px;
   color: var(--accent-color)
}

.resilience-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm)
}

.resilience-technique h4 {
   color: var(--text-primary-color);
   font-weight: var(--font-weight-bold)
}

.resilience-technique i {
   color: var(--success-color)
}

.framework-number {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 36px;
   height: 36px;
   border-radius: 50%;
   background-color: var(--main-color);
   color: var(--hover-text-color);
   font-weight: var(--font-weight-bold);
   font-family: var(--font-secondary);
   flex-shrink: 0
}

.framework-step {
   margin-bottom: var(--spacing-md)
}

.framework-step:last-child {
   margin-bottom: 0
}

.resilience-card {
   transition: transform .3s ease,box-shadow .3s ease
}

.resilience-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.mission-vision .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.mission-vision .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 700px;
   margin: 0 auto var(--spacing-lg)
}

.mission-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.mission-icon-wrapper i {
   font-size: 50px;
   color: var(--accent-color)
}

.mission-card,.vision-card {
   height: 100%;
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   border-top: 4px solid var(--main-color)
}

.vision-card {
   border-top-color: var(--accent-color)
}

.mission-card:hover,.vision-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.mission-card h3,.vision-card h3 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md);
   font-family: var(--font-secondary)
}

.mission-card i,.vision-card i {
   color: var(--main-color)
}

.vision-card i {
   color: var(--accent-color)
}

.mission-link {
   display: inline-block;
   margin-top: var(--spacing-sm);
   font-weight: var(--font-weight-bold);
   color: var(--main-color);
   text-decoration: none;
   transition: color .3s ease
}

.mission-link:hover {
   color: var(--accent-color)
}

.mission-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.mission-link:hover i {
   transform: translateX(3px)
}

.scientific-integrity-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   margin-top: var(--spacing-lg);
   border-left: 4px solid var(--accent-color)
}

.integrity-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.integrity-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.integrity-list {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.integrity-list li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.integrity-list li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.expert-team .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.expert-team .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 700px;
   margin: 0 auto var(--spacing-lg)
}

.team-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background-color: #fff;
   box-shadow: var(--shadow-small)
}

.team-icon-wrapper i {
   font-size: 50px;
   color: var(--accent-color)
}

.team-card {
   height: 100%;
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden
}

.team-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.team-image-wrapper {
   overflow: hidden;
   height: 250px
}

.team-image {
   width: 100%;
   height: 100%;
   object-fit: cover;
   transition: transform .3s ease
}

.team-card:hover .team-image {
   transform: scale(1.05)
}

.team-member-name {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.team-member-title {
   color: var(--main-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-regular);
   margin-bottom: var(--spacing-sm);
   font-size: 1.1rem
}

.team-member-bio {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md)
}

.team-expertise {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   gap: var(--spacing-xs)
}

.expertise-badge {
   display: inline-block;
   padding: .25rem .75rem;
   background-color: var(--background-color);
   color: var(--text-secondary-color);
   border-radius: 20px;
   font-size: .85rem;
   font-family: var(--font-secondary)
}

.team-approach-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   margin-top: var(--spacing-lg);
   border-left: 4px solid var(--main-color)
}

.approach-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.approach-icon-wrapper i {
   font-size: 60px;
   color: var(--main-color)
}

.approach-list {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.approach-list li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.approach-list li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.approach-list li strong {
   color: var(--text-primary-color);
   font-weight: var(--font-weight-bold);
   margin-right: 5px
}

.approach-values .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.approach-values .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 700px;
   margin: 0 auto var(--spacing-lg)
}

.values-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.values-icon-wrapper i {
   font-size: 50px;
   color: var(--accent-color)
}

.value-card {
   height: 100%;
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   border-top: 4px solid var(--main-color)
}

.value-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.value-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.value-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.value-principles {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0;
   text-align: left
}

.value-principles li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.value-principles li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 14px;
   flex-shrink: 0
}

.value-link {
   display: inline-block;
   margin-top: var(--spacing-sm);
   font-weight: var(--font-weight-bold);
   color: var(--main-color);
   text-decoration: none;
   transition: color .3s ease
}

.value-link:hover {
   color: var(--accent-color)
}

.value-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.value-link:hover i {
   transform: translateX(3px)
}

.ethics-framework-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   margin-top: var(--spacing-lg);
   border-left: 4px solid var(--accent-color)
}

.ethics-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.ethics-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.ethics-principles {
   margin: var(--spacing-md) 0
}

.ethics-principle {
   margin-bottom: var(--spacing-md)
}

.principle-header {
   display: flex;
   align-items: center;
   margin-bottom: var(--spacing-xs)
}

.principle-header i {
   color: var(--accent-color);
   font-size: 20px;
   margin-right: 10px
}

.principle-header h4 {
   margin-bottom: 0;
   color: var(--text-primary-color);
   font-weight: var(--font-weight-bold)
}

.ethics-cta {
   border-top: 1px solid rgba(127,92,88,.1);
   padding-top: var(--spacing-md)
}

.mental-health-resources .section-title,.productivity-focus-tools .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.mental-health-resources .section-subtitle,.productivity-focus-tools .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 800px;
   margin: 0 auto
}

.resources-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.resources-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.resource-category-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   border-top: 4px solid var(--main-color)
}

.resource-category-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.resource-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.resource-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.resource-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.resource-list {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0;
   text-align: left
}

.resource-list li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.resource-list li i {
   color: var(--main-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.resource-link {
   display: inline-block;
   margin-top: var(--spacing-sm);
   font-weight: var(--font-weight-bold);
   color: var(--main-color);
   text-decoration: none;
   transition: color .3s ease
}

.resource-link:hover {
   color: var(--accent-color)
}

.resource-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.resource-link:hover i {
   transform: translateX(3px)
}

.featured-resource-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   height: 100%
}

.featured-resource-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.featured-resource-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background-color: #fff
}

.featured-resource-icon i {
   font-size: 40px;
   color: var(--accent-color)
}

.featured-resource-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.4rem
}

.resource-badge {
   display: inline-block;
   padding: .25rem .75rem;
   background-color: var(--main-color);
   color: var(--hover-text-color);
   border-radius: 20px;
   font-size: .85rem;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.resource-meta {
   display: flex;
   gap: var(--spacing-md);
   color: var(--text-secondary-color);
   font-size: .9rem;
   margin-top: var(--spacing-sm)
}

.resource-meta span {
   display: flex;
   align-items: center
}

.resource-meta i {
   margin-right: 5px
}

.resource-search .input-group {
   box-shadow: var(--shadow-small);
   border-radius: var(--border-radius-small);
   overflow: hidden
}

.resource-search .form-control {
   border-right: none;
   height: 50px
}

.resource-search .btn {
   border-top-left-radius: 0;
   border-bottom-left-radius: 0
}

.resource-item {
   display: flex;
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-md);
   transition: transform .3s ease,box-shadow .3s ease;
   height: 100%
}

.resource-item:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.resource-item-icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-right: var(--spacing-md);
   flex-shrink: 0
}

.resource-item-icon i {
   font-size: 28px;
   color: var(--accent-color)
}

.resource-item-content {
   flex-grow: 1
}

.resource-item-content h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.2rem
}

.resource-item-meta {
   display: flex;
   gap: var(--spacing-md);
   color: var(--text-secondary-color);
   font-size: .85rem;
   margin: var(--spacing-xs) 0
}

.resource-type {
   background-color: rgba(127,92,88,.1);
   padding: .15rem .5rem;
   border-radius: 12px
}

.resource-size {
   color: var(--text-secondary-color)
}

.resource-item-link {
   display: inline-block;
   margin-top: var(--spacing-xs);
   font-weight: var(--font-weight-bold);
   color: var(--main-color);
   text-decoration: none;
   transition: color .3s ease
}

.resource-item-link:hover {
   color: var(--accent-color)
}

.resource-item-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.resource-item-link:hover i {
   transform: translateX(3px)
}

.productivity-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.productivity-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.productivity-method-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   border-top: 4px solid var(--accent-color)
}

.productivity-method-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.method-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.method-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.method-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.method-benefits {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0;
   text-align: left
}

.method-benefits li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.method-benefits li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.method-link {
   display: inline-block;
   margin-top: var(--spacing-sm);
   font-weight: var(--font-weight-bold);
   color: var(--accent-color);
   text-decoration: none;
   transition: color .3s ease
}

.method-link:hover {
   color: var(--main-color)
}

.method-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.method-link:hover i {
   transform: translateX(3px)
}

.productivity-tool-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   height: 100%
}

.productivity-tool-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.tool-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background-color: var(--background-color)
}

.tool-icon i {
   font-size: 40px;
   color: var(--accent-color)
}

.tool-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.4rem
}

.tool-badge {
   display: inline-block;
   padding: .25rem .75rem;
   background-color: var(--accent-color);
   color: var(--hover-text-color);
   border-radius: 20px;
   font-size: .85rem;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.tool-meta {
   display: flex;
   gap: var(--spacing-md);
   color: var(--text-secondary-color);
   font-size: .9rem;
   margin-top: var(--spacing-sm)
}

.tool-meta span {
   display: flex;
   align-items: center
}

.tool-meta i {
   margin-right: 5px
}

.context-filter .btn-group {
   box-shadow: var(--shadow-small);
   border-radius: var(--border-radius-small);
   overflow: hidden
}

.context-filter .btn {
   font-size: .85rem;
   padding: .4rem .75rem
}

.tool-item {
   display: flex;
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-md);
   transition: transform .3s ease,box-shadow .3s ease;
   height: 100%
}

.tool-item:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.tool-item-icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-right: var(--spacing-md);
   flex-shrink: 0
}

.tool-item-icon i {
   font-size: 28px;
   color: var(--accent-color)
}

.tool-item-content {
   flex-grow: 1
}

.tool-item-content h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.2rem
}

.tool-item-meta {
   display: flex;
   gap: var(--spacing-md);
   color: var(--text-secondary-color);
   font-size: .85rem;
   margin: var(--spacing-xs) 0
}

.tool-type {
   background-color: rgba(89,39,32,.1);
   padding: .15rem .5rem;
   border-radius: 12px
}

.tool-context {
   background-color: rgba(127,92,88,.1);
   padding: .15rem .5rem;
   border-radius: 12px
}

.tool-item-link {
   display: inline-block;
   margin-top: var(--spacing-xs);
   font-weight: var(--font-weight-bold);
   color: var(--accent-color);
   text-decoration: none;
   transition: color .3s ease
}

.tool-item-link:hover {
   color: var(--main-color)
}

.tool-item-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.tool-item-link:hover i {
   transform: translateX(3px)
}

.coaching-programs .section-title,.cognitive-assessment .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.coaching-programs .section-subtitle,.cognitive-assessment .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 800px;
   margin: 0 auto
}

.assessment-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.assessment-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.assessment-benefits {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.assessment-benefits li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.assessment-benefits li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.domain-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-md);
   text-align: center;
   transition: transform .3s ease,box-shadow .3s ease
}

.domain-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.domain-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.domain-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.domain-title {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.3rem
}

.process-timeline {
   position: relative;
   max-width: 900px;
   margin: 0 auto
}

.process-timeline::before {
   content: '';
   position: absolute;
   width: 2px;
   background-color: var(--main-color);
   top: 0;
   bottom: 0;
   left: 24px;
   margin-left: -1px
}

.process-step {
   position: relative;
   margin-bottom: var(--spacing-lg);
   padding-left: 60px
}

.process-step:last-child {
   margin-bottom: 0
}

.process-number {
   position: absolute;
   left: 0;
   width: 50px;
   height: 50px;
   border-radius: 50%;
   background-color: var(--main-color);
   color: var(--hover-text-color);
   display: flex;
   align-items: center;
   justify-content: center;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.5rem;
   z-index: 1
}

.process-content {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-md)
}

.process-content h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.testimonial-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   border-left: 4px solid var(--main-color)
}

.testimonial-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.testimonial-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 50px;
   height: 50px;
   border-radius: 50%;
   background-color: var(--background-color)
}

.testimonial-icon i {
   font-size: 24px;
   color: var(--accent-color)
}

.ideal-client {
   display: flex;
   align-items: flex-start;
   margin-bottom: var(--spacing-md)
}

.ideal-client-icon {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 50px;
   height: 50px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-right: var(--spacing-md);
   flex-shrink: 0
}

.ideal-client-icon i {
   font-size: 24px;
   color: var(--accent-color)
}

.ideal-client-content h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.assessment-inquiry-form .form-label {
   color: var(--text-primary-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-regular)
}

.coaching-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: #fff;
   box-shadow: var(--shadow-small)
}

.coaching-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.coaching-benefits {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.coaching-benefits li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.coaching-benefits li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.program-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   border-top: 4px solid var(--main-color)
}

.program-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.program-header {
   padding: var(--spacing-md);
   text-align: center;
   border-bottom: 1px solid rgba(127,92,88,.1)
}

.program-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.program-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.program-title {
   color: var(--text-primary-color);
   margin-bottom: 0;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.program-body {
   padding: var(--spacing-md)
}

.program-features {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.program-features li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: flex-start
}

.program-features li i {
   color: var(--main-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0;
   margin-top: 3px
}

.program-duration {
   text-align: center;
   margin-top: var(--spacing-md)
}

.duration-badge {
   display: inline-block;
   padding: .25rem .75rem;
   background-color: rgba(127,92,88,.1);
   color: var(--text-primary-color);
   border-radius: 20px;
   font-size: .9rem;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.coaching-approach-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   border-left: 4px solid var(--accent-color)
}

.approach-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.approach-icon-wrapper i {
   font-size: 50px;
   color: var(--accent-color)
}

.coaching-methodology {
   display: flex;
   flex-direction: column;
   gap: var(--spacing-md)
}

.methodology-step {
   display: flex;
   align-items: flex-start;
   gap: var(--spacing-md)
}

.step-number {
   display: flex;
   align-items: center;
   justify-content: center;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background-color: var(--accent-color);
   color: var(--hover-text-color);
   font-weight: var(--font-weight-bold);
   font-family: var(--font-secondary);
   flex-shrink: 0;
   font-size: 1.2rem
}

.step-content {
   flex-grow: 1
}

.step-content h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.success-story-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   height: 100%;
   border-left: 4px solid var(--main-color)
}

.success-story-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.story-content {
   padding: var(--spacing-md)
}

.story-quote {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 50px;
   height: 50px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.story-quote i {
   font-size: 24px;
   color: var(--accent-color)
}

.story-content blockquote {
   font-family: var(--font-primary);
   font-size: 1.1rem;
   font-style: italic;
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md);
   border-left: none;
   padding-left: 0
}

.story-author {
   display: flex;
   justify-content: space-between;
   align-items: center;
   border-top: 1px solid rgba(127,92,88,.1);
   padding-top: var(--spacing-sm)
}

.author-info h5 {
   margin-bottom: 0;
   color: var(--text-primary-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1rem
}

.author-info p {
   margin-bottom: 0;
   color: var(--text-secondary-color);
   font-size: .9rem
}

.program-tag {
   display: inline-block;
   padding: .25rem .75rem;
   background-color: rgba(89,39,32,.1);
   color: var(--accent-color);
   border-radius: 20px;
   font-size: .85rem;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.format-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-md);
   text-align: center;
   transition: transform .3s ease,box-shadow .3s ease
}

.format-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.format-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.format-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.format-card h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.format-features {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0 0;
   text-align: left
}

.format-features li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.format-features li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.coaching-cta-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   border-top: 4px solid var(--accent-color)
}

.coaching-cta-card h3 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.mental-wellness-workshops .section-title {
   color: var(--accent-color);
   margin-bottom: var(--spacing-sm)
}

.mental-wellness-workshops .section-subtitle {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 800px;
   margin: 0 auto
}

.workshop-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.workshop-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.workshop-benefits {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.workshop-benefits li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.workshop-benefits li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.workshop-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease;
   overflow: hidden;
   border-top: 4px solid var(--accent-color)
}

.workshop-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.workshop-header {
   padding: var(--spacing-md);
   text-align: center;
   border-bottom: 1px solid rgba(89,39,32,.1)
}

.workshop-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.workshop-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.workshop-title {
   color: var(--text-primary-color);
   margin-bottom: 0;
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   font-size: 1.2rem
}

.workshop-body {
   padding: var(--spacing-md)
}

.workshop-features {
   list-style: none;
   padding-left: 0;
   margin: var(--spacing-md) 0
}

.workshop-features li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: flex-start
}

.workshop-features li i {
   color: var(--main-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0;
   margin-top: 3px
}

.workshop-formats-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   border-left: 4px solid var(--accent-color)
}

.formats-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.formats-icon-wrapper i {
   font-size: 50px;
   color: var(--accent-color)
}

.delivery-option {
   margin-bottom: var(--spacing-md)
}

.option-header {
   display: flex;
   align-items: center;
   margin-bottom: var(--spacing-sm)
}

.option-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-right: var(--spacing-sm);
   flex-shrink: 0
}

.option-icon i {
   font-size: 20px;
   color: var(--accent-color)
}

.option-header h4 {
   margin-bottom: 0;
   color: var(--text-primary-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.option-features {
   list-style: none;
   padding-left: 0;
   margin: 0
}

.option-features li {
   margin-bottom: var(--spacing-xs);
   display: flex;
   align-items: center
}

.option-features li i {
   color: var(--success-color);
   margin-right: 10px;
   font-size: 16px;
   flex-shrink: 0
}

.workshop-process {
   position: relative;
   max-width: 900px;
   margin: 0 auto
}

.workshop-process::before {
   content: '';
   position: absolute;
   width: 2px;
   background-color: var(--accent-color);
   top: 0;
   bottom: 0;
   left: 24px;
   margin-left: -1px
}

.workshop-step .process-number {
   background-color: var(--accent-color)
}

.facilitator-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-md);
   text-align: center;
   transition: transform .3s ease,box-shadow .3s ease
}

.facilitator-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.facilitator-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 80px;
   height: 80px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.facilitator-icon i {
   font-size: 40px;
   color: var(--accent-color)
}

.facilitator-name {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.facilitator-title {
   color: var(--main-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-regular);
   margin-bottom: var(--spacing-sm);
   font-size: 1rem
}

.facilitator-bio {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md);
   font-size: .9rem
}

.facilitator-expertise {
   display: flex;
   flex-wrap: wrap;
   justify-content: center;
   gap: var(--spacing-xs)
}

.workshop-cta-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg);
   border-top: 4px solid var(--accent-color)
}

.workshop-cta-card h3 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.contact-hero {
   padding: var(--spacing-xl) 0
}

.contact-hero h1 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md)
}

.contact-hero .lead {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 800px;
   margin: 0 auto
}

.thank-you-hero {
   padding: var(--spacing-xl) 0
}

.thank-you-hero h1 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md)
}

.thank-you-hero .lead {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 800px;
   margin: 0 auto var(--spacing-md)
}

.error-page {
   padding: var(--spacing-xl) 0
}

.error-page h1 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-md)
}

.error-page .lead {
   color: var(--text-secondary-color);
   font-size: 1.2rem;
   max-width: 800px;
   margin: 0 auto var(--spacing-md)
}

.error-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 120px;
   height: 120px;
   border-radius: 50%;
   background-color: var(--background-color);
   box-shadow: var(--shadow-small)
}

.error-icon-wrapper i {
   font-size: 60px;
   color: var(--accent-color)
}

.suggestion-card {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   transition: transform .3s ease,box-shadow .3s ease
}

.suggestion-card:hover {
   transform: translateY(-5px);
   box-shadow: var(--shadow-large)
}

.suggestion-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 60px;
   height: 60px;
   border-radius: 50%;
   background-color: var(--background-color)
}

.suggestion-icon i {
   font-size: 30px;
   color: var(--accent-color)
}

.suggestion-link {
   display: inline-block;
   margin-top: var(--spacing-sm);
   font-weight: var(--font-weight-bold);
   color: var(--main-color);
   text-decoration: none;
   transition: color .3s ease
}

.suggestion-link:hover {
   color: var(--accent-color)
}

.suggestion-link i {
   font-size: 14px;
   margin-left: 5px;
   transition: transform .3s ease
}

.suggestion-link:hover i {
   transform: translateX(3px)
}

.error-search {
   background-color: #fff;
   border-radius: var(--border-radius-medium);
   box-shadow: var(--shadow-medium);
   padding: var(--spacing-lg)
}

.thank-you-icon-wrapper {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 100px;
   height: 100px;
   border-radius: 50%;
   background-color: #fff;
   box-shadow: var(--shadow-small)
}

.thank-you-icon-wrapper i {
   font-size: 50px;
   color: var(--success-color)
}

.next-steps .step-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 50px;
   height: 50px;
   border-radius: 50%;
   background-color: var(--background-color);
   flex-shrink: 0
}

.next-steps .step-icon i {
   font-size: 24px;
   color: var(--accent-color)
}

.next-steps h4 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-xs);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold)
}

.explore-resources .resource-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 70px;
   height: 70px;
   border-radius: 50%;
   background-color: var(--background-color);
   margin-bottom: var(--spacing-sm)
}

.explore-resources .resource-icon i {
   font-size: 35px;
   color: var(--accent-color)
}

.contact-info {
   padding: var(--spacing-xl) 0
}

.contact-icon {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   width: 40px;
   height: 40px;
   border-radius: 50%;
   background-color: var(--background-color);
   flex-shrink: 0
}

.contact-icon i {
   font-size: 20px;
   color: var(--accent-color)
}

.contact-item a {
   color: var(--link-color);
   text-decoration: none;
   transition: color .3s ease
}

.contact-item a:hover {
   color: var(--link-hover-color)
}

.contact-form .form-label {
   color: var(--text-primary-color);
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-regular)
}

.contact-form .form-control.is-invalid {
   border-color: var(--error-color)
}

.contact-faq {
   padding: var(--spacing-xl) 0
}

.contact-faq h2 {
   color: var(--text-primary-color);
   margin-bottom: var(--spacing-sm)
}

.contact-faq p {
   color: var(--text-secondary-color)
}

.contact-faq .card {
   transition: transform .3s ease,box-shadow .3s ease
}

.contact-faq .card:hover {
   transform: translateY(-3px);
   box-shadow: var(--shadow-large)
}

.cookie-consent-banner {
   position: fixed;
   bottom: 0;
   left: 0;
   right: 0;
   background-color: #fff;
   box-shadow: var(--shadow-large);
   z-index: 9999;
   display: none;
   padding: var(--spacing-md);
   border-top: 4px solid var(--main-color)
}

.cookie-consent-content {
   max-width: 1280px;
   margin: 0 auto
}

.cookie-consent-banner h3 {
   color: var(--text-primary-color);
   font-family: var(--font-secondary);
   font-size: 1.3rem;
   margin-bottom: var(--spacing-sm)
}

.cookie-consent-banner p {
   color: var(--text-secondary-color);
   font-size: .95rem;
   margin-bottom: var(--spacing-md);
   max-width: 800px
}

.cookie-consent-options {
   display: flex;
   flex-direction: column;
   gap: var(--spacing-sm);
   margin-bottom: var(--spacing-md)
}

.cookie-option {
   display: flex;
   align-items: flex-start;
   background-color: var(--background-color);
   padding: var(--spacing-sm);
   border-radius: var(--border-radius-small)
}

.cookie-option input[type=checkbox] {
   margin-top: 5px;
   margin-right: var(--spacing-sm)
}

.cookie-option label {
   display: flex;
   flex-direction: column;
   cursor: pointer;
   flex-grow: 1
}

.option-title {
   font-family: var(--font-secondary);
   font-weight: var(--font-weight-bold);
   color: var(--text-primary-color);
   margin-bottom: 2px
}

.option-description {
   font-size: .85rem;
   color: var(--text-secondary-color)
}

.cookie-consent-buttons {
   display: flex;
   gap: var(--spacing-sm);
   justify-content: flex-end
}

@media (max-width: 768px) {
   .cookie-consent-buttons {
       flex-direction:column
   }

   .cookie-consent-buttons button {
       width: 100%;
       margin-bottom: var(--spacing-xs)
   }
}

@media (max-width: 576px) {
   .cookie-consent-banner h3 {
       font-size:1.1rem
   }

   .cookie-consent-banner p {
       font-size: .9rem
   }

   .option-title {
       font-size: .9rem
   }

   .option-description {
       font-size: .8rem
   }
}

.text-primary {
   color: var(--text-primary-color)!important
}

.text-secondary {
   color: var(--text-secondary-color)!important
}

.bg-primary {
   background-color: var(--main-color)!important
}

.bg-accent {
   background-color: var(--accent-color)!important
}

.bg-light {
   background-color: var(--background-color)!important
}

.shadow-sm {
   box-shadow: var(--shadow-small)!important
}

.shadow-md {
   box-shadow: var(--shadow-medium)!important
}

.shadow-lg {
   box-shadow: var(--shadow-large)!important
}

.rounded-sm {
   border-radius: var(--border-radius-small)!important
}

.rounded-md {
   border-radius: var(--border-radius-medium)!important
}

.rounded-lg {
   border-radius: var(--border-radius-large)!important
}
