/* Tourfecto homepage v2 - scoped to .hm / new class names, safe alongside style.css */
.hm{--gold-d:#8a6212;--ink:#0b1020}
.hm h1,.hm h2,.hm h3{font-family:'Playfair Display',Georgia,serif}
[dir=rtl] .hm h1,[dir=rtl] .hm h2,[dir=rtl] .hm h3,[dir=rtl] .hm b{font-family:Cairo,Tajawal,'Segoe UI',Tahoma,sans-serif;letter-spacing:0}
[dir=rtl] .hm h1,[dir=rtl] .hm h2{line-height:1.4}

/* ---------- HERO ---------- */
.hero2{position:relative;isolation:isolate;color:#fff;min-height:clamp(560px,88vh,820px);display:flex;align-items:flex-end;overflow:hidden;background:var(--ink);padding:0 0 110px}
.hbg2{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 62%;z-index:-3;animation:hz 26s ease-out both}
@keyframes hz{from{transform:scale(1.08)}to{transform:scale(1)}}
.hero2:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0b1020ee 0%,#0b1020a6 38%,#0b102021 72%),linear-gradient(0deg,#0b1020f2 0%,#0b102000 46%),linear-gradient(180deg,#0b102099 0%,#0b102000 22%)}
[dir=rtl] .hero2:before{background:linear-gradient(270deg,#0b1020ee 0%,#0b1020a6 38%,#0b102021 72%),linear-gradient(0deg,#0b1020f2 0%,#0b102000 46%),linear-gradient(180deg,#0b102099 0%,#0b102000 22%)}
.hero2-in{width:100%;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:40px;align-items:end;padding-top:120px}
.hero2-tag{margin:0 0 18px;display:inline-flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:var(--gold2);letter-spacing:.02em}
.hero2-tag:before{content:"";width:34px;height:2px;background:var(--gold2);border-radius:2px}
.hero2 h1{font-size:clamp(40px,6.6vw,84px);line-height:1.04;margin:0 0 20px;max-width:12.5em;text-shadow:0 6px 40px #0008;font-weight:700}
.hero2-lead{max-width:540px;font-size:clamp(16px,1.6vw,19px);line-height:1.7;color:#f1e8d4;margin:0 0 30px}
.hero2 .cta-row{display:flex;gap:12px;flex-wrap:wrap}
.hero2-facts{list-style:none;margin:0;padding:6px 22px;border-radius:20px;background:#0b102073;border:1px solid #ffffff2b;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2)}
.hero2-facts li{display:flex;align-items:baseline;gap:14px;padding:15px 0}
.hero2-facts li+li{border-top:1px solid #ffffff1f}
.hero2-facts b{font:700 30px/1 'Playfair Display',serif;color:var(--gold2);min-width:76px}
.hero2-facts span{font-size:14px;color:#efe6d0}

/* ---------- SEARCH ---------- */
.srch2{margin:-62px auto 0;position:relative;z-index:5;grid-template-columns:1.3fr 1fr 1fr auto;border-radius:22px;padding:22px;box-shadow:0 30px 60px -24px #0b102066,var(--sh2)}
.srch2 .btn{height:52px;align-self:end;display:inline-flex;align-items:center;justify-content:center;margin-bottom:4px}

/* ---------- SECTIONS ---------- */
.sec2{padding:84px 0 12px}
.sec2-tight{padding-top:56px}
.hd2{display:flex;justify-content:space-between;align-items:end;gap:18px;flex-wrap:wrap;margin-bottom:28px}
.hd2 h2{font-size:clamp(28px,3.8vw,42px);margin:0;line-height:1.15;letter-spacing:-.015em}
.hd2 .sub{margin:10px 0 0;max-width:560px;color:var(--mut)}
.hm .more{font-weight:600;color:var(--gt);padding-bottom:4px;border-bottom:2px solid var(--gold2);white-space:nowrap}
.hm .more:hover{text-decoration:none;color:var(--tx)}

/* ---------- DESTINATION TILES ---------- */
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:252px;gap:16px}
.bento .dst-lg{grid-column:span 2;grid-row:span 2}
.bento.n4,.bento.n3,.bento.n2,.bento.n1{grid-template-columns:repeat(2,1fr);grid-auto-rows:280px}
.bento.n3 .dst-lg{grid-column:span 2;grid-row:span 1}
.dst{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-end;padding:22px 24px;border-radius:22px;overflow:hidden;color:#fff;background:linear-gradient(135deg,#1a1636,#0b1020);box-shadow:var(--sh);transition:box-shadow .35s}
.dst>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.dst:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0b102000 38%,#0b1020b3 72%,#0b1020f0 100%)}
.dst:hover{box-shadow:var(--sh2)}
.dst:hover>img{transform:scale(1.07)}
.dt{display:block;padding-inline-end:52px}
.dt b{display:block;font:700 clamp(22px,2.1vw,28px)/1.15 'Playfair Display',serif;text-shadow:0 2px 14px #0007}
.dt small{display:block;margin-top:5px;font-size:14px;line-height:1.45;color:#f0e6cf}
.dst.dst-lg .dt b{font-size:clamp(32px,4vw,52px)}
.dst.dst-lg .dt small{font-size:16px;max-width:30em}
.dm{position:absolute;top:16px;inset-inline-start:16px;padding:6px 13px;border-radius:999px;background:#0b10208f;border:1px solid #ffffff33;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:13px;font-weight:600}
.go{position:absolute;inset-inline-end:20px;bottom:22px;width:42px;height:42px;border-radius:50%;background:#ffffff26;border:1px solid #ffffff40;backdrop-filter:blur(8px);transition:background .3s,transform .3s}
.go:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;border:solid #fff;border-width:2px 2px 0 0;transform:translate(-65%,-50%) rotate(45deg);transition:border-color .3s}
[dir=rtl] .go:after{transform:translate(-35%,-50%) rotate(-135deg)}
.dst:hover .go{background:var(--gold2);transform:scale(1.08)}
.dst:hover .go:after{border-color:#1a1206}

/* trip types: wider, shorter tiles */
.types2{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dst.wide{height:200px;padding:18px 22px}
.dst.wide .dt b{font-size:clamp(20px,1.9vw,25px)}
.dst.noimg{background:linear-gradient(135deg,#221a45,#8f3f4a)}

/* ---------- EXPERIENCES STRIP ---------- */
.sec2-full{padding-inline:0}
.strip{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px max(20px,calc((100vw - 1180px)/2 + 20px)) 26px;scroll-padding-inline:max(20px,calc((100vw - 1180px)/2 + 20px));scrollbar-width:thin;scrollbar-color:var(--gold) transparent;-webkit-overflow-scrolling:touch}
.exp2{position:relative;isolation:isolate;flex:0 0 clamp(240px,24vw,290px);height:410px;border-radius:22px;overflow:hidden;scroll-snap-align:start;color:#fff;display:flex;align-items:flex-end;padding:20px;background:#1a1636;box-shadow:var(--sh);transition:box-shadow .35s}
.exp2 img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.exp2:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0b102000 45%,#0b1020ee)}
.exp2:hover{box-shadow:var(--sh2)}.exp2:hover img{transform:scale(1.08)}
.et b{display:block;font:700 22px/1.2 'Playfair Display',serif}
.et small{display:block;margin-top:5px;font-size:13.5px;line-height:1.45;color:#efe5ce}

/* ---------- HOW IT WORKS ---------- */
.band2{margin-top:84px;background:var(--bg2);border-block:1px solid var(--line)}
.band2 .sec2{padding-bottom:84px}
.flow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;counter-reset:f;position:relative}
.flow li{position:relative;counter-increment:f;padding-top:74px}
.flow li:before{content:counter(f);position:absolute;top:0;inset-inline-start:0;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font:700 22px/1 'Playfair Display',serif;color:#1a1206;background:linear-gradient(135deg,var(--gold2),var(--gold));box-shadow:0 8px 20px -8px #b8892dcc;z-index:1}
[dir=rtl] .flow li:before{font-family:Cairo,sans-serif}
.flow li:after{content:"";position:absolute;top:26px;inset-inline-start:64px;inset-inline-end:-28px;height:0;border-top:2px dashed #b8892d77}
.flow li:last-child:after{display:none}
.flow h3{margin:0 0 8px;font-size:22px}
.flow p{margin:0;color:var(--mut);max-width:30em}

/* ---------- WHY ---------- */
.why2{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,72px);align-items:center}
.why2-ph{margin:0;height:min(600px,70vh);min-height:420px;border-radius:26px;overflow:hidden;box-shadow:var(--sh2);background:#1a1636}
.why2-ph img{width:100%;height:100%;object-fit:cover;display:block}
.why2-tx h2{font-size:clamp(28px,3.8vw,42px);margin:0 0 26px;line-height:1.15}
.why2-tx ul{list-style:none;margin:0;padding:0}
.why2-tx li{display:flex;gap:18px;padding:20px 0;border-top:1px solid var(--line)}
.why2-tx li:last-child{border-bottom:1px solid var(--line)}
.hi{flex:none;width:52px;height:52px;padding:13px;border-radius:15px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1206}
.why2-tx h3{margin:2px 0 4px;font-size:20px}
.why2-tx p{margin:0;color:var(--mut);font-size:15px}

/* ---------- REVIEWS / FAQ / CTA ---------- */
.rev2{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.rev2 figure{margin:0;padding:28px;border-radius:20px;background:var(--card);border:1px solid var(--line);box-shadow:var(--sh);display:flex;flex-direction:column;gap:14px}
.stars{color:var(--gold);letter-spacing:3px;font-size:18px}
.rev2 blockquote{margin:0;font:500 18px/1.6 'Playfair Display',Georgia,serif;flex:1}
[dir=rtl] .rev2 blockquote{font-family:Cairo,sans-serif;font-size:16.5px}
.rev2 figcaption{font-size:13.5px;color:var(--mut)}.rev2 figcaption b{color:var(--tx)}
.faq2{max-width:820px;margin-inline:auto}
.faq2 details{border-bottom:1px solid var(--line)}
.faq2 summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;font-weight:600;font-size:17px;position:relative}
[dir=rtl] .faq2 summary{padding:20px 0 20px 40px}
.faq2 summary::-webkit-details-marker{display:none}
.faq2 summary:after{content:"+";position:absolute;inset-inline-end:4px;top:50%;transform:translateY(-50%);font:400 28px/1 Inter,sans-serif;color:var(--gt);transition:transform .25s}
.faq2 details[open] summary:after{transform:translateY(-50%) rotate(45deg)}
.faq2 details p{margin:0 0 22px;color:var(--mut);max-width:44em}
.cta2{padding:clamp(56px,8vw,96px) 24px;border-radius:28px}
.cta2 h2{font-size:clamp(28px,4.4vw,48px);max-width:16em;margin-inline:auto}
.cta2 p{font-size:17px}
.hm .sec2:last-child{padding-bottom:84px}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1000px){
.hero2-in{grid-template-columns:1fr;gap:28px}
.hero2-facts{display:grid;grid-template-columns:1fr 1fr;padding:6px 20px;column-gap:20px}
.hero2-facts li:nth-child(2){border-top:0}
.hero2-facts li{flex-direction:column;gap:2px;align-items:flex-start}.hero2-facts b{min-width:0;font-size:26px}
.bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}
.bento .dst-lg{grid-column:span 2;grid-row:span 1}
.types2{grid-template-columns:repeat(2,1fr)}
.srch2{grid-template-columns:1fr 1fr}.srch2>div:first-child{grid-column:span 2}.srch2 .btn{grid-column:span 2}
.flow{grid-template-columns:1fr;gap:6px}
.flow li{padding:0 0 28px;padding-inline-start:74px;min-height:76px}
.flow li:after{top:58px;bottom:6px;height:auto;inset-inline-start:25px;inset-inline-end:auto;width:0;border-top:0;border-inline-start:2px dashed #b8892d77}
.why2{grid-template-columns:1fr}.why2-ph{height:380px;min-height:0}
.rev2{grid-template-columns:1fr}
}
@media(max-width:600px){
.hero2{min-height:640px;padding-bottom:90px}
.hero2 .cta-row .btn{flex:1 1 100%}
.srch2{grid-template-columns:1fr;padding:18px;margin-top:-54px}.srch2>div:first-child,.srch2 .btn{grid-column:auto}
.bento,.bento.n4,.bento.n3,.bento.n2,.bento.n1{grid-template-columns:1fr;grid-auto-rows:auto}
.bento .dst{min-height:210px}
.bento .dst-lg{grid-column:auto;grid-row:auto;min-height:300px}
.hero2-in{padding-top:70px}
.types2{grid-template-columns:1fr}.dst.wide{height:170px}
.sec2{padding-top:60px}.band2{margin-top:60px}
.exp2{height:360px}
}
@media(prefers-reduced-motion:reduce){.hbg2{animation:none}.dst>img,.exp2 img,.go{transition:none}}
.srch2 input,.srch2 select{height:52px;margin:4px 0 0;padding-block:0}
.srch2{align-items:end}
.faq2 details{background:none;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;padding:0;margin:0}
.faq2 summary{padding-inline:0 40px}
.hero2:before{background:linear-gradient(90deg,#0b1020e6 0%,#0b102099 36%,#0b102014 70%),linear-gradient(0deg,#0b1020e6 0%,#0b102000 42%),linear-gradient(180deg,#0b102080 0%,#0b102000 18%)}
[dir=rtl] .hero2:before{background:linear-gradient(270deg,#0b1020e6 0%,#0b102099 36%,#0b102014 70%),linear-gradient(0deg,#0b1020e6 0%,#0b102000 42%),linear-gradient(180deg,#0b102080 0%,#0b102000 18%)}

[dir=rtl] .hero2 h1{font-size:clamp(34px,5.4vw,66px);line-height:1.3}
