.elementor-23 .elementor-element.elementor-element-cada8a2{--display:flex;--min-height:536px;}.elementor-23 .elementor-element.elementor-element-cada8a2:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-cada8a2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/09/IMG_2883-1.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-23 .elementor-element.elementor-element-eaca8d2{--display:flex;}.elementor-23 .elementor-element.elementor-element-324d292{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:64px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-b1bf19c{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.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 );color:var( --e-global-color-primary );}.elementor-23 .elementor-element.elementor-element-0fbbe8b .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-weight:500;color:#5B5757;}.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-23 .elementor-element.elementor-element-63ae16a p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-3f68483 p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-e170609{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-5d8caa4{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-23 .elementor-element.elementor-element-9a65620{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-23 .elementor-element.elementor-element-3acffc6 .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-weight:500;color:#5B5757;}.elementor-23 .elementor-element.elementor-element-acdc55b p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-2728b42 p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-ff80738{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-23 .elementor-element.elementor-element-fb440d3{--display:flex;--position:absolute;--min-height:563px;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:64px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;top:0px;}.elementor-23 .elementor-element.elementor-element-fb440d3:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-fb440d3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/09/Group-2182.png");background-position:top center;background-repeat:no-repeat;background-size:100% auto;}body:not(.rtl) .elementor-23 .elementor-element.elementor-element-fb440d3{left:0px;}body.rtl .elementor-23 .elementor-element.elementor-element-fb440d3{right:0px;}.elementor-23 .elementor-element.elementor-element-1efc59c{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:64px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-e48aecb{--display:flex;}.elementor-23 .elementor-element.elementor-element-8bc4dc1{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-0ce77fb );--border-color:var( --e-global-color-0ce77fb );--border-radius:30px 30px 30px 30px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-595ed75{--display:flex;--min-height:338px;--border-radius:30px 0px 0px 30px;}.elementor-23 .elementor-element.elementor-element-595ed75:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-595ed75 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/08/papaya-salad-served-with-rice-noodles-vegetable-salad-decorated-with-thai-food-ingredients-1-1.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-23 .elementor-element.elementor-element-1ac67fd{--display:flex;--justify-content:center;--overlay-opacity:0.1;--border-radius:0px 30px 30px 0px;--padding-top:39px;--padding-bottom:39px;--padding-left:39px;--padding-right:39px;}.elementor-23 .elementor-element.elementor-element-1ac67fd:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-1ac67fd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-71e4dcd );}.elementor-23 .elementor-element.elementor-element-1ac67fd::before, .elementor-23 .elementor-element.elementor-element-1ac67fd > .elementor-background-video-container::before, .elementor-23 .elementor-element.elementor-element-1ac67fd > .e-con-inner > .elementor-background-video-container::before, .elementor-23 .elementor-element.elementor-element-1ac67fd > .elementor-background-slideshow::before, .elementor-23 .elementor-element.elementor-element-1ac67fd > .e-con-inner > .elementor-background-slideshow::before, .elementor-23 .elementor-element.elementor-element-1ac67fd > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/07/Mask-group-16.png");--background-overlay:'';background-position:top center;background-repeat:no-repeat;background-size:100% auto;}.elementor-23 .elementor-element.elementor-element-363239b{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-23 .elementor-element.elementor-element-47e0f98 .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-weight:500;color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-378d204 p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-378d204{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-afff96a p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-afff96a{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-ff2c2c1{--display:flex;--z-index:1;}.elementor-23 .elementor-element.elementor-element-993410c{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-0ce77fb );--border-color:var( --e-global-color-0ce77fb );--border-radius:30px 30px 30px 30px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-e6ab296{--display:flex;--justify-content:center;--overlay-opacity:0.1;--border-radius:30px 0px 0px 30px;--padding-top:39px;--padding-bottom:39px;--padding-left:39px;--padding-right:39px;}.elementor-23 .elementor-element.elementor-element-e6ab296:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-e6ab296 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-71e4dcd );}.elementor-23 .elementor-element.elementor-element-e6ab296::before, .elementor-23 .elementor-element.elementor-element-e6ab296 > .elementor-background-video-container::before, .elementor-23 .elementor-element.elementor-element-e6ab296 > .e-con-inner > .elementor-background-video-container::before, .elementor-23 .elementor-element.elementor-element-e6ab296 > .elementor-background-slideshow::before, .elementor-23 .elementor-element.elementor-element-e6ab296 > .e-con-inner > .elementor-background-slideshow::before, .elementor-23 .elementor-element.elementor-element-e6ab296 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/07/Mask-group-16.png");--background-overlay:'';background-position:top center;background-repeat:no-repeat;background-size:100% auto;}.elementor-23 .elementor-element.elementor-element-0cc5711{--display:flex;--gap:10px 10px;--row-gap:10px;--column-gap:10px;}.elementor-23 .elementor-element.elementor-element-7325f2f .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-weight:500;color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-faa8a5c p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-faa8a5c{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-0672177 p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-0672177{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-a349234{--display:flex;--min-height:338px;--border-radius:0px 30px 30px 0px;}.elementor-23 .elementor-element.elementor-element-a349234:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-a349234 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/08/papaya-salad-served-with-rice-noodles-vegetable-salad-decorated-with-thai-food-ingredients-1-2.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-23 .elementor-element.elementor-element-451cf78{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:-80px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-451cf78:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-451cf78 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-71e4dcd );background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/08/Rectangle-4.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-23 .elementor-element.elementor-element-fd77694{--display:flex;--margin-top:99px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-afdc058{--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;--margin-top:0px;--margin-bottom:56px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-29e0b5a{--display:flex;}.elementor-widget-icon-box.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon-box.elementor-view-framed .elementor-icon, .elementor-widget-icon-box.elementor-view-default .elementor-icon{fill:var( --e-global-color-primary );color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-title, .elementor-widget-icon-box .elementor-icon-box-title a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-icon-box .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box:has(:hover) .elementor-icon-box-title,
					 .elementor-widget-icon-box:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-primary );}.elementor-widget-icon-box .elementor-icon-box-description{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-23 .elementor-element.elementor-element-4858b3b .elementor-icon-box-wrapper{align-items:start;gap:15px;}.elementor-23 .elementor-element.elementor-element-4858b3b .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-4858b3b .elementor-icon-box-title, .elementor-23 .elementor-element.elementor-element-4858b3b .elementor-icon-box-title a{font-family:"Antic Didone", Sans-serif;font-size:20px;font-weight:600;}.elementor-23 .elementor-element.elementor-element-4858b3b:has(:hover) .elementor-icon-box-title,
					 .elementor-23 .elementor-element.elementor-element-4858b3b:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-4858b3b .elementor-icon-box-description{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-856fe34{--display:flex;}.elementor-23 .elementor-element.elementor-element-cb8cea7 .elementor-icon-box-wrapper{align-items:start;gap:15px;}.elementor-23 .elementor-element.elementor-element-cb8cea7 .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-cb8cea7 .elementor-icon-box-title, .elementor-23 .elementor-element.elementor-element-cb8cea7 .elementor-icon-box-title a{font-family:"Antic Didone", Sans-serif;font-size:20px;font-weight:600;}.elementor-23 .elementor-element.elementor-element-cb8cea7:has(:hover) .elementor-icon-box-title,
					 .elementor-23 .elementor-element.elementor-element-cb8cea7:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-cb8cea7 .elementor-icon-box-description{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-f11aed7{--display:flex;}.elementor-23 .elementor-element.elementor-element-255fdfa .elementor-icon-box-wrapper{align-items:start;gap:15px;}.elementor-23 .elementor-element.elementor-element-255fdfa .elementor-icon-box-title{margin-block-end:10px;color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-255fdfa .elementor-icon-box-title, .elementor-23 .elementor-element.elementor-element-255fdfa .elementor-icon-box-title a{font-family:"Antic Didone", Sans-serif;font-size:20px;font-weight:600;}.elementor-23 .elementor-element.elementor-element-255fdfa:has(:hover) .elementor-icon-box-title,
					 .elementor-23 .elementor-element.elementor-element-255fdfa:has(:focus) .elementor-icon-box-title{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-255fdfa .elementor-icon-box-description{color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-ed9439c{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-23 .elementor-element.elementor-element-ae2d438{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;}.elementor-23 .elementor-element.elementor-element-7f1c1ca{--display:flex;}.elementor-23 .elementor-element.elementor-element-0d385af{--display:flex;}.elementor-23 .elementor-element.elementor-element-20f6bd9{text-align:end;}.elementor-23 .elementor-element.elementor-element-20f6bd9 .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:4px;color:var( --e-global-color-b8f9eaa );}.elementor-23 .elementor-element.elementor-element-98bbad6{text-align:end;}.elementor-23 .elementor-element.elementor-element-98bbad6 .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-size:28px;font-weight:400;color:#0F1125;}.elementor-23 .elementor-element.elementor-element-c083f47{text-align:end;}.elementor-23 .elementor-element.elementor-element-c083f47 p{margin-block-end:0px;}.elementor-23 .elementor-element.elementor-element-ff1754b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-3deb1c5{--display:flex;--min-height:447px;--justify-content:flex-end;--padding-top:26px;--padding-bottom:26px;--padding-left:26px;--padding-right:26px;}.elementor-23 .elementor-element.elementor-element-3deb1c5:not(.elementor-motion-effects-element-type-background), .elementor-23 .elementor-element.elementor-element-3deb1c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://bentotagrandvilla.com/wp-content/uploads/2026/08/Frame-1618873351.png");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-23 .elementor-element.elementor-element-9bcbe3c{--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:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-4ffb33d{--display:flex;--justify-content:center;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-6af8ef1{--display:flex;--justify-content:center;}.elementor-23 .elementor-element.elementor-element-08e0a86{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-23 .elementor-element.elementor-element-c886ce1{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-23 .elementor-element.elementor-element-fed7b21{text-align:start;}.elementor-23 .elementor-element.elementor-element-fed7b21 .elementor-heading-title{font-family:"Antic Didone", Sans-serif;font-size:28px;font-weight:400;color:var( --e-global-color-0ce77fb );}.elementor-23 .elementor-element.elementor-element-243d881{--display:flex;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(max-width:767px){.elementor-23 .elementor-element.elementor-element-fed7b21{text-align:center;}}@media(min-width:768px){.elementor-23 .elementor-element.elementor-element-b1bf19c{--width:94%;}.elementor-23 .elementor-element.elementor-element-5d8caa4{--width:95%;}.elementor-23 .elementor-element.elementor-element-e48aecb{--width:94%;}.elementor-23 .elementor-element.elementor-element-ff2c2c1{--width:94%;}.elementor-23 .elementor-element.elementor-element-fd77694{--width:94%;}.elementor-23 .elementor-element.elementor-element-afdc058{--width:94%;}.elementor-23 .elementor-element.elementor-element-ae2d438{--width:94%;}.elementor-23 .elementor-element.elementor-element-08e0a86{--width:94%;}.elementor-23 .elementor-element.elementor-element-c886ce1{--width:100%;}}/* Start custom CSS for shortcode, class: .elementor-element-17aff43 */@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400&display=swap');


/* ==============================================
   EXACT CONTACT FORM 7 RESERVATION FORM
============================================== */

.exact-cf7-reservation,
.exact-cf7-reservation * {
    box-sizing: border-box;
}


/* ==============================================
   FORM
============================================== */

.exact-cf7-reservation {
    display: flex;
    flex-direction: column;
    gap: 27px;
    font-family: "Poppins", sans-serif;
}


/* ==============================================
   REMOVE CONTACT FORM 7 DEFAULT SPACING
============================================== */

.exact-cf7-reservation p {
    margin: 0 !important;
    padding: 0 !important;
}

.exact-cf7-reservation br {
    display: none !important;
}

.exact-cf7-reservation .wpcf7-form-control-wrap {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}


/* ==============================================
   ROWS
============================================== */

.exact-cf7-row {
    width: 100%;
    display: grid;
    align-items: stretch;
    overflow: visible;
}


/* ROW 1 */

.exact-cf7-row-1 {
    grid-template-columns: 1fr;
}


/* ROW 2
   ORIGINAL RATIO
*/

.exact-cf7-row-2 {
    grid-template-columns:
        minmax(0, 402fr)
        minmax(0, 293fr);

    column-gap: 21px;
}


/* ROW 3
   ORIGINAL RATIO
*/

.exact-cf7-row-3 {
    grid-template-columns:
        minmax(0, 225fr)
        minmax(0, 463fr);

    column-gap: 26px;
}


/* ROW 4
   ORIGINAL RATIO
*/

.exact-cf7-row-4 {
    grid-template-columns:
        minmax(0, 428fr)
        minmax(0, 263fr);

    column-gap: 23px;
}


/* ==============================================
   COMMON FIELD
============================================== */

.exact-cf7-field {
    width: 100%;
    height: 65px;

    position: relative;

    background: rgba(255, 255, 255, 0.72);

    border: 0;
    border-radius: 3px;

    /*
     * IMPORTANT:
     * Error message needs to show outside field.
     */
    overflow: visible;
}


/* ==============================================
   INPUT / SELECT
   ORIGINAL ALIGNMENT PRESERVED
============================================== */

.exact-cf7-field input,
.exact-cf7-field select {
    width: 100% !important;
    height: 65px !important;

    margin: 0 !important;

    /*
     * ORIGINAL PADDING
     * Do not change this.
     */
    padding: 0 28px !important;

    border: 0 !important;
    outline: 0 !important;

    background: transparent !important;

    box-shadow: none !important;

    border-radius: 0 !important;

    font-family: "Poppins", sans-serif !important;
    font-size: 19px !important;
    font-weight: 400 !important;

    line-height: 65px !important;

    color: #ffffff !important;

    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}


/* ==============================================
   PLACEHOLDER
============================================== */

.exact-cf7-field input::placeholder {
    color: #ffffff !important;
    opacity: 1 !important;
}


/* ==============================================
   SELECT
============================================== */

.exact-cf7-select-field select {
    padding-right: 60px !important;
    cursor: pointer;
}

.exact-cf7-select-field select option {
    color: #333333 !important;
    background: #ffffff !important;
}


/* ==============================================
   CUSTOM ARROW
============================================== */

.exact-cf7-arrow {
    position: absolute;

    right: 34px;
    top: 50%;

    width: 14px;
    height: 8px;

    transform: translateY(-50%);

    display: flex;
    align-items: center;
    justify-content: center;

    pointer-events: none;

    z-index: 10;
}

.exact-cf7-arrow svg {
    width: 14px;
    height: 8px;

    display: block;
    overflow: visible;
}

.exact-cf7-arrow svg path {
    fill: none;

    stroke: #ffffff;

    stroke-width: 1.5;

    stroke-linecap: round;
    stroke-linejoin: round;
}


/* ==============================================
   DATE FIELD
   ORIGINAL ALIGNMENT PRESERVED
============================================== */

.exact-cf7-date-field {
    cursor: pointer;
}


.exact-cf7-date-display {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 65px;

    padding: 0 60px 0 28px;

    display: flex;
    align-items: center;

    font-family: "Poppins", sans-serif;

    font-size: 19px;
    font-weight: 400;

    line-height: 65px;

    color: #ffffff;

    pointer-events: none;

    z-index: 3;
}


/* Actual CF7 date wrapper */

.exact-cf7-date-field .wpcf7-form-control-wrap {
    position: absolute !important;

    inset: 0 !important;

    width: 100% !important;
    height: 65px !important;

    overflow: visible !important;

    z-index: 5;
}


/* Actual date input invisible,
   but whole field remains clickable */

.exact-cf7-date-field input[type="date"] {
    position: absolute;

    inset: 0;

    width: 100% !important;
    height: 65px !important;

    padding: 0 !important;

    opacity: 0 !important;

    cursor: pointer;

    z-index: 5;
}


/* Chrome date picker clickable whole area */

.exact-cf7-date-field
input[type="date"]::-webkit-calendar-picker-indicator {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    opacity: 0;

    cursor: pointer;
}


/* ==============================================
   SUBMIT
============================================== */

.exact-cf7-submit-wrap {
    width: 100%;
    height: 65px;

    position: relative;
}


.exact-cf7-reserve-button {
    width: 100% !important;
    height: 65px !important;

    min-height: 65px !important;

    margin: 0 !important;
    padding: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border: 0 !important;
    outline: 0 !important;

    border-radius: 3px !important;

    background: #f4f4f4 !important;

    color: #86ad73 !important;

    font-family: "Poppins", sans-serif !important;

    font-size: 18px !important;
    font-weight: 400 !important;

    line-height: 1 !important;

    text-align: center !important;

    cursor: pointer;

    box-shadow: none !important;

    transition: none !important;
}


/* BUTTON HOVER - KEEP SAME */

.exact-cf7-reserve-button:hover,
.exact-cf7-reserve-button:focus,
.exact-cf7-reserve-button:active {
    background: #f4f4f4 !important;

    color: #86ad73 !important;

    border: 0 !important;

    box-shadow: none !important;

    outline: 0 !important;

    transform: none !important;
}


/* ==============================================
   REMOVE DEFAULT FOCUS
============================================== */

.exact-cf7-field input:hover,
.exact-cf7-field input:focus,
.exact-cf7-field input:active,
.exact-cf7-field select:hover,
.exact-cf7-field select:focus,
.exact-cf7-field select:active {
    outline: 0 !important;

    border: 0 !important;

    box-shadow: none !important;

    background: transparent !important;
}


/* ==============================================
   AUTOFILL
============================================== */

.exact-cf7-field input:-webkit-autofill,
.exact-cf7-field input:-webkit-autofill:hover,
.exact-cf7-field input:-webkit-autofill:focus {
    -webkit-text-fill-color: #ffffff !important;

    -webkit-box-shadow:
        0 0 0 1000px transparent inset !important;

    transition:
        background-color 99999s ease-in-out 0s !important;
}


/* ==============================================
   CONTACT FORM 7 SPINNER
============================================== */

.exact-cf7-submit-wrap .wpcf7-spinner {
    position: absolute !important;

    width: 20px !important;
    height: 20px !important;

    right: 12px !important;
    top: 50% !important;

    margin: 0 !important;

    transform: translateY(-50%) !important;

    z-index: 10;
}


/* ==============================================
   CONTACT FORM 7 VALIDATION
   ERROR OUTSIDE FIELD
============================================== */

/*
 * All validation messages:
 *
 * Field bottom = 0
 * Message starts 5px under field.
 */

.exact-cf7-reservation .wpcf7-not-valid-tip {
    position: absolute !important;

    left: 12px !important;

    /*
     * OUTSIDE FIELD
     */
    bottom: -18px !important;

    width: calc(100% - 24px) !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    background: transparent !important;

    font-family: "Poppins", sans-serif !important;

    font-size: 11px !important;
    font-weight: 400 !important;

    line-height: 13px !important;

    /*
     * STRONGER RED
     */
    color: #ff2d2d !important;

    text-align: left !important;

    white-space: nowrap !important;

    overflow: visible !important;

    pointer-events: none !important;

    z-index: 100 !important;
}


/* ==============================================
   REMOVE DEFAULT INVALID FIELD STYLING
============================================== */

.exact-cf7-reservation .wpcf7-not-valid {
    border: 0 !important;

    outline: 0 !important;

    box-shadow: none !important;

    background: transparent !important;
}


/* ==============================================
   NORMAL TEXT / EMAIL / TEL ERROR
============================================== */

.exact-cf7-field > .wpcf7-form-control-wrap {
    overflow: visible !important;
}

.exact-cf7-field
.wpcf7-form-control-wrap
.wpcf7-not-valid-tip {
    left: 12px !important;
    bottom: -18px !important;
}


/* ==============================================
   SELECT VALIDATION
============================================== */

.exact-cf7-select-field {
    overflow: visible !important;
}

.exact-cf7-select-field .wpcf7-form-control-wrap {
    position: relative !important;

    display: block !important;

    width: 100% !important;
    height: 65px !important;

    overflow: visible !important;
}

.exact-cf7-select-field .wpcf7-not-valid-tip {
    position: absolute !important;

    left: 12px !important;

    bottom: -18px !important;

    width: calc(100% - 24px) !important;

    color: #ff2d2d !important;

    z-index: 100 !important;
}


/* ==============================================
   DATE VALIDATION
============================================== */

.exact-cf7-date-field {
    overflow: visible !important;
}

.exact-cf7-date-field .wpcf7-form-control-wrap {
    overflow: visible !important;
}

.exact-cf7-date-field .wpcf7-not-valid-tip {
    position: absolute !important;

    left: 12px !important;

    /*
     * Date wrapper itself = 65px high
     * Therefore error appears under field.
     */
    bottom: -18px !important;

    width: calc(100% - 24px) !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #ff2d2d !important;

    font-size: 11px !important;
    line-height: 13px !important;

    opacity: 1 !important;
    visibility: visible !important;

    white-space: nowrap !important;

    pointer-events: none !important;

    z-index: 100 !important;
}


/* ==============================================
   CF7 RESPONSE MESSAGE
============================================== */

.wpcf7 form .wpcf7-response-output {
    margin: 15px 11px 0 !important;

    padding: 8px 12px !important;

    font-family: "Poppins", sans-serif !important;

    font-size: 13px !important;
}


/* ==============================================
   RESPONSIVE
============================================== */

@media (max-width: 767px) {

    .exact-cf7-reservation {
        width: calc(100% - 24px);
        max-width: none;

        margin-left: 12px;
        margin-right: 12px;

        padding-top: 20px;
        padding-bottom: 20px;

        /*
         * Need enough space for error below each field.
         */
        gap: 27px;
    }


    .exact-cf7-row-2,
    .exact-cf7-row-3,
    .exact-cf7-row-4 {
        grid-template-columns: 1fr;

        column-gap: 0;

        /*
         * Error is outside each field,
         * so mobile needs enough space here too.
         */
        row-gap: 27px;
    }


    .exact-cf7-field,
    .exact-cf7-submit-wrap,
    .exact-cf7-reserve-button {
        height: 65px !important;
    }


    .exact-cf7-field input,
    .exact-cf7-field select,
    .exact-cf7-date-display {
        font-size: 18px !important;
    }


    .exact-cf7-reservation .wpcf7-not-valid-tip {
        left: 12px !important;
        bottom: -18px !important;

        width: calc(100% - 24px) !important;

        font-size: 10px !important;
        line-height: 12px !important;
    }

}/* End custom CSS */