/* Coconut: query forms, header "Any Query?" dropdown and social icons, homepage search tabs, Exclusive Offers,
   the gallery, visa pages, the Facebook & YouTube box and the footer. */

/* 0. Logo: the full-colour Coconut Holiday logo, kept inside the header bar. The theme's teal shape behind the logo
   is white, so the logo's blue and green read clearly. */
.header-logo img { max-height: 80px; width: auto; }
.sticky-wrapper.sticky .header-logo img { max-height: 64px; }
.th-header .logo-bg { background-color: #fff !important; }

/* 1. Query forms (Contact Form 7). A white card with the logo's colours: a green → blue → sun ribbon on top and a
   soft wave at the bottom. */
.wpcf7 form.coconut-query-form {
	position: relative;
	overflow: hidden;
	padding: 38px 30px 30px;
	border-radius: 24px;
	background: #fff;
	box-shadow: 0 0 0 1px #E3EEF2, 0 24px 60px rgba(0, 120, 170, .12);
}
.wpcf7 form.coconut-query-form::before {
	content: "";
	position: absolute;
	inset: 0 0 auto;
	height: 7px;
	background: linear-gradient(90deg, #2FA84F 0%, #8BC53F 30%, #00A3E0 65%, #F7A21B 100%);
}
.wpcf7 form.coconut-query-form::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 110px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 110' preserveAspectRatio='none'%3E%3Cpath d='M0 70 C200 20 400 110 600 60 S1000 10 1200 55 V110 H0Z' fill='%2300A3E0' fill-opacity='.07'/%3E%3Cpath d='M0 90 C250 50 450 120 700 80 S1050 50 1200 80 V110 H0Z' fill='%232FA84F' fill-opacity='.07'/%3E%3C/svg%3E") no-repeat bottom / 100% 100%;
	pointer-events: none;
}
.wpcf7 form.coconut-query-form > * { position: relative; z-index: 1; }
.coconut-query-form .row { --bs-gutter-x: 22px; }
.coconut-query-form .form-group { margin-bottom: 16px; }
.coconut-query-form .coconut-field { display: block; margin: 0; }
.coconut-query-form .coconut-label { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 500; color: var(--title-color); }
.coconut-query-form input[type="text"],
.coconut-query-form input[type="email"],
.coconut-query-form input[type="tel"],
.coconut-query-form input[type="date"],
.coconut-query-form input[type="time"],
.coconut-query-form input[type="number"],
.coconut-query-form select,
.coconut-query-form textarea {
	position: static;
	z-index: auto;
	width: 100%;
	height: 46px;
	padding: 0 14px;
	border: 1px solid #E1EBEE;
	border-radius: 10px;
	background-color: #F6FAFB;
	font-size: 14px;
	line-height: 46px;
	color: var(--title-color);
}
.coconut-query-form textarea { height: 110px; padding: 10px 14px; line-height: 1.5; resize: vertical; }
.coconut-query-form input:focus,
.coconut-query-form select:focus,
.coconut-query-form textarea:focus { border-color: #00A3E0; background-color: #fff; outline: none; box-shadow: 0 0 0 3px rgba(0, 163, 224, .15); }
.coconut-query-form .wpcf7-form-control-wrap { display: block; }

/* − / + counters (coconut-query.js adds the buttons) */
.coconut-counter { display: flex; align-items: center; gap: 8px; }
.coconut-counter .wpcf7-form-control-wrap { flex: 1; }
.coconut-counter input[type="number"] { text-align: center; -moz-appearance: textfield; }
.coconut-counter input::-webkit-inner-spin-button { opacity: 1; }
.coconut-counter button { flex: 0 0 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; background: linear-gradient(135deg, #2FA84F, #00A3E0); color: #fff; font-size: 18px; line-height: 1; }
.coconut-counter button:hover { background: var(--title-color); }

/* Choice groups are [checkbox ... exclusive] (one or none; Contact Form 7 makes radio groups required).
   The theme hides checkbox inputs and draws its own box next to a following label. */
.coconut-query-form .wpcf7-checkbox { display: flex; flex-wrap: wrap; gap: 6px 20px; min-height: 46px; align-items: center; }
.coconut-query-form .wpcf7-list-item { margin: 0; }
.coconut-query-form .wpcf7-list-item label { display: inline-flex; align-items: center; gap: 7px; margin: 0; font-size: 14px; cursor: pointer; }
.coconut-query-form .wpcf7-list-item label::before { display: none; }
.coconut-query-form input[type="checkbox"] { position: static; display: inline-block; visibility: visible; opacity: 1; width: 16px; height: 16px; margin: 0; accent-color: var(--theme-color); }

.coconut-query-form .coconut-submit { margin-top: 4px; text-align: center; }
.coconut-query-form .wpcf7-submit { min-width: 190px; border-radius: 40px; background: linear-gradient(90deg, #2FA84F, #00A3E0); box-shadow: 0 10px 24px rgba(0, 163, 224, .3); }
.coconut-query-form .wpcf7-submit:hover { background: linear-gradient(90deg, #00A3E0, #2FA84F); }
.coconut-query-form .wpcf7-spinner { position: absolute; margin: 16px 0 0 10px; }
.coconut-query-form .wpcf7-response-output { margin: 16px 0 0 !important; border-radius: 8px; font-size: 14px; }
.coconut-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* 2. Header "Any Query?" dropdown */
.header-button.coconut-has-query { position: relative; }
.coconut-query-dropdown {
	position: absolute;
	top: 100%;
	right: 0;
	z-index: 99;
	min-width: 230px;
	margin: 12px 0 0;
	padding: 10px 0;
	list-style: none;
	text-align: left;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(17, 61, 72, .16);
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity .25s, transform .25s, visibility .25s;
}
.coconut-query-dropdown::before { content: ""; position: absolute; top: -12px; left: 0; right: 0; height: 12px; }
.header-button.coconut-has-query:hover .coconut-query-dropdown,
.header-button.coconut-has-query:focus-within .coconut-query-dropdown,
.header-button.is-open .coconut-query-dropdown { opacity: 1; visibility: visible; transform: none; }
.coconut-query-dropdown li { margin: 0; padding: 0; }
.coconut-query-dropdown a { display: block; padding: 9px 22px; font-size: 15px; font-weight: 500; color: var(--title-color); }
.coconut-query-dropdown a:hover { color: var(--theme-color); background: var(--smoke-color); }

/* 3. Homepage search tabs (nine: they share the row and scroll sideways on phones) */
.coconut-search-tabs__nav { display: flex; gap: 0; padding: 0 12px; }
.coconut-search-tabs__tab {
	flex: 1 1 0;
	min-width: 0;
	padding: 10px 6px;
	border: 2px solid var(--theme-color);
	border-bottom: 0;
	border-radius: 0;
	background: #fff;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.2;
	white-space: nowrap;
	color: var(--title-color);
	transition: background .2s, color .2s;
}
.coconut-search-tabs__tab + .coconut-search-tabs__tab { border-left: 0; }
.coconut-search-tabs__tab:first-child { border-top-left-radius: 12px; }
.coconut-search-tabs__tab:last-child { border-top-right-radius: 12px; }
.coconut-search-tabs__tab:hover { color: var(--theme-color); }
.coconut-search-tabs__tab.is-active { background: var(--theme-color); color: #fff; }
.coconut-search-tabs__panel { position: relative; padding: 0 12px; }
/* The tabs and the box under them are one piece: the Package search sits right under the tabs, square on top. */
.elementor-widget-shortcode:has(.coconut-search-tabs) + .elementor-widget-wptravelengine-trip-search .wpte-trip-sfilter-wrapper { top: 0 !important; border-top-left-radius: 0 !important; border-top-right-radius: 0 !important; }
.coconut-visa-search,
.coconut-tab-box { display: flex; align-items: center; gap: 16px; padding: 21px 32px; border: 2px solid var(--theme-color); background: #fff; border-radius: 0 0 16px 16px; box-shadow: 0 20px 20px rgba(204, 204, 204, .25); }
.coconut-visa-search select { flex: 1; height: 52px; padding: 0 16px; border: 1px solid #E1E4E5; border-radius: 8px; background-color: #fff; font-size: 16px; color: var(--title-color); }
.coconut-search-tabs .wpcf7 form.coconut-query-form { padding: 24px 24px 8px; border: 2px solid var(--theme-color); border-radius: 0 0 16px 16px; background: #fff; box-shadow: 0 20px 20px rgba(204, 204, 204, .25); }
.coconut-search-tabs .wpcf7 form.coconut-query-form::before,
.coconut-search-tabs .wpcf7 form.coconut-query-form::after { display: none; }
.coconut-search-tabs .coconut-query-form .coconut-submit { padding-bottom: 16px; }
/* Package tab: countries only — WP Travel Engine lists the cities of a country as a nested list */
.elementor-widget-wptravelengine-trip-search .wpte__select-options ul ul { display: none; }

/* Umrah tab */
.coconut-tab-box { flex-wrap: wrap; justify-content: space-between; }
.coconut-tab-box__text { flex: 1 1 320px; margin: 0; font-size: 16px; color: var(--title-color); }
.coconut-tab-box__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.coconut-umrah__list { display: grid; flex: 1 1 100%; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 16px; }
.coconut-mini-trip { display: flex; align-items: center; gap: 14px; padding: 10px; border: 1px solid #E1E4E5; border-radius: 12px; color: inherit; transition: border-color .2s; }
.coconut-mini-trip:hover { border-color: var(--theme-color); }
.coconut-mini-trip img { flex: none; width: 86px; height: 70px; border-radius: 8px; object-fit: cover; }
.coconut-mini-trip__body { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.coconut-mini-trip__title { font-weight: 600; line-height: 1.3; color: var(--title-color); }
.coconut-mini-trip__meta { font-size: 13px; }
.coconut-mini-trip__price { font-weight: 600; color: var(--theme-color); }
.coconut-mini-trip__price del { margin-left: 6px; font-weight: 400; color: var(--body-color); }

@media (max-width: 991px) {
	.coconut-search-tabs__nav { overflow-x: auto; scrollbar-width: none; }
	.coconut-search-tabs__nav::-webkit-scrollbar { display: none; }
	.coconut-search-tabs__tab { flex: 0 0 auto; padding: 9px 16px; font-size: 14px; }
	.coconut-search-tabs__tab:last-child { border-top-right-radius: 0; }
}
@media (max-width: 767px) {
	.coconut-visa-search { flex-direction: column; align-items: stretch; padding: 18px; }
	.coconut-tab-box { padding: 18px; }
}

/* 4. Exclusive Offers */
.coconut-offers { padding: 24px 28px 28px; border-radius: 16px; background: var(--smoke-color); }
.coconut-offers__title { margin: 0 0 16px; font-size: 26px; }
.coconut-offers__slider { position: relative; }
.coconut-offers__card { display: block; width: 100%; padding: 0; border: 0; overflow: hidden; border-radius: 12px; background: none; cursor: pointer; }
.coconut-offers__card img { display: block; width: 100%; aspect-ratio: 600 / 320; object-fit: cover; transition: transform .4s; }
.coconut-offers__card:hover img { transform: scale(1.04); }
.coconut-offers .slider-arrow {
	position: absolute;
	top: 50%;
	z-index: 3;
	display: grid;
	place-items: center;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: #fff;
	color: var(--title-color);
	box-shadow: 0 4px 14px rgba(0, 0, 0, .15);
	transform: none;
}
.coconut-offers .slider-arrow:hover { background: var(--theme-color); color: #fff; }
.coconut-offers .slider-prev { left: 10px; right: auto; }
.coconut-offers .slider-next { right: 10px; left: auto; }

/* 5. Gallery: albums are taped-on photo prints, slightly tilted; album photos sit in white frames. */
.coconut-gallery .row > div:nth-child(3n+1) { --tilt: -1.6deg; }
.coconut-gallery .row > div:nth-child(3n+2) { --tilt: 1.2deg; }
.coconut-gallery .row > div:nth-child(3n) { --tilt: -.6deg; }
.coconut-album { position: relative; display: block; padding: 14px 14px 0; border-radius: 6px; background: #fff; box-shadow: 0 14px 35px rgba(17, 61, 72, .14); color: inherit; transform: rotate(var(--tilt, 0deg)); transition: transform .35s, box-shadow .35s; }
.coconut-album::before { content: ""; position: absolute; top: -12px; left: 50%; z-index: 2; width: 92px; height: 26px; margin-left: -46px; background: rgba(247, 162, 27, .45); transform: rotate(calc(var(--tilt, 0deg) * -2)); box-shadow: 0 2px 4px rgba(0, 0, 0, .06); }
.coconut-album:hover { transform: rotate(0) translateY(-6px); box-shadow: 0 22px 45px rgba(17, 61, 72, .2); }
.coconut-album__img { overflow: hidden; border-radius: 3px; }
.coconut-album__img img { display: block; width: 100%; aspect-ratio: 424 / 300; object-fit: cover; transition: transform .5s; }
.coconut-album:hover .coconut-album__img img { transform: scale(1.05); }
.coconut-album__body { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 6px 20px; }
.coconut-album__title { margin: 0; font-size: 20px; transition: color .2s; }
.coconut-album:hover .coconut-album__title { color: #00A3E0; }
.coconut-album__count { flex: none; padding: 4px 12px; border-radius: 20px; background: rgba(47, 168, 79, .12); font-size: 13px; font-weight: 600; color: #2FA84F; }
.coconut-album-intro { max-width: 860px; margin: 0 auto 40px; text-align: center; }
.coconut-gallery .row.gy-4 { row-gap: 34px; }
.coconut-photo { position: relative; display: block; padding: 10px; border-radius: 6px; background: #fff; box-shadow: 0 10px 26px rgba(17, 61, 72, .13); transform: rotate(calc(var(--tilt, 0deg) * .6)); transition: transform .35s, box-shadow .35s; }
.coconut-photo img { display: block; width: 100%; aspect-ratio: 4 / 3; border-radius: 3px; object-fit: cover; }
.coconut-photo::after { content: ""; position: absolute; inset: 10px; border-radius: 3px; background: linear-gradient(135deg, rgba(47, 168, 79, .45), rgba(0, 163, 224, .45)); opacity: 0; transition: opacity .3s; }
.coconut-photo i { position: absolute; top: 50%; left: 50%; z-index: 2; display: grid; place-items: center; width: 50px; height: 50px; border-radius: 50%; background: #fff; color: #00A3E0; opacity: 0; transform: translate(-50%, -50%) scale(.6); transition: opacity .3s, transform .3s; }
.coconut-photo:hover { transform: rotate(0) scale(1.03); box-shadow: 0 18px 38px rgba(17, 61, 72, .2); }
.coconut-photo:hover::after { opacity: 1; }
.coconut-photo:hover i { opacity: 1; transform: translate(-50%, -50%) scale(1); }
.coconut-gallery .col-xl-3:nth-child(4n+1) { --tilt: -1.4deg; }
.coconut-gallery .col-xl-3:nth-child(4n+2) { --tilt: 1deg; }
.coconut-gallery .col-xl-3:nth-child(4n+3) { --tilt: -.5deg; }
.coconut-gallery .col-xl-3:nth-child(4n) { --tilt: 1.3deg; }

/* Exclusive Offers popup */
.coconut-popup { width: min(640px, calc(100% - 32px)); max-height: calc(100% - 32px); padding: 0; border: 0; border-radius: 16px; overflow: auto; }
.coconut-popup::backdrop { background: rgba(17, 61, 72, .6); }
.coconut-popup__image { display: block; width: 100%; max-height: 380px; object-fit: cover; }
.coconut-popup__body { padding: 24px 28px 28px; }
.coconut-popup__title { margin: 0 0 10px; font-size: 24px; }
.coconut-popup__details { margin-bottom: 20px; white-space: pre-line; }
.coconut-popup__details:empty { display: none; }
.coconut-popup__close { position: absolute; top: 12px; right: 12px; z-index: 2; display: grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; background: #fff; color: var(--title-color); box-shadow: 0 4px 14px rgba(0, 0, 0, .2); }
.coconut-popup__close:hover { background: var(--theme-color); color: #fff; }

/* 6. Header social icons (in front of "Any Query?") and the footer's */
.header-button { display: flex; align-items: center; gap: 18px; }
.coconut-social { display: flex; align-items: center; gap: 8px; }
.coconut-social a { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #E1E4E5; border-radius: 50%; font-size: 15px; color: var(--title-color); transition: background .2s, color .2s, border-color .2s; }
.coconut-social a:hover { border-color: var(--theme-color); background: var(--theme-color); color: #fff; }
@media (max-width: 1399px) { .coconut-header-social a { width: 32px; height: 32px; font-size: 13px; } .coconut-header-social { gap: 5px; } }

/* 7. Facebook & YouTube: one card per page (name tab on top, Facebook and YouTube side by side) */
.coconut-social-feed__card { position: relative; height: 100%; padding: 46px 22px 24px; border-radius: 16px; background: #fff; box-shadow: 0 10px 30px rgba(17, 61, 72, .08); }
.coconut-social-feed__name { position: absolute; top: 0; left: 50%; margin: 0; padding: 10px 28px; border-radius: 12px; background: #fff; box-shadow: 0 8px 22px rgba(17, 61, 72, .12); font-size: 22px; letter-spacing: .02em; text-transform: uppercase; white-space: nowrap; color: var(--title-color); transform: translate(-50%, -50%); }
.coconut-social-feed__pair { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.coconut-social-feed__label { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 40px; margin-bottom: 10px; font-size: 14px; font-weight: 600; line-height: 1.3; text-align: center; color: var(--title-color); }
.coconut-social-feed__label .fa-facebook { color: #1877F2; }
.coconut-social-feed__label .fa-youtube { color: #FF0000; }
.coconut-social-feed__frame { overflow: hidden; border-radius: 12px; background: #F6FAFB; }
.coconut-social-feed__frame iframe { display: block; width: 100%; height: 320px; border: 0; }
.coconut-social-feed__subscribe { background: #FF0000; }
@media (max-width: 575px) { .coconut-social-feed__pair { grid-template-columns: 1fr; } .coconut-social-feed__name { font-size: 18px; } }

/* Palm leaves hanging at the page's right edge beside the search box, behind the offers box (wide screens only) */
.elementor-element-c0c0ff1 { overflow-x: clip; overflow-y: visible; }
.coconut-offers { position: relative; }
.coconut-offers::before { content: ""; position: absolute; top: -150px; right: calc((100% - 100vw) / 2 + 8px); z-index: -1; width: 250px; height: 215px; background: url("../img/coconut-palm-leaves.png") no-repeat right top / contain; pointer-events: none; }
@media (max-width: 1399px) { .coconut-offers::before { width: 170px; height: 146px; top: -110px; } }
@media (max-width: 1199px) { .coconut-offers::before { display: none; } }

.coconut-social-feed__channel { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; height: 320px; padding: 20px; text-align: center; font-weight: 600; color: var(--title-color); }
.coconut-social-feed__channel .fa-youtube { font-size: 64px; color: #FF0000; }
.coconut-social-feed__channel .th-btn { width: auto; }

/* 8. Footer */
/* Coconut palette: the site's dark teal (--title-color) with the theme teal (--theme-color) as accent. */
.coconut-footer-band { background: var(--title-color, #113D48) !important; }
.coconut-footer { padding: 70px 0 10px; color: #fff; }
.coconut-footer__title { display: flex; align-items: center; gap: 8px; margin: 0 0 10px; font-size: 20px; color: #fff; }
.coconut-footer__title i { color: var(--theme-color, #1CA8CB); }
.coconut-footer__address { margin: 0 0 26px; color: rgba(255, 255, 255, .85); }
.coconut-footer__phones { margin: 0 0 14px 28px; font-size: 14px; line-height: 1.6; color: rgba(255, 255, 255, .85); }
.coconut-footer__phones strong { color: #fff; }
.coconut-footer__phones strong { display: block; font-weight: 600; }
.coconut-footer__heading { position: relative; margin: 0 0 30px; padding-bottom: 14px; font-size: 20px; color: #fff; }
.coconut-footer__heading::after { content: ""; position: absolute; left: 0; bottom: 0; width: 40px; height: 3px; border-radius: 3px; background: var(--theme-color, #1CA8CB); }
.coconut-footer__heading--social { margin: 30px 0 16px; padding: 0; }
.coconut-footer__heading--social::after { display: none; }
.coconut-footer__links { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 20px; margin: 0; padding: 0; list-style: none; }
.coconut-footer__links a { color: rgba(255, 255, 255, .85); }
.coconut-footer__links a:hover { color: var(--theme-color, #1CA8CB); }
.coconut-footer__social a { border: 0; background: var(--theme-color, #1CA8CB); color: #fff; }
.coconut-footer__social a:hover { background: #fff; color: var(--title-color, #113D48); }
.coconut-footer__cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.coconut-footer__cards span { display: grid; place-items: center; height: 54px; padding: 6px; border-radius: 6px; background: #fff; }
.coconut-footer__cards img { max-width: 100%; max-height: 42px; object-fit: contain; }
/* Bottom edge: the copyright bar sits on the green coconut wave rising out of the footer */
.elementor-element.coconut-footer-band ~ .copyright-wrap {
	padding-top: max(40px, calc(28.5vw - 70px)) !important;
	background: linear-gradient(to bottom, var(--title-color, #113D48) 0, rgba(17, 61, 72, 0) 12%), url("../img/coconut-bottom-edge.png") no-repeat center bottom / 100% auto, var(--title-color, #113D48) !important;
}
.elementor-element.coconut-footer-band ~ .copyright-wrap::before { display: none !important; }

/* 9. Visa pages */
.coconut-visa-card { display: flex; align-items: center; gap: 16px; padding: 18px 20px; border: 1px solid #E1E4E5; border-radius: 14px; background: #fff; color: inherit; transition: border-color .2s, box-shadow .2s; }
.coconut-visa-card:hover { border-color: var(--theme-color); box-shadow: 0 10px 30px rgba(17, 61, 72, .08); }
.coconut-visa-card__flag { font-size: 40px; line-height: 1; }
.coconut-visa-card__body { display: flex; flex: 1; flex-direction: column; gap: 2px; }
.coconut-visa-card__name { font-size: 18px; font-weight: 600; color: var(--title-color); }
.coconut-visa-card__fee { font-size: 14px; }
.coconut-visa-card i { color: var(--theme-color); }
.coconut-visa__types { display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 24px; }
.coconut-visa__type { padding: 10px 24px; border: 2px solid var(--theme-color); border-radius: 8px; background: #fff; font-weight: 600; color: var(--title-color); }
.coconut-visa__type.is-active { background: var(--theme-color); color: #fff; }
.coconut-visa__main { padding: 12px; border: 2px solid var(--theme-color); border-radius: 12px; background: #fff; }
.coconut-visa__main img { display: block; width: 100%; height: auto; }
.coconut-visa__main a + a { display: block; margin-top: 12px; }
.coconut-visa__side { position: sticky; top: 110px; display: flex; flex-direction: column; gap: 16px; }
.coconut-visa__side .th-btn { width: 100%; }
.coconut-visa__box { padding: 14px; border: 2px solid var(--theme-color); border-radius: 12px; background: #fff; }
.coconut-visa__box-title { margin: 0 0 10px; padding: 8px; border-radius: 6px; background: var(--title-color); font-size: 16px; text-align: center; color: #fff; }
.coconut-visa__box p { margin: 0 0 6px; }
.coconut-visa__box p:last-child { margin: 0; }

/* Header: light blue (#D4F8FF) instead of white */
.th-header .sticky-wrapper,
.th-header .menu-area,
.th-header.header-layout1 .menu-area,
.th-header .logo-bg { background-color: #D4F8FF !important; }

/* Hero: 110px less empty space under the text, so the search box sits higher */
@media (min-width: 992px) { .hero-style1 { padding-bottom: 150px; } }

/* Visa page */
.coconut-visa__switch { display: flex; gap: 12px; max-width: 520px; margin: 0 auto 26px; }
.coconut-visa__select { flex: 1; min-width: 0; height: 52px; padding: 0 16px; border: 2px solid var(--theme-color); border-radius: 10px; background-color: #fff; font-size: 16px; font-weight: 600; color: var(--title-color); }
.coconut-visa__heading { margin: 0 0 24px; font-size: 30px; text-align: center; }
.coconut-visa__a4 { max-width: 794px; margin: 0 auto 26px; }
.coconut-visa__sheet { padding: 12px; border: 2px solid var(--theme-color); border-radius: 12px; background: #fff; box-shadow: 0 14px 35px rgba(17, 61, 72, .1); }
.coconut-visa__sheet a { display: block; }
.coconut-visa__sheet img { display: block; width: 100%; height: auto; aspect-ratio: 210 / 297; object-fit: contain; background: #fff; }
.coconut-visa__download-img { display: flex; width: fit-content; margin: 14px auto 0; gap: 8px; }
.coconut-visa__videos, .coconut-visa__faqs { margin-top: 34px; }
.coconut-visa__section-title { margin: 0 0 16px; padding: 10px 16px; border-radius: 8px; background: var(--title-color); font-size: 18px; text-align: center; color: #fff; }
.coconut-visa__video-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.coconut-visa__video { overflow: hidden; border-radius: 10px; background: #000; }
.coconut-visa__video iframe { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; }
.coconut-visa__hint { padding: 22px; border: 2px dashed #9CB9C2; border-radius: 10px; font-size: 14px; text-align: center; color: #5C7780; }
.coconut-visa__faq-tabs { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 14px; }
.coconut-visa__faq-tab { padding: 10px 22px; border: 2px solid var(--theme-color); border-radius: 8px; background: #fff; font-weight: 600; color: var(--title-color); }
.coconut-visa__faq-tab.is-active { background: var(--theme-color); color: #fff; }
.coconut-visa__faq { margin-bottom: 10px; border: 1px solid #D8E7EB; border-radius: 10px; background: #fff; }
.coconut-visa__faq summary { padding: 14px 18px; font-weight: 600; cursor: pointer; color: var(--title-color); }
.coconut-visa__faq[open] summary { color: var(--theme-color); }
.coconut-visa__faq div { padding: 0 18px 16px; }
@media (max-width: 767px) { .coconut-visa__video-grid { grid-template-columns: 1fr 1fr; } .coconut-visa__switch { flex-direction: column; } }
@media (max-width: 479px) { .coconut-visa__video-grid { grid-template-columns: 1fr; } }

/* Visa application popup (the form is the same card as the query forms) */
.coconut-apply { width: min(600px, calc(100% - 24px)); background: transparent; overflow: visible; }
.coconut-apply .coconut-popup__close { top: -14px; right: -6px; }
.coconut-apply__body { max-height: calc(100vh - 40px); overflow: auto; border-radius: 24px; }
.coconut-apply .wpcf7 form.coconut-query-form { margin: 0; }
.coconut-apply .coconut-apply__title { margin: 0 0 6px; font-size: 26px; text-align: center; }
.coconut-apply .coconut-apply__intro { margin: 0 0 22px; font-size: 14px; text-align: center; }
