/* =========================================================
   Ristorante All'Anguilla - FINAL MOCKUP SKIN
   Header, hero, sections, menu preview and footer aligned to the approved mockup.
   Loaded after all theme/Elementor styles.
   ========================================================= */
:root{
  --aa-navy:#3b302a;
  --aa-navy-2:#251d19;
  --aa-cream:#fff9ef;
  --aa-paper:#f6ecde;
  --aa-paper-2:#fff9ef;
  --aa-ink:#46352e;
  --aa-muted:#7a6b62;
  --aa-line:rgba(70,53,46,.14);
  --aa-line-soft:rgba(70,53,46,.075);
}
html body{background:var(--aa-paper)!important;color:var(--aa-ink)!important;}
.adr-widget-text,.adr-widget-text p,.adr-contact-info p,.adr-contact-info a,.adr-menu-row p,.aa-menu-preview,.aa-signature-section,.aa-experience-section{font-family:'Mulish',Arial,sans-serif!important;}
.adr-widget-title,.aa-section-head h2,.aa-experience-copy h2,.aa-reservation-strip h2,.aa-menu-preview h2,.aa-signature-section h2,.aa-footer-col h3,.aa-footer-brand p,.adr-menu-row__top h3,.adr-menu-row__top span{font-family:'Cormorant Garamond',Georgia,serif!important;letter-spacing:0!important;text-transform:none!important;color:var(--aa-ink)!important;font-weight:600!important;}
.adr-widget-label,.aa-section-head span,.aa-experience-copy span,.aa-menu-tabs a,.aa-final-nav a,.aa-final-book,.adr-round-button,.aa-text-link{font-family:'Mulish',Arial,sans-serif!important;text-transform:uppercase!important;letter-spacing:.14em!important;font-weight:800!important;}

/* HEADER EXACTLY IN THE MOCKUP DIRECTION */
.aa-final-header.adr-elementor-header{display:block!important;padding:0!important;color:var(--aa-ink)!important;background:transparent!important;box-shadow:none!important;border:0!important;position:fixed!important;top:0;left:0;right:0;z-index:999!important;}
.aa-final-topbar{height:38px;background:linear-gradient(180deg,#092b4e,#082541)!important;color:#f6f1e8!important;font-size:12px;}
.aa-final-header-inner{width:min(1470px,calc(100% - 48px));height:100%;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;}
.aa-final-address::before{content:'⌖ ';font-size:13px;opacity:.9;}
.aa-final-toplinks{display:flex;gap:20px;align-items:center;white-space:nowrap;}
.aa-final-toplinks i{font-style:normal;opacity:.95;}
.aa-final-navrow{height:65px;background:rgba(250,246,239,.98)!important;box-shadow:0 8px 24px rgba(0,0,0,.06);display:grid!important;grid-template-columns:1fr auto 1fr;align-items:center;position:relative;padding:0 max(22px,calc((100vw - 1470px)/2));}
.aa-final-logo-wrap{width:138px;height:118px;border-radius:0 0 999px 999px;background:rgba(250,246,239,.98);display:flex!important;align-items:center!important;justify-content:center!important;margin-top:18px;box-shadow:0 10px 22px rgba(0,0,0,.08);z-index:4;overflow:hidden;}
.aa-final-logo-wrap .adr-header-logo__image{width:116px!important;max-height:112px!important;object-fit:contain!important;filter:none!important;}
.aa-final-nav{display:flex;align-items:center;gap:24px;min-width:0;}
.aa-final-nav--left{justify-content:flex-start;}
.aa-final-nav--right{justify-content:flex-end;}
.aa-final-nav a{font-size:12px!important;color:var(--aa-navy)!important;text-decoration:none!important;line-height:1!important;position:relative;}
.aa-final-nav span{font-size:10px;color:rgba(11,49,90,.45);}
.aa-final-nav a:not(.aa-final-book)::after{content:'';position:absolute;left:50%;bottom:-9px;width:0;height:1px;background:var(--aa-navy);transition:.22s ease;}
.aa-final-nav a:hover::after{left:0;width:100%;}
.aa-final-book{background:var(--aa-navy)!important;color:#fff!important;padding:17px 24px!important;box-shadow:0 8px 14px rgba(11,49,90,.20);margin-left:2px;}
.aa-final-book::after{content:' ◌';opacity:.8;}
.aa-final-mobile-toggle{display:none!important;}
.aa-final-header .adr-mobile-menu-panel{background:rgba(8,37,66,.98)!important;margin:0!important;padding:24px!important;}
.aa-final-header .adr-mobile-menu a{color:#fff!important;}

/* HERO */
.adr-hero-widget{min-height:760px!important;height:100vh!important;padding:0!important;align-items:center!important;background-position:center center!important;isolation:isolate!important;margin-top:0!important;}
.adr-hero-widget::before{background:linear-gradient(90deg,rgba(7,37,66,.84) 0%,rgba(7,37,66,.66) 43%,rgba(7,37,66,.18) 100%)!important;opacity:var(--adr-hero-overlay-opacity,.48)!important;z-index:1!important;}
.adr-hero-widget__pattern{background-image:radial-gradient(rgba(255,255,255,.28) .65px,transparent .65px)!important;background-size:5px 5px!important;opacity:.10!important;z-index:2!important;}
.adr-hero-widget::after{content:''!important;position:absolute!important;left:-42px!important;top:112px!important;width:430px!important;height:430px!important;background:url('../images/decor/vintage-octopus.svg') no-repeat left center/contain!important;opacity:.12!important;z-index:3!important;pointer-events:none!important;}
.adr-hero-widget__content{position:relative!important;z-index:4!important;width:min(1200px,calc(100% - 64px))!important;margin:0 auto!important;max-width:1200px!important;padding-top:92px!important;}
.adr-hero-widget--h-left .adr-hero-widget__content{margin-left:auto!important;margin-right:auto!important;text-align:left!important;}
.adr-hero-widget__eyebrow{color:#fff8ec!important;font-size:13px;margin:0 0 12px 0!important;}
.adr-hero-widget__title{color:#fff8ec!important;font-size:clamp(54px,6vw,92px);line-height:.96;max-width:var(--adr-hero-title-max-width,670px);margin:0!important;text-shadow:0 12px 28px rgba(0,0,0,.20)!important;}
.aa-hero-subtitle{margin:12px 0 26px;color:var(--adr-hero-subtitle-color,#fff8ec);font-family:'Cormorant Garamond',Georgia,serif;font-size:clamp(25px,2.2vw,39px);font-style:italic;line-height:1.1;}
.aa-hero-actions{display:flex;flex-wrap:wrap;gap:18px;margin-top:12px;}
.aa-hero-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 34px;border:1px solid rgba(255,255,255,.62);color:#fff!important;text-decoration:none!important;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;background:rgba(11,49,90,.68);}
.aa-hero-actions a:nth-child(2){background:#f7f2e9;color:var(--aa-navy)!important;border-color:#f7f2e9;}
.aa-hero-actions a::after{content:' ◌';font-size:12px;opacity:.7;}
.aa-hero-dots{position:absolute;left:50%;bottom:-220px;transform:translateX(-50%);display:flex;gap:7px;}
.aa-hero-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.8);}
.aa-hero-dots span:first-child{background:#fff;}

/* GLOBAL SECTIONS */
.adr-section,.aa-signature-section,.aa-menu-preview,.aa-experience-section,.aa-reservation-strip{position:relative!important;background:var(--aa-paper)!important;overflow:hidden!important;}
.adr-section{padding:clamp(78px,7vw,116px) 0!important;}
.adr-about-widget,.adr-story-widget,.adr-menu-widget,.adr-blog-widget,.adr-contact-widget{background:var(--aa-paper)!important;}
.adr-about-widget::before,.aa-signature-section::before,.aa-menu-preview::before,.aa-experience-section::before,.adr-about-widget::after,.aa-signature-section::after,.aa-menu-preview::after,.aa-experience-section::after{content:'';position:absolute;pointer-events:none;background-repeat:no-repeat;background-size:contain;z-index:1;}
.adr-about-widget::before{left:-22px;top:20px;width:175px;height:430px;background-image:url('../images/decor/vintage-seaweed.svg');opacity:.10!important;}
.adr-about-widget::after{right:-20px;top:20px;width:330px;height:300px;background-image:url('../images/decor/vintage-octopus.svg');opacity:.075!important;}
.adr-about-widget>.adr-container,.aa-signature-section>*,.aa-menu-preview>*,.aa-experience-section>*{position:relative;z-index:2;}
.adr-split-widget__inner{grid-template-columns:minmax(330px,.92fr) minmax(330px,1.08fr)!important;gap:clamp(48px,6vw,92px)!important;align-items:center!important;}
.adr-split-widget--reverse .adr-image-slider{order:2!important;}
.adr-split-widget--reverse .adr-split-widget__content{order:1!important;}
.adr-widget-label{font-size:13px!important;color:#8494a2!important;margin-bottom:12px!important;letter-spacing:.08em!important;text-transform:none!important;font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:500!important;font-style:italic!important;}
.adr-widget-title{font-size:clamp(34px,3vw,50px)!important;line-height:1.05!important;margin-bottom:20px!important;letter-spacing:.02em!important;text-transform:uppercase!important;color:var(--aa-navy)!important;}
.adr-widget-text,.adr-widget-text p{font-size:16px!important;line-height:1.72!important;color:#394b5a!important;max-width:550px;}
.aa-text-link{display:inline-flex!important;align-items:center!important;gap:10px!important;color:var(--aa-navy)!important;font-size:12px!important;text-decoration:underline!important;text-underline-offset:4px!important;margin-top:12px!important;}
.aa-text-link::after{content:'';display:inline-block;width:50px;height:8px;background:linear-gradient(90deg,var(--aa-navy),transparent);opacity:.55;clip-path:polygon(0 50%,18% 0,36% 50%,54% 0,72% 50%,90% 0,100% 50%,90% 100%,72% 50%,54% 100%,36% 50%,18% 100%);}
.adr-image-slider::before,.adr-image-slider::after{display:none!important;}
.adr-image-slider,.adr-image-slider__track{min-height:clamp(320px,31vw,440px)!important;height:clamp(320px,31vw,440px)!important;}
.adr-image-slider__track{border:0!important;border-radius:0!important;box-shadow:0 14px 34px rgba(8,36,63,.08)!important;background:#fff!important;overflow:hidden!important;}
.adr-image-slider__slide img{width:100%!important;height:100%!important;object-fit:cover!important;filter:saturate(.98) contrast(1.03)!important;}
.adr-image-slider__slide figcaption{display:none!important;}
.adr-image-slider__controls{justify-content:flex-start!important;margin-top:16px!important;gap:12px!important;}
.adr-image-slider__arrow{width:40px!important;height:40px!important;border-radius:0!important;background:var(--aa-navy)!important;color:#fff!important;border:0!important;box-shadow:none!important;}
.adr-image-slider__dot{width:20px!important;height:3px!important;border-radius:0!important;background:rgba(11,49,90,.16)!important;}
.adr-image-slider__dot.is-active{width:38px!important;background:var(--aa-navy)!important;}

/* SIGNATURE SECTION */
.aa-signature-section{padding:92px max(32px,calc((100vw - 1240px)/2)) 84px!important;}
.aa-signature-section::before{left:30px;top:40px;width:260px;height:170px;background-image:url('../images/decor/vintage-fish-left.svg');opacity:.07;}
.aa-signature-section::after{right:40px;top:56px;width:170px;height:170px;background-image:url('../images/decor/vintage-shell.svg');opacity:.08;}
.aa-section-head{text-align:center;margin:0 auto 44px;}
.aa-section-head span{display:block;color:#9aa6ae!important;text-transform:none!important;font-family:'Cormorant Garamond',Georgia,serif!important;font-weight:500!important;font-style:italic!important;letter-spacing:.04em!important;font-size:18px!important;}
.aa-section-head h2{margin:6px 0 4px!important;font-size:clamp(32px,3.2vw,50px)!important;text-transform:uppercase!important;color:var(--aa-navy)!important;}
.aa-section-head i{display:block;margin:10px auto 0;width:34px;height:8px;background:var(--aa-navy);opacity:.55;clip-path:polygon(0 50%,20% 0,40% 50%,60% 0,80% 50%,100% 0,100% 100%,80% 50%,60% 100%,40% 50%,20% 100%);}
.aa-signature-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:32px;align-items:start;text-align:center;}
.aa-signature-grid article{min-width:0;}
.aa-signature-grid img{width:118px!important;height:118px!important;border-radius:999px!important;object-fit:cover!important;margin:0 auto 16px!important;filter:saturate(.98) contrast(1.03);box-shadow:0 10px 22px rgba(8,36,63,.08);}
.aa-signature-grid h3{font-family:'Cormorant Garamond',Georgia,serif!important;font-size:21px!important;line-height:1.05!important;color:var(--aa-navy)!important;margin:0!important;font-weight:600!important;}
.aa-signature-grid small{display:block;width:22px;height:6px;background:var(--aa-navy);opacity:.5;margin:12px auto 0;clip-path:polygon(0 50%,25% 0,50% 50%,75% 0,100% 50%,75% 100%,50% 50%,25% 100%);}

/* MENU PREVIEW */
.aa-menu-preview{padding:88px max(32px,calc((100vw - 1120px)/2)) 96px!important;}
.aa-menu-preview::before{left:-24px;bottom:22px;width:230px;height:190px;background-image:url('../images/decor/vintage-crab.svg');opacity:.08;}
.aa-menu-preview::after{right:-18px;top:80px;width:250px;height:240px;background-image:url('../images/decor/vintage-shell.svg');opacity:.09;}
.aa-menu-tabs{display:flex;justify-content:center;gap:0;margin:34px auto 26px;border-bottom:1px solid var(--aa-line);max-width:760px;}
.aa-menu-tabs a{display:block;padding:15px 32px;color:#182f44!important;text-decoration:none!important;font-size:11px!important;border-left:1px solid transparent;}
.aa-menu-tabs a.is-active{background:var(--aa-navy);color:#fff!important;}
.aa-menu-columns{display:grid;grid-template-columns:1fr 1px 1fr;gap:36px;max-width:850px;margin:0 auto;}
.aa-menu-separator{background:var(--aa-line);position:relative;}
.aa-menu-separator::after{content:'✣';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:var(--aa-navy);background:var(--aa-paper);font-size:15px;padding:12px 0;}
.aa-menu-col p{display:flex;justify-content:space-between;gap:20px;margin:0;padding:12px 0;border-bottom:1px dotted rgba(11,49,90,.22);font-size:15px;color:#384b5a;}
.aa-menu-col b{font-family:'Cormorant Garamond',Georgia,serif;color:var(--aa-navy);font-size:18px;font-weight:600;white-space:nowrap;}
.aa-menu-preview>.aa-text-link{display:flex!important;width:max-content;margin:28px auto 0!important;}

/* EXPERIENCE */
.aa-experience-section{padding:88px max(32px,calc((100vw - 1240px)/2)) 92px!important;display:grid!important;grid-template-columns:.85fr 1.65fr;gap:46px;align-items:center;}
.aa-experience-section::before{left:-15px;bottom:20px;width:180px;height:380px;background-image:url('../images/decor/vintage-seaweed.svg');opacity:.08;}
.aa-experience-section::after{right:-16px;bottom:22px;width:230px;height:165px;background-image:url('../images/decor/vintage-fish-right.svg');opacity:.07;}
.aa-experience-copy span{display:block;color:#9aa6ae;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:20px;margin-bottom:14px;}
.aa-experience-copy h2{font-size:clamp(30px,3vw,46px)!important;line-height:1.05!important;text-transform:uppercase!important;color:var(--aa-navy)!important;margin:0 0 12px!important;}
.aa-experience-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;}
.aa-experience-gallery img{width:100%!important;aspect-ratio:1.2/1!important;object-fit:cover!important;display:block!important;box-shadow:0 14px 34px rgba(8,36,63,.10);}

/* RESERVATION STRIP */
.aa-reservation-strip{background:linear-gradient(180deg,var(--aa-navy),var(--aa-navy-2))!important;color:#fff!important;padding:48px max(32px,calc((100vw - 1200px)/2))!important;display:flex;align-items:center;justify-content:space-between;gap:40px;}
.aa-reservation-strip::before{content:'';position:absolute;left:0;bottom:0;width:300px;height:180px;background:url('../images/decor/vintage-fish-left.svg') no-repeat left bottom/contain;opacity:.08;}
.aa-reservation-strip h2{color:#fff!important;font-size:clamp(34px,3.4vw,52px)!important;margin:0 0 6px!important;text-transform:uppercase;}
.aa-reservation-strip p{margin:0;color:rgba(255,255,255,.82);font-size:16px;}
.aa-reservation-strip a{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 42px;background:#f7f2e9;color:var(--aa-navy)!important;text-decoration:none!important;text-transform:uppercase;font-weight:800;font-size:12px;letter-spacing:.14em;}
.aa-reservation-strip a::after{content:' ◌';opacity:.75;}

/* FINAL FOOTER */
.aa-final-footer.adr-elementor-footer{background:linear-gradient(180deg,var(--aa-navy),#06233d)!important;color:#f6f1e8!important;text-align:left!important;padding:70px max(32px,calc((100vw - 1200px)/2)) 28px!important;position:relative;overflow:hidden;}
.aa-final-footer::before{content:'';position:absolute;right:-35px;bottom:20px;width:360px;height:250px;background:url('../images/decor/vintage-fish-right.svg') no-repeat right bottom/contain;opacity:.08;pointer-events:none;}
.aa-final-footer::after{content:'';position:absolute;left:-25px;bottom:28px;width:280px;height:180px;background:url('../images/decor/vintage-fish-left.svg') no-repeat left bottom/contain;opacity:.07;pointer-events:none;}
.aa-footer-grid{display:grid;grid-template-columns:1.2fr 1fr .75fr .8fr;gap:60px;position:relative;z-index:2;margin-bottom:48px;}
.aa-footer-brand .adr-footer-logo{justify-content:flex-start!important;margin-bottom:18px;}
.aa-footer-brand .adr-footer-logo__image{width:120px!important;max-height:120px!important;filter:none!important;}
.aa-footer-brand p,.aa-footer-col p{font-family:'Mulish',Arial,sans-serif!important;font-size:14px!important;line-height:1.75!important;color:rgba(246,241,232,.82)!important;margin:0 0 16px!important;}
.aa-footer-col h3{font-family:'Cormorant Garamond',Georgia,serif!important;color:#fff!important;text-transform:uppercase!important;font-size:22px!important;margin:0 0 18px!important;}
.aa-final-footer .adr-footer-menu{display:grid!important;gap:8px!important;list-style:none!important;margin:0!important;padding:0!important;justify-content:start!important;}
.aa-final-footer .adr-footer-menu a{font-family:'Mulish',Arial,sans-serif!important;color:rgba(246,241,232,.82)!important;text-transform:none!important;letter-spacing:0!important;font-size:14px!important;text-decoration:none!important;}
.aa-final-footer .adr-footer-social{justify-content:flex-start!important;margin:18px 0 0!important;gap:10px!important;}
.aa-final-footer .adr-footer-social-link{width:34px!important;height:34px!important;border-radius:0!important;border-color:rgba(246,241,232,.22)!important;color:#fff!important;background:rgba(255,255,255,.04)!important;}
.aa-final-footer .adr-footer-line{position:relative;z-index:2;background:rgba(246,241,232,.14)!important;margin:0 0 18px!important;width:100%!important;height:1px;}
.aa-final-footer .adr-footer-copy{position:relative;z-index:2;color:rgba(246,241,232,.68)!important;font-size:12px!important;text-align:left!important;margin:0!important;}

@media(max-width:1180px){
  .aa-final-nav span{display:none;}.aa-final-nav{gap:16px}.aa-final-book{padding:15px 18px!important}.aa-signature-grid{gap:20px}.aa-footer-grid{grid-template-columns:1fr 1fr;gap:42px;}
}
@media(max-width:900px){
  .aa-final-topbar{display:none}.aa-final-navrow{height:65px;grid-template-columns:1fr auto;}.aa-final-nav--left{display:none!important}.aa-final-nav--right a:not(.aa-final-book){display:none!important}.aa-final-book{display:none!important}.aa-final-mobile-toggle{display:grid!important}.aa-final-logo-wrap{width:96px;height:96px;margin-top:10px;justify-self:start}.aa-final-logo-wrap .adr-header-logo__image{width:84px!important;}.adr-hero-widget__content{padding-top:80px!important}.aa-hero-dots{display:none}.adr-split-widget__inner{grid-template-columns:1fr!important}.adr-split-widget--reverse .adr-image-slider,.adr-split-widget--reverse .adr-split-widget__content{order:initial!important}.aa-signature-grid{grid-template-columns:repeat(3,1fr)}.aa-menu-columns{grid-template-columns:1fr;gap:10px}.aa-menu-separator{display:none}.aa-experience-section{grid-template-columns:1fr}.aa-experience-gallery{grid-template-columns:repeat(2,1fr)}.aa-reservation-strip{display:grid;text-align:left}.aa-footer-grid{grid-template-columns:1fr;gap:28px;}
}
@media(max-width:560px){
  .adr-hero-widget__title{font-size:48px}.aa-hero-subtitle{font-size:25px}.aa-hero-actions a{width:100%;}.aa-signature-grid{grid-template-columns:repeat(2,1fr)}.aa-signature-grid img{width:96px!important;height:96px!important}.aa-menu-tabs{overflow-x:auto;justify-content:flex-start}.aa-menu-tabs a{white-space:nowrap;padding:14px 20px}.aa-experience-gallery{grid-template-columns:1fr}.aa-final-header-inner{width:min(100% - 26px,1470px)}.aa-final-navrow{padding:0 14px;}
}


/* =========================================================
   VERSIONE 1.0.0 - HEADER/FOOTER CUSTOMIZER + PNG PLACEHOLDERS
   ========================================================= */
.aa-final-header.adr-site-header,
.aa-final-header.adr-elementor-header{display:block!important;padding:0!important;color:var(--aa-ink)!important;background:transparent!important;box-shadow:none!important;border:0!important;position:fixed!important;top:0;left:0;right:0;z-index:999!important;}
.aa-final-topmeta,.aa-final-topmeta a{display:flex;align-items:center;gap:16px;color:#f6f1e8!important;text-decoration:none!important;white-space:nowrap;}
.aa-final-topmeta>span,.aa-final-topmeta>a{display:inline-flex;align-items:center;gap:8px;}
.aa-final-topmeta svg,.aa-final-topmeta .adr-inline-ta{width:13px;height:13px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 13px;}
.aa-final-topmeta .adr-inline-ta{font-size:10px;font-weight:800;letter-spacing:.02em;border:1px solid currentColor;border-radius:50%;width:16px;height:16px;}
.aa-final-logo-wrap .custom-logo-link,.aa-final-logo-wrap .adr-header-logo,.aa-footer-brand .adr-footer-logo{display:flex;align-items:center;justify-content:center;}
.aa-final-footer.adr-site-footer,
.aa-final-footer.adr-elementor-footer{background:linear-gradient(180deg,var(--aa-navy),#06233d)!important;color:#f6f1e8!important;text-align:left!important;padding:70px max(32px,calc((100vw - 1200px)/2)) 28px!important;position:relative;overflow:hidden;}
.aa-final-footer .adr-footer-social-svg,.aa-final-footer .adr-footer-social-link svg{width:16px;height:16px;display:block;}
.aa-footer-col a{color:rgba(246,241,232,.82)!important;text-decoration:none!important;}
.aa-final-header .adr-mobile-menu-panel .aa-final-book{display:inline-flex!important;}

/* PNG temporary decorations */
.adr-hero-widget::after{background-image:url('../images/decor/vintage-octopus.png')!important;}
.adr-about-widget::before,.aa-experience-section::before,.adr-contact-widget::after{background-image:url('../images/decor/vintage-seaweed.png')!important;}
.adr-about-widget::after,.aa-signature-section::after,.aa-experience-section::after{background-image:url('../images/decor/vintage-octopus.png')!important;}
.aa-signature-section::before,.aa-final-footer::before,.adr-contact-widget::before{background-image:url('../images/decor/vintage-fish-left.png')!important;}
.aa-menu-preview::before{background-image:url('../images/decor/vintage-crab.png')!important;}
.aa-menu-preview::after,.aa-final-footer::after{background-image:url('../images/decor/vintage-shell.png')!important;}
.adr-blog-widget::after,.aa-reservation-strip::before{background-image:url('../images/decor/vintage-fish-right.png')!important;}

/* ensure header/footer mobile sizing remains okay */
@media(max-width:900px){
  .aa-final-header.adr-site-header .aa-final-topbar{display:none!important;}
  .aa-final-header.adr-site-header .aa-final-navrow{height:65px;grid-template-columns:1fr auto;}
  .aa-final-header.adr-site-header .aa-final-nav--left{display:none!important;}
  .aa-final-header.adr-site-header .aa-final-nav--right a:not(.aa-final-book){display:none!important;}
  .aa-final-header.adr-site-header .aa-final-book{display:none!important;}
  .aa-final-header.adr-site-header .aa-final-mobile-toggle{display:grid!important;}
  .aa-final-header.adr-site-header .aa-final-logo-wrap{width:96px;height:96px;margin-top:10px;justify-self:start;}
  .aa-final-header.adr-site-header .aa-final-logo-wrap .adr-header-logo__image{width:84px!important;}
}
@media(max-width:560px){
  .aa-final-header-inner{width:min(100% - 26px,1470px);}
  .aa-final-navrow{padding:0 14px;}
}


/* =========================================================
   1.0.1 refinements - header + widget gallery filters
   ========================================================= */
.aa-final-header .aa-final-topbar{
  background:linear-gradient(180deg,#0b3f69 0%,#082e4e 100%)!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
}
.aa-final-header .aa-final-header-inner{padding:0 6px;min-height:40px;}
.aa-final-header .aa-final-navrow{
  min-height:88px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;
  align-items:center!important;
  gap:24px!important;
  background:rgba(246,241,232,.98)!important;
  box-shadow:0 14px 36px rgba(8,36,61,.12)!important;
}
.aa-final-header .aa-final-nav{display:flex!important;align-items:center;gap:22px;min-width:0;}
.aa-final-header .aa-final-nav--left{justify-content:flex-end;}
.aa-final-header .aa-final-nav--right{justify-content:flex-start;}
.aa-final-header .aa-final-nav a{
  position:relative;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  padding:16px 2px!important;
  color:var(--aa-ink)!important;
  font-size:14px!important;
  letter-spacing:.12em!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
.aa-final-header .aa-final-nav a span{display:inline-block;line-height:1.1;}
.aa-final-header .aa-final-nav a::after{
  content:'';
  position:absolute;
  left:50%;bottom:10px;
  width:0;height:2px;
  background:var(--aa-navy);
  transition:all .24s ease;
  transform:translateX(-50%);
}
.aa-final-header .aa-final-nav a:hover::after,
.aa-final-header .aa-final-nav a:focus-visible::after,
.aa-final-header .aa-final-nav a[aria-current="page"]::after{width:28px;}
.aa-final-header .aa-final-logo-wrap{
  width:126px!important;height:126px!important;
  margin-top:20px!important;
  background:#f6f1e8!important;
  border:1px solid rgba(8,36,61,.08)!important;
  box-shadow:0 18px 34px rgba(8,36,61,.14)!important;
}
.aa-final-header .aa-final-logo-wrap .adr-header-logo__image{width:112px!important;filter:none!important;}
.aa-final-header .aa-final-book{
  margin-left:18px!important;
  padding:14px 24px!important;
  border-radius:0!important;
  background:linear-gradient(180deg,#0b4672,#09365a)!important;
  box-shadow:0 8px 18px rgba(8,36,61,.18)!important;
}
.aa-final-header .aa-final-book:hover{transform:translateY(-1px);}

.adr-gallery-widget__heading{max-width:820px;margin:0 auto 34px;}
.adr-gallery-widget__intro{max-width:640px;margin:10px auto 0;color:#5a6470;font-size:17px;line-height:1.7;}
.adr-gallery-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin:0 0 26px;}
.adr-gallery-filters button{
  appearance:none;border:1px solid rgba(8,36,61,.16);background:#fff;color:var(--aa-ink);
  padding:12px 18px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  transition:all .22s ease;cursor:pointer;
}
.adr-gallery-filters button:hover,
.adr-gallery-filters button.is-active{background:var(--aa-navy);border-color:var(--aa-navy);color:#fff;box-shadow:0 12px 24px rgba(8,36,61,.14);}
.adr-gallery-grid__item.is-filter-hidden{display:none!important;}

@media(max-width:1180px){
  .aa-final-header .aa-final-nav{gap:14px;}
  .aa-final-header .aa-final-book{padding:12px 16px!important;margin-left:12px!important;}
  .aa-final-header .aa-final-nav a{font-size:12px!important;letter-spacing:.1em!important;}
}
@media(max-width:900px){
  .aa-final-header .aa-final-navrow{grid-template-columns:auto auto!important;gap:12px!important;min-height:65px!important;}
  .aa-final-header .aa-final-logo-wrap{margin-top:8px!important;}
}


/* =========================================================
   1.0.2 header closer to supplied reference
   ========================================================= */
.aa-final-header{
  color:var(--aa-ink)!important;
}
.aa-final-header .aa-final-topbar{
  display:none!important;
}
.aa-final-header .aa-final-navrow{
  position:relative;
  width:min(100%, 2048px);
  margin:0 auto;
  min-height:86px!important;
  padding:0 34px 0 34px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  background:rgba(244,240,232,.96)!important;
  box-shadow:none!important;
  border-bottom:1px solid rgba(11,53,88,.08)!important;
}
.aa-final-header .aa-final-nav{
  display:flex!important;
  align-items:center;
  gap:18px;
  min-width:0;
}
.aa-final-header .aa-final-nav--left{justify-content:flex-end;padding-right:8px;}
.aa-final-header .aa-final-nav--right{justify-content:flex-start;padding-left:8px;}
.aa-final-header .aa-final-nav ul,
.aa-final-header .aa-final-nav .menu,
.aa-final-header .aa-final-nav .sub-menu{display:flex;align-items:center;gap:18px;}
.aa-final-header .aa-final-nav li{list-style:none;margin:0;padding:0;}
.aa-final-header .aa-final-nav a{
  position:relative;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:86px;
  padding:0 4px!important;
  color:#7c91a7!important;
  font-size:12px!important;
  letter-spacing:.18em!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.aa-final-header .aa-final-nav a:hover,
.aa-final-header .aa-final-nav a:focus-visible,
.aa-final-header .aa-final-nav a[aria-current="page"]{color:#294c72!important;}
.aa-final-header .aa-final-nav a::after{
  content:'';
  position:absolute;
  left:50%;bottom:13px;
  width:0;height:2px;
  background:#294c72;
  transition:width .22s ease;
  transform:translateX(-50%);
}
.aa-final-header .aa-final-nav a:hover::after,
.aa-final-header .aa-final-nav a:focus-visible::after,
.aa-final-header .aa-final-nav a[aria-current="page"]::after{width:26px;}
.aa-final-header .aa-final-logo-wrap{
  position:relative;
  z-index:3;
  width:128px!important;
  height:128px!important;
  margin:18px 14px -40px!important;
  border-radius:0!important;
  background:#f7f3eb!important;
  border:1px solid rgba(15,38,62,.08)!important;
  box-shadow:none!important;
}
.aa-final-header .aa-final-logo-wrap .custom-logo-link,
.aa-final-header .aa-final-logo-wrap .adr-header-logo{width:100%;height:100%;}
.aa-final-header .aa-final-logo-wrap .adr-header-logo__image{width:108px!important;max-width:108px!important;}
.aa-final-header .aa-final-cta-wrap{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:max-content;
}
.aa-final-header .aa-final-book{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 28px!important;
  border-radius:0!important;
  background:#0c4f86!important;
  color:#f7f3eb!important;
  font-size:12px!important;
  letter-spacing:.16em!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  box-shadow:none!important;
  border:0!important;
}
.aa-final-header .aa-final-book:hover{background:#083d67!important;transform:none!important;}
.aa-final-header .aa-final-mobile-toggle{display:none!important;}

/* mobile */
@media(max-width:1120px){
  .aa-final-header .aa-final-navrow{
    grid-template-columns:minmax(0,1fr) auto auto!important;
    min-height:82px!important;
    padding:0 20px!important;
  }
  .aa-final-header .aa-final-nav--left,
  .aa-final-header .aa-final-nav--right,
  .aa-final-header .aa-final-cta-wrap{display:none!important;}
  .aa-final-header .aa-final-mobile-toggle{display:grid!important;justify-self:end;}
  .aa-final-header .aa-final-logo-wrap{
    margin:10px 0 -26px!important;
    width:96px!important;height:96px!important;
  }
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image{width:82px!important;max-width:82px!important;}
}
@media(max-width:640px){
  .aa-final-header .aa-final-navrow{padding:0 14px!important;}
}


/* =========================================================
   1.0.3 header matching reference more closely
   ========================================================= */
.aa-final-header{
  position:fixed!important;
  inset:0 0 auto 0;
  z-index:999!important;
  background:transparent!important;
}
.aa-final-header .aa-final-topbar{
  display:block!important;
  position:relative;
  background:linear-gradient(90deg,#0a2d55 0%,#06284b 100%)!important;
  min-height:44px;
  border-radius:0 0 0 0!important;
  overflow:visible;
}
.aa-final-header .aa-final-topbar::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:-26px;
  transform:translateX(-50%);
  width:170px;
  height:52px;
  background:#f5f0e7;
  border-radius:0 0 85px 85px;
  z-index:0;
}
.aa-final-header .aa-final-header-inner{
  position:relative;
  z-index:1;
  width:min(100% - 30px, 1230px);
  margin:0 auto;
  min-height:44px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
}
.aa-final-header .aa-final-topmeta,
.aa-final-header .aa-final-topmeta a{
  display:flex;
  align-items:center;
  gap:18px;
  color:#f4efe6!important;
  text-decoration:none!important;
  font-family:'Mulish',Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:700!important;
  letter-spacing:.02em!important;
}
.aa-final-header .aa-final-topmeta--left span,
.aa-final-header .aa-final-topmeta--right > *{display:inline-flex;align-items:center;gap:7px;}
.aa-final-header .aa-final-topmeta svg{width:12px;height:12px;opacity:.95;}
.aa-final-header .aa-final-topmeta .adr-inline-ta{width:16px;height:16px;font-size:9px;border-width:1px;}

.aa-final-header .aa-final-navrow{
  position:relative;
  width:min(100%, 1600px);
  margin:0 auto;
  min-height:58px!important;
  padding:0 22px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 154px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  background:#f5f0e7!important;
  border-bottom:1px solid rgba(8,41,74,.10)!important;
  box-shadow:0 6px 18px rgba(8,35,60,.10)!important;
}
.aa-final-header .aa-final-nav{
  display:flex!important;
  align-items:center;
  gap:0;
  min-width:0;
}
.aa-final-header .aa-final-nav--left{justify-content:flex-start;}
.aa-final-header .aa-final-nav--right{justify-content:flex-end;}
.aa-final-header .aa-final-nav a{
  position:relative;
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:58px;
  padding:0 18px!important;
  color:#23476c!important;
  font-family:'Cormorant Garamond',serif!important;
  font-size:16px!important;
  line-height:1!important;
  letter-spacing:.03em!important;
  font-weight:700!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.aa-final-header .aa-final-nav a span{display:inline-block;transform:translateY(1px);}
.aa-final-header .aa-final-nav a::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:8px;
  width:18px;
  height:6px;
  transform:translateX(-50%);
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 12'%3E%3Cpath d='M1 6h12M23 6h12M18 2l3 4-3 4-3-4z' stroke='%2323476c' stroke-width='1.4' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/18px 6px no-repeat;
  opacity:0;
  transition:opacity .2s ease;
}
.aa-final-header .aa-final-nav a:hover::after,
.aa-final-header .aa-final-nav a:focus-visible::after,
.aa-final-header .aa-final-nav a[aria-current="page"]::after{opacity:1;}
.aa-final-header .aa-final-nav a + a::before{
  content:'✦';
  position:absolute;
  left:-4px;
  top:50%;
  transform:translate(-50%,-52%);
  font-size:8px;
  line-height:1;
  color:#8fa0b0;
  pointer-events:none;
}
.aa-final-header .aa-final-logo-wrap{
  position:relative;
  z-index:3;
  width:154px!important;
  height:128px!important;
  margin:-12px 0 -38px!important;
  border-radius:0 0 78px 78px!important;
  background:#f5f0e7!important;
  border:1px solid rgba(9,39,68,.08)!important;
  box-shadow:0 8px 18px rgba(8,35,60,.10)!important;
  display:flex;align-items:center;justify-content:center;
}
.aa-final-header .aa-final-logo-wrap::before,
.aa-final-header .aa-final-logo-wrap::after{
  content:'';
  position:absolute;
  top:44px;
  width:32px;
  height:24px;
  background:#f5f0e7;
}
.aa-final-header .aa-final-logo-wrap::before{left:-22px;border-top-right-radius:24px;}
.aa-final-header .aa-final-logo-wrap::after{right:-22px;border-top-left-radius:24px;}
.aa-final-header .aa-final-logo-wrap .adr-header-logo__image{width:112px!important;max-width:112px!important;}
.aa-final-header .aa-final-cta-wrap{
  display:flex;align-items:center;justify-content:flex-end;min-width:max-content;padding-left:8px;
}
.aa-final-header .aa-final-book{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 24px!important;
  background:linear-gradient(180deg,#0d4d81 0%,#0a3d67 100%)!important;
  color:#f5f0e7!important;
  font-family:'Mulish',Arial,sans-serif!important;
  font-size:11px!important;
  font-weight:800!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  border-radius:0!important;
  box-shadow:0 4px 10px rgba(7,35,60,.25)!important;
}
.aa-final-header .aa-final-book::after{display:none!important;}
.aa-final-header .aa-final-book:hover{background:linear-gradient(180deg,#0b446f 0%,#083553 100%)!important;}
.aa-final-header .aa-final-mobile-toggle{display:none!important;}

@media(max-width:1180px){
  .aa-final-header .aa-final-topmeta--left{display:none!important;}
  .aa-final-header .aa-final-header-inner{justify-content:flex-end;}
  .aa-final-header .aa-final-navrow{grid-template-columns:minmax(0,1fr) 130px minmax(0,1fr) auto!important;padding:0 14px!important;}
  .aa-final-header .aa-final-nav a{padding:0 12px!important;font-size:14px!important;}
  .aa-final-header .aa-final-logo-wrap{width:130px!important;height:116px!important;}
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image{width:96px!important;max-width:96px!important;}
}
@media(max-width:960px){
  .aa-final-header .aa-final-topbar{display:none!important;}
  .aa-final-header .aa-final-navrow{grid-template-columns:auto 1fr auto!important;min-height:65px!important;}
  .aa-final-header .aa-final-nav--left,
  .aa-final-header .aa-final-nav--right,
  .aa-final-header .aa-final-cta-wrap{display:none!important;}
  .aa-final-header .aa-final-mobile-toggle{display:grid!important;justify-self:end;}
  .aa-final-header .aa-final-logo-wrap{margin:8px 0 -20px!important;width:94px!important;height:94px!important;border-radius:0 0 47px 47px!important;}
  .aa-final-header .aa-final-logo-wrap::before,
  .aa-final-header .aa-final-logo-wrap::after{display:none!important;}
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image{width:78px!important;max-width:78px!important;}
}


/* =========================================================
   1.0.5 HEADER DEFINITIVO - replica proporzioni riferimento
   ========================================================= */
.aa-final-header,
.aa-final-header.adr-site-header,
.aa-final-header.adr-elementor-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:9999!important;
  width:100%!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  transform:none!important;
}

/* Top blu */
.aa-final-header .aa-final-topbar{
  display:block!important;
  position:relative!important;
  height:39px!important;
  min-height:39px!important;
  background:#082e52!important;
  border:0!important;
  overflow:visible!important;
  z-index:2!important;
}
.aa-final-header .aa-final-topbar::before,
.aa-final-header .aa-final-topbar::after{
  content:none!important;
}

/* Contenuto topbar */
.aa-final-header .aa-final-header-inner{
  width:min(100% - 120px, 1168px)!important;
  height:39px!important;
  min-height:39px!important;
  margin:0 auto!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:24px!important;
}
.aa-final-header .aa-final-topmeta,
.aa-final-header .aa-final-topmeta a,
.aa-final-header .aa-final-topmeta span{
  color:#f6f1e8!important;
  font-family:'Mulish',Arial,sans-serif!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.01em!important;
  text-decoration:none!important;
}
.aa-final-header .aa-final-topmeta{
  display:flex!important;
  align-items:center!important;
  gap:22px!important;
}
.aa-final-header .aa-final-topmeta--left span,
.aa-final-header .aa-final-topmeta--right > *{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
}
.aa-final-header .aa-final-topmeta svg{
  width:13px!important;
  height:13px!important;
  flex:0 0 13px!important;
  opacity:.95!important;
}
.aa-final-header .aa-final-topmeta .adr-inline-ta{
  width:15px!important;
  height:15px!important;
  border:1px solid currentColor!important;
  border-radius:50%!important;
  font-size:8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Fascia menu chiara */
.aa-final-header .aa-final-navrow{
  position:relative!important;
  width:100%!important;
  height:68px!important;
  min-height:68px!important;
  margin:0!important;
  padding:0 max(52px, calc((100vw - 1168px) / 2))!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 168px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:0!important;
  background:#f6f1e8!important;
  border:0!important;
  border-bottom:1px solid rgba(10,42,74,.12)!important;
  box-shadow:0 7px 16px rgba(7,32,56,.12)!important;
  overflow:visible!important;
  z-index:1!important;
}

/* Curva crema sotto topbar, attorno al logo */
.aa-final-header .aa-final-navrow::before{
  content:''!important;
  position:absolute!important;
  left:50%!important;
  top:-39px!important;
  transform:translateX(-50%)!important;
  width:210px!important;
  height:68px!important;
  background:#f6f1e8!important;
  border-radius:0 0 105px 105px!important;
  z-index:1!important;
  pointer-events:none!important;
}

/* Navigazione */
.aa-final-header .aa-final-nav{
  height:68px!important;
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
  gap:0!important;
  position:relative!important;
  z-index:3!important;
}
.aa-final-header .aa-final-nav--left{
  justify-content:flex-start!important;
  padding-right:28px!important;
}
.aa-final-header .aa-final-nav--right{
  justify-content:flex-end!important;
  padding-left:28px!important;
}
.aa-final-header .aa-final-nav a{
  min-height:68px!important;
  padding:0 23px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  position:relative!important;
  color:#183a5e!important;
  font-family:'Cormorant Garamond',Georgia,serif!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:700!important;
  letter-spacing:.03em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  opacity:1!important;
}
.aa-final-header .aa-final-nav a span{
  display:inline-block!important;
  transform:translateY(1px)!important;
}
.aa-final-header .aa-final-nav a + a::before{
  content:'✦'!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  font-size:9px!important;
  color:#8fa1b2!important;
  line-height:1!important;
  opacity:1!important;
}
.aa-final-header .aa-final-nav a::after{
  content:''!important;
  position:absolute!important;
  left:50%!important;
  bottom:9px!important;
  width:0!important;
  height:7px!important;
  transform:translateX(-50%)!important;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 12'%3E%3Cpath d='M1 6h14M29 6h14M22 2l4 4-4 4-4-4z' stroke='%23183a5e' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/44px 12px no-repeat!important;
  opacity:0!important;
  transition:opacity .18s ease!important;
}
.aa-final-header .aa-final-nav a:hover::after,
.aa-final-header .aa-final-nav a:focus-visible::after,
.aa-final-header .aa-final-nav a[aria-current="page"]::after{
  width:44px!important;
  opacity:1!important;
}

/* Logo centrale */
.aa-final-header .aa-final-logo-wrap{
  position:relative!important;
  z-index:4!important;
  justify-self:center!important;
  align-self:start!important;
  width:168px!important;
  height:135px!important;
  margin:-35px 0 -50px!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f6f1e8!important;
  border:0!important;
  border-radius:0 0 84px 84px!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.aa-final-header .aa-final-logo-wrap::before{
  content:''!important;
  position:absolute!important;
  inset:8px 17px 14px!important;
  background:#fffaf3!important;
  border:1px solid rgba(12,43,73,.10)!important;
  border-radius:0 0 68px 68px!important;
  box-shadow:0 5px 14px rgba(7,32,56,.10)!important;
  z-index:-1!important;
}
.aa-final-header .aa-final-logo-wrap::after{
  content:none!important;
}
.aa-final-header .aa-final-logo-wrap .custom-logo-link,
.aa-final-header .aa-final-logo-wrap .adr-header-logo{
  width:132px!important;
  height:120px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
.aa-final-header .aa-final-logo-wrap img{
  width:118px!important;
  max-width:118px!important;
  max-height:118px!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
}

/* Bottone */
.aa-final-header .aa-final-cta-wrap{
  height:68px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding-left:22px!important;
  position:relative!important;
  z-index:3!important;
}
.aa-final-header .aa-final-book{
  min-height:48px!important;
  height:48px!important;
  padding:0 28px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#0b4777!important;
  color:#fff!important;
  font-family:'Mulish',Arial,sans-serif!important;
  font-size:12px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.15em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:0 4px 10px rgba(7,31,53,.24)!important;
  white-space:nowrap!important;
}
.aa-final-header .aa-final-book::after{
  content:'◌'!important;
  margin-left:11px!important;
  font-size:13px!important;
  opacity:.8!important;
}
.aa-final-header .aa-final-book:hover{
  background:#083a62!important;
  transform:none!important;
}

/* Altezza hero sotto header */
.adr-hero-widget__content{
  padding-top:115px!important;
}

/* Responsive */
@media(max-width:1240px){
  .aa-final-header .aa-final-header-inner{
    width:min(100% - 48px, 1168px)!important;
  }
  .aa-final-header .aa-final-navrow{
    padding:0 24px!important;
    grid-template-columns:minmax(0,1fr) 150px minmax(0,1fr) auto!important;
  }
  .aa-final-header .aa-final-nav a{
    padding:0 14px!important;
    font-size:13px!important;
  }
  .aa-final-header .aa-final-logo-wrap{
    width:150px!important;
  }
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
  .aa-final-header .aa-final-logo-wrap img{
    width:105px!important;
    max-width:105px!important;
  }
  .aa-final-header .aa-final-book{
    padding:0 18px!important;
    font-size:11px!important;
  }
}
@media(max-width:980px){
  .aa-final-header .aa-final-topbar{
    display:none!important;
  }
  .aa-final-header .aa-final-navrow{
    height:65px!important;
    min-height:65px!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    padding:0 18px!important;
  }
  .aa-final-header .aa-final-navrow::before{
    content:none!important;
  }
  .aa-final-header .aa-final-nav--left,
  .aa-final-header .aa-final-nav--right,
  .aa-final-header .aa-final-cta-wrap{
    display:none!important;
  }
  .aa-final-header .aa-final-mobile-toggle{
    display:grid!important;
    justify-self:end!important;
  }
  .aa-final-header .aa-final-logo-wrap{
    justify-self:start!important;
    width:98px!important;
    height:94px!important;
    margin:6px 0 -22px!important;
    border-radius:0 0 49px 49px!important;
  }
  .aa-final-header .aa-final-logo-wrap::before{
    inset:5px 8px 10px!important;
    border-radius:0 0 42px 42px!important;
  }
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
  .aa-final-header .aa-final-logo-wrap img{
    width:78px!important;
    max-width:78px!important;
  }
  .adr-hero-widget__content{
    padding-top:80px!important;
  }
}


/* =========================================================
   1.0.6 HEADER FINAL FIX - top fixed, bigger typography, logo uncut
   ========================================================= */
.aa-final-header,
.aa-final-header.adr-site-header,
.aa-final-header.adr-elementor-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  transform:none!important;
  z-index:99999!important;
  overflow:visible!important;
}
.aa-final-header .aa-final-topbar{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  z-index:99999!important;
  background:#082e52!important;
}
.aa-final-header .aa-final-header-inner{
  width:min(100% - 80px, 1180px)!important;
  height:40px!important;
  min-height:40px!important;
}
.aa-final-header .aa-final-topmeta,
.aa-final-header .aa-final-topmeta a,
.aa-final-header .aa-final-topmeta span{
  font-size:13px!important;
  font-weight:700!important;
}
.aa-final-header .aa-final-navrow{
  position:fixed!important;
  top:40px!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  height:65px!important;
  min-height:65px!important;
  padding:0 max(42px, calc((100vw - 1180px) / 2))!important;
  grid-template-columns:minmax(0,1fr) 182px minmax(0,1fr) auto!important;
  background:#f6f1e8!important;
  z-index:99998!important;
  overflow:visible!important;
}
.aa-final-header .aa-final-navrow::before{
  top:-40px!important;
  width:228px!important;
  height:65px!important;
  border-radius:0 0 114px 114px!important;
}
.aa-final-header .aa-final-nav{
  height:72px!important;
}
.aa-final-header .aa-final-nav--left{padding-right:34px!important;}
.aa-final-header .aa-final-nav--right{padding-left:34px!important;}
.aa-final-header .aa-final-nav a{
  min-height:72px!important;
  padding:0 22px!important;
  color:#183a5e!important;
  font-size:18px!important;
  font-weight:700!important;
  letter-spacing:.025em!important;
}
.aa-final-header .aa-final-nav a + a::before{
  font-size:10px!important;
  color:#8a9bae!important;
}
.aa-final-header .aa-final-nav a::after{
  bottom:10px!important;
}
.aa-final-header .aa-final-logo-wrap{
  width:182px!important;
  height:154px!important;
  margin:-18px 0 -64px!important;
  border-radius:0 0 91px 91px!important;
  overflow:visible!important;
}
.aa-final-header .aa-final-logo-wrap::before{
  inset:10px 16px 14px!important;
  border-radius:0 0 78px 78px!important;
}
.aa-final-header .aa-final-logo-wrap .custom-logo-link,
.aa-final-header .aa-final-logo-wrap .adr-header-logo{
  width:144px!important;
  height:132px!important;
  overflow:visible!important;
}
.aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
.aa-final-header .aa-final-logo-wrap img{
  width:126px!important;
  max-width:126px!important;
  max-height:none!important;
  overflow:visible!important;
}
.aa-final-header .aa-final-cta-wrap{
  height:72px!important;
  padding-left:26px!important;
}
.aa-final-header .aa-final-book{
  min-height:50px!important;
  height:50px!important;
  padding:0 30px!important;
  font-size:13px!important;
  letter-spacing:.14em!important;
}
.adr-hero-widget__content{
  padding-top:156px!important;
}
@media(max-width:1240px){
  .aa-final-header .aa-final-header-inner{width:min(100% - 40px, 1180px)!important;}
  .aa-final-header .aa-final-navrow{padding:0 20px!important;grid-template-columns:minmax(0,1fr) 164px minmax(0,1fr) auto!important;}
  .aa-final-header .aa-final-nav a{padding:0 14px!important;font-size:16px!important;}
  .aa-final-header .aa-final-logo-wrap{width:164px!important;height:144px!important;}
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
  .aa-final-header .aa-final-logo-wrap img{width:114px!important;max-width:114px!important;}
  .aa-final-header .aa-final-book{padding:0 22px!important;font-size:12px!important;}
}
@media(max-width:980px){
  .aa-final-header .aa-final-topbar{display:none!important;}
  .aa-final-header .aa-final-navrow{
    top:0!important;
    height:65px!important;
    min-height:65px!important;
    grid-template-columns:auto minmax(0,1fr) auto!important;
    padding:0 16px!important;
  }
  .aa-final-header .aa-final-navrow::before{content:none!important;}
  .aa-final-header .aa-final-logo-wrap{
    width:102px!important;
    height:100px!important;
    margin:4px 0 -24px!important;
    border-radius:0 0 52px 52px!important;
  }
  .aa-final-header .aa-final-logo-wrap::before{inset:5px 8px 10px!important;border-radius:0 0 44px 44px!important;}
  .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
  .aa-final-header .aa-final-logo-wrap img{width:80px!important;max-width:80px!important;}
  .adr-hero-widget__content{padding-top:92px!important;}
}
/* =========================================================
   1.0.9 HEADER FIX - logo centrato, sovrapposto alla topbar, menu leggibile
   ========================================================= */
:root{
  --aa-header-topbar-h:40px;
  --aa-header-row-h:76px;
  --aa-header-max:1180px;
  --aa-header-side:max(42px, calc((100vw - var(--aa-header-max)) / 2));
  --aa-logo-clearance:138px;
  --aa-logo-width:194px;
  --aa-logo-height:170px;
  --aa-cta-width:240px;
  --aa-cta-gap:46px;
}
html body .aa-final-header,
html body .aa-final-header.adr-site-header,
html body .aa-final-header.adr-elementor-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  width:100%!important;
  z-index:2147483000!important;
  overflow:visible!important;
  transform:none!important;
  background:transparent!important;
}
html body .aa-final-header .aa-final-topbar{
  position:relative!important;
  top:auto!important;
  height:var(--aa-header-topbar-h)!important;
  min-height:var(--aa-header-topbar-h)!important;
  z-index:100000!important;
  background:#082f54!important;
  overflow:visible!important;
}
html body .aa-final-header .aa-final-header-inner{
  width:min(100% - 80px, var(--aa-header-max))!important;
  height:var(--aa-header-topbar-h)!important;
  min-height:var(--aa-header-topbar-h)!important;
  margin:0 auto!important;
}
html body .aa-final-header .aa-final-navrow{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  display:block!important;
  width:100%!important;
  height:var(--aa-header-row-h)!important;
  min-height:var(--aa-header-row-h)!important;
  margin:0!important;
  padding:0!important;
  background:#f6f1e8!important;
  border-bottom:1px solid rgba(10,42,74,.12)!important;
  box-shadow:0 7px 16px rgba(7,32,56,.12)!important;
  overflow:visible!important;
  z-index:100001!important;
}
html body .aa-final-header .aa-final-navrow::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:-40px!important;
  transform:translateX(-50%)!important;
  width:238px!important;
  height:92px!important;
  background:#f6f1e8!important;
  border-radius:0 0 119px 119px!important;
  z-index:100002!important;
  pointer-events:none!important;
}
html body .aa-final-header .aa-final-logo-wrap{
  position:absolute!important;
  left:50%!important;
  top:-42px!important;
  transform:translateX(-50%)!important;
  justify-self:auto!important;
  align-self:auto!important;
  width:var(--aa-logo-width)!important;
  height:var(--aa-logo-height)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:#f6f1e8!important;
  border-radius:0 0 97px 97px!important;
  overflow:visible!important;
  z-index:100003!important;
}
html body .aa-final-header .aa-final-logo-wrap::before{
  content:""!important;
  position:absolute!important;
  inset:10px 16px 16px!important;
  background:#fffaf3!important;
  border:1px solid rgba(12,43,73,.10)!important;
  border-radius:0 0 84px 84px!important;
  box-shadow:0 5px 14px rgba(7,32,56,.10)!important;
  z-index:-1!important;
}
html body .aa-final-header .aa-final-logo-wrap .custom-logo-link,
html body .aa-final-header .aa-final-logo-wrap .adr-header-logo{
  width:152px!important;
  height:144px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
}
html body .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
html body .aa-final-header .aa-final-logo-wrap img{
  width:134px!important;
  max-width:134px!important;
  max-height:none!important;
  height:auto!important;
  object-fit:contain!important;
  filter:none!important;
  overflow:visible!important;
}
html body .aa-final-header .aa-final-nav{
  position:absolute!important;
  top:0!important;
  height:var(--aa-header-row-h)!important;
  min-height:var(--aa-header-row-h)!important;
  display:flex!important;
  align-items:center!important;
  gap:0!important;
  min-width:0!important;
  z-index:100004!important;
}
html body .aa-final-header .aa-final-nav--left{
  left:var(--aa-header-side)!important;
  right:calc(50% + var(--aa-logo-clearance))!important;
  justify-content:flex-end!important;
  padding:0!important;
}
html body .aa-final-header .aa-final-nav--right{
  left:calc(50% + var(--aa-logo-clearance))!important;
  right:var(--aa-header-side)!important;
  justify-content:flex-start!important;
  padding:0!important;
}
html body .aa-final-header.adr-site-header .aa-final-nav--right{
  right:calc(var(--aa-header-side) + var(--aa-cta-width) + var(--aa-cta-gap))!important;
}
html body .aa-final-header .aa-final-nav a{
  position:relative!important;
  min-height:var(--aa-header-row-h)!important;
  padding:0 16px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#11385d!important;
  font-family:"Mulish", Arial, sans-serif!important;
  font-size:15px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:.075em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  opacity:1!important;
  text-rendering:geometricPrecision!important;
}
html body .aa-final-header .aa-final-nav a span{
  display:inline-block!important;
  transform:none!important;
}
html body .aa-final-header .aa-final-nav > span{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:18px!important;
  min-width:18px!important;
  height:var(--aa-header-row-h)!important;
  color:#8798aa!important;
  font-size:11px!important;
  line-height:1!important;
  opacity:1!important;
}
html body .aa-final-header .aa-final-nav a + a::before{
  content:"✦"!important;
  position:absolute!important;
  left:0!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  color:#8798aa!important;
  font-size:11px!important;
  line-height:1!important;
  opacity:1!important;
  pointer-events:none!important;
}
html body .aa-final-header .aa-final-cta-wrap{
  position:absolute!important;
  top:0!important;
  right:var(--aa-header-side)!important;
  height:var(--aa-header-row-h)!important;
  width:var(--aa-cta-width)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  padding:0!important;
  z-index:100004!important;
}
html body .aa-final-header .aa-final-book{
  min-width:var(--aa-cta-width)!important;
  min-height:52px!important;
  height:52px!important;
  padding:0 30px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:13px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-align:center!important;
  white-space:nowrap!important;
}
html body .aa-final-header.adr-elementor-header .aa-final-nav--right .aa-final-book{
  margin-left:30px!important;
}
html body .adr-hero-widget__content{
  padding-top:170px!important;
}
@media(max-width:1240px){
  :root{
    --aa-header-side:20px;
    --aa-logo-clearance:124px;
    --aa-logo-width:176px;
    --aa-logo-height:158px;
    --aa-cta-width:218px;
    --aa-cta-gap:28px;
  }
  html body .aa-final-header .aa-final-header-inner{width:min(100% - 40px, var(--aa-header-max))!important;}
  html body .aa-final-header .aa-final-nav a{font-size:13px!important;padding:0 10px!important;letter-spacing:.06em!important;}
  html body .aa-final-header .aa-final-logo-wrap{top:-36px!important;border-radius:0 0 88px 88px!important;}
  html body .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
  html body .aa-final-header .aa-final-logo-wrap img{width:120px!important;max-width:120px!important;}
  html body .aa-final-header .aa-final-book{font-size:12px!important;padding:0 22px!important;}
}
@media(max-width:980px){
  :root{
    --aa-header-topbar-h:0px;
    --aa-header-row-h:78px;
    --aa-header-side:16px;
  }
  html body .aa-final-header .aa-final-topbar{display:none!important;}
  html body .aa-final-header .aa-final-navrow{height:65px!important;min-height:65px!important;padding:0 16px!important;}
  html body .aa-final-header .aa-final-navrow::before{content:none!important;display:none!important;}
  html body .aa-final-header .aa-final-nav--left,
  html body .aa-final-header .aa-final-nav--right,
  html body .aa-final-header .aa-final-cta-wrap{display:none!important;}
  html body .aa-final-header .aa-final-mobile-toggle{display:grid!important;position:absolute!important;right:16px!important;top:13px!important;z-index:100005!important;}
  html body .aa-final-header .aa-final-logo-wrap{
    left:16px!important;
    top:4px!important;
    transform:none!important;
    width:102px!important;
    height:100px!important;
    border-radius:0 0 52px 52px!important;
  }
  html body .aa-final-header .aa-final-logo-wrap::before{inset:5px 8px 10px!important;border-radius:0 0 44px 44px!important;}
  html body .aa-final-header .aa-final-logo-wrap .adr-header-logo__image,
  html body .aa-final-header .aa-final-logo-wrap img{width:80px!important;max-width:80px!important;}
  html body .adr-hero-widget__content{padding-top:92px!important;}
}



/* 1.1.9 - copyright con link accanto */
.adr-footer-copy{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
.adr-footer-copy-extra::before{
  content:"|"!important;
  margin-right:8px!important;
  opacity:.55!important;
}
.adr-footer-copy-extra a{
  color:inherit!important;
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}


/* =========================================================
   1.3.0 - Menu section restyle based on approved reference.
   Keeps current functionality while redesigning layout/appearance.
   ========================================================= */
.adr-menu-widget--book.aa-book-menu{
  background:#f7f3ec!important;
  padding:88px max(30px, calc((100vw - 1180px) / 2)) 92px!important;
  overflow:hidden!important;
}
.adr-menu-widget--book.aa-book-menu::before,
.adr-menu-widget--book.aa-book-menu::after{
  content:'';
  position:absolute;
  pointer-events:none;
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.08;
  z-index:0;
}
.adr-menu-widget--book.aa-book-menu::before{
  left:-40px;
  bottom:36px;
  width:210px;
  height:172px;
  background-image:url('../images/decor/vintage-crab.svg');
}
.adr-menu-widget--book.aa-book-menu::after{
  right:-58px;
  top:64px;
  width:240px;
  height:230px;
  background-image:url('../images/decor/vintage-shell.svg');
}
.adr-menu-widget--book.aa-book-menu > .adr-container{position:relative;z-index:2;}
.adr-menu-widget--book .aa-book-menu__label{margin-bottom:8px!important;font-size:12px!important;letter-spacing:.22em!important;color:#7f8f9e!important;}
.adr-menu-widget--book .aa-book-menu__title{margin:0 auto!important;color:#17375a!important;font-family:'Cormorant Garamond', Georgia, serif!important;font-size:clamp(50px, 4.2vw, 72px)!important;line-height:.95!important;font-weight:700!important;text-transform:uppercase!important;}
.adr-menu-widget--book .aa-book-menu__ornament{width:54px;height:18px;margin:14px auto 0;background:url('../images/decor/anguilla-rosemary.svg') center center / contain no-repeat;opacity:.9;}
.adr-menu-widget--book .aa-book-menu__subtitle{margin-top:10px!important;color:#9eaaae!important;font-size:12px!important;letter-spacing:.18em!important;text-transform:uppercase!important;}
.adr-menu-widget--book .aa-book-menu__tabs{display:flex;align-items:flex-end;justify-content:center;gap:0;width:min(100%, 1280px);margin:34px auto 28px;border-bottom:1px solid rgba(23,55,90,.15)!important;position:relative;}
.adr-menu-widget--book .aa-book-menu__tab{appearance:none;border:0;background:transparent;color:#2c3e4f;font-family:'Cormorant Garamond', Georgia, serif!important;font-size:clamp(19px, 1.45vw, 31px)!important;line-height:1.1;font-weight:700;text-transform:uppercase;padding:18px 38px 22px;position:relative;cursor:pointer;transition:color .24s ease, background .24s ease, box-shadow .24s ease;}
.adr-menu-widget--book .aa-book-menu__tab span{display:block;pointer-events:none;}
.adr-menu-widget--book .aa-book-menu__tab.is-active{background:linear-gradient(180deg,#0b4a7b 0%, #083a67 100%);color:#fff!important;box-shadow:0 3px 0 #d9d3c8 inset, 0 0 0 2px rgba(255,255,255,.9) inset;}
.adr-menu-widget--book .aa-book-menu__tab.is-active::after{content:'';position:absolute;left:50%;bottom:-1px;width:18px;height:6px;transform:translateX(-50%);background:#f7f3ec;border-radius:10px 10px 0 0;}
.adr-menu-widget--book .aa-book-menu__panel{display:none;width:min(100%, 1280px);margin:0 auto;}
.adr-menu-widget--book .aa-book-menu__panel.is-active{display:block;}
.adr-menu-widget--book .aa-book-menu__panel-subtitle{text-align:center;margin:0 0 18px;color:#8f9dac;font-size:12px;letter-spacing:.16em;text-transform:uppercase;}
.adr-menu-widget--book .aa-book-menu__grid{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:26px;align-items:stretch;}
.adr-menu-widget--book .aa-book-menu__grid--1{grid-template-columns:minmax(0,1fr);}
.adr-menu-widget--book .aa-book-menu__separator{position:relative;}
.adr-menu-widget--book .aa-book-menu__separator::before{content:'';position:absolute;top:0;bottom:0;left:50%;width:1px;transform:translateX(-50%);background:rgba(23,55,90,.14);}
.adr-menu-widget--book .aa-book-menu__separator::after{content:'';position:absolute;left:50%;top:50%;width:34px;height:72px;transform:translate(-50%,-50%);background:#f7f3ec url('../images/decor/anguilla-rosemary.svg') center center / 28px auto no-repeat;}
.adr-menu-widget--book .aa-book-menu__item{padding:8px 0 13px;border-bottom:1px dotted rgba(20,47,74,.12);}
.adr-menu-widget--book .aa-book-menu__item-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:baseline;}
.adr-menu-widget--book .aa-book-menu__item h3{margin:0;color:#2a3949!important;font-family:'Cormorant Garamond', Georgia, serif!important;font-size:clamp(25px, 1.78vw, 34px)!important;line-height:1.08!important;font-weight:600!important;}
.adr-menu-widget--book .aa-book-menu__item span{color:#425365!important;font-family:'Cormorant Garamond', Georgia, serif!important;font-size:clamp(26px, 1.82vw, 35px)!important;font-weight:600!important;line-height:1!important;white-space:nowrap;}
.adr-menu-widget--book .aa-book-menu__item p{margin:8px 0 0!important;color:#8c989f!important;font-family:'Mulish', Arial, sans-serif!important;font-size:14px!important;line-height:1.55!important;}
.adr-menu-widget--book .aa-book-menu__button{margin-top:44px!important;}
.adr-menu-widget--book .aa-book-menu__cta{display:inline-flex!important;align-items:center;justify-content:center;background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:0!important;color:#17375a!important;font-family:'Cormorant Garamond', Georgia, serif!important;font-size:clamp(24px, 1.72vw, 32px)!important;font-weight:700!important;letter-spacing:0!important;line-height:1!important;text-transform:uppercase!important;text-decoration:underline!important;text-decoration-thickness:1px!important;text-underline-offset:5px!important;position:relative;}
.adr-menu-widget--book .aa-book-menu__cta::after{content:'';display:inline-block;width:64px;height:18px;margin-left:18px;background:url('../images/decor/fa-wave.svg') center center / contain no-repeat;opacity:.9;}
@media (max-width: 1180px){
  .adr-menu-widget--book .aa-book-menu__tabs{width:min(100%, 980px);}
  .adr-menu-widget--book .aa-book-menu__tab{padding:16px 24px 20px;}
  .adr-menu-widget--book .aa-book-menu__grid{gap:18px;grid-template-columns:minmax(0,1fr) 50px minmax(0,1fr);}
}
@media (max-width: 920px){
  .adr-menu-widget--book.aa-book-menu{padding:68px 22px 72px!important;}
  .adr-menu-widget--book .aa-book-menu__tabs{justify-content:flex-start;overflow-x:auto;white-space:nowrap;padding-bottom:2px;margin:28px auto 24px;scrollbar-width:thin;}
  .adr-menu-widget--book .aa-book-menu__tab{font-size:20px!important;padding:14px 20px 18px;flex:0 0 auto;}
  .adr-menu-widget--book .aa-book-menu__grid,.adr-menu-widget--book .aa-book-menu__grid--1{grid-template-columns:minmax(0,1fr);gap:0;}
  .adr-menu-widget--book .aa-book-menu__separator{display:none;}
  .adr-menu-widget--book .aa-book-menu__item h3{font-size:26px!important;}
  .adr-menu-widget--book .aa-book-menu__item span{font-size:28px!important;}
  .adr-menu-widget--book .aa-book-menu__cta{font-size:26px!important;text-align:center;flex-wrap:wrap;row-gap:8px;}
  .adr-menu-widget--book .aa-book-menu__cta::after{margin-left:10px;}
}


/* =========================================================
   1.4.2 - Illustrazioni Elementor REALI + menu 1.3.0 preservato.
   ========================================================= */

/* Spegne solo le vecchie illustrazioni hard-coded sui wrapper, non tocca i pseudo-elementi interni della gallery. */
html body .adr-hero-widget::before,
html body .adr-hero-widget::after,
html body .adr-about-widget::before,
html body .adr-about-widget::after,
html body .adr-story-widget::before,
html body .adr-story-widget::after,
html body .adr-menu-widget::before,
html body .adr-menu-widget::after,
html body .adr-menu-widget--book.aa-book-menu::before,
html body .adr-menu-widget--book.aa-book-menu::after,
html body .adr-gallery-widget::before,
html body .adr-gallery-widget::after,
html body .adr-blog-widget::before,
html body .adr-blog-widget::after,
html body .adr-contact-widget::before,
html body .adr-contact-widget::after,
html body .aa-signature-section::before,
html body .aa-signature-section::after,
html body .aa-menu-preview::before,
html body .aa-menu-preview::after,
html body .aa-experience-section::before,
html body .aa-experience-section::after,
html body .aa-reservation-strip::before,
html body .aa-reservation-strip::after,
html body .aa-final-footer::before,
html body .aa-final-footer::after,
html body .adr-site-footer::before,
html body .adr-site-footer::after,
html body .adr-elementor-footer::before,
html body .adr-elementor-footer::after {
  content:none!important;
  display:none!important;
}

html body .adr-section,
html body .adr-hero-widget,
html body .adr-video-widget,
html body .adr-gallery-widget,
html body .adr-elementor-footer,
html body .aa-book-menu {
  position:relative!important;
  overflow:hidden!important;
  isolation:isolate!important;
}

html body .adr-overlay-decor {
  position:absolute!important;
  z-index:1!important;
  display:block!important;
  max-width:none!important;
  min-width:0!important;
  pointer-events:none!important;
  object-fit:contain!important;
  transform:none!important;
  margin:0!important;
}

html body .adr-section > *:not(.adr-overlay-decor),
html body .adr-hero-widget > *:not(.adr-overlay-decor),
html body .adr-video-widget > *:not(.adr-overlay-decor),
html body .adr-gallery-widget > *:not(.adr-overlay-decor),
html body .adr-elementor-footer > *:not(.adr-overlay-decor),
html body .aa-book-menu > *:not(.adr-overlay-decor) {
  position:relative!important;
  z-index:2!important;
}


/* =========================================================
   1.4.5 - Widget Contatti pulito: senza box e senza ombre.
   ========================================================= */
html body .adr-contact-widget__cards {
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:42px!important;
  padding-top:44px!important;
}

html body .adr-contact-info {
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  border:none!important;
  outline:none!important;
  padding:0!important;
  min-height:0!important;
  display:grid!important;
  grid-template-columns:42px 1fr!important;
  gap:16px!important;
  align-items:start!important;
}

html body .adr-contact-info::before,
html body .adr-contact-info::after {
  content:none!important;
  display:none!important;
}

html body .adr-contact-info__icon {
  width:42px!important;
  height:42px!important;
  min-width:42px!important;
  border-radius:0!important;
  border:none!important;
  box-shadow:none!important;
  background:var(--adr-clay,#a9342b)!important;
  color:#fffaf0!important;
  font-size:18px!important;
  line-height:1!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-top:2px!important;
}

html body .adr-contact-info h3 {
  margin:0 0 12px!important;
  padding:0!important;
  font-size:30px!important;
  line-height:1.08!important;
}

html body .adr-contact-info p {
  margin:0!important;
  padding:0!important;
}

html body .adr-contact-info p,
html body .adr-contact-info a {
  font-size:16px!important;
  line-height:1.65!important;
  text-decoration:none!important;
}

html body .adr-contact-info a:hover {
  text-decoration:underline!important;
  text-underline-offset:4px!important;
}

@media (max-width: 767px) {
  html body .adr-contact-widget__cards {
    grid-template-columns:1fr!important;
    gap:28px!important;
    padding-top:28px!important;
  }

  html body .adr-contact-info {
    grid-template-columns:38px 1fr!important;
    gap:14px!important;
  }

  html body .adr-contact-info__icon {
    width:38px!important;
    height:38px!important;
    min-width:38px!important;
    font-size:16px!important;
  }

  html body .adr-contact-info h3 {
    font-size:26px!important;
  }
}


/* =========================================================
   1.4.6 - Gallery: più respiro sopra e sotto.
   ========================================================= */
html body .adr-gallery-widget {
  padding-top:72px!important;
  padding-bottom:72px!important;
}

html body .adr-gallery-widget > .adr-container {
  padding-top:12px!important;
  padding-bottom:12px!important;
}

html body .adr-gallery-widget__heading {
  margin-bottom:34px!important;
}

html body .adr-gallery-grid {
  margin-top:24px!important;
  margin-bottom:24px!important;
}

@media (max-width: 1024px) {
  html body .adr-gallery-widget {
    padding-top:56px!important;
    padding-bottom:56px!important;
  }

  html body .adr-gallery-grid {
    margin-top:20px!important;
    margin-bottom:20px!important;
  }
}

@media (max-width: 767px) {
  html body .adr-gallery-widget {
    padding-top:44px!important;
    padding-bottom:44px!important;
  }

  html body .adr-gallery-widget__heading {
    margin-bottom:24px!important;
  }

  html body .adr-gallery-grid {
    margin-top:18px!important;
    margin-bottom:18px!important;
  }
}


/* =========================================================
   1.7.0 - Skin finale consolidata.
   Rebase pulito da 1.5.0: niente patch 1.5.1-1.6.3,
   niente selettori globali su button/body/p che rompano Elementor.
   ========================================================= */
:root{
  --aa-wood:#3b302a;
  --aa-wood-dark:#251d19;
  --aa-espresso:#2f2621;
  --aa-bronze:#8d6848;
  --aa-bronze-dark:#684b36;
  --aa-ochre:#b99559;
  --aa-sand:#efe2cf;
  --aa-sand-light:#f8efe2;
  --aa-ivory:#fff9ef;
  --aa-cream:#f6ecde;
  --aa-ink:#46352e;
  --aa-muted:#7a6b62;
  --aa-line:rgba(70,53,46,.14);
  --aa-line-soft:rgba(70,53,46,.075);

  --aa-navy:var(--aa-wood);
  --aa-navy-2:var(--aa-wood-dark);
  --adr-dark:var(--aa-espresso);
  --adr-text:var(--aa-ink);
  --adr-muted:var(--aa-muted);
  --adr-gold:var(--aa-ochre);
  --adr-bg:var(--aa-cream);
  --adr-clay:var(--aa-bronze);
  --adr-wine:var(--aa-bronze-dark);
  --adr-teal:#2c7775;
}

/* Base sito: solo canvas del tema, non UI Elementor */
html body:not(.elementor-editor-active){
  background:var(--aa-ivory)!important;
  color:var(--aa-ink)!important;
}

/* Admin bar / editor: il tema non deve coprire WordPress o Elementor */
html body.admin-bar #wpadminbar{
  z-index:2147483647!important;
}
html body.admin-bar .aa-final-header,
html body.admin-bar .aa-final-header.adr-site-header,
html body.admin-bar .aa-final-header.adr-elementor-header,
html body.admin-bar .aa-final-header.is-scrolled{
  top:32px!important;
  z-index:99990!important;
}
@media screen and (max-width:782px){
  html body.admin-bar .aa-final-header,
  html body.admin-bar .aa-final-header.adr-site-header,
  html body.admin-bar .aa-final-header.adr-elementor-header,
  html body.admin-bar .aa-final-header.is-scrolled{
    top:46px!important;
  }
}
html body.elementor-editor-active .aa-final-header,
html body.elementor-editor-active .aa-final-header.adr-site-header,
html body.elementor-editor-active .aa-final-header.adr-elementor-header,
html body.elementor-editor-active .aa-final-header.is-scrolled{
  position:relative!important;
  top:auto!important;
  left:auto!important;
  right:auto!important;
  inset:auto!important;
  z-index:10!important;
  transform:none!important;
}

/* Header palette */
html body .aa-final-topbar{
  background:linear-gradient(180deg,var(--aa-wood),var(--aa-wood-dark))!important;
  color:var(--aa-ivory)!important;
}
html body .aa-final-navrow{
  background:rgba(255,249,239,.985)!important;
  border-bottom-color:rgba(70,53,46,.12)!important;
  box-shadow:0 5px 14px rgba(47,38,33,.10)!important;
}
html body .aa-final-navrow::before{
  background:var(--aa-ivory)!important;
}
html body .aa-final-logo-wrap{
  background:var(--aa-ivory)!important;
  box-shadow:0 3px 10px rgba(47,38,33,.075)!important;
}
html body .aa-final-nav a{
  color:var(--aa-ink)!important;
}
html body .aa-final-nav span{
  color:rgba(70,53,46,.38)!important;
}
html body .aa-final-nav a:not(.aa-final-book)::after{
  background:var(--aa-bronze)!important;
}
html body .aa-final-book{
  background:linear-gradient(180deg,var(--aa-bronze),var(--aa-bronze-dark))!important;
  color:#fff9ef!important;
  box-shadow:0 4px 10px rgba(47,38,33,.12)!important;
}

/* Hero */
html body .adr-hero-widget::before{
  background:linear-gradient(90deg,rgba(37,29,25,.74) 0%,rgba(37,29,25,.52) 44%,rgba(37,29,25,.16) 100%)!important;
  opacity:1!important;
}
html body .adr-hero-widget .adr-hero-widget__eyebrow{
  color:var(--adr-hero-eyebrow-color,#fff9ef)!important;
}
html body .adr-hero-widget .adr-hero-widget__title{
  color:var(--adr-hero-title-color,#fff9ef)!important;
}
html body .adr-hero-widget .aa-hero-subtitle{
  color:var(--adr-hero-subtitle-color,#fff9ef)!important;
}
html body .adr-hero-widget p:not(.adr-hero-widget__eyebrow):not(.aa-hero-subtitle){
  color:var(--adr-hero-subtitle-color,#fff9ef)!important;
}
html body .adr-hero-widget .adr-hero-widget__title{
  font-size:clamp(58px,7.2vw,112px);
  line-height:.92;
  max-width:var(--adr-hero-title-max-width,760px)!important;
  text-shadow:0 8px 22px rgba(0,0,0,.22);
}
html body .adr-hero-widget .aa-hero-actions{
  gap:14px!important;
  margin-top:20px!important;
}
html body .adr-hero-widget .aa-hero-actions a{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:52px!important;
  min-width:168px!important;
  padding:0 30px!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-family:'Mulish',Arial,sans-serif!important;
  font-size:12px!important;
  font-weight:800!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  opacity:1!important;
  visibility:visible!important;
  transition:background-color .24s ease,color .24s ease,border-color .24s ease,transform .24s ease!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--1{
  background:var(--adr-hero-btn1-bg,rgba(255,249,239,.10))!important;
  color:var(--adr-hero-btn1-text,#fff9ef)!important;
  border:1px solid var(--adr-hero-btn1-border,rgba(255,249,239,.82))!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--1:hover{
  background:var(--adr-hero-btn1-hover-bg,#fff9ef)!important;
  color:var(--adr-hero-btn1-hover-text,#251d19)!important;
  border-color:var(--adr-hero-btn1-hover-bg,#fff9ef)!important;
  transform:translateY(-1px)!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--2{
  background:var(--adr-hero-btn2-bg,#fff9ef)!important;
  color:var(--adr-hero-btn2-text,#251d19)!important;
  border:1px solid var(--adr-hero-btn2-border,#fff9ef)!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--2:hover{
  background:var(--adr-hero-btn2-hover-bg,rgba(255,249,239,.10))!important;
  color:var(--adr-hero-btn2-hover-text,#fff9ef)!important;
  border-color:var(--adr-hero-btn2-hover-bg,rgba(255,249,239,.82))!important;
  transform:translateY(-1px)!important;
}
html body .adr-hero-widget .aa-hero-actions a::before,
html body .adr-hero-widget .aa-hero-actions a::after,
html body .aa-hero-dots{
  content:none!important;
  display:none!important;
}

/* Sezioni */
html body .adr-about-widget,
html body .aa-signature-section{
  background:linear-gradient(180deg,#fff9ef,#f7ecdc)!important;
}
html body .adr-story-widget,
html body .adr-gallery-widget{
  background:linear-gradient(180deg,#f3e6d3,#eadbc6)!important;
}
html body .adr-menu-widget,
html body .adr-menu-widget--book.aa-book-menu{
  background:linear-gradient(180deg,#f8eee0,#f1dfca)!important;
}
html body .adr-blog-widget,
html body .aa-menu-preview{
  background:linear-gradient(180deg,#fff7eb,#f6ead8)!important;
}
html body .adr-contact-widget,
html body .aa-experience-section{
  background:linear-gradient(180deg,#efdfc8,#e7d2b8)!important;
}

/* Tipografia */
html body .adr-widget-title,
html body .aa-section-head h2,
html body .aa-experience-copy h2,
html body .aa-menu-preview h2,
html body .aa-signature-section h2,
html body .adr-contact-widget .adr-widget-title,
html body .adr-blog-widget .adr-widget-title,
html body .adr-gallery-widget .adr-widget-title{
  color:var(--aa-ink)!important;
  font-size:clamp(42px,3.9vw,64px)!important;
  line-height:1.04!important;
}
html body .adr-widget-label,
html body .aa-section-head span,
html body .aa-experience-copy span,
html body .adr-menu-widget--book .aa-book-menu__label{
  color:var(--aa-ochre)!important;
}
html body .adr-widget-text,
html body .adr-widget-text p,
html body .adr-contact-widget__intro p,
html body .adr-contact-info p,
html body .adr-contact-info a,
html body .aa-menu-preview p,
html body .aa-experience-section p,
html body .adr-menu-widget--book .aa-book-menu__item p{
  color:var(--aa-muted)!important;
  font-size:clamp(16px,1.05vw,18px)!important;
  line-height:1.72!important;
}

/* Menu */
html body .adr-menu-widget--book .aa-book-menu__title{
  color:var(--aa-ink)!important;
  font-size:clamp(48px,4.7vw,72px)!important;
  line-height:.98!important;
  letter-spacing:.015em!important;
}
html body .adr-menu-widget--book .aa-book-menu__tabs{
  width:min(100%,1120px)!important;
  margin:38px auto 30px!important;
  gap:18px!important;
  border-bottom:1px solid rgba(70,53,46,.16)!important;
}
html body .adr-menu-widget--book .aa-book-menu__tab{
  min-height:48px!important;
  padding:0 28px 13px!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--aa-ink)!important;
  font-family:'Mulish',Arial,sans-serif!important;
  font-size:clamp(17px,1.42vw,22px)!important;
  line-height:1.1!important;
  font-weight:800!important;
  letter-spacing:.16em!important;
  text-transform:uppercase!important;
}
html body .adr-menu-widget--book .aa-book-menu__tab.is-active{
  color:var(--aa-bronze-dark)!important;
}
html body .adr-menu-widget--book .aa-book-menu__tab.is-active::after{
  background:var(--aa-bronze)!important;
}
html body .adr-menu-widget--book .aa-book-menu__item h3{
  font-size:clamp(24px,1.85vw,31px)!important;
  line-height:1.08!important;
  color:var(--aa-ink)!important;
}
html body .adr-menu-widget--book .aa-book-menu__item span{
  font-size:clamp(22px,1.6vw,27px)!important;
  color:var(--aa-ink)!important;
}
html body .adr-menu-widget--book .aa-book-menu__cta,
html body .aa-menu-preview__link,
html body .aa-text-link{
  background:transparent!important;
  box-shadow:none!important;
  color:var(--aa-bronze-dark)!important;
  border:0!important;
  border-bottom:1px solid rgba(104,75,54,.42)!important;
  padding:0 0 4px!important;
  min-height:0!important;
  min-width:0!important;
  text-decoration:none!important;
  pointer-events:auto!important;
}

/* Gallery / Contact / Footer */
html body .adr-gallery-widget{
  padding-top:96px!important;
  padding-bottom:96px!important;
}
html body .adr-contact-info{
  background:transparent!important;
  background-image:none!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
}
html body .adr-contact-info__icon{
  background:var(--aa-wood)!important;
  color:#fff9ef!important;
  box-shadow:0 2px 7px rgba(47,38,33,.12)!important;
}
html body .aa-final-footer.adr-elementor-footer{
  background:linear-gradient(180deg,var(--aa-wood),var(--aa-wood-dark))!important;
  color:var(--aa-ivory)!important;
}

/* Ombre: vicine e sobrie */
html body .adr-blog-card,
html body .adr-post-list-item,
html body .adr-image-slider,
html body .adr-image-slider__track,
html body .adr-overlap-images img,
html body .adr-gallery-grid__item,
html body .aa-menu-preview__card,
html body .aa-experience-gallery img,
html body .aa-final-logo-wrap{
  box-shadow:0 3px 10px rgba(47,38,33,.075)!important;
}
html body .adr-blog-card:hover,
html body .adr-post-list-item:hover,
html body .adr-gallery-grid__item:hover,
html body .aa-menu-preview__card:hover,
html body .aa-experience-gallery img:hover{
  box-shadow:0 5px 14px rgba(47,38,33,.11)!important;
}

/* Elementor editor safety: non tocchiamo il pannello, solo preview */
html body.elementor-editor-active .adr-overlay-decor,
html body.elementor-editor-active .adr-hero-widget__pattern,
html body.elementor-editor-active .aa-hero-dots{
  pointer-events:none!important;
}
html body.elementor-editor-active .aa-final-header,
html body.elementor-editor-active .aa-final-header.adr-site-header,
html body.elementor-editor-active .aa-final-header.adr-elementor-header{
  position:relative!important;
  top:auto!important;
  inset:auto!important;
  z-index:10!important;
}
html body.elementor-editor-active .adr-animate-item,
html body.elementor-editor-active [data-adr-animate]{
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
  animation:none!important;
  transition:none!important;
}

@media(max-width:920px){
  html body .adr-menu-widget--book .aa-book-menu__tabs{
    justify-content:flex-start!important;
    overflow-x:auto!important;
    gap:8px!important;
  }
  html body .adr-menu-widget--book .aa-book-menu__tab{
    flex:0 0 auto!important;
    padding:0 18px 13px!important;
    font-size:16px!important;
  }
}
@media(max-width:767px){
  html body .adr-hero-widget .adr-hero-widget__title{
    font-size:clamp(48px,13vw,70px);
  }
  html body .adr-hero-widget .aa-hero-actions a{
    width:100%!important;
  }
  html body .adr-gallery-widget{
    padding-top:68px!important;
    padding-bottom:68px!important;
  }
}


/* 1.8.0 clean header fallback */
@media (min-width:1101px){
  html body .aa-final-header .aa-final-nav a,
  html body .aa-final-header .aa-final-nav a span{
    color:#000!important;
  }
  html body .aa-final-header .aa-final-nav a:hover,
  html body .aa-final-header .aa-final-nav a:hover span{
    color:#8d6848!important;
  }
}
@media (max-width:1100px){
  html body .aa-final-header .adr-mobile-menu-panel:not([hidden]){
    position:fixed!important;
    inset:78px 0 0 0!important;
    width:100vw!important;
    height:calc(100dvh - 78px)!important;
    padding-top:70px!important;
    background:#fff9ef!important;
  }
  html body .aa-final-header .adr-mobile-menu a{
    color:#000!important;
    font-size:19px!important;
  }
  html body .aa-final-header .adr-mobile-menu a:hover{
    color:#8d6848!important;
  }
}


/* 1.8.1 mobile panel below logo */
@media (max-width:1100px){
  html body .aa-final-header .adr-mobile-menu-panel:not([hidden]){
    inset:104px 0 0 0!important;
    height:calc(100dvh - 104px)!important;
    padding-top:28px!important;
  }
}


/* 1.8.2 dropdown under header fallback */
@media (max-width:1100px){
  html body .aa-final-header{
    isolation:isolate!important;
    overflow:visible!important;
  }
  html body .aa-final-header .aa-final-navrow{
    z-index:20!important;
    box-shadow:0 12px 20px rgba(47,38,33,.12)!important;
  }
  html body .aa-final-header .aa-final-logo-wrap{
    z-index:30!important;
  }
  html body .aa-final-header .adr-mobile-menu-panel:not([hidden]){
    position:absolute!important;
    top:78px!important;
    left:0!important;
    right:0!important;
    width:100vw!important;
    height:calc(100dvh - 78px)!important;
    padding-top:96px!important;
    background:#fff9ef!important;
    z-index:-1!important;
  }
}


/* =========================================================
   1.8.4 - Fix hero video background + gallery full width/responsive masonry
   ========================================================= */
html body .adr-hero-widget {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
}

html body .adr-hero-widget > .adr-hero-widget__media,
html body .adr-hero-widget.adr-hero-widget--has-video > .adr-hero-widget__media {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: var(--adr-bg-position, center center) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

html body .adr-hero-widget::before {
  position: absolute !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

html body .adr-hero-widget > .adr-hero-widget__pattern,
html body .adr-hero-widget > .adr-overlay-decor {
  position: absolute !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

html body .adr-hero-widget > .adr-hero-widget__content {
  position: relative !important;
  z-index: 3 !important;
}

html body .adr-gallery-widget.adr-gallery-widget--v329,
html body .adr-gallery-widget--v329 {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: hidden !important;
}

html body .adr-gallery-widget > .adr-container,
html body .adr-gallery-widget > .adr-container--gallery-full,
html body .adr-gallery-widget--v329 > .adr-container,
html body .adr-gallery-widget--v329 > .adr-container--gallery-full {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

html body .adr-gallery-widget__heading,
html body .adr-gallery-filters {
  width: min(var(--adr-container, 1180px), calc(100% - 32px)) !important;
  max-width: var(--adr-container, 1180px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

@media (max-width: 900px) and (min-width: 561px) {
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    display: block !important;
    column-count: 2 !important;
    column-width: auto !important;
    column-gap: var(--adr-gallery-gap, 0px) !important;
    grid-template-columns: none !important;
    grid-auto-rows: auto !important;
    grid-auto-flow: row !important;
    line-height: 0 !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(5n+1) {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 var(--adr-gallery-gap, 0px) !important;
    padding: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
    grid-column: auto !important;
    grid-row: auto !important;
    overflow: hidden !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    padding-top: 78% !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(6n+1)::before { padding-top: 124% !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(6n+2)::before { padding-top: 68% !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(6n+3)::before { padding-top: 142% !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(6n+4)::before { padding-top: 86% !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(6n+5)::before { padding-top: 62% !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(6n)::before { padding-top: 118% !important; }
}

@media (max-width: 560px) {
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    display: block !important;
    column-count: 1 !important;
    column-width: auto !important;
    column-gap: 0 !important;
    grid-template-columns: none !important;
    grid-auto-rows: auto !important;
    grid-auto-flow: row !important;
    line-height: 0 !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item:nth-child(5n+1) {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 var(--adr-gallery-gap, 0px) !important;
    padding: 0 !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
    grid-column: auto !important;
    grid-row: auto !important;
    overflow: hidden !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 .adr-gallery-grid__item::before {
    content: "" !important;
    display: block !important;
    width: 100% !important;
    padding-top: var(--adr-mobile-masonry-ratio, 72%) !important;
  }
}

/* =========================================================
   1.8.5 - Gallery margine laterale + overlay video hero
   ========================================================= */
html body .adr-hero-widget::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  background: linear-gradient(90deg, rgba(37,29,25,.95) 0%, rgba(37,29,25,.72) 44%, rgba(37,29,25,.28) 100%) !important;
  opacity: var(--adr-hero-overlay-opacity, .48) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

html body .adr-hero-widget.adr-hero-widget--has-video::before {
  opacity: var(--adr-hero-overlay-opacity, .48) !important;
}

html body .adr-hero-widget > .adr-hero-widget__media,
html body .adr-hero-widget.adr-hero-widget--has-video > .adr-hero-widget__media {
  z-index: 0 !important;
}

html body .adr-hero-widget > .adr-hero-widget__content {
  z-index: 4 !important;
}

html body .adr-gallery-widget--v329 > .adr-container,
html body .adr-gallery-widget--v329 > .adr-container--gallery-full {
  box-sizing: border-box !important;
  padding-left: 50px !important;
  padding-right: 50px !important;
}

html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329,
html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
  width: 100% !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

@media (max-width: 767px) {
  html body .adr-gallery-widget--v329 > .adr-container,
  html body .adr-gallery-widget--v329 > .adr-container--gallery-full {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

@media (max-width: 420px) {
  html body .adr-gallery-widget--v329 > .adr-container,
  html body .adr-gallery-widget--v329 > .adr-container--gallery-full {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* =========================================================
   1.8.8 - Gallery responsive consolidata.
   Risolve le sovrapposizioni precedenti tra layout a colonne CSS,
   layout grid e gap Elementor: da responsive in poi usa solo CSS Grid.
   ========================================================= */
html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329,
html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
  box-sizing: border-box !important;
  gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
  row-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
  column-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
}

html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item,
html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item {
  box-sizing: border-box !important;
}

@media (max-width: 900px) and (min-width: 561px) {
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: auto !important;
    grid-auto-flow: row dense !important;
    gap: 18px !important;
    row-gap: 18px !important;
    column-gap: 18px !important;
    column-count: auto !important;
    column-width: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(5n+1),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(5n+1) {
    display: block !important;
    grid-column: auto / span 1 !important;
    grid-row: auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    -webkit-column-break-inside: auto !important;
    overflow: hidden !important;
    aspect-ratio: 1 / 1 !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+1),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+1) { aspect-ratio: 1 / 1.12 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+2),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+2) { aspect-ratio: 1.32 / 1 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+3),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+3) { aspect-ratio: 1 / 1.24 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+4),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+4) { aspect-ratio: 1.16 / 1 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+5),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+5) { aspect-ratio: 1.05 / 1 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n) { aspect-ratio: 1 / 1.18 !important; }
}

@media (max-width: 560px) {
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    display: grid !important;
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto !important;
    grid-auto-flow: row !important;
    gap: 16px !important;
    row-gap: 16px !important;
    column-gap: 0 !important;
    column-count: auto !important;
    column-width: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(5n+1),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(5n+1) {
    display: block !important;
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    aspect-ratio: 1.28 / 1 !important;
  }

  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+1),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+1) { aspect-ratio: 1.45 / 1 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+2),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+2) { aspect-ratio: 1 / 1.05 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+3),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+3) { aspect-ratio: 1.18 / 1 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+4),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+4) { aspect-ratio: 1 / 1.12 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n+5),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n+5) { aspect-ratio: 1.35 / 1 !important; }
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--mosaic-v329 > .adr-gallery-grid__item:nth-child(6n),
  html body .adr-gallery-widget--v329 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(6n) { aspect-ratio: 1 / 1.18 !important; }
}



/* =========================================================
   1.8.9 - Gallery responsive definitiva.
   Usa una sola logica: masonry CSS a colonne con elementi statici.
   Niente grid span, niente position:absolute nei breakpoint: tutte le immagini
   rimangono visibili e i gap sono sempre rispettati.
   ========================================================= */
html body .adr-gallery-widget.adr-gallery-widget--v190,
html body .adr-gallery-widget--v190 {
  box-sizing: border-box !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: visible !important;
  padding: 0 !important;
}

html body .adr-gallery-widget--v190 > .adr-container,
html body .adr-gallery-widget--v190 > .adr-container--gallery-full {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 50px !important;
  padding-right: 50px !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-widget__heading,
html body .adr-gallery-widget--v190 .adr-gallery-filters {
  width: min(var(--adr-container, 1180px), calc(100% - 32px)) !important;
  max-width: var(--adr-container, 1180px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  columns: 4 260px !important;
  column-count: 4 !important;
  column-width: auto !important;
  column-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
  grid-template-columns: none !important;
  grid-auto-rows: auto !important;
  grid-auto-flow: row !important;
  gap: 0 !important;
  row-gap: 0 !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 > .adr-gallery-grid__item,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 > .adr-gallery-grid__item:nth-child(n),
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(n) {
  display: inline-block !important;
  box-sizing: border-box !important;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 0 max(var(--adr-gallery-gap, 18px), 18px) !important;
  padding: 0 !important;
  border: 0 !important;
  outline: 0 !important;
  overflow: hidden !important;
  vertical-align: top !important;
  break-inside: avoid !important;
  page-break-inside: avoid !important;
  -webkit-column-break-inside: avoid !important;
  grid-column: auto !important;
  grid-row: auto !important;
  aspect-ratio: auto !important;
  border-radius: var(--adr-gallery-radius, 0px) !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid__item.is-filter-hidden {
  display: none !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 > .adr-gallery-grid__item::before,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item::before {
  content: none !important;
  display: none !important;
  padding: 0 !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 .adr-gallery-grid__item > a,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 .adr-gallery-grid__item > img,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 .adr-gallery-lightbox-link,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item > a,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item > img,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-lightbox-link {
  display: block !important;
  position: relative !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-radius: inherit !important;
  line-height: 0 !important;
  font-size: 0 !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 .adr-gallery-grid__item img,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 .adr-gallery-lightbox-link img,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item img,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-lightbox-link img {
  display: block !important;
  position: static !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: contain !important;
  object-position: var(--adr-object-position, center center) !important;
  border-radius: inherit !important;
  transition: transform .35s ease !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190:not(.adr-gallery-grid--no-hover-zoom) .adr-gallery-grid__item:hover img,
html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry:not(.adr-gallery-grid--no-hover-zoom) .adr-gallery-grid__item:hover img {
  transform: scale(var(--adr-gallery-hover-scale, 1.04)) !important;
}

html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--no-hover-zoom .adr-gallery-grid__item:hover img {
  transform: none !important;
}

@media (max-width: 1180px) and (min-width: 768px) {
  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190,
  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    column-count: 2 !important;
    column-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
  }
}

@media (max-width: 767px) {
  html body .adr-gallery-widget--v190 > .adr-container,
  html body .adr-gallery-widget--v190 > .adr-container--gallery-full {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190,
  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    column-count: 1 !important;
    column-gap: 0 !important;
  }

  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--masonry-v190 > .adr-gallery-grid__item:nth-child(n),
  html body .adr-gallery-widget--v190 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(n) {
    margin-bottom: max(var(--adr-gallery-gap, 16px), 16px) !important;
  }
}

@media (max-width: 420px) {
  html body .adr-gallery-widget--v190 > .adr-container,
  html body .adr-gallery-widget--v190 > .adr-container--gallery-full {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

/* =========================================================
   1.8.10 - Gallery definitiva.
   Desktop: mosaico/masonry con CSS Grid e celle di dimensioni diverse.
   Tablet/smartphone: layout statico a colonne, senza celle assolute o span
   che possono creare strisce laterali o immagini non visibili.
   ========================================================= */
html body .adr-gallery-widget.adr-gallery-widget--v1810,
html body .adr-gallery-widget--v1810 {
  box-sizing: border-box !important;
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  overflow: visible !important;
  padding: 0 !important;
  background: transparent !important;
}

html body .adr-gallery-widget--v1810 > .adr-container,
html body .adr-gallery-widget--v1810 > .adr-container--gallery-full {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding-left: 50px !important;
  padding-right: 50px !important;
}

html body .adr-gallery-widget--v1810 .adr-gallery-widget__heading,
html body .adr-gallery-widget--v1810 .adr-gallery-filters {
  width: min(var(--adr-container, 1180px), calc(100% - 32px)) !important;
  max-width: var(--adr-container, 1180px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Desktop masonry/mosaic */
@media (min-width: 1181px) {
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    display: grid !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-auto-rows: var(--adr-mosaic-row-height, 260px) !important;
    grid-auto-flow: dense !important;
    gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
    column-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
    row-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
    columns: auto !important;
    column-count: auto !important;
    column-width: auto !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item:nth-child(n),
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(n) {
    display: block !important;
    box-sizing: border-box !important;
    position: relative !important;
    inset: auto !important;
    grid-column: var(--adr-mosaic-column) !important;
    grid-row: var(--adr-mosaic-row) !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    overflow: hidden !important;
    vertical-align: top !important;
    break-inside: auto !important;
    page-break-inside: auto !important;
    -webkit-column-break-inside: auto !important;
    aspect-ratio: auto !important;
    border-radius: var(--adr-gallery-radius, 0px) !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item::before,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item::before {
    content: none !important;
    display: none !important;
    padding: 0 !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-grid__item > a,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-grid__item > img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-lightbox-link,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item > a,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item > img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-lightbox-link {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: inherit !important;
    line-height: 0 !important;
    font-size: 0 !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-grid__item img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-lightbox-link img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-lightbox-link img {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: var(--adr-object-position, center center) !important;
    border-radius: inherit !important;
    transition: transform .35s ease !important;
  }
}

/* Tablet + smartphone: stable responsive masonry. */
@media (max-width: 1180px) {
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    columns: 2 auto !important;
    column-count: 2 !important;
    column-width: auto !important;
    column-gap: max(var(--adr-gallery-gap, 18px), 18px) !important;
    grid-template-columns: none !important;
    grid-auto-rows: auto !important;
    grid-auto-flow: row !important;
    gap: 0 !important;
    row-gap: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item:nth-child(n),
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(n) {
    display: inline-block !important;
    box-sizing: border-box !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 0 max(var(--adr-gallery-gap, 18px), 18px) !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    overflow: hidden !important;
    vertical-align: top !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
    -webkit-column-break-inside: avoid !important;
    grid-column: auto !important;
    grid-row: auto !important;
    aspect-ratio: auto !important;
    border-radius: var(--adr-gallery-radius, 0px) !important;
    line-height: 0 !important;
    font-size: 0 !important;
    background: transparent !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid__item.is-filter-hidden {
    display: none !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item::before,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item::before {
    content: none !important;
    display: none !important;
    padding: 0 !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-grid__item > a,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-grid__item > img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-lightbox-link,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item > a,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item > img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-lightbox-link {
    display: block !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-radius: inherit !important;
    line-height: 0 !important;
    font-size: 0 !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-grid__item img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 .adr-gallery-lightbox-link img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-grid__item img,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry .adr-gallery-lightbox-link img {
    display: block !important;
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: contain !important;
    object-position: var(--adr-object-position, center center) !important;
    border-radius: inherit !important;
    transition: transform .35s ease !important;
  }
}

@media (max-width: 767px) {
  html body .adr-gallery-widget--v1810 > .adr-container,
  html body .adr-gallery-widget--v1810 > .adr-container--gallery-full {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry {
    column-count: 1 !important;
    column-gap: 0 !important;
  }

  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item,
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810 > .adr-gallery-grid__item:nth-child(n),
  html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry > .adr-gallery-grid__item:nth-child(n) {
    margin-bottom: max(var(--adr-gallery-gap, 16px), 16px) !important;
  }
}

@media (max-width: 420px) {
  html body .adr-gallery-widget--v1810 > .adr-container,
  html body .adr-gallery-widget--v1810 > .adr-container--gallery-full {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--masonry-v1810:not(.adr-gallery-grid--no-hover-zoom) .adr-gallery-grid__item:hover img,
html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--responsive-masonry:not(.adr-gallery-grid--no-hover-zoom) .adr-gallery-grid__item:hover img {
  transform: scale(var(--adr-gallery-hover-scale, 1.04)) !important;
}

html body .adr-gallery-widget--v1810 .adr-gallery-grid.adr-gallery-grid--no-hover-zoom .adr-gallery-grid__item:hover img {
  transform: none !important;
}

/* =========================================================
   1.8.11 - Tablet layout Contattaci + footer a 2 colonne.
   Smartphone invariato sotto 560px.
   ========================================================= */
@media (min-width: 561px) and (max-width: 1024px) {
  html body .adr-contact-widget__cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 34px !important;
    padding-top: 38px !important;
    align-items: start !important;
  }

  html body .adr-contact-info,
  html body .adr-contact-widget__cards .adr-contact-info {
    display: grid !important;
    grid-template-columns: 42px minmax(0, 1fr) !important;
    gap: 16px !important;
    align-items: start !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  html body .adr-contact-info__icon {
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
  }

  html body .adr-contact-info h3 {
    font-size: 28px !important;
  }

  html body .adr-contact-info p,
  html body .adr-contact-info a {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  html body .aa-final-footer .aa-footer-grid,
  html body .aa-final-footer.adr-elementor-footer .aa-footer-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 42px 48px !important;
    align-items: start !important;
  }

  html body .aa-final-footer .aa-footer-brand,
  html body .aa-final-footer .aa-footer-col {
    min-width: 0 !important;
    width: 100% !important;
  }

  html body .aa-final-footer .adr-footer-menu {
    justify-content: start !important;
    justify-items: start !important;
  }
}

@media (max-width: 560px) {
  html body .adr-contact-widget__cards {
    grid-template-columns: 1fr !important;
  }

  html body .aa-final-footer .aa-footer-grid,
  html body .aa-final-footer.adr-elementor-footer .aa-footer-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   1.8.12 - Fix definitivo Widget Video / Banner con video background
   ========================================================= */
html body .adr-video-widget,
html body .adr-video-widget.adr-video-widget--has-video,
html body .adr-video-widget.adr-video-widget--v1812 {
  position: relative !important;
  overflow: hidden !important;
  isolation: isolate !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background-size: cover !important;
  background-position: var(--adr-bg-position, center center) !important;
}

html body .adr-video-widget.adr-video-widget--has-video,
html body .adr-video-widget.adr-video-widget--v1812.adr-video-widget--has-video {
  background-image: none !important;
  background-color: #f4efe6 !important;
}

html body .adr-video-widget > .adr-video-widget__media,
html body .adr-video-widget.adr-video-widget--has-video > .adr-video-widget__media,
html body .adr-video-widget.adr-video-widget--v1812 > .adr-video-widget__media {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  min-height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: var(--adr-bg-position, center center) !important;
  z-index: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

html body .adr-video-widget::before {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: auto !important;
  height: auto !important;
  background: linear-gradient(90deg, rgba(17,23,24,.82) 0%, rgba(15,95,103,.58) 48%, rgba(155,48,44,.28) 100%) !important;
  opacity: var(--adr-video-overlay-opacity, .56) !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

html body .adr-video-widget > .adr-overlay-decor {
  position: absolute !important;
  z-index: 2 !important;
  pointer-events: none !important;
}

html body .adr-video-widget > .adr-video-widget__content,
html body .adr-video-widget.adr-video-widget--v1812 > .adr-video-widget__content {
  position: relative !important;
  z-index: 3 !important;
  width: min(100% - 32px, var(--adr-container, 1180px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}



/* =========================================================
   1.8.13 - Coerenza font Widget Video / Banner
   ========================================================= */
html body .adr-video-widget.adr-video-widget--v1813,
html body .adr-video-widget.adr-video-widget--v1813.adr-video-widget--has-video {
  color:#fff8ec !important;
}

html body .adr-video-widget.adr-video-widget--v1813 > .adr-video-widget__content h2,
html body .adr-video-widget.adr-video-widget--v1813 h2 {
  font-family:'Cormorant Garamond', Georgia, serif !important;
  font-size:clamp(48px, 5.8vw, 88px) !important;
  line-height:.98 !important;
  font-weight:600 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:#fff8ec !important;
  margin:0 0 14px !important;
  text-shadow:0 12px 28px rgba(0,0,0,.24) !important;
}

html body .adr-video-widget.adr-video-widget--v1813 > .adr-video-widget__content p,
html body .adr-video-widget.adr-video-widget--v1813 p {
  font-family:'Mulish', Arial, sans-serif !important;
  font-size:clamp(17px, 1.55vw, 22px) !important;
  line-height:1.6 !important;
  font-weight:500 !important;
  letter-spacing:0 !important;
  text-transform:none !important;
  color:rgba(255,248,236,.92) !important;
  margin:0 auto !important;
  max-width:720px !important;
}

@media (max-width: 767px) {
  html body .adr-video-widget.adr-video-widget--v1813 > .adr-video-widget__content h2,
  html body .adr-video-widget.adr-video-widget--v1813 h2 {
    font-size:clamp(40px, 12vw, 58px) !important;
  }

  html body .adr-video-widget.adr-video-widget--v1813 > .adr-video-widget__content p,
  html body .adr-video-widget.adr-video-widget--v1813 p {
    font-size:17px !important;
  }
}

/* =========================================================
   1.8.16 - Freccia “torna in alto” fixed
   ========================================================= */
html body .adr-go-top {
  position: fixed !important;
  right: max(22px, env(safe-area-inset-right)) !important;
  bottom: max(22px, env(safe-area-inset-bottom)) !important;
  z-index: 99990 !important;
  width: 52px !important;
  height: 52px !important;
  border: 1px solid rgba(255, 248, 236, .28) !important;
  border-radius: 999px !important;
  background: rgba(15, 35, 38, .86) !important;
  color: #fff8ec !important;
  box-shadow: 0 16px 34px rgba(0, 0, 0, .24) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(16px) scale(.92) !important;
  transition: opacity .25s ease, visibility .25s ease, transform .25s ease, background .25s ease, border-color .25s ease !important;
  -webkit-tap-highlight-color: transparent !important;
}

html body .adr-go-top.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) scale(1) !important;
}

html body .adr-go-top:hover,
html body .adr-go-top:focus-visible {
  background: rgba(155, 48, 44, .94) !important;
  border-color: rgba(255, 248, 236, .56) !important;
  outline: none !important;
  transform: translateY(-3px) scale(1.02) !important;
}

html body .adr-go-top__icon {
  display: block !important;
  font-family: 'Mulish', Arial, sans-serif !important;
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  transform: translateY(-1px) !important;
}

@media (max-width: 767px) {
  html body .adr-go-top {
    right: max(16px, env(safe-area-inset-right)) !important;
    bottom: max(16px, env(safe-area-inset-bottom)) !important;
    width: 46px !important;
    height: 46px !important;
  }

  html body .adr-go-top__icon {
    font-size: 25px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .adr-go-top {
    transition: none !important;
  }
}


/* All'Anguilla - Bottone WhatsApp flottante */
html body .adr-whatsapp-float {
  position: fixed !important;
  right: max(22px, env(safe-area-inset-right)) !important;
  bottom: calc(max(22px, env(safe-area-inset-bottom)) + 66px) !important;
  z-index: 99990 !important;
  width: 52px !important;
  height: 52px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: #25D366 !important;
  color: #ffffff !important;
  box-shadow: 0 16px 34px rgba(0, 0, 0, .24) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease !important;
  -webkit-tap-highlight-color: transparent !important;
}

html body .adr-whatsapp-float:hover,
html body .adr-whatsapp-float:focus-visible {
  background: #1ebe5d !important;
  color: #ffffff !important;
  outline: none !important;
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 18px 38px rgba(0, 0, 0, .28) !important;
}

html body .adr-whatsapp-float__icon,
html body .adr-whatsapp-float__icon svg {
  display: block !important;
  width: 31px !important;
  height: 31px !important;
  line-height: 1 !important;
}

@media (max-width: 767px) {
  html body .adr-whatsapp-float {
    right: max(16px, env(safe-area-inset-right)) !important;
    bottom: calc(max(16px, env(safe-area-inset-bottom)) + 58px) !important;
    width: 46px !important;
    height: 46px !important;
  }

  html body .adr-whatsapp-float__icon,
  html body .adr-whatsapp-float__icon svg {
    width: 28px !important;
    height: 28px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html body .adr-whatsapp-float {
    transition: none !important;
  }
}


/* All'Anguilla 1.8.17 - Lightbox gallery: blocco scroll senza riportare la pagina in alto. */
html.adr-lightbox-open {
  overflow: hidden !important;
  scrollbar-gutter: stable;
}
html.adr-lightbox-open body {
  overflow: hidden !important;
  height: auto !important;
}
html.adr-lightbox-open body.adr-lightbox-scroll-locked {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  overflow-y: scroll !important;
}

/* =========================================================
   1.8.19 - Responsive widget Chi siamo/Storia:
   rimosso il box di sfondo sotto i controlli slider e
   leggermente aumentato il font del titoletto.
   ========================================================= */
@media (max-width: 900px) {
  html body .adr-about-widget .adr-image-slider,
  html body .adr-story-widget .adr-image-slider {
    height: auto !important;
    min-height: 0 !important;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .adr-about-widget .adr-image-slider__track,
  html body .adr-story-widget .adr-image-slider__track {
    height: clamp(260px, 58vw, 420px) !important;
    min-height: clamp(260px, 58vw, 420px) !important;
  }

  html body .adr-about-widget .adr-image-slider__controls,
  html body .adr-story-widget .adr-image-slider__controls {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    margin-top: 14px !important;
    margin-bottom: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body .adr-about-widget .adr-image-slider__controls .adr-image-slider__nav,
  html body .adr-story-widget .adr-image-slider__controls .adr-image-slider__nav {
    background: transparent !important;
  }

  html body .adr-about-widget .adr-widget-label,
  html body .adr-story-widget .adr-widget-label {
    font-size: 14px !important;
  }

  html body .adr-about-widget .adr-split-widget__inner,
  html body .adr-story-widget .adr-split-widget__inner {
    row-gap: 34px !important;
  }
}

@media (max-width: 560px) {
  html body .adr-about-widget .adr-image-slider__track,
  html body .adr-story-widget .adr-image-slider__track {
    height: clamp(240px, 66vw, 340px) !important;
    min-height: clamp(240px, 66vw, 340px) !important;
  }

  html body .adr-about-widget .adr-image-slider__arrow,
  html body .adr-story-widget .adr-image-slider__arrow {
    width: 40px !important;
    height: 40px !important;
  }
}


/* =========================================================
   1.8.23 - Widget menu responsive:
   ripristinata la linea sotto le tabs su desktop, tablet e smartphone.
   ========================================================= */
@media (max-width: 920px) {
  html body .adr-menu-widget--book .aa-book-menu__tabs {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    justify-content: stretch !important;
    gap: 10px !important;
    width: min(100%, 760px) !important;
    margin: 28px auto 24px !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    border-bottom: 1px solid rgba(23, 55, 90, .15) !important;
    scrollbar-width: auto !important;
  }

  html body .adr-menu-widget--book .aa-book-menu__tab {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 64px !important;
    padding: 12px 12px 14px !important;
    text-align: center !important;
    line-height: 1.12 !important;
    font-size: 17px !important;
    white-space: normal !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
  }

  html body .adr-menu-widget--book .aa-book-menu__tab span {
    white-space: normal !important;
  }
}

@media (max-width: 560px) {
  html body .adr-menu-widget--book .aa-book-menu__tabs {
    gap: 8px !important;
    width: 100% !important;
  }

  html body .adr-menu-widget--book .aa-book-menu__tab {
    min-height: 58px !important;
    padding: 10px 8px 12px !important;
    font-size: 14px !important;
    letter-spacing: .02em !important;
  }
}


/* Video background: evita il fondo nero prima del primo frame, senza poster/preload image */
.adr-hero-widget--has-video,
.adr-video-widget--has-video {
  background-image: none !important;
  background-color: #f4efe6 !important;
}
.adr-hero-widget--has-video .adr-hero-widget__media,
.adr-video-widget--has-video .adr-video-widget__media {
  opacity: 0;
  transition: opacity .18s ease;
}
.adr-hero-widget--has-video.is-video-ready .adr-hero-widget__media,
.adr-video-widget--has-video.is-video-ready .adr-video-widget__media {
  opacity: 1;
}

/* =========================================================
   Header mobile custom fix - navrow e cerchio logo
   ========================================================= */
@media (max-width: 980px) {
    html body .aa-final-header .aa-final-navrow {
        height: 65px !important;
        min-height: 65px !important;
        background: #f6f2ea !important;
        box-shadow: 0 4px 11px rgba(7, 32, 56, .11) !important;
    }

    html body .aa-final-header .aa-final-navrow::before {
        top: -37px !important;
        width: 150px !important;
        height: 155px !important;
        background: #f6f2ea !important;
        border-radius: 50% !important;
        box-shadow: none !important;
        border: 0 !important;
    }
}

/* =========================================================
   Header desktop custom fix - navrow
   ========================================================= */
@media (min-width: 1101px) {
    html body .aa-final-header .aa-final-navrow {
        height: 65px !important;
        min-height: 65px !important;
        background: #f6f2ea !important;
        box-shadow: 0 4px 11px rgba(7, 32, 56, .11) !important;
    }
}


/* =========================================================
   FINAL OVERRIDE - header navrow height 65px
   ========================================================= */
@media (min-width:1101px){
  html body .aa-final-header .aa-final-navrow{
    height:65px!important;
    min-height:65px!important;
    background:#f6f2ea!important;
    box-shadow:0 4px 11px rgba(7,32,56,.11)!important;
  }
}
@media (max-width:1100px){
  html body .aa-final-header .aa-final-navrow{
    height:65px!important;
    min-height:65px!important;
    background:#f6f2ea!important;
    box-shadow:0 4px 11px rgba(7,32,56,.11)!important;
  }
  html body .aa-final-header .aa-final-navrow::before{
    top:-37px!important;
    width:150px!important;
    height:155px!important;
    background:#f6f2ea!important;
    border-radius:50%!important;
    box-shadow:none!important;
    border:0!important;
  }
}


/* =========================================================
   FINAL FIX - desktop header 65px, centered menu, logo circle
   ========================================================= */
@media (min-width: 1101px) {
    html body .aa-final-header .aa-final-navrow {
        height: 65px !important;
        min-height: 65px !important;
        background: #f6f2ea !important;
        box-shadow: 0 4px 11px rgba(7, 32, 56, .11) !important;
        align-items: center !important;
    }

    html body .aa-final-header .aa-final-navrow::before {
        top: -35px !important;
        width: 150px !important;
        height: 150px !important;
        background: #f6f2ea !important;
        border-radius: 50% !important;
        box-shadow: none !important;
        border: 0 !important;
    }

    html body .aa-final-header .aa-final-nav,
    html body .aa-final-header .aa-final-nav--left,
    html body .aa-final-header .aa-final-nav--right {
        height: 65px !important;
        min-height: 65px !important;
        align-items: center !important;
    }

    html body .aa-final-header .aa-final-nav a,
    html body .aa-final-header .aa-final-nav a span {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        line-height: 1 !important;
        transform: none !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

/* =========================================================
   FINAL FIX - desktop logo wrap 162px top -40px
   ========================================================= */
@media (min-width: 1101px) {
    html body .aa-final-header .aa-final-logo-wrap {
        top: -40px !important;
        width: 162px !important;
        height: 162px !important;
        background: transparent !important;
        border-radius: 50% !important;
        box-shadow: none !important;
    }
}

/* Fix CTA widget menu: Menu cartaceo e Carta dei vini devono essere veri bottoni */
html body .adr-menu-widget .adr-menu-widget__buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
    flex-wrap: wrap !important;
}
html body .adr-menu-widget--book .aa-book-menu__cta,
html body .adr-menu-widget .adr-menu-widget__buttons .adr-round-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    min-width: 190px !important;
    padding: 14px 26px !important;
    background: var(--aa-bronze-dark, #684b36) !important;
    color: #fff !important;
    border: 1px solid var(--aa-bronze-dark, #684b36) !important;
    border-radius: 999px !important;
    box-shadow: 0 10px 24px rgba(7, 32, 56, .12) !important;
    font-family: 'Mulish', Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: .12em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    text-underline-offset: 0 !important;
}
html body .adr-menu-widget--book .aa-book-menu__cta::after {
    display: none !important;
    content: none !important;
}
html body .adr-menu-widget--book .aa-book-menu__cta:hover,
html body .adr-menu-widget .adr-menu-widget__buttons .adr-round-button:hover {
    transform: translateY(-1px) !important;
    filter: brightness(.96) !important;
}
@media (max-width: 767px) {
    html body .adr-menu-widget .adr-menu-widget__buttons {
        flex-direction: column !important;
        gap: 12px !important;
    }
    html body .adr-menu-widget--book .aa-book-menu__cta,
    html body .adr-menu-widget .adr-menu-widget__buttons .adr-round-button {
        width: 100% !important;
        max-width: 320px !important;
    }
}


/* =========================================================
   1.8.24 - Hero widget definitive style fixes
   ========================================================= */
html body .adr-hero-widget{
  min-height:var(--adr-hero-min-height,100vh);
}
html body .adr-hero-widget .adr-hero-widget__eyebrow{
  color:var(--adr-hero-eyebrow-color,#fff9ef)!important;
}
html body .adr-hero-widget .adr-hero-widget__title{
  color:var(--adr-hero-title-color,#fff9ef)!important;
  max-width:var(--adr-hero-title-max-width,760px)!important;
}
html body .adr-hero-widget .aa-hero-subtitle{
  color:var(--adr-hero-subtitle-color,#fff9ef)!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--1{
  background:var(--adr-hero-btn1-bg,rgba(255,249,239,.10))!important;
  color:var(--adr-hero-btn1-text,#fff9ef)!important;
  border-color:var(--adr-hero-btn1-border,rgba(255,249,239,.82))!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--1:hover{
  background:var(--adr-hero-btn1-hover-bg,#fff9ef)!important;
  color:var(--adr-hero-btn1-hover-text,#251d19)!important;
  border-color:var(--adr-hero-btn1-hover-bg,#fff9ef)!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--2{
  background:var(--adr-hero-btn2-bg,#fff9ef)!important;
  color:var(--adr-hero-btn2-text,#251d19)!important;
  border-color:var(--adr-hero-btn2-border,#fff9ef)!important;
}
html body .adr-hero-widget .aa-hero-actions a.aa-hero-btn--2:hover{
  background:var(--adr-hero-btn2-hover-bg,rgba(255,249,239,.10))!important;
  color:var(--adr-hero-btn2-hover-text,#fff9ef)!important;
  border-color:var(--adr-hero-btn2-hover-bg,rgba(255,249,239,.82))!important;
}


/* =========================================================
   1.8.26 - Hero Elementor controls: definitive compatibility
   ========================================================= */
html body .elementor-widget-adr-hero .adr-hero-widget{
  min-height:var(--adr-hero-min-height,100vh) !important;
  background-position:var(--adr-bg-position,center center) !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget::before{
  opacity:var(--adr-hero-overlay-opacity,.48) !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget__media{
  object-position:var(--adr-bg-position,center center) !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget__content{
  max-width:var(--adr-hero-content-width,650px) !important;
  transform:translate(var(--adr-hero-offset-x,0px),var(--adr-hero-offset-y,0px)) !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget__title{
  max-width:var(--adr-hero-title-max-width,760px) !important;
  color:var(--adr-hero-title-color,#fff9ef) !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget__eyebrow{
  color:var(--adr-hero-eyebrow-color,#fff9ef) !important;
}
html body .elementor-widget-adr-hero .aa-hero-subtitle{
  color:var(--adr-hero-subtitle-color,#fff9ef) !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget__logo{
  max-width:100% !important;
}
html body .elementor-widget-adr-hero .adr-hero-widget--h-left .adr-hero-widget__content{
  text-align:left;
}
html body .elementor-widget-adr-hero .adr-hero-widget--h-center .adr-hero-widget__content{
  text-align:center;
}
html body .elementor-widget-adr-hero .adr-hero-widget--h-right .adr-hero-widget__content{
  text-align:right;
}
html body .elementor-widget-adr-hero .adr-hero-widget--v-top{
  align-items:flex-start;
}
html body .elementor-widget-adr-hero .adr-hero-widget--v-middle{
  align-items:center;
}
html body .elementor-widget-adr-hero .adr-hero-widget--v-bottom{
  align-items:flex-end;
}

/* =========================================================
   1.8.31 - Hero auto full page: video/immagine full viewport,
   testo sempre dentro l'inquadratura in basso a sinistra.
   ========================================================= */
html body:not(.elementor-editor-active) .elementor-widget-adr-hero{
  width:100vw!important;
  max-width:100vw!important;
  margin-left:calc(50% - 50vw)!important;
  margin-right:calc(50% - 50vw)!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget,
html body .adr-hero-widget.adr-hero-widget--auto-frame{
  --aa-hero-safe-x:clamp(22px, 6vw, 96px);
  --aa-hero-safe-bottom:clamp(30px, 8vh, 108px);
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:100svh!important;
  height:100svh!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  isolation:isolate!important;
  background-size:cover!important;
  background-position:var(--adr-bg-position,center center)!important;
  background-repeat:no-repeat!important;
}

@supports not (height: 100svh){
  html body .elementor-widget-adr-hero .adr-hero-widget,
  html body .adr-hero-widget.adr-hero-widget--auto-frame{
    min-height:100vh!important;
    height:100vh!important;
  }
}

html body .elementor-widget-adr-hero .adr-hero-widget.adr-hero-widget--no-media{
  background-image:none!important;
  background-color:#251d19!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget.adr-hero-widget--has-video,
html body .elementor-widget-adr-hero .adr-hero-widget.adr-hero-widget--has-video[style]{
  background-image:none!important;
  background-color:#251d19!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget > .adr-hero-widget__media,
html body .elementor-widget-adr-hero .adr-hero-widget.adr-hero-widget--has-video > .adr-hero-widget__media{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:var(--adr-bg-position,center center)!important;
  margin:0!important;
  padding:0!important;
  pointer-events:none!important;
  transform:none!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(90deg, rgba(18,15,13,.72) 0%, rgba(18,15,13,.44) 42%, rgba(18,15,13,.08) 100%)!important;
  opacity:var(--adr-hero-overlay-opacity,.48)!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget > .adr-hero-widget__pattern,
html body .elementor-widget-adr-hero .adr-hero-widget > .adr-overlay-decor,
html body .elementor-widget-adr-hero .adr-hero-widget::after,
html body .elementor-widget-adr-hero .aa-hero-dots{
  display:none!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget > .adr-hero-widget__content{
  position:absolute!important;
  z-index:4!important;
  left:var(--aa-hero-safe-x)!important;
  right:auto!important;
  top:auto!important;
  bottom:var(--aa-hero-safe-bottom)!important;
  width:min(var(--adr-hero-content-width,650px), calc(100vw - var(--aa-hero-safe-x) - var(--aa-hero-safe-x)))!important;
  max-width:min(var(--adr-hero-content-width,650px), calc(100vw - var(--aa-hero-safe-x) - var(--aa-hero-safe-x)))!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  text-align:left!important;
  transform:none!important;
  box-sizing:border-box!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__logo{
  width:clamp(140px, 24vw, 380px)!important;
  max-width:100%!important;
  height:auto!important;
  margin:0 0 clamp(10px, 2vh, 18px) 0!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__eyebrow{
  font-size:clamp(11px, 1.2vw, 13px)!important;
  line-height:1.2!important;
  margin:0 0 clamp(7px, 1.4vh, 13px) 0!important;
  color:var(--adr-hero-eyebrow-color,#fff9ef)!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__title{
  font-size:clamp(40px, min(8vw, 10vh), 92px)!important;
  line-height:.92!important;
  max-width:min(var(--adr-hero-title-max-width,760px), 100%)!important;
  margin:0!important;
  color:var(--adr-hero-title-color,#fff9ef)!important;
  text-wrap:balance;
}

html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-subtitle{
  font-size:clamp(18px, min(3.2vw, 4.6vh), 36px)!important;
  line-height:1.08!important;
  margin:clamp(8px, 1.6vh, 14px) 0 clamp(14px, 3vh, 26px)!important;
  color:var(--adr-hero-subtitle-color,#fff9ef)!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:clamp(10px, 1.6vw, 18px)!important;
  margin-top:0!important;
}

html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-actions a{
  min-height:clamp(40px, 6vh, 54px)!important;
  padding:0 clamp(18px, 2.4vw, 34px)!important;
  font-size:clamp(10px, 1.1vw, 12px)!important;
  line-height:1!important;
  white-space:nowrap!important;
}

@media (orientation: landscape) and (max-height: 560px){
  html body .elementor-widget-adr-hero .adr-hero-widget,
  html body .adr-hero-widget.adr-hero-widget--auto-frame{
    --aa-hero-safe-x:clamp(18px, 5vw, 64px);
    --aa-hero-safe-bottom:clamp(18px, 5vh, 34px);
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__logo{
    width:clamp(115px, 20vw, 230px)!important;
    margin-bottom:8px!important;
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__eyebrow{
    font-size:11px!important;
    margin-bottom:6px!important;
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__title{
    font-size:clamp(32px, min(6.4vw, 11vh), 58px)!important;
    line-height:.90!important;
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-subtitle{
    font-size:clamp(16px, min(2.6vw, 4.2vh), 24px)!important;
    margin:7px 0 10px!important;
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-actions{
    gap:8px!important;
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-actions a{
    min-height:36px!important;
    padding:0 16px!important;
    font-size:9px!important;
  }
}

@media (max-width: 767px) and (orientation: portrait){
  html body .elementor-widget-adr-hero .adr-hero-widget,
  html body .adr-hero-widget.adr-hero-widget--auto-frame{
    --aa-hero-safe-x:clamp(20px, 7vw, 34px);
    --aa-hero-safe-bottom:clamp(34px, 8vh, 68px);
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .adr-hero-widget__title{
    font-size:clamp(36px, 12vw, 54px)!important;
  }
  html body .elementor-widget-adr-hero .adr-hero-widget .aa-hero-actions a{
    width:auto!important;
    max-width:100%!important;
  }
}

/* Video Chrome direct paint: non nasconde il video in attesa degli eventi ready.
   Chrome può ritardare loadeddata/canplay su alcuni MP4; lasciamo il browser
   disegnare il primo frame appena disponibile. */
html body .adr-hero-widget--has-video .adr-hero-widget__media,
html body .adr-video-widget--has-video .adr-video-widget__media,
html body .elementor-widget-adr-hero .adr-hero-widget.adr-hero-widget--has-video > .adr-hero-widget__media,
html body .elementor-widget-adr-video-banner .adr-video-widget.adr-video-widget--has-video > .adr-video-widget__media {
  opacity: 1 !important;
  visibility: visible !important;
  transition: none !important;
}
