/* =============================================================
   Theme Name: Twelve
   Theme BG: #fdf3e2
============================================================= */

/* =============================
  Base globale
============================= */
*, .wp-block-heading {
    font-family: 'Montserrat', 'Source Sans Pro', sans-serif;
}

.wp-block-media-text {
    background-color: transparent!important;
}

/* =============================
  Logo + Slogan
============================= */
.site-title {
    font-size: 25px;
    font-weight: 700;
    letter-spacing: 1px;
}

.site-title a {
    color: #172430 !important;
    text-decoration: none;
    line-height: 1.2;
}

.site-title a:hover {
    color: #172430 !important;
}

.site-description-custom {
    display: block !important;
    font-size: 20px;
    color: #7492cf !important;
    margin-top: 2px;
    margin-bottom: 0;
    line-height: 1.2;
    letter-spacing: 4px;
    text-transform: uppercase!important;
}

/* =============================
  Primary background
============================= */
.has-theme-primary-background-color {
    background-color: #7492cf!important;
}

.has-theme-primary-background-color h1,
.has-theme-primary-background-color p {
      color: #fdf3e2 !important;
}

/* =============================
  Footer
============================= */
.site-footer {
    background-color: transparent;
}

.site-footer a {
    color: #0f6c8f;
    text-decoration: none;
}

.site-footer a:hover,
.site-footer a:focus {
    color: #172430;
}

/* =============================
  Social Icons
============================= */
.wp-block-social-links .wp-block-social-link svg path {
    fill: #fdf3e2;
}

/* ==================================================
   Nav Menu Desktop
================================================== */
nav.nav-primary {
    background-color: transparent;
    font-family: 'Montserrat', 'Source Sans Pro', sans-serif;
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 1px;
}

/* ==================================================
   Nav Menu Desktop - 1° level
================================================== */
.nav-primary .menu {
    display: flex;
}

.nav-primary .menu > li.menu-item {
    margin: 0;
    padding: 0;
}

.nav-primary .menu > li.menu-item > a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 15px;
    text-align: center;
    text-decoration: none;
    color: #172430!important;
    background-color: transparent;
    transition: color 0.25s ease, background-color 0.25s ease;
}

/* Hover / Active */
.nav-primary .menu > li.menu-item:hover > a,
.nav-primary .menu > li.menu-item.sfHover > a,
.nav-primary .menu > li.menu-item.current-menu-item > a,
.nav-primary .menu > li.menu-item.current-menu-ancestor > a {
    background-color: #edafcf!important;
    color: #172430!important;
    font-weight: 400;
}

/* Focus generale (navigazione tastiera) */
.nav-primary .menu > li.menu-item > a:focus {
    outline: none;
    outline-offset: 2px;
}

/* Focus visibile / Click attivo → bordo rosso */
.nav-primary .menu > li.menu-item > a:focus-visible,
.nav-primary .menu > li.menu-item > a:active {
    box-shadow: inset 0 0 0 2px #fdf3e2!important;
}

/* ==================================================
   Nav Menu Desktop - Dropdown
================================================== */
.nav-primary ul.sub-menu {
    min-width: 300px;
    margin: 0;
    padding: 0;
    background-color: transparent;
    z-index: 9999;
}

.nav-primary ul.sub-menu li {
    width: 100%;
    margin: 0;
    padding: 0;
}

.nav-primary ul.sub-menu li > a {
    display: flex;
    align-items: center;
    justify-content: flex-start;  
    width: 100%;
    box-sizing: border-box;
    padding: 20px 24px;            
    background-color: #fdf3e2!important;
    color: #172430!important;
    text-align: left;            
    text-decoration: none;
    font-weight: 500;
    white-space: nowrap;
    transition: background-color 0.2s ease, color 0.2s ease;
}

/* Hover / Active */
.nav-primary ul.sub-menu li:hover > a,
.nav-primary ul.sub-menu li.sfHover > a,
.nav-primary ul.sub-menu li > a:focus {
    background-color: #edafcf!important;
    color: #172430!important;
    font-weight: 400;
}

/* Focus */
.nav-primary ul.sub-menu li.current-menu-item > a {
    background-color: #edafcf!important;
    color: #172430!important;
}

/* ==================================================
   TOGGLE FRECCIA
================================================== */
.nav-primary .sub-menu-toggle {
    color: #172430;
}

/* ==================================================
   PULIZIA GENESIS SAMPLE
================================================== */
.nav-primary a:active,
.nav-primary a:focus {
    outline: none;
    box-shadow: none;
}

.nav-primary ul.sub-menu li:hover > a {
    padding-left: 28px;
}
.wp-block-button__link strong {
  font-weight: normal!important;
}

/* =============================
  Accordion
============================= */
.gb-accordion-title {
    background-color: #f7b92c!important;
    color: #172430 !important;
    border: 1px solid transparent !important;
}
.gb-accordion-text {
    background-color: #f7b92c !important;
    color: #172430 !important;
    border: 1px solid transparent !important;
    border-radius: 15px!important;
    margin-top:2px!important;
}
.wp-block-genesis-blocks-gb-accordion .wp-block-button__link {
    background-color: #7dc178!important;
    color: #172430!important;
    border: 2px solid #fdf3e2!important;
}
.wp-block-genesis-blocks-gb-accordion .wp-block-button__link:hover {
    background-color: #fdf3e2!important;
    color: #172430 !important;
}
.wp-block-button__link strong {
  font-weight: normal!important;
}

/* =============================
  Button
============================= */
button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.button,
.wp-block-button__link,
.wp-element-button {
    background-color: #fdfc8f!important;
    color: #172430!important;
    border: 2px solid #fdf3e2!important;
    border-radius: 5px !important;
    font-size:18px!important;
    line-height:1.2;
    font-weight: 700!important;
    cursor: pointer;
    transition: all 0.3s ease;
    padding-top:10px;padding-right:1em;padding-bottom:10px;padding-left:1em;
    font-family: 'Montserrat', 'Source Sans Pro', sans-serif!important;
}

button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
.button:hover,
.wp-block-button__link:hover,
.wp-element-button:hover {
    background-color: #7dc178!important;
    color: #172430 !important;
    border-color: #fdf3e2 !important;
}

button:focus,
input[type="submit"]:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
.button:focus,
.wp-block-button__link:focus,
.wp-element-button:focus {
    outline: none!important;
    outline-offset: 4px;
}