/* Yacht Fishing Abu Dhabi – @author Mohammed Zaki */
/* ---------- fish images ---------- */
.yfa-sp { overflow: hidden; }
.yfa-sp-img { width: calc(100% + 40px); max-width: none; margin: -20px -20px 4px; aspect-ratio: 3 / 2; object-fit: cover; display: block; background: #e3eef8; }
.yfa-fish { flex-direction: column; padding: 0; overflow: hidden; gap: 0; transition: .25s; }
.yfa-fish:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(11,35,64,.1); }
.yfa-fish-img { width: 100%; aspect-ratio: 3 / 2; object-fit: cover; display: block; background: #e3eef8; }
.yfa-fish > div { padding: 14px 18px 18px; }
.yfa-note a { color: var(--yfa-sea); font-weight: 700; }

/* ---------- premium header ---------- */
.yfa-topbar { background: #061629; color: rgba(255,255,255,.78); font-size: 12.5px; }
.yfa-topbar .yfa-wrap { display: flex; justify-content: space-between; align-items: center; height: 36px; gap: 14px; }
.yfa-topbar b { color: #fff; font-weight: 600; }
.yfa-topbar i { font-style: normal; color: var(--yfa-gold); padding: 0 8px; }
.yfa-tb-tabby { font-style: italic; font-weight: 800; background: #3effc0; color: #111; padding: 1px 7px; border-radius: 999px; font-size: 11px; }
.yfa-tb-right { display: flex; align-items: center; gap: 16px; white-space: nowrap; }
.yfa-tb-right a { color: #fff; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; font-weight: 600; }
.yfa-tb-right svg { width: 14px; height: 14px; fill: none; stroke: var(--yfa-gold); stroke-width: 2; }
.yfa-tb-open:before { content: ""; display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: #22c55e; margin-right: 6px; box-shadow: 0 0 0 3px rgba(34,197,94,.25); }
@media (max-width: 900px) { .yfa-tb-left { display: none; } .yfa-topbar .yfa-wrap { justify-content: center; } }
.yfa-header { background: rgba(11,35,64,.96); backdrop-filter: saturate(140%) blur(8px); border-bottom: 1px solid rgba(197,160,91,.25); box-shadow: 0 6px 24px rgba(0,0,0,.15); }
.yfa-nav { height: 76px; }
.yfa-menu { gap: 24px; }
.yfa-menu a { position: relative; padding: 6px 0; letter-spacing: .2px; }
.yfa-menu a:after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: var(--yfa-gold); transform: scaleX(0); transform-origin: left; transition: transform .25s; }
.yfa-menu a:hover:after, .yfa-menu .current-menu-item a:after { transform: scaleX(1); }
.yfa-menu a:hover { color: #fff; }
.yfa-head-cta { display: flex; align-items: center; gap: 10px; }
.yfa-head-call { width: 42px; height: 42px; border-radius: 50%; border: 1px solid rgba(197,160,91,.5); display: grid; place-items: center; transition: .2s; }
.yfa-head-call svg { width: 18px; height: 18px; fill: none; stroke: var(--yfa-gold); stroke-width: 2; }
.yfa-head-call:hover { background: rgba(197,160,91,.15); }
.yfa-head-book { display: inline-flex; align-items: center; gap: 8px; padding: 12px 20px; border-radius: 999px; background: linear-gradient(135deg, #d9b673, var(--yfa-gold)); color: #1b1407; font-weight: 700; font-size: 14px; text-decoration: none; box-shadow: 0 6px 18px rgba(197,160,91,.35); transition: .2s; white-space: nowrap; }
.yfa-head-book:hover { transform: translateY(-1px); color: #1b1407; box-shadow: 0 10px 24px rgba(197,160,91,.45); }
.yfa-head-book svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; }
.yfa-mob-cta { display: none; }
@media (max-width: 1100px) { .yfa-menu { gap: 16px; } .yfa-menu a { font-size: 13px; } }
@media (max-width: 960px) {
	.yfa-head-cta { display: none; }
	.yfa-nav-menu { top: 76px; border-top: 1px solid rgba(197,160,91,.25); }
	.yfa-mob-cta { display: flex; gap: 10px; margin-top: 14px; flex-wrap: wrap; }
}

/* ---------- premium footer ---------- */
.yfa-footer { background: #061629; padding: 0 0 22px; position: relative; }
.yfa-fcta { padding: 60px 0 0; background: linear-gradient(180deg, #fff 0 50%, #061629 50%); }
.yfa-fcta-box { display: grid; grid-template-columns: 1.3fr 1fr; gap: 30px; align-items: center; background: linear-gradient(135deg, var(--yfa-sea), var(--yfa-navy)); border: 1px solid rgba(197,160,91,.35); border-radius: 24px; padding: 38px 40px; box-shadow: 0 24px 60px rgba(0,0,0,.25); position: relative; overflow: hidden; }
.yfa-fcta-box:after { content: ""; position: absolute; right: -80px; top: -80px; width: 260px; height: 260px; border-radius: 50%; background: radial-gradient(circle, rgba(197,160,91,.25), transparent 70%); pointer-events: none; }
@media (max-width: 860px) { .yfa-fcta-box { grid-template-columns: 1fr; padding: 28px 22px; } }
.yfa-fcta-kicker { font-size: 11px; letter-spacing: 2.5px; text-transform: uppercase; color: var(--yfa-gold); font-weight: 700; }
.yfa-fcta h2 { font-family: var(--yfa-serif); font-weight: 600; color: #fff; font-size: clamp(26px, 3.4vw, 38px); margin: 6px 0 8px; }
.yfa-fcta p { color: rgba(255,255,255,.78); margin: 0 0 20px; }
.yfa-fcta-stats { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 12px; position: relative; z-index: 1; }
.yfa-fcta-stats li { background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.12); border-radius: 14px; padding: 14px 16px; margin: 0; }
.yfa-fcta-stats b { display: block; font-family: var(--yfa-serif); font-size: 24px; color: #fff; }
.yfa-fcta-stats span { font-size: 12px; color: rgba(255,255,255,.65); letter-spacing: .4px; }
.yfa-footer .yfa-fgrid { grid-template-columns: 1.5fr 1fr 1fr 1fr; padding-top: 50px; }
@media (max-width: 900px) { .yfa-footer .yfa-fgrid { grid-template-columns: 1fr 1fr; } .yfa-fbrand { grid-column: 1 / -1; } }
@media (max-width: 520px) { .yfa-footer .yfa-fgrid { grid-template-columns: 1fr; } }
.yfa-footer h4 { color: var(--yfa-gold); font-size: 12px; letter-spacing: 2px; text-transform: uppercase; margin: 0 0 14px; }
.yfa-fbrand p { margin: 14px 0; line-height: 1.7; max-width: 380px; }
.yfa-fbadges { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.yfa-fbadges li { font-size: 12px; border: 1px solid rgba(197,160,91,.35); color: #e9d8b0; padding: 5px 10px; border-radius: 999px; margin: 0; }
.yfa-fnote { display: block; padding: 3px 0; }
.yfa-fpay { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 36px; padding: 22px 0; border-top: 1px solid rgba(255,255,255,.08); border-bottom: 1px solid rgba(255,255,255,.08); }
.yfa-fpay h4 { margin-bottom: 4px; }
.yfa-fpay p { margin: 0; font-size: 13px; max-width: 520px; }
.yfa-paylogos { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; flex-wrap: wrap; }
.yfa-paylogos li { height: 34px; min-width: 58px; padding: 0 12px; border-radius: 8px; background: #fff; color: #111; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 13px; margin: 0; }
.yfa-paylogos .visa { color: #1a1f71; font-style: italic; letter-spacing: .5px; font-size: 15px; }
.yfa-paylogos .mc i { width: 18px; height: 18px; border-radius: 50%; display: block; background: #eb001b; }
.yfa-paylogos .mc i + i { background: #f79e1b; margin-left: -7px; opacity: .9; }
.yfa-paylogos .apple { background: #000; color: #fff; font-weight: 600; }
.yfa-paylogos .tabby { background: #3effc0; font-style: italic; }
.yfa-paylogos .tamara { background: linear-gradient(90deg, #f6a1b3, #c8a2f5 55%, #9fc3ff); color: #fff; }
.yfa-footer .yfa-copy { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 10px; border-top: 0; margin-top: 0; padding-top: 18px; }
.yfa-copy-links { display: flex; gap: 16px; }
.yfa-footer .yfa-copy-links a { display: inline; padding: 0; }

/* ---------- contact form (Contact Form 7) ---------- */
.wpcf7 form { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; background: #fff; border: 1px solid var(--yfa-line); border-radius: 18px; padding: 24px; box-shadow: 0 10px 30px rgba(11,35,64,.06); }
.wpcf7 form > p { margin: 0; }
.wpcf7 form .yfa-full { grid-column: 1 / -1; }
@media (max-width: 620px) { .wpcf7 form { grid-template-columns: 1fr; } }
.wpcf7 label { font-size: 13px; font-weight: 600; color: var(--yfa-navy); display: block; }
.wpcf7 input[type=text], .wpcf7 input[type=email], .wpcf7 input[type=tel], .wpcf7 input[type=date], .wpcf7 input[type=number], .wpcf7 select, .wpcf7 textarea { width: 100%; margin-top: 6px; padding: 12px 14px; border: 1px solid #d5e0ea; border-radius: 10px; font-size: 15px; background: #fbfdff; }
.wpcf7 textarea { height: 110px; }
.wpcf7 input[type=submit] { background: linear-gradient(135deg, #d9b673, var(--yfa-gold)); color: #1b1407; border: 0; border-radius: 999px; padding: 14px 28px; font-weight: 700; font-size: 15px; cursor: pointer; }
.wpcf7 .wpcf7-response-output { grid-column: 1 / -1; margin: 0; border-radius: 10px; }

/* footer CTA buttons keep button styling */
.yfa-footer .yfa-fcta .yfa-btn { display: inline-flex; padding: 13px 22px; }
.yfa-footer .yfa-fcta .yfa-btn-wa { color: #fff; }
.yfa-footer .yfa-fcta .yfa-btn-ghost { color: #fff; border: 2px solid rgba(255,255,255,.7); }
.yfa-footer .yfa-fcta .yfa-btn-ghost:hover { background: rgba(255,255,255,.12); color: #fff; }

/* ---- Language switcher (Polylang) ---- */
.yfa-langs { display: inline-flex; align-items: center; gap: 2px; border: 1px solid rgba(197,160,91,.45); border-radius: 999px; padding: 2px; }
.yfa-langs a { color: rgba(255,255,255,.8) !important; font-weight: 600; font-size: 11.5px; padding: 3px 9px; border-radius: 999px; text-decoration: none; line-height: 1.2; }
.yfa-langs a:hover { color: #fff !important; }
.yfa-langs a.on { background: var(--yfa-gold); color: #0b2340 !important; }
@media (max-width: 480px) { .yfa-tb-open { display: none; } }

/* ---- Arabic ---- */
html[lang^="ar"] { --yfa-head: "Noto Kufi Arabic", "Cairo", sans-serif; --yfa-serif: "Cairo", "Noto Kufi Arabic", sans-serif; }
html[lang^="ar"] body, html[lang^="ar"] button, html[lang^="ar"] input, html[lang^="ar"] textarea { font-family: "Cairo", Inter, system-ui, sans-serif; }
html[lang^="ar"] .yfa-tabby b, html[lang^="ar"] .yfa-tamara b, html[lang^="ar"] .yfa-paylogos { font-family: "Barlow Condensed", Inter, sans-serif; }
html[lang^="ar"] .yfa-section h2, html[lang^="ar"] .yfa-hero h1, html[lang^="ar"] .yfa-section h3, html[lang^="ar"] .entry-title, html[lang^="ar"] .entry-content h2, html[lang^="ar"] .entry-content h3 { line-height: 1.35; letter-spacing: 0; }
html[lang^="ar"] .yfa-kicker, html[lang^="ar"] .yfa-fcta-kicker { letter-spacing: 0; }
[dir="rtl"] .yfa-tb-open:before { margin-right: 0; margin-left: 6px; }
/* sliders keep LTR geometry so the scroll JS and arrows work unchanged */
[dir="rtl"] .yfa-card-media, [dir="rtl"] .yfa-gal-stage, [dir="rtl"] .yfa-gal-thumbs, [dir="rtl"] .yfa-lightbox { direction: ltr; }
[dir="rtl"] .yfa-steps li { padding: 0 62px 22px 0; }
[dir="rtl"] .yfa-steps li:before { left: auto; right: 0; }
[dir="rtl"] .yfa-inc li { padding: 9px 30px 9px 0; }
[dir="rtl"] .yfa-inc li:before { left: auto; right: 0; }
[dir="rtl"] .yfa-check li { padding: 7px 28px 7px 0; }
[dir="rtl"] .yfa-check li:before { left: auto; right: 2px; }
[dir="rtl"] .yfa-panel-trust li { padding: 4px 22px 4px 0; }
[dir="rtl"] .yfa-panel-trust li:before { left: auto; right: 0; }
[dir="rtl"] .yfa-specs > div + div:before, [dir="rtl"] .yfa-bp-facts li + li:before { left: auto; right: 0; }
[dir="rtl"] .yfa-bp-suits > div { border-left: 0; border-right: 3px solid var(--yfa-orange); }
[dir="rtl"] .yfa-crumbs span { display: inline-block; transform: scaleX(-1); }

/* ---- Russian: Cyrillic-capable heading font ---- */
html[lang^="ru"] { --yfa-head: "Oswald", "Barlow Condensed", Inter, sans-serif; }
html[lang^="ru"] .yfa-section h2, html[lang^="ru"] .yfa-hero h1 { letter-spacing: 0; }
/* numbers and English boat names keep their own direction inside Arabic text */
[dir="rtl"] a[href^="tel:"], [dir="rtl"] .yfa-fnote { unicode-bidi: plaintext; }
[dir="rtl"] a[href^="tel:"] { direction: ltr; }
[dir="rtl"] .yfa-card-title, [dir="rtl"] .yfa-bp-head h1, [dir="rtl"] .yfa-crumbs b { unicode-bidi: plaintext; }
html[lang^="ar"] .yfa-hero h1 { font-size: clamp(30px, 4.2vw, 50px); line-height: 1.3; }
html[lang^="ar"] .yfa-kicker { letter-spacing: 0; font-size: 13px; }
html[lang^="ar"] .yfa-logo span { font-family: "Noto Kufi Arabic", sans-serif; font-size: 21px; letter-spacing: 0; }
html[lang^="ar"] .yfa-logo small { font-family: "Cairo", sans-serif; letter-spacing: 1px; font-size: 11px; }
html[lang^="ru"] .yfa-logo span { font-family: "Oswald", sans-serif; font-size: 20px; letter-spacing: .3px; }
html[lang^="ru"] .yfa-logo small { letter-spacing: 2.5px; }

/* ---- v2.2 language dropdown (header) ---- */
.yfa-nav-menu { margin-inline: auto; }
.yfa-lsel { position: relative; margin-inline-start: auto; }
.yfa-lsel-btn { display: inline-flex; align-items: center; gap: 6px; height: 42px; padding: 0 12px; border-radius: 999px; cursor: pointer;
	border: 1px solid rgba(197,160,91,.5); background: rgba(255,255,255,.04); color: #fff; font: 700 13px Inter, sans-serif; transition: .2s; }
.yfa-lsel-btn:hover, .yfa-lsel.open .yfa-lsel-btn { background: rgba(197,160,91,.15); }
.yfa-lsel-btn svg { width: 17px; height: 17px; fill: none; stroke: var(--yfa-gold-light, #e6c48f); stroke-width: 1.8; stroke-linecap: round; }
.yfa-lsel-btn .chev { width: 14px; height: 14px; transition: transform .2s; }
.yfa-lsel.open .chev { transform: rotate(180deg); }
.yfa-lsel-list { position: absolute; top: calc(100% + 10px); inset-inline-end: 0; min-width: 200px; margin: 0; padding: 8px; list-style: none; z-index: 60;
	background: linear-gradient(165deg, #0d2a4b, #081a30); border: 1px solid rgba(197,160,91,.35); border-radius: 16px;
	box-shadow: 0 20px 40px rgba(0,0,0,.35); opacity: 0; visibility: hidden; transform: translateY(-6px); transition: .2s; }
.yfa-lsel.open .yfa-lsel-list { opacity: 1; visibility: visible; transform: none; }
.yfa-lsel-list li { margin: 0; }
.yfa-lsel-list a { display: flex; align-items: center; gap: 10px; padding: 9px 10px; border-radius: 10px; color: #fff; text-decoration: none; font-size: 14px; }
.yfa-lsel-list a:hover { background: rgba(255,255,255,.07); }
.yfa-lsel-list a b { min-width: 34px; height: 26px; border-radius: 8px; display: grid; place-items: center; font-size: 11px; letter-spacing: .5px;
	background: rgba(255,255,255,.08); color: var(--yfa-gold-light, #e6c48f); }
.yfa-lsel-list a.on b { background: linear-gradient(135deg, #e6c48f, #b88b4a); color: #0b2340; }
.yfa-lsel-list a i { margin-inline-start: auto; font-style: normal; color: var(--yfa-gold-light, #e6c48f); }
@media (max-width: 900px) {
	.yfa-lsel { margin-inline-end: 8px; }
	.yfa-lsel-btn { height: 44px; padding: 0 10px; border-radius: 14px; background: linear-gradient(145deg, #173a63, #0a1f38); box-shadow: 0 6px 14px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.12); border-color: rgba(197,160,91,.35); }
	.yfa-lsel-btn .chev { display: none; }
}
/* drawer: languages as a neat grid of chips */
.yfa-drawer .yfa-langs { display: flex; flex-wrap: wrap; }
/* v2.3 round flags in language menus */
.yfa-flag { width: 20px; height: 20px; flex: 0 0 20px; border-radius: 50%; box-shadow: 0 1px 4px rgba(0,0,0,.35); stroke: none !important; }
.yfa-lsel-btn .yfa-flag { width: 20px; height: 20px; stroke: none; }
.yfa-lsel-list a .yfa-flag { width: 24px; height: 24px; flex-basis: 24px; }
.yfa-lsel-list a.on .yfa-flag { box-shadow: 0 0 0 2px #e6c48f; }
.yfa-langs a { display: inline-flex; align-items: center; gap: 6px; }
.yfa-langs .yfa-flag { width: 16px; height: 16px; flex-basis: 16px; }

/* v2.3 – dark sections: headings always readable (beats .entry-content h2/h3 navy) */
.yfa-dark h2, .yfa-dark h3, .entry-content .yfa-dark h2, .entry-content .yfa-dark h3 { color: #fff; }
.entry-content .yfa-inc h3, .yfa-inc h3 { color: var(--yfa-gold-light, #e6c48f); }
.yfa-dark .yfa-lead, .yfa-dark p, .yfa-dark li, .yfa-dark span { color: rgba(255,255,255,.85); }
.yfa-dark .yfa-steps b { color: #fff; }

/* v2.3 – desktop header never overlaps: no wrapping, compact CTA as space shrinks */
.yfa-nav { gap: 16px; }
.yfa-menu a { white-space: nowrap; }
@media (max-width: 1280px) and (min-width: 901px) {
	.yfa-menu { gap: 18px; }
	.yfa-head-book { font-size: 0; gap: 0; width: 44px; height: 44px; padding: 0; justify-content: center; }
	.yfa-head-book svg { width: 19px; height: 19px; }
}
@media (max-width: 1100px) and (min-width: 901px) {
	.yfa-menu { gap: 13px; }
	.yfa-menu a { font-size: 13px; }
	.yfa-lsel-btn span, .yfa-lsel-btn .chev { display: none; }
	.yfa-lsel-btn { padding: 0 10px; }
	.yfa-logo { font-size: 20px; }
}
html[lang^="ar"] .yfa-menu, html[lang^="ru"] .yfa-menu, html[lang^="fr"] .yfa-menu, html[lang^="it"] .yfa-menu { gap: 16px; }
html[lang^="ru"] .yfa-menu a, html[lang^="fr"] .yfa-menu a, html[lang^="it"] .yfa-menu a { font-size: 13.5px; }

/* Chinese */
html[lang^="zh"] body, html[lang^="zh"] button { font-family: "Noto Sans SC", Inter, system-ui, sans-serif; }
html[lang^="zh"] { --yfa-head: "Noto Sans SC", "Barlow Condensed", sans-serif; --yfa-serif: "Noto Sans SC", "Playfair Display", serif; }
html[lang^="zh"] .yfa-kicker, html[lang^="zh"] .yfa-phero-kicker { letter-spacing: 1px; }
