.elementor-kit-8{--e-global-color-primary:#012A4A;--e-global-color-secondary:#E5D8C6;--e-global-color-text:#1A1A1A;--e-global-color-accent:#E5D8C6;--e-global-color-navylgt:#023E67;--e-global-color-cream:#F6F3EE;--e-global-color-white:#FFFFFF;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-size:56px;--e-global-typography-primary-font-weight:400;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Playfair Display";--e-global-typography-secondary-font-size:38px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Nunito Sans";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.75em;--e-global-typography-accent-font-family:"Nunito Sans";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-line-height:1.6em;--e-global-typography-accent-letter-spacing:0.3px;--e-global-typography-script-font-family:"Pinyon Script";--e-global-typography-script-font-size:54px;--e-global-typography-script-font-weight:400;--e-global-typography-script-line-height:1.45em;--e-global-typography-nav-font-family:"Nunito Sans";--e-global-typography-nav-font-size:13px;--e-global-typography-nav-font-weight:400;--e-global-typography-nav-text-transform:uppercase;--e-global-typography-nav-letter-spacing:1.5px;--e-global-typography-btn-font-family:"Nunito Sans";--e-global-typography-btn-font-size:13px;--e-global-typography-btn-font-weight:600;--e-global-typography-btn-text-transform:lowercase;--e-global-typography-btn-letter-spacing:1.5px;--e-global-typography-1bd5952-font-family:"Lato";--e-global-typography-1bd5952-font-size:60px;--e-global-typography-1bd5952-font-weight:400;--e-global-typography-1bd5952-line-height:1em;--e-global-typography-bf528c5-font-family:"Lato";--e-global-typography-bf528c5-font-size:40px;--e-global-typography-bf528c5-line-height:1em;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1320px;}.e-con{--container-max-width:1320px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8{--e-global-typography-primary-font-size:44px;--e-global-typography-primary-line-height:1.22em;--e-global-typography-secondary-font-size:32px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:15px;--e-global-typography-script-font-size:44px;--e-global-typography-script-line-height:1.45em;--e-global-typography-nav-font-size:12px;--e-global-typography-nav-letter-spacing:1px;--e-global-typography-btn-font-size:13px;--e-global-typography-1bd5952-font-size:40px;--e-global-typography-1bd5952-line-height:1em;--e-global-typography-bf528c5-font-size:32px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8{--e-global-typography-primary-font-size:32px;--e-global-typography-primary-line-height:1.25em;--e-global-typography-secondary-font-size:26px;--e-global-typography-secondary-line-height:1.35em;--e-global-typography-text-font-size:15px;--e-global-typography-text-line-height:1.7em;--e-global-typography-accent-font-size:14px;--e-global-typography-script-font-size:34px;--e-global-typography-script-line-height:1.4em;--e-global-typography-nav-font-size:14px;--e-global-typography-btn-font-size:13px;--e-global-typography-1bd5952-font-size:32px;--e-global-typography-1bd5952-line-height:1em;--e-global-typography-bf528c5-font-size:20px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===== RB Property Management - CSS globale del progetto =====
   Colori e font arrivano SEMPRE dai Global Colors/Fonts (variabili --e-global-*).
   Modifica i valori in Impostazioni sito > Colori/Caratteri globali, non qui. */

/* --- Header: trasparente sopra la hero, navy quando diventa sticky --- */
.rb-header{position:absolute;left:0;right:0;top:0;}
.rb-header.elementor-sticky--effects{background-color:var(--e-global-color-primary)!important;box-shadow:0 2px 12px rgba(28,43,71,.18);}
.rb-header .elementor-nav-menu a.elementor-item{padding-left:17px;padding-right:17px;}
.rb-logo-pm .elementor-heading-title{border-left:1px solid var(--e-global-color-cream);padding-left:12px;display:block;}

/* --- Parola in corsivo dentro un titolo (es. "valore") --- */
/* Great Vibes non ha un corsivo vero e ha un occhio piccolo: niente font-style
   italic (verrebbe inclinato artificialmente) e corpo maggiorato. */
.rb-script em,.rb-script i{font-family:var(--e-global-typography-script-font-family),cursive;font-style:normal;font-size:1.5em;line-height:1.15;}

/* --- Titolo di sezione con filetto sotto --- */
.rb-underline .elementor-heading-title{position:relative;padding-bottom:22px;display:inline-block;}
.rb-underline .elementor-heading-title:after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:70px;height:1px;background:var(--e-global-color-primary);}

/* --- Badge circolari rotanti (markup generato dallo shortcode [rb_badge]) ---
   Il testo gira su un cerchio di raggio 72 su 100: lo spazio che resta fino al
   bordo e' il padding interno. Per cambiare la dimensione del testo agire su
   .rb-badge-text; le ripetizioni si impostano nello shortcode. */
.rb-badge{position:relative;width:150px;height:150px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.rb-badge-disc{position:absolute;inset:0;border-radius:50%}
.rb-badge-ring{position:relative;width:100%;height:100%;animation:rb-spin 22s linear infinite}
.rb-badge-text{font-family:var(--e-global-typography-text-font-family),sans-serif;font-size:14px;letter-spacing:1.2px}
.rb-badge-icon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}
/* Le icone del designer sono sagome piene: il colore si eredita da
   "color" sul contenitore (fill="currentColor" sul tag <svg>).
   Altezza automatica: le icone non sono quadrate. */
.rb-badge-icon svg{width:42px;height:auto;max-height:38px}
@keyframes rb-spin{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.rb-badge-ring{animation:none}}

/* Temi del badge: chiaro = senza disco (hero) | navy = disco blu profondo
   (sez. Per viaggiatori) | sabbia = disco sabbia (sez. Casa dolce casa). */
.rb-badge--chiaro .rb-badge-text{fill:var(--e-global-color-cream)}
.rb-badge--chiaro .rb-badge-icon{color:var(--e-global-color-cream)}
.rb-badge--navy .rb-badge-disc{background:var(--e-global-color-primary)}
.rb-badge--navy .rb-badge-text{fill:var(--e-global-color-cream)}
.rb-badge--navy .rb-badge-icon{color:var(--e-global-color-cream)}
.rb-badge--sabbia .rb-badge-disc{background:var(--e-global-color-secondary)}
.rb-badge--sabbia .rb-badge-text{fill:var(--e-global-color-primary)}
.rb-badge--sabbia .rb-badge-icon{color:var(--e-global-color-primary)}

/* Posizionamento */
/* La POSIZIONE dei due badge della hero si regola dall'editor Elementor:
   seleziona il widget > scheda Avanzate > Posizionamento > Offset orizzontale/verticale.
   Qui sotto c'e' solo la loro dimensione. */
.rb-badge-pos-left,.rb-badge-pos-right{z-index:4}
.rb-badge-pos-left .rb-badge,.rb-badge-pos-right .rb-badge{width:130px;height:130px}
.rb-badge-overlap-top{position:absolute;top:-75px;left:50%;transform:translateX(-50%);z-index:6}
.rb-badge-overlap-bottom{position:absolute;bottom:-75px;left:50%;transform:translateX(-50%);z-index:6}
@media(max-width:767px){
 .rb-badge-pos-left .rb-badge,.rb-badge-pos-right .rb-badge{width:100px;height:100px}
 .rb-badge-icon svg{width:32px;max-height:28px}
}
/* --- CTA "esplora" in fondo alla hero --- */
.rb-explore{position:absolute!important;left:50%;bottom:34px;transform:translateX(-50%);z-index:4;width:auto!important;}
.rb-explore .elementor-icon{animation:rb-bob 1.8s ease-in-out infinite}
@keyframes rb-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(prefers-reduced-motion:reduce){.rb-badge svg.rb-badge-ring,.rb-explore .elementor-icon{animation:none}}

/* --- Barra di prenotazione: SOLO SEGNAPOSTO grafico --- */
.rb-booking{display:flex;align-items:center;justify-content:center;gap:48px;flex-wrap:wrap}
.rb-booking .f{display:flex;align-items:center;gap:14px}
.rb-booking label{font-family:var(--e-global-typography-script-font-family),Georgia,serif;font-style:italic;font-size:16px;color:var(--e-global-color-primary)}
.rb-booking input{border:0;background:var(--e-global-color-white);padding:10px 18px;min-width:190px;border-radius:2px;font-family:var(--e-global-typography-text-font-family),sans-serif;font-size:13px;color:var(--e-global-color-primary)}
.rb-booking .b{width:42px;height:42px;border-radius:50%;background:var(--e-global-color-white);display:flex;align-items:center;justify-content:center;border:0}
.rb-booking .b svg{width:18px;height:18px;stroke:var(--e-global-color-primary);fill:none}

/* --- Responsive --- */
@media(max-width:1024px){.rb-hero-badges{bottom:100px;padding:0 5%}}
@media(max-width:767px){
 .rb-booking{flex-direction:column;gap:16px}
 .rb-hero-badges{bottom:70px;padding:0 4%}
 .rb-badge{width:104px;height:104px}
 .rb-badge .rb-badge-icon svg{width:32px;max-height:28px}
}

/* --- Footer: filetto e testi smorzati, derivati dal colore globale Cream --- */
.rb-muted{opacity:.72}
.rb-social .elementor-social-icon{border:1px solid var(--e-global-color-cream);background:transparent!important}
.rb-social .elementor-social-icon:hover{opacity:.75}


/* Slider "Per viaggiatori": immagini ad altezza uniforme come nella bozza */
.rb-carousel .swiper-slide img{height:430px;object-fit:cover;width:100%}
@media(max-width:767px){.rb-carousel .swiper-slide img{height:280px}}

/* Filetto sottile sopra la riga finale del footer.
   Colore derivato dal globale Warm ivory (14%): niente valori hardcoded. */
.rb-footer-rule{border-top-color:color-mix(in srgb, var(--e-global-color-cream) 14%, transparent)!important}/* End custom CSS */