/* Salt Beach theme styles (from final design) */
:root{
  --primary:#2d5176; --bg:#f8f9fa; --white:#fff; --ink:#2d5176;
  --radius:15px; --radius-sm:8px;
  --shadow:0 4px 18px rgba(0,0,0,.12); --shadow-sm:0 4px 10px rgba(0,0,0,.08);
  --maxw:1180px;
  --font:"Figtree",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --font-ar:"Tajawal","Figtree",Tahoma,sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--font);color:var(--ink);background:var(--white);line-height:1.55;-webkit-font-smoothing:antialiased}
body.rtl{font-family:var(--font-ar);direction:rtl}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4,h5{margin:0;color:var(--primary);line-height:1.2}
p{margin:0 0 1rem}
.container{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:24px}
.section{padding-block:clamp(46px,7vw,88px)}
.h2{font-size:clamp(28px,4.2vw,42px);font-weight:800;margin-bottom:.45em}
.h2.light{color:#fff}
.h3{font-size:clamp(20px,2.6vw,26px);font-weight:700;margin-bottom:.5em}
.lead{font-size:clamp(16px,2vw,19px);font-weight:500}
.tagline{font-weight:700;font-size:clamp(18px,2.4vw,24px);letter-spacing:.02em}
.eyebrow{font-size:14px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.icon{width:1em;height:1em}

/* ---- scenic placeholders (pure CSS, evoke beach/pool without external images) ---- */
.scene{position:relative;border-radius:var(--radius);overflow:hidden;
  background:
    radial-gradient(circle at 80% 20%, rgba(255,246,205,.95) 0 5%, rgba(255,246,205,0) 11%),
    linear-gradient(#cfeaf6 0 40%, #7bb6d8 40% 60%, #4b93bd 60% 78%, #35789f 78% 100%);}
.scene::after{content:"";position:absolute;left:0;right:0;bottom:0;height:26%;
  background:linear-gradient(transparent, rgba(0,0,0,.10));}
.scene--sunset{background:
    radial-gradient(circle at 78% 26%, rgba(255,224,150,.95) 0 6%, rgba(255,224,150,0) 13%),
    linear-gradient(#ffdca8 0 34%, #f0a878 34% 52%, #b98099 52% 70%, #5f6f9e 70% 100%);}
.scene--pool{background:
    radial-gradient(circle at 20% 18%, rgba(255,255,255,.5) 0 4%, transparent 10%),
    linear-gradient(#dff3fb 0 22%, #8fd0e6 22% 55%, #57b6d6 55% 100%);}
.scene--rest{background:
    linear-gradient(#f3e7d4 0 45%, #e6cfa8 45% 62%, #cbb088 62% 100%);}
.scene--land{background:
    linear-gradient(120deg,#e9e2d3,#d9cdb6 45%,#cdbfa2);}
.scene--gate{background:
    radial-gradient(circle at 70% 22%, rgba(255,246,205,.9) 0 6%, transparent 14%),
    linear-gradient(#bfe0f2 0 55%, #7fb4d6 55% 72%, #caa06a 72% 100%);}
.scene .lbl{position:absolute;inset-inline:0;bottom:10px;text-align:center;color:#fff;font-size:12px;font-weight:600;letter-spacing:.04em;opacity:.85;text-shadow:0 1px 3px rgba(0,0,0,.4)}

/* ---- buttons ---- */
.btn{display:inline-block;padding:15px 34px;border-radius:var(--radius);font-weight:800;font-size:clamp(18px,2vw,24px);transition:.2s}
.btn-light{background:rgba(248,249,250,.92);color:var(--primary);box-shadow:var(--shadow)}
.btn-light:hover{transform:translateY(-2px);background:#fff}

.brand__logo{display:block;height:50px;width:auto}
.partner__logo{display:block;height:50px;width:auto}
.footer .brand__logo{height:64px}
.footer .partner__logo{height:60px}
/* ================= HEADER ================= */
.header{position:sticky;top:0;z-index:100;background:#fff;box-shadow:0 4px 12px rgba(0,0,0,.12)}
.header__in{display:flex;align-items:center;gap:20px;min-height:78px}
.brand{display:flex;align-items:center;gap:10px}
.brand__mark{width:40px;height:40px;border-radius:8px;background:
  linear-gradient(#e63946 0 50%, #2d5176 50% 100%)}
.brand__t{line-height:1.05}
.brand__t b{display:block;font-size:16px;font-weight:900;color:var(--primary);letter-spacing:.04em}
.brand__t span{font-size:11px;color:#7c8a99;font-family:var(--font-ar)}
.nav{display:flex;gap:32px;margin-inline-start:20px}
.nav a{font-weight:700;font-size:16px;color:var(--primary);position:relative;padding-block:6px}
.nav a::after{content:"";position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--primary);transform:scaleX(0);transition:.2s}
.nav a:hover::after{transform:scaleX(1)}
.header__r{margin-inline-start:auto;display:flex;align-items:center;gap:16px}
.lang{display:inline-flex;align-items:center;gap:8px;background:var(--primary);color:#f9f9f9;border-radius:var(--radius-sm);padding:5px 12px;font-size:13px;font-weight:600;letter-spacing:.1em;cursor:default}
.lang b{cursor:pointer}
.lang .ar{font-family:var(--font-ar);font-size:15px}
.lang .off{opacity:.55}
.partner{display:flex;align-items:center;gap:6px;color:#4a6b52;font-weight:700;font-size:12px}
.partner .dot{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#8fcf9f,#3f7d55)}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;padding:8px;cursor:pointer;margin-inline-start:auto}
.burger span{width:26px;height:3px;background:var(--primary);border-radius:2px;transition:.25s}

/* ================= HERO ================= */
.hero{position:relative;min-height:clamp(520px,78vh,720px);display:flex;align-items:center;justify-content:center;text-align:center;color:#fff;
  background:
    radial-gradient(circle at 72% 26%, rgba(255,244,200,.5) 0 4%, transparent 12%),
    linear-gradient(#bfe0f2 0 30%, #7fb4d6 30% 52%, #4b93bd 52% 74%, #2f6f9e 74% 100%);}
.hero::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.35)}
.hero__in{position:relative;z-index:2;max-width:820px;padding-inline:20px}
.hero__title{color:#fff;font-size:clamp(32px,6vw,50px);font-weight:800;margin-bottom:.35em}
.hero__sub{font-size:clamp(18px,3vw,30px);color:#f6f8fa;margin-bottom:1.5em}

/* ================= INTRO ================= */
.intro__head{margin-bottom:34px}
.intro__grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:0;align-items:stretch}
.intro__img{min-height:360px}
.intro__card{background:linear-gradient(135deg,#dfeaf3,#f6efe2 60%,#eef3f7);
  margin-inline:-30px;z-index:2;border-radius:var(--radius);box-shadow:var(--shadow);
  display:flex;flex-direction:column;justify-content:center;text-align:center;padding:40px 34px}
.intro__card h3{font-weight:800;margin-bottom:.6em}
.intro__card p{font-size:15px}
.intro__card .tagline{margin-top:14px}

/* ================= WHY (navy) ================= */
.why__head{margin-bottom:26px}
.why__sub{color:var(--primary);opacity:.75;font-weight:500}
.why__band{background:var(--primary);border-radius:0;padding:0}
.why__wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:44px;align-items:center;padding-block:48px}
.why__cards{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.why__card{background:#f8f9fa;background:var(--bg);color:#2d5176;border-radius:var(--radius);padding:24px 22px;box-shadow:var(--shadow);text-align:center}
.why__card .ico{color:var(--primary,#2d5176)}
.why__card .ico .icon{width:42px;height:42px}
.why__card h4{font-size:21px;font-weight:700;margin:.4em 0 .3em;color:var(--primary,#2d5176)}
.why__card p{font-size:15px;font-weight:300;margin:0;color:var(--primary,#2d5176)}
.why__intro{color:#eef3f7;font-size:clamp(16px,1.5vw,19px)}
.why__intro p{margin-bottom:1em}

/* ================= FACILITIES (matches Figma) ================= */
.fac2{display:grid;grid-template-columns:0.92fr 1.08fr;gap:48px;align-items:start}
.fac2__text p{font-size:clamp(15px,1.6vw,18px)}
.fac2__tag{font-size:20px;text-align:start;margin-top:20px}
.fac2__cards{display:flex;flex-direction:column;gap:20px}
.fac2__row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.pcard{background:var(--bg);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);display:flex;flex-direction:column}
.pcard--wide{box-shadow:var(--shadow)}
.pcard__img{position:relative;aspect-ratio:340/169;
  background:linear-gradient(#cfeaf6 0 40%,#7bb6d8 40% 70%,#4b93bd 70% 100%);}
.pcard__img--tall{aspect-ratio:690/319}
.pcard__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.pcard__ov{position:absolute;inset:0;background:rgba(0,0,0,.14)}
.pcard__body{padding:14px 18px 20px;text-align:center}
.pcard__body h4{font-size:17px;font-weight:700;color:var(--primary);margin-bottom:.45em}
.pcard__body h4.big{font-size:24px}
.pcard__body p{font-size:13px;font-weight:300;color:var(--primary);line-height:1.55;margin:0}
.pcard--wide .pcard__body{padding:16px 22px 24px}
.pcard--wide .pcard__body p{font-size:14px;max-width:600px;margin-inline:auto}
@media(max-width:520px){.fac2__row{grid-template-columns:1fr}}

/* ================= RESTAURANT ================= */
.rest__eyebrow{display:flex;align-items:center;gap:8px;color:var(--primary)}
.rest__eyebrow .bar{width:5px;height:14px;background:var(--primary);display:inline-block}
.rest__desc{max-width:900px;font-size:clamp(15px,1.7vw,19px)}
.rest__body{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:22px}
.rest__media{position:relative}
.rest__img{min-height:300px}
.rest__arrows{position:absolute;top:8px;inset-inline-start:8px;display:flex;gap:6px}
.rest__arrows button{width:34px;height:34px;border-radius:50%;border:0;background:rgba(255,255,255,.85);color:var(--primary);display:grid;place-items:center;cursor:pointer}
.rest__cap{position:absolute;bottom:-26px;inset-inline-start:2px;font-size:12px;color:var(--primary)}
.rest__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 28px}
.rest__item{display:flex;gap:12px}
.rest__item .ico{color:var(--primary);flex:0 0 auto}
.rest__item .ico .icon{width:24px;height:24px}
.rest__item h5{font-size:16px;font-weight:700;margin-bottom:.25em}
.rest__item p{font-size:13.5px;font-weight:300;margin:0}

/* ================= TESTIMONIALS (matches Figma) ================= */
.tst{display:grid;grid-template-columns:minmax(210px,280px) 1fr;gap:56px;align-items:start}
.tst__text .h2{font-size:clamp(34px,4.4vw,46px);font-weight:800;line-height:1.05;letter-spacing:-.01em;margin-bottom:.55em;color:var(--primary)}
.tst__text > p{font-size:15px;line-height:1.75;color:#4a637c;margin:0}
.tst__text .h3{font-size:19px;font-weight:800;color:var(--primary);margin-top:1.5em;margin-bottom:.5em}
.tst__text .h3::after{content:"";display:block;width:40px;height:3px;border-radius:2px;background:var(--primary);opacity:.5;margin-top:.55em}
.tst__text .muted{color:#4a637c;margin-top:.6em}
.tst__text .tagline{font-size:16px !important;font-weight:800;color:var(--primary);text-align:start;display:block;margin-top:1.6em;padding-top:1.1em;border-top:1px solid #e3e8ed;line-height:1.4}
.tst__stage{position:relative;display:flex;align-items:center;justify-content:center;gap:16px}
.tst__view{overflow:hidden;flex:0 1 440px;width:100%}
.tst__track{display:flex;transition:transform .45s ease}
.review{flex:0 0 100%;box-sizing:border-box;background:var(--primary);color:#f6f8fa;border-radius:var(--radius);padding:30px 30px;text-align:center;box-shadow:var(--shadow)}
.review .avatar{width:64px;height:64px;border-radius:50%;margin:0 auto 12px;background:#eef2f6;display:grid;place-items:center;color:var(--primary)}
.avatar__ico{width:34px;height:34px}
.review .name{color:#fff;font-size:17px;font-weight:700;margin-bottom:.7em}
.review .text{color:#eef3f7;font-size:15px;font-weight:500;line-height:1.55;margin-bottom:1em}
.stars{display:inline-block;color:#ffce54;font-size:16px;letter-spacing:3px}
.tst__nav{flex:0 0 auto;width:42px;height:42px;border-radius:50%;border:0;background:#eff1f3;color:#7f8b98;cursor:pointer;display:grid;place-items:center;box-shadow:0 2px 6px rgba(0,0,0,.06);transition:.2s}
.tst__nav:hover{background:#fff;color:var(--primary)}
.tst__nav .icon{width:19px;height:19px}
.tst__nav.prev .icon{transform:rotate(180deg)}
.tst__dots{position:absolute;bottom:-30px;left:0;right:0;display:flex;justify-content:center;gap:8px}
.tst__dots button{width:8px;height:8px;border-radius:50%;border:0;background:#c4d0dc;cursor:pointer;padding:0;transition:.2s}
.tst__dots button.active{background:var(--primary);transform:scale(1.25)}

/* ================= ABOUT ================= */
.about{display:grid;grid-template-columns:1.3fr 1fr;gap:44px;align-items:center}
.about .rule{height:1px;background:#cfd8e0;margin-bottom:22px}
.about .p1{font-size:clamp(18px,2.3vw,28px);font-weight:500;line-height:1.4}
.about__img{min-height:360px}

/* ================= CONTACT ================= */
.contact__card{background:rgba(248,249,250,.65);border:1px solid #e4e9ee;border-radius:var(--radius);box-shadow:var(--shadow);padding:26px;display:grid;grid-template-columns:1fr 1.1fr;gap:30px;max-width:960px;margin-inline:auto}
.contact__map{position:relative;min-height:300px;border-radius:var(--radius);overflow:hidden}
.contact__map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.contact__maplink{position:absolute;bottom:10px;inset-inline-end:10px;background:rgba(255,255,255,.92);color:var(--primary);font-size:12px;font-weight:600;padding:6px 10px;border-radius:8px;box-shadow:0 2px 6px rgba(0,0,0,.15);z-index:2}
.contact__maplink:hover{background:#fff}
.contact__map .pin{position:absolute;top:34%;left:46%;width:18px;height:18px;background:#e63946;border-radius:50% 50% 50% 0;rotate:-45deg;box-shadow:0 2px 6px rgba(0,0,0,.3)}
.contact__d{border-inline-start:1px solid #d5dde4;padding-inline-start:30px}
.contact__block{margin-bottom:20px}
.contact__block .l{display:block;font-size:20px;font-weight:600;margin-bottom:2px}
.contact__phone{font-weight:500;font-size:18px}
.social{display:inline-flex;gap:14px;margin-top:6px;color:var(--primary)}
.social .icon{width:22px;height:22px}

/* ================= CTA + FOOTER ================= */
.cta{padding-block:56px}
.cta__in{background:rgba(248,249,250,.92);border:1px solid #e4e9ee;border-radius:var(--radius);box-shadow:var(--shadow);padding:30px 38px;display:flex;align-items:center;justify-content:space-between;gap:22px;max-width:720px;margin-inline:auto}
.cta__t{font-size:clamp(22px,3vw,32px);font-weight:800;margin-bottom:.3em}
.cta__in p{margin:0;font-size:13px;font-weight:500}
.cta__btn{flex:0 0 auto;width:52px;height:52px;border-radius:12px;background:var(--primary);color:#fff;display:grid;place-items:center;box-shadow:var(--shadow-sm)}
.footer{background:var(--bg);padding-block:24px}
.footer__in{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}
.footer__mid{display:flex;align-items:center;gap:24px;flex-wrap:wrap;justify-content:center}
.footer__mid a{font-size:18px;font-weight:500;color:var(--primary)}
.footer__mid .copy{font-size:14px;color:var(--primary);opacity:.85}
.footer .social{margin-top:0}

/* ================= RESPONSIVE ================= */
@media(max-width:1024px){
  .rest__body{grid-template-columns:1fr}
  .tst{grid-template-columns:1fr}
  .about{grid-template-columns:1fr}
  .fac2{grid-template-columns:1fr}
}
@media(max-width:860px){
  .nav{display:none}
  .burger{display:flex}
  .nav.open{display:flex;position:absolute;top:100%;inset-inline:0;flex-direction:column;gap:0;background:#fff;box-shadow:0 8px 14px rgba(0,0,0,.12);padding:8px 24px 18px}
  .nav.open a{padding:14px 0;border-bottom:1px solid #e4e9ee}
  .header__in{position:relative}
  .intro__grid{grid-template-columns:1fr}
  .intro__card{margin-inline:auto;order:0;max-width:560px;padding:26px 24px;box-shadow:var(--shadow-sm)}
  .intro__card h3{font-size:clamp(20px,5.5vw,24px)}
  .intro__card p{font-size:14.5px}
  .why__wrap{grid-template-columns:1fr}
  .fac__right{grid-template-columns:1fr}
  .contact__card{grid-template-columns:1fr}
  .contact__d{border-inline-start:0;border-top:1px solid #d5dde4;padding-inline-start:0;padding-top:22px}
  .cta__in,.footer__in{flex-direction:column;text-align:center}
  .rest__grid{grid-template-columns:1fr}
}
@media(max-width:520px){.why__cards{grid-template-columns:1fr}}

/* ---- real photos + nav spacing + restaurant gallery ---- */
.intro__img{position:relative;min-height:360px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.intro__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.about__img{position:relative;min-height:380px;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.about__img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.header__in{gap:24px}
.nav{margin-inline:auto}
.header__r{margin-inline-start:0}
.rest__media{position:relative}
.rest__view{overflow:hidden;border-radius:var(--radius);box-shadow:var(--shadow)}
.rest__track{display:flex;transition:transform .45s ease}
.rest__slide{flex:0 0 100%}
.rest__slide img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.rest__nav{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--primary);cursor:pointer;display:grid;place-items:center;box-shadow:0 2px 8px rgba(0,0,0,.18);z-index:2}
.rest__nav .icon{width:20px;height:20px}
.rest__nav.prev{inset-inline-start:10px}
.rest__nav.next{inset-inline-end:10px}
.rest__nav.prev .icon{transform:rotate(180deg)}
.sb-rtl .rest__nav.prev .icon,body.rtl .rest__nav.prev .icon{transform:none}
body.rtl .rest__nav.next .icon{transform:rotate(180deg)}
.rest__dots{display:flex;justify-content:center;gap:7px;margin-top:12px}
.rest__dots button{width:9px;height:9px;border-radius:50%;border:0;background:#c4d0dc;cursor:pointer;padding:0;transition:.2s}
.rest__dots button.active{background:var(--primary);transform:scale(1.2)}
.rest__cap{display:block;margin-top:8px;font-size:12px;color:var(--primary);text-align:center}
@media(max-width:1024px){.rest__slide img{aspect-ratio:16/9}}

/* ---- hero background photo ---- */
.hero{background:var(--sb-primary,#2d5176)}
.hero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;z-index:0}
.hero::before{z-index:1}
.hero__in{z-index:2}

/* ---- extra responsive + rtl polish ---- */
@media(max-width:520px){
  .brand__logo{height:40px}
  .header__in{gap:12px;min-height:64px}
  .lang{padding:4px 9px;font-size:12px}
  .tst__nav,.rest__nav{width:38px;height:38px}
  .section{padding-block:44px}
  .hero__in{padding-inline:16px}
}
body.rtl .rest__eyebrow .bar{transform:scaleX(1)}
body.rtl .intro__card{ text-align:center }

/* ---- terms (in-page view) ---- */
[hidden]{display:none!important}
.thero{position:relative;min-height:clamp(260px,38vh,400px);display:flex;align-items:flex-end;justify-content:center;overflow:hidden}
.thero__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.thero::before{content:"";position:absolute;inset:0;background:rgba(0,0,0,.4)}
.thero__title{position:relative;z-index:2;color:#fff;font-size:clamp(30px,5vw,46px);font-weight:800;padding-bottom:26px;text-align:center}
.tmain{padding-block:44px 72px}
.tupdated{color:var(--primary);opacity:.8;margin-bottom:22px}
.tintro{font-size:clamp(19px,2.4vw,26px);font-weight:800;color:var(--primary);margin-bottom:26px}
.titem{margin-bottom:22px}
.titem h3{font-size:20px;font-weight:700;color:var(--primary);margin-bottom:.25em}
.titem p{color:var(--primary);margin:0}
.tbtn{display:inline-block;margin:24px 0;background:var(--primary);color:#fff;padding:12px 22px;border-radius:8px;font-weight:700;cursor:pointer}
.tbtn:hover{opacity:.92}
.tthanks{margin-top:40px}
.tthanks h3{font-size:20px;font-weight:700;color:var(--primary);margin-bottom:.3em}
.tthanks p{color:var(--primary)}

/* ---- testimonials: horizontal layout, centered one-line title ---- */
.tst-title{text-align:center;font-size:clamp(30px,4.2vw,44px);font-weight:800;color:var(--primary);line-height:1.15;margin:0 auto .9em;max-width:960px;letter-spacing:-.01em}
.tst{grid-template-columns:minmax(0,1fr) minmax(460px,540px);gap:48px;align-items:center}
.tst__text{text-align:start}
.tst__text > p{font-size:16px;line-height:1.8;color:#4a637c;max-width:520px}
.tst__text .h3{margin-top:1.1em}
.tst__text .tagline{max-width:520px}
.tst__view{flex:0 1 420px}
@media(max-width:1024px){
  .tst{grid-template-columns:1fr;gap:30px}
  .tst__text{max-width:640px;margin-inline:auto;text-align:center}
  .tst__text > p{max-width:none;margin-inline:auto}
  .tst__text .h3::after{margin-inline:auto}
  .tst__text .tagline{max-width:none;border-top:none;padding-top:0;text-align:center}
}

/* ---- testimonials FIX: mobile-first, no horizontal overflow ---- */
body{overflow-x:clip}
.tst-title{text-align:center;font-size:clamp(26px,7vw,44px);font-weight:800;color:var(--primary);line-height:1.15;margin:0 auto .8em;max-width:960px}
.tst{display:block}
.tst__text{text-align:center;max-width:620px;margin:0 auto 26px}
.tst__text > p{max-width:none;margin-inline:auto;font-size:15px;line-height:1.75;color:#4a637c}
.tst__text .h3{margin-top:1.1em}
.tst__text .h3::after{margin-inline:auto}
.tst__text .tagline{max-width:none;border-top:none;padding-top:0;text-align:center}
.tst__stage{max-width:520px;margin:0 auto}
.tst__view{flex:0 1 100%;min-width:0}
.review{padding:26px 22px}
@media(min-width:1025px){
  .tst{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,520px);gap:48px;align-items:center}
  .tst__text{text-align:start;max-width:none;margin:0}
  .tst__text > p{max-width:520px;margin-inline:0;font-size:16px}
  .tst__text .h3::after{margin-inline:0}
  .tst__text .tagline{text-align:start;border-top:1px solid #e3e8ed;padding-top:1.1em;max-width:520px}
  .tst__stage{max-width:none;margin:0}
  .tst__view{flex:0 1 420px}
  .review{padding:30px 30px}
}

/* ---- mobile: show BOTH logos in header + tidy footer (client requirement) ---- */
@media(max-width:860px){
  .partner{display:flex}
  .header__in{gap:8px;min-height:62px;flex-wrap:nowrap}
  .brand{order:1;flex:0 0 auto}
  .brand__logo{height:32px}
  .header__r{order:2;margin-inline-start:auto;gap:8px}
  .partner{gap:0}
  .partner__logo{height:30px}
  .lang{padding:4px 7px;font-size:11px;letter-spacing:.04em;gap:5px}
  .lang .ar{font-size:13px}
  .burger{order:3;margin-inline-start:4px;padding:6px}
  .burger span{width:22px}
  .nav{order:4}
  /* footer: both logos side by side on top, text below */
  .footer__in{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:22px 32px;text-align:center}
  .footer__in .brand{order:1}
  .footer__in .partner{order:2}
  .footer__mid{order:3;flex-basis:100%;justify-content:center}
  .footer .brand__logo{height:48px}
  .footer .partner__logo{height:46px}
}
@media(max-width:380px){
  .header__in{gap:6px}
  .brand__logo{height:28px}
  .partner__logo{height:26px}
  .lang{padding:3px 6px;font-size:10px}
  .footer .brand__logo{height:42px}
  .footer .partner__logo{height:40px}
}

/* --- WordPress custom-logo sizing (if the client sets one) --- */
.custom-logo{max-height:56px;width:auto;display:block}
.custom-logo-link{display:inline-flex;align-items:center}
@media(max-width:860px){.custom-logo{max-height:34px}}
@media(max-width:380px){.custom-logo{max-height:28px}}

/* --- section heading alignment (Customizer) --- */
.rest__head[data-a="center"] .rest__eyebrow{justify-content:center}
.rest__head[data-a="end"] .rest__eyebrow{justify-content:flex-end}
.intro__head[style*="center"] .lead,.why__head[style*="center"] .why__sub{margin-inline:auto}

/* --- footer copyright on its own line at the very bottom --- */
.footer__copyrow{text-align:center;margin-top:16px;padding-top:14px;border-top:1px solid #e4e9ee}
.footer__copyrow .copy{font-size:13px;color:var(--primary);opacity:.8}

/* --- anchor scrolling lands below the sticky header --- */
html{scroll-padding-top:96px}
#pools,#restaurant,#about,#top,#contact{scroll-margin-top:96px}
@media(max-width:860px){
  html{scroll-padding-top:72px}
  #pools,#restaurant,#about,#top,#contact{scroll-margin-top:72px}
}

/* --- make icon links fully clickable (whole area, better tap targets) --- */
.social a{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:9px;color:var(--primary);transition:background .15s,transform .15s}
.social a:hover{background:rgba(45,81,118,.09);transform:translateY(-1px)}
.social a .icon,.cta__btn .icon{pointer-events:none}
.cta__btn{cursor:pointer}
.contact__phone,.social a,.cta__btn{-webkit-tap-highlight-color:rgba(45,81,118,.2)}

/* --- icon links open directly (no drag / no red-circle) --- */
.social a,.cta__btn,.contact__phone,.brand,.partner{cursor:pointer;-webkit-user-drag:none;user-select:none}
.social a .icon,.cta__btn .icon,.brand__logo,.partner__logo,.custom-logo,a .icon{
  pointer-events:none;-webkit-user-drag:none;user-select:none;-webkit-touch-callout:none}

/* --- FAQ page (accordion) --- */
.faq-wrap{max-width:820px;margin-inline:auto}
.faq-intro{margin-bottom:26px}
.faq-list{display:flex;flex-direction:column;gap:12px}
.faq-item{background:var(--bg);border:1px solid #e4e9ee;border-radius:12px;overflow:hidden}
.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;
  background:none;border:0;cursor:pointer;padding:18px 20px;text-align:start;
  font-size:clamp(15px,2vw,18px);font-weight:700;color:var(--primary);font-family:inherit}
.faq-ic{flex:0 0 auto;color:var(--primary);display:inline-flex;transition:transform .25s}
.faq-ic .icon{width:20px;height:20px;transform:rotate(90deg)}
.faq-item.open .faq-ic{transform:rotate(180deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a p{margin:0;padding:0 20px 18px;color:#4a637c;font-size:15px;line-height:1.7}
.faq-item.open .faq-a{max-height:400px}

/* --- Safe text motion ------------------------------------------------------
   Progressive enhancement only: content is NEVER hidden by default.
   JavaScript adds .sb-text-motion only when text is entering the viewport.
   The animation starts partially visible, uses a tiny vertical movement,
   runs once, and the JS removes the class after it finishes. */
@keyframes sbTextFadeUp{
  from{opacity:.55;transform:translate3d(0,9px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}
.sb-text-motion{
  animation:sbTextFadeUp .58s cubic-bezier(.22,.61,.36,1) both;
  animation-delay:var(--sb-motion-delay,0ms);
  will-change:opacity,transform;
}
@media (prefers-reduced-motion:reduce){
  .sb-text-motion{animation:none!important;opacity:1!important;transform:none!important}
}

