 :root {
     --primary-color: #58472E;
     --primary-transparent: rgba(88, 71, 46, 0.1);
     --white: #FFFFFF;
 }

 @font-face {
     font-family: 'Figtree';
     src: url('../fonts/Figtree-VariableFont_wght.ttf') format('truetype');
     font-weight: 100 900;
     font-style: normal;
     font-display: swap;
 }

 @font-face {
     font-family: 'Figtree';
     src: url('../fonts/Figtree-Italic-VariableFont_wght.ttf') format('truetype');
     font-weight: 100 900;
     font-style: italic;
     font-display: swap;
 }

 body {
     font-family: 'Figtree', sans-serif;
     color: var(--primary-color);
     background-color: var(--white);
 }

 a {
     color: var(--primary-color);
     text-decoration: none;
     transition: .3s;
 }

 a:hover {
     text-decoration: underline;
 }

 /* Navigation */
 .navbar {
     background-color: var(--white) !important;
     box-shadow: 0 2px 10px rgba(88, 71, 46, 0.1);
 }

 .navbar-brand {
     color: var(--primary-color) !important;
     font-weight: 700;
 }

 .nav-link {
     color: var(--primary-color) !important;
     font-weight: 500;
     transition: all 0.3s;
 }

 .nav-link:hover {
     color: var(--primary-color) !important;
     opacity: 0.7;
 }

 /* Hero Section */
 .hero-section {
     padding: 0;
     margin-top: 86px;
     /* background-image: url(../../assets/img/sfera.jpg);
     background-position: center; */
     min-height: 60vh;
     display: flex;
     align-items: center;
     justify-content: center;
     position: relative;
     overflow: hidden;
 }

 .bg-hero {
     background-color: #58472E1A;
     height: 100%;
     width: 100%;
     position: absolute;
 }

 img.img-hero {
     position: absolute;
     left: 0;
     top: 0;
     bottom: 0;
     width: 50%;
     height: 100%;
     object-fit: cover;
     object-position: right top;
 }

 .hero-image-container {
     background-color: var(--white);
     border-radius: 10px;
     overflow: hidden;
     box-shadow: 0 10px 40px rgba(88, 71, 46, 0.15);
 }

 .hero-image {
     width: 100%;
     height: auto;
     object-fit: cover;
 }

 /* Section Styling */
 section {
     padding: 80px 0;
 }

 h1 {
     font-weight: 700;
     color: var(--primary-color);
     margin-bottom: 30px;
 }

 h2 {
     font-weight: 600;
     color: var(--primary-color);
     margin-bottom: 20px;
 }

 p {
     text-align: justify;
     line-height: 1.8;
     margin-bottom: 20px;
 }

 /* Info Box */
 .info-box {
     background-color: var(--primary-transparent);
     border-left: 4px solid var(--primary-color);
     padding: 30px;
     border-radius: 0 10px 10px 0;
     margin: 40px 0;
 }

 .info-box h3 {
     font-weight: 600;
     margin-bottom: 15px;
 }

 .info-box p {
     margin-bottom: 10px;
     text-align: left;
 }

 /* Cards */
 .custom-card {
     background-color: var(--white);
     border: 1px solid var(--primary-transparent);
     border-radius: 15px;
     padding: 30px;
     height: 100%;
     transition: transform 0.3s;
 }

 .custom-card:hover {
     transform: translateY(-5px);
     box-shadow: 0 10px 30px rgba(88, 71, 46, 0.1);
 }

 /* Buttons */
 .btn-primary-custom {
     background-color: var(--primary-color);
     color: var(--white);
     border: none;
     padding: 12px 30px;
     border-radius: 30px;
     font-weight: 600;
     transition: all 0.3s;
 }

 .btn-primary-custom:hover {
     background-color: var(--primary-color);
     opacity: 0.9;
     color: var(--white);
 }

 .btn-outline-custom {
     border: 2px solid var(--primary-color);
     color: var(--primary-color);
     padding: 12px 30px;
     border-radius: 30px;
     font-weight: 600;
     transition: all 0.3s;
 }

 .btn-outline-custom:hover {
     background-color: var(--primary-color);
     color: var(--white);
 }

 /* Images */
 .img-placeholder {
     /* border: 2px dashed var(--primary-color); */
     border-radius: 12px;
     min-height: 300px;
     display: flex;
     align-items: center;
     justify-content: center;
     color: var(--primary-color);
     font-style: italic;
     background-color: #fff;
 }

 .img-rounded {
     border-radius: 10px;
     overflow: hidden;
 }

 .img-rounded img {
     border-radius: 10px;
 }

 /* Footer */
 footer {
     background-color: var(--primary-color);
     color: var(--white);
     padding: 60px 0 30px;
 }

 footer h5 {
     font-weight: 600;
     margin-bottom: 20px;
 }

 footer a {
     color: var(--white);
     text-decoration: none;
     opacity: 0.8;
     transition: opacity 0.3s;
 }

 footer a:hover {
     opacity: 1;
 }

 footer .social-icons a {
     font-size: 1.5rem;
     margin-right: 15px;
 }

 .credits-section {
     background-color: rgba(255, 255, 255, 0.1);
     padding-bottom: 60px;
     border-radius: 10px;
 }

 .credits-section h6 {
     font-weight: 600;
     margin-top: 20px;
     margin-bottom: 10px;
 }

 .credits-section p,
 .credits-section ul {
     font-size: 0.9rem;
     opacity: 0.9;
     text-align: left;
 }

 .credits-section ul {
     padding-left: 20px;
 }

 /* Utility */
 .section-title {
     position: relative;
     padding-bottom: 15px;
     margin-bottom: 30px;
 }

 .section-title::after {
     content: '';
     position: absolute;
     bottom: 0;
     left: 0;
     width: 60px;
     height: 3px;
     background-color: var(--primary-color);
 }

 .text-justify {
     text-align: justify;
 }

 /* Responsive */
 @media (max-width: 768px) {
     .hero-section {
         padding: 60px 0;
         margin-top: 76px;
     }

     section {
         padding: 50px 0;
     }

     h1 {
         font-size: 2rem;
     }

     img.img-hero {
         position: absolute;
         left: 0;
         top: 0;
         bottom: 0;
         width: 70%;
         height: 100%;
         object-fit: cover;
         object-position: right;
     }
 }