/*!
Theme Name: Pharmanutra
Theme URI: http://underscores.me/
Author: Bajara
Author URI: https://bajara.it/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: pharmanutra
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Pharmanutra is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

@import url('https://fonts.googleapis.com/css2?family=Titillium+Web:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@200;300;400;500;600;700;800&display=swap');

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: 900;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

img {
	height: auto;
	max-width: 100%;
}

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}


a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main
.posts-navigation,
.site-main
.post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
	post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}


/*BAJARA*/ 

/*****************************slider*/

.home-slider {
    position: relative;
    width: 100%;
    height: 80vh;
    overflow: hidden;
}

.slider-container {
    position: relative;
    width: 100%;
    height: 69%;
}

.slide {
    position: absolute;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
}

.slide.active {
    opacity: 1;
}

.slide-background {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    align-items: center;
}

.slide-content {
    color: white;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.5);
    text-align: center;
}

.slide-content h2 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    font-size: 5rem;
    margin-bottom: 1rem;
}

button.slider-nav.prev.btn.rounded-circle {
    background-color: #233D6A !important;
}
button.slider-nav.next.btn.rounded-circle {
    background-color: #2C65C6 !important;
}
.slider-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 60px; /* Aumentato per accomodare le frecce più lunghe */
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(255,255,255,0.7) !important;
    border: none;
    transition: all 0.3s ease;
}

.slider-nav:hover {
    background-color: rgba(255,255,255,0.9) !important;
    transform: translateY(-50%) scale(1.1);
}

.slider-nav i {
    font-size: 1.1rem; 
    color: #ffffff;
    transition: transform 0.3s ease;
}

.slider-nav:hover i {
    transform: scale(1.2);
}

.prev {
    left: 20px;
}

.next {
    right: 20px;
}

.bi {
    font-size: 1.5rem;
}

/* Mobile Slider Fixes */
@media (max-width: 767px) {

    .slide-content h2 {
        font-family: 'Titillium Web', sans-serif;
        font-weight: 900;
        font-size: 2rem!important;}
    
        .lead {
            font-size: 1rem!important;
            font-weight: 300;
        }    
        
        button.slider-nav {
            display: none;
        }

}

/* Header */
.site-header {
    position: relative;
    background: #fff;
    z-index: 1000;
}

.home-header {
    position: absolute;
    width: 100%;
    background: transparent;
}

.home-header .custom-logo {
    filter: brightness(0) invert(1);
}

.home-header .navbar-nav .nav-link {
    color: #fff;
    font-size: 1rem;
}

.home-header .search-toggle {
    color: #fff;
}

.search-container {
    position: relative;
    margin-left: 0rem!important;
}

.search-toggle {
    background: none;
    border: none;
    padding: 0.5rem;
    cursor: pointer;
    color: #333;
    display: flex;
    align-items: center;
}

.search-overlay {
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    padding: 1rem;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    display: none; /* Changed from opacity/visibility */
    width: 300px;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.search-overlay.active {
    display: block; /* Changed from opacity/visibility */
    opacity: 1;
    visibility: visible;
}

.search-container {
    position: relative;
}

.search-toggle {
    cursor: pointer;
    padding: 0.5rem;
    background: transparent;
    border: none;
    display: flex;
    align-items: center;
}

/* Make sure the search toggle is visible on the home page */
.home-header .search-toggle {
    color: #fff;
}

/* Home page specific styling */
.home-header .search-toggle {
    color: #fff;
}

/* Menu styling */
.navbar-nav {
    display: flex;
    flex-direction: row;
    gap: 0.5rem;
    align-items: center;
    margin: 0;
    padding: 0;
    font-family: "Titillium Web", sans-serif;
}

.navbar-nav li {
    list-style: none;
    display: inline-block;
    margin: 0;
}

.navbar-nav a {
    text-decoration: none;
    color: #2C65C6;
    font-weight: 500;
    transition: color 0.3s ease;
    padding: 0.5rem 0;
    white-space: nowrap;
}

/* Home page specific menu styling */
.home-header .navbar-nav a {
    color: #fff;
	font-family: 'Titillium Web';
    font-size: 19px;
    margin-right: 1rem;
}

.home-header .navbar-nav a:hover {
    color: rgba(255, 255, 255, 0.8);
}

@media (min-width:989px) & (max-width: 1021px) {
    .custom-logo {
        max-height: 24px!important;
        width: auto;
    }
}


/* Responsive menu */
@media (max-width: 991px) {
    .navbar-nav {
        flex-direction: column;
        gap: 1rem;
        padding: 1rem 0;
    }

    .navbar-nav li {
        display: block;
        width: 100%;
    }

    .home-header .navbar-collapse {
        background: rgba(0, 0, 0, 0.9);
        padding: 1rem;
        border-radius: 4px;
    }
    .custom-logo {
        width: 74%!important;
    }
    .mobile-nav-group {
        left: 62%!important;
    }
}

i.fa-solid.fa-magnifying-glass {
    font-size: 1.4rem;
}

h5.text-primary.mb-2 {
    font-family: 'Titillium Web';
    color: #204C9A !important;
    font-size: 20px !important;
}

h5.text-primary.mb-2::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: #204C9A;
	margin-top: 0.5rem;
}

.aree-carousel {
    overflow: hidden;
    position: relative;
    width: 84%!important;
    background-color: #C2D1EE;  /* Manteniamo lo sfondo */
	margin: 0 auto!important;
}

.aree-carousel-inner {
    display: flex;
    transition: transform 0.3s ease;
    width: 100%;
	padding: 1rem;
    margin: 0 auto;
    
}

.aree-item {
    flex: 0 0 calc(33.333% - 20px);
    width: calc(33.333% - 20px);
    flex-shrink: 0;
}

@media (max-width: 767px) {
    .aree-item {
        flex: 0 0 100%;
        width: 100%;
    }
	.aree-carousel{
		width: 100%!important;
	}
}

.aree-item .card {
    overflow: hidden;
}

.aree-item .card.rounded-custom {
    border-radius: 0.25rem;
    border-bottom-right-radius: 2rem;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
    max-width: 295px;
    margin: 0 auto;
    max-height: 391px;
}

.home-intro.py-5 {
    margin-top: -20vh;
}

h2.mb-4.intro-title {
    color: #002361;
    font-family: 'Titillium Web';
    font-size: 43px;
    font-weight: 900;
	line-height: 1;
	margin-top: 24px;
}

p.intro-text {
    font-family: 'Titillium Web';
    font-size: 22px;
    color: #484848;
    margin-top: 3rem;
}

.home-aree.py-5 {
    background-color: #C2D1EE;
}

aree-item .card {
    overflow: hidden;
}

.aree-item .card-img-wrapper {
    height: 269px!important;
    overflow: hidden;
}

.aree-item .card-img-top {
    width: 100%;
    height: 100%;
    object-fit: cover;
	margin-top: -6px;
}

.aree-item .card.rounded-custom {
    border-radius: 0.25rem;
    border-bottom-right-radius: 2rem;
	box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
	max-width: 295px;
    min-height: 391px;
}

/* Carousel styles */
.aree-carousel {
    overflow: hidden;
}

.aree-carousel-inner {
    display: flex;
    transition: transform 0.3s ease;
}

.aree-item {
    flex: 0 0 auto;
}

.carousel-nav .btn-link {
    padding: 0.5rem 1rem;
    color: inherit;
}

h2.mb-0 {
    color: #2C65C6;
    font-family: 'Titillium Web';
    font-size: 43px;
    font-weight: 900;
    margin-top: 24px;
}

.aree-carousel {
    overflow: hidden;
}

.aree-carousel-inner {
    display: flex;
    transition: transform 0.3s ease;
    
}

.aree-carousel {
    overflow: hidden;
    position: relative;
}

.aree-carousel-inner {
    display: flex;
    transition: transform 0.3s ease;
    margin: 0 -15px;
}

.aree-item {
    flex: 0 0 100%;
    max-width: 100%;
    
}

@media (min-width: 768px) {
    .aree-item {
        flex: 0 0 33.333%;
        max-width: 33.333%;
    }
}

.card-img-wrapper {
    height: 200px;
    overflow: hidden;
}

.card-img-top {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card.rounded-custom {
    border-radius: 0.25rem;
    border-bottom-right-radius: 2rem;
}

.aree-carousel {
    overflow: hidden;
    position: relative;
    width: 100%;
    background-color: #C2D1EE;
}

.aree-carousel-inner {
    display: flex;
    transition: transform 0.3s ease;
    width: 100%;
}

.aree-item {
    flex: 0 0 calc(35.333% - 22px);
    width: calc(33.333% - 20px);
    margin: 0 10px;
    flex-shrink: 0;
}

@media (max-width: 767px) {
    .aree-item {
        flex: 0 0 100%;
        width: 100%;
        margin: 0;
    }
}

.aree-item .card {
    overflow: hidden;
}

.aree-item .card-img-wrapper {
    height: 300px;
    overflow: hidden;
}

.aree-item .card-img-top {
    width: 100%;
    height: 100%;
    object-fit: cover;
    margin-top: -6px;
}

.aree-item .card.rounded-custom {
    border-radius: 0.25rem;
    border-bottom-right-radius: 2rem;
    box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
    max-width: 295px;
    margin: 0 auto;
}

.aree-item .card-body {
    position: relative;
    padding-bottom: 2.5rem; /* Add space for the link */
    min-height: 120px; /* Ensure consistent height */
    display: flex;
    flex-direction: column;
}

.aree-item .card-body .card-link {
    color: #2C65C6;
    font-family: 'Titillium Web';
    font-size: 14px;
    text-decoration: none;
    position: absolute; /* Change from relative to absolute */
    bottom: 1rem; /* Position at bottom with padding */
    left: 1.25rem; /* Position from left with padding */
    z-index: 2;
    text-transform: uppercase;
    font-weight: 800;
}

.aree-item .card-body .card-link:hover {
    text-decoration: underline;
}

button.btn.btn-link.prev-aree {
	background-color: #233D6A;
	border-radius: 44px;
    height: 50px;

}

.carousel-nav .btn-link {
    padding: 0.5rem 1rem;
    color: #ffffff;
}

button.btn.btn-link.next-aree {
    background-color: #2C65C6;
    border-radius: 50px;
    height: 50px;
}

button.btn.btn-link.prev-aree:hover {
    color: white;
}

button.btn.btn-link.next-aree:hover {
	color: white;
}


.wpml-ls-legacy-list-horizontal.wpml-ls-statics-footer {
    display: none !important;
}

.otgs-development-site-front-end {
    display: none !important;
}

.language-switcher {
    margin-right: 0px;
}

.language-switcher.me-3 {
    margin-right: 0px !important;
    margin-left: 0px!important;
}

.language-switcher .lang-link {
    text-decoration: none;
    color: #2C65C6;
    font-family: 'Titillium Web', sans-serif;
    font-size: 16px;
    padding: 0 2px;
}

.home-header .language-switcher .lang-link {
    color: #fff;
}

.language-switcher .lang-link.active {
    font-weight: bold;
}

.language-switcher .lang-link:hover {
    text-decoration: underline;
}

span.separator {
    color: #2C65C6;
}

.page-template-home-page span.separator {
    color: #ffffff;
}

button.search-toggle {
    color: #2C65C6;
}


/* Ensure existing search styles remain after this */
.search-container {
    position: relative;
    margin-left: 1rem;
}

.search-toggle {
    background: none;
    border: none;
    padding: 0.5rem;
    cursor: pointer;
    color: #333;
    display: flex;
    align-items: center;
}

.search-overlay {
    position: absolute;
    top: 100%;
    right: 0;
    background: #fff;
    padding: 1rem;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.2);
    display: none; /* Changed from opacity/visibility */
    width: 300px;
    z-index: 1000;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.search-overlay.active {
    display: block; /* Changed from opacity/visibility */
    opacity: 1;
    visibility: visible;
}

.search-container {
    position: relative;
}

.search-toggle {
    cursor: pointer;
    padding: 0.5rem;
    background: transparent;
    border: none;
    display: flex;
    align-items: center;
}

/* Header Alignment Fixes */
.navbar {
    min-height: 80px;
    align-items: center;
}

.navbar > .container {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    min-height: 80px;
}

@media (min-width: 992px) {
    header#masthead .container {
        max-width: 1570px!important;
    }
}

.navbar-collapse {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

#primary-menu-wrap {
    flex-wrap: wrap;
}

.navbar-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
    height: 80px;
}

.navbar-nav .nav-item {
    display: flex;
    align-items: center;
    height: 100%;
}

.d-flex.align-items-center {
    display: flex;
    align-items: center;
    margin-left: 2rem;
    height: 80px;
}

/* Adjust responsive behavior */
@media (max-width: 991px) {
    .navbar-collapse {
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #fff;
        padding: 1rem;
        height: auto;
    }

    .navbar-nav {
        flex-direction: column;
        height: auto;
    }

    .navbar-nav .nav-item {
        height: auto;
    }

    .home-header .navbar-collapse {
        background: rgba(0, 0, 0, 0.9);
    }

    .d-flex.align-items-center {
        margin-left: 0;
        padding: 1rem 0;
    }
}

/* Header Alignment Fixes */
.navbar {
    min-height: 80px;
    align-items: center;
}

.site-branding {
    margin-right: auto;
}

.navbar-nav {
    margin-left: auto;
    align-items: center;
}

.d-flex.align-items-center {
    height: 100%;
    display: flex;
    align-items: center;
    margin-left: 2rem;
}

.custom-logo {
    max-height: 50px;
    width: auto;
}
div#primary-menu ul {
    margin-bottom: 0px !important;
}

.language-switcher {
    display: flex;
    align-items: center;
    margin: 0 1rem;
}

.search-container {
    display: flex;
    align-items: center;
    margin-left: 1rem;
    height: 100%;
}

@media (max-width: 991px) {
    .navbar-collapse {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #fff;
        padding: 1rem;
    }

    .home-header .navbar-collapse {
        background: rgba(0, 0, 0, 0.9);
    }

    .d-flex.align-items-center {
        margin-left: 0;
        padding: 1rem 0;
    }
}

/* Mobile Menu Styles */
.hamburger-menu {
    width: 30px;
    height: 24px;
    position: relative;
    background: transparent;
    border: none;
    padding: 0;
    display: none;
    color: #2C65C6!important;

}

.hamburger-menu span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    transition: .25s ease-in-out;
}

.home-header .hamburger-menu span {
    background: #fff;
}

.site-header:not(.home-header) .hamburger-menu span {
    background: #3a65c6;
}

.hamburger-menu span:nth-child(1) { top: 0; }
.hamburger-menu span:nth-child(2) { top: 10px; }
.hamburger-menu span:nth-child(3) { top: 20px; }

.hamburger-menu.active span:nth-child(1) {
    top: 10px;
    transform: rotate(45deg);
}

.hamburger-menu.active span:nth-child(2) {
    opacity: 0;
}

.hamburger-menu.active span:nth-child(3) {
    top: 10px;
    transform: rotate(-45deg);
}

@media (max-width: 991px) {
    .hamburger-menu {
        display: block;
        z-index: 1001;
    }

    .mobile-nav-items {
        margin-left: auto;
    }

    .navbar-collapse {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #002361 !important;
        z-index: 1000;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: 0.3s ease-in-out;
        opacity: 0;
        visibility: hidden;
        padding: 2rem;
    }

    .navbar-collapse.show {
        opacity: 1;
        visibility: visible;
    }

    .navbar-nav {
        flex-direction: column;
        text-align: center;
        height: auto;
    }

    .navbar-nav a {
        color: #fff !important;
        font-size: 24px !important;
        padding: 1rem 0;
    }

    .d-flex.align-items-center {
        display: none !important;
    }
}

@media (max-width: 991px) {
    .mobile-nav-items {
        display: flex !important;
        align-items: center;
        margin-left: auto;
    }

    .mobile-nav-items .language-switcher,
    .mobile-nav-items .search-container,
    .mobile-nav-items .hamburger-menu {
        display: flex;
        align-items: center;
    }

    .hamburger-menu {
        display: block;
        margin-left: 15px;
        z-index: 1001;
    }

    .navbar-toggler {
        display: none;
    }

    .navbar-collapse {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #002361 !important;
        z-index: 1000;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: 0.3s ease-in-out;
        opacity: 0;
        visibility: hidden;
        padding: 2rem;
    }

    .navbar-collapse.show {
        opacity: 1;
        visibility: visible;
    }

    .navbar-nav {
        flex-direction: column;
        text-align: center;
        height: auto;
    }

    .navbar-nav a {
        color: #fff !important;
        font-size: 24px !important;
        padding: 1rem 0;
    }

    /* Hide desktop language switcher and search on mobile */
    .d-flex.align-items-center.d-none {
        display: none !important;
    }

    /* Show mobile search overlay properly */
    .search-overlay {
        position: fixed;
        top: 80px;
        left: 0;
        right: 0;
        width: 100%;
        padding: 1rem;
        background: #fff;
    }

    .search-overlay.active {
        display: block;
        opacity: 1;
        visibility: visible;
    }
}

@media (max-width: 991px) {
    .mobile-nav-group {
        display: flex !important;
        align-items: center;
        gap: 15px;
        margin-left: auto;
    }

    .mobile-nav-group .language-switcher {
        display: flex;
        align-items: center;
        margin: 0;
    }

    .mobile-nav-group .search-container {
        margin: 0;
    }

    .mobile-nav-group .hamburger-menu {
        display: block;
        margin: 0;
    }

    .navbar-collapse {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #002361 !important;
        z-index: 1000;
        padding: 2rem;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        display: flex !important;
        align-items: center;
        justify-content: center;
    }

    .navbar-collapse.show {
        opacity: 1;
        visibility: visible;
    }

    .search-overlay {
        position: fixed;
        top: 80px;
        left: 0;
        right: 0;
        width: 100%;
        background: #fff;
    }

    /* Hide desktop elements on mobile */
    .d-flex.align-items-center:not(.mobile-nav-group) {
        display: none !important;
    }

    .navbar-toggler {
        display: none;
    }
}

@media (min-width: 991px) {

    .navbar-nav .dropdown-menu li, .navbar-nav .sub-menu li, #primary-menu ul ul li {
        border-bottom: none;
        display: block;
        width: 300px!important;
    }
        .aree-terapeutiche-menu > .dropdown-menu,
    .aree-terapeutiche-menu > .sub-menu,
    .aree-terapeutiche-menu > ul,
    #primary-menu .aree-terapeutiche-menu > ul {
        background-color: #2C65C6;
        border: none;
        border-radius: 0;
        border-top-left-radius: 32px;
        border-bottom-right-radius: 32px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
        padding: 20px;
        min-width: 61vw!important;
        display: none;
        flex-wrap: wrap;
        flex-direction: row;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        text-transform: uppercase;
        margin-left: -26vw !important;
        min-width: 74vw;
    }




}




    

/* Improved Mobile Menu Styles */
@media (max-width: 991px) {
    /* Better mobile menu structure */
    .navbar-collapse {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        background: #002361 !important;
        z-index: 1000;
        padding: 4rem 2rem 2rem;
        opacity: 0;
        visibility: hidden;
        transition: all 0.3s ease;
        display: flex !important;
        align-items: flex-start;
        justify-content: flex-start;
        overflow-y: auto;
    }
    
    .navbar-collapse.show {
        opacity: 1;
        visibility: visible;
    }
    
    /* Improved primary menu in mobile */
    #primary-menu {
        width: 100%;
        padding-top: 2rem;
    }
    
    #primary-menu ul {
        padding: 0;
        width: 100%;
    }
    
    .navbar-nav {
        flex-direction: column;
        text-align: left;
        height: auto;
        gap: 0;
        width: 100%;
    }
    
    .navbar-nav li {
        display: block;
        width: 100%;
        border-bottom: 1px solid rgba(255,255,255,0.1);
    }
    
    .navbar-nav a {
        color: #fff !important;
        font-size: 20px !important;
        padding: 1rem 0;
        display: block;
        width: 100%;
        font-family: 'Titillium Web', sans-serif;
    }
    
    /* Dropdown toggle for mobile */
    .navbar-nav li.menu-item-has-children {
        position: relative;
    }
    
    .navbar-nav li.menu-item-has-children > a {
        width: calc(100% - 50px);
    }
    
    .mobile-dropdown-toggle {
        width: 50px;
        height: 50px;
        position: absolute;
        right: 0;
        top: 5px;
        display: flex;
        align-items: center;
        justify-content: center;
        color: #fff;
        font-size: 20px;
        background: transparent;
        border: none;
        z-index: 2;
    }
    
    .mobile-dropdown-toggle:after {
        content: '\f107';
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        transition: transform 0.3s ease;
    }
    
    .mobile-dropdown-toggle.active:after {
        transform: rotate(-180deg);
    }
    
    /* Mobile submenu styles */
    .navbar-nav .dropdown-menu,
    .navbar-nav .sub-menu,
    #primary-menu ul ul {
        background: rgba(4, 191, 191, 0.1);
        border: none;
        box-shadow: none;
        padding: 0;
        margin: 0;
        position: static;
        width: 100%;
        display: none;
        opacity: 1;
        visibility: visible;
        border-radius: 0;
    }
    
    .navbar-nav .dropdown-menu.show,
    .navbar-nav .sub-menu.show,
    #primary-menu ul ul.show {
        display: block;
    }
    
    .navbar-nav .dropdown-item,
    .navbar-nav .sub-menu a,
    #primary-menu ul ul a {
        color: #fff !important;
        width: 100%;
        padding: 0.75rem 1rem;
        font-size: 18px !important;
        border: none;
    }
    
    .navbar-nav .dropdown-menu li,
    .navbar-nav .sub-menu li,
    #primary-menu ul ul li {
        border-bottom: none;
    }

    
    
    /* Close button for mobile menu */
    button.mobile-menu-close {
        display: none;
    }
   

    
    /* Fix for the current-menu-item underline in mobile */
    .current-menu-item a:after,
    .current-menu-ancestor a:after {
        display: none;
    }

    /* Fix for the current-menu-item underline in mobile */
    @media (max-width: 991px) {
        .navbar-nav .menu-item-has-children .sub-menu,
        .navbar-nav .menu-item-has-children .dropdown-menu,
        .navbar-nav .menu-item-has-children ul,
        #primary-menu .menu-item-has-children ul {
            display: block;
            padding-left: 20px;
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease;
            position: static;
            width: 100%;
            background: transparent;
            border: none;
            box-shadow: none;
            opacity: 1;
            visibility: visible;
            border-radius: 0;
            margin: 0;
        }
        
        .navbar-nav .menu-item-has-children .sub-menu.show,
        .navbar-nav .menu-item-has-children .dropdown-menu.show,
        .navbar-nav .menu-item-has-children ul.show,
        #primary-menu .menu-item-has-children ul.show {
            max-height: 1000px!important;
            margin-bottom: 10px;
        }
        
        /* Ensure dropdown items appear below parent in mobile view */
        .navbar-nav li.menu-item-has-children,
        #primary-menu li.menu-item-has-children {
            display: flex;
            flex-direction: column;
            width: 100%;
        }
        
        /* Ensure submenu items display properly vertically */
        .navbar-nav .sub-menu li,
        .navbar-nav .dropdown-menu li,
        #primary-menu ul ul li {
            width: 100%;
            display: block;
        }
        
        /* Remove any float that might cause inline display */
        .navbar-nav .sub-menu,
        .navbar-nav .dropdown-menu,
        #primary-menu ul ul {
            float: none;
            clear: both;
            width: 100%;
            display: block;
        }
        
        /* Style dropdown menu items */
        .navbar-nav .dropdown-menu li a,
        .navbar-nav .sub-menu li a,
        #primary-menu ul ul li a {
            padding-left: 15px;
            border-left: 2px solid rgba(255, 255, 255, 0.2);
            font-size: 16px !important;
            margin: 5px 0;
            display: block;
            width: 100%;
        }
        
        /* Ensure toggle button doesn't push content */
        .navbar-nav li.menu-item-has-children {
            position: relative;
        }
        
        .navbar-nav li.menu-item-has-children > a {
            width: calc(100% - 20px);
            display: inline-block;
        }
        
        /* Better styling for toggle button */
        .mobile-dropdown-toggle {
            position: absolute;
            right: 0;
            top: 10px;
            background: transparent;
            border: none;
            width: 40px;
            height: 30px;
            padding: 0;
            color: white;
            z-index: 3;
        }
        
        .mobile-dropdown-toggle:focus {
            outline: none;
        }
        
        /* Make mobile dropdown use full width */
        .navbar-nav .sub-menu,
        .navbar-nav .dropdown-menu,
        #primary-menu ul ul {
            width: 100% !important;
            margin: 0;
        }
    }
    
    /* Override any desktop-specific dropdown styles */
    .navbar-nav li.menu-item-has-children > a::before,
    .navbar-nav li.dropdown > a::before,
    #primary-menu li.menu-item-has-children > a::before {
        content: none;
    }
    
    /* Mobile search and language */
    .mobile-nav-group {
        
        top: 20px;
        left: 245px;
        display: flex;
        z-index: 1002;
    }
    
    .hamburger-menu.active span {
        background: #fff;
    }
}

/* Make sure mobile menu controls only appear on mobile */
@media screen and (min-width: 992px) {
    .mobile-dropdown-toggle,
    .mobile-menu-close {
        display: none !important;
    }
    .navbar-expand-lg .navbar-nav {
        margin-left: 0px!important;
    }
    #primary-menu {
        margin-left: 0!important; /* Removes the left margin from the main menu */
      }
      
      .nav-link {
        margin-right: 0!important; /* Removes the right margin from the menu links */
      }
}

/* Improve mobile menu toggle button styling */
@media screen and (max-width: 991px) {
    /* Ensure toggle button doesn't push content */
    .navbar-nav li.menu-item-has-children {
        position: relative;
    }
    
    .navbar-nav li.menu-item-has-children > a {
        width: calc(100% - 50px);
        display: inline-block;
        margin-left: -32px;
    }
    
    /* Better styling for toggle button */
    .mobile-dropdown-toggle {
        position: absolute;
        right: 0;
        top: 10px;
        background: transparent;
        border: none;
        width: 40px;
        height: 30px;
        padding: 0;
        color: white;
        z-index: 3;
    }
    
    .mobile-dropdown-toggle:focus {
        outline: none;
    }
    
    /* Make mobile dropdown use full width */
    .navbar-nav .sub-menu,
    .navbar-nav .dropdown-menu,
    #primary-menu ul ul {
        width: 100% !important;
        margin: 0;
    }
}

/* Approfondimenti Section */
.home-approfondimenti {
    padding: 6rem 0;
    background-color: #fff;
    overflow: hidden;
}

.approfondimenti-slider {
    position: relative;
    height: 100%;
    margin-left: -30px;
}

.blue-background {
    position: absolute;
    height: 600px;
    background-color: #002361;
    right: -50%;
    left: 153px;
    z-index: 1;
    top: 50%;
    transform: translateY(-50%);
    max-width: 799px;
}

.approfondimenti-cards {
    position: relative;
    z-index: 2;
    padding: 2rem 0;
    width: 113%;
    overflow: visible;
    margin-left: -102px;
}

.cards-container {
    display: flex;
    gap: 30px;
    overflow-x: auto;
    padding-right: 100px;
    -ms-overflow-style: none;
    scrollbar-width: none;
    scroll-behavior: smooth;
    margin-top: 14%;
}

.approfondimenti-card {
    flex: 0 0 300px;
    height: 300px;
    background-size: cover;
    background-position: center;
    border-radius: 0.25rem;
    position: relative;
    overflow: hidden;
}

.card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    color: white;
}

.card-category {
    font-family: 'Titillium Web', sans-serif;
    font-size: 0.9rem;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #fff;
}

.approfondimenti-card .card-title {
    color: #2C65C6;
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.5rem;
    margin-bottom: 1rem;
    line-height: 1.2;
    font-weight: bold;
    /* Add truncation */
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 8.6rem; /* Approximately 2 lines */
}

@media (max-width: 767px) {
    .approfondimenti-slider {
        margin-left: 0;
    }
    
    .blue-background {
        left: 0;
        width: 100vw;
        height: 350px; /* Slightly smaller on mobile */
        margin-top: 0px;
        max-width: 103%;
    }
    
    .cards-container {
        padding-left: 15px;
        padding-right: 15px;
        margin-top: 10px;
    }
    .approfondimenti-cards {
        position: relative;
        z-index: 111;
        padding: 1rem 0;
        width: 100%;
        overflow: visible;
        margin-left: 0px;
    }
    
    .approfondimenti-card {
        flex: 0 0 300px;
        height: 300px;
    }

    .approfondimenti-text {
        padding-bottom: 7rem;
    }

    .home-approfondimenti {
        margin-top: 0rem!important;
        margin-bottom: 7rem!important;
        padding: 0rem 0;
        background-color: #fff;
        overflow: visible;
    }
    .home-approfondimenti h2.mb-4 {
        margin-top: 2rem;
    }
    .home-approfondimenti.py-5  {
        padding-top: 0rem !important;
    }
  
    }
    .slide-content h2 {
        font-family: 'Titillium Web', sans-serif;
        font-weight: 900;
        font-size: 3rem;
    }

    .split-background .bg-white {
        flex: 0 0 73.333%!important;}

       /* Fix for mobile submenu display */
       .navbar-nav .dropdown-menu.show,
       .navbar-nav .sub-menu.show,
       #primary-menu ul ul.show,
       ul.sub-menu.mobile-submenu.show {
           display: flex !important;
           flex-direction: column !important;
           width: 100%;
       }
       
       ul.sub-menu.mobile-submenu.show li,
       .navbar-nav .dropdown-menu.show li,
       .navbar-nav .sub-menu.show li,
       #primary-menu ul ul.show li {
           width: 100%;
       }
       
       ul.sub-menu.mobile-submenu.show a,
       .navbar-nav .dropdown-menu.show a,
       .navbar-nav .sub-menu.show a,
       #primary-menu ul ul.show a {
           width: 100%;
           display: block;
           padding: 0.75rem 1rem;
       }
       
       .navbar-nav .menu-item-has-children .sub-menu.show,
       .navbar-nav .menu-item-has-children .dropdown-menu.show,
       .navbar-nav .menu-item-has-children ul.show,
       #primary-menu .menu-item-has-children ul.show {
           display: flex !important;
           flex-direction: column !important;
       }
       
       .navbar-nav .dropdown-menu li,
       .navbar-nav .sub-menu li,
       #primary-menu ul ul li {
           border-bottom: none;
           display: block;
           width: 100%;
       }    









.home-approfondimenti {
    margin-top: 8rem;
    margin-bottom: 8rem;
}


.home-approfondimenti .row {
    height: 714px;
    align-items: center;
}

.home-approfondimenti h2.mb-4{
    margin-top: 5rem;
	font-family: 'Titillium Web';
	font-size: 43px;
	font-weight: 900;
	color: #002361;

}

.approfondimenti-text {
    font-family: 'Titillium Web';
    font-size: 19px;
    color: #484848;
}

/* Bottom CTA Section */
.home-bottom-cta {
    background-color: #204C98;
    padding: 6rem 0;
	min-height: 530px;
    align-items: center;
    display: flex;
}

.home-bottom-cta h5 {
    font-family: 'Titillium Web', sans-serif;
    font-size: 20px;
    position: relative;
    margin: 0 auto;
}

.home-bottom-cta h5::after {
    content: '';
    display: block;
    width: 50px;
    height: 1px;
    background: #fff;
    margin: 0 auto;
    margin-top: 0.5rem;
}

.home-bottom-cta h2 {
    font-family: 'Titillium Web', sans-serif;
    font-size: 43px;
    font-weight: 700;
    margin-top: 24px;
}

.home-bottom-cta .bottom-content {
    font-family: 'Titillium Web', sans-serif;
    font-size: 19px;
    line-height: 1.6;
}

/* Footer Widgets
--------------------------------------------- */
.site-footer {
    margin-top: auto;
}

.footer-widgets-primary {
    background-color: #223D6A;
    padding: 4rem 0;
    color: #fff;
}

.footer-widgets-primary .footer-widgets-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    margin-bottom: 3rem;
}

.footer-widgets-primary .footer-widget-full {
    padding-top: 2rem;
}

.footer-widgets-secondary {
    background-color: #fff;
    padding: 2rem 0;
    display: flex;
    align-items: center;
    min-height: 100px; /* Ensures minimum height for content */
}

.footer-widgets-secondary .container {
    width: 100%;
}

.footer-widgets-secondary .footer-widgets-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    align-items: center; /* Allinea verticalmente le righe della griglia */
}

.footer-widgets-secondary .footer-widget-column {
    min-width: 0;
    display: flex;
    align-items: center; /* Allinea verticalmente il contenuto della colonna */
    height: 100%; /* Assicura che la colonna prenda tutta l'altezza disponibile */
}

.footer-widgets-secondary .widget {
    /*width: 100%; /* Assicura che il widget prenda tutta la larghezza disponibile */
    margin: 0; /* Rimuove il margine predefinito del widget */
}

/* Footer Widget Content Styling */
.footer-widgets-primary .widget {
    color: #fff;
}

.footer-widgets-primary .widget-title {
    color: #fff;
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
}

.footer-widgets-primary a {
    color: #fff;
    text-decoration: none;
}

.footer-widgets-primary a:hover {
    text-decoration: underline;
}

/* Responsive Footer */
@media (max-width: 768px) {
    .footer-widgets-primary .footer-widgets-row,
    .footer-widgets-secondary .footer-widgets-row {
        grid-template-columns: 1fr;
    }
    
    .footer-widgets-primary {
        padding: 2rem 0;
    }
    
    .footer-widgets-secondary {
        padding: 1.5rem 0;
    }
}

a.discover {
    color: #002361;
    font-weight: bold;
    font-family: 'Titillium Web';
}

h6.text-primary.mb-2 {
    color: #204C98 !important;
    font-family: 'Titillium Web';
    font-weight: lighter;
}

h6.text-primary.mb-2::after {
	content: '';
	display: block;
	width: 50px;
	height: 1px;
	background: #204C98;
	margin-top: 0.5rem;
}

h5.card-title {
    color: #707070;
    font-family: 'Titillium Web';
    font-weight: bold;
    font-size: 1.5rem;
}

.card-overlay a {
    text-align: right;
    text-transform: uppercase;
    font-family: 'Titillium Web';
    font-weight: 800;
    color: white;
    text-decoration:none;
}

.card-overlay a:hover{
    color: #fff;
    text-decoration:underline;
}

.button-footer a.wp-block-button__link.wp-element-button {
    background-color: #002361;
    border-radius: 0px;
    padding: 5px;
    padding-left: 29px;
    padding-right: 29px;
}

/* Aree Terapeutiche Template Styles */
.area-box {
    min-height: 515px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    margin-bottom: 30px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 3rem;
    overflow: hidden;
}

.aree-boxes .container {
    max-width: 95%;
    width: 95%;
}

.aree-boxes .row {
    margin-left: -10px;
    margin-right: -10px;
}

.aree-boxes [class*="col-"] {
    padding-left: 10px;
    padding-right: 10px;
}

.box-content {
    position: relative;
    padding: 2rem;
    color: white;
    z-index: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding-bottom: 3rem;
}
.single-post .overlay{background-color: rgba(0, 0, 0, 0.4); /* oscuramento neutro */
    mix-blend-mode: normal;}
.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    mix-blend-mode: multiply;
  opacity: 1;
  background: transparent; /* sarà impostato dinamicamente */
   
    pointer-events: none;
    z-index: 1;
}

.overlay-svg {
    position: absolute;
    top: 0;
    left: -90px;
    height: 100%;
    aspect-ratio: 378.6 / 682.3; /* rapporto dell'SVG */
    z-index: 2;
    pointer-events: none;
}

.overlay-svg svg {
    width: 100%;
    height: 100%;
}

.overlay-svg svg path {
    fill: #00000029;
    opacity: 0.45;
}

.box-content .titles-wrapper {
    margin-bottom: auto;
    margin-top: 10rem;
	 position: relative;
    z-index: 3;
}

.box-content .small-title {
    font-family: 'Titillium Web', sans-serif;
    font-size: 1rem;
    margin-bottom: 0.5rem;
    text-transform: uppercase;
}

.box-content .main-title {
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.75rem;
    font-weight: bold;
    margin-bottom: 1.5rem;
}

.box-content .btn-outline-light {
    align-self: flex-start;
    font-family: 'Titillium Web', sans-serif;
    font-weight: 600;
    padding: 0.5rem 3.5rem;
    border-radius: 0;
    background-color: #fff;
    color: #2c65c6;
    margin-top: auto;
	 position: relative;
    z-index: 3;
}

.box-content .small-title::after {
    content: '';
    display: block;
    width: 50px;
    height: 1px;
    background: #fff;
    margin-top: 0.5rem;
}

.container.my-5 h1 {
    font-family: 'Titillium Web';
    font-weight: 900!important;
    color: #2c65c6;
    text-align: left;
    font-size: 2.5rem;
}

button.btn.btn-primary.search-submit{
    background-color: #2C65C6;
    border-color: #2C65C6;

}

.lead {
    font-family: 'Titillium Web';

}

.lead.mb-5 {
    max-width: 35rem;
}

/* Approfondimenti Template Styles */
.approfondimenti-section {
    background-color: #002361;
    position: relative;
    z-index: 0;
    padding: 4rem 0;
}

.approfondimenti-section.bg-primary {
    background-color: #002361!important;
    position: relative;
    z-index: 0;
}

.approfondimenti-section .container {
    position: relative;
    z-index: 1;
}

.approfondimenti-section .approfondimenti-card {
    height: 300px;
    width: 300px;
    background-size: cover;
    background-position: center;
    border-radius: 0.25rem;
    position: relative;
    overflow: hidden;
}

/* Override per la pagina approfondimenti */
.approfondimenti-section {
    position: relative;
    z-index: 1;
}

.approfondimenti-section .container {
    position: relative;
    z-index: 2;
    max-width: 936px;
}

.approfondimenti-section .approfondimenti-card {
    position: relative;
    z-index: 3;
    background-color: #fff;
}

.approfondimenti-section .card-overlay {
    /* background-image: linear-gradient(to bottom, rgba(255,255,255,0.5), rgba(16, 15, 88, 0.2)), url(/wp-content/themes/pharmanutra/overlay.png); */
    /* background-image: linear-gradient(to bottom, rgba(255,255,255,0.2), rgba(255,255,255,0.2)), url(/wp-content/themes/pharmanutra/overlay.png); */
    background-image: linear-gradient(to top, #c2d1ee, rgba(255, 255, 255, 0.6)), url(/wp-content/themes/pharmanutra/overlay.png);
    /* background-blend-mode: color-burn; */
    background-size: cover;
    background-position: center;}

/* Stile specifico per le card nella pagina approfondimenti */
.approfondimenti-page-card {
    position: relative;
    z-index: 2;
    height: 300px;
    width: 300px;
    background-size: auto;
    background-position: center;
    overflow: hidden;
    background-color: #fff;
    margin-top: -11px;
}

.approfondimenti-page-card .card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.approfondimenti-page-card .card-category {
    font-family: 'Titillium Web', sans-serif;
    font-size: 0.9rem;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
    color: #fff;
}

.approfondimenti-page-card .card-title {
    color: #fff;
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.2rem;
    margin-bottom: 1rem;
    line-height: 1.2;
    font-weight: bold;
    /* Add truncation */
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;

    /* Approximately 2 lines */
    max-height: 8.6rem; 
}

.approfondimenti-page-card .card-link {
    text-align: right;
    text-transform: uppercase;
    font-family: 'Titillium Web';
    font-weight: 800;
    color: white;
    text-decoration: none;
}

.approfondimenti-page-card .card-link:hover {
    text-decoration: underline;
}

.approfondimenti-section .row {
    min-height: 300px;
   
}

.page-template-approfondimenti .lead.mb-5 {
     
     max-width: 1024px!important;
    
}

/* Mantieni dimensioni card fisse anche su mobile */
@media (max-width: 767px) {
    .approfondimenti-page-card,
    .approfondimenti-section .approfondimenti-card {
        height: 300px;
        width: 300px;
        margin-left: auto;
        margin-right: auto;
    }
    
    .approfondimenti-section .col-md-4 {
        display: flex;
        justify-content: center;
    }
}
h2.title-number.mb-4 {
    font-family: 'Titillium Web';
    font-weight: 900;
    color: #223d6a;
    text-align: left;
    font-size: 2.1rem;
}

.stat-number {
    position: relative;
    font-size: 3rem;
    z-index: 2;
    color: #204c98;
}

.stat-number::before {
    content: attr(data-number);
    position: absolute;
    left: 8rem;
    top: -0.2em;
    opacity: 0.2;
    z-index: -1;
    transform: scale(1.5);
    color: #04bfbf;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 2rem;
}

@media (max-width: 768px) {
    .stats-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .stats-grid {
        grid-template-columns: 1fr;
    }
}

/* Azienda Template Styles */

.buttons-company {
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: center !important;
    max-width: 529px;
    padding-left: 22px;
}

@media (max-width: 767px) {
    .buttons-company {
        flex-direction: column !important;
        gap: 1rem;
        align-items: center;
        padding-left: 0;
    }
    
    .buttons-company > div {
        width: 100%;
        margin-bottom: 1rem;
    }
}

.azienda-content {
    font-family: 'Titillium Web', sans-serif;
}

.azienda-content h1 {
    color: #2C65C6;
    font-weight: bold;
}

.h2.h2.fw-bold {
    font-family: 'Titillium Web';
    font-weight: 900!important;
    color: #223d6a;
    text-align: left;
    font-size: 2.1rem;
}

.azienda-content .main-content {
    font-size: 1.1rem;
    line-height: 1.6;
}

.stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 2rem;
    padding: 2rem 0;
}

.stat-number {
    font-family: 'Titillium Web';
    font-size: 3.5rem;
    font-weight: 900;
    color: #204c98;
    margin-bottom: 0.5rem;
}

.stat-text {
    font-size: 1.2rem;
    color: #204C98;
    font-family: 'Titillium Web';
    font-weight: 900;
}


.buttons-section {
    background-color: #2C65C6;
    padding: 5rem;
    margin-left: -3%;
    margin-right: -3%;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
.buttons-section .btn {
    width: 100%;
    max-width: 462px;
    padding: 2.4rem 2rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    background-color: #04BFBF;
    border-color: #04BFBF;
    border-radius: 0px 0px 18px 0px;
}

.buttons-section .btn:hover {

    background-color: #04BFBF;
    border-color: #04BFBF;
    border-radius: 0px 0px 18px 0px;
}

.buttons-section a.btn {
    color: #fff;
    text-transform: uppercase;
    font-family: 'Titillium Web';
    font-weight: 800;
}


@media (max-width: 768px) {
    .stat-number {
        font-size: 2.5rem;
    }
    
    .stat-text {
        font-size: 1rem;
    }
}


h3.column-title-azienda {
    font-size: 2.2rem!important;
    font-weight: 900;
    z-index: 99;
    position: relative;
}

.arrow-box {
    margin-top: -83px;
    color: #04BFBF;
    font-weight: 700;
    font-size: 4rem;
    position: relative;
    z-index: 1;
    letter-spacing: -8.5px;
    margin-left: 30px;
    font-family: 'Manrope', sans-serif;
}



a.btn.btn-primary.btnvalues {
    background-color: #04BFBF;
    border-color: #04BFBF;
    border-radius: 0 0 18px 0;
    padding: 1rem;
    font-family: 'Titillium Web';
    font-weight: 900;
    color: #204C98;
    padding: 1.6rem;
    font-size: 1.8rem;
    line-height: 30px;
}


.page-template-azienda h2.display-4.fw-bold.mb-3 {
    font-family: 'Titillium Web';
    font-size: 2rem;
    font-weight: 900!important;
    color: #223d6a;
}

h2.h2.secondtit {
    color: #2c65c6 !important;
    font-size: 2rem !important;
}

/* Video container styles */
.video-container {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
}

.video-container .ratio {
    width: 100%;
    padding-bottom: 56.25%; /* 16:9 Aspect Ratio */
    position: relative;
    height: 0;
}

.video-container .ratio iframe,
.video-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media (max-width: 767px) {
    .video-container {
        margin: 0;
        width: 100%;
    }
}

.button-section.text-center.my-5 {
    background-color: #04bfbf;
    padding: 5rem;
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;}

a.btn.btn-primary.retc {
    background-color: #204C98;
    border-color: #204C98;
    border-radius: 0 0 18px 0;
    padding: 1rem;
    font-family: 'Titillium Web';
    font-weight: 900;
    color: #ffffff;
    padding: 1.6rem;
    font-size: 1rem;
    line-height: 30px;
}

/* Ricerca e Tecnologie Template Styles */
.accordion-section .accordion-item {
    border: none;
}
#accordion-section {
    margin-left: -3% !important;
    margin-right: -3%;
}

.accordion-button {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    font-size: 1rem;
    color: #212529;
    text-align: left;
    border: 0;
    border-radius: 0;
    overflow-anchor: none;
    transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out, border-radius .15s ease;
    align-content: center;
    padding: 3rem!important;
    margin-bottom: -12px;
}

button.accordion-button.collapsed{

    background-color: #2C65C6!important;
    
}

/* Remove default Bootstrap accordion icon */
.accordion-button::after {
    display: none;
}

/* Add custom Font Awesome icon */
.accordion-button::before {
    content: "\f102"; /* fa-angles-up icon code */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 1.5rem;
    transition: transform 0.2s ease;
    color: #0bb6bf;
    font-size: 2.1rem;
}

.accordion-button.collapsed::before {
    transform: rotate(180deg);
}

.accordion-button:not(.collapsed)::before {
    transform: rotate(0);
    color: #2c65c6;
}

.accordion-button:not(.collapsed) {
    color: #fff;
    background-color: #04BFBF!important;
    box-shadow: none;
}


.accordion-button:not(.collapsed) span.accordion-title {
    color: #2C65C6;
    
}


.accordion-button:not(.collapsed)::after {
    filter: brightness(0) invert(1);
}

.accordion-button:focus {
    border: none;
    box-shadow: none;
}

.accordion-header {
    background-color: #2C65C6;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 4px;
}

.accordion-header .accordion-title {
    color: #04BFBF;
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    transition: color 0.3s ease;
    font-size: 1.6rem;
}

.accordion-header[aria-expanded="true"] {
    background-color: #204C98;
}

.accordion-header[aria-expanded="true"] .accordion-title {
    color: #ffffff;
}

.accordion-body {
    padding: 2.5rem!important;
    background-color: #ffffff;
    border: none;
}

h3.column-title-azienda.fw-bold {
    max-width: 216px;
}



.cards-container {
    scroll-behavior: smooth;
    overflow-x: auto;
    user-select: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
}

/* Hide scrollbar but keep functionality */
.cards-container::-webkit-scrollbar {
    display: none;
}

.cards-container {
    -ms-overflow-style: none;
    scrollbar-width: none;
}


p.text-center {
    color: #2C65C6;
    font-family: 'Titillium Web';
    font-size: 1.3rem!important;
    font-weight: 800!important;
    text-transform: uppercase;
}


.page-template-ricerca-tecnologie .mb-4 .col {
    text-align: center;
    width: 100%;
}

.page-template-ricerca-tecnologie .mb-4 img {
    
}

.page-template-ricerca-tecnologie .accordion-body h4.mb-4 {
    margin-bottom: 3rem !important;
    color: #2C65C6;
    font-family: 'Titillium Web';
    font-weight: 800;
    font-size: 1.9rem;
    margin-top: 2.1rem;
}


.accordion-body p {
    font-family: 'Titillium Web';
    font-size: 1.1rem;
    font-weight: 300;
}

.accordion-body .col-md-6 img {
    max-width: 406px;
    margin: 0 auto !important;
}

.page-template-ricerca-tecnologie .accordion-body .col-md-6:first-child {
    text-align: center;
    
}

.page-template-ricerca-tecnologie .accordion-body img.img-fluid.mb-3 {
    max-height: 90px;
    max-width: fit-content;
}



.accordion-body a.btn.btn-primary {
    color: #ffffff;
    background-color: #2C65C6;
    border-color: #2C65C6;
    text-transform: uppercase;
    font-family: 'Titillium Web';
    font-weight: 800;
    max-width: 462px;
    padding: 2.2rem 2.8rem;
    border-radius: 0px 0px 18px 0px;
}

.buttons-section.bg-primary.text-white.py-5.mb-5 .col-md-6.mb-3.mb-md-0 {
    display: flex;
    justify-content: center;
    align-items: center;
}


.page-template-ricerca-tecnologie h2.h2.mb-5 {
    font-family: 'Titillium Web';
    font-weight: 900 !important;
    color: #223d6a;
    text-align: left;
    font-size: 2.1rem;
}


.current-menu-item a:after {
    content: '';
    display: block;
    width: 50px;
    height: 2px;
    background: #2C65C6;
    margin-top: 1px;
    margin-left: -10px;
}

/* Dropdown Menu Styling - Bootstrap Version */
@media screen and (min-width: 992px) {
    /* Target Bootstrap navbar structure - ensure hidden by default */
    .navbar-nav .dropdown-menu,
    .navbar-nav .sub-menu,
    .navbar-nav ul ul,
    #primary-menu ul ul {
        background-color: #2C65C6;
        border: none;
        border-radius: 0;
        border-top-left-radius: 12px;
        border-bottom-right-radius: 12px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
        padding: 20px;
        min-width: 240px;
        display: none; /* Hide by default */
        flex-wrap: wrap;
        flex-direction: row;
        position: absolute;
        top: 100%;
        left: 0; /* Will be centered with JS or positioned with CSS below */
        z-index: 1000;
    }

    
    
    /* Properly position dropdown under its parent */
    .navbar-nav li.menu-item-has-children,
    .navbar-nav li.dropdown,
    #primary-menu li.menu-item-has-children {
        position: relative;
    }
    
    .navbar-nav li.menu-item-has-children > .dropdown-menu,
    .navbar-nav li.menu-item-has-children > .sub-menu,
    .navbar-nav li.menu-item-has-children > ul,
    .navbar-nav li.dropdown > .dropdown-menu,
    #primary-menu li.menu-item-has-children > ul {
        left: 0;
        margin-left: 0;
    }
    
    /* Show dropdown only on hover */
    .navbar-nav li:hover > .dropdown-menu,
    .navbar-nav li:hover > .sub-menu,
    .navbar-nav li:hover > ul,
    #primary-menu li:hover > ul {
        display: flex !important;
    }
    
    /* Dropdown arrow indicator for parent menu items - just one */
    .navbar-nav li.menu-item-has-children > a::before,
    .navbar-nav li.dropdown > a::before,
    #primary-menu li.menu-item-has-children > a::before {
        content: "\f102";
        font-family: "Font Awesome 6 Free";
        display: inline-block;
        margin-left: 3px;
        color: inherit;
        font-weight: 700;
        transform: scaleY(-1); /* Changed from rotate(90deg) to flip vertically */
        transition: transform 0.3s ease;
        font-size: 0.8em;
        position: relative;
        top: 4px;
        text-decoration: none;
        border: none;
        line-height: 1;
        float: right;
        padding-left: 0px;
        letter-spacing: -3px;
    }
    
    /* Rotate arrows when dropdown is open */
    .navbar-nav li.menu-item-has-children:hover > a::before,
    .navbar-nav li.dropdown:hover > a::before,
    #primary-menu li.menu-item-has-children:hover > a::before {
        transform: scaleY(1); /* Changed from rotate(-90deg) to revert the flip */
    }
    
    /* Force white text color for dropdown menu items */
    .navbar-nav .dropdown-menu a,
    .navbar-nav .sub-menu a,
    .navbar-nav ul ul a,
    #primary-menu ul ul a {
        color: white !important;
        padding: 8px 10px;
        white-space: normal;
        width: 297px;
        margin-bottom: 5px;
        font-family: 'Titillium Web', sans-serif;
        text-decoration: none;
    }
    
    /* Override any other styles that might show the underline */
    .navbar-nav .dropdown-item:after,
    .navbar-nav .sub-menu a:after,
    .navbar-nav ul ul a:after,
    .navbar-nav ul ul li.current-menu-item a:after,
    .navbar-nav .sub-menu li.current-menu-item a:after,
    #primary-menu ul ul li.current-menu-item a:after {
        display: none !important;
    }
    
    /* Remove any double arrows in submenus */
    .navbar-nav .dropdown-menu li.menu-item-has-children > a::before,
    .navbar-nav .sub-menu li.menu-item-has-children > a::before,
    #primary-menu ul ul li.menu-item-has-children > a::before {
        content: none;
    }
    
    /* Make sure current-menu-item with children shows both the underline and arrow */
    .current-menu-item.menu-item-has-children > a:after,
    .current-menu-item.dropdown > a:after {
        content: '';
        display: block;
        width: 50px;
        height: 2px;
        background: #2C65C6;
        margin-top: 1px;
        margin-left: -10px;
    }
    
    /* Special handling for current menu items in dropdowns */
    .navbar-nav .dropdown-menu .current-menu-item > a,
    .navbar-nav .sub-menu .current-menu-item > a,
    #primary-menu ul ul .current-menu-item > a {
        background-color: rgba(255, 255, 255, 0.2);
    }
}

/* Mobile menu handling */
@media screen and (max-width: 991px) {
    .navbar-nav .dropdown-menu,
    .navbar-nav .sub-menu,
    #primary-menu ul ul {
        background: transparent;
        border: none;
        box-shadow: none;
        padding-left: 20px;
        margin-left: 0;
        position: static;
        width: 100%;
    }
    
    .navbar-nav .dropdown-item,
    .navbar-nav .sub-menu a,
    #primary-menu ul ul a {
        color: #fff !important;
        width: 100%;
    }
}

/*Etica*/
.page-template-etica .lead.mb-5 {
    max-width: 66.6rem;
}

/* Stili comuni per tutte le colonne nella pagina etica */
.page-template-etica .row.mb-5,
.page-template-etica .row:has(.card) {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    max-width: 1320px;
}

.page-template-etica .row.mb-5 .col-md-6,
.page-template-etica .row:has(.card) .col-md-6 {
    flex: 0 0 46%;
    max-width: 46%;
    width: 100%;
}

@media (max-width: 767px) {
    .page-template-etica .row.mb-5 .col-md-6,
    .page-template-etica .row:has(.card) .col-md-6 {
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 2rem;
    }
}


.page-template-etica h2.h2.fw-bold.mb-5 {
    max-width: 1027px;
    font-size: 1.8rem;
}

.page-template-etica h3.column-title-azienda.fw-bold {
    max-width: 433px;
    font-family: 'Titillium Web';
    font-size: 1.6rem !important;
    font-weight: 900 !important;
    color: #223D6A;
}

h3.title-etica-box {
    z-index: 2;
    position: relative;
    font-family: 'Titillium Web';
    font-weight: 800 !important;
    color: #204C98;
    max-width: 250px;
    min-height: 67px;
}



.page-template-etica .img-fluid {
    max-width: 500px;
    height: auto;
    width: 100%!important;
}

.page-template-etica .col-12 {
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    max-width: 1128px !important;
    flex-wrap: wrap;
    margin-left: 15px;
}

.page-template-etica a.btn.btn-primary.btnvalues {
    background-color: #204c98;
    border-color: #204c98;
    border-radius: 0 0 18px 0;
    padding: 1rem;
    font-family: 'Titillium Web';
    font-weight: 900;
    color: #fff;
    padding: 1.6rem;
    font-size: 1.2rem;
    line-height: 30px;
    width: 100%;
    height: 6rem;
    position: absolute;
    bottom: 0;
    left: 0;
}


h3.title-etica-box.fw-bold::after {
    color: #04BFBF;
    font-weight: 700;
    font-size: 5rem;
    position: absolute;
    z-index: -1;
    letter-spacing: -23.5px;
    margin-left: -41px;
    font-family: 'Manrope', sans-serif;
    content: '>>>>>>>';
    margin-top: -2rem;
}

.page-template-etica .col-md-6 {
    display: flex;
    flex-direction: column;
    position: relative;
    min-height: 428px; /* Adjust this value based on your needs */
}


h3.title-etica-box.fw-bold:last-child::after {
    display: none; 
}

.page-template-etica .col-md-6:last-child h3.title-etica-box.fw-bold::after {
    color: #04BFBF;
    font-weight: 700;
    font-size: 5rem;
    position: absolute;
    z-index: -1;
    letter-spacing: -22.5px;
    margin-left: -108px;
    font-family: 'Manrope', sans-serif;
    content: '>>>>>>';
    margin-top: -65px;
}

.page-template-azienda h3.column-title-azienda.fw-bold:after {
    color: #04BFBF;
    font-weight: 700;
    font-size: 5rem;
    position: absolute;
    z-index: -1;
    letter-spacing: -22.5px;
    margin-left: -108px;
    font-family: 'Manrope', sans-serif;
    content: '>>>>>>';
    margin-top: -31px;
}

.page-template-azienda h3.column-title-azienda {
    font-size: 2.2rem !important;
    font-weight: 900 !important;
    z-index: 99;
    position: relative;
    color: #204C98 !important;
}

.page-template-azienda .buttons-section {
    background-color: #2C65C6;
    padding: 5rem;
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.page-template-azienda .buttons-section .container {
    max-width: 1320px;
    margin: 0 auto;
    width: 100%;
    padding: 0 15px;
}

main#primary {
    overflow: hidden;
}

body {
    overflow-x: hidden;
}

.buttons-section.bg-primary.text-white.py-5.mb-5 {
    padding: 5rem;
    position: relative;
    width: 100vw;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Single Post Styles */
.single-header {
    position: relative;
    height: 44vh;
    max-width: 1270px;
    margin: 0 auto;
    margin-bottom: 3rem;
}

.single-header .featured-image {
    height: 100%;
    background-size: cover;
    background-position: center;
}

.single-header .overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background: rgba(0, 0, 0, 0.5); */
    background-image: linear-gradient(to top, #043597, rgba(255, 255, 255, 0.6));
    background-repeat: no-repeat;
    background-blend-mode: color-burn;
    background-position: right;
    background-size: cover;
    display: flex;
    align-items: center;
}

.single-header .container {
    position: relative;
    padding: 2rem;
    height: 100%;  /* Ensure container takes full height */
}

.single-header .category-name {
    color: #fff;
    text-transform: uppercase;
    font-family: 'Titillium Web', sans-serif;
    font-size: 1rem;
    margin-bottom: 1rem;
    margin-top: 6vh;
}

.single-header .entry-title {
    color: #fff;
    font-family: 'Titillium Web', sans-serif;
    font-size: 3rem;
    font-weight: 600;
    margin-bottom: 2rem;
    max-width: 800px;
}

.single-header .site-logo {
    margin-top: 2rem;
    position: absolute;
    bottom: 2rem;
    left: 2rem;
}

.single-header .site-logo img {
    height: 50px;
    width: auto;
    filter: brightness(0) invert(1);
}

.entry-content {
    max-width: 1245px;
    margin: 0 auto;
    padding: 2rem 0;
    font-family: 'Titillium Web', sans-serif;
}

.post-date {
    text-align: right;
    font-family: 'Titillium Web', sans-serif;
    color: #666;
    margin: 2rem 0;
}

/* Related Posts Styles */
.related-posts {
    margin: 4rem 0;
    max-width: 1246px;
}

.related-posts h2 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    color: #002361;
    margin-bottom: 2rem;
}

.related-posts-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

.related-post-card {
    text-decoration: none;
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    height: 300px;
    width: 300px;
}

.card-image {
    height: 100%;
    background-size: cover;
    background-position: center;
}

.card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background-image: linear-gradient(to bottom, rgba(21, 11, 160, 0.5), rgba(255, 255, 255, 0.8)), url(/wp-content/themes/pharmanutra/overlay-related.png); */
    /* background-image: linear-gradient(to bottom, rgba(255,255,255,0.2), rgba(255,255,255,0.2)), url(/wp-content/themes/pharmanutra/overlay.png); */
    background-image: linear-gradient(to top, #c2d1ee, rgba(255, 255, 255, 0.6)), url(/wp-content/themes/pharmanutra/overlay.png);
    background-blend-mode: color-burn;
    background-size: cover;
    background-position: center;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.card-overlay h3{
    color: white!important;
}

.card-category {
    color: #fff;
    text-transform: uppercase;
    font-family: 'Titillium Web', sans-serif;
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
}

.card-title {
    color: #002361;
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.2rem;
    font-weight: bold;
    margin: 0;
    /* Add truncation */
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 8.6rem; /* Approximately 2 lines */
}

@media (max-width: 768px) {
    .related-posts-grid {
        grid-template-columns: 1fr;
    }
    
    .single-header .entry-title {
        font-size: 2rem;
    }
}


.page-template-home-page .card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* background-image: linear-gradient(to bottom, rgba(0,0,0,0.5), rgba(16, 15, 88, 0.8)), url(/wp-content/themes/pharmanutra/overlay.png); */
    /* background-image: linear-gradient(to bottom, rgba(255,255,255,0.2), rgba(255,255,255,0.2)), url(/wp-content/themes/pharmanutra/overlay.png); */
    background-image: linear-gradient(to top, #c2d1ee, rgba(255, 255, 255, 0.6)), url(/wp-content/themes/pharmanutra/overlay.png);
    /* background-blend-mode: color-burn; */
    background-size: cover;
    background-position: center;
    padding: 2rem;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.page-template-home-page .approfondimenti-card .card-title {
    color: #ffffff;
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.5rem;
    margin-bottom: 1rem;
    line-height: 1.2;
    font-weight: bold;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-height: 8.6rem;
}

/* Area Terapeutica Single Template Styles */

/* Header Section */
.area-single-header {
    position: relative;
    height: 34vh;
    min-height: 480px;
    background-size: cover;
    background-position: center;
    color: #fff;
    z-index: 2;
    border-radius: 0 0px 40px 0px;
	display: flex;
    align-items: center;
}
.area-header-overlay::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  mix-blend-mode: multiply;
  background: linear-gradient(to left, transparent, rgba(44, 101, 198, 1));
}
.area-header-title,
.area-header-text {
  position: relative;
  z-index: 2;
}
.area-header-overlay {
  position: relative;
  z-index: 1;
}
.area-header-overlay > .overlay-svg {
  position: relative;
  z-index: 2; /* sopra l'overlay */
	left:0;
}
.area-header-text p {
    color: white !important;
    font-family: 'Titillium Web', sans-serif!important;
    font-size: 1.2rem !important;
}
.area-header-text span {
    color: white !important;
    font-family: 'Titillium Web', sans-serif!important;
    font-size: 1.2rem !important;
}
.area-header-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /*background: rgba(0, 0, 0, 0.5);*/
    display: flex;
    align-items: center;
    border-radius: 0 0px 40px 0px;
}

.area-header-title {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    font-size: 3rem;
    margin-bottom: 1.5rem;
    color: #fff;
}

.area-header-text {
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.2rem;
    
}

/* Content Section */
.area-content-section {
    position: relative;
    z-index: 1;
}

.area-content-section p span {
    font-family: 'Titillium Web', sans-serif!important;
    
}

.area-main-content {
    padding: 2rem;
    font-family: 'Titillium Web', sans-serif;
    color: #404040;
}

.area-main-content h2 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    color: #223d6a;
    font-size: 2rem;
    margin-bottom: 1.5rem;
}

.area-main-content .accordion-item{
    margin-bottom: 1rem;
}
.area-main-content .accordion-item h2{
    margin-bottom: 0;
}

.area-main-content p {
    font-size: 1.1rem;
    line-height: 1.6;
}

/* Sidebar Styles */
.area-sidebar {
    padding: 0;
}
.sidebar-link {
   
    text-decoration: none;
    cursor: pointer;
    
}

.sidebar-link span.link-text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    display: inline-block;
    width: 250px;
}


.sidebar-inner {
    background-color: #C2D1EE;
    padding: 1rem;
    height: 107%;
    margin-right: -50%;
    margin-top: -32%;
    z-index: 0;
    position: relative;
    padding-top: 5rem;
    padding-bottom: 4rem;
    overflow: hidden;
    padding-left: 2rem;
}

/* Mobile styles for the sidebar */
@media (max-width: 991px) {
    .sidebar-inner {
        margin-right: 0;
        margin-top: 0;
        height: auto;
        padding: 2rem;
        border-radius: 8px;
        width: 191%;
    }
    
    .area-sidebar {
        padding: 0 15px;
        margin-top: 30px;
    }
    .sidebar-links {
        max-width: 100%!important;
    }

}

/* FIX styles for the sidebar */
@media (max-width: 1291px) {
    .sidebar-inner {
        margin-right: -22% !important;
    }
    


}



.sidebar-title {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 800;
    color: #2C65C6;
    font-size: 1.5rem;
    margin-bottom: 1rem;
}

.sidebar-link {
    display: block;
    font-family: 'Titillium Web', sans-serif;
    color: #223d6a;
    text-decoration: none;
    font-size: 1.1rem;
    font-weight: 600;
    margin: 0.5rem 0;
    transition: color 0.2s ease;
}

.sidebar-link:hover {
    color: #204C98;
}

.sidebar-link:last-child::after {
    content: '';
    display: block;
    height: 1px;
    background-color: #223D6A;
    margin: 1rem 0;
}

.link-arrow {
    font-weight: 900;
    font-family: 'Manrope', sans-serif;
    color: #2C65C6;
    font-size: 2.1rem;
    float: right;
    margin-top: -15px;
}

.sidebar-links {
    max-width: 300px;
}

.sidebar-text-block {
    font-family: 'Titillium Web', sans-serif;
    color: #223d6a;
    font-size: 1rem;
    margin: 0.5rem 0;
}

.sidebar-divider {
    height: 1px;
    background-color: #223D6A;
    margin: 1rem 0;
}

.sidebar-section {
    margin-bottom: 2rem;
    max-width: 300px;
    margin-top: 2rem;
}

/* Sidebar Section 4 Styles */
.sidebar-section {
    margin-top: 20px;
}

.sidebar-title {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 10px;
}

.sidebar-text-block {
    margin-bottom: 15px;
}

.sidebar-divider {
    border-top: 1px solid #ddd;
    margin: 10px 0;
}

/* Products Carousel Section */
.area-products-section {
    position: relative;
    padding: 4rem 0;
    overflow: hidden;
    z-index: 1;
}

.split-background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 0;
    display: flex;
    flex-direction: row; /* Changed from column to row */
}

.split-background .bg-white {
    flex: 0 0 44.333%;
    background-color: #fff;
}

.split-background .bg-blue {
    flex: 0 0 66.666%; /* Set to fixed width of 2/3 */
    background-color: #002361;
}

.products-section-title {
    position: relative;
    z-index: 401;
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    color: #204C98;
    font-size: 2rem;
    margin-bottom: 4rem;
    text-align: start;
    margin-top: -3rem;
}

.products-carousel {
    position: relative;
    z-index: 1;
    margin-top: 3rem;
}

.products-carousel .nav-arrow {
    font-family: 'Manrope', sans-serif;
    color: #04BFBF;
    font-size: 70px;
    font-weight: bold;
    letter-spacing: -21px !important;
}

.products-carousel-inner {
    display: flex;
        gap: 3.5rem;
        overflow-x: auto;
        padding: 1rem 0;
        scroll-snap-type: x mandatory;
        -ms-overflow-style: none;
        scrollbar-width: none;
        margin-left: 3rem;
}

.products-carousel-inner::-webkit-scrollbar {
    display: none;
}

.product-card {
    flex: 0 0 334px;
    max-width: 350px;
    background-color: #fff;
    border-radius: 0.25rem;
    overflow: hidden;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    scroll-snap-align: start;
    transition: transform 0.3s ease;
    height: 350px;
    background-size: contain !important;
    background-repeat: no-repeat;
}

.product-card:hover {
    transform: translateY(-5px);
}

.product-card-link {
    display: block;
    text-decoration: none;
    height: 100%;
}

.product-image-wrapper {
    height: 200px;
    overflow: hidden;
}

.product-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.product-card:hover .product-image {
    transform: scale(1.05);
}

.product-content {
    padding: 1.5rem;
}

.product-title {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 500;
    color: #002361;
    font-size: 1.3rem;
    margin-bottom: 0.5rem;
    position: relative;
    margin-bottom: 15px;
    padding-bottom: 10px;
    padding-left: 14px;
    padding-top: 12px;
}

.product-title:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 11px;
    width: 40px;
    height: 2px;
    background-color: #707070;
}

.product-excerpt {
    font-family: 'Titillium Web', sans-serif;
    color: #404040;
    font-size: 0.9rem;
    margin-bottom: 1rem;
}

.product-more {
    font-family: 'Titillium Web', sans-serif;
    color: #204C98;
    font-weight: 700;
    font-size: 0.9rem;
    text-transform: uppercase;
}

.carousel-controls {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 2rem;
    position: relative;
    width: 100%;
}

.carousel-prev,
.carousel-next {
    width: 50px;
    height: 50px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: transparent;
    color: #04BFBF;
}

.carousel-prev {
    left: 15px;
}

.carousel-next {
    right: 15px;
}

/* Custom carousel controls for aree-terapeutiche-singlepage */
.page-template-aree-terapeutiche-singlepage .carousel-prev,
.page-template-aree-terapeutiche-singlepage .carousel-next {
    background: transparent;
    box-shadow: none;
    border: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    padding: 0;
    margin: 0;
}

.page-template-aree-terapeutiche-singlepage .carousel-prev {
    left: 0;
}

.page-template-aree-terapeutiche-singlepage .carousel-next {
    right: 0;
}

.page-template-aree-terapeutiche-singlepage .products-carousel {
    position: relative;
    padding: 0 40px; /* Add padding to make room for the controls */
}

.page-template-aree-terapeutiche-singlepage .nav-arrow {
    color: #04BFBF;
    font-size: 70px;
    font-weight: bold;
    letter-spacing: -21px !important;
}

/* Dropdown Menu Styling - Bootstrap Version */
@media screen and (min-width: 992px) {
    /* Target Bootstrap navbar structure - ensure hidden by default */
    .navbar-nav .dropdown-menu,
    .navbar-nav .sub-menu,
    .navbar-nav ul ul,
    #primary-menu ul ul {
        background-color: #2C65C6;
        border: none;
        border-radius: 0;
        border-top-left-radius: 32px;
        border-bottom-right-radius: 32px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
        padding: 20px;
        max-width: 936px!important;
        display: none; /* Hide by default */
        flex-wrap: wrap;
        flex-direction: row;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        text-transform: uppercase;
        margin-left: -24vw !important;
    }
    /*only for approfondimenti*/
    li.approfondimenti > .dropdown-menu,
    li.approfondimenti > .sub-menu,
    li.approfondimenti > ul,
    .menu-item.approfondimenti > .dropdown-menu,
    .menu-item.approfondimenti > .sub-menu,
    .menu-item.approfondimenti > ul,
    #primary-menu li.approfondimenti > ul {
        background-color: #2C65C6;
        border: none;
        border-radius: 0;
        border-top-left-radius: 32px;
        border-bottom-right-radius: 32px;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.2);
        padding: 20px;
        min-width: 1vw;
        max-width: 300px!important;
        display: none; /* Hide by default */
        flex-wrap: wrap;
        flex-direction: row;
        position: absolute;
        top: 100%;
        left: 0;
        z-index: 1000;
        text-transform: uppercase;
        margin-left: -2px !important;
    }

       /* Specifically target links in submenu of approfondimenti */
    li.approfondimenti > .sub-menu a,
    .menu-item.approfondimenti > .sub-menu a,
    #primary-menu li.approfondimenti > ul a {
        color: white !important;
        padding: 8px 10px;
        white-space: normal;
        width: 206px;
        margin-bottom: 5px;
        font-family: 'Titillium Web', sans-serif;
        text-decoration: none;
    }

    .navbar-nav{
        gap: 0 !important;
    }


    }


    /* Show dropdown only on hover */
    .navbar-nav li:hover > .dropdown-menu,
    .navbar-nav li:hover > .sub-menu,
    .navbar-nav li:hover > ul,
    #primary-menu li:hover > ul {
        display: flex !important;
        justify-content: center;
    }
    
    
    
    /* Rotate arrows when dropdown is open */
    .navbar-nav li.menu-item-has-children:hover > a::before,
    .navbar-nav li.dropdown:hover > a::before,
    #primary-menu li.menu-item-has-children:hover > a::before {
        transform: scaleY(1); /* Changed from rotate(-90deg) to revert the flip */
    }
    
    /* Override any other styles that might show the underline */
    .navbar-nav .dropdown-item:after,
    .navbar-nav .sub-menu a:after,
    .navbar-nav ul ul a:after,
    .navbar-nav ul ul li.current-menu-item a:after,
    .navbar-nav .sub-menu li.current-menu-item a:after,
    #primary-menu ul ul li.current-menu-item a:after {
        display: none !important;
    }
    
    /* Make sure current-menu-item with children shows both the underline and arrow */
    .current-menu-item.menu-item-has-children > a:after,
    .current-menu-item.dropdown > a:after {
        content: '';
        display: block;
        width: 50px;
        height: 2px;
        background: #2C65C6;
        margin-top: 1px;
        margin-left: -10px;
    }


/* Mobile menu handling */
@media screen and (max-width: 991px) {
    .navbar-nav .dropdown-menu,
    .navbar-nav .sub-menu,
    #primary-menu ul ul {
        background: transparent;
        border: none;
        box-shadow: none;
        padding-left: 20px;
        margin-left: 0;
        position: static;
        width: 100%;
    }
    
    .navbar-nav .dropdown-item,
    .navbar-nav .sub-menu a,
    #primary-menu ul ul a {
        color: #fff !important;
        width: 100%;
    }
}

@media (max-width: 991px) {
    .area-main-content, 
    .area-sidebar {
        margin-bottom: 2rem;
    }
    
    .sidebar-inner {
        height: auto;
    }
    
    .navbar-nav li.menu-item-has-children > a::before,
    .navbar-nav li.dropdown > a::before,
    #primary-menu li.menu-item-has-children > a::before {
        display: none;
    }
}

@media (max-width: 767px) {
    .area-header-title {
        font-size: 2.5rem;
    }
    
    .product-card {
        flex: 0 0 263px;
        max-width: 263px;
    }

    .products-carousel-inner {
        display: flex;
            gap: 3.5rem;
            overflow-x: auto;
            padding: 1rem 0;
            scroll-snap-type: x mandatory;
            -ms-overflow-style: none;
            scrollbar-width: none;
            margin-left: 0rem;
    }
    .custom-logo {
        max-height: 28px!important;
    }
}

/* Prodotti Page Styles */
.prodotti-page {
    padding: 4rem 0;
    font-family: 'Titillium Web', sans-serif;
}

.prodotti-page .prodotti-title {
    color: #003366;;
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
}

.prodotti-page .categories-bar {
    background-color: #CCD8E3;
    padding: 2rem!important;
    margin: 2rem 0;
    margin-left: -11%!important;
    margin-right: -11%!important;
    display: flex;
    justify-content: center;
}

.prodotti-page .category-link {
    color: #204C98;
    text-decoration: none;
    font-weight: 600;
    margin-right: 2rem;
    transition: color 0.3s ease;
    cursor: pointer;
}

.prodotti-page .category-link.active {
    color: #002361;
    position: relative;
}

.prodotti-page .category-link.active::after {
    content: '';
    display: block;
    width: 100%;
    height: 2px;
    background: #204C98;
    position: absolute;
    bottom: -5px;
    left: 0;
}

.prodotti-page .products-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
    max-width: 1250px;
    margin: 0 auto;
}

.prodotti-page .product-box {
    position: relative;
    height: 372px;
    max-width: 372px;
    background-size: contain!important;
    background-position: center center!important;
    background-repeat: no-repeat;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.prodotti-page .info-bar,
.page-template-aree-terapeutiche-singlepage .info-bar {
    background-color: #ccd8e38f!important;
    padding: 1rem;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    cursor: pointer;
    text-align: left;
    font-family: 'Titillium Web', sans-serif;
    font-weight: 600;
    color: #204C98;
    transition: all 0.3s ease;
    padding-left: 2rem;
    border-radius: 0 19px 0 0;
}

.prodotti-page .info-bar span:first-child,
.page-template-aree-terapeutiche-singlepage .info-bar span:first-child {
    margin-left: 1rem;
}


.prodotti-page .info-bar span:last-child,
.page-template-aree-terapeutiche-singlepage .info-bar span:last-child {
    float: right;
    font-family: 'Manrope', sans-serif;
    font-weight: 700;
    font-size: 2.3rem;
    letter-spacing: -10px;
    transition: transform 0.3s ease;
    display: inline-block;
    transform: rotate(269deg);
    position: relative;
    z-index: 10;
    margin-bottom: -18px;
    margin-top: -10px;
}

.prodotti-page .info-bar.active,
.page-template-aree-terapeutiche-singlepage .info-bar.active {
    background-color: transparent;
}

.prodotti-page .info-bar.active span:first-child,
.page-template-aree-terapeutiche-singlepage .info-bar.active span:first-child {
    opacity: 0;
}

.prodotti-page .info-bar.active span:last-child,
.page-template-aree-terapeutiche-singlepage .info-bar.active span:last-child {
    transform: rotate(90deg);
    position: absolute;
    right: 1rem;
    bottom: 10px;
    color: #204C98;
    z-index: 10;
    margin-bottom: -8px;
}

.prodotti-page .product-overlay,
.page-template-aree-terapeutiche-singlepage .product-overlay {
    display: none;
    position: absolute;
    /* top: 70px!important; */
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgb(204 216 227 / 94%)!important;
    padding: 2rem;
    padding-top: 3rem;
    color: #204C98;
    z-index: 1;
    border-radius: 0 19px 0 0;
}
.prodotti-page .product-overlay .product-links,
.page-template-aree-terapeutiche-singlepage .product-overlay .product-links {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.page-template-aree-terapeutiche-singlepage .product-overlay .product-links{
    gap: 0;
}
.prodotti-page .product-overlay .product-links a,
.page-template-aree-terapeutiche-singlepage .product-overlay .product-links a {
    color: #003366;
    text-decoration: none;
    font-weight: 400;
    font-size: 1rem;
    transition: color 0.3s ease;
}
.prodotti-page .product-overlay .product-links a:hover,
.page-template-aree-terapeutiche-singlepage .product-overlay .product-links a:hover {
    text-decoration: underline;
    
}

.prodotti-page .product-overlay h3,
.page-template-aree-terapeutiche-singlepage .product-overlay h3 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 700;
    color: #204C98;
    margin-bottom: 1rem;
    font-size: 1rem;
}

.prodotti-page .product-overlay p,
.page-template-aree-terapeutiche-singlepage .product-overlay p {
    color: #003366;
    margin-bottom: 2rem;
    font-size: 1.1rem;
    line-height: 1.3rem;
    font-weight: 400;
    display: -webkit-box;
    /* overflow: hidden;
    text-overflow: ellipsis;
    max-height: 84.48px; */
}

.prodotti-page .product-links {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.prodotti-page .product-overlay{
    padding: 2rem!important;
}

.prodotti-page .product-links a {
    display: inline-block;
    color: #003366;
    text-decoration: none;
    font-weight: 400;
    font-size: 1rem;
    transition: color 0.3s ease;
    margin-bottom: -18px;
}

.page-template-aree-terapeutiche-singlepage .product-overlay .product-links a:before,
.prodotti-page .product-links a:before {
    content: '';
    display: inline-block;
    width: 10px;
    height: 1px;
    background-color: #003366;
    border-radius: inherit;
    margin-right: 0.5rem;
    margin-bottom: 4px;
}


a.category-link:first-child {
    margin-left: 0;
}

.prodotti-page .product-links a:hover {
    color: #002361;
}

@media (max-width: 991px) {
    .prodotti-page .products-grid {
        grid-template-columns: 1fr;
    }
    
    .prodotti-page .product-box {
        height: 408px;
    }
    .stat-number::before {
        left: 6rem;
    }
    .single-header .site-logo img{
        display: none;
    }

   .aree-terapeutiche-menu ul.sub-menu.mobile-submenu.show {
    min-height: 50vh !important;
    }
}

@media (max-width: 570px) {
    
    .stat-number::before {
        left: 40vw;
    }
}

a.nav-link:Hover {
    background-color: rgba(255, 255, 255, 0.2);
}

/* Horizontal scrolling categories for mobile */
.categories-scroll-container {
    display: flex;
    flex-wrap: nowrap;
    padding-bottom: 5px;
}

.categories-scroll-container .category-link {
    flex: 0 0 auto;
    white-space: nowrap;
    margin-right: 1.5rem;
}

@media (max-width: 767px) {
    .categories-scroll-container {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* IE and Edge */
        padding-left: 30px;
    }
    
    .categories-scroll-container::-webkit-scrollbar {
        display: none; /* Chrome, Safari, Opera */
    }
    
    a.category-link:first-child {
        margin-left: 0;
    }
    .prodotti-page .categories-bar {
        margin-right: -3% !important;
    }
    .prodotti-page .products-grid{
        margin-left: 2%;
    }
}


/* Standard Page Template Styles */
.standard-page-container {
    padding: 3rem 0;
}

.standard-page-container .page-header h1 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 900;
    color: #002361;
    margin-bottom: 1.5rem;
    font-size: 2.5rem;
}

.standard-page-container .entry-content {
    font-family: 'Titillium Web', sans-serif;
    color: #484848;
    font-size: 1.125rem;
    line-height: 1.6;
}

.standard-page-container .entry-content h2 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 700;
    color: #2C65C6;
    margin-top: 2rem;
    margin-bottom: 1rem;
    font-size: 1.75rem;
}

.standard-page-container .entry-content h3 {
    font-family: 'Titillium Web', sans-serif;
    font-weight: 700;
    color: #204C98;
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
    font-size: 1.5rem;
}

.standard-page-container .entry-content a {
    color: #2C65C6;
    font-weight: 600;
    text-decoration: none;
}

.standard-page-container .entry-content a:hover {
    text-decoration: underline;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .standard-page-container .page-header h1 {
        font-size: 2rem;
    }
    
    .standard-page-container {
        padding: 2rem 0;
    }
}

.footer-widgets-primary a, p, span, h1, h2, h3, h4, h5, h6 {
    font-family: 'Titillium Web', sans-serif;
    
}

.wp-social-link-linkedin,
.wp-social-link-instagram,
.wp-social-link-facebook,
.wp-social-link-twitter,
.wp-social-link-youtube,
.wp-social-link-whatsapp,
.wp-social-link-pinterest,
.wp-social-link-telegram,
.wp-social-link-tiktok,
.wp-social-link-reddit,
.wp-social-link-snapchat {
    background-color: #76899d00!important;
}


/* Overall mobile Fixes */
@media (max-width: 767px) {

    h2.mb-4.intro-title {
        color: #002361;
        font-family: 'Titillium Web';
        font-size: 35px;
        font-weight: 900;
        line-height: 1;
        margin-top: 18px;
    }
    p.intro-text {
        font-family: 'Titillium Web';
        font-size: 19px;
        color: #484848;
        margin-top: 3rem;
    }
    h2.mb-0 {
        color: #2C65C6;
        font-family: 'Titillium Web';
        font-size: 37px;
        font-weight: 900;
        margin-top: 24px;
    }
    .home-approfondimenti h2.mb-4 {
        margin-top: 1rem;
        font-family: 'Titillium Web';
        font-size: 35px;
        font-weight: 900;
        color: #002361;
    }
    .home-bottom-cta {
        min-height: 319px!important;
    }
    .mobile-nav-group {
        margin-top: 0px;}
    
    .my-5 {
            margin-top: 1rem!important;}  
    h2 {font-size: 37px!important;} 
    
    .accordion-body img {
        max-width: 286px;
    }
    .buttons-section a.btn {
        font-size: 16px;
    }
    .accordion-header .accordion-title{
        font-size: 1.4rem;
    }    

    .aree-boxes [class*="col-"] {
        padding-left: 10px;
        padding-right: 10px;
        max-height: 300px;
        padding-bottom: 34rem;
    }
    .area-single-header {
        position: relative;
        height: 87vh;
    } 
    
    .sidebar-inner{
        width: 100%;

    }
    .product-title h2{
        font-size: 34px !important;
    }

    .prodotti-page .product-box{
        background-position: center bottom !important;

    }
    .prodotti-page {
        padding: 1rem 0;
    }

    .container.my-5 h1 {
        margin-top: -3rem;
    }

    .single-header {
        position: relative;
        height: 60vh;
    }

















}

/* Aree carousel mobile fix */
@media (max-width: 767px) {
    .aree-carousel-inner {
        margin: 0;
        padding: 1rem;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
        display: flex;
        gap: 30px; 
    }
    
    .aree-carousel-inner::-webkit-scrollbar {
        display: none;
    }
    
    .aree-item {
        flex: 0 0 100%; /* Make items take 80% of container width */
        width: 100%;
        max-width: 100%;
        padding: 0 10px; /* Add padding for spacing */
        margin: 0 auto; /* Center the items */
        scroll-snap-align: center;
    }
    
    .aree-carousel {
        width: 100% !important;
        padding: 0;
        overflow: hidden;
    }
    
    .aree-item .card.rounded-custom {
        margin: 0 auto;
        max-width: 100%;
    }
    .row.search-results-grid .card-title {
        /* Remove truncation for mobile */
        display: block;
        -webkit-line-clamp: unset;
        -webkit-box-orient: unset;
        overflow: visible;
        text-overflow: unset;
        max-height: none;
    }
}

/* Add JavaScript support for smooth scrolling */
@media (max-width: 767px) {
    /* Override any conflicting styles */
    .aree-carousel-inner {
        transition: transform 0.3s ease;
    }
}

.navbar-brand {
    margin-right: 0rem!important;

}

.primary-menu .d-flex.align-items-center {
    margin-left: 0px!important;

}

/* Form container styling */
.uacf7_conditional {
  max-width: 800px;
  margin: 0 auto;
  font-family: Arial, sans-serif;
}

/* Make labels appear above inputs */
.uacf7_conditional label {
  display: block;
  margin-bottom: 20px;
  font-weight: 600;
  line-height: 1.5;
}

/* Ensure label text appears above the input */
.uacf7_conditional label .wpcf7-form-control-wrap {
  display: block;
  margin-top: 5px;
}

/* Style all form controls */
.uacf7_conditional input[type="text"],
.uacf7_conditional input[type="email"],
.uacf7_conditional input[type="number"],
.uacf7_conditional input[type="date"],
.uacf7_conditional select,
.uacf7_conditional textarea {
  width: 100%;
  padding: 10px;
  border: 1px solid #ddd;
  border-radius: 4px;
  font-size: 16px;
  box-sizing: border-box;
}

/* Style for standalone select elements */
.uacf7_conditional > .wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 20px;
}

/* Section headers */
.uacf7_conditional > label:not(:has(.wpcf7-form-control-wrap)) {
  display: block;
  margin: 30px 0 15px;
  font-size: 18px;
  font-weight: bold;
  border-bottom: 1px solid #eee;
  padding-bottom: 5px;
}

/* Gender select specific styling */
.wpcf7-form-control-wrap[data-name="select-448"] {
  display: inline-block;
  width: 100px;
  margin-right: 20px;
  margin-bottom: 20px;
}

/* Age field specific styling */
label:has([data-name="number-404"]) {
  display: inline-block;
  width: calc(100% - 125px);
}

/* Submit button styling */
.uacf7_conditional .wpcf7-submit {
  background-color: #0066cc;
  color: white;
  padding: 12px 30px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  font-size: 16px;
  margin-top: 20px;
  transition: background-color 0.2s;
}

/* Pagination styling */
.pagination-container .page-numbers {
    display: flex;
    flex-direction: row;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
}

.pagination-container .page-numbers li {
    margin: 0 5px;
}

.pagination-container .page-numbers a,
.pagination-container .page-numbers span {
    color: white;
    padding: 8px 12px;
    text-decoration: none;
    transition: background-color 0.3s;
    border-radius: 4px;
}

.pagination-container .page-numbers .current {
    background-color: rgba(255, 255, 255, 0.2);
    color: white;
}

.pagination-container .page-numbers a:hover {
    background-color: rgba(255, 255, 255, 0.1);
}

a.wp-block-button__link.wp-element-button {
    margin-top: 20px;
}


/* Styles for single Ingrediente Funzionale */
.ingredienti-funzionali-container {
    max-width: 1570px;
    margin: 0 auto;
    padding: 40px;
    text-align: left;
}

.ingredienti-logo img {
    max-width: 218px;
    margin-bottom: 20px;
    display: block;
}

.ingredienti-title {
    font-family: 'Titillium Web', sans-serif;
    font-size: 2.5rem;
    font-weight: 700;
    color: #3d3d3d;
    margin-bottom: 10px;
    text-align: left;
}

h2.ingredienti-top-subtitle {
    font-weight: 600;
    color: #3d3d3d;
}


.ingredienti-content {
    font-family: 'Titillium Web', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #404040;
    margin-bottom: 12vh;
}

.colored-section {
    font-family: 'Titillium Web', sans-serif;
    font-size: 1.2rem;
    font-weight: 700;
    text-align: center;
    padding: 20px;
    margin: 40px 0;
    margin-left: -20%;
    margin-right: -20%;
    margin-top: 6vh;
    text-transform: uppercase;
}

.wysiwyg-content {
    font-family: 'Titillium Web', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #404040;
    margin-bottom: 40px;
}

.accordion-container {
    margin-top: 40px;
}

span.accordion-title {
    text-transform: uppercase;
}

/* Container for all icons - centers content and creates flexible rows */
.ingredienti-icons-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    margin: 0 auto;
    gap: 15px;
    max-width: 850px;
}

/* Each icon wrapper - controls width and maintains proper spacing */
.ingredienti-icon-wrapper {
    width: calc(16.666% - 15px); /* 16.666% = 6 icons per row */
    max-width: 110px;
    min-width: 80px;
    margin-bottom: 15px;
    flex: 0 0 auto; /* Prevents icons from growing/shrinking */
}

/* Icon item container - controls the hover effect */
.ingredienti-icon-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 110px;
    position: relative;
    transition: all 0.3s ease;
}

h3.ingredienti-icons-title {
    text-align: center;
    margin-top: 5vh;
    margin-bottom: 4vh;
    font-family: 'Titillium Web';
    font-weight: 800;
    font-size: 2rem !important;
    color: #04BFBF;
    text-transform: uppercase;
}

/* The icon image */
.ingredienti-icon {
    max-width: 100%;
    height: auto;
    transition: opacity 0.3s ease;
}

/* The icon text initially hidden */
.ingredienti-icon-text {
    position: absolute;
    opacity: 0;
    text-align: center;
    transition: opacity 0.3s ease;
    padding: 5px;
    font-size: 20px;
}

/* On hover, hide the icon and show the text */
.ingredienti-icon-item:hover .ingredienti-icon {
    opacity: 0;
}

.ingredienti-icon-item:hover .ingredienti-icon-text {
    opacity: 1;
}

/* Responsive behavior for smaller screens */
@media (max-width: 768px) {
    .ingredienti-icon-wrapper {
        width: calc(33.333% - 15px); /* 3 per row on tablets */
    }
    .ingredients-list {
        max-width: 100%;
        margin-top: 5vh;
    }
}

@media (max-width: 480px) {
    .ingredienti-icon-wrapper {
        width: calc(50% - 15px); /* 2 per row on mobile */
    }
}
/*pre footer icon certification*/
.pre-footer-content {
    background-color: #223D6A;
    /* padding-top: 2rem; */
    margin-top: -100px;
    position: relative;
    z-index: 1;
}

.pre-footer-content img {
    max-height: 59px;
}

.pre-footer {
    text-align: center;
}

h3.certificates-title {
    color: #fff;
    font-size: 1.2rem;
    font-weight: 600;
    font-family: 'Titillium Web';
}


.container-fluid.ingredienti-funzionali-container h1 {
    font-size: 2.5rem;
    font-weight: 900;
    color: #223D6A;
    margin-bottom: 10px;
    text-align: left;
}

/* sidebar ingredienti funzionali */

.row.intro-ing {
    padding-left: 3vw;
    padding-right: 3vw;
}

.ingredienti-sidebar {
    margin-left: -1rem;
    margin-bottom: -10px;
    z-index: -1;
    position: inherit;
    min-height: 101%;
}

.ingredienti-sidebar .form-check {
    margin-left: 5vw;
    margin-top: 2vh;
}

.ingredients-list {
    max-width: 90%;
}

.ingredient-categories .form-check-input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 2px solid #223D6A;
    background-color: transparent;
    position: relative;
    cursor: pointer;
    width: 16px;
    height: 16px;
    margin-top: 5px;
    outline: none;
    box-shadow: none;
}

.ingredient-categories .form-check-input:checked {
    background-color: transparent !important; /* Force transparency */
    background-image: none !important; /* Remove any background images */
    border-color: #223D6A;
    opacity: 1;
}

.ingredient-categories .form-check-input:checked::before {
    display: none; /* Hide any pseudo-elements that might display a checkmark */
}

.ingredient-categories .form-check-input:checked::after {
    content: '✓';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #223D6A;
    font-weight: bold;
    font-size: 15px;
    line-height: 1;
    opacity: 1;
}

.ingredient-categories .form-check-label,
.ingredient-categories .form-check-label a {
    font-family: 'Titillium Web', sans-serif;
    color: #223D6A !important;
    font-weight: normal;
}

.ingredient-categories .form-check-label.fw-bold, 
.ingredient-categories .form-check-label.fw-bold a {
    font-weight: bold !important;
}

.ingredient-categories .form-check-input,
.ingredient-categories .form-check-label,
.ingredient-categories .form-check-label a {
    opacity: 1 !important;
}

.ingredient-categories .form-check-input:disabled {
    opacity: 1 !important;
    cursor: default;
}

.ingredient-categories .form-check {
    cursor: pointer;
}

.ingredienti-logos-row {
    display: flex;
    flex-wrap: wrap;
    align-items: left;
    justify-content: left;
    gap: 20px;
    margin-bottom: 20px;
}

.ingredienti-logo {
    display: inline-flex;
    align-items: left;
}

.ingredienti-logo img{
    object-fit: contain;
}

.navbar-nav li.menu-item-has-children > a::before, .navbar-nav li.dropdown > a::before, #primary-menu li.menu-item-has-children > a::before {top:9px}

.simple-white-link a, 
.simple-white-link a:hover{
    text-decoration: none;
    color: #fff;
}

/* Soluzione per la navigazione mobile a 1200px e inferiore */
@media (max-width: 1200px) and (min-width: 992px){
    .langx {
        position: absolute;
        float: right;
        right: 0px;
        top: -50px;
        display: block !important; /* Sovrascrivo il d-none per assicurarmi che sia visibile */
    }

    #primary-menu-wrap {
        width: 100%;
        float: left;
        position: absolute;
        margin-top: 100px;
        left: 0;
        margin-left: 0;
    }
    
    /* Assicuriamoci che il menu sia visibile quando richiesto */
    #primary-menu-wrap.show {
        opacity: 1;
        visibility: visible;
    }
    
    /* Assicuriamoci che il menu principale sia correttamente visualizzato */
    #primary-menu {
        width: 100%;
        margin:0 auto;
        justify-content: center;
    }
    
    /* Modifichiamo il comportamento dell'hamburger menu per adattarsi a questo layout */
    .hamburger-menu {
        display: block;
        z-index: 1001;
    }
    
    /* Se necessario, adattiamo anche il container del menu */
    .navbar > .container {
        position: relative;
    }

    .area-single-header, .single-header {
        margin-top: 50px;
    }

    .single-header .site-logo{
        margin-top: 150px;
        top: 150px!important;
    }
}