/*
Theme Name: BUP 2.0
Template:   twentytwentyfive
Author: BUP
Author URI: https://biocomputingup.it
Description: Brand new theme for BUP ver 2.0
Requires at least: 6.7
Tested up to: 6.9
Requires PHP: 7.2
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: twentytwentyfive
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featur>
*/

/* Palette */
:root {
	--bup-color: #3B85CB;
	--highlight-color: rgba(52,126,177,0.7);
	--base-color: #F2F2F2;
	--unipd-color: #B20E10;
	--text-color: #404040;
	--accent-color: #5D85B7;
	--accent-color-2: #FFF;
	--soft-color: #F9F9F9;
	--borders-color: #E0E0E0;
	--menu-color: #DEDEDE;
	--news-color: #D20708;
	--events-color: #95CC93;
}

[data-theme="dark"] {
	--bup-color: #3B85CB;
	--highlight-color: rgba(52,126,177,0.7);
	--base-color: #404040;
	--unipd-color: #B20E10;
	--text-color: #F2F2F2;
	--accent-color: #5D85B7;
	--accent-color-2: #111;
	--soft-color: #353535;
	--borders-color: #E0E0E0;
	--menu-color: #454545;
}

/* Template parts */
body {
	background-color: var(--base-color) !important;
	color: var(--text-color) !important;
	font-family: "Sora", sans-serif;
	min-height: 100vh;
	margin: 0;
}

header {
	position: relative;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	backdrop-filter: blur(30px);
        	-webkit-backdrop-filter: blur(30px);
}

main {
	width: clamp(360px, 80vw, 3000px);
	margin: 0 auto;
	padding: 2.5em 1em;
	min-height: 100dvh;
}

footer {
	position: relative;
	margin-top: auto;
	z-index: 10;
}
.fast-links{
	background: var(--soft-color);
	color: var(--text-color);	
}
.unipd {
    background-color: var(--unipd-color);
	padding: 1em 1em;
}

.uni-logo img {
	width: auto;
	height: 3em;
}

.uni-info {
	color: white;
	font-family: "Noto";font-size: 0.7em;
}

.disclaimer {
	background: var(--soft-color);
	color: var(--text-color);
}

.wp-block-separator {
	color: var(--bup-color);
	width: 100% !important;
	height: 5px !important;
	margin-top: 0;
}

.std-bar {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
	height: 2rem;
	padding: 0 2rem;
	margin-top: 0;
	overflow: hidden;
	background-color: var(--bup-color);
}

.std-link a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.75rem 1rem;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	transition: transform 0.25s ease, background-color 0.25s ease;
}

.std-link a::after {
  	content: " ➜";
	font-size: 1rem;
	transition: transform 0.25s ease;
}

.std-link a:hover,
.std-link a:focus-visible {
	transform: translateX(0.25rem);
}

.std-link a:hover::after,
.std-link a:focus-visible::after {
	transform: translateX(0.3rem);
}

/* Misc */

p {
	text-align: justify;
}

:where(.wp-site-blocks *:focus){
	outline: none;
}

a,
a:hover {
	text-decoration: none;
}

/* Menu */
.head-top {
	background: var(--bup-color) !important;
	height: 1.25rem;
	margin-bottom: 0px;
}

.head-menu {
	margin-top: 0px !important;
	background:
                color-mix(
                in srgb,
                var(--menu-color) 45%,
                transparent
                ) !important;
 	display: flex;
	align-items: center;
	justify-content: space-evenly;
	flex-wrap: wrap;
	height: 3.75rem;
	box-shadow: 0px 5px 4px 0px rgba(0,0,0,0.15);
}

.wp-block-site-logo img {
	position: relative;
	transform: translateY(-15px);
	margin-bottom: -1.5em;
	margin-right: 10px;
        box-shadow: 1px 1px 5px rgba(0,0,0,0.15);
}

.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed !important;
	inset: 0 !important
	width: 100vw !important;
	height: 100vh !important;
	z-index: 999 !important;
}

.wp-block-navigation__overlay-container .has-white-background-color {
        background:
                color-mix(
                in srgb,
                var(--base-color) 70%,
                transparent
                ) !important;
	backdrop-filter: blur(30px);
	-webkit-backdrop-filter: blur(30px);
	color: var(--text-color) !important;
}

.wp-block-navigation-overlay-close {
	color: var(--text-color) !important;
}

.wp-block-navigation a {
	display: inline-block;
	padding: 0.4rem 0.1rem;
	text-align: center;
	color: var(--text-color) !important;
	font-size: 0.9rem;
	font-weight: 500;
	width: 9rem;
	text-transform: uppercase;
	position: relative;
	z-index: 1;
}

.wp-block-navigation a:hover,
.wp-block-navigation a:focus {
	background-color:
                color-mix(
                in srgb,
                var(--bup-color) 90%,
                transparent
                );
	color: var(--base-color) !important;
	font-weight: 900;
	width: 9rem;
    box-shadow: 0 0 0 14px
                color-mix(
                in srgb,
                var(--bup-color) 90%,
                transparent
                );
}

.wp-block-navigation .current-menu-item > a {
	background-color: var(--bup-color);
	color: var(--base-color) !important;
	font-weight: 900;
	width: 9rem;
	box-shadow: 0 0 0 14px var(--bup-color);
}

.deco-main {
        background: var(--bup-color);
        margin-bottom: 0px;
        backdrop-filter: blur(30px);
	        -webkit-backdrop-filter: blur(30px);
}

.section {
	background: trasparent;
        backdrop-filter: blur(30px);
	        -webkit-backdrop-filter: blur(30px);
	border: 1px solid var(--soft-color);
	border-radius: 1em;
}

.section a {
	color: var(--accent-color);
        text-transform: uppercase;
}

.section a:hover {
	color: var(--base-color);
        text-transform: uppercase;

}

.icon  {
	height: 1.5em;
	width: 1.5em;
	color: var(--base-color);
}

/* Dropdown menu */
.filter-row {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0.5rem;
    flex-wrap: nowrap;
    width: 100%;
}

.filter-row > select,
.filter-row > form {
    flex: 0 1 20%;
    min-width: 0;
    margin: 0;
}

.filter-row > form {
    display: flex;
}

.filter {
    box-sizing: border-box;
    width: 100%;
    height: 52px;
    padding: 10px 16px;
    border: 2px solid var(--borders-color);
    border-radius: 8px;
    background-color: var(--base-color);
    color: var(--bup-color);
    font-size: 1rem;
	text-transform: uppercase;
    cursor: pointer;
}
.service-filter:focus {
        outline: none;
        border-color: var(--bup-color);
        box-shadow: 0 0 0 2px rgba(0,124,186,0.2);
}

/* Media screen */
/* small phones */
@media (max-width: 480px) {
	    .filter-row {
       	flex-direction: column;
    }
    .filter-row > select,
    .filter-row > form {
       	flex-basis: auto;
       	width: 100%;
    }
}
/* large phones */
@media (min-width: 481px) and (max-width: 768px) {
	.wp-block-navigation__responsive-container-open {
		display: block !important;
	}
	.wp-block-navigation__responsive-container:not(.is-menu-open.has-modal-open) {
		display: none !important;
	}
	.head-menu {
		justify-content: space-evenly;
	}
    .filter-row {
       	flex-direction: column;
    }
    .filter-row > select,
    .filter-row > form {
       	flex-basis: auto;
       	width: 100%;
    }
}
 /* tablets */
@media (min-width: 769px) and (max-width: 1024px) { 
	.wp-block-navigation__responsive-container-open {
		display: block !important;
	}
	.wp-block-navigation__responsive-container:not(.is-menu-open.has-modal-open) {
		display: none !important;
	}
	.head-menu {
		justify-content: center;
	}
}
 /* laptops */
@media (min-width: 1025px) and (max-width: 1200px) { 

}
/* desktop and wide screens */ 
@media (min-width: 1441px) { 
}