/*
Theme Name: Astra Child Rosa Azzurra
Theme URI: https://casalelarosaazzurra.it/
Description: Tema child Astra per il sito Rosa Azzurra
Author: [Zeropare]
Template: astra
Version: 1.0.1
Text Domain: astra-child-rosa-azzurra
*/

/* =========================================================
   VARIABILI GLOBALI
   ========================================================= */
   
@import url('https://fonts.googleapis.com/css2?family=Allura&display=swap');
   
   
:root{
  --ra-rosa:#d95c84;
  --ra-azzurro:#2b76d2;
  --ra-text:#2e2e2e;
  --ra-muted:#6f6f6f;
  --ra-bg:#f4eee6;
  --ra-paper:#f7f2eb;
  --ra-beige:#c8ad90;
  --ra-beige-dark:#b89574;
  --ra-brown:#6f5542;
  --ra-brown-deep:#6f5542;
  --ra-blue-soft:#8daabd;
  --ra-blue-soft-dark:#7799af;
  --ra-card-bg:#fff;
  --ra-shadow:0 10px 24px rgba(0,0,0,.08);
  --ra-site-bg-image:url("https://casalelarosaazzurra.it/wp-content/uploads/2026/03/Header-sfondo.png");
  --ra-header-bg-desktop:url("assets/images/header/D1920x700.png");
  --ra-header-bg-tablet:url("assets/images/header/T1024 x 700.png");
  --ra-header-bg-mobile:url("assets/images/header/M768x900.png");
}

/* =========================================================
   BASE / LAYOUT
   ========================================================= */
html,
body{
  background-color:var(--ra-bg);
}

body{
  font-family:"Open Sans",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--ra-text);
  background-image:var(--ra-site-bg-image);
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
  background-attachment:fixed;
}

#page,
.site,
.site-content,
.ast-container,
.entry-content,
.content-area{
  background:transparent;
}

.container{
  max-width:1200px;
  margin:0 auto;
  padding:0 clamp(16px,3vw,32px);
}

h1{
  font-family:"Playfair Display",serif !important;
}

h2{
  font-family:"Allura",cursive !important;
}

.ra-section-title{
  font-family:"Allura",cursive !important;
  color:#4A3728 !important;
}

.ra-section-kicker{
  font-family:"Playfair Display",serif !important;
}

@media (max-width:921px){
  body{
    background-attachment:scroll;
  }
}

/* =========================================================
   BOTTONI GLOBALI
   ========================================================= */
.percenna-btn,
.ra-btn{
  display:inline-block;
  color:#fff !important;
  text-decoration:none;
  font-weight:600;
  border:none;
  border-radius:999px;
  transition:transform .18s ease,filter .18s ease,background .18s ease;
}

.percenna-btn{
  padding:.9em 1.4em;
  background:linear-gradient(135deg,var(--ra-beige),var(--ra-blue-soft)) !important;
}

.ra-btn{
  align-self:flex-start;
  padding:.6em 1em;
  background:linear-gradient(135deg,var(--ra-beige),var(--ra-blue-soft)) !important;
}

.percenna-btn:hover,
.ra-btn:hover{
  filter:brightness(1.06);
  transform:translateY(-1px);
  background:linear-gradient(135deg,var(--ra-beige-dark),var(--ra-blue-soft-dark)) !important;
}
/* =========================================================
   Colore tasto prenota
   ========================================================= */
.ast-builder-button-wrap .ast-custom-button,
.ast-custom-button,
.ast-button,
a.ast-button{
  background:linear-gradient(135deg,var(--ra-beige),var(--ra-beige-dark)) !important;
  color:#fff !important;
  border:none !important;
  border-radius:14px !important;
  box-shadow:0 8px 18px rgba(111,85,66,.12) !important;
  font-family:"Cormorant Garamond",Georgia,serif !important;
  font-size:17px !important;
  letter-spacing:.3px;
}

.ast-builder-button-wrap .ast-custom-button:hover,
.ast-custom-button:hover,
.ast-button:hover,
a.ast-button:hover{
  background:linear-gradient(135deg,var(--ra-beige-dark),#a98566) !important;
  transform:translateY(-1px);
  box-shadow:0 12px 24px rgba(111,85,66,.16) !important;
}

@media (min-width:922px){
  .ast-builder-button-wrap .ast-custom-button,
  .ast-custom-button,
  .ast-button,
  a.ast-button{
    padding:18px 40px !important;
    font-size:20px !important;
    border-radius:20px !important;
    letter-spacing:1.2px;
    box-shadow:0 12px 28px rgba(111,85,66,.18) !important;
  }
}

/* =========================================================
   HEADER
   ========================================================= */
.site-header,
.ast-primary-header-bar,
.ast-builder-grid-row-container,
.ast-desktop .main-header-container{
  background-color:transparent;
  border-bottom:1px solid rgba(143,114,92,.10);
}

.site-header,
.ast-primary-header-bar,
.ast-builder-grid-row-container,
.ast-desktop .main-header-container,
.site-footer,
.ast-footer-wrap,
.ast-builder-footer-grid,
.ast-builder-grid-row-container.site-footer-focus-item,
.ast-footer-copyright{
  background-repeat:no-repeat;
  background-size:cover;
  background-position:center center;
}

.site-header .ast-builder-grid-row,
.site-header .ast-builder-grid-row > div,
.site-footer .ast-builder-grid-row,
.site-footer .ast-builder-grid-row > div{
  background-color:transparent;
}

.ast-builder-grid-row-container{
  padding-top:6px;
  padding-bottom:6px;
}

.site-branding,
.ast-site-identity{
  text-align:center !important;
}

.site-branding img,
.custom-logo{
  display:block !important;
  margin:0 auto !important;
  max-height:86px !important;
  width:auto !important;
}

.main-header-menu,
.ast-builder-menu-1 .main-header-menu{
  justify-content:center !important;
}

/* =========================================================
   Menu Header
   ========================================================= */
.main-header-menu > .menu-item > a,
.ast-builder-menu-1 .menu-item > .menu-link{
  font-family:"Cormorant Garamond",Georgia,serif !important;
  font-size:25px !important;
  color:var(--ra-brown) !important;
  letter-spacing:.8px;
  position:relative;
}

.main-header-menu > .menu-item > a:hover,
.ast-builder-menu-1 .menu-item > .menu-link:hover{
  color:var(--ra-beige-dark) !important;
}

.main-header-menu > .menu-item > a::after,
.ast-builder-menu-1 .menu-item > .menu-link::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-4px;
  width:0;
  height:1px;
  background:var(--ra-beige-dark);
  transition:width .25s ease;
}

.main-header-menu > .menu-item > a:hover::after,
.ast-builder-menu-1 .menu-item > .menu-link:hover::after{
  width:100%;
}

.ast-builder-social-element,
.ast-header-social-wrap{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  line-height:1 !important;
}

.ast-builder-social-element a,
.ast-header-social-wrap a{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto;
  height:auto;
  color:var(--ra-brown) !important;
  fill:var(--ra-brown) !important;
  opacity:.9;
}

.ast-builder-social-element a:hover,
.ast-header-social-wrap a:hover{
  color:var(--ra-beige-dark) !important;
  fill:var(--ra-beige-dark) !important;
}

.header-phone{
  font-family:"Cormorant Garamond",Georgia,serif;
  font-size:20px;
  color:var(--ra-brown);
  text-decoration:none;
  letter-spacing:.8px;
  display:flex;
  align-items:center;
  line-height:1;
  opacity:.9;
  height:100%;
  position:relative;
  top:-2px;
}

.header-phone::before{
  content:"📞";
  margin-right:8px;
  font-size:16px;
}

.header-phone:hover{
  color:var(--ra-beige-dark);
}

.ast-builder-layout-element{
  display:flex;
  align-items:center;
}

.ast-builder-layout-element .header-phone{
  display:flex;
  align-items:center;
  height:100%;
}

.menu-toggle,
.ast-mobile-menu-trigger-minimal,
.ast-button-wrap .menu-toggle.main-header-menu-toggle,
.ast-header-break-point .main-header-menu-toggle{
  background:var(--ra-beige) !important;
  color:#fff !important;
  border:none !important;
  border-radius:12px !important;
}

.menu-toggle:hover,
.ast-mobile-menu-trigger-minimal:hover,
.ast-button-wrap .menu-toggle.main-header-menu-toggle:hover,
.ast-header-break-point .main-header-menu-toggle:hover{
  background:var(--ra-beige-dark) !important;
}

.menu-toggle .ast-mobile-svg,
.main-header-menu-toggle .ast-mobile-svg{
  fill:#fff !important;
  color:#fff !important;
}

.ast-above-header-bar .widget_text,
.ast-above-header-bar .textwidget,
.ast-primary-header-bar .widget_text,
.ast-primary-header-bar .textwidget{
  color:var(--ra-brown);
  font-size:14px;
  line-height:1.4;
  overflow-wrap:anywhere;
}

.ast-header-html,
.ast-header-html-1,
.ast-header-html-2,
.ast-builder-html-element,
.ast-builder-layout-element .widget,
.ast-builder-layout-element .textwidget,
.ast-builder-layout-element p,
.ast-builder-layout-element a,
.ast-builder-layout-element span{
  color:#8f725c !important;
  font-family:'Cormorant Garamond',serif !important;
}

.ast-header-html a,
.ast-header-html-1 a,
.ast-header-html-2 a,
.ast-builder-html-element a{
  color:#8f725c !important;
  text-decoration:none !important;
}

.ast-header-html a:hover,
.ast-header-html-1 a:hover,
.ast-header-html-2 a:hover,
.ast-builder-html-element a:hover{
  color:#b89574 !important;
}

.ast-builder-layout-element input,
.ast-builder-layout-element label[for*="telephone"],
.ast-builder-layout-element .wp-block-jetpack-contact-form,
.ast-builder-layout-element .contact-form{
  display:none !important;
}

@media (min-width:922px){
  .site-branding img,
  .custom-logo,
  .ast-site-identity img{
    max-height:500px !important;
    width:auto !important;
  }

  .site-branding,
  .ast-site-identity{
    padding-top:6px;
    padding-bottom:6px;
  }
}

@media (max-width:921px){
  .site-branding img,
  .custom-logo{
    max-height:250px !important;
  }

  .ast-builder-social-element,
  .ast-header-social-wrap{
    gap:8px !important;
  }

  .ast-primary-header-bar{
    position:relative;
  }

  .ast-primary-header-bar::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:3;
    background-image:
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/sa.svg'),
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/da.svg');
    background-repeat:no-repeat;
    background-position:
      top -15px left -15px,
      top -15px right -15px;
    background-size:
      clamp(70px,14vw,130px),
      clamp(70px,14vw,130px);
  }

  .ast-primary-header-bar::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:3;
    background-image:
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/sb.svg'),
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/db.svg');
    background-repeat:no-repeat;
    background-position:
      bottom -15px left -15px,
      bottom -15px right -15px;
    background-size:
      clamp(70px,14vw,130px),
      clamp(70px,14vw,130px);
  }
}

@media (min-width:768px) and (max-width:921px){
  .ast-primary-header-bar{
    position:relative;
  }

  .ast-primary-header-bar .ast-builder-grid-row{
    display:grid !important;
    grid-template-columns:1fr auto 1fr !important;
    align-items:center !important;
    column-gap:20px;
    min-height:185px;
    padding-left:26px;
    padding-right:26px;
  }

  .ast-primary-header-bar::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:3;
    background-image:
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/sa.svg'),
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/da.svg');
    background-repeat:no-repeat;
    background-position:
      top -40px left -40px,
      top -40px right -40px;
    background-size:150px,150px;
  }

  .ast-primary-header-bar::after{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    z-index:3;
    background-image:
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/sb.svg'),
      url('https://casalelarosaazzurra.it/wp-content/uploads/2026/03/db.svg');
    background-repeat:no-repeat;
    background-position:
      bottom -40px left -40px,
      bottom -40px right -40px;
    background-size:150px,150px;
  }

  .ast-primary-header-bar .site-header-primary-section-left,
  .ast-primary-header-bar .site-header-primary-section-right{
    display:flex !important;
    align-items:center !important;
    min-width:0;
  }

  .ast-primary-header-bar .site-header-primary-section-left{
    justify-content:flex-start !important;
  }

  .ast-primary-header-bar .site-header-primary-section-right{
    justify-content:flex-end !important;
  }

  .ast-primary-header-bar .site-header-primary-section-center{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    text-align:center !important;
  }

  .ast-primary-header-bar .ast-site-identity{
    margin:0 auto !important;
    transform:none !important;
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .ast-primary-header-bar .ast-site-identity a{
    display:inline-flex !important;
    justify-content:center !important;
    align-items:center !important;
  }

  .ast-primary-header-bar .ast-site-identity img,
  .ast-primary-header-bar .custom-logo{
    display:block !important;
    margin:0 auto !important;
  }

  .ast-primary-header-bar .ast-header-button-1,
  .ast-primary-header-bar .ast-mobile-menu-trigger,
  .ast-primary-header-bar .ast-button-wrap{
    position:relative;
    z-index:4;
    margin:0 !important;
  }

  .ast-primary-header-bar .ast-header-button-1 .ast-custom-button,
  .ast-primary-header-bar .menu-toggle,
  .ast-primary-header-bar .ast-button-wrap .menu-toggle{
    transform:scale(.92);
    transform-origin:center center;
  }
}

@media (min-width:922px){
  .ast-primary-header-bar::before,
  .ast-primary-header-bar::after{
    display:none;
  }
}

/* =========================================================
   HERO / SLIDER
   ========================================================= */

.percenna-hero{
  position:relative;
  min-height:clamp(60vh,70vh,82vh);
  display:flex;
  align-items:center;
  justify-content:center;
  background-image:var(--hero-bg);
  background-size:cover;
  background-position:center;
  background-color:var(--ra-bg) !important;
  border-radius:28px;
  overflow:hidden;
  isolation:isolate;
}

.percenna-hero__overlay{
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(180deg,rgba(76,55,40,.18),rgba(76,55,40,.28)) !important;
}

.percenna-hero__content{
  position:relative;
  z-index:1;
  width:100%;
  text-align:center;
  color:#fff;
  padding-inline:20px;
}

.percenna-hero__content::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-48%);
  width:min(760px,92%);
  height:min(320px,58%);
  background:radial-gradient(circle,rgba(76,55,40,.18) 0%,rgba(76,55,40,.10) 45%,rgba(76,55,40,0) 75%);
  z-index:-1;
  pointer-events:none;
}

.percenna-hero__title{
  font-family:"Allura", cursive !important;
  font-size:clamp(58px,7vw,96px);
  letter-spacing:0;
  margin:0 auto .35em;
  max-width:11.5ch;
  line-height:1.02;
  text-align:center;
  display:inline-block;
  padding:22px 42px;
  color:#e8ddd1 !important;
  background:rgba(111,85,66,.46);
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  box-shadow:
    0 14px 32px rgba(53,39,28,.24),
    0 4px 10px rgba(53,39,28,.18),
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(53,39,28,.10);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
  text-shadow:
    0 1px 0 rgba(255,255,255,.10),
    0 2px 4px rgba(53,39,28,.22),
    0 6px 14px rgba(53,39,28,.18) !important;
}

.percenna-hero__subtitle{
  display:none !important;
}

.percenna-hero .percenna-btn,
.percenna-hero .ra-btn,
.percenna-hero .wp-block-button__link{
  background:#CFB091 !important;
  color:#f6efe8 !important;
  border:none !important;
  box-shadow:0 8px 20px rgba(76,55,40,.16) !important;
  font-family:"Allura", cursive !important;
  font-size:clamp(28px,2.2vw,38px) !important;
  font-weight:400 !important;
  line-height:1 !important;
  letter-spacing:0 !important;
  padding:18px 34px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}

.percenna-hero .percenna-btn:hover,
.percenna-hero .ra-btn:hover,
.percenna-hero .wp-block-button__link:hover{
  background:#5a3f31 !important;
}
/* STATO NORMALE → testo marrone */
.percenna-hero .percenna-btn,
.percenna-hero .percenna-btn *,
.percenna-hero .ra-btn,
.percenna-hero .ra-btn *,
.percenna-hero .wp-block-button__link,
.percenna-hero .wp-block-button__link *{
  color:#5a3f31 !important;
}
/* HOVER → testo bianco */
.percenna-hero .percenna-btn:hover,
.percenna-hero .percenna-btn:hover *,
.percenna-hero .ra-btn:hover,
.percenna-hero .ra-btn:hover *,
.percenna-hero .wp-block-button__link:hover,
.percenna-hero .wp-block-button__link:hover *{
  color:#ffffff !important;
}
.percenna-hero .ra-hero-swiper{
  position:absolute;
  inset:0;
  z-index:-1;
  width:100%;
  height:100%;
}

.percenna-hero .ra-hero-swiper .swiper-wrapper,
.percenna-hero .ra-hero-swiper .swiper-slide{
  width:100%;
  height:100%;
}

.percenna-hero .ra-hero-slide{
  width:100%;
  height:100%;
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
}

.percenna-hero .swiper-slide-active .ra-hero-slide{
  animation:ra-kenburns 9s ease-in-out both;
}

@keyframes ra-kenburns{
  from{ transform:scale(1.03); }
  to{ transform:scale(1.12); }
}

@media (prefers-reduced-motion:reduce){
  .percenna-hero .swiper-slide-active .ra-hero-slide{
    animation:none;
  }
}

.percenna-hero .swiper-pagination{
  position:absolute;
  bottom:16px !important;
  left:0;
  width:100%;
  z-index:2;
}

.percenna-hero .swiper-pagination-bullet{
  width:9px;
  height:9px;
  opacity:.65;
  transform:scale(.95);
  background:#bfa084 !important;
}

.percenna-hero .swiper-pagination-bullet-active{
  opacity:1;
  transform:scale(1.15);
  background:#8daabd !important;
}

.percenna-hero .ra-hero-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:2;
  width:44px;
  height:44px;
  border-radius:999px;
  border:0;
  cursor:pointer;
  background:rgba(247,242,235,.88);
  box-shadow:0 10px 24px rgba(0,0,0,.12);
  transition:transform .18s ease,filter .18s ease,opacity .18s ease;
  opacity:.92;
}

.percenna-hero .ra-hero-nav:hover{
  filter:brightness(1.03);
  transform:translateY(-50%) scale(1.03);
}

.percenna-hero .ra-hero-prev{ left:14px; }
.percenna-hero .ra-hero-next{ right:14px; }

.percenna-hero .ra-hero-nav::before{
  content:"";
  display:inline-block;
  width:10px;
  height:10px;
  border-top:2px solid rgba(111,85,66,.85);
  border-right:2px solid rgba(111,85,66,.85);
}

.percenna-hero .ra-hero-prev::before{
  transform:rotate(-135deg);
  margin-left:2px;
}

.percenna-hero .ra-hero-next::before{
  transform:rotate(45deg);
  margin-left:-2px;
}

@media (max-width:921px){
  .percenna-hero__title{
    font-size:clamp(46px,8vw,72px);
    max-width:12.5ch;
    padding:18px 30px;
    border-radius:24px;
  }

  .percenna-hero__content::before{
    width:96%;
    height:46%;
  }

  .percenna-hero .percenna-btn,
  .percenna-hero .ra-btn,
  .percenna-hero .wp-block-button__link{
    font-size:clamp(24px,3.2vw,32px) !important;
    padding:16px 24px !important;
  }
}

@media (max-width:640px){
  .percenna-hero{
    border-radius:20px;
    min-height:clamp(56vh,64vh,74vh);
  }

  .percenna-hero__content{
    padding-inline:14px;
  }

  .percenna-hero__title{
    font-size:clamp(34px,9.5vw,50px);
    max-width:13ch;
    line-height:1.06;
    padding:14px 18px;
    border-radius:18px;
  }

  .percenna-hero .ra-hero-nav{
    display:none;
  }

  .percenna-hero .percenna-hero__actions,
  .percenna-hero .wp-block-buttons,
  .percenna-hero .buttons{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    justify-content:center !important;
    align-items:stretch !important;
    gap:10px !important;
  }

  .percenna-hero .wp-block-button{
    flex:1 1 0 !important;
    margin:0 !important;
  }

  .percenna-hero .percenna-btn,
  .percenna-hero .ra-btn,
  .percenna-hero .wp-block-button__link{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:48% !important;
    min-height:46px !important;
    padding:10px 12px !important;
    font-size:22px !important;
    line-height:1 !important;
    text-align:center !important;
    white-space:normal !important;
    border-radius:999px !important;
    margin:0 !important;
  }
}
/* === Presentazione Home === */
/* =========================================================
   HOME — STRUTTURA GENERALE
   ========================================================= */
.home .site-content,
.home .entry-content,
.home .content-area{
  background:transparent !important;
}

.home .site-content{
  margin-top:30px;
}

.ra-home-section:last-of-type{
  margin-bottom:40px;
}

.ra-home-section .ra-section-kicker{
  color:#A7866A !important;
}

.ra-home-section h2,
.ra-home-section h3{
  color:#4A3728 !important;
}

.ra-home-section p{
  color:#6A5443 !important;
}

.home .percenna-intro__text,
.home .ra-home-section,
.home .ra-booking-copy{
  text-align:inherit;
}

.home .percenna-intro__text h2,
.home .ra-home-section h2,
.home .ra-home-section .ra-section-title,
.home .ra-booking-copy h2,
.home .ra-booking-copy h1{
  display:inline-block;
  padding:14px 24px;
  margin-bottom:18px;
  background:rgba(247,242,235,.55);
  border:1px solid rgba(149,123,101,.14);
  border-radius:24px;
  box-shadow:0 6px 18px rgba(109,87,69,.08);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
}

@media (max-width:921px){
  .home .percenna-intro__text h2,
  .home .ra-home-section h2,
  .home .ra-home-section .ra-section-title,
  .home .ra-booking-copy h2,
  .home .ra-booking-copy h1{
    padding:12px 18px;
    border-radius:20px;
  }
}

/* Uniforma le dimensioni dei titoli principali nel body home */
.home .percenna-intro__text h2,
.home .ra-home-section .ra-section-title{
  font-size:clamp(2.5rem,4vw,4.2rem) !important;
  line-height:1.1 !important;
}

/* =========================================================
   HOME — INTRO / TESTO
   ========================================================= */
.percenna-intro{
  padding:clamp(48px,6vw,96px) 0;
  background:transparent;
}

.percenna-intro__grid{
  display:grid;
  grid-template-columns:minmax(320px,440px) minmax(0,1fr);
  gap:32px;
  align-items:start;
}

.percenna-intro__text h2{
  font-family:"Allura",cursive !important;
  font-size:clamp(2.5rem,4vw,4.2rem) !important;
  line-height:1.1;
  letter-spacing:0;
  margin:0 0 .4em;
  color:#4A3728 !important;
  background:transparent;
}

.percenna-intro__text p{
  margin:0 0 1.2em;
  line-height:1.7;
  font-size:clamp(16px,2vw,18px);
  color:#6c5647;
  background:transparent;
}

/* =========================================================
   HOME — DESTINAZIONI
   ========================================================= */
.percenna-intro__destinations{
  background:rgba(255,255,255,.50);
  border:1px solid rgba(255,255,255,.35);
  border-radius:24px;
  padding:24px;
  box-shadow:0 18px 40px rgba(0,0,0,.08);
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  height:100%;
}

.percenna-intro__destinations-head h2{
  margin:0 0 12px;
  font-size:clamp(24px,2.5vw,34px);
  line-height:1.15;
  color:#2f4f6f;
}

.percenna-intro__destinations-head p{
  margin:0 0 20px;
  font-size:15px;
  line-height:1.7;
  color:#5f6670;
}

.percenna-intro__destinations-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

.percenna-destination-card{
  display:flex;
  align-items:center;
  gap:14px;
  padding:10px;
  background:rgba(255,255,255,.82);
  border-radius:18px;
  box-shadow:0 10px 24px rgba(0,0,0,.08);
  transition:transform .25s ease, box-shadow .25s ease;
}

.percenna-destination-card:hover{
  transform:translateY(-3px);
  box-shadow:0 14px 28px rgba(0,0,0,.12);
}

.percenna-destination-card__image{
  width:108px;
  min-width:108px;
  height:84px;
  border-radius:14px;
  overflow:hidden;
}

.percenna-destination-card__image img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}

.percenna-destination-card__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.percenna-destination-card__content h3{
  margin:0 0 4px;
  font-size:20px;
  line-height:1.2;
  color:#2f4f6f;
}

.percenna-destination-card__time{
  display:inline-block;
  font-size:14px;
  font-weight:600;
  color:#8a6a7a;
}

/* =========================================================
   HOME — BOOKING PANEL
   ========================================================= */
.ra-booking-copy h1,
.ra-booking-copy h2,
.ra-booking-card h3{
  color:#4A3728 !important;
}

.ra-booking-copy p,
.ra-booking-card p,
.ra-booking-copy li,
.ra-booking-card li{
  color:#6A5443 !important;
}

.ra-booking-copy .ra-section-kicker,
.ra-booking-card .ra-section-kicker{
  color:#a7866a !important;
}

/* =========================================================
   HOME — AVAILABILITY FORM
   ========================================================= */
.ra-home-availability{
  padding:28px;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(149,123,101,.18);
  border-radius:24px;
  box-shadow:0 8px 22px rgba(109,87,69,.10);
  backdrop-filter:blur(1.5px);
}

.ra-home-availability__field label{
  display:block;
  margin-bottom:10px;
  font-family:"Playfair Display",serif;
  font-size:18px;
  color:#4A3728;
}

.ra-home-availability input,
.ra-home-availability select{
  width:100%;
  min-height:56px;
  border-radius:18px;
  border:1px solid rgba(149,123,101,.20);
  background:rgba(255,255,255,.92);
  box-shadow:inset 0 1px 2px rgba(0,0,0,.03);
}

.ra-home-availability .ra-btn{
  margin-top:18px;
}

.ra-home-availability__result{
  margin-top:18px;
}

.ra-home-availability input[type="date"]{
  appearance:none;
  -webkit-appearance:none;
  position:relative;
}

@media (max-width:921px){
  .ra-home-availability{
    padding:18px !important;
    border-radius:20px;
  }

  .ra-home-availability input,
  .ra-home-availability select{
    min-height:48px !important;
    padding:10px 14px !important;
    font-size:15px !important;
  }

  .ra-home-availability input[type="date"]{
    font-size:15px !important;
    padding-right:40px !important;
  }

  .ra-home-availability input[type="date"]::-webkit-calendar-picker-indicator{
    opacity:1;
    filter:invert(30%);
    cursor:pointer;
  }

  .ra-home-availability__field label{
    font-size:16px;
  }
}

/* =========================================================
   HOME — CAMERE
   ========================================================= */
.ra-home-cards{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:24px !important;
}

.ra-home-card{
  display:flex !important;
  flex-direction:column !important;
  height:100% !important;
  background:rgba(255,255,255,.62) !important;
  border:1px solid rgba(74,55,40,.18) !important;
  border-radius:22px !important;
  overflow:hidden !important;
  box-shadow:0 8px 22px rgba(109,87,69,.10) !important;
  transition:transform .35s ease, box-shadow .35s ease;
  will-change:transform;
}

.ra-home-card:hover{
  transform:translateY(-6px) scale(1.03);
  box-shadow:0 18px 40px rgba(109,87,69,.18);
}

.ra-home-card:active{
  transform:scale(.98);
}

.ra-home-card__media{
  display:block !important;
  position:relative !important;
  overflow:hidden !important;
  border-radius:22px 22px 0 0 !important;
  border:1px solid rgba(74,55,40,.22) !important;
  border-bottom:none !important;
}

.ra-home-card__media img{
  display:block !important;
  width:100% !important;
  aspect-ratio:4 / 3 !important;
  object-fit:cover !important;
  border-radius:22px 22px 0 0 !important;
  transition:transform .5s ease;
}

.ra-home-card:hover .ra-home-card__media img{
  transform:scale(1.05);
}

.ra-home-card__body{
  display:flex !important;
  flex-direction:column !important;
  flex:1 1 auto !important;
  gap:12px !important;
  padding:18px !important;
  padding-bottom:22px !important;
}

.ra-home-card__title,
.ra-home-card__title a{
  color:#4A3728 !important;
  text-decoration:none !important;
}

.ra-home-card__meta,
.ra-home-card__excerpt{
  color:#6A5443 !important;
}

.ra-home-card .ra-btn{
  margin-top:auto !important;
  align-self:flex-start;
}

/* =========================================================
   HOME — CAMERE LARGE DESKTOP ALTERNATE
   ========================================================= */
@media (min-width:1025px){
  section#camere .ra-home-cards{
    display:flex !important;
    flex-direction:column !important;
    gap:30px !important;
  }

  section#camere .ra-home-card{
    display:grid !important;
    grid-template-columns:420px minmax(0,1fr) !important;
    align-items:stretch !important;
    width:100% !important;
    min-height:320px !important;
    border-radius:22px !important;
    overflow:hidden !important;
  }

  section#camere .ra-home-card:nth-child(even){
    grid-template-columns:1fr 420px !important;
  }

  section#camere .ra-home-card__media{
    display:block !important;
    width:420px !important;
    min-width:420px !important;
    max-width:420px !important;
    height:100% !important;
    overflow:hidden !important;
  }

  section#camere .ra-home-card:nth-child(even) .ra-home-card__media{
    order:2 !important;
    justify-self:end !important;
  }

  section#camere .ra-home-card__media img{
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:320px !important;
    object-fit:cover !important;
    border-radius:0 !important;
  }

  section#camere .ra-home-card__body{
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    height:100% !important;
    min-width:0 !important;
    padding:28px 32px !important;
    box-sizing:border-box !important;
  }

  section#camere .ra-home-card:nth-child(even) .ra-home-card__body{
    order:1 !important;
    justify-self:start !important;
  }

  section#camere .ra-home-card__price{
    position:static !important;
    display:block !important;
    margin:0 0 14px 0 !important;
  }

  section#camere .ra-home-card__title{
    margin:0 0 14px 0 !important;
  }

  section#camere .ra-home-card__meta{
    margin:0 0 14px 0 !important;
  }

  section#camere .ra-home-card__excerpt{
    display:block !important;
    overflow:visible !important;
    margin:0 0 20px 0 !important;
  }

  section#camere .ra-home-card .ra-btn{
    margin-top:auto !important;
    align-self:flex-start !important;
  }
}

/* =========================================================
   RESPONSIVE — INTRO / DESTINAZIONI / CAMERE
   ========================================================= */
@media (max-width:1200px){
  .ra-home-cards{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media (max-width:921px){
  .percenna-intro__grid{
    grid-template-columns:1fr;
    gap:24px;
  }

  .percenna-intro__destinations{
    order:-1;
  }

  .percenna-intro__destinations-list{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
  }

  .percenna-destination-card{
    flex-direction:column;
    align-items:flex-start;
  }

  .percenna-destination-card__image{
    width:100%;
    min-width:100%;
    height:150px;
  }
}

@media (max-width:767px){
  .percenna-intro__destinations{
    padding:20px 16px;
    border-radius:20px;
  }

  .percenna-intro__destinations-head h2{
    font-size:28px;
  }

  .percenna-intro__destinations-list{
    grid-template-columns:1fr;
  }

  .percenna-destination-card__image{
    height:180px;
  }

  .percenna-destination-card__content h3{
    font-size:18px;
  }
}

@media (max-width:640px){
  .ra-home-cards{
    grid-template-columns:1fr !important;
  }
}

/* =========================================================
   SINGLE CAMERA — CONSOLIDATO
   ========================================================= */

.single-camera .ra-camera-single {
  padding-top: 40px;
}

.ra-camera-admin-actions{
  display:flex;
  justify-content:flex-start;
  margin: 0 0 14px;
}

.ra-camera-single{
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}

.ra-camera-single article{
  width: 100%;
  max-width: 100%;
}

.ra-camera-hero{
  display:grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
  gap: 32px;
  align-items: start;
  width: 100%;
}

.ra-camera-media,
.ra-camera-summary{
  min-width: 0;
  width: 100%;
}

.ra-camera-slider,
.ra-camera-slider__viewport,
.ra-camera-slide,
.ra-camera-slide img{
  max-width: 100%;
}

.ra-camera-slider{
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.ra-camera-slider__viewport{
  position: relative;
  background: rgba(255,255,255,0.72);
  border: 1px solid rgba(149,123,101,0.16);
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(109,87,69,0.10);
}

.ra-camera-slide{
  display:none;
  width:100%;
}

.ra-camera-slide.is-active{
  display:block;
}

.ra-camera-slide img{
  display:block;
  width:100%;
  aspect-ratio: 4 / 3;
  object-fit:cover;
}

.ra-camera-slider__nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  z-index:4;
  width:56px;
  height:56px;
  border:none;
  border-radius:999px;
  background: rgba(207,176,145,0.92);
  color:#ffffff;
  font-size:34px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  box-shadow: 0 10px 24px rgba(90,60,40,0.18);
  transition: transform .2s ease, background .2s ease, box-shadow .2s ease;
  padding:0;
}

.ra-camera-slider__nav:hover{
  background: rgba(184,149,116,0.96);
  transform:translateY(-50%) scale(1.04);
  box-shadow: 0 14px 28px rgba(90,60,40,0.22);
}

.ra-camera-slider__nav.is-prev{
  left:18px;
}

.ra-camera-slider__nav.is-next{
  right:18px;
}

.ra-camera-slider__thumbs{
  display: flex;
  flex-wrap: nowrap;
  gap: 12px;
  width: 100%;
  padding: 14px;
  margin-top: 0;
  background: rgba(255,255,255,0.62);
  border: 1px solid rgba(149,123,101,0.16);
  border-radius: 22px;
  box-shadow: 0 8px 20px rgba(109,87,69,0.08);
  box-sizing: border-box;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-padding-left: 14px;
  scroll-padding-right: 14px;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-color: rgba(149,123,101,0.28) transparent;
  scrollbar-width: thin;
}

.ra-camera-slider__thumb{
  flex: 0 0 118px;
  width: 118px;
  padding: 0;
  border: 2px solid transparent;
  background: transparent;
  border-radius: 16px;
  overflow: hidden;
  cursor: pointer;
  opacity: .88;
  transition: opacity .2s ease, transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ra-camera-slider__thumbs::-webkit-scrollbar{
  height: 8px;
}

.ra-camera-slider__thumbs::-webkit-scrollbar-track{
  background: transparent;
}

.ra-camera-slider__thumbs::-webkit-scrollbar-thumb{
  background: rgba(149,123,101,0.28);
  border-radius: 999px;
}

.ra-camera-slider__thumb img{
  display:block;
  width:100%;
  height:86px;
  object-fit:cover;
}

.ra-camera-slider__thumb:hover{
  opacity:1;
  transform:translateY(-2px);
  box-shadow: 0 8px 18px rgba(0,0,0,.10);
}

.ra-camera-slider__thumb.is-active{
  opacity:1;
  border-color:#c7b299;
  box-shadow: 0 8px 18px rgba(109,87,69,0.14);
}

.ra-camera-summary{
  background: rgba(255,255,255,0.65);
  border: 1px solid rgba(149,123,101,0.18);
  border-radius: 24px;
  padding: 26px;
  box-shadow: 0 10px 24px rgba(109,87,69,0.08);
  backdrop-filter: blur(3px);
  overflow: hidden;
}

.ra-camera-price{
  font-size: 26px;
  font-weight: 700;
  margin-top: 6px;
  color: #7d5b43;
}

.ra-camera-badges{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:16px 0 14px;
}

.ra-camera-badge{
  background: rgba(199,178,153,0.35);
  border: 1px solid rgba(149,123,101,0.25);
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 14px;
  color: #5f4a3b;
  display:inline-flex;
  align-items:center;
  gap:8px;
  line-height:1;
}

.ra-icon{
  width: 18px;
  height: 18px;
  display: inline-block;
  flex: 0 0 18px;
  color: #8f725c;
  stroke: currentColor;
  fill: none;
  opacity: .85;
}

.ra-camera-badge .ra-icon{
  width: 18px;
  height: 18px;
}

.ra-camera-description{
  margin-top: 10px;
}

.ra-camera-meta-grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 34px;
}

.ra-camera-meta-card{
  background: rgba(255,255,255,0.65);
  border-radius: 18px;
  padding: 16px;
  border: 1px solid rgba(149,123,101,0.16);
  text-align:left;
}

.ra-camera-meta-card strong{
  display:block;
  font-size: 14px;
  color:#8f725c;
  margin-bottom: 6px;
}

.ra-camera-meta-card span{
  font-size: 16px;
  color:#4A3728;
}

.ra-camera-amenities-group{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  margin-top: 10px;
}

.ra-amenities-block{
  background: rgba(255,255,255,0.6);
  border-radius: 20px;
  padding: 18px 20px;
  border: 1px solid rgba(149,123,101,0.15);
  box-shadow: 0 6px 18px rgba(109,87,69,0.08);
}

.ra-amenities-block h3{
  font-size: 18px;
  margin-bottom: 12px;
  color:#5f4a3b;
  font-family: "Playfair Display", serif;
}

.ra-amenities-block ul{
  list-style:none;
  padding:0;
  margin:0;
}

.ra-amenities-block li{
  margin-bottom: 8px;
  font-size: 15px;
  color:#6A5443;
  display:flex;
  align-items:flex-start;
  gap:8px;
  line-height:1.5;
}

.ra-amenities-block li::before{
  content:"•";
  color:#b89574;
  font-weight:700;
  line-height:1;
  margin-top:2px;
}

.ra-action-row{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top: 26px;
}

.ra-action-row .ra-btn{
  min-width: 180px;
  text-align:center;
}

@media (max-width: 921px){
  .ra-camera-hero{
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .ra-camera-slide img{
    aspect-ratio: 16 / 11;
  }

  .ra-camera-slider__nav{
    width:48px;
    height:48px;
    font-size:28px;
  }

  .ra-camera-slider__nav.is-prev{
    left:14px;
  }

  .ra-camera-slider__nav.is-next{
    right:14px;
  }

  .ra-camera-meta-grid{
    grid-template-columns: repeat(2, 1fr);
  }

  .ra-camera-amenities-group{
    grid-template-columns: 1fr;
  }

  .ra-camera-slider__thumbs{
    scroll-padding-left: 12px;
    scroll-padding-right: 12px;
  }

  .ra-camera-slider__thumb{
    flex: 0 0 96px;
    width: 96px;
    min-width: 96px;
  }
}

@media (max-width: 640px){
  .ra-camera-slider__viewport{
    border-radius:18px;
  }

  .ra-camera-slider__thumbs{
    padding: 10px;
    gap: 10px;
    border-radius: 18px;
    scroll-padding-left: 10px;
    scroll-padding-right: 10px;
  }

  .ra-camera-slider__thumb{
    flex: 0 0 78px;
    width: 78px;
    min-width: 78px;
    border-radius: 12px;
  }

  .ra-camera-slider__thumb img{
    height: 68px;
  }

  .ra-camera-slider__nav{
    width:42px;
    height:42px;
    font-size:24px;
  }

  .ra-camera-summary{
    padding: 20px;
  }

  .ra-camera-badge{
    font-size: 13px;
    padding: 5px 10px;
  }

  .ra-camera-badge .ra-icon{
    width: 16px;
    height: 16px;
    flex-basis: 16px;
  }

  .ra-camera-price{
    font-size: 18px;
  }

  .ra-camera-meta-grid{
    grid-template-columns: 1fr;
  }

  .ra-action-row{
    flex-direction: column;
  }

  .ra-action-row .ra-btn{
    width: 100%;
  }
}

/* =========================================================
   ARCHIVIO CAMERE
   ========================================================= */

@media (min-width: 922px){
  .page-slug-camere .ra-camere-grid,
  .post-type-archive-camera .ra-camere-grid{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:32px !important;
    align-items:start !important;
  }

  .page-slug-camere .ra-card,
  .post-type-archive-camera .ra-card{
    display:flex !important;
    flex-direction:column !important;
    padding:18px !important;
    border-radius:24px !important;
    border:1px solid rgba(149, 123, 101, 0.16) !important;
    background:rgba(255,255,255,0.58) !important;
    box-shadow:0 8px 22px rgba(109, 87, 69, 0.12) !important;
    overflow:hidden !important;
  }

  .page-slug-camere .ra-card__body,
  .post-type-archive-camera .ra-card__body{
    display:flex !important;
    flex-direction:column !important;
    order:1 !important;
    padding:0 0 14px 0 !important;
    gap:12px !important;
  }

  .page-slug-camere .ra-card__title,
  .post-type-archive-camera .ra-card__title{
    margin:0 !important;
    order:1 !important;
    font-family:"Allura",cursive !important;
    font-size:clamp(34px, 3vw, 52px) !important;
    line-height:1 !important;
    text-align:center !important;
  }

  .page-slug-camere .ra-card__title a,
  .post-type-archive-camera .ra-card__title a{
    color:#7d5b43 !important;
    text-decoration:none !important;
  }

  .page-slug-camere .ra-card__excerpt,
  .post-type-archive-camera .ra-card__excerpt{
    display:none !important;
  }

  .page-slug-camere .ra-card__actions,
  .post-type-archive-camera .ra-card__actions{
    order:3 !important;
    display:flex !important;
    justify-content:center !important;
    gap:10px !important;
    margin-top:14px !important;
  }

  .page-slug-camere .ra-card__media,
  .post-type-archive-camera .ra-card__media{
    order:2 !important;
    display:block !important;
    min-height:320px !important;
    aspect-ratio:4 / 3 !important;
    border-radius:18px !important;
    overflow:hidden !important;
    background:#f5ede5 !important;
  }

  .page-slug-camere .ra-card__media img,
  .post-type-archive-camera .ra-card__media img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
  }

  .page-slug-camere .ra-card__price,
  .post-type-archive-camera .ra-card__price{
    display:none !important;
  }

  .page-slug-camere .ra-btn,
  .post-type-archive-camera .ra-btn{
    min-width:180px !important;
    text-align:center !important;
  }

  .page-slug-camere .wp-block-post-template,
  .post-type-archive-camera .wp-block-post-template{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:32px !important;
  }

  .page-slug-camere .wp-block-post,
  .post-type-archive-camera .wp-block-post{
    display:flex !important;
    flex-direction:column !important;
    padding:18px !important;
    border-radius:24px !important;
    border:1px solid rgba(149,123,101,.16) !important;
    background:rgba(255,255,255,.62) !important;
    box-shadow:0 8px 22px rgba(109,87,69,.12) !important;
    overflow:hidden !important;
  }

  .page-slug-camere .wp-block-post-title,
  .post-type-archive-camera .wp-block-post-title{
    order:1 !important;
    margin:0 0 14px 0 !important;
    text-align:center !important;
    font-family:"Allura",cursive !important;
    font-size:clamp(34px, 3vw, 52px) !important;
    line-height:1 !important;
    font-weight:400 !important;
  }

  .page-slug-camere .wp-block-post-title a,
  .post-type-archive-camera .wp-block-post-title a{
    color:#7d5b43 !important;
    text-decoration:none !important;
  }

  .page-slug-camere .wp-block-post-featured-image,
  .post-type-archive-camera .wp-block-post-featured-image{
    order:2 !important;
    margin:0 !important;
    min-height:320px !important;
    aspect-ratio:4 / 3 !important;
    border-radius:18px !important;
    overflow:hidden !important;
  }

  .page-slug-camere .wp-block-post-featured-image a,
  .page-slug-camere .wp-block-post-featured-image img,
  .post-type-archive-camera .wp-block-post-featured-image a,
  .post-type-archive-camera .wp-block-post-featured-image img{
    width:100% !important;
    height:100% !important;
    display:block !important;
    object-fit:cover !important;
  }

  .page-slug-camere .wp-block-post-excerpt,
  .post-type-archive-camera .wp-block-post-excerpt{
    display:none !important;
  }

  .page-slug-camere .wp-block-buttons,
  .page-slug-camere .wp-block-button,
  .post-type-archive-camera .wp-block-buttons,
  .post-type-archive-camera .wp-block-button{
    order:3 !important;
    margin:14px 0 0 0 !important;
    text-align:center !important;
  }

  body.post-type-archive-camera #primary{
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
  }

  body.post-type-archive-camera #primary .ast-row{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 28px !important;
  }

  body.post-type-archive-camera #primary article.post,
  body.post-type-archive-camera #primary article.type-camera{
    width: 100% !important;
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(149,123,101,.16) !important;
    background: rgba(255,255,255,.62) !important;
    box-shadow: 0 8px 22px rgba(109,87,69,.12) !important;
    overflow: hidden !important;
  }

  body.post-type-archive-camera #primary .entry-header,
  body.post-type-archive-camera #primary header.entry-header{
    display: block !important;
    margin: 0 0 14px 0 !important;
    text-align: center !important;
  }

  body.post-type-archive-camera #primary .entry-title{
    margin: 0 !important;
    font-family: 'Playfair Display', serif !important;
    font-size: clamp(24px, 2vw, 34px) !important;
    line-height: 1.1 !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em;
  }

  body.post-type-archive-camera #primary .entry-title a{
    color: #7d5b43 !important;
    text-decoration: none !important;
  }

  body.post-type-archive-camera #primary .ast-blog-featured-section,
  body.post-type-archive-camera #primary .post-thumb,
  body.post-type-archive-camera #primary .entry-image{
    display: block !important;
    margin: 14px 0 0 0 !important;
    width: 100% !important;
    min-height: 180px !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 18px !important;
    overflow: hidden !important;
  }

  body.post-type-archive-camera #primary .ast-blog-featured-section img,
  body.post-type-archive-camera #primary .post-thumb img,
  body.post-type-archive-camera #primary .entry-image img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
  }

  body.post-type-archive-camera #primary .entry-content p,
  body.post-type-archive-camera #primary .post-content p,
  body.post-type-archive-camera #primary .archive-entry-content p{
    display: none !important;
  }

  body.post-type-archive-camera #primary .entry-content,
  body.post-type-archive-camera #primary .post-content,
  body.post-type-archive-camera #primary .archive-entry-content{
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
  }

  body.post-type-archive-camera #primary .ast-blog-single-element-read-more,
  body.post-type-archive-camera #primary .entry-footer{
    margin-top: 16px !important;
    text-align: center !important;
  }

  body.post-type-archive-camera .entry-title,
  body.post-type-archive-camera h1{
    font-family: 'Playfair Display', serif !important;
    font-size: clamp(42px, 5vw, 64px) !important;
    color: #7d5b43 !important;
    text-align: center !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em;
    margin-bottom: 30px !important;
  }
}

@media (max-width: 921px){
  body.post-type-archive-camera .ast-row{
    display: block !important;
  }

  body.post-type-archive-camera .entry-title,
  body.post-type-archive-camera h1{
    font-family: 'Playfair Display', serif !important;
    font-size: clamp(26px, 6vw, 34px) !important;
    color: #7d5b43 !important;
    text-align: center !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em;
    margin-bottom: 20px !important;
  }

  body.post-type-archive-camera .entry-content,
  body.post-type-archive-camera .post-content,
  body.post-type-archive-camera .archive-entry-content{
    color: #6c5243 !important;
    font-size: clamp(16px, 4.5vw, 20px) !important;
    line-height: 1.5 !important;
    text-align: center !important;
  }

  body.post-type-archive-camera .entry-content p,
  body.post-type-archive-camera .post-content p,
  body.post-type-archive-camera .archive-entry-content p{
    margin: 0 !important;
  }

  body.post-type-archive-camera .entry-title a{
    color: #7d5b43 !important;
  }
}

/* =========================================================
   SINGLE CAMERA — DROPDOWN DESCRIZIONE
   ========================================================= */

.ra-camera-description-section{
  margin-top: 28px;
}

.ra-camera-dropdown{
  background: rgba(255,255,255,0.62);
  border: 1px solid rgba(149,123,101,0.16);
  border-radius: 24px;
  box-shadow: 0 8px 20px rgba(109,87,69,0.08);
  overflow: hidden;
}

.ra-camera-dropdown__toggle{
  width: 100%;
  border: 0;
  background: transparent;
  padding: 22px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  cursor: pointer;
  text-align: left;
}

.ra-camera-dropdown__heading-wrap{
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}

.ra-camera-dropdown__title{
  font-family: "Playfair Display", serif;
  font-size: clamp(1.35rem, 2vw, 1.8rem);
  line-height: 1.15;
  color: #4A3728;
}

.ra-camera-dropdown__subtitle{
  font-size: 15px;
  color: #8f725c;
  line-height: 1.4;
}

.ra-camera-dropdown__icon{
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  position: relative;
  margin-right: 4px;
}

.ra-camera-dropdown__icon::before{
  content: "";
  position: absolute;
  inset: 0;
  width: 14px;
  height: 14px;
  margin: auto;
  border-right: 3px solid #8f725c;
  border-bottom: 3px solid #8f725c;
  transform: rotate(45deg);
  transition: transform .25s ease;
}

.ra-camera-dropdown.is-open .ra-camera-dropdown__icon::before{
  transform: rotate(-135deg);
}

.ra-camera-dropdown__panel{
  padding: 0 24px 24px;
  border-top: 1px solid rgba(149,123,101,0.14);
}

.ra-camera-dropdown__content{
  padding-top: 20px;
  color: #4A3728;
  font-size: 18px;
  line-height: 1.8;
}

.ra-camera-dropdown__content p:last-child{
  margin-bottom: 0;
}

@media (max-width: 640px){
  .ra-camera-dropdown{
    border-radius: 20px;
  }

  .ra-camera-dropdown__toggle{
    padding: 18px 18px;
  }

  .ra-camera-dropdown__panel{
    padding: 0 18px 18px;
  }

  .ra-camera-dropdown__title{
    font-size: 1.25rem;
  }

  .ra-camera-dropdown__subtitle{
    font-size: 14px;
  }

  .ra-camera-dropdown__content{
    font-size: 16px;
    line-height: 1.75;
  }
}

/* =========================================================
   WHATSAPP FLOATING BUTTON
   ========================================================= */
.ra-wa-float{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  width:56px;
  height:56px;
  display:grid;
  place-items:center;
  color:#fff;
  text-decoration:none;
  background:#25D366;
  border-radius:999px;
  box-shadow:0 12px 30px rgba(0,0,0,.22);
  transition:transform .15s ease, filter .15s ease;
}

.ra-wa-float:hover{
  transform:translateY(-2px);
  filter:brightness(1.03);
}

.ra-wa-float:active{
  transform:translateY(0);
}

.ra-wa-icon{
  display:inline-grid;
  place-items:center;
}

.ra-wa-float::after{
  content:"";
  position:absolute;
  inset:-6px;
  opacity:0;
  transform:scale(.9);
  border-radius:999px;
  background:rgba(37,211,102,.25);
  animation:raWaPulse 2.2s infinite;
}

@keyframes raWaPulse{
  0%   { opacity:0; transform:scale(.9); }
  25%  { opacity:.55; }
  60%  { opacity:0; transform:scale(1.25); }
  100% { opacity:0; }
}

/* =========================================================
   PAGINA CONTATTI
   ========================================================= */
body.page-id-14 .ra-page-hero{
  display:none !important;
}

.ra-contatti-intro{
  max-width:860px;
  margin:0 auto 42px;
  padding:0 20px;
  text-align:center;
}

.ra-contatti-intro h1,
.ra-contatti-intro h2,
.ra-contatti-intro .ra-section-title{
  margin:0 0 14px;
  text-align:center;
  line-height:1.2;
  font-family:"Playfair Display",serif !important;
  font-size:clamp(28px,4vw,42px);
  color:#4A3728 !important;
}

.ra-contatti-intro p{
  max-width:760px;
  margin:0 auto;
  text-align:center;
  font-size:clamp(15px,2vw,18px);
  line-height:1.65;
  color:#6A5443 !important;
}

.ra-contatti{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:24px;
  max-width:600px;
  margin:60px auto;
}

.ra-contact-card{
  position:relative;
  overflow:hidden;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:14px;
  min-height:160px;
  padding:40px 30px;
  text-decoration:none;
  background:rgba(255,255,255,.6);
  backdrop-filter:blur(6px);
  border:1px solid rgba(143,114,92,.2);
  border-radius:24px;
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease, background-color .32s ease;
}

.ra-contact-card::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
  background:linear-gradient(135deg,rgba(255,255,255,.20),rgba(255,255,255,0));
  transition:opacity .32s ease;
}

.ra-contact-card img{
  width:120px;
  height:auto;
  transition:transform .32s ease, filter .32s ease;
}

.ra-contact-card span{
  font-family:"Cormorant Garamond",serif;
  font-size:22px;
  letter-spacing:.6px;
  color:var(--ra-brown);
  transition:color .32s ease;
}

.ra-contact-card:hover{
  transform:translateY(-8px);
  background:rgba(255,255,255,.72);
  border-color:rgba(184,149,116,.55);
  box-shadow:0 18px 36px rgba(111,85,66,.16);
}

.ra-contact-card:hover::before{
  opacity:1;
}

.ra-contact-card:hover img{
  transform:scale(1.06);
  filter:brightness(1.03);
}

.ra-contact-card:hover span{
  color:var(--ra-brown-deep);
}

.ra-contact-card:active{
  transform:scale(.985);
}

@media (max-width:921px){
  .ra-contatti-intro{
    margin:0 auto 34px;
    padding:0 18px;
  }
}

@media (max-width:640px){
  .ra-contatti-intro{
    margin:0 auto 28px;
    padding:30px 14px 0;
  }

  .ra-contatti-intro h1,
  .ra-contatti-intro h2,
  .ra-contatti-intro .ra-section-title{
    font-size:26px;
  }

  .ra-contatti-intro p{
    font-size:15px;
  }

  .ra-contatti{
    grid-template-columns:1fr;
  }

  .ra-contact-card{
    gap:12px;
    min-height:150px;
    padding:35px 20px;
  }

  .ra-contact-card img{
    width:110px;
  }

  .ra-contact-card span{
    font-size:20px;
  }
}

/* =========================================================
   PAGINA SERVIZI
   ========================================================= */
   
body.page-id-10 .ra-page-hero{
  display:none !important;
}

.ra-servizi-intro,
.ra-servizi-accessibilita,
.ra-servizi-cta{
  max-width:900px;
  margin:0 auto 42px;
  padding:0 20px;
  text-align:center;
}

.ra-servizi-intro p,
.ra-servizi-accessibilita p,
.ra-servizi-cta p{
  max-width:760px;
  margin:0 auto;
  font-size:clamp(15px,2vw,18px);
  line-height:1.7;
  color:#6A5443 !important;
}

.ra-servizi-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  max-width:1200px;
  margin:0 auto 48px;
  padding:0 20px;
}

.ra-servizio-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:30px 24px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(149,123,101,.18);
  border-radius:24px;
  box-shadow:0 8px 22px rgba(109,87,69,.10);
  backdrop-filter:blur(2px);
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease;
  animation:raFadeUp .55s ease both;
}

.ra-servizio-card:hover{
  transform:translateY(-6px);
  border-color:rgba(184,149,116,.45);
  box-shadow:0 18px 36px rgba(111,85,66,.16);
}

.ra-servizio-card:nth-child(2){ animation-delay:.06s; }
.ra-servizio-card:nth-child(3){ animation-delay:.12s; }
.ra-servizio-card:nth-child(4){ animation-delay:.18s; }
.ra-servizio-card:nth-child(5){ animation-delay:.24s; }
.ra-servizio-card:nth-child(6){ animation-delay:.30s; }

.ra-servizio-icon{
  width:72px;
  height:72px;
  margin-bottom:16px;
  display:grid;
  place-items:center;
  border-radius:999px;
  font-size:30px;
  line-height:1;
  background:linear-gradient(135deg,rgba(199,178,153,.28),rgba(184,149,116,.16));
}

.ra-servizio-card h3{
  margin:0 0 12px;
  font-family:"Playfair Display",serif !important;
  font-size:24px;
  color:#4A3728 !important;
}

.ra-servizio-card p{
  margin:0;
  font-size:16px;
  line-height:1.65;
  color:#6A5443 !important;
}

@keyframes raFadeUp{
  from{
    opacity:0;
    transform:translateY(18px);
  }
  to{
    opacity:1;
    transform:translateY(0);
  }
}

@media (prefers-reduced-motion:reduce){
  .ra-servizio-card{
    animation:none;
    transition:none;
  }
}

@media (max-width:921px){
  .ra-servizi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  .ra-servizi-intro,
  .ra-servizi-accessibilita,
  .ra-servizi-cta{
    margin:0 auto 30px;
    padding:0 14px;
  }

  .ra-servizi-grid{
    grid-template-columns:1fr;
    gap:18px;
    margin-bottom:34px;
    padding:0 14px;
  }

  .ra-servizio-card{
    padding:24px 18px;
    border-radius:20px;
  }

  .ra-servizio-icon{
    width:64px;
    height:64px;
    font-size:26px;
  }

  .ra-servizio-card h3{
    font-size:22px;
  }

  .ra-servizio-card p{
    font-size:15px;
  }
}

/* =========================================================
   FOOTER ICON SLIDER
   ========================================================= */
   
.ra-footer-icons-slider{
  display:none;
}

.ra-footer-icons-track{
  display:flex;
  align-items:center;
  gap:18px;
  width:max-content;
  white-space:nowrap;
  will-change:transform;
  animation:raFooterScroll 24s linear infinite;
}

.ra-footer-icons-track a{
  display:inline-flex !important;
  flex:0 0 auto;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  width:145px;
  height:145px;
  gap:8px !important;
  padding:0 !important;
  text-align:center !important;
  text-decoration:none;
  background:transparent !important;
  border:none !important;
  box-shadow:none !important;
  outline:none;
  box-sizing:border-box;
  transition:transform .22s ease, opacity .22s ease, filter .22s ease;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
  -webkit-user-drag:none;
}

.ra-footer-icons-track a img{
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  background:transparent !important;
  pointer-events:none;
  user-select:none;
  -webkit-user-drag:none;
}

.ra-footer-icons-track a p,
.ra-footer-icons-track a span,
.ra-footer-icons-track a small{
  margin:0 !important;
  line-height:1.1 !important;
}

.ra-footer-icons-track a:hover{
  transform:translateY(-2px) scale(1.06);
  opacity:.95;
  filter:drop-shadow(0 4px 8px rgba(70,40,15,.18));
}

.ra-footer-icons-track a:active{
  transform:scale(.92);
  opacity:.82;
}

@keyframes raFooterScroll{
  0%   { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}

@media (max-width:921px){
  .ra-footer-icons-slider{
    display:block;
    position:relative;
    width:100%;
    overflow:hidden;
    padding:12px 0 8px;
    background:transparent !important;
  }

  .ra-footer-icons-slider::-webkit-scrollbar{
    display:none;
  }

  .ra-footer-icons-slider.is-dragging{
    cursor:grabbing;
  }

  .ra-footer-icons-slider.is-paused .ra-footer-icons-track,
  .ra-footer-icons-slider:focus-within .ra-footer-icons-track{
    animation-play-state:paused;
  }
}

@media (max-width:680px){
  .ra-footer-icons-slider{
    padding:10px 0 6px;
  }

  .ra-footer-icons-track{
    gap:14px;
    animation-duration:20s;
  }

  .ra-footer-icons-track a{
    width:145px;
    height:145px;
  }
}

@media (min-width:681px) and (max-width:921px){
  .ra-footer-icons-track a{
    width:145px;
    height:145px;
  }
}

@media (min-width:922px){
  .ra-footer-icons-slider{
    display:none !important;
  }
}

/* =========================================================
   FOOTER CONTATTI / MAPPA
   ========================================================= */
   
.footer-contact,
.footer-map{
  width:100%;
  display:flex;
  flex-direction:column;
}

.footer-contact{
  justify-content:center;
  padding:20px 24px;
  text-align:center;
  background:rgba(255,248,243,.3);
  border:1px solid rgba(166,132,102,.3);
  border-radius:22px;
  box-shadow:0 10px 30px rgba(90,60,40,.12);
}

.footer-contact p{
  margin:0 0 12px;
  text-align:center;
  font-size:18px;
  line-height:1.5;
  color:#5f4a3b;
}

.footer-contact p strong{
  display:block;
  margin-bottom:6px;
  font-size:26px;
  line-height:1.15;
  font-weight:600;
  color:#5f4a3b;
}

.footer-contact a{
  color:#b08a67;
  text-decoration:none;
  transition:opacity .2s ease;
}

.footer-contact a:hover{
  opacity:.8;
}

.footer-contact p:last-child{
  margin-bottom:0;
}

.footer-map{
  justify-content:center;
  height:100%;
  padding:12px;
  background:rgba(255,248,243,.3);
  border:1px solid rgba(166,132,102,.3);
  border-radius:22px;
  box-shadow:0 10px 30px rgba(90,60,40,.12);
}

.footer-map iframe{
  display:block;
  width:100%;
  height:100%;
  min-height:360px;
  border:none;
  border-radius:18px;
}

.footer-info-row .ast-builder-grid-row{
  display:flex;
  align-items:stretch;
  gap:24px;
  padding:0 20px;
}

@media (min-width:922px){
  .footer-contact,
  .footer-map{
    height:100%;
  }
}

@media (max-width:921px){
  .footer-info-row .ast-builder-grid-row{
    flex-direction:column;
    gap:20px;
    padding:0 12px;
  }

  .footer-contact{
    padding:16px 18px;
  }

  .footer-contact p{
    margin-bottom:10px;
    font-size:16px;
  }

  .footer-contact p strong{
    font-size:22px;
  }

  .footer-map{
    margin-top:20px;
  }

  .footer-map iframe{
    min-height:300px;
  }
}

/* =========================================================
   FOOTER LEGAL LINKS
   ========================================================= */
.footer-legal-links{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:18px;
  margin-bottom:6px;
}

.footer-legal-links a{
  font-size:14px;
  font-weight:500;
  letter-spacing:.5px;
  text-transform:capitalize;
  color:#243b63;
  text-decoration:none;
}

.footer-legal-links a:hover{
  text-decoration:underline;
}

.footer-copy{
  text-align:center;
  font-size:13px;
  color:#6e5a4b;
}

/* =========================================================
   FIX COLORI BOTTONI GLOBALI
   ========================================================= */

.ra-btn,
.room-card .ra-btn,
.room-card .ast-button,
.wp-block-button__link,
.ast-button,
button,
input[type="submit"] {
  background: linear-gradient(135deg, #c7b299, #b89574) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  box-shadow: 0 8px 18px rgba(122, 92, 69, 0.14) !important;
}

.ra-btn:hover,
.room-card .ra-btn:hover,
.room-card .ast-button:hover,
.wp-block-button__link:hover,
.ast-button:hover,
button:hover,
input[type="submit"]:hover {
  background: linear-gradient(135deg, #b89574, #a98566) !important;
  color: #ffffff !important;
}

/* spazio tra hero/header e blocco prenotazione */
.home .percenna-hero + .ra-home-section.is-tight{
  margin-top: 40px;
}

.home .ra-booking-grid .ra-booking-card h2{
  font-size:clamp(2.5rem,4vw,4.2rem) !important;
  line-height:1.1 !important;
}

/* TABLET + MOBILE:
   prima "Casale La Rosa Azzurra", poi "Un punto strategico..." */
@media (max-width: 921px){
  .percenna-intro__grid{
    display:flex !important;
    flex-direction:column !important;
  }

  .percenna-intro__text{
    order:1 !important;
  }

  .percenna-intro__destinations{
    order:2 !important;
  }
}

.percenna-hero{
  min-height:clamp(52vh,62vh,70vh);
}

.percenna-hero__title{
  font-size:clamp(48px,6vw,82px);
}

.ast-primary-header-bar{
  padding:8px 0 !important;
}

.ra-top-socials{
  padding:4px 20px;
}

@media (max-width:921px){

  .ast-menu-toggle,
  .sub-menu-toggle{

    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;

  }

  .ast-menu-toggle:hover,
  .ast-menu-toggle:focus,
  .ast-menu-toggle:active,
  .ast-menu-toggle.active,

  .sub-menu-toggle:hover,
  .sub-menu-toggle:focus,
  .sub-menu-toggle:active,
  .sub-menu-toggle.active{

    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;

  }

}

/* Bottone "Verifica disponibilità" */
button.ra-btn.ra-home-availability__submit {
    background-color: #CFB091 !important;
    color: #5a3f31 !important;
    font-family: 'Allura', cursive !important;

    font-size: 22px !important;
    line-height: 1.2;
    padding: 12px 26px;

    border: none;
    transition: all 0.3s ease;
}

/* Hover */
button.ra-btn.ra-home-availability__submit:hover {
    background-color: #5a3f31 !important;
    color: #ffffff !important;
}

/* Bottoni "Scopri la camera" nelle card */
.ra-home-card .ra-btn {
    background-color: #CFB091 !important;
    color: #5a3f31 !important;
    font-family: 'Allura', cursive !important;

    font-size: 22px !important;
    line-height: 1.2;
    padding: 12px 26px;

    border: none;
    transition: all 0.3s ease;
}

/* Hover */
.ra-home-card .ra-btn:hover {
    background-color: #5a3f31 !important;
    color: #ffffff !important;
}

/* Bottoni CTA finali (Prenota / Contattaci) */
.ra-action-row .ra-btn,
.ra-action-row a {
    background-color: #CFB091 !important;
    color: #5a3f31 !important;
    font-family: 'Allura', cursive !important;

    font-size: 22px !important;
    line-height: 1.2;
    padding: 12px 26px;

    border: none;
    transition: all 0.3s ease;
}

/* Hover */
.ra-action-row .ra-btn:hover,
.ra-action-row a:hover {
    background-color: #5a3f31 !important;
    color: #ffffff !important;
}

.ra-booking-copy h2 {
    font-size: 45px !important;
    line-height: 1.2;
}

/* Titolo CTA "Organizza il tuo soggiorno..." */
.ra-home-cta h2 {
    font-size: 32px !important;
    line-height: 1.2;
}

/* Dropdown menu "Camere" */
.main-header-menu .sub-menu,
.ast-header-break-point .main-header-menu .sub-menu {
    border-top: 4px solid #7b5646 !important;
    border-bottom: 4px solid #7b5646 !important;
}

/* Link dentro il dropdown - desktop */
.main-header-menu .sub-menu .menu-link,
.main-header-menu .sub-menu a {
    font-size: 20px !important;
    line-height: 1.35 !important;
    white-space: normal;
}

/* Tablet */
@media (max-width: 1024px) {
    .main-header-menu .sub-menu .menu-link,
    .main-header-menu .sub-menu a {
        font-size: 22px !important;
        line-height: 1.4 !important;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .main-header-menu .sub-menu .menu-link,
    .main-header-menu .sub-menu a {
        font-size: 24px !important;
        line-height: 1.4 !important;
    }
}

/* Testo dropdown camere in grassetto */
.main-header-menu .sub-menu .menu-link,
.main-header-menu .sub-menu a {
    font-weight: 600 !important;
}

/* =========================================================
   TITOLI PAGINE —  CONTATTI / SERVIZI / CAMERE
   ========================================================= */

/* CONTATTI — titolo intro */
.page-id-14 .ra-contatti-intro h1.ra-section-title{
  font-family:'Allura',cursive !important;
  font-size:62px !important;
  line-height:1.1 !important;
  text-align:center !important;
  margin:0 0 18px !important;
}

/* SERVIZI — titolo intro */
.page-id-10 .ra-servizi-intro h1.ra-section-title{
  font-family:'Allura',cursive !important;
  font-size:62px !important;
  line-height:1.1 !important;
  text-align:center !important;
  margin:0 0 18px !important;
}

.page-id-14 .ra-contatti-intro{
  margin-bottom:42px !important;
}

.page-id-10 .ra-servizi-intro{
  margin-bottom:42px !important;
}

/* TABLET */
@media (max-width:1024px){
  
  .page-id-14 .ra-contatti-intro h1.ra-section-title,
  .page-id-10 .ra-servizi-intro h1.ra-section-title{
    font-size:52px !important;
    line-height:1.08 !important;
    margin:8px 0 18px !important;
  }

  .ast-archive-description{
    margin-bottom:8px !important;
  }

  .page-id-14 .ra-contatti-intro,
  .page-id-10 .ra-servizi-intro{
    margin-bottom:34px !important;
  }
}

/* MOBILE */
@media (max-width:768px){
  
  .page-id-14 .ra-contatti-intro h1.ra-section-title,
  .page-id-10 .ra-servizi-intro h1.ra-section-title{
    font-size:52px !important;
    line-height:1.05 !important;
    text-align:center !important;
    margin:18px 0 14px !important;
  }

  .ast-archive-description{
    margin-bottom:12px !important;
  }

  .page-id-14 .ra-contatti-intro{
    margin-bottom:28px !important;
  }

  .page-id-10 .ra-servizi-intro{
    margin-bottom:30px !important;
  }
}

/* MOBILE PICCOLO */
@media (max-width:480px){
  
  .page-id-14 .ra-contatti-intro h1.ra-section-title,
  .page-id-10 .ra-servizi-intro h1.ra-section-title{
    font-size:46px !important;
    line-height:1.05 !important;
    margin:16px 0 12px !important;
  }
}

/* CAMERE come SERVIZI e CONTATTI */
.post-type-archive-camera .ra-section-title {
    font-family: 'Allura', cursive !important;
    font-size: 62px !important;
    line-height: 1.1 !important;
    text-align: center;
    margin: 0 0 18px !important;
}

/* Tablet */
@media (max-width: 1024px) {
    .post-type-archive-camera .ra-section-title {
        font-size: 52px !important;
        margin: 8px 0 18px !important;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .post-type-archive-camera .ra-section-title {
        font-size: 52px !important;
        margin: 18px 0 14px !important;
    }
}

/* Mobile piccolo */
@media (max-width: 480px) {
    .post-type-archive-camera .ra-section-title {
        font-size: 46px !important;
        margin: 16px 0 12px !important;
    }
}


/* UNIFICA Camere, Servizi, Contatti */
.post-type-archive-camera .ra-section-title,
.page-id-14 .ra-section-title,
.page-id-10 .ra-section-title {

    font-family: 'Allura', cursive !important;
    font-size: 62px !important;
    line-height: 1.1 !important;
    letter-spacing: 0px !important;
    font-weight: 400 !important;

}

/* Camere identico a Servizi e Contatti */
.post-type-archive-camera .ra-camere-intro,
.post-type-archive-camera .ra-contatti-intro,
.post-type-archive-camera .ra-servizi-intro {
    max-width: 860px;
    margin: 0 auto 42px;
    padding: 0 20px;
    text-align: center;
}

.post-type-archive-camera .ra-camere-intro .ra-section-title {
    font-family: 'Allura', cursive !important;
    font-size: 62px !important;
    line-height: 1.1 !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    color: #4A3728 !important;
    text-align: center !important;
    margin: 0 0 14px !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Tablet */
@media (max-width: 1024px) {
    .post-type-archive-camera .ra-camere-intro .ra-section-title {
        font-size: 52px !important;
        line-height: 1.08 !important;
        margin: 8px 0 18px !important;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .post-type-archive-camera .ra-camere-intro {
        margin: 0 auto 34px;
        padding: 0 18px;
    }

    .post-type-archive-camera .ra-camere-intro .ra-section-title {
        font-size: 52px !important;
        line-height: 1.05 !important;
        margin: 18px 0 14px !important;
    }
}

/* Mobile piccolo */
@media (max-width: 640px) {
    .post-type-archive-camera .ra-camere-intro {
        margin: 0 auto 28px;
        padding: 30px 14px 0;
    }

    .post-type-archive-camera .ra-camere-intro .ra-section-title {
        font-size: 46px !important;
        line-height: 1.05 !important;
        margin: 16px 0 12px !important;
    }
}

/* Titolo singola camera */
.ra-camera-hero__title {
    color: #4A3728 !important;
}

/* Contenitore generale */
.ra-camera-dropdown {
    border-radius: 24px !important;
    overflow: hidden !important;
    background: rgba(255,255,255,0.62) !important;
    border: 1px solid rgba(149,123,101,0.16) !important;
    box-shadow: 0 8px 20px rgba(109,87,69,0.08) !important;
}

/* Barra superiore cliccabile */
.ra-camera-dropdown__toggle {
    width: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    padding: 22px 24px !important;
    box-sizing: border-box !important;

    background: rgba(199,178,153,0.35) !important;
    border: none !important;
    border-radius: 0 !important; /* importante */
    box-shadow: none !important;
}

/* Blocco testo dentro la barra */
.ra-camera-dropdown__heading-wrap {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    width: 100%;
    background: transparent !important;
    border-radius: 0 !important;
}

/* Titolo */
.ra-camera-dropdown__title {
    font-family: "Allura", cursive !important;
    font-size: 42px !important;
    line-height: 1.1 !important;
    color: #4A3728 !important;
    font-weight: 400 !important;
    margin: 0 !important;
}

/* Sottotitolo */
.ra-camera-dropdown__subtitle {
    font-size: 16px;
    line-height: 1.4;
    color: #8f725c;
    margin: 0;
}

/* Stato chiuso: la barra prende gli angoli completi */
.ra-camera-dropdown:not(.is-open) .ra-camera-dropdown__toggle {
    border-radius: 24px !important;
}

/* Stato aperto: solo gli angoli superiori */
.ra-camera-dropdown.is-open .ra-camera-dropdown__toggle {
    border-radius: 24px 24px 0 0 !important;
}

/* Pannello interno */
.ra-camera-dropdown__panel {
    padding: 0 24px 24px !important;
    background: transparent !important;
    border-top: 1px solid rgba(149,123,101,0.14) !important;
}

@media (max-width: 768px) {
    .ra-camera-dropdown__toggle {
        padding: 18px 18px !important;
    }

    .ra-camera-dropdown__title {
        font-size: 34px !important;
    }

    .ra-camera-dropdown__panel {
        padding: 0 18px 18px !important;
    }
}

/* Titolo pagina prenota */
.ra-booking-form h2 {
    font-family: "Allura", cursive !important;
    font-size: 42px !important;
    line-height: 1.1 !important;
    color: #4A3728 !important;
    margin: 0 0 18px !important;
}

/* Bottone Continua */
.ra-booking-form button,
.ra-booking-form input[type="submit"],
.ra-booking-form .button,
.ra-booking-form .ra-btn {
    background-color: #CFB091 !important;
    color: #5a3f31 !important;
    font-family: "Allura", cursive !important;
    font-size: 24px !important;
    line-height: 1.1 !important;
    padding: 12px 26px !important;
    border: none !important;
    border-radius: 999px !important;
    box-shadow: none !important;
    transition: all 0.3s ease !important;
}

/* Hover */
.ra-booking-form button:hover,
.ra-booking-form input[type="submit"]:hover,
.ra-booking-form .button:hover,
.ra-booking-form .ra-btn:hover {
    background-color: #5a3f31 !important;
    color: #ffffff !important;
}

/* Tablet */
@media (max-width: 1024px) {
    .ra-booking-form h2 {
        font-size: 34px !important;
    }

    .ra-booking-form button,
    .ra-booking-form input[type="submit"],
    .ra-booking-form .button,
    .ra-booking-form .ra-btn {
        font-size: 22px !important;
        padding: 11px 24px !important;
    }
}

/* Mobile */
@media (max-width: 768px) {
    .ra-booking-form h2 {
        font-size: 30px !important;
        margin: 0 0 14px !important;
    }

    .ra-booking-form button,
    .ra-booking-form input[type="submit"],
    .ra-booking-form .button,
    .ra-booking-form .ra-btn {
        font-size: 20px !important;
        padding: 10px 22px !important;
    }
}

/* Mobile piccolo */
@media (max-width: 480px) {
    .ra-booking-form h2 {
        font-size: 28px !important;
    }

    .ra-booking-form button,
    .ra-booking-form input[type="submit"],
    .ra-booking-form .button,
    .ra-booking-form .ra-btn {
        font-size: 18px !important;
        padding: 10px 20px !important;
    }
}

/* =========================================================
   SFONDO HEADER PRINCIPALE
   ========================================================= */

.site-header,
.ast-primary-header-bar,
.ast-builder-grid-row-container,
.ast-desktop .main-header-container{
  background-image: url('https://casalelarosaazzurra.it/wp-content/uploads/2026/04/D1920x700.png') !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
  background-color: transparent !important;
}

/* disattiva le decorazioni svg sugli angoli */
.ast-primary-header-bar::before,
.ast-primary-header-bar::after{
  display: none !important;
  content: none !important;
  background-image: none !important;
}

/* TABLET */
@media (max-width:921px){
  .site-header,
  .ast-primary-header-bar,
  .ast-builder-grid-row-container,
  .ast-desktop .main-header-container{
    background-image: url('https://casalelarosaazzurra.it/wp-content/uploads/2026/04/T1024-x-700.png') !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}

/* MOBILE */
@media (max-width:767px){
  .site-header,
  .ast-primary-header-bar,
  .ast-builder-grid-row-container,
  .ast-desktop .main-header-container{
    background-image: url('https://casalelarosaazzurra.it/wp-content/uploads/2026/04/M768x900.png') !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    background-position: center center !important;
  }
}


/* =========================================================
   BURGER MENU — SOLO ICONA (NO SFONDO)
   ========================================================= */

@media (max-width:921px){

  .ast-button-wrap,
  .ast-button-wrap button,
  .ast-button-wrap .menu-toggle,
  .ast-button-wrap .main-header-menu-toggle,
  .ast-mobile-menu-trigger-minimal,
  .ast-header-break-point .main-header-menu-toggle,
  .menu-toggle,
  .main-header-menu-toggle{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    width: auto !important;
    height: auto !important;
  }

  .ast-button-wrap{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .ast-button-wrap .menu-toggle,
  .ast-button-wrap .main-header-menu-toggle,
  .menu-toggle,
  .main-header-menu-toggle{
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
  }

  .ast-mobile-svg,
  .ast-button-wrap .ast-mobile-svg,
  .menu-toggle .ast-mobile-svg,
  .main-header-menu-toggle .ast-mobile-svg{
    fill: #ffffff !important;
    color: #ffffff !important;
    width: 35px !important;
    height: 35px !important;
  }

  .ast-button-wrap:hover,
  .ast-button-wrap:focus,
  .ast-button-wrap:active,
  .menu-toggle:hover,
  .menu-toggle:focus,
  .menu-toggle:active,
  .main-header-menu-toggle:hover,
  .main-header-menu-toggle:focus,
  .main-header-menu-toggle:active,
  .ast-button-wrap button:hover,
  .ast-button-wrap button:focus,
  .ast-button-wrap button:active{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
  }

  .menu-toggle:hover .ast-mobile-svg,
  .menu-toggle:focus .ast-mobile-svg,
  .menu-toggle:active .ast-mobile-svg,
  .main-header-menu-toggle:hover .ast-mobile-svg,
  .main-header-menu-toggle:focus .ast-mobile-svg,
  .main-header-menu-toggle:active .ast-mobile-svg{
    fill: #ffffff !important;
    color: #ffffff !important;
  }
}

/* =========================================================
   BURGER/X — RIMUOVI CERCHIO SU TAP / CLICK / FOCUS
   ========================================================= */
@media (max-width:921px){

  [data-section="section-header-mobile-trigger"] .ast-button-wrap,
  [data-section="section-header-mobile-trigger"] .ast-button-wrap button,
  [data-section="section-header-mobile-trigger"] .menu-toggle,
  [data-section="section-header-mobile-trigger"] .main-header-menu-toggle,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon span,
  [data-section="section-header-mobile-trigger"] .ahfb-svg-iconset,
  [data-section="section-header-mobile-trigger"] .ast-inline-flex{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    border-radius: 0 !important;
    outline: none !important;
    -webkit-tap-highlight-color: transparent !important;
  }

  [data-section="section-header-mobile-trigger"] .ast-button-wrap:hover,
  [data-section="section-header-mobile-trigger"] .ast-button-wrap:focus,
  [data-section="section-header-mobile-trigger"] .ast-button-wrap:active,
  [data-section="section-header-mobile-trigger"] .ast-button-wrap button:hover,
  [data-section="section-header-mobile-trigger"] .ast-button-wrap button:focus,
  [data-section="section-header-mobile-trigger"] .ast-button-wrap button:active,
  [data-section="section-header-mobile-trigger"] .menu-toggle:hover,
  [data-section="section-header-mobile-trigger"] .menu-toggle:focus,
  [data-section="section-header-mobile-trigger"] .menu-toggle:active,
  [data-section="section-header-mobile-trigger"] .main-header-menu-toggle:hover,
  [data-section="section-header-mobile-trigger"] .main-header-menu-toggle:focus,
  [data-section="section-header-mobile-trigger"] .main-header-menu-toggle:active,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon:hover,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon:focus,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon:active,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon span:hover,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon span:focus,
  [data-section="section-header-mobile-trigger"] .mobile-menu-toggle-icon span:active,
  [data-section="section-header-mobile-trigger"] .ahfb-svg-iconset:hover,
  [data-section="section-header-mobile-trigger"] .ahfb-svg-iconset:focus,
  [data-section="section-header-mobile-trigger"] .ahfb-svg-iconset:active{
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
  }

  [data-section="section-header-mobile-trigger"] .ast-mobile-svg,
  [data-section="section-header-mobile-trigger"] .ast-menu-svg{
    fill:#ffffff !important;
    color:#ffffff !important;
  }
}

.ra-servizio-icon{
  width:72px;
  height:72px;
  margin-bottom:16px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(199,178,153,.28),rgba(184,149,116,.16));
}

.ra-servizio-icon .ra-icon{
  width:28px;
  height:28px;
  color:#8f725c;
  stroke:currentColor;
  fill:none;
  opacity:.9;
}

/* =========================================================
   PAGINA SERVIZI — REFINING
   ========================================================= */

.ra-servizi-intro,
.ra-servizi-accessibilita,
.ra-servizi-cta{
  max-width:900px;
  margin:0 auto 42px;
  padding:0 20px;
  text-align:center;
}

.ra-servizi-intro p,
.ra-servizi-accessibilita p,
.ra-servizi-cta p{
  max-width:760px;
  margin:0 auto;
  font-size:clamp(15px,2vw,18px);
  line-height:1.7;
  color:#6A5443 !important;
}

.ra-servizi-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
  max-width:1200px;
  margin:0 auto 48px;
  padding:0 20px;
}

.ra-servizio-card{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  padding:30px 24px;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(149,123,101,.18);
  border-radius:24px;
  box-shadow:0 8px 22px rgba(109,87,69,.10);
  backdrop-filter:blur(2px);
  transition:transform .32s ease, box-shadow .32s ease, border-color .32s ease;
}

.ra-servizio-card:hover{
  transform:translateY(-6px);
  border-color:rgba(184,149,116,.45);
  box-shadow:0 18px 36px rgba(111,85,66,.16);
}

.ra-servizio-icon{
  width:72px;
  height:72px;
  margin-bottom:16px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(199,178,153,.28),rgba(184,149,116,.16));
}

.ra-servizio-icon .ra-icon{
  width:28px;
  height:28px;
  color:#8f725c;
  stroke:currentColor;
  fill:none;
  opacity:.9;
}

.ra-servizio-card h3{
  margin:0 0 12px;
  font-family:"Playfair Display",serif !important;
  font-size:24px;
  color:#4A3728 !important;
}

.ra-servizio-card p{
  margin:0;
  font-size:16px;
  line-height:1.65;
  color:#6A5443 !important;
}

@media (max-width:921px){
  .ra-servizi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:640px){
  .ra-servizi-intro,
  .ra-servizi-accessibilita,
  .ra-servizi-cta{
    margin:0 auto 30px;
    padding:0 14px;
  }

  .ra-servizi-grid{
    grid-template-columns:1fr;
    gap:18px;
    margin-bottom:34px;
    padding:0 14px;
  }

  .ra-servizio-card{
    padding:24px 18px;
    border-radius:20px;
  }

  .ra-servizio-icon{
    width:64px;
    height:64px;
  }

  .ra-servizio-card h3{
    font-size:22px;
  }

  .ra-servizio-card p{
    font-size:15px;
  }
}



/* =========================================================
   TITOLO ANIMATO STILE SCRITTURA
   ========================================================= */
.ra-handwriting-wrap{
  display:flex;
  align-items:flex-end;
  justify-content:center;
  width:100%;
  margin:40px auto 20px;
  background:transparent;
  border:none;
  box-shadow:none;
  padding:0;
  line-height:1;
  text-align:center;
}

#ra-handwriting-text{
  font-family:'Allura', cursive;
  font-size:clamp(40px, 5vw, 78px);
  color:#4A3728;
  background:transparent;
  border:none;
  box-shadow:none;
  white-space:normal;
  line-height:1.05;
  letter-spacing:0;
}

.ra-handwriting-caret{
  display:inline-block;
  width:2px;
  height:0.85em;
  margin-left:4px;
  background:#4A3728;
  opacity:1;
  transform:translateY(-4px);
  animation:raBlinkCaret .8s steps(1) infinite;
}

@keyframes raBlinkCaret{
  0%, 50%{ opacity:1; }
  50.01%, 100%{ opacity:0; }
}

@media (max-width:921px){
  #ra-handwriting-text{
    font-size:clamp(30px, 6vw, 52px);
  }
}

@media (max-width:640px){

  .ra-handwriting-wrap{
    margin:6px auto 8px;
    padding:0 14px;
  }

  #ra-handwriting-text{
    font-size:clamp(28px, 9vw, 42px);
    line-height:1.05;
    text-align:center;
    font-weight:500;
    letter-spacing:0.3px;
  }

  .ra-handwriting-caret{
    display:none; /* opzionale, più pulito */
  }
}






