.elementor-537 .elementor-element.elementor-element-d7969f2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-537 .elementor-element.elementor-element-d7969f2:not(.elementor-motion-effects-element-type-background), .elementor-537 .elementor-element.elementor-element-d7969f2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0B2233;}.elementor-537 .elementor-element.elementor-element-74f7717{--display:flex;--min-height:100%;--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;--justify-content:flex-end;--gap:14px 14px;--row-gap:14px;--column-gap:14px;--padding-top:40px;--padding-bottom:38px;--padding-left:34px;--padding-right:34px;}.elementor-537 .elementor-element.elementor-element-74f7717:not(.elementor-motion-effects-element-type-background), .elementor-537 .elementor-element.elementor-element-74f7717 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0B2233;background-image:url("https://sunriseegypttours.com/wp-content/uploads/2026/08/Felucca-boats-sailing-on-the-Nile-river-in-Luxor-Egypt.webp");background-position:center center;background-size:cover;}.elementor-537 .elementor-element.elementor-element-74f7717.e-con{--flex-grow:0;--flex-shrink:0;}.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-537 .elementor-element.elementor-element-1228029 .elementor-heading-title{font-family:"Manrope", Sans-serif;font-size:11px;font-weight:600;text-transform:uppercase;line-height:1.4em;letter-spacing:2px;color:#71BADA;}.elementor-537 .elementor-element.elementor-element-0541920 .elementor-heading-title{font-family:"Marcellus", Sans-serif;font-size:34px;font-weight:400;line-height:1.12em;color:#FFFFFF;}.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-537 .elementor-element.elementor-element-33c9d97{font-family:"Manrope", Sans-serif;font-size:14px;font-weight:400;line-height:1.65em;color:#B7CBD6;}.elementor-537 .elementor-element.elementor-element-a354dc0{--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;--padding-top:40px;--padding-bottom:40px;--padding-left:38px;--padding-right:38px;}.elementor-537 .elementor-element.elementor-element-a354dc0:not(.elementor-motion-effects-element-type-background), .elementor-537 .elementor-element.elementor-element-a354dc0 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#0B2233;}.elementor-537 .elementor-element.elementor-element-a354dc0.e-con{--flex-grow:0;--flex-shrink:0;}#elementor-popup-modal-537 .dialog-widget-content{animation-duration:0.5s;border-radius:8px 8px 8px 8px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-537{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-537 .dialog-message{width:980px;height:auto;}#elementor-popup-modal-537 .dialog-close-button{display:flex;}#elementor-popup-modal-537 .dialog-close-button i{color:#FFFFFF;}#elementor-popup-modal-537 .dialog-close-button svg{fill:#FFFFFF;}@media(max-width:1024px){.elementor-537 .elementor-element.elementor-element-d7969f2{--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;}}@media(max-width:767px){.elementor-537 .elementor-element.elementor-element-d7969f2{--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;}.elementor-537 .elementor-element.elementor-element-74f7717{--width:100%;--min-height:200px;--padding-top:28px;--padding-bottom:26px;--padding-left:22px;--padding-right:22px;}.elementor-537 .elementor-element.elementor-element-0541920 .elementor-heading-title{font-size:24px;}.elementor-537 .elementor-element.elementor-element-a354dc0{--width:100%;--padding-top:26px;--padding-bottom:28px;--padding-left:20px;--padding-right:20px;}#elementor-popup-modal-537 .dialog-message{width:94vw;}}@media(min-width:768px){.elementor-537 .elementor-element.elementor-element-74f7717{--width:38%;}.elementor-537 .elementor-element.elementor-element-a354dc0{--width:62%;}}@media(max-width:1024px) and (min-width:768px){.elementor-537 .elementor-element.elementor-element-74f7717{--width:100%;}.elementor-537 .elementor-element.elementor-element-a354dc0{--width:100%;}}/* Start custom CSS *//* ===== Plan Your Trip popup =====
   Deliberately conservative: Forminator's own grid stylesheet handles rows and
   columns, so nothing here touches .forminator-row or .forminator-col layout.
   Chip grids target the inner div[role=group].forminator-field, never the
   column wrapper (.forminator-field-checkbox), which also holds the label. */

.tp-wrap { background: #0B2233; }

/* image aside */
.tp-aside { position: relative; overflow: hidden; }
.tp-aside::after {
	content: '';
	position: absolute; inset: 0;
	background: linear-gradient(180deg, rgba(11,34,51,.34) 0%, rgba(11,34,51,.90) 100%);
}
.tp-aside > * { position: relative; z-index: 2; }

/* the form column scrolls, the popup itself never grows past the viewport */
.tp-form { max-height: 86vh; overflow-y: auto; scrollbar-width: thin; scrollbar-color: rgba(255,255,255,.26) transparent; }
.tp-form::-webkit-scrollbar { width: 6px; }
.tp-form::-webkit-scrollbar-thumb { background: rgba(255,255,255,.22); border-radius: 3px; }

/* numbered section headers from the HTML fields */
.tp-sec { display: flex; align-items: baseline; gap: 12px; margin: 6px 0 2px; }
.tp-num {
	font-family: 'Manrope', sans-serif;
	font-size: 10px; font-weight: 700; letter-spacing: 1.6px;
	color: #71BADA; flex: 0 0 auto;
}
.tp-h {
	font-family: 'Marcellus', serif; font-weight: 400;
	font-size: 21px; line-height: 1.2; color: #FFFFFF; margin: 0;
}


/* ---- own the grid explicitly ----
   Forminator emits one .forminator-row containing every .forminator-col, and
   relies on its own grid stylesheet for the col widths. That stylesheet does
   not reliably reach content rendered inside an Elementor popup, so the row
   collapses to a single flex line and every field sits side by side. These
   rules restate the grid locally so the layout cannot depend on it. */
.tp-form .forminator-row {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: flex-start;
	margin: 0 -6px !important;
}
.tp-form .forminator-col {
	flex: 0 0 100% !important;
	max-width: 100% !important;
	width: 100% !important;
	padding: 0 6px !important;
	margin-bottom: 14px !important;
	min-width: 0;
}
.tp-form .forminator-col-6 {
	flex: 0 0 50% !important;
	max-width: 50% !important;
	width: 50% !important;
}
/* section headers need no gap below and sit tight to what follows */
.tp-form .forminator-field-html { margin-bottom: 4px !important; }
.tp-form .forminator-field-html + .forminator-col { margin-top: 0 !important; }

/* labels and inputs */
.tp-form .forminator-label,
.tp-form .forminator-ui.forminator-custom-form .forminator-label {
	color: #8FAEBF !important;
	font-family: 'Manrope', sans-serif !important;
	font-size: 9.5px !important; font-weight: 600 !important;
	letter-spacing: 1.3px; text-transform: uppercase;
	margin-bottom: 7px !important; display: block;
}
.tp-form .forminator-input,
.tp-form .forminator-textarea,
.tp-form select,
.tp-form input[type="text"],
.tp-form input[type="email"],
.tp-form input[type="tel"],
.tp-form input[type="number"],
.tp-form textarea {
	background: rgba(255,255,255,.06) !important;
	border: 1px solid rgba(255,255,255,.20) !important;
	border-radius: 4px !important;
	color: #FFFFFF !important;
	font-family: 'Manrope', sans-serif !important;
	font-size: 14px !important;
	padding: 11px 13px !important;
	min-height: 0 !important; height: auto !important;
	box-shadow: none !important;
}
.tp-form textarea { min-height: 70px !important; }
.tp-form .forminator-input::placeholder,
.tp-form .forminator-textarea::placeholder { color: #7E9AAB !important; opacity: 1; }
.tp-form .forminator-input:focus,
.tp-form .forminator-textarea:focus,
.tp-form select:focus { border-color: #71BADA !important; background: rgba(255,255,255,.10) !important; }

/* Forminator's select2 skin on the dark ground */
.tp-form .forminator-select2 + .select2 .select2-selection,
.tp-form .select2-container--default .select2-selection--single {
	background: rgba(255,255,255,.06) !important;
	border: 1px solid rgba(255,255,255,.20) !important;
	border-radius: 4px !important;
	height: 44px !important;
	display: flex !important; align-items: center;
}
.tp-form .select2-selection__rendered {
	color: #FFFFFF !important;
	font-family: 'Manrope', sans-serif !important;
	font-size: 14px !important;
	padding-left: 12px !important;
}
.tp-form .select2-selection__arrow b { border-color: #71BADA transparent transparent !important; }

/* ---- chips ----
   grid goes on the inner group, and the group label spans the full row */
.tp-form .forminator-field-checkbox > .forminator-field,
.tp-form .forminator-field-radio > .forminator-field {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 8px;
	align-items: stretch;
}
.tp-form .forminator-field-checkbox > .forminator-field > .forminator-label,
.tp-form .forminator-field-radio > .forminator-field > .forminator-label,
.tp-form .forminator-field-checkbox > .forminator-field > .forminator-error-message,
.tp-form .forminator-field-radio > .forminator-field > .forminator-error-message {
	grid-column: 1 / -1;
	margin-bottom: 0 !important;
}
.tp-form label.forminator-checkbox,
.tp-form label.forminator-radio {
	display: flex !important;
	align-items: center;
	gap: 10px;
	margin: 0 !important;
	padding: 11px 13px !important;
	background: rgba(255,255,255,.05);
	border: 1px solid rgba(255,255,255,.16);
	border-radius: 4px;
	cursor: pointer;
	transition: border-color .2s ease, background .2s ease;
}
.tp-form label.forminator-checkbox:hover,
.tp-form label.forminator-radio:hover {
	border-color: rgba(113,186,218,.65);
	background: rgba(255,255,255,.09);
}
.tp-form label.forminator-checkbox:has(input:checked),
.tp-form label.forminator-radio:has(input:checked) {
	border-color: #71BADA;
	background: rgba(113,186,218,.14);
}
.tp-form .forminator-checkbox-label,
.tp-form .forminator-radio-label {
	color: #E4EEF3 !important;
	font-family: 'Manrope', sans-serif !important;
	font-size: 13.5px !important;
	line-height: 1.3 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}
.tp-form .forminator-checkbox-box,
.tp-form .forminator-radio-bullet {
	flex: 0 0 auto;
	border-color: rgba(255,255,255,.42) !important;
	background: transparent !important;
}
.tp-form label.forminator-checkbox input:checked ~ .forminator-checkbox-box,
.tp-form label.forminator-radio input:checked ~ .forminator-radio-bullet {
	background: #71BADA !important;
	border-color: #71BADA !important;
}

/* submit */
.tp-form .forminator-button-submit,
.tp-form button[type="submit"] {
	background: #FFFFFF !important;
	color: #0B2233 !important;
	border: 0 !important; border-radius: 4px !important;
	width: 100%;
	padding: 16px 32px !important;
	font-family: 'Manrope', sans-serif !important;
	font-size: 11px !important; font-weight: 700 !important;
	letter-spacing: 1.8px; text-transform: uppercase;
	margin-top: 6px;
	transition: background .25s ease;
}
.tp-form .forminator-button-submit:hover,
.tp-form button[type="submit"]:hover { background: #71BADA !important; }
.tp-form .forminator-required { color: #71BADA !important; }
.tp-form .forminator-error-message { color: #FFC9C9 !important; font-size: 12px !important; }
.tp-form .forminator-response-message { color: #FFFFFF !important; font-family: 'Manrope', sans-serif !important; }
.tp-form .forminator-response-message p { color: #FFFFFF !important; }

@media (max-width: 767px) {
	.tp-form { max-height: none; }
	.tp-form .forminator-col,
	.tp-form .forminator-col-6 { flex: 0 0 100% !important; max-width: 100% !important; width: 100% !important; }
	.tp-form .forminator-col { margin-bottom: 12px !important; }
	.tp-form .forminator-field-checkbox > .forminator-field,
	.tp-form .forminator-field-radio > .forminator-field { grid-template-columns: minmax(0, 1fr); }
	.tp-h { font-size: 19px; }
}/* End custom CSS */