/*
Theme Name: Radius
Theme URI: https://tommypuccio.me
Author: Tommaso Puccioni
Author URI: https://tommypuccio.me
Description: Radius
Version: 1.0
*/

:root {
    --white: #F9F9F9;
    --lightblue: #48BEFA;
    --blue: #0869B5;
    --darkblue: #0A3380;
    --red: #ED1C24;
    --shadow: 0px 48px 19px rgba(0, 0, 0, 0.01), 0px 27px 16px rgba(0, 0, 0, 0.05), 0px 12px 12px rgba(0, 0, 0, 0.09), 0px 3px 7px rgba(0, 0, 0, 0.1);
    --dropshadow: drop-shadow(0px 48px 19px rgba(0, 0, 0, 0.01)) drop-shadow(0px 27px 16px rgba(0, 0, 0, 0.05)) drop-shadow(0px 12px 12px rgba(0, 0, 0, 0.09)) drop-shadow(0px 3px 7px rgba(0, 0, 0, 0.1));
    --linearblue: linear-gradient(135deg, #48BEFA 0%, #0869B5 100%);
    --linearred: linear-gradient(90deg, #F5474E 0%, #ED1C24 100%);   
}

body, html {
    margin: 0;
    font-family: "Ubuntu", sans-serif;
    font-weight: 300;
    scroll-behavior: smooth;
    height: 100%;
    font-size: 1px;
    background: var(--white);
}

strong {
    font-weight: 700;
}

a:-webkit-any-link, a {
    text-decoration: none !important;
    cursor: pointer;
}

p, .radius_button {
    font-size: 15rem;
    font-weight: 300;
    margin-block: 0;
    line-height: 125%;
}

p {
    text-wrap: pretty;
}

h1 {
    font-size: 40rem;
    font-weight: 300;
    margin-block: 0;
}

h2 {
    font-size: 25rem;
    font-weight: 300;    
    margin-block: 0;
}

.radius_text-blue {
    color: var(--blue);
}

.radius_text-white {
    color: var(--white);
}

.radius_text-red {
    color: var(--red);
}

h1 strong {
    position: relative;
    z-index: 2;
}

h1 strong::before {
    content: '';
    display: block;
    position: absolute;
    bottom: 4rem;
    left: 50%;
    width: 105%;
    height: 8rem;
    background-color: var(--lightblue);
    border-radius: 8rem;
    transform: translateX(-50%);
    z-index: -1;
}

.single header h1 strong::before {
    display: none;
}

.radius_button, #radius_filter-input {
    display: block;
    padding: 10rem 20rem;
    box-sizing: border-box;
    border-radius: 20rem;
    box-shadow: var(--shadow);
    text-transform: uppercase;
    width: fit-content;
}

.radius_button-red {
    background: var(--linearred);
    color: var(--white);
}

.radius_button-blue {
    background: var(--linearblue);
    color: var(--white);
}

.radius_button-white, #radius_filter-input {
    background: var(--white);
    border: solid 2px var(--red);
    color: var(--blue);
}

header {
    box-sizing: border-box;
    padding-top: 75rem;
}

section {
    margin-block: 100rem;
    padding: 50rem;
    overflow-x: hidden;
}

.radius_heading {
    display: grid;
    grid-template-columns: 20% auto 20%;
    margin-inline: -50rem;
}

.radius_heading h1 {
    width: fit-content;
    text-align: center;
    justify-self: center; 
    align-self: center;
}

.radius_heading-line {
    height: 5rem;
    width: 100%;
    align-self: center;
    background: var(--linearblue);
}

.radius_heading-line:nth-of-type(1) {
    border-radius: 0 10px 10px 0;
}

.radius_heading-line:nth-of-type(2) {
    border-radius: 10px 0 0 10px;
}





/* nav */

.radius_nav {
    height: 75rem;
    box-shadow: var(--shadow);
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background: var(--white);
    width: 100%;
    border-radius: 0 0 15rem 15rem;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding-inline: 30rem;
    box-sizing: border-box;
}

.radius_nav .radius_logo {
    height: 60%;
    display: block;
}

.radius_nav .radius_ico {
    height: 20rem;
}

.radius_burger-line {
    width: 20rem;
    height: 3rem;
    border-radius: 10px;
    background: var(--linearblue);
    transition: transform 1s cubic-bezier(.75,0,0,1);
}

.radius_burger-line:nth-of-type(2) {
    margin-block: 5rem;
}

#radius_burger.open .radius_burger-line:nth-of-type(1) {
    transform: rotate(45deg) translateX(5rem) translateY(6rem);
}

#radius_burger.open .radius_burger-line:nth-of-type(2) {
    transform: scaleX(0);
}

#radius_burger.open .radius_burger-line:nth-of-type(3) {
    transform: rotate(-45deg) translateX(5rem) translateY(-6rem);
}

#radius_nav-open {
    display: none;
    background: linear-gradient(135deg, rgba(72, 190, 250, 0.9) 0%, rgba(8, 105, 181, 0.9) 100%);
    height: 100%;
    width: 100%;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 1s cubic-bezier(.5,0,0,1);
    z-index: 900;
    gap: 50rem;
    padding-top: 75rem;
    box-sizing: border-box;
    backdrop-filter: blur(10rem);
}

#radius_nav-open.open {
    opacity: 1;
}

#radius_nav-open .radius_wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    column-gap: 15rem;
    margin-top: -30rem;
}




/* cards */

.radius_card-ico, .radius_card-img {
    border-radius: 25rem;
    box-shadow: var(--shadow);
    display: flex;
    flex-direction: column;
    gap: 25rem;
    padding: 30rem;
    box-sizing: border-box;
    justify-content: center;
    align-items: center;
    aspect-ratio: 21 / 29;
    height: 50vh;
    width: auto !important;
    overflow: hidden;
}

.radius_card-ico {
    background: var(--linearblue);
}

.radius_card-ico img {
    filter: var(--dropshadow)
}

.radius_card-ico * {
    z-index: 2;
    position: relative;
    text-align: center;
}

.radius_card-ico .radius_header-single-bg {
    width: 100%;
    height: 100%;
    object-fit: cover;
    mix-blend-mode: multiply;
    filter: saturate(0) brightness(1.2);
    margin: 0 !important;
    opacity: 0.5;
}

.radius_card-img {
    background: var(--white);
    position: relative;
}

.radius_card-img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    min-width: 100%;
    mask-image: linear-gradient(to top, rgba(249,249,249,0) 20%,rgba(249,249,249,1) 100%);
}

.radius_card-img .radius_wrapper {
    position: absolute;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(249,249,249,0) 0%,rgba(249,249,249,1) 100%);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    column-gap: 10rem;
    box-sizing: border-box;
    padding: 25rem;
    z-index: 1;
}

.radius_card-img .radius_wrapper p {
    text-align: left;
    margin: 0;
}

.radius_card-img .radius_wrapper p:nth-of-type(2), .radius_archive .radius_card-img .radius_wrapper p {
    color: var(--blue);
    font-size: 12rem;
    margin-block-start: 0.5em;
}




/* privacy */

.radius_privacy p {
    color: var(--darkblue);
    line-height: 1.5em;
}

.radius_privacy h3 {
    color: var(--darkblue);
    font-size: 20rem;
    line-height: auto;
    margin-block-start: 2em;
}




/* footer */

.radius_map {
    position: relative;
    height: 50vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

.radius_map * {
    z-index: 2;
}

.radius_map img {
    position: absolute;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    z-index: 1;
}

.radius_map .radius_wrapper {
    display: flex;
    flex-direction: column;
    gap: 30rem;
    width: 100%;
}

.radius_map .radius_wrapper .radius_wrapper {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 10rem;
}

.radius_map .radius_wrapper .radius_wrapper p {
    text-align: left;
    margin: 0;
}

.radius_map .radius_button {
    margin-inline: 0 !important;
}

.radius-orari {
    background: var(--linearblue);
    border-radius: 15rem;
    width: 100%;
    height: fit-content;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 20rem;
    box-sizing: border-box;
}

.radius-orari p {
    margin: 0 !important;
    text-align: right !important;
}

.radius-orari p:nth-of-type(1) {
    font-weight: 700;
    text-align: left !important;
}

#sb_instagram, #sbi_images {
    padding: 0 !important;
}

section:has(#sb_instagram) .radius_wrapper {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 25rem;
}

section:has(#sb_instagram) .radius_wrapper .radius_button {
    margin-inline: unset;
    padding-inline: 12rem;
    border-radius: 100%;
}

section:has(#sb_instagram) .radius_wrapper .radius_button img {
    width: 20rem;
    height: auto;
}

section:has(#sb_instagram) p {
    margin-block: 50rem;
    text-align: center;
}

section:has(.swiper-partner) {
    display: block !important;
}

.swiper-partner {
    width: 100%;
}

.swiper-partner .swiper-wrapper {
    transition-timing-function: linear;
}

.swiper-partner .swiper-slide {
    width: 150px;
}

.swiper-partner .swiper-slide a {
    width: 100%;
    height: 300px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.swiper-partner .swiper-slide a img {
    width: 100%;
    height: auto;
}

footer {
    border-radius: 50rem 50rem 0 0;
    background: var(--linearblue);
    padding: 50rem;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

footer img {
    margin-bottom: 25rem;
}

footer .radius_footer-menu {
    display: grid;
    width: 100%;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    grid-auto-flow: column;
    margin-block: 50rem;
    align-items: center;
    justify-items: center;
}

footer .radius_footer-menu * {
    font-size: 15rem;
}

footer .radius_footer-menu .radius_footer-menu-inside {
    display: block;
    margin: 0 auto;
    text-align: center;
    text-transform: uppercase;
}

footer .radius_footer-menu .radius_footer-menu-inside * {
    font-size: 12rem;
    margin-block-start: 0.7em;
}

footer .radius_footer-menu a:nth-of-type(2) {
    margin-block-start: 1em;
}

footer .radius_footer-menu a:last-of-type {
    align-self: flex-end;
    margin-block-end: 1em;
}

footer .radius_button {
    margin-block-end: 50rem;
}

footer .radius_footer-links {
    display: flex;
    flex-direction: row;
    width: 100%;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 3rem 20rem;
}

footer .radius_footer-links a {
    text-decoration: underline !important;
    color: var(--white);
}

footer .radius_footer-credits {
    font-size: 12rem;
    margin-block-start: 25rem;
}

footer .radius_footer-credits a {
    color: var(--white);
    text-decoration: underline !important;
    font-size: 12rem;
}

footer h1 strong::before {
    display: none;
}




/* popup */

#radius_popup-wrapper {
    z-index: 950;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(249,249,249,0.7);
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    backdrop-filter: blur(10rem);
    transition: opacity 1s cubic-bezier(0.5,0,0,1);
    opacity: 0;
    box-sizing: border-box;
    padding-top: 50rem;
}

#radius_popup-wrapper.open {
    opacity: 1;
}

.radius_popup-inside {
    width: 80%;
    height: fit-content;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    background: var(--white);
    border-radius: 30rem;
    padding: 30rem;
    box-shadow: var(--shadow);
    box-sizing: border-box;
    text-align: center;
    gap: 40rem;
    transition: transform 1s cubic-bezier(0.5,0,0,1);
    transform: scale(0.95);
}

#radius_popup-wrapper.open .radius_popup-inside {
    transform: scale(1);
}

.radius_popup-inside div {
    width: 100%;
}

.radius_popup-inside h1 {
    margin-block-end: 0.3em;
    font-size: 33rem;
}

.radius_popup-inside div:nth-of-type(2) {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 25rem 50rem;
}

.radius_popup-inside div:nth-of-type(2) a:not(.radius_button) {
    font-size: 15rem;
    font-weight: 400;
    color: var(--blue);
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10rem;
}

.radius_popup-inside div:nth-of-type(2) span {
    flex: 0 0 100%;
}

.radius_popup-inside div:nth-of-type(2) span a {
    margin-inline: auto;
}

.radius_popup-inside .radius-orari {
    width: 100%;
    margin-block-start: 15rem;
}


/* front page */

.home header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 75vh;
    position: relative;
    gap: 25%;
    box-shadow: var(--shadow);
    border-radius: 0 0 50rem 50rem;
    overflow: hidden;
    border-bottom: solid 7rem var(--lightblue); 
}

.home header * {
    z-index: 2;
}

.home header video {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
    pointer-events: none;
    z-index: 1;
}

.home header .radius_wrapper:nth-of-type(1) {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 20rem;
}

.home header .radius_logo {
    width: 65vw;
}

.home header .radius_wrapper:nth-of-type(2) {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 15rem;
}

.home section p {
    text-align: center;
    margin-block: 50rem;
}

.home section .radius_button {
    margin-inline: auto;
}

.swiper-home .swiper-slide h2 {
    text-transform: uppercase;
    font-weight: 700;
}

.swiper-pagination {
    position: relative;
    margin-top: 50rem;
}

.swiper-wrapper {
    transition-timing-function: cubic-bezier(.75,0,0,1);
}

.swiper-pagination-bullet {
    height: 10rem;
    width: 10rem;
    border-radius: 10rem;
    opacity: 1;
    background: var(--white) !important;
    border: solid 1px var(--blue) !important;
    margin-inline: 5rem !important;
    transition: all 1s cubic-bezier(.75,0,0,1);
}

.swiper-pagination-bullet-active {
    width: 50rem;
    background: var(--blue) !important;
}

.swiper-home, .swiper-eventinovita, .swiper-promo, #sb_instagram, .swiper-single, .swiper-single-bis {
    position: relative;
    margin-block: 50rem;
}

.swiper-next, .swiper-prev {
    position: absolute;
    top: 50%;
    opacity: 1;
    transition: opacity 1s cubic-bezier(.75,0,0,1);
    height: 20rem;
    width: 10rem;
    transform: translateY(-150%);
    z-index: 10;
}

.swiper-next {
    right: -35rem;
}

.swiper-prev {
    left: -35rem;
}

.swiper-button-disabled {
    opacity: 0.5;
}

.radius_home-section-blue {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 50vh;
    position: relative;
    background: var(--linearblue);
    box-shadow: var(--shadow);
    border-radius: 0 0 50rem 50rem;
    overflow: hidden;
    border-bottom: solid 7rem var(--blue);
}

.radius_home-section-blue p {
    margin-block: 0 !important;
}

.radius_home-section-blue * {
    z-index: 2;
}

.radius_home-section-blue img {
    position: absolute;
    height: 100%;
    width: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
    z-index: 1;
    mask-image: linear-gradient(to top, rgba(249,249,249,1) 0%,rgba(249,249,249,0) 80%);
}

.home #chiusure {
	margin: 0 !important;
	padding-block: 0 !important;
	text-align: center;
	display: block !important;
}

.home #chiusure p {
	color: var(--blue);
	margin-block: 20rem !important;
}




/* archive */

.radius_header-archive, .radius_header-single {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 50vh;
    position: relative;
    box-shadow: var(--shadow);
    border-radius: 0 0 50rem 50rem;
    overflow: hidden;
    border-bottom: solid 7rem var(--lightblue);
    row-gap: 25rem;
    padding-inline: 25rem;
    background: var(--linearblue);
}

.radius_header-archive *, .radius_header-single * {
    z-index: 2;
}

.radius_header-archive img, .radius_header-single-bg {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    top: 0;
    left: 0;
}

.radius_header-archive h1 strong::before {
    background-color: var(--red);
}

.radius_header-archive p {
    text-align: center;
    color: var(--white);
}

.radius_filter {
    margin-block: 50rem 0;
}

#radius_filter-input {
    width: 100%;
    font-family: 'Ubuntu', sans-serif;
    font-weight: 300;
    outline: none;
    text-transform: none;
}

#radius_filter-input:focus, #radius_filter-input:focus-visible {
    border-color: var(--blue) !important;
}

.radius_archive {
    display: grid;
    grid-column: auto;
    gap: 50rem;
    margin-block: 0;
}

.radius_archive .radius_card-ico, .radius_archive .radius_card-img {
    height: auto;
}

.radius_archive .radius_card-ico h2, .swiper-single .radius_card-ico h2, .swiper-single-bis .radius_card-ico h2 {
    color: var(--white);
    text-transform: uppercase;
    text-align: center;
    text-wrap: pretty;
    width: 100%;
}

.radius_archive .radius_card-ico img {
    margin-block: -5%;
}

.radius_discover-more {
    margin-top: 0;
}

.radius_discover-more-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 15rem;
    margin-top: 50rem;
}

.radius_archive .radius_card-img .radius_wrapper p {
    font-size: 15rem;
}

.radius_progress-wrapper {
    position: sticky;
    bottom: 0;
    width: 100%;
    height: 10rem;
    overflow: hidden;
    padding-inline: 50rem;
    box-sizing: border-box;
    border-radius: 10rem;
}

#radius_progress {
    width: 0%;
    max-width: 100%;
    height: 100%;
    background: var(--linearblue);
    border-radius: 10rem;
}




/* single */

.radius_header-single {
    aspect-ratio: 21 / 29;
    width: 100%;
    height: auto;
    background: var(--linearblue);
}

.radius_header-single img {
    margin-block: -5%;
}

.radius_header-single-image img {
    margin: 0;
}

.single-ambulatori .radius_header-single-bg, .single-medici .radius_header-single-bg, .single-diagnostica .radius_header-single-bg, .radius_header-archive img {
    filter: saturate(0) brightness(1.2);
    mix-blend-mode: multiply;
    margin-block: 0 !important;    
    opacity: 0.5;
}

.radius_header-single-image {
    padding-top: 0;
    margin-top: 75rem;
}

.radius_header-single-image .radius_header-single-bg {
    opacity: 1;
}

.radius_header-single h1 {
    text-align: center;
}

.radius_single-content p, .radius_single-content ul li {
    text-align: justify;
    color: var(--darkblue);
    margin-block: 30rem;
    line-height: 140%;
    letter-spacing: 0.02em;
    font-size: 15rem;
}

.radius_single-content ul li {
    margin-block: 0;
}

.radius_single-content ul li::marker {
    color: var(--red);
}

.radius_single-content ul {
    padding-inline-start: 15rem;
}

.radius_single-content p:first-of-type {
    margin-block-start: 0;
}

.radius_single-content p:last-of-type {
    margin-block-end: 0;
}

.radius_single-content p strong {
    color: var(--blue);
}

.radius_single-content figure {
    max-width: 100%;
    margin-block: 30rem 50rem;
}

.single-diagnostica.postid-110 .radius_single-content .radius_prenota {
    display: none;
}

.radius_single-carousel {
    margin-block: 0;
}

.swiper-single, .swiper-single-bis {
    margin-block-start: 100rem;
}

.radius_single-carousel .radius_card-ico h2 {
    text-transform: uppercase;
}

p.radius_prenota strong {
    text-decoration: underline;
    color: var(--red);
    cursor: pointer;
}

.radius_single-content p a {
    color: var(--darkblue) !important;
    text-decoration: underline !important;
}

.swiper-mask {
    display: none;
}

.radius_single-content .radius_prenota {
    margin-block-start: 30rem;
    margin-inline: auto;
}

.single-medici .radius_single-carousel .radius_card-ico {
    margin-inline: auto;
    width: 100% !important;
    height: auto !important;
    margin-block-start: 50rem;
}



/* desktop */

@media (orientation: landscape) and (min-width: 960px) {

    body, html {
        font-size: 1.25px;
    }

    h1 {
        font-size: 50rem;
    }

    section {
        padding-inline: 150rem;
    }

    header {
        padding-top: 100rem;
    }

    .radius_heading {
        margin-inline: -250rem;
    }

    .radius_nav {
        height: 100rem;
        padding-inline: 50rem;
    }

    #radius_nav-open {
        padding-top: 100rem;
    }

    .radius_map {
        height: 60vh;
    }

    .radius_map .radius_wrapper {
        width: 50%;
    }

    .radius_map .radius_wrapper .radius_wrapper {
        width: 100%;
    }

    .home header .radius_logo {
        width: 25vw;
    }

    .home section:not(.radius_map, .radius_social-section) {
        display: grid;
        grid-template-columns: repeat(2, calc(50% - calc(50rem / 2)));
        grid-template-rows: min-content auto auto;
        column-gap: 50rem;
    }

    .home section .radius_heading {
        grid-column: 1 / 3;
        grid-row: 1/2;
    }

    .home section .swiper-home, .home section .swiper-eventinovita, .home section .swiper-promo {
        grid-column: 1 / 2;
        grid-row: 2 / 4;
        overflow-x: clip;
    }

    .home section .swiper-promo {
        grid-column: 2 / 3;
    }

    .swiper-mask {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(to right, rgba(249,249,249,1) 5%, rgba(249,249,249,0) 25%, rgba(249,249,249,0) 75%, rgba(249,249,249,1) 95%);
        z-index: 5;
        pointer-events: none;
    }

    .home .swiper-prev {
        left: 35rem;
    }

    .home .swiper-next {
        right: 35rem;
    }

    .home section p {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
        align-self: flex-end;
    }

    .home section:has(.swiper-promo) p, .home section:has(.swiper-promo) .radius_button {
        grid-column: 1 / 2;
    }

    .home section .radius_button {
        grid-column: 2 / 3;
        grid-row: 3 / 4;
        align-self: flex-start;
    }

    .radius_home-section-blue {
        grid-template-rows: 1fr !important;
    }

    .radius_home-section-blue p, .radius_home-section-blue .radius_button {
        grid-column: unset !important;
        grid-row: unset !important;
        align-self: center !important;
    }

    .swiper-partner .swiper-slide {
        width: 300px;
    }

    .swiper-partner .swiper-slide a {
        width: 70%;
    }

    .radius_archive {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }

    .radius_archive .radius_card-ico, .radius_archive .radius_card-img {
        height: 50vh;
    }

    #radius_filter-input {
        width: 30%;
        margin-inline: auto;
    }

    .radius_popup-inside .radius-orari {
        width: 50%;
        margin-inline: auto;
    }

    .radius_popup-inside {
        width: 60%;
        gap: 50rem;
        padding: 50rem;
    }

    .page-id-130 .radius_archive .radius_card-img h2, .single-ambulatori .swiper-single .radius_card-img h2, .single-ambulatori .swiper-single-bis .radius_card-img h2 {
        font-size: 20rem;
    }

    .page-id-130 .radius_archive .radius_card-img p {
        font-size: 12rem;
    }

    /*
    
    .radius_header-single {
        aspect-ratio: unset;
        height: 45vh;
    }

    */

    .radius_single-grid {
        display: grid;
        grid-template-columns: 1.5fr 3fr;
        padding-inline: 150rem;
        margin-top: 100rem;
    }

    .radius_header-single-image {
        margin-top: 100rem;
    }

    .radius_header-single {
        border-radius: 50rem;
        align-self: center;
        padding-top: 0;
    }

    .radius_single-grid .radius_single-content {
        align-self: center;
        padding-right: 0;
    }

    .radius_single-content .radius_prenota {
        margin-inline: unset;
    }

    .single-medici .radius_single-carousel .radius_card-ico {
        margin-inline: auto;
        width: auto !important;
        height: 50vh !important;
        margin-block-start: 50rem;
    }

}



/* animations */

a, .radius_button {
    scale: 1;
    transition: all 0.75s cubic-bezier(0.2,0,0,1) !important;
}

a:hover, .radius_button:hover {
    scale: 1.1;
}

.radius_button:hover {
    filter: brightness(1.25);
}

h1[data-scroll] span, h1[data-scroll="out"] span{
    opacity: 0;
    transform: translateY(50%);
    transition: all 0.75s cubic-bezier(0.2,0,0,1) !important;
    transition-delay: calc(var(--word-index) * 100ms) !important;
}

h1[data-scroll="in"] span{
    opacity: 1;
    transform: translateY(0%);
}

h1[data-scroll] strong::before, h1[data-scroll="out"] strong::before {
    opacity: 0;
    transform: translateX(-50%) scaleX(0);
    transition: all 0.75s cubic-bezier(0.2,0,0,1) !important;
    transition-delay: calc(var(--word-index) * 100ms) !important;
}

h1[data-scroll="in"] strong::before {
    opacity: 1;
    transform: translateX(-50%) scaleX(1);
}