.elementor-138 .elementor-element.elementor-element-a089774{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:40px;--padding-bottom:120px;--padding-left:20px;--padding-right:20px;}.elementor-138 .elementor-element.elementor-element-60245f7{--display:flex;--gap:4px 4px;--row-gap:4px;--column-gap:4px;--border-radius:7px 7px 7px 7px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-138 .elementor-element.elementor-element-60245f7:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-60245f7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F0E6E6;}.elementor-138 .elementor-element.elementor-element-9432aa2{--display:flex;--min-height:650px;--justify-content:flex-end;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--border-radius:7px 7px 7px 7px;}.elementor-138 .elementor-element.elementor-element-9432aa2:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-9432aa2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6e88f55 );background-image:url("https://nunzioslp.com/wp-content/uploads/2026/02/f644c190-d19e-4e95-97fb-692a45ee11eb.webp");background-position:0px -116px;background-size:cover;}.elementor-138 .elementor-element.elementor-element-6f37898{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:14px 14px 14px 14px;box-shadow:0px 0px 10px 0px rgba(0,0,0,0.5);--padding-top:30px;--padding-bottom:30px;--padding-left:30px;--padding-right:30px;}.elementor-138 .elementor-element.elementor-element-6f37898:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-6f37898 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-6e88f55 );}.pp-tooltip.pp-tooltip-{{ID}} .pp-tooltip-content{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );color:var( --e-global-color-primary );}.elementor-138 .elementor-element.elementor-element-06c0850 .elementor-heading-title{font-family:"rotunda-variable", Sans-serif;font-size:20px;font-weight:600;text-transform:uppercase;}.elementor-138 .elementor-element.elementor-element-c42cbd1 .elementor-heading-title{font-family:"rotunda-variable", Sans-serif;font-size:43px;font-weight:800;text-transform:uppercase;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-138 .elementor-element.elementor-element-0a63458{padding:6px 0px 0px 0px;font-family:"Archivo Narrow", Sans-serif;font-weight:400;}.elementor-138 .elementor-element.elementor-element-18e07eb{text-align:center;font-family:"Archivo Narrow", Sans-serif;font-weight:400;color:#7E7E7E;}.elementor-138 .elementor-element.elementor-element-18e07eb p{margin-block-end:0px;}.elementor-138 .elementor-element.elementor-element-afb520c{--display:flex;--border-radius:7px 7px 7px 7px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-138 .elementor-element.elementor-element-afb520c:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-afb520c > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-b646277 );}.elementor-138 .elementor-element.elementor-element-122003f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}body.elementor-page-138:not(.elementor-motion-effects-element-type-background), body.elementor-page-138 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-59a43ee );}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-138 .elementor-element.elementor-element-a089774{--flex-wrap:wrap;}.elementor-138 .elementor-element.elementor-element-9432aa2:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-9432aa2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}}@media(max-width:767px){.elementor-138 .elementor-element.elementor-element-9432aa2{--min-height:280px;}.elementor-138 .elementor-element.elementor-element-9432aa2:not(.elementor-motion-effects-element-type-background), .elementor-138 .elementor-element.elementor-element-9432aa2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-position:0px 0px;}.elementor-138 .elementor-element.elementor-element-6f37898{--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-138 .elementor-element.elementor-element-c42cbd1 .elementor-heading-title{font-size:35px;}}@media(min-width:768px){.elementor-138 .elementor-element.elementor-element-a089774{--content-width:1650px;}.elementor-138 .elementor-element.elementor-element-60245f7{--width:40%;}.elementor-138 .elementor-element.elementor-element-afb520c{--width:60%;}.elementor-138 .elementor-element.elementor-element-122003f{--content-width:900px;}}@media(max-width:1024px) and (min-width:768px){.elementor-138 .elementor-element.elementor-element-60245f7{--width:100%;}.elementor-138 .elementor-element.elementor-element-afb520c{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-1bb0fb7 *//* =========================
   RTB Booking Form Styling
   ========================= */

/* Optional: tweak these to match your brand */
:root{
  --rtb-bg: #ffffff;
  --rtb-surface: #ffffff;
  --rtb-border: #e6e8ee;
  --rtb-text: #111827;
  --rtb-muted: #6b7280;
  --rtb-accent: #2563eb;     /* primary color */
  --rtb-accent-2: #1d4ed8;   /* hover */
  --rtb-ring: rgba(37, 99, 235, 0.25);
  --rtb-radius: 14px;
  --rtb-shadow: 0 10px 30px rgba(17, 24, 39, 0.08);
  --rtb-gap: 14px;
  --rtb-font: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
}

/* If this form sits in a theme container, these help it look consistent */
fieldset.reservation,
fieldset.rtb-contact,
fieldset.rtb-form-footer{
  font-family: var(--rtb-font);
  background: var(--rtb-surface);
  border: 1px solid var(--rtb-border);
  border-radius: var(--rtb-radius);
  box-shadow: var(--rtb-shadow);
  padding: 18px;
  margin: 0 0 18px;
}

/* Legend as a section header */
fieldset.reservation > legend,
fieldset.rtb-contact > legend,
fieldset.rtb-form-footer > legend{
  font-weight: 700;
  color: var(--rtb-text);
  padding: 0 0px;
  margin-left: 6px;
  font-size: 1rem;
}

/* Space out each field row */
.rtb-text,
.rtb-select,
.rtb-textarea{
  display: grid;
  gap: 1px;
  margin-top: var(--rtb-gap);
}

/* Label styling */
.rtb-text label,
.rtb-select label,
.rtb-textarea label{
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--rtb-muted);
}

/* Inputs/select/textarea common styling */
.rtb-text input,
.rtb-select select,
.rtb-textarea textarea{
  width: 100%;
  box-sizing: border-box;
  border: 1px solid var(--rtb-border);
  background: #fff;
  color: var(--rtb-text);
  border-radius: 12px;
  padding: 11px 12px;
  font-size: 1rem;
  line-height: 1.2;
  outline: none;
  transition: border-color .15s ease, box-shadow .15s ease, transform .05s ease;
}

/* Make readonly picker inputs look intentional */
.rtb-text input[readonly]{
  background: #f9fafb;
  cursor: pointer;
}

/* Placeholder (if any) */
.rtb-text input::placeholder,
.rtb-textarea textarea::placeholder{
  color: #9ca3af;
}

/* Focus state */
.rtb-text input:focus,
.rtb-select select:focus,
.rtb-textarea textarea:focus{
  border-color: var(--rtb-accent);
  box-shadow: 0 0 0 4px var(--rtb-ring);
}

/* Slight press feedback */
.rtb-text input:active,
.rtb-select select:active{
  transform: translateY(0.5px);
}

/* Textarea sizing */
.rtb-textarea textarea{
  min-height: 110px;
  resize: vertical;
}

/* =========================
   Responsive layout
   ========================= */

/* Reservation fields: Date / Time / Party in a neat grid on wider screens */
fieldset.reservation{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--rtb-gap);
}

/* Put the legend on its own row when fieldset becomes grid */
fieldset.reservation > legend{
  grid-column: 1 / -1;
}

/* On desktop, make 3 columns */
@media (min-width: 760px){
  fieldset.reservation{
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: end;
  }

  /* Ensure each input block stays within its column */
  fieldset.reservation .rtb-text,
  fieldset.reservation .rtb-select{
    margin-top: 0;
  }
}

/* Contact fields: Name/Email side-by-side, Phone full or third depending on width */
fieldset.rtb-contact{
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--rtb-gap);
}
fieldset.rtb-contact > legend{
  grid-column: 1 / -1;
}

@media (min-width: 760px){
  fieldset.rtb-contact{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  /* Put phone across both columns */
  fieldset.rtb-contact .rtb-text.phone{
    grid-column: 1 / -1;
  }

  /* Message + Add link full width */
  fieldset.rtb-contact .add-message,
  fieldset.rtb-contact .rtb-textarea.message{
    grid-column: 1 / -1;
  }
}

/* =========================
   Add Message link styling
   ========================= */
.add-message{
  margin-top: var(--rtb-gap);
}
.add-message a{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--rtb-accent);
  text-decoration: none;
  font-weight: 600;
  padding: 8px 10px;
  border-radius: 10px;
  border: 1px dashed rgba(37, 99, 235, 0.35);
  background: rgba(37, 99, 235, 0.06);
  transition: background .15s ease, border-color .15s ease, transform .05s ease;
}
.add-message a:hover{
  background: rgba(37, 99, 235, 0.10);
  border-color: rgba(37, 99, 235, 0.55);
}
.add-message a:active{
  transform: translateY(0.5px);
}

/* If you later toggle the message field with JS, this helps */
.rtb-textarea.message{
  margin-top: 0;
}

/* =========================
   Footer + Submit Button
   ========================= */
fieldset.rtb-form-footer{
  display: grid;
  gap: 14px;
  align-items: center;
}

/* Submit container */
.rtb-form-submit{
  display: flex;
  justify-content: flex-start;
}

/* Button styling */
.rtb-form-submit button{
  appearance: none;
  border: 0;
  border-radius: 999px;
  padding: 12px 18px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  background: linear-gradient(180deg, var(--rtb-accent), var(--rtb-accent-2));
  box-shadow: 0 10px 18px rgba(37, 99, 235, 0.20);
  cursor: pointer;
  transition: transform .08s ease, box-shadow .15s ease, filter .15s ease;
}

.rtb-form-submit button:hover{
  filter: brightness(1.02);
  box-shadow: 0 12px 22px rgba(37, 99, 235, 0.26);
}

.rtb-form-submit button:active{
  transform: translateY(1px);
}

.rtb-form-submit button:focus{
  outline: none;
  box-shadow: 0 0 0 4px var(--rtb-ring), 0 12px 22px rgba(37, 99, 235, 0.22);
}

/* Disabled state (if your plugin disables while submitting) */
.rtb-form-submit button:disabled{
  opacity: 0.65;
  cursor: not-allowed;
  box-shadow: none;
}

/* =========================
   Small accessibility improvements
   ========================= */
.rtb-text input[required] + .required,
.rtb-select select[required] + .required{
  display: none; /* in case plugin injects extra required markers */
}

/* If your theme applies aggressive input styling, this helps normalize */
.rtb-text input,
.rtb-select select,
.rtb-textarea textarea,
.rtb-form-submit button{
  font-family: var(--rtb-font);
}/* End custom CSS */