.elementor-1977 .elementor-element.elementor-element-e219b62{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1977 .elementor-element.elementor-element-f11ec4b{width:100%;max-width:100%;}.elementor-1977 .elementor-element.elementor-element-f11ec4b > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1977 .elementor-element.elementor-element-68170a1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1977 .elementor-element.elementor-element-68170a1.e-con{--align-self:stretch;}.elementor-1977 .elementor-element.elementor-element-12525e7{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1977 .elementor-element.elementor-element-cf72cec > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-1977 .elementor-element.elementor-element-fba8486{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1977 .elementor-element.elementor-element-e05b11a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-1977 .elementor-element.elementor-element-d8b0eea > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}@media(min-width:768px){.elementor-1977 .elementor-element.elementor-element-e219b62{--content-width:100%;}.elementor-1977 .elementor-element.elementor-element-12525e7{--width:50%;}.elementor-1977 .elementor-element.elementor-element-fba8486{--width:50%;}}/* Start custom CSS for html, class: .elementor-element-f11ec4b */#masthead,#colophon,.entry-header{display:none!important}
#page,#content,.site-content,.ast-container,#primary,#main,.ast-article-single,.entry-content,
.elementor-section-wrap,.elementor-widget-html,.elementor-widget-html>.elementor-widget-container{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
body{margin:0!important;background:#f3eee5;color:#302a26}

.ct-page{--cream:#f3eee5;--paper:#faf7f0;--green:#26372d;--green-dark:#172219;--wine:#623a35;--terracotta:#c78a60;--ink:#302a26;--muted:#71675f;--line:rgba(74,53,45,.18);--serif:"Cormorant Garamond",serif;--sans:"Montserrat",Arial,sans-serif;overflow:hidden;background:var(--cream);color:var(--ink);font-family:var(--sans)}
.ct-page *{box-sizing:border-box}.ct-page img{display:block;width:100%;height:100%;object-fit:cover}.ct-page figure{margin:0}.ct-page a{color:inherit}.ct-wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.ct-kicker{margin:0 0 20px;color:var(--terracotta);font:600 11px/1.2 var(--sans);letter-spacing:.28em;text-transform:uppercase}.ct-title{margin:0;color:var(--wine);font:500 clamp(52px,6vw,86px)/.9 var(--serif);letter-spacing:-.025em}.ct-body{color:#594f48;font:400 15px/1.75 var(--sans)}
.ct-link{display:inline-flex;align-items:center;gap:10px;padding-bottom:5px;border-bottom:1px solid currentColor;color:#9e6546;text-decoration:none;font:600 10px/1.2 var(--sans);letter-spacing:.12em;text-transform:uppercase}.ct-link:after{content:"→";transition:transform .3s ease}.ct-link:hover:after{transform:translateX(5px)}
.ct-button{display:inline-flex;padding:18px 25px;background:#435548;color:#fff!important;text-decoration:none;font:600 10px/1 var(--sans);letter-spacing:.13em;text-transform:uppercase;transition:background .3s,transform .3s}.ct-button:hover{background:#526657;transform:translateY(-2px)}
.ct-reveal{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.ct-reveal.is-visible{opacity:1;transform:none}

/* Header */
.ct-header{position:absolute;inset:0 0 auto;z-index:20;height:138px;border-bottom:1px solid rgba(255,255,255,.25);color:#fff}.ct-header-inner{height:100%;width:min(1180px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:190px 1fr 145px;align-items:center;gap:34px}
.ct-logo{display:block;width:155px;height:78px;overflow:hidden}.ct-logo img{object-position:center 42%;filter:brightness(0) invert(1)}.ct-nav{display:flex;justify-content:center;align-items:center;gap:30px}.ct-nav a{color:#fff;text-decoration:none;font:500 11px/1 var(--sans);letter-spacing:.11em;text-transform:uppercase;white-space:nowrap}.ct-nav a:hover,.ct-nav a[aria-current="page"]{color:#e9b68e}
.ct-book{justify-self:end;padding:18px 24px;background:rgba(52,70,58,.92);color:#fff;text-decoration:none;font:600 10px/1 var(--sans);letter-spacing:.12em;text-transform:uppercase}.ct-menu-toggle{display:none;justify-self:end;border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;padding:11px 13px;font:600 10px var(--sans);letter-spacing:.12em;text-transform:uppercase}

/* Hero */
.ct-hero{position:relative;width:100%;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;color:#fff;background:#17130f}
.ct-hero-bg{position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(17,12,9,.88) 0%,rgba(17,12,9,.52) 48%,rgba(17,12,9,.14) 78%),url("https://www.ilcaveau.restaurant/wp-content/uploads/2026/10/P1000368-scaled.jpg");background-position:center 58%;background-size:cover;transform:scale(1.03);animation:ctHero 12s ease-out both}@keyframes ctHero{from{transform:scale(1.09)}to{transform:scale(1.03)}}
.ct-hero-content{position:relative;z-index:2;width:min(1180px,calc(100% - 80px));margin:0 auto;padding:235px 0 95px}.ct-hero .ct-kicker{color:#efc5a5}.ct-hero h1{max-width:900px;margin:0;color:#fff!important;font:500 clamp(76px,8.1vw,128px)/.82 var(--serif);letter-spacing:-.035em;text-shadow:0 3px 28px rgba(0,0,0,.35)}.ct-hero h1 em{color:#dda074;font-style:normal}.ct-hero-copy{max-width:620px;margin:30px 0 0;color:rgba(255,255,255,.92);font:400 clamp(16px,1.3vw,20px)/1.6 var(--sans)}

/* Contatti */
.ct-contacts{padding:135px 0 145px}.ct-contacts-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:100px;align-items:start}.ct-contacts-copy .ct-body{max-width:470px;margin:35px 0 42px}.ct-details{border-top:1px solid var(--line)}.ct-detail{display:grid;grid-template-columns:125px 1fr;gap:24px;padding:25px 0;border-bottom:1px solid var(--line)}.ct-detail-label{color:#a46d50;font:600 9px/1.4 var(--sans);letter-spacing:.18em;text-transform:uppercase}.ct-detail-value,.ct-detail-value a{color:#403934;text-decoration:none;font:500 14px/1.65 var(--sans)}.ct-detail-value a:hover{color:#a46d50}
.ct-contact-image{position:relative;height:650px}.ct-contact-main{position:absolute;inset:0 12% 70px 0}.ct-contact-small{position:absolute;right:0;bottom:0;width:49%;height:315px;border:11px solid var(--cream);box-shadow:0 24px 60px rgba(44,34,27,.14)}

/* Prenotazione / OctoTable */
.ct-reservation{padding:125px 0 140px;background:var(--green);color:#fff}.ct-reservation-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:80px;align-items:start}.ct-reservation .ct-title{color:#fff}.ct-reservation-copy .ct-body{max-width:430px;margin:32px 0;color:rgba(255,255,255,.76)}.ct-reservation-note{padding-left:20px;border-left:1px solid rgba(231,183,145,.55);color:rgba(255,255,255,.72);font:400 12px/1.7 var(--sans)}
.ct-octo-shell{min-height:520px;padding:44px;background:var(--paper);color:var(--ink);box-shadow:0 25px 65px rgba(0,0,0,.2)}.ct-octo-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;padding-bottom:25px;border-bottom:1px solid var(--line)}.ct-octo-top strong{color:var(--wine);font:500 36px/1 var(--serif)}.ct-octo-top span{color:#a46d50;font:600 9px var(--sans);letter-spacing:.18em;text-transform:uppercase}
.ct-octo-placeholder{min-height:360px;display:grid;place-items:center;padding:40px;border:1px dashed rgba(98,58,53,.35);background:#f6f0e7;text-align:center}.ct-octo-placeholder-inner{max-width:410px}.ct-octo-placeholder strong{display:block;margin-bottom:15px;color:var(--wine);font:500 34px/1 var(--serif)}.ct-octo-placeholder p{margin:0 0 24px;color:var(--muted);font:400 13px/1.7 var(--sans)}
.ct-octo-elementor{position:relative;z-index:5;width:min(760px,calc(100% - 80px))!important;max-width:760px!important;margin:-92px auto 110px!important;padding:42px!important;background:#faf7f0;box-shadow:0 25px 65px rgba(0,0,0,.2)}
.ct-octo-elementor>.e-con-inner{padding:0!important}.ct-octo-elementor .elementor-widget-shortcode,.ct-octo-elementor .elementor-shortcode{width:100%}

/* Mappa */
.ct-location{padding:145px 0 155px}.ct-location-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:85px;align-items:end;margin-bottom:55px}.ct-location-head .ct-body{max-width:550px;margin:0}.ct-map-grid{display:grid;grid-template-columns:1.35fr .65fr;min-height:520px;background:var(--paper);box-shadow:0 22px 55px rgba(44,34,27,.1)}.ct-map{min-height:520px;overflow:hidden}.ct-map iframe{display:block;width:100%;height:100%;min-height:520px;border:0;filter:grayscale(.85) sepia(.12) contrast(.92)}.ct-map-info{display:flex;flex-direction:column;justify-content:center;padding:55px}.ct-map-info .ct-kicker{margin-bottom:18px}.ct-map-info h3{margin:0 0 20px;color:var(--wine);font:500 44px/.95 var(--serif)}.ct-map-info p{margin:0 0 28px;color:var(--muted);font:400 13px/1.75 var(--sans)}

/* Informazioni */
.ct-info{padding:125px 0 145px;background:var(--paper)}.ct-info-head{text-align:center;max-width:760px;margin:0 auto 60px}.ct-info-head .ct-title{margin-bottom:24px}.ct-info-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.ct-info-card{padding:48px 40px 52px}.ct-info-card+.ct-info-card{border-left:1px solid var(--line)}.ct-info-num{display:block;margin-bottom:40px;color:#bd7c58;font:500 11px var(--sans);letter-spacing:.2em}.ct-info-card h3{margin:0 0 15px;color:var(--wine);font:500 35px/1 var(--serif)}.ct-info-card p{margin:0;color:var(--muted);font:400 13px/1.72 var(--sans)}

@media(max-width:1050px){.ct-header-inner{grid-template-columns:155px 1fr 120px}.ct-nav{gap:18px}.ct-nav a{font-size:9px}.ct-book{padding:16px 18px}.ct-contacts-grid,.ct-reservation-grid,.ct-location-head{gap:55px}.ct-octo-shell{padding:32px}.ct-map-info{padding:40px}}
@media(max-width:820px){
  .ct-wrap,.ct-header-inner,.ct-hero-content{width:calc(100% - 40px)}.ct-header{height:105px}.ct-header-inner{grid-template-columns:1fr auto}.ct-logo{width:128px;height:62px}.ct-book{display:none}.ct-menu-toggle{display:block}.ct-nav{display:none;position:absolute;left:0;right:0;top:105px;padding:26px 22px;background:rgba(21,29,24,.98);flex-direction:column;align-items:flex-start;gap:22px}.ct-header.is-open .ct-nav{display:flex}.ct-nav a{font-size:11px}
  .ct-hero{min-height:100vh;min-height:100svh}.ct-hero-content{padding:205px 0 85px}.ct-hero h1{font-size:clamp(64px,14vw,94px)}
  .ct-contacts,.ct-location{padding:95px 0}.ct-contacts-grid,.ct-reservation-grid,.ct-location-head{grid-template-columns:1fr;gap:55px}.ct-contact-image{height:560px}
  .ct-reservation{padding:90px 0}.ct-octo-shell{min-height:470px}.ct-map-grid{grid-template-columns:1fr}.ct-map{min-height:420px}.ct-map iframe{min-height:420px}.ct-map-info{padding:42px}
  .ct-info{padding:95px 0}.ct-info-grid{grid-template-columns:1fr}.ct-info-card{padding:40px 24px}.ct-info-card+.ct-info-card{border-left:0;border-top:1px solid var(--line)}.ct-info-num{margin-bottom:24px}
}
@media(max-width:520px){
  .ct-wrap,.ct-header-inner,.ct-hero-content{width:calc(100% - 32px)}.ct-kicker{font-size:9px;letter-spacing:.23em}.ct-title{font-size:48px}.ct-body{font-size:14px}.ct-hero{min-height:100vh;min-height:100svh}.ct-hero-bg{background-position:62% center}.ct-hero-content{padding-top:175px}.ct-hero h1{font-size:56px;line-height:.88}.ct-hero-copy{font-size:15px}
  .ct-detail{grid-template-columns:1fr;gap:7px}.ct-contact-image{height:435px}.ct-contact-main{right:5%;bottom:65px}.ct-contact-small{width:58%;height:220px;border-width:7px}
  .ct-octo-shell{padding:22px}.ct-octo-top{align-items:flex-start;flex-direction:column}.ct-octo-top strong{font-size:31px}.ct-octo-placeholder{min-height:330px;padding:25px 18px}.ct-octo-placeholder strong{font-size:30px}
  .ct-location-head{gap:24px}.ct-map{min-height:360px}.ct-map iframe{min-height:360px}.ct-map-info{padding:32px 24px}.ct-map-info h3{font-size:38px}.ct-info-head{text-align:left}
  .ct-octo-elementor{width:calc(100% - 32px)!important;margin:-58px auto 75px!important;padding:22px!important}
}
@media(prefers-reduced-motion:reduce){.ct-reveal{opacity:1;transform:none;transition:none}.ct-hero-bg{animation:none}}/* End custom CSS */