/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Dec 19 2025 | 14:15:27 */
a {
    text-decoration: none !important;
}
/* Solo home, evita effetti collaterali globali */
body.home .wp-block-post-content > p:empty { display: none; }

/* Se i <p> contengono solo commenti, forziamo zero margini comunque */
body.home .wp-block-post-content > p { margin: 0; }

/* Evita il margin-collapsing in cima al contenitore contenuti */
body.home .wp-block-post-content { padding-top: 0.1px; /* invisibile, ma blocca il collapse */ }

/* Ridondante ma harmless: assicura che la cover non introduca margini */
body.home .wp-block-cover { margin-top: 0 !important; }

/* CONTATTI: pillola blu */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item a[href*="/contatti"]{
  display:inline-block;
  background:#183B8C !important;   /* usa background, non solo background-color */
  color:#fff !important;
  padding:8px 14px;
  border-radius:10px;
  font-weight:600;
  line-height:1.2;
  transition:all .25s ease;
}

/* 1. Reset e Layout Squadrato Morbido */
.wp-block-button.btn-whatsapp a.wp-block-button__link {
    background-color: #25D366 !important; /* Verde WhatsApp */
    color: transparent !important;        /* Nasconde il testo */
    display: flex !important;
    align-items: center;
    justify-content: center;
    
    /* Modifica queste per la forma */
    width: 50px !important;            /* Leggermente più largo */
    height: 40px !important;
    border-radius: 12px !important;    /* Angolo morbido (non tondo) */
    
    padding: 0 !important;
    border: none !important;
    position: relative;
    min-width: 50px;
    overflow: hidden;
}

/* 2. Icona centrata */
.wp-block-button.btn-whatsapp a.wp-block-button__link::before {
    content: '';
    display: block;
    position: absolute;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 448 512'%3E%3Cpath fill='white' d='M380.9 97.1C339 55.1 283.2 32 223.9 32c-122.4 0-222 99.6-222 222 0 39.1 10.2 77.3 29.6 111L0 480l117.7-30.9c32.4 17.7 68.9 27 106.1 27h.1c122.3 0 224.1-99.6 224.1-222 0-59.3-25.2-115-67.1-157zm-157 341.6c-33.1 0-65.6-8.9-94-25.7l-6.7-4-69.8 18.3L72 359.2l-4.4-7c-18.5-29.4-28.2-63.3-28.2-98.2 0-101.7 82.8-184.5 184.6-184.5 49.3 0 95.6 19.2 130.4 54.1 34.8 34.9 56.2 81.2 56.1 130.5 0 101.8-84.9 184.6-186.6 184.6zm101.2-138.2c-5.5-2.8-32.8-16.2-37.9-18-5.1-1.9-8.8-2.8-12.4 2.8-3.7 5.6-14.3 18-17.6 21.8-3.2 3.7-6.5 4.2-12 1.4-5.5-2.8-23.2-8.5-44.2-27.1-16.4-14.6-27.4-32.7-30.6-38.2-3.2-5.6-.3-8.6 2.4-11.4 2.5-2.5 5.5-6.5 8.3-9.7 2.8-3.2 3.7-5.5 5.6-9.2 1.9-3.7 1-6.9-.5-9.7-1.4-2.8-12.4-29.9-17-41.1-4.5-10.9-9.1-9.4-12.4-9.6-3.2-.2-6.9-.2-10.6-.2-3.7 0-9.7 1.4-14.8 6.9-5.1 5.6-19.4 19-19.4 46.3 0 27.3 19.9 53.7 22.6 57.4 2.8 3.7 39.1 59.7 94.8 83.8 13.2 5.8 23.5 9.2 31.5 11.8 13.3 4.2 25.4 3.6 34.9 2.2 10.6-1.5 32.8-13.4 37.4-26.4 4.6-13 4.6-24.1 3.2-26.4-1.3-2.5-5-3.9-10.5-6.6z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
}

/* 3. Rimuovi ombre o stili del tema che potrebbero sporcarlo */
.btn-whatsapp {
    border: none !important;
    box-shadow: none !important;
    background: none !important;
}

/* Bordo anche su CONTATTI per avere il “gruppo” completo */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item a[href*="/contatti"]{
  
  border-right:none !important; /* condividi bordo col tel */
}

/* Hover */
header.wp-block-template-part .wp-block-navigation .wp-block-navigation-item a[href*="/contatti"]:hover{
  background:#0f2d73 !important;
}
header.wp-block-template-part .wp-block-navigation a[href^="tel:"]:hover{
  background:#f1f1f1 !important; color:#0f2d73 !important;
}

/* Menu mobile: pulsanti interi separati */
body.has-modal-open .wp-block-navigation__responsive-container a[href*="/contatti"],
body.has-modal-open .wp-block-navigation__responsive-container a[href^="tel:"]{
  display:block !important;
  width:100%;
  margin:4px 0;
  border-radius:8px !important;
  border-right:2px solid #183B8C !important; /* ripristina bordo mancante */
}

/* ===== ONDA IN FONDO AL PRIMO BLOCCO COVER ===== */
:root{
  --wave-min: 44px;              /* altezza minima */
  --wave-max: 120px;             /* altezza massima */
  --wave-ratio: 12;              /* rapporto originale SVG: 1440/120 = 12 */
}


/* ===== ONDA IN FONDO SOLO HERO (HOME) ===== */
body.home .wp-block-post-content > .wp-block-cover.alignfull:first-of-type{
  position: relative;
  overflow: visible;
}

body.home .wp-block-post-content > .wp-block-cover.alignfull:first-of-type::after{
  content:"";
  position:absolute;
  left:0; right:0;
  bottom:-1px;
  width:100%;
  height: clamp(var(--wave-min), calc(100vw / var(--wave-ratio)), var(--wave-max));
  pointer-events:none;
  z-index:2;

  background-image:url("https://mdc.forguest.eu/wp-content/uploads/2025/11/wave-top3-00db3c.svg");
  background-repeat:no-repeat;
  background-position:center bottom;
  background-size:100% auto;
}
/* ===== FINE ===== */




/* bordi stondati */


.wp-block-media-text.stondato img {
  border-radius: 20px;
}

/*mobileheight*/
/***********************
 * VARIABILI
 ***********************/
:root{
  /* Header */
  --header-h: 90px;   /* altezza stimata del menu fisso */
  --adminbar-h: 0px;
  /* Altezza hero per breakpoint */
  --hero-xs: 90svh;   /* <=480px */
  --hero-sm: 90svh;   /* 481–640px */
  --hero-wp: 90svh;   /* 641–782px (WP breakpoint) */
  --hero-md: 90svh;   /* 783–1024px */
  --hero-lg: 90svh;   /* 1025–1279px */
  --hero-xl: 100svh;  /* >=1280px */
  /* bonus extra per mobile */
  --hero-bonus: 12svh;
}
body.admin-bar{ --adminbar-h: 32px; }
@media (max-width:782px){ body.admin-bar{ --adminbar-h: 46px; }}

/***********************
 * RESET SPAZIO PRIMO BLOCCO
 ***********************/
.wp-site-blocks{ --wp--style--block-gap:0 !important; padding-top:0 !important; }
.wp-site-blocks > header.wp-block-template-part + *{
  margin-top:0 !important; margin-block-start:0 !important;
}

/***********************
 * HERO COVER (PRIMA COVER)
 ***********************/
.home .wp-block-cover.alignfull:first-of-type{
  position: relative;
  padding-top: calc(var(--header-h) + var(--adminbar-h) + env(safe-area-inset-top, 0px));
  margin-top:0 !important; margin-block-start:0 !important;
  min-height: calc(var(--hero-xl) - var(--header-h) - var(--adminbar-h)) !important;
}
body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
  min-height: calc(var(--hero-xl) - var(--header-h)) !important;
}

/* Video a pieno contenitore */
.home .wp-block-cover.alignfull:first-of-type .wp-block-cover__video-background{
  width:100%; height:100%; object-fit:cover;
}

/* Contenuto sopra video/onda */
.home .wp-block-cover.alignfull:first-of-type .wp-block-cover__inner-container{
  position: relative; z-index: 3; padding: 24px 16px 64px;
}

/***********************
 * BREAKPOINTS
 ***********************/

/* LG 1025–1279 */
@media (max-width:1279px) and (min-width:1025px){
  .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-lg) - var(--header-h) - var(--adminbar-h)) !important;
  }
  body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-lg) - var(--header-h)) !important;
  }
}

/* MD 783–1024 */
@media (max-width:1024px) and (min-width:783px){
  .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-md) - var(--header-h) - var(--adminbar-h)) !important;
  }
  body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-md) - var(--header-h)) !important;
  }
}

/* WP 641–782 */
@media (max-width:782px) and (min-width:641px){
  .home .wp-block-cover.alignfull:first-of-type{
    padding-top: calc(var(--header-h) + var(--adminbar-h) + env(safe-area-inset-top, 0px) + 8px);
    min-height: calc(var(--hero-wp) + var(--hero-bonus) - var(--header-h) - var(--adminbar-h)) !important;
  }
  body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-wp) + var(--hero-bonus) - var(--header-h)) !important;
  }
}

/* SM 481–640 */
@media (max-width:640px) and (min-width:481px){
  .home .wp-block-cover.alignfull:first-of-type{
    padding-top: calc(var(--header-h) + var(--adminbar-h) + env(safe-area-inset-top, 0px) + 8px);
    min-height: calc(var(--hero-sm) + var(--hero-bonus) - var(--header-h) - var(--adminbar-h)) !important;
  }
  body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-sm) + var(--hero-bonus) - var(--header-h)) !important;
  }
}

/* XS <=480 */
@media (max-width:480px){
  .home .wp-block-cover.alignfull:first-of-type{
    padding-top: calc(var(--header-h) + var(--adminbar-h) + env(safe-area-inset-top, 0px) + 8px);
    min-height: calc(var(--hero-xs) + var(--hero-bonus) - var(--header-h) - var(--adminbar-h)) !important;
  }
  body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(var(--hero-xs) + var(--hero-bonus) - var(--header-h)) !important;
  }
  .home .wp-block-cover.alignfull:first-of-type .wp-block-cover__inner-container{
    padding: 20px 14px 56px;
  }
}

/* Landscape basso */
@media (orientation:landscape) and (max-height:500px){
  .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(100lvh - var(--header-h) - var(--adminbar-h)) !important;
  }
  body:not(.admin-bar) .home .wp-block-cover.alignfull:first-of-type{
    min-height: calc(100lvh - var(--header-h)) !important;
  }
}

/***********************
 * ONDA sotto il testo (pseudo-elemento)
 ***********************/
.wp-site-blocks main .wp-block-cover.alignfull:first-of-type::after{
  z-index: 2;
}

/* Nascondi eventuale onda duplicata <figure> sotto l'hero su mobile */
@media (max-width:782px){
  .home .wp-block-post-content > figure.wp-block-image.wp-image-98,
  .home .wp-block-post-content > figure.wp-block-image img[src*="wave-top"]{
    display:none !important;
  }
}

/***********************
 * TIPOGRAFIA HERO
 ***********************/
@media (max-width:1024px){
  .home .wp-block-cover.alignfull:first-of-type h1{ font-size: clamp(1.8rem, 3.5vw, 2.2rem); }
  .home .wp-block-cover.alignfull:first-of-type p{  font-size: clamp(1rem, 2.6vw, 1.15rem); }
}
@media (max-width:640px){
  .home .wp-block-cover.alignfull:first-of-type h1{ font-size: clamp(1.6rem, 5vw, 2rem); }
  .home .wp-block-cover.alignfull:first-of-type p{  font-size: clamp(.95rem, 3.6vw, 1.05rem); }
}


/* **** icone servizi ****/
/* Trasforma il blocco Columns in una griglia */
.wp-block-columns.icone-marina{
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0,1fr)); /* desktop: 6 colonne */
  gap: 16px; /* spazio tra icone/etichette */
  align-items: start;
}

/* Annulla i margini/flex delle singole colonne del block editor */
.wp-block-columns.icone-marina > .wp-block-column{
  margin: 0 !important;
  flex: none !important;
  width: auto !important;
}

/* Tablet: 3 colonne */
@media (max-width: 1024px){
  .wp-block-columns.icone-marina{
    grid-template-columns: repeat(3, minmax(0,1fr));
  }
}

/* Mobile: 2 colonne */
@media (max-width: 781px){ /* breakpoint standard WP per Columns */
  .wp-block-columns.icone-marina{
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

/* Allinea immagine+testo al centro in ogni colonna (opzionale) */
.wp-block-columns.icone-marina .wp-block-column{
  text-align: center;
}
.wp-block-columns.icone-marina .wp-block-image{
  margin-inline: auto;
}

/* Cover con altezza fissa personalizzata */
/* Copri solo il blocco MAPPA DEL MARINA */
.home .wp-block-cover.cover-fixed-height{
  height: 250px !important;      /* altezza “target” */
  min-height: 250px !important;
  display: flex;
  align-items: center;           /* centra verticalmente il contenuto */
}

/* Riduci il padding globale interno */
.home .wp-block-cover.cover-fixed-height .wp-block-cover__inner-container{
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

/* Riduci i margini di titolo e testi */
.home .wp-block-cover.cover-fixed-height p{
  margin-top: 5px !important;
  margin-bottom: 5px !important;
}

/* Promo Capodanno: altezza in base al contenuto, non fissa */
.home .wp-block-cover.ticss-30184161{
  min-height: auto !important;   /* annulla i 300px inline */
  height: auto !important;
  padding-top: 30px;             /* o 20px, quello che vuoi */
  padding-bottom: 30px;          /* aggiungi un po' di respiro sotto */
}

/* Solo articoli: sovrascrivo l'altezza */
body.single-post .cover-fixed-height {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
}

/* Ritaglio immagine solo per articoli */
body.single-post .cover-fixed-height .wp-block-cover__image-background {
    height: 100% !important;
    width: 100% !important;
    object-fit: cover !important;
    background-size: cover !important;
    background-position: center !important;
}

/* Mantieni l'interno controllato negli articoli */
body.single-post .cover-fixed-height .wp-block-cover__inner-container {
    padding: 20px !important; /* modificabile */
}
/* SOLO articoli – sfondo bianco semitrasparente dietro al titolo nella cover */
body.single-post .wp-block-cover .wp-block-post-title {
    display: inline-block;
    background: rgba(255, 255, 255, 0.75); /* bianco 75% */
    color: #221550 !important;                /* testo scuro */
    padding: 10px !important;
    border-radius: 6px;
    backdrop-filter: blur(4px);            /* effetto vetro */
}

/* Su mobile: icona + testo restano sulla stessa riga */
@media (max-width: 781px){

  /* Il blocco che contiene icona + testo */
  .wp-block-columns.icon-text-row{
    flex-wrap: nowrap !important;   /* niente stack verticale */
    align-items: flex-start;
    column-gap: 10px;
  }

  .wp-block-columns.icon-text-row > .wp-block-column{
    margin: 0 !important;
  }

  /* colonna icona */
  .wp-block-columns.icon-text-row > .wp-block-column:first-child{
    flex: 0 0 20% !important;
    max-width: 20% !important;
  }

  /* colonna testo */
  .wp-block-columns.icon-text-row > .wp-block-column:last-child{
    flex: 0 0 80% !important;
    max-width: 80% !important;
    min-width: 0;
  }
}
.tpg-widget-heading-wrapper.tpg-widget-heading-wrapper {
    display: none !important;
}
.pillola-testo {
    font-size: 0.7rem !important;
}

@media (max-width: 781px) {
  .pillola-testo {
    font-size: 1.1rem !important;
  }
}
footer .wp-block-cover__background.has-background-dim {
    background-color: #221550 !important;
}
/* Pulsanti DETTAGLI per lo shortcode TPG con data-sc-id=462 */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .read-more a {
    display: block !important;          /* serve per fare width 100% */
    width: 100% !important;             /* pulsante a tutta larghezza */
    text-align: center !important;      /* centra il testo */

    background: linear-gradient(0deg, #295BB8 0%, #221550 100%) !important;
    border-radius: 20px !important;

    padding: 12px 20px !important;
    color: #ffffff !important;
    font-weight: 700 !important;         /* grassetto */
    text-transform: uppercase;
}

.tpg-shortcode-main-wrapper[data-sc-id="462"] .read-more a:hover {
    opacity: 0.85;
}

/* ======================================================
   NEWS – shortcode TPG con data-sc-id="462"
   Card stessa altezza + bottone in basso + stile pulsante
   ====================================================== */

/* ---- 1) Pulsante DETTAGLI personalizzato ---- */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .read-more a {
    display: block !important;
    width: 100% !important;
    text-align: center !important;

    background: linear-gradient(0deg, #295BB8 0%, #221550 100%) !important;
    border-radius: 20px !important;

    padding: 12px 20px !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    text-transform: uppercase;
}

.tpg-shortcode-main-wrapper[data-sc-id="462"] .read-more a:hover {
    opacity: 0.9;
}


/* ---- 2) CARD tutte stessa altezza + pulsante in basso ---- */

/* Ogni grid-item diventa un contenitore flessibile */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-grid-item {
    display: flex !important;
    flex-direction: column;
}

/* Card interna flessibile */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-holder {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;

    /* Ombra morbida + bordi arrotondati */
    box-shadow: 0 12px 30px rgba(0,0,0,0.08);
    border-radius: 20px;
    background: #ffffff;
    overflow: hidden;
    padding: 20px 20px 24px;
}

/* Riga interna (immagine + testo) come flex */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-holder .rt-row {
    display: flex !important;
    flex: 1 1 auto;
}

/* Rimuove i float delle sotto-colonne */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-holder .rt-row > .rt-col-sm-5,
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-holder .rt-row > .rt-col-sm-7 {
    float: none !important;
}

/* Colonna testo flessibile verticale */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-holder .rt-row > .rt-col-sm-7 {
    display: flex !important;
}

/* Contenitore testo (titolo + meta + bottone) */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-detail {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
}

/* Pulsante fissato in basso */
.tpg-shortcode-main-wrapper[data-sc-id="462"] .rt-detail .read-more {
    margin-top: auto !important;
    width: 100%;
    display: block;
}
/* Classe personalizzata per arrotondare solo le immagini selezionate */
.round-image img {
    /* Imposta il raggio del bordo (es. 20 pixel per un effetto morbido) */
    border-radius: 20px; 
    
    /* Assicura che l'immagine sia ritagliata all'interno del raggio */
    overflow: hidden; 
}

/* Regola opzionale per i contenitori (figure) per maggiore compatibilità */
.wp-block-image.round-image figure {
    border-radius: 20px;
    overflow: hidden;
}
/* CLASSE PER IL CONTENITORE: Rimuoviamo il Flexbox aggressivo */
.centra-titoli {
    /* Centra tutti gli elementi figli a livello di blocco */
    text-align: center;
}

/* CLASSE GENERALE (H1 E P): GESTISCE LO SFONDO E LA LARGHEZZA LIMITATA */
.sfondo-titolo {
    /* **CRUCIALE:** Trasforma l'elemento in un blocco per andare a capo
       ma limita la larghezza solo al contenuto. */
    display: block !important; 
    
    /* Limita la larghezza al contenuto (testo + padding) */
    width: fit-content; 
    
    /* **CRUCIALE:** Centra l'elemento BLOCCO all'interno del contenitore (centra-titoli) */
    margin-left: auto;
    margin-right: auto;
    
    /* Aggiunge i 10px di spazio interno tutto intorno */
    padding: 10px;
    
    /* Forza colore e sfondo */
    color: white !important; 
    background-color: rgba(230, 179, 92, 0.9) !important;
    
    /* Assicura lo spazio verticale tra i titoli */
    margin-top: 10px;
    margin-bottom: 10px;
    
    position: relative; 
    z-index: 10;
}

/* REGOLA PER IL PULSANTE (Se usa la classe standard Gutenberg wp-block-button) */
.wp-block-button {
    /* Assicura che il blocco pulsante sia centrato, se non lo è già */
    text-align: center;
}

/* Sovrascrivi le regole di larghezza fissa e layout per la tua tabella responsive */

@media screen and (max-width: 768px) {
    
    /* 1. Forzare l'annullamento della larghezza fissa sulla tabella (la causa del problema) */
    .tabella-mobile-scroll table {
        table-layout: auto !important; /* Molto importante: dice al browser di basarsi sul contenuto */
        width: auto !important; /* Fa sì che la tabella assuma la sua larghezza naturale */
        min-width: 600px !important; /* Opzionale: Assicura una larghezza minima se il contenuto è poco */
    }
    
    /* 2. Forzare lo scorrimento sul contenitore del blocco */
    .tabella-mobile-scroll {
        /* Assicurati che l'overflow sia auto sul contenitore. Potrebbe essere un div, o il blocco stesso */
        overflow-x: auto !important; 
        -webkit-overflow-scrolling: touch; /* Migliora lo scorrimento su iOS */
        width: 100%; /* Il contenitore resta al 100% della viewport */
    }
    
    /* 3. Evitare che il testo vada a capo nelle celle lunghe */
    .tabella-mobile-scroll table th,
    .tabella-mobile-scroll table td {
        white-space: nowrap; /* Mantiene il contenuto su una singola riga */
    }
}
/* data field in booking */
/* Applica lo stile dei campi testo anche ai campi data */
.cf7-ormeggio input[type="date"] {
    width: 100%;
    box-sizing: border-box;
    margin: 5px;
    padding: 10px 14px;
    border-radius: 12px !important;
    border: 1px solid #d4d9ea;
    background: #f6f7fc;
    font-size: .95rem;
    color: #27195c;
    outline: 0;
    min-height: 45px; /* Per allinearli agli altri */
    font-family: inherit;
}

/* Sistema l'allineamento su desktop (30% come gli altri) */
@media (min-width: 720px) {
    .cf7-ormeggio fieldset:nth-of-type(2) p {
        display: inline-block;
        width: calc(45%); /* Regolato per stare su una riga in coppia */
        vertical-align: top;
        margin-right: 15px;
    }
}
/*table first row strong */

.wp-block-table tr:first-child td, 
.wp-block-table thead th {
    font-weight: bold !important;
    color: #221550; /* Colore coerente con il tuo sito */
}

