.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; }
/* Meeting & Eventi, Figma 223:3311. The existing room data and form transport are preserved. */
/* Override the theme plugin's important reset of Elementor's native smooth scroll. */
html:has(.rama-meeting-form) { scroll-behavior: smooth !important; }
@media (prefers-reduced-motion: reduce) {
  html:has(.rama-meeting-form) { scroll-behavior: auto !important; }
}
.rama-meeting-intro { padding: 140px max(24px,calc((100% - 1170px)/2)) 39px !important; }
.rama-meeting-intro .elementor-widget-pxl_heading { margin: 0 0 40px !important; }
.rama-meeting-intro .heading-title,.rama-meeting-form .heading-title { font: 40px/44px Forum,serif; letter-spacing: .01em; max-width: 1027px; margin: 0 auto; text-align: center !important; overflow-wrap: normal; hyphens: none; }
.rama-meeting-intro .pxl-heading-inner,.rama-meeting-form .pxl-heading-inner { width: 100%; }
.rama-meeting-intro .pxl-text-editor { width: 100%; font: 16px/24px Inter,sans-serif; letter-spacing: .05em; text-align: center; }
.rama-counters { padding: 0 !important; max-width: 1040px; margin: 0 auto !important; }
.rama-counters > .elementor-container { align-items: stretch; }
.rama-counters .elementor-column { padding: 0 30px !important; border-right: 1px solid #e1e1e1; }
.rama-counters .elementor-column:last-child { border: 0; }
.rama-counter .pxl-counter { justify-content: center; }
.rama-counter .counter-number { display: inline-flex; justify-content: center; align-items: baseline; gap: 0; font: 56px/52px Forum,serif !important; letter-spacing: .03em; color: #897145 !important; white-space: nowrap; text-transform: none; }
.rama-counter .counter-number * { font: inherit !important; color: inherit !important; }
.elementor-widget-pxl_button .pxl-btn:hover { background: #897145 !important; color: white !important; }
.rama-counter .counter-number-suffix { font: inherit; margin: 0 !important; }
.rama-counter .counter-title { margin: 16px 0 0 !important; font: 16px/24px Inter,sans-serif !important; letter-spacing: .05em; text-transform: none; }
.rama-meeting-cta { padding: 39px 24px 113px !important; }
.rama-meeting-cta .elementor-widget-pxl_button { margin: 0 !important; }
.rama-meeting-cta .pxl-button-wrapper { justify-content: center !important; text-align: center; }
.rama-meeting-cta .pxl-btn { position: relative; max-width: 100%; white-space: normal; }
.rama-meeting-cta .pxl-btn:after { content: ''; position: absolute; left: 0; bottom: -5px; width: 100%; height: 1px; background: #e9dcc4; }
.rama-meeting-room { scroll-margin-top: 110px; }
.rama-meeting-room > .elementor-container { align-items: stretch; }
.rama-meeting-room-photo { position: relative; min-height: 730px; }
.rama-meeting-room-photo .elementor-widget-pxl_image { position: absolute; inset: 0; height: 100%; }
.rama-meeting-room-photo .elementor-widget-container,.rama-meeting-room-photo .pxl-image-wg,.rama-meeting-room-photo .pxl-image-inner { height: 100%; }
.rama-meeting-room-photo img { display: block; width: 100%; height: 100% !important; object-fit: cover; }
.rama-meeting-room-copy { padding: 120px 5.787vw 104px !important; min-width: 0; }
.rama-meeting-room-copy > .elementor-widget-wrap { align-content: flex-start; max-width: 603px; }
.rama-meeting-room-copy .elementor-widget { margin: 0; }
.rama-meeting-room-copy .pxl-heading-inner { min-width: 0; max-width: 100%; }
.rama-meeting-room-title .heading-title { font: 40px/44px Forum,serif; letter-spacing: .01em; margin: 0; overflow-wrap: normal; hyphens: none; }
.rama-meeting-room-copy .rama-room-metas { margin-top: 16px !important; }
.rama-meeting-room-copy .rama-room-metas .pxl-text-editor { font-size: 18px; text-transform: uppercase; }
.rama-meeting-room-copy .pxl-text-editor { font: 16px/24px Inter,sans-serif; letter-spacing: .05em; width: 100%; margin: 0; }
.rama-meeting-room-copy .rama-meeting-description { margin: 24px 0 23px !important; }
.rama-meeting-room-copy .rama-meeting-equipment-title { margin: 0 !important; }
.rama-meeting-equipment-title .heading-title { font: 400 16px/24px Inter,sans-serif; letter-spacing: .05em; text-transform: none; margin: 0; }
.rama-meeting-amenities { padding: 0 14px 0 9px !important; margin-top: 16px !important; }
.rama-meeting-amenities > .elementor-container { gap: 35px; flex-wrap: nowrap; align-items: flex-start; }
.rama-meeting-amenities > .elementor-container > .elementor-column { width: calc((100% - 35px)/2) !important; padding: 0 !important; min-width: 0; }
.rama-meeting-amenity-list .pxl-list-style { display: flex; flex-direction: column; gap: 5px; }
.rama-meeting-amenity-list .list-item { padding: 0 !important; margin: 0 !important; min-height: 26px; gap: 16px; align-items: flex-start; }
.rama-meeting-amenity-list .list-icon { margin: 0 !important; width: 26px; flex: 0 0 26px; display: flex; }
.rama-meeting-amenity-list .list-icon svg { width: auto !important; height: auto !important; max-width: none; flex-shrink: 0; }
.rama-meeting-amenity-list .list-content { flex: 1; min-width: 0; }
.rama-meeting-amenity-list .list-content p { font: normal 400 16px/24px Inter,sans-serif; letter-spacing: .05em; margin: 0; color: #110404; }
.rama-meeting-form { max-width: none; margin: 0 auto !important; padding: 120px 24px 125px !important; scroll-margin-top: 110px; }
.rama-meeting-form .elementor-widget-pxl_heading { margin: 0 !important; }
.rama-meeting-form form { max-width: 600px; margin: 40px auto 0 !important; }
.rama-meeting-form form > p { margin: 0; }
.rama-meeting-form form label { display: block; margin: 0 0 24px; font: 16px/24px Inter,sans-serif; letter-spacing: .05em; text-transform: uppercase; }
.rama-meeting-form form label > .wpcf7-form-control-wrap { display: block; margin-top: 16px; }
.rama-meeting-form form label br { display: none; }
.rama-meeting-form form input:not([type=submit]):not([type=checkbox]),.rama-meeting-form form select,.rama-meeting-form form textarea { display: block; width: 100%; min-width: 0; height: 48px; border: 1px solid #7c7c7c; border-radius: 0; background-color: white; padding: 12px 20px; font: 16px/24px Inter,sans-serif; letter-spacing: .05em; text-transform: none; color: #343232; }
.rama-meeting-form form textarea.wpcf7-textarea { height: 194px !important; min-height: 194px !important; resize: vertical; }
.rama-meeting-form form select { appearance: none; background: white url('figma/a8b94d15-ab0e-48bc-8469-911811a0c843.svg') no-repeat right 24px center; padding-right: 48px; }
.rama-meeting-form form .rama-privacy { margin: 24px 0; }
.rama-meeting-form form .rama-privacy label { display: flex; align-items: flex-start; gap: 10px; margin: 0; font-size: 14px; line-height: 22px; text-transform: none; }
.rama-meeting-form .wpcf7-list-item { margin: 0; }
.rama-meeting-form input[type=checkbox] { width: 20px; height: 20px; flex: 0 0 20px; margin: 1px 0 0; }
.rama-meeting-submit { position: relative; margin-top: 32px; }
.rama-meeting-submit p { margin: 0; }
.rama-meeting-submit:after { content: ''; display: block; width: 100%; height: 1px; margin-top: 4px; background: #110404; }
.rama-meeting-form input[type=submit] { width: 100%; min-height: 48px; padding: 13px 20px; background: transparent; color: #110404; border: 1px solid #110404; border-radius: 0; font: 400 14px/20px Inter,sans-serif; letter-spacing: .3em; text-transform: uppercase; white-space: normal; }
.rama-meeting-submit .wpcf7-spinner { position: absolute; right: 12px; top: 12px; margin: 0; }
.rama-meeting-form .wpcf7-not-valid-tip { font-size: 14px; line-height: 22px; text-transform: none; letter-spacing: 0; }
.rama-meeting-form .g-recaptcha { display: block; }
@media (min-width:768px) and (max-width:1023px) {
  .rama-counters .elementor-column { padding: 0 16px !important; }
  .rama-counter .counter-number { font-size: 44px !important; }
  .rama-counter .counter-title { font-size: 14px !important; }
}
@media (min-width:1024px) and (max-width:1399px) {
  .rama-meeting-room-copy { padding: 64px 32px !important; }
  .rama-meeting-amenities > .elementor-container { gap: 16px; }
  .rama-meeting-amenities > .elementor-container > .elementor-column { width: calc((100% - 16px)/2) !important; }
  .rama-meeting-amenity-list .list-item { gap: 10px; }
}
@media (max-width:1023px) {
  .rama-meeting-room > .elementor-container { flex-wrap: wrap; }
  .rama-meeting-room-photo,.rama-meeting-room-copy { width: 100% !important; }
  .rama-meeting-room-photo { min-height: 0; order: 0; }
  .rama-meeting-room-photo .elementor-widget-pxl_image { position: relative; inset: auto; height: auto; }
  .rama-meeting-room-photo img { height: auto !important; aspect-ratio: 1.5; object-fit: cover; }
  .rama-meeting-room-copy { order: 1; padding: 64px 48px !important; }
  .rama-meeting-room-copy > .elementor-widget-wrap { max-width: none; }
}
@media (max-width:767px) {
  .rama-banner { height: 584px; min-height: 584px; }
  .rama-banner .heading-title { font-size: 40px !important; line-height: 44px !important; }
  .rama-banner-subtitle { padding: 0 24px !important; }
  .rama-banner-subtitle .pxl-text-editor { font-size: 16px !important; }
  .rama-meeting-intro { padding: 80px 16px 48px !important; }
  .rama-meeting-intro .heading-title,.rama-meeting-form .heading-title { font-size: 32px; line-height: 35px; }
  .rama-meeting-intro .elementor-widget-pxl_heading { margin-bottom: 32px !important; }
  .rama-meeting-intro .pxl-text-editor { letter-spacing: .02em; text-align: left; }
  .rama-meeting-intro br { display: none; }
  .rama-counters { padding: 0 16px !important; }
  .rama-counters > .elementor-container { row-gap: 32px; }
  .rama-counters .elementor-column { width: 50% !important; padding: 0 8px !important; }
  .rama-counters .elementor-column:nth-child(2) { border-right: 0; }
  .rama-counter .counter-number { font-size: clamp(32px,10vw,44px) !important; line-height: 48px !important; }
  .rama-counter .counter-title { font-size: 14px !important; line-height: 22px !important; letter-spacing: .02em; }
  .rama-meeting-cta { padding: 40px 16px 80px !important; }
  .rama-meeting-cta .pxl-btn { padding-left: 24px; padding-right: 24px; }
  .rama-meeting-room-photo img { aspect-ratio: 1.184; }
  .rama-meeting-room-copy { padding: 56px 24px 64px !important; }
  .rama-meeting-room-title .heading-title { font-size: 32px; line-height: 35px; }
  .rama-meeting-room-copy .rama-room-metas .pxl-text-editor { font-size: 16px; line-height: 24px; }
  .rama-meeting-room-copy .pxl-text-editor,.rama-meeting-amenity-list .list-content p { letter-spacing: .02em; }
  .rama-meeting-amenities { padding: 0 !important; }
  .rama-meeting-amenities > .elementor-container { display: block; }
  .rama-meeting-amenities > .elementor-container > .elementor-column { width: 100% !important; }
  .rama-meeting-amenity-list .pxl-list-style { gap: 12px; }
  .rama-meeting-amenities .elementor-column + .elementor-column { margin-top: 12px; }
  .rama-meeting-form { padding: 80px 16px !important; }
  .rama-meeting-form form label { letter-spacing: .02em; }
  .rama-meeting-form form input:not([type=submit]):not([type=checkbox]),.rama-meeting-form form textarea,.rama-meeting-form form select { letter-spacing: .02em; }
  .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; }
}
@media (max-width:359px) {
  .rama-meeting-form .g-recaptcha { transform: scale(.9); transform-origin: left top; margin-bottom: -8px; }
}
