.rama-topbar { height: 55px; padding: 0 60px !important; }
.rama-topbar > .elementor-container { height: 55px; padding: 0; align-items: center; }
.rama-top-contact a { display: inline-flex; align-items: center; gap: 8px; }
.rama-top-contact a:before { content: ''; display: inline-block; width: 16px; height: 16px; background: center / contain no-repeat url('figma/9c147541-31b8-4cb9-b518-dcc15805e1b2.svg'); }
.rama-top-contact a[href^="mailto:"]:before { height: 11px; background-image: url('figma/09d23c85-b3b5-4182-8d59-730a005ab407.svg'); }
.rama-header-row:not(.rama-header-sticky) { height: 177px; padding: 18px 60px 15px !important; }
.rama-header-row > .elementor-container { align-items: center; }
.rama-header-book .pxl-button-wrapper { justify-content: flex-end !important; text-align: right; }
.elementor-widget-pxl_button .pxl-button-text,.elementor-widget-pxl_button .pxl-button-text * { opacity: 1 !important; visibility: visible !important; transform: none !important; }
.rama-banner-title { margin-bottom: 24px !important; }
.rama-banner .heading-title { font-size: 56px !important; line-height: 62px !important; }
.rama-banner-subtitle .pxl-text-editor { line-height: 24px !important; }
.rama-footer-main { padding: 80px 2.84% 72px !important; }
.rama-footer-main .elementor-widget-wrap > .elementor-widget { margin: 0; }
.rama-footer-main .elementor-widget-wrap > .rama-logo { margin-bottom: 48px; }
.rama-footer-main .rama-logo img { margin: 0 !important; }
.rama-footer-nav .pxl-links { font-size: 18px; line-height: 24px; }
.rama-legal .pxl-links { font-size: 16px; line-height: 16px; }
.rama-footer-main .elementor-widget-wrap > .rama-footer-nav,.rama-footer-main .elementor-widget-wrap > .elementor-widget-pxl_divider { margin-bottom: 40px; }
.rama-footer-main .pxl-divider-separator { width: 100% !important; height: 1px; background: white; transform: none !important; opacity: 1 !important; }
.rama-footer-main .elementor-widget-wrap > .elementor-widget-pxl_text_editor { margin-bottom: 32px; }
.rama-footer-main .elementor-widget-wrap > .elementor-widget-pxl_text_editor + .elementor-widget-pxl_text_editor { margin-bottom: 64px; }
.rama-footer-main .pxl-text-editor { line-height: 24px; }
.rama-footer-main .rama-legal a { font-size: 16px; line-height: 16px; }
.rama-footer-bottom { min-height: 80px; padding: 30px 26px !important; }
.rama-footer-bottom .pxl-text-editor { font-size: 14px; line-height: 16px; }

/* Dove siamo — Figma 208:2361. Shared elements stay scoped to this page. */
.rama-banner-title { margin-bottom:24px !important; }
.rama-location-map > .elementor-container { align-items:stretch; min-height:50vw; }
.rama-location-map-column { overflow:hidden; min-width:0; }
.rama-location-map-column > .elementor-widget-wrap { display:block; position:relative; aspect-ratio:1; }
.rama-map-image { position:absolute !important; inset:0; overflow:hidden; margin:0 !important; }
.rama-map-image .elementor-widget-container,.rama-map-image .pxl-image-wg,.rama-map-image a { display:block; height:100%; }
.rama-location-map .rama-map-image img { position:absolute; width:105.24% !important; max-width:none !important; height:109.97%; left:-4.74%; top:-8%; opacity:.95; object-fit:fill; }
.rama-map-image a:focus-visible { outline:3px solid #897145; outline-offset:-4px; }
.rama-map-logo,.rama-map-poi { position:absolute !important; margin:0 !important; pointer-events:none; }
.rama-map-logo { left:45.7176%; top:29.0509%; width:74px !important; }
.rama-map-logo img { display:block; width:74px; height:74px; }
.rama-map-poi { width:40px !important; height:40px; }
.rama-map-poi img { display:block; }
.rama-map-poi:before,.rama-map-poi:after { content:''; position:absolute; background:#110404; z-index:2; pointer-events:none; }
.rama-map-poi:before { width:2px; height:16px; left:19px; top:12px; }
.rama-map-poi:after { width:16px; height:2px; left:12px; top:19px; }
.rama-map-poi-1 { left:68.287%; top:39.1204%; }
.rama-map-poi-2 { left:53.2407%; top:39.0046%; }
.rama-map-poi-3 { left:22.8009%; top:37.8472%; }
.rama-map-poi-4 { left:1.7361%; top:62.2685%; width:41px !important; height:41px; }
.rama-location-copy { padding:140px 6.54% 110px !important; min-width:0; }
.rama-location-copy > .elementor-widget-wrap { display:block; align-content:flex-start; }
.rama-location-copy .elementor-widget { margin:0; }
.rama-location-copy h2 { margin:0 0 40px !important; font:40px/44px Forum,serif !important; letter-spacing:.01em !important; }
.rama-location-copy .pxl-text-editor { font:16px/24px Inter,sans-serif; letter-spacing:.05em; }
.rama-location-copy .pxl-list-style { display:flex; flex-direction:column; gap:23px; margin-top:29px; font-style:normal; }
.rama-location-copy .list-item { position:relative; padding:0 0 0 70px; min-height:49px; }
.rama-location-copy .list-item:before { content:''; position:absolute; top:2px; left:0; width:48px; height:48px; background:center no-repeat url('figma/ec6f02bb-4f8b-470f-be77-b5052e1815b6.svg'); }
.rama-location-copy .list-content { padding:0 !important; min-width:0; }
.rama-location-copy .list-content p { margin:0; }
.rama-distance-label,.rama-distance-description { display:block; font:400 18px/24px Inter,sans-serif; letter-spacing:.05em; color:#110404; }
.rama-distance-description { margin-top:2px; font-size:16px; line-height:24px; color:#484545; }
.rama-directions { padding:120px max(24px,calc((100% - 1168px)/2)) 140px !important; }
.rama-directions > .elementor-container { max-width:1168px; }
.rama-directions .elementor-widget-wrap { display:block; }
.rama-directions .elementor-widget { margin:0; }
.rama-directions .rama-accordion { margin:0 !important; }
.rama-directions .rama-accordion .ac-item + .ac-item { margin-top:-1px !important; }
.rama-directions h2 { font:40px/44px Forum,serif; letter-spacing:.01em !important; margin:0 0 50px !important; }
.rama-accordion .pxl-accordion .ac-item { margin: 0 !important; border: 0; border-left: 1px solid #7c7c7c; border-right: 1px solid #7c7c7c; }
.rama-accordion .pxl-accordion .ac-item:last-child { border-bottom: 1px solid #7c7c7c; }
.rama-accordion .pxl-accordion .ac-title { position: relative; min-height: 47px; height: auto; padding: 10px 64px 10px 29px !important; border: 0; border-top: 1px solid #7c7c7c; background: #e1e1e1 !important; color: #111 !important; font: 400 18px/26px Forum,serif !important; letter-spacing: .03em; text-transform: none; }
.rama-accordion .pxl-accordion .ac-title > .col { padding: 0; min-width: 0; }
.rama-accordion .pxl-accordion .ac-title .pxl-icon { display: none !important; }
.rama-accordion .pxl-accordion .ac-title:after { content: ''; position: absolute; right: 30px; top: 50%; transform: translateY(-50%); width: 14.02px; height: 24px; background: center no-repeat url('figma/ab2e3e10-cdd9-40ef-b811-80808bcf7a99.svg'); }
.rama-accordion .pxl-accordion .ac-item.active .ac-title { background: #470b0d !important; color: white !important; }
.rama-accordion .pxl-accordion .ac-item.active .ac-title:after { background-image: url('figma/bef86a06-52e5-4a70-950d-3f89d4820aa7.svg'); }
.rama-accordion .ac-title:focus-visible { outline: 2px solid #897145; outline-offset: -3px; }
.rama-accordion .pxl-accordion .ac-content { padding: 30px !important; margin: 0; border: 0; color: #646464; font: 400 16px/24.38px Inter,sans-serif; letter-spacing: 0; }
.rama-faq-answer { max-width: 568px; }
.rama-faq-answer p:last-child { margin: 0; }

.rama-directions .rama-accordion .ac-title { min-height:56px; padding:14px 64px 14px 29px !important; font-size:24px !important; }
.rama-directions .rama-accordion .ac-content { padding:26.5px 29px !important; font-size:16px; line-height:26px; letter-spacing:.05em; }
.rama-directions .rama-accordion .ac-content p { max-width:989px; margin:0; }
.rama-directions .rama-accordion .ac-title:after { width:16px; height:16px; background:linear-gradient(#110404,#110404) center/2px 16px no-repeat,linear-gradient(#110404,#110404) center/16px 2px no-repeat; }
.rama-directions .rama-accordion .ac-item.active .ac-title:after { background:linear-gradient(white,white) center/16px 2px no-repeat; }
@media (min-width:1024px) and (max-width:1399px) {
 .rama-location-copy { padding:64px 32px !important; }
 .rama-location-copy h2 { font-size:32px !important; line-height:36px !important; }
 .rama-location-copy .list-item { padding-left:62px; }
}
@media (max-width:1199px) {
 .rama-location-map > .elementor-container { display:block; min-height:0; }
 .rama-location-map > .elementor-container > .elementor-column { width:100% !important; }
 .rama-location-copy { padding:80px 24px !important; }
 .rama-location-map-column > .elementor-widget-wrap { aspect-ratio:1; }
 .rama-directions { padding:0 24px 100px !important; }
}
@media (max-width:767px) {
 .rama-banner .heading-title { font-size:40px !important; line-height:44px !important; }
 .rama-banner-subtitle .pxl-text-editor { max-width:330px; margin:auto; }
 .rama-location-copy { padding:64px 24px !important; }
 .rama-location-copy h2,.rama-directions h2 { font-size:30px !important; line-height:34px !important; }
 .rama-location-copy h2 { margin-bottom:24px !important; }
 .rama-location-copy .pxl-list-style { margin-top:32px; }
 .rama-location-copy .list-item { padding-left:64px; }
 .rama-map-logo { width:48px !important; }
 .rama-map-logo img { width:48px; height:48px; }
 .rama-directions { padding:0 16px 80px !important; }
 .rama-directions h2 { margin-bottom:32px !important; }
 .rama-directions .rama-accordion .ac-title { font-size:22px !important; padding:14px 46px 14px 19px !important; }
 .rama-directions .rama-accordion .ac-title:after { right:16px; }
 .rama-directions .rama-accordion .ac-content { padding:24px 19px !important; }
 .rama-footer-main { padding:80px 16px 56px !important; }
 .rama-footer-main .elementor-widget-wrap > .rama-logo { margin-bottom:40px; }
 .rama-footer-nav .pxl-links { gap:16px 24px; }
 .rama-footer-nav a { font-size:16px; }
 .rama-footer-main .rama-legal a { font-size:14px; }
 .rama-footer-bottom { padding:30px 36px !important; }
}
