:root {
  --portofinos-primary: #a82526;
  --portofinos-primary-light: #c74b4c;
  --portofinos-primary-dark: #7e1a1b;
  --portofinos-bg: #faf8f6;
  --portofinos-bg-secondary: #f2ece7;
  --portofinos-ivory: #fffdfb;
  --portofinos-text: #2c2c2c;
  --portofinos-text-secondary: #6b6b6b;
  --portofinos-border: #ddd7d2;
  --portofinos-success: #6d8b5a;
}

html { scroll-behavior: smooth; }
body { background: var(--portofinos-bg); color: var(--portofinos-text); }

body{
	padding-top: 87px !important;
}

@media(max-width:768px){
  body {
    padding-top: 60px !important;
}
}
a { text-decoration-thickness: 1px; text-underline-offset: .18em; }
a:hover { color: var(--portofinos-primary-dark); }
.wp-site-blocks { background: var(--portofinos-bg); }
.wp-block-button__link { transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease; }
.wp-block-button__link:hover { transform: translateY(-1px); }
.wp-block-navigation a { transition: color .2s ease; }
.wp-block-navigation a:hover { color: var(--portofinos-primary); }
.is-style-portofinos-card {
  background: var(--portofinos-ivory);
  border: 1px solid var(--portofinos-border);
  border-radius: 18px;
  box-shadow: 0 14px 34px rgba(126, 26, 27, .06);
  padding: clamp(1.25rem, 3vw, 2rem);
}
.has-portofinos-soft-shadow { box-shadow: 0 18px 50px rgba(126, 26, 27, .08); }

/* Rimuove outline e ombre su click e focus */
a,
button,
input,
textarea,
select,
.wp-block-button__link,
.wp-block-navigation a {
	outline: none !important;
	box-shadow: none !important;
}

a:focus,
a:focus-visible,
a:hover,
button:focus,
button:focus-visible,
input:focus,
textarea:focus,
select:focus,
.wp-block-button__link:focus,
.wp-block-button__link:focus-visible,
.wp-block-navigation a:focus,
.wp-block-navigation a:focus-visible {
	outline: none !important;
	box-shadow: none !important;
}/* pulsanti mobile */
/* Mobile
.btn-portofinos .wp-block-button__link{
    width:clamp(220px, 45vw, 340px);
}
*/

/* Hover menu Twenty Twenty-Five / Gutenberg */

.wp-block-navigation .wp-block-navigation-item__content{
    position: relative;
    display: inline-flex;
    text-decoration: none;
    color: inherit;
    transition: color .25s ease;
}

.wp-block-navigation .wp-block-navigation-item__content::after{
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 2px;
    background-color: #a82526;
    transform: scaleX(0);
    transform-origin: left center;
    transition: transform .35s ease;
}

.wp-block-navigation .wp-block-navigation-item__content:hover{
    color: #a82526;
}

.wp-block-navigation .wp-block-navigation-item__content:hover::after,
.wp-block-navigation .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content::after,
.wp-block-navigation .wp-block-navigation-item.current_page_item .wp-block-navigation-item__content::after{
    transform: scaleX(1);
}

/* BACKground custom immage*/
/* ===============================
   Decoro background sezione
================================== */

.portofinos-massaggi-section {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: #a82526;

    /* texture leggera */
    background-image:
        radial-gradient(circle at 15% 20%, rgba(255,255,255,.20) 0 1px, transparent 2px),
        radial-gradient(circle at 80% 75%, rgba(255,255,255,.15) 0 1px, transparent 2px);

    background-size:
        90px 90px,
        120px 120px;
}


/* ===============================
   Cerchi concentrici alto sinistra
================================== */

.portofinos-massaggi-section::before{
    content:"";
    position:absolute;

    width:620px;
    height:620px;

    top:-260px;
    left:-260px;

    z-index:-1;

    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;

    box-shadow:
        0 0 0 80px rgba(255,255,255,.035),
        0 0 0 160px rgba(255,255,255,.025),
        0 0 0 240px rgba(255,255,255,.018);
}


/* ===============================
   Cerchi concentrici basso destra
================================== */

.portofinos-massaggi-section::after{
    content:"";
    position:absolute;

    width:620px;
    height:620px;

    right:-260px;
    bottom:-260px;

    z-index:-1;

    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;

    box-shadow:
        0 0 0 80px rgba(255,255,255,.035),
        0 0 0 160px rgba(255,255,255,.025),
        0 0 0 240px rgba(255,255,255,.018);
}

/* ===============================
BG image corpo
=================================*/
.portofinos-bg-silhouette {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.portofinos-bg-silhouette::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background-image: url("/wp-content/themes/portofinos-twentytwentyfive-child/assets/images/sfondo-corpo.png");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: min(100%, auto);

  opacity: .55;

  animation: portofinosSilhouetteFloat 22s ease-in-out infinite alternate;
}

.portofinos-bg-silhouette > * {
  position: relative;
  z-index: 1;
}

@keyframes portofinosSilhouetteFloat {
  from {
    transform: translateX(0) translateY(0) scale(1);
  }

  to {
    transform: translateX(-18px) translateY(8px) scale(1.025);
  }
}

@media (max-width: 781px) {
  .portofinos-bg-silhouette::before {
    background-size: 85%;
    background-position: right bottom;
    opacity: .22;
  }
}
/* ===============================
BG image viso
=================================*/

.portofinos-bg-viso {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.portofinos-bg-viso::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background-image: url("/wp-content/themes/portofinos-twentytwentyfive-child/assets/images/portofinos-bg-viso.png");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: min(100%, auto);

  opacity: .55;

  animation: portofinosVisoFloat 22s ease-in-out infinite alternate;
}

.portofinos-bg-viso > * {
  position: relative;
  z-index: 1;
}

@keyframes portofinosVisoFloat {

  from {
    transform: translateX(0) translateY(0) scale(1);
  }

  to {
    transform: translateX(-18px) translateY(8px) scale(1.025);
  }

}

@media (max-width: 781px) {

  .portofinos-bg-viso::before {

    background-size: 85%;
    background-position: right bottom;
    opacity: .22;

  }

}

/* ==========================================
   PORTOFINOS • Background Rituali
========================================== */

.portofino-bg-rituali {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}

.portofino-bg-rituali::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background-image: url("/wp-content/themes/portofinos-twentytwentyfive-child/assets/images/portofinos-bg-rituali.png");
  background-repeat: no-repeat;
  background-position: right center;
  background-size: min(100%, auto);

  opacity: .55;

  animation: portofinosRitualiFloat 22s ease-in-out infinite alternate;
}

.portofino-bg-rituali > * {
  position: relative;
  z-index: 1;
}

@keyframes portofinosRitualiFloat {

  from {
    transform: translateX(0) translateY(0) scale(1);
  }

  to {
    transform: translateX(-18px) translateY(8px) scale(1.025);
  }

}

@media (max-width: 781px) {

  .portofino-bg-rituali::before {

    background-size: 85%;
    background-position: right bottom;
    opacity: .22;

  }

}
