/* Visit Saudi - visit-saudi.ae - design system */
:root{
  --green:#0a5c36; --green-2:#0e7a47; --green-deep:#063f24; --green-ink:#032115;
  --gold:#c19a3d; --gold-2:#dcb95f; --sand:#f7f2e7; --sand-2:#efe6d2;
  --ink:#152219; --muted:#5a6b60; --line:#e3ddcb; --white:#fff;
  --radius:18px; --shadow:0 18px 45px rgba(4,33,21,.14);
  --font-body:'Manrope',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
  --font-display:'Marcellus',Georgia,'Times New Roman',serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--font-body);color:var(--ink);background:var(--white);line-height:1.65;font-size:16.5px}
img{max-width:100%;display:block}
a{color:var(--green);text-decoration:none}
a:hover{text-decoration:underline}
.wrap{max-width:1180px;margin:0 auto;padding:0 22px}
h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:1.18;color:var(--green-ink)}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem)}
h2{font-size:clamp(1.7rem,3.2vw,2.4rem)}
h3{font-size:1.25rem}
.kicker{display:inline-block;font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:12px}
.lead{font-size:1.13rem;color:var(--muted);max-width:720px}
section{padding:74px 0}
.section-head{max-width:760px;margin-bottom:36px}
.section-head.center{margin-left:auto;margin-right:auto;text-align:center}
.btn{display:inline-flex;align-items:center;gap:9px;background:var(--green);color:#fff;font-weight:700;padding:14px 26px;border-radius:999px;border:2px solid var(--green);cursor:pointer;font-size:1rem;transition:.2s}
.btn:hover{background:var(--green-2);border-color:var(--green-2);text-decoration:none;transform:translateY(-1px)}
.btn.gold{background:var(--gold);border-color:var(--gold);color:#241a02}
.btn.gold:hover{background:var(--gold-2);border-color:var(--gold-2)}
.btn.ghost{background:transparent;color:var(--green)}
.btn.ghost:hover{background:rgba(10,92,54,.07)}
.btn.light{background:#fff;border-color:#fff;color:var(--green-deep)}
.btn.outline-light{background:transparent;border-color:rgba(255,255,255,.75);color:#fff}
.btn.outline-light:hover{background:rgba(255,255,255,.12)}
.btn.small{padding:9px 18px;font-size:.92rem}
.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.topstrip{background:var(--green-ink);color:#e9e2cd;font-size:.83rem;padding:7px 0}
.topstrip .wrap{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.topstrip a{color:var(--gold-2);font-weight:700}
header.site{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.97);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);box-shadow:0 6px 24px rgba(4,33,21,.05)}
.nav{display:flex;align-items:center;gap:26px;padding:13px 0}
.logo{display:flex;align-items:center;gap:11px;font-family:var(--font-display);font-size:1.32rem;color:var(--green-ink)}
.logo:hover{text-decoration:none}
.logo .mark{width:42px;height:42px;border-radius:12px;background:linear-gradient(140deg,var(--green-2),var(--green-deep));display:grid;place-items:center;color:#fff;flex:none}
.logo small{display:block;font-family:var(--font-body);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-weight:800}
.nav nav{display:flex;gap:22px;align-items:center}
.nav nav a{color:var(--ink);font-weight:600;font-size:.97rem}
.nav nav a:hover{color:var(--green);text-decoration:none}
.nav .btn{margin-left:6px}
.burger{display:none;margin-left:auto;background:none;border:0;cursor:pointer;padding:8px}
.burger span{display:block;width:26px;height:3px;background:var(--green-ink);margin:5px 0;border-radius:2px}
@media(max-width:1180px){
  .nav nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:18px 22px;gap:14px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
  .nav nav.open{display:flex}
  .burger{display:block}
  .nav .btn{display:none}
}
.hero{position:relative;color:#fff;padding:0;overflow:hidden;background:var(--green-ink)}
.hero .bg{position:absolute;inset:0}
.hero .bg img{width:100%;height:100%;object-fit:cover;opacity:.74}
.hero .bg::after{content:"";position:absolute;inset:0;background:linear-gradient(96deg,rgba(3,33,21,.93) 20%,rgba(3,33,21,.55) 58%,rgba(3,33,21,.22)),linear-gradient(to top,rgba(3,33,21,.5),transparent 46%)}
.hero .wrap{position:relative;padding:92px 22px 84px;z-index:2}
.hero h1{color:#fff;max-width:640px}
.hero h1 em{font-style:normal;color:var(--gold-2)}
.hero p{max-width:560px;color:#eef3e9;font-size:1.14rem;margin:18px 0 28px}
.hero-ctas{display:flex;gap:13px;flex-wrap:wrap}
.hero-facts{display:flex;flex-wrap:wrap;margin-top:44px;border-top:1px solid rgba(255,255,255,.25);padding-top:22px;max-width:820px}
.hero-facts div{padding-right:30px;margin-right:30px;border-right:1px solid rgba(255,255,255,.22)}
.hero-facts div:last-child{border:0}
.hero-facts b{display:block;font-family:var(--font-display);font-size:1.35rem;color:#fff}
.hero-facts span{font-size:.83rem;color:#cfdcc9;letter-spacing:.04em}
.pagehero{background:linear-gradient(120deg,var(--green-deep),var(--green));color:#fff;padding:58px 0}
.pagehero h1{color:#fff}
.pagehero p{color:#dcead9;max-width:680px;margin-top:10px}
.crumb{font-size:.85rem;color:var(--gold-2);margin-bottom:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.finder{background:var(--sand)}
.tabs{display:flex;gap:9px;flex-wrap:wrap;margin:26px 0 30px}
.tab{border:2px solid var(--green);background:transparent;color:var(--green);font-weight:800;padding:9px 20px;border-radius:999px;cursor:pointer;font-size:.95rem}
.tab.active{background:var(--green);color:#fff}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(252px,1fr));gap:20px}
.vcard{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;display:flex;flex-direction:column;gap:9px;transition:.2s}
.vcard:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.vcard .tag{align-self:flex-start;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold);background:var(--sand);padding:4px 11px;border-radius:99px}
.vcard h3{color:var(--green-ink)}
.vcard p{color:var(--muted);font-size:.95rem;flex:1}
.vcard .meta{font-size:.86rem;border-top:1px dashed var(--line);padding-top:10px}
.vcard .row{display:flex;gap:9px;margin-top:8px;flex-wrap:wrap}
.vcard.hide{display:none}
.glance{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.gcard{border:1px solid var(--line);border-radius:var(--radius);padding:26px;background:#fff}
.gcard h3{display:flex;gap:10px;align-items:center;margin-bottom:8px}
.gcard .ic{width:38px;height:38px;flex:none;border-radius:11px;background:var(--sand);display:grid;place-items:center;color:var(--green)}
.gcard p{color:var(--muted);font-size:.96rem}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.step{background:var(--green-deep);color:#e7efe4;border-radius:var(--radius);padding:28px}
.step b.num{font-family:var(--font-display);font-size:2rem;color:var(--gold-2);display:block;margin-bottom:8px}
.step h3{color:#fff;margin-bottom:6px}
.step p{font-size:.94rem;color:#cfe0cb}
.checker{background:linear-gradient(125deg,var(--green-ink),var(--green-deep));color:#fff;border-radius:26px;padding:42px;display:grid;grid-template-columns:1.05fr .95fr;gap:38px}
.checker h2{color:#fff}
.checker p{color:#d5e4d0}
.checker .panel{background:#fff;color:var(--ink);border-radius:18px;padding:26px}
label.f{display:block;font-weight:700;font-size:.9rem;margin:0 0 6px}
select,input,textarea{width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:11px;font:inherit;font-size:.98rem;background:#fff;color:var(--ink)}
select:focus,input:focus,textarea:focus{outline:2px solid var(--green-2);border-color:var(--green-2)}
.radio-row{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.radio-row label{display:flex;gap:9px;align-items:flex-start;font-size:.95rem;cursor:pointer;font-weight:500}
.radio-row input{width:auto;margin-top:4px}
.result{margin-top:16px;border-radius:12px;padding:16px 18px;font-size:.96rem;display:none}
.result.show{display:block}
.result.good{background:#e7f5ea;border:1.5px solid #9ed1a9}
.result.mid{background:#fdf3d7;border:1.5px solid #e5cd82}
.result.alt{background:#fdecec;border:1.5px solid #eba9a9}
.result b{display:block;margin-bottom:4px}
@media(max-width:860px){.checker{grid-template-columns:1fr;padding:28px}}
.dests{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px}
.dest{border-radius:var(--radius);overflow:hidden;position:relative;min-height:300px;display:flex;align-items:flex-end;color:#fff}
.dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.dest::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(3,33,21,.85))}
.dest div{position:relative;z-index:2;padding:20px}
.dest h3{color:#fff}
.dest p{font-size:.9rem;color:#e2ebdd}
.postgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px}
.post{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:.2s}
.post:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.post img{height:180px;width:100%;object-fit:cover}
.post .body{padding:20px;display:flex;flex-direction:column;gap:8px;flex:1}
.post .pill{align-self:flex-start;font-size:.68rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:var(--green);background:var(--sand);border-radius:99px;padding:4px 11px}
.post p{color:var(--muted);font-size:.93rem;flex:1}
.post .meta{font-size:.82rem;color:var(--muted)}
.article{max-width:780px;margin:0 auto}
.article h2{margin:34px 0 10px;font-size:1.6rem}
.article p{margin-bottom:14px;color:#2b3a30}
.article ul{margin:0 0 16px 20px;color:#2b3a30}
.article li{margin-bottom:7px}
.article .heroimg{border-radius:var(--radius);margin-bottom:8px;width:100%;height:340px;object-fit:cover}
.callout{background:var(--sand);border-left:5px solid var(--gold);border-radius:12px;padding:18px 20px;margin:22px 0}
.callout b{color:var(--green-ink)}
.regions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}
.region{border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.region h3{margin-bottom:14px;color:var(--green)}
.flaglist{display:flex;flex-wrap:wrap;gap:9px}
.flag{display:inline-flex;align-items:center;gap:8px;background:var(--sand);border-radius:99px;padding:5px 13px 5px 6px;font-size:.88rem;font-weight:600}
.flag img{width:24px;height:18px;border-radius:4px;object-fit:cover}
.wizard{max-width:820px;margin:0 auto}
.wsteps{display:flex;gap:6px;margin-bottom:26px;flex-wrap:wrap}
.wstep{flex:1;min-width:120px;text-align:center;padding:11px 6px;border-radius:11px;background:var(--sand);font-weight:700;font-size:.88rem;color:var(--muted)}
.wstep.on{background:var(--green);color:#fff}
.wpanel{border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
@media(max-width:640px){.grid2{grid-template-columns:1fr}}
.field{margin-bottom:16px}
.err{color:#b3261e;font-size:.85rem;display:none;margin-top:4px}
.field.invalid input,.field.invalid select{border-color:#b3261e}
.field.invalid .err{display:block}
.doclist{list-style:none}
.doclist li{display:flex;gap:10px;padding:11px 0;border-bottom:1px dashed var(--line);align-items:flex-start}
.doclist input{width:auto;margin-top:5px}
.summary{background:var(--sand);border-radius:14px;padding:20px;font-size:.95rem}
.summary div{display:flex;justify-content:space-between;gap:16px;padding:6px 0;border-bottom:1px dashed var(--line)}
.summary div:last-child{border:0}
.confirm{text-align:center;padding:16px 0}
.confirm .ref{font-family:var(--font-display);font-size:2rem;color:var(--green);letter-spacing:.06em}
.timeline{list-style:none;margin:22px 0}
.timeline li{display:flex;gap:15px;padding:0 0 20px;position:relative}
.timeline li::before{content:"";position:absolute;left:13px;top:30px;bottom:0;width:2px;background:var(--line)}
.timeline li:last-child::before{display:none}
.timeline .dot{width:28px;height:28px;flex:none;border-radius:50%;background:#fff;border:2.5px solid var(--line);display:grid;place-items:center;font-size:.8rem;z-index:1;color:transparent}
.timeline li.done .dot{background:var(--green);border-color:var(--green);color:#fff}
.timeline li.now .dot{border-color:var(--gold);background:#fdf3d7;color:var(--gold)}
.timeline b{display:block}
.timeline span{color:var(--muted);font-size:.9rem}
.faq{max-width:820px;margin:0 auto}
.faq details{border:1px solid var(--line);border-radius:13px;margin-bottom:11px;background:#fff}
.faq summary{cursor:pointer;padding:17px 20px;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold);font-size:1.3rem;line-height:1}
.faq details[open] summary::after{content:"\2212"}
.faq .a{padding:0 20px 18px;color:var(--muted)}
.ctaband{background:linear-gradient(120deg,var(--green),var(--green-deep));border-radius:26px;color:#fff;padding:44px;display:flex;gap:26px;align-items:center;flex-wrap:wrap}
.ctaband h2{color:#fff}
.ctaband p{color:#d8e7d2;max-width:560px}
.ctaband .sp{margin-left:auto}
footer.site{background:var(--green-ink);color:#cfe0cb;padding:56px 0 0}
footer.site .cols{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:30px;padding-bottom:38px}
@media(max-width:860px){footer.site .cols{grid-template-columns:1fr 1fr}}
footer.site h4{color:#fff;font-family:var(--font-display);font-weight:400;margin-bottom:13px}
footer.site a{color:#cfe0cb;font-size:.94rem}
footer.site li{list-style:none;margin-bottom:8px}
footer.site .legal{border-top:1px solid rgba(255,255,255,.14);padding:20px 0;font-size:.8rem;color:#9db8a2}
footer.site .bottom{border-top:1px solid rgba(255,255,255,.14);padding:16px 0;font-size:.85rem;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
.wa-float{position:fixed;right:20px;bottom:20px;z-index:70;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 10px 26px rgba(0,0,0,.28)}
.wa-float:hover{text-decoration:none;transform:scale(1.05)}
.notice{background:#fdf3d7;border:1.5px solid #e5cd82;border-radius:12px;padding:14px 18px;font-size:.93rem;margin-bottom:20px}

/* --- v2 upgrades --- */
.hero .bg img.slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.4s ease}
.hero .bg img.slide.on{opacity:.86}
.marquee{background:var(--gold);color:#241a02;overflow:hidden;padding:11px 0;font-weight:800;letter-spacing:.05em}
.marquee .track{display:flex;gap:0;white-space:nowrap;animation:mq 30s linear infinite;width:max-content}
.marquee span{padding:0 26px}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.vcard{overflow:hidden}
.vcard .vimg{height:130px;width:calc(100% + 48px);max-width:none;margin:-24px -24px 6px;object-fit:cover}
.rv{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}
.rv.in{opacity:1;transform:none}
.dest img{transition:transform .8s ease}
.dest:hover img{transform:scale(1.06)}
.lang-btn{border:1.5px solid var(--green);background:#fff;color:var(--green);border-radius:99px;padding:6px 14px;font-weight:800;cursor:pointer;font-size:.88rem}
html[dir="rtl"] body{text-align:right}
html[dir="rtl"] .nav nav{margin-left:0;margin-right:auto}
html[dir="rtl"] .hero-facts div{padding-right:0;margin-right:0;padding-left:30px;margin-left:30px;border-right:0;border-left:1px solid rgba(255,255,255,.22)}
.logo .mark-img{width:46px;height:46px;flex:none}

/* --- v3 animation layer --- */
@keyframes fadeUp{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.045)}}
@keyframes shine{from{left:-70%}to{left:130%}}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes pulseDot{0%{box-shadow:0 0 0 0 rgba(193,154,61,.5)}100%{box-shadow:0 0 0 12px rgba(193,154,61,0)}}
body{animation:fadeIn .5s ease both}
.hero h1,.hero p,.hero .hero-ctas,.hero .hero-facts,.hero .kicker{animation:fadeUp .9s cubic-bezier(.2,.7,.2,1) both}
.hero p{animation-delay:.12s}.hero .hero-ctas{animation-delay:.24s}.hero .hero-facts{animation-delay:.4s}
.hero .bg img.slide.on{animation:kenburns 7s ease both}
.pagehero h1,.pagehero p,.pagehero .crumb{animation:fadeUp .8s cubic-bezier(.2,.7,.2,1) both}
.pagehero p{animation-delay:.12s}
header.site{transition:box-shadow .3s ease,padding .3s ease}
header.site.scrolled{box-shadow:0 10px 30px rgba(4,33,21,.13)}
.nav nav a{position:relative}
.nav nav a::after{content:"";position:absolute;left:0;bottom:-5px;height:2.5px;width:0;background:var(--gold);border-radius:2px;transition:width .3s ease}
.nav nav a:hover::after{width:100%}
.btn{position:relative;overflow:hidden}
.btn.gold::before{content:"";position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.5),transparent);transform:skewX(-20deg)}
.btn.gold:hover::before{animation:shine .8s ease}
.vcard .vimg,.post img{transition:transform .7s ease}
.vcard:hover .vimg,.post:hover img{transform:scale(1.05)}
.vcard,.post{overflow:hidden}
.tab{transition:all .25s ease}
.tab:hover{transform:translateY(-2px)}
.wstep{transition:all .4s ease}
.wpanel{animation:fadeUp .5s ease both}
.faq .a{animation:fadeIn .4s ease}
.faq summary{transition:color .2s}
.faq summary:hover{color:var(--green)}
.timeline li{animation:fadeUp .6s ease both}
.timeline li:nth-child(2){animation-delay:.1s}.timeline li:nth-child(3){animation-delay:.2s}.timeline li:nth-child(4){animation-delay:.3s}.timeline li:nth-child(5){animation-delay:.4s}.timeline li:nth-child(6){animation-delay:.5s}
.timeline li.now .dot{animation:pulseDot 1.6s ease-out infinite}
input,select,textarea{transition:border-color .2s,box-shadow .2s}
.flag{transition:transform .2s,background .2s}
.flag:hover{transform:translateY(-2px);background:var(--sand-2)}
.checker .panel{animation:floaty 7s ease-in-out infinite}
.wa-float{animation:floaty 5s ease-in-out infinite}
#toTop{position:fixed;right:22px;bottom:162px;z-index:69;width:46px;height:46px;border-radius:50%;border:0;background:var(--green-deep);color:#fff;font-size:1.15rem;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.25);opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;transform:translateY(8px)}
#toTop.show{opacity:1;pointer-events:auto;transform:none}
.ctaband{position:relative;overflow:hidden}
.ctaband::before{content:"";position:absolute;top:-60%;right:-8%;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(220,185,95,.35),transparent 65%)}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
  .rv{opacity:1;transform:none}
}

/* --- blog + reviews --- */
.blogbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;justify-content:space-between;margin-bottom:26px}
.blogbar input{flex:1;min-width:230px;max-width:420px;padding:13px 16px;border:1.5px solid #d8e2da;border-radius:12px;font:inherit;background:#fff}
.revcard{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}
.revcard .stars{color:var(--gold);letter-spacing:2px;margin-bottom:8px}
.revcard p{color:var(--mut);font-size:.95rem}
.revcard .who{margin-top:12px;font-weight:700;color:var(--ink)}
.revcard .who small{display:block;color:var(--gold-deep);font-weight:600}
.progressline{height:10px;background:#e7efe9;border-radius:99px;overflow:hidden;margin:14px 0 4px}
.progressline i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--green));border-radius:99px;transition:width .8s ease}
.convo{display:grid;gap:10px;margin-top:12px}
.convo .msg{max-width:85%;padding:11px 14px;border-radius:14px;font-size:.93rem}
.convo .msg.team{background:#eef6f1;border:1px solid #d7e8dc;justify-self:start}
.convo .msg.client{background:#fdf6e3;border:1px solid #eee0b8;justify-self:end}
.convo .msg small{display:block;color:var(--mut);margin-top:4px;font-size:.75rem}
.resbox{background:#fff8ec;border:1.5px solid #ecd9ac;border-radius:16px;padding:20px 22px;margin-top:18px}

/* --- header controls (language / currency) --- */
.hcontrols{display:flex;gap:8px;align-items:center;margin-left:auto;flex:none}
.hsel{padding:8px 10px;border:1.5px solid var(--line);border-radius:99px;font:inherit;font-weight:700;font-size:.85rem;background:#fff;color:var(--ink);cursor:pointer}
.hsel:hover{border-color:var(--gold)}
.nav nav a.mnav-apply{display:none}
@media(max-width:1180px){ .nav nav a.mnav-apply{display:block} .hcontrols .btn{display:none} }
@media(max-width:640px){ #curSel{display:none} }

/* header fit: single line, no wrapping (2026-11-04) */
header.site .wrap{max-width:1500px}
.nav{flex-wrap:nowrap}
.logo{flex:none}
.logo>span{white-space:nowrap;line-height:1.12}
.logo small{white-space:nowrap}
.nav nav{gap:15px}
.nav nav a{white-space:nowrap;font-size:.93rem}
.hcontrols{margin-left:auto}
.hsel{padding:8px 7px;font-size:.84rem}
.nav .btn{white-space:nowrap;flex:none}
@media(max-width:1440px){
  .nav nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;padding:18px 22px;gap:14px;border-bottom:1px solid var(--line);box-shadow:var(--shadow)}
  .nav nav.open{display:flex}
  .burger{display:block}
  .nav .btn{display:none}
  .nav nav a.mnav-apply{display:block}
}
#langSel{max-width:108px}

/* header control icons (2026-11-04) */
.nav nav a .ic{width:17px;height:17px;vertical-align:-3px;margin-inline-end:6px;color:var(--gold-deep)}
.hsel-wrap{position:relative;display:inline-flex;align-items:center}
.hsel-wrap>svg{position:absolute;left:10px;width:16px;height:16px;color:var(--green);pointer-events:none;z-index:1}
.hsel-wrap .hsel{padding-left:31px}
html[dir="rtl"] .hsel-wrap>svg{left:auto;right:10px}
html[dir="rtl"] .hsel-wrap .hsel{padding-left:7px;padding-right:31px}

/* photographic page heroes + richer cards (2026-11-04) */
.pagehero{position:relative;overflow:hidden;background:var(--green-deep);padding:76px 0}
.pagehero .phbg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.07);animation:kenburns 24s ease-in-out infinite alternate}
.pagehero .phshade{position:absolute;inset:0;background:linear-gradient(96deg,rgba(3,33,21,.93) 24%,rgba(3,33,21,.62) 62%,rgba(3,33,21,.38))}
.pagehero .wrap{position:relative;z-index:2}
.pagehero .crumb{color:var(--gold-2)}
.ctaband{background:linear-gradient(100deg,rgba(3,33,21,.94),rgba(6,60,40,.8)),url('/assets/img/desert.jpg') center/cover}
.gcard .ic{width:47px;height:47px;border-radius:14px;background:linear-gradient(145deg,#fdf6e0,#f0e3b6);border:1px solid #e4d194;color:var(--green-2);box-shadow:0 5px 12px rgba(6,60,40,.10)}
.gcard .ic svg{width:24px;height:24px}
.vcard.svc .ic{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:linear-gradient(145deg,#fdf6e0,#f0e3b6);border:1px solid #e4d194;color:var(--green-2);box-shadow:0 5px 12px rgba(6,60,40,.10);margin-bottom:14px}
.vcard.svc .ic svg{width:27px;height:27px}
footer.site .legal{color:#b9d2ba}

/* custom header dropdowns + beautiful selects + summary checks (2026-11-04) */
.dd{position:relative}
.dd-btn{display:inline-flex;align-items:center;gap:7px}
.dd-btn>svg:first-child{width:16px;height:16px;color:var(--green);flex:none}
.dd-btn .chev{width:13px;height:13px;flex:none;transition:transform .25s}
.dd.open .dd-btn .chev{transform:rotate(180deg)}
.dd.open .dd-btn{border-color:var(--gold)}
.dd-menu{position:absolute;top:calc(100% + 9px);inset-inline-end:0;min-width:196px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 44px rgba(3,33,21,.20);padding:6px;display:none;z-index:90;max-height:330px;overflow:auto}
.dd.open .dd-menu{display:block;animation:fadeUp .22s ease both}
#curDD .dd-menu{min-width:228px}
.dd-opt{display:flex;align-items:center;gap:9px;width:100%;text-align:start;padding:9px 12px;border:0;background:none;border-radius:10px;font:inherit;font-size:.92rem;font-weight:600;color:var(--ink);cursor:pointer}
.dd-opt:hover{background:var(--sand)}
.dd-opt.sel{background:#edf4ea;color:var(--green)}
.dd-opt.sel::after{content:"\2713";margin-inline-start:auto;color:var(--gold-deep);font-weight:900}
.dd-opt .dd-code{font-weight:800;min-width:40px}
.dd-opt .dd-name{color:var(--muted);font-weight:600}
.dd-opt.sel .dd-name{color:var(--green)}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23063c28' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;padding-right:36px;cursor:pointer}
html[dir="rtl"] select{background-position:left 12px center;padding-right:14px;padding-left:36px}
.summary ul{list-style:none;margin-top:2px}
.summary li{position:relative;padding-left:28px;margin-bottom:8px}
.summary li:last-child{margin-bottom:0}
.summary li::before{content:"";position:absolute;left:0;top:1px;width:19px;height:19px;border-radius:50%;background-color:#e9f3e4;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a6b3f' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4.5 12.5l5 5L19.5 7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:11px}
html[dir="rtl"] .summary li{padding-left:0;padding-right:28px}
html[dir="rtl"] .summary li::before{left:auto;right:0}

/* article FAQ accordion (2026-11-04) */
.afaq{border:1.5px solid var(--line);border-radius:13px;padding:15px 18px;margin-bottom:10px;background:#fff}
.afaq summary{cursor:pointer;font-weight:700;color:var(--green-ink);list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center}
.afaq summary::-webkit-details-marker{display:none}
.afaq summary::after{content:"+";color:var(--gold-deep);font-size:1.25rem;font-weight:800;line-height:1}
.afaq[open ] summary::after{content:"\2212"}
.afaq p{margin-top:9px;color:#2b3a30}

/* sticky mobile action bar (2026-11-04) */
.mobilebar{display:none}
@media(max-width:760px){
  .mobilebar{display:flex;gap:10px;position:fixed;left:0;right:0;bottom:0;z-index:70;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.94);backdrop-filter:blur(10px);border-top:1px solid var(--line);box-shadow:0 -6px 22px rgba(3,33,21,.12)}
  .mobilebar a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;border-radius:13px;font-weight:800;font-size:1rem}
  .mobilebar a:hover{text-decoration:none}
  .mb-apply{background:var(--green);color:#fff}
  .mb-wa{background:#22b358;color:#fff}
  body{padding-bottom:64px}
  .wa-float{display:none}
  #toTop{bottom:150px}
}

/* hero upgrade (2026-11-05) */
.hero-ctas .btn{display:inline-flex;align-items:center;gap:9px}
.btn.big{padding:15px 27px;font-size:1.03rem;border-radius:14px;box-shadow:0 12px 28px rgba(3,33,21,.35)}
.btn.gold.big:hover{transform:translateY(-2px)}
.btn .arr{width:19px;height:19px;flex:none;transition:transform .25s}
.btn:hover .arr{transform:translateX(3px)}
.hero-note{margin-top:15px;color:#d7e6d2;font-size:.92rem;display:flex;align-items:flex-start;gap:8px}
.hero-note .tick{display:inline-grid;place-items:center;margin-top:2px;width:19px;height:19px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:.72rem;font-weight:900;flex:none}
.hero-facts b span{color:var(--gold-2)}
.hero-ui{position:absolute;right:26px;bottom:24px;z-index:3;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
#heroCap{background:rgba(3,33,21,.55);backdrop-filter:blur(6px);color:#f5ecc9;padding:6px 13px;border-radius:99px;font-size:.82rem;font-weight:700;letter-spacing:.03em}
.hero-dots{display:flex;gap:7px}
.hdot{width:26px;height:5px;border-radius:99px;border:0;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:all .3s}
.hdot.on{background:var(--gold);width:42px}
@media(max-width:640px){ #heroCap{display:none} .hero-ui{right:14px;bottom:14px} .btn.big{padding:14px 20px;font-size:.98rem} }

/* sitewide CTA system (2026-11-05) */
.btn.wa{background:#22b358;color:#fff;border:1.5px solid #22b358}
.btn.wa:hover{background:#1da34e;text-decoration:none}
.gridctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.result-ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.artcta{background:linear-gradient(120deg,var(--green),var(--green-deep));border-radius:20px;padding:28px;margin:34px 0 6px;color:#fff}
.artcta h3{color:#fff;margin-bottom:8px}
.artcta p{color:#d8e7d2;max-width:560px}
.artcta .row{display:flex;gap:11px;flex-wrap:wrap;margin-top:16px}
.artcta-mini{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#fdf6e0;border:1px solid #ecd28a;border-radius:14px;padding:14px 18px;margin:24px 0}
.artcta-mini b{color:var(--ink)}
.artcta-mini span{color:var(--muted)}
.artcta-mini a{margin-left:auto;font-weight:800;color:var(--green)}
@media(max-width:640px){ .artcta-mini a{margin-left:0} }

/* header polish (2026-11-05) */
.nav nav a{position:relative;padding:4px 0}
.nav nav a::after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:0;border-radius:2px;background:var(--gold);transition:width .25s ease}
.nav nav a:hover::after{width:100%}
@media(max-width:1440px){ .nav nav a::after{display:none} }

/* free consultation section (2026-11-05) */
.consult{background:var(--sand);padding:70px 0;border-top:1px solid var(--line)}
.consult-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.consult-pitch h2{font-size:2.05rem}
.consult-pitch p{color:var(--muted);max-width:470px}
.consult-points{list-style:none;margin-top:22px;display:grid;gap:12px}
.consult-points li{color:var(--ink);font-weight:600;position:relative;padding-left:32px}
.consult-points li::before{content:"\2713";position:absolute;left:0;top:0;width:21px;height:21px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:.72rem;font-weight:900;display:grid;place-items:center}
.consult-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:20px;padding:28px;box-shadow:0 20px 44px rgba(4,33,21,.12)}
.consult-cardtop{display:flex;gap:13px;align-items:center;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--line)}
.consult-cardtop img{height:42px}
.consult-cardtop b{display:block;font-family:var(--font-display);font-size:1.12rem;color:var(--green-ink)}
.consult-cardtop span{font-size:.87rem;color:var(--muted)}
.consult-card .field{margin-bottom:13px}
.consult-2col{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.consult-btn{width:100%;justify-content:center;font-size:1.02rem;padding:15px;margin-top:2px;background:#22b358;color:#fff;border:1.5px solid #22b358;display:inline-flex;align-items:center;gap:9px}
.consult-btn:hover{background:#1da34e;text-decoration:none}
.consult-safe{text-align:center;color:var(--muted);font-size:.85rem;margin-top:12px}
.consult-done{text-align:center;color:var(--green);font-weight:700;margin-top:9px}
@media(max-width:900px){ .consult-grid{grid-template-columns:1fr} .consult-2col{grid-template-columns:1fr} }

/* mobile header + overflow fixes (2026-11-05) */
html,body{overflow-x:clip}
@media(max-width:640px){
  .nav{flex-wrap:wrap;gap:10px 14px;padding:10px 0}
  .logo{font-size:1.12rem}
  .logo .mark-img{height:38px}
  .hcontrols{order:3;width:100%;margin-left:0;justify-content:flex-end;gap:8px}
  .hsel{padding:8px 11px;font-size:.85rem}
  .hero .wrap{padding:54px 22px 64px}
  .hero h1{font-size:2.35rem}
  .hero-facts{gap:16px 0}
  .hero-facts div{padding-right:18px;margin-right:18px}
  .hero-ui{bottom:12px}
}
@media(max-width:760px){
  .wrap[style*="grid-template-columns:1fr 1fr"], .wrap[style*="grid-template-columns:1.05fr .95fr"]{grid-template-columns:1fr !important;gap:22px !important}
}

/* ============ design elevation pass (2026-11-05) ============ */
.section-head .kicker{display:inline-flex;align-items:center;gap:12px}
.section-head .kicker::before,.section-head .kicker::after{content:"";width:34px;height:2px;background:var(--gold);border-radius:2px}
.section-head h2{font-size:2.2rem;letter-spacing:-.01em}
.btn.gold{background:linear-gradient(135deg,#dcb959,#c9a24b);box-shadow:0 10px 24px rgba(201,162,75,.35)}
.btn:not(.outline-light):not(.ghost):not(.wa){box-shadow:0 10px 24px rgba(6,78,59,.22)}
.vcard,.post,.gcard{transition:transform .35s ease,box-shadow .35s ease}
.vcard:hover,.post:hover,.gcard:hover{transform:translateY(-5px);box-shadow:0 22px 44px rgba(4,33,21,.14)}
.vcard{overflow:hidden}
.vcard .vimg{transition:transform .8s ease}
.vcard:hover .vimg{transform:scale(1.06)}
.gcard{box-shadow:0 8px 26px rgba(4,33,21,.06)}
.dest{box-shadow:0 16px 36px rgba(4,33,21,.18)}
footer.site{border-top:3px solid transparent;border-image:linear-gradient(90deg,var(--green),var(--gold),var(--green)) 1}
/* steps: premium light cards with a connector line */
.steps{position:relative}
.step{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:20px;padding:30px 28px;box-shadow:0 12px 30px rgba(4,33,21,.07)}
.step p{color:var(--muted)}
.step b.num{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#fdf6e0;border:2px solid var(--gold);color:var(--green-ink);font-size:1.15rem;margin-bottom:16px;position:relative;z-index:1}
@media(min-width:900px){ .steps::before{content:"";position:absolute;top:57px;left:16%;right:16%;border-top:2px dashed #dcc887;z-index:0} }
/* full-bleed image break */
.imgbreak{position:relative;padding:0;overflow:hidden}
.imgbreak>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.imgbreak::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,33,21,.82),rgba(3,33,21,.45) 60%,rgba(3,33,21,.3))}
.imgbreak-in{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:96px 22px;color:#fff}
.imgbreak-in h2{color:#fff;font-size:2.5rem;max-width:720px;margin:10px 0 30px}
.imgbreak-stats{display:flex;flex-wrap:wrap;gap:14px}
.imgbreak-stats div{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(6px);border-radius:15px;padding:14px 20px;min-width:138px}
.imgbreak-stats b{display:block;font-family:var(--font-display);font-size:1.45rem;color:var(--gold-2)}
.imgbreak-stats span{font-size:.86rem;color:#e6eedd}
@media(max-width:640px){ .imgbreak-in{padding:64px 22px} .imgbreak-in h2{font-size:1.8rem} }
/* why band with geometric pattern */
.whyband{background:var(--green-deep) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cpath d='M36 6 L44 28 L66 36 L44 44 L36 66 L28 44 L6 36 L28 28 Z' fill='none' stroke='%23c9a24b' stroke-opacity='0.14'/%3E%3C/svg%3E");padding:84px 0}
.whygrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:20px}
.why{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.14);border-radius:20px;padding:28px;transition:transform .35s ease,background .35s ease}
.why:hover{transform:translateY(-5px);background:rgba(255,255,255,.09)}
.why h3{color:#fff;margin:14px 0 8px}
.why p{color:#cfe0cb;font-size:.95rem}
.wic{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:linear-gradient(135deg,#dcb959,#c9a24b);color:var(--ink)}
.wic svg{width:26px;height:26px}

.step h3{color:var(--green-ink)}
.imgbreak-in h2{max-width:760px}

/* ============ assistant chatbot + offer pop (2026-11-05) ============ */
#chatBtn{position:fixed;right:20px;bottom:88px;z-index:71;display:inline-flex;align-items:center;gap:8px;background:var(--green);color:#fff;border:0;border-radius:99px;padding:13px 20px;font:inherit;font-weight:800;font-size:.95rem;cursor:pointer;box-shadow:0 12px 28px rgba(4,33,21,.3)}
#chatBtn:hover{background:var(--green-deep)}
#chatPanel:not([hidden]){display:flex}
#chatPanel{position:fixed;right:20px;bottom:146px;z-index:92;width:min(374px,calc(100vw - 24px));height:min(548px,calc(100dvh - 190px));background:#fff;border-radius:20px;box-shadow:0 30px 60px rgba(3,33,21,.35);flex-direction:column;overflow:hidden;border:1px solid var(--line)}
.chat-head{display:flex;align-items:center;gap:11px;background:var(--green-deep);color:#fff;padding:14px 16px}
.chat-head img{height:36px;background:#fff;border-radius:9px;padding:3px}
.chat-head b{display:block;font-size:1rem;line-height:1.15}
.chat-head span{font-size:.78rem;color:#bcd2ba}
.chat-head button{margin-left:auto;background:none;border:0;color:#fff;font-size:1.5rem;cursor:pointer;line-height:1;padding:2px 6px}
.chat-body{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:9px;background:#f7f5ee}
.cmsg{max-width:86%;padding:11px 14px;border-radius:15px;font-size:.92rem;line-height:1.5}
.cmsg.bot{background:#fff;border:1px solid var(--line);align-self:flex-start;border-bottom-left-radius:5px}
.cmsg.user{background:var(--green);color:#fff;align-self:flex-end;border-bottom-right-radius:5px}
.cmsg a{font-weight:700}
.chat-chips{display:flex;flex-wrap:wrap;gap:7px;padding:10px 12px 4px;background:#fff}
.chip{border:1.5px solid var(--gold);background:#fdf6e0;color:var(--green-ink);border-radius:99px;padding:7px 12px;font:inherit;font-size:.82rem;font-weight:700;cursor:pointer}
.chip:hover{background:var(--gold);color:#fff}
.chat-input{display:flex;gap:8px;padding:11px 12px;background:#fff;border-top:1px solid var(--line)}
.chat-input input{flex:1;border:1.5px solid #d8e2da;border-radius:11px;padding:11px 12px;font:inherit;min-width:0}
.chat-input button{background:var(--green);color:#fff;border:0;border-radius:11px;padding:11px 16px;font:inherit;font-weight:800;cursor:pointer}
#offerPop:not([hidden]){display:block}
#offerPop{position:fixed;left:22px;bottom:22px;z-index:89;width:min(334px,calc(100vw - 24px));background:#fff;border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:18px;box-shadow:0 24px 50px rgba(3,33,21,.28);padding:20px;animation:offerIn .45s ease}
@keyframes offerIn{from{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}
#offerClose{position:absolute;top:8px;right:12px;background:none;border:0;font-size:1.3rem;color:var(--muted);cursor:pointer}
.offer-pill{display:inline-block;background:#f7ead0;color:#8a6d1f;font-weight:800;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;padding:5px 10px;border-radius:99px;border:1px solid #ecd28a}
#offerPop h4{margin:11px 0 6px;font-size:1.12rem}
#offerPop p{color:var(--muted);font-size:.92rem}
.offer-btns{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}
@media(max-width:760px){
  #chatBtn{bottom:78px;right:12px;padding:12px 16px}
  #chatPanel{right:10px;left:10px;width:auto;bottom:136px;height:min(548px,calc(100dvh - 170px))}
  #offerPop{left:10px;right:10px;width:auto;bottom:132px}
}

.summary li{list-style:none}

/* ============ comparison table + total box (2026-11-05) ============ */
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(4,33,21,.07)}
.cmp{width:100%;border-collapse:collapse;min-width:700px}
.cmp th{text-align:left;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding:15px 18px;border-bottom:2px solid var(--line);background:#fbfaf5}
.cmp td{padding:15px 18px;border-bottom:1px solid #eef0e4;vertical-align:middle;font-size:.96rem}
.cmp tbody tr:last-child td{border-bottom:0}
.cmp tbody tr{transition:background .2s ease}
.cmp tbody tr:hover{background:#fdf9ec}
.cmp td a{color:var(--green-ink)}
.totalbox{background:var(--sand);border-radius:14px;padding:20px;margin-top:16px}
.totalbox h4{margin-bottom:13px;font-size:1rem}
.tgrid{display:flex;align-items:stretch;gap:9px;flex-wrap:wrap}
.tcell{flex:1;min-width:118px;background:#fff;border:1px solid var(--line);border-radius:12px;padding:12px 13px}
.tcell b{display:block;font-size:.92rem;margin-bottom:3px}
.tcell span{font-size:.8rem;color:var(--muted);line-height:1.35;display:block}
.tcell.gold{background:#fdf6e0;border-color:var(--gold)}
.top{align-self:center;font-weight:900;color:var(--gold);font-size:1.1rem}

/* ============ DVP-level tracking blocks (2026-11-05) ============ */
.pbar-wrap{margin:18px 0 6px}
.pbar{height:11px;background:#e8ecdf;border-radius:99px;overflow:hidden}
.pbar-fill{height:100%;background:linear-gradient(90deg,var(--green),var(--gold));border-radius:99px;transition:width .8s ease}
.pbar-label{display:block;margin-top:7px;font-size:.86rem;font-weight:700;color:var(--green-ink)}
.track-block{margin-top:26px}
.track-block h3{margin-bottom:12px}
.upd{border-left:3px solid var(--gold);background:#fdf9ec;border-radius:0 12px 12px 0;padding:11px 14px;margin-bottom:9px}
.upd span{color:var(--muted);font-size:.84rem;margin-left:6px}
.upd p{margin-top:3px}
.rescard{border:1.5px solid var(--gold);background:#fdf6e0;border-radius:16px;padding:20px;margin-top:24px}
.rescard.good{border-color:var(--green);background:#eef6ea}
.rescard h3{margin-bottom:7px}
.rescard .btn{margin-top:12px}
.thread{display:flex;flex-direction:column;gap:9px;margin-bottom:12px}
.tmsg{max-width:85%;border-radius:14px;padding:10px 13px;font-size:.93rem}
.tmsg b{display:block;font-size:.76rem;letter-spacing:.05em;text-transform:uppercase;margin-bottom:3px}
.tmsg span{display:block;margin-top:4px;font-size:.74rem;opacity:.75}
.tmsg.team{background:#fff;border:1px solid var(--line);align-self:flex-start;border-bottom-left-radius:4px}
.tmsg.client{background:var(--green);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}
.replyrow{display:flex;gap:8px}
.replyrow input{flex:1;border:1.5px solid #d8e2da;border-radius:11px;padding:11px 12px;font:inherit;min-width:0}

/* ============ footer payment row (2026-11-05) ============ */
.payrow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding:20px 0 2px;margin-top:26px;border-top:1px solid rgba(255,255,255,.14)}
.payrow .plabel{color:#cfe0cb;font-size:.76rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;margin-right:2px}
.payb{display:inline-flex;align-items:center;gap:4px;background:#fff;border-radius:8px;padding:7px 12px;font-size:.88rem;line-height:1;box-shadow:0 2px 6px rgba(0,0,0,.18)}
.payb.visa{font-style:italic;font-weight:900;color:#1a1f71;letter-spacing:.05em}
.payb i{font-style:italic;font-weight:800}

/* ============ hero upgrade: glass eligibility card + headline sheen (2026-11-05) ============ */
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .hero h1{background:linear-gradient(94deg,#ffffff 52%,#eed188);-webkit-background-clip:text;background-clip:text;color:transparent}
}
.hero-grid{display:grid;grid-template-columns:1fr;gap:30px}
@media(min-width:1024px){ .hero-grid{grid-template-columns:1.04fr .96fr;gap:46px;align-items:start} }
.hero-card{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.3);border-radius:22px;padding:24px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 30px 60px rgba(0,0,0,.35)}
.hc-head{display:flex;gap:13px;align-items:center;margin-bottom:16px}
.hc-head h3{color:#fff;font-size:1.22rem}
.hc-head p{color:#cfe0cb;font-size:.88rem}
.hero-card .f.light{color:#e8f0e4}
.hero-card .radio-row.light label{color:#eef4ea;border-color:rgba(255,255,255,.35);background:rgba(255,255,255,.06)}
.hero-card .result{margin-top:14px}
.hc-note{margin-top:13px;font-size:.82rem;color:#bcd2ba}
@media(max-width:1023px){ .hero-card{max-width:560px} }
@media(max-width:1200px){ #heroCap{display:none} }

/* ============ hero card beauty pass (2026-11-05) ============ */
.hero-card{background:linear-gradient(165deg,rgba(255,255,255,.16),rgba(255,255,255,.05) 55%),linear-gradient(rgba(4,33,21,.16),rgba(4,33,21,.30));border:1px solid rgba(255,255,255,.38);border-radius:24px;padding:26px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 34px 64px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.35)}
.hc-head{align-items:flex-start;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid rgba(255,255,255,.18)}
.hc-head .wic{background:linear-gradient(135deg,#e3c169,#c9a24b);box-shadow:0 8px 18px rgba(201,162,75,.4)}
.hc-head h3{font-size:1.28rem;line-height:1.2}
.hero-card .field{margin-bottom:15px}
.hero-card select{border-radius:12px;padding:13px 14px;font-size:1rem;box-shadow:0 6px 16px rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.6)}
.hero-card select:focus{outline:2px solid var(--gold);outline-offset:1px}
.hero-card .radio-row{display:flex;flex-direction:column;gap:8px;margin-top:2px}
.hero-card .radio-row.light label{display:flex;align-items:center;gap:10px;padding:11px 13px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:rgba(3,33,21,.20);color:#eef4ea;font-size:.93rem;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.hero-card .radio-row.light label:hover{border-color:rgba(255,255,255,.5)}
.hero-card .radio-row.light label:has(input:checked){border-color:var(--gold);background:rgba(201,162,75,.20);color:#fff;font-weight:700}
.hero-card .radio-row input[type="radio"]{accent-color:var(--gold);width:17px;height:17px;flex:none;margin:0}
.hero-card .btn.gold{letter-spacing:.01em}
.hero-card .result{border-radius:14px;box-shadow:0 14px 28px rgba(0,0,0,.22)}
.hc-note{display:flex;gap:8px;align-items:flex-start;font-size:.85rem;color:#cfe0cb;margin-top:14px}
.hc-note .tick{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--gold);color:var(--ink);font-size:.68rem;font-weight:900;flex:none;margin-top:1px}

/* ============ light CTA band (body-level, distinct from the dark pre-footer band) ============ */
.ctaband.light{background:#f4efe0 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='72' height='72' viewBox='0 0 72 72'%3E%3Cpath d='M36 6 L44 28 L66 36 L44 44 L36 66 L28 44 L6 36 L28 28 Z' fill='none' stroke='%23064e3b' stroke-opacity='0.07'/%3E%3C/svg%3E");color:var(--ink);border:1px solid #e7dfc6;box-shadow:0 16px 36px rgba(4,33,21,.08)}
.ctaband.light h2{color:var(--green-ink)}
.ctaband.light p{color:var(--muted)}

/* ============ custom country dropdown ============ */
.dd{position:relative}
.dd-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;background:#fff;border:1px solid #ddd5ba;border-radius:12px;padding:13px 14px;font:inherit;font-size:1rem;color:var(--ink);cursor:pointer;text-align:left;box-shadow:0 6px 16px rgba(0,0,0,.10)}
.dd-btn:hover{border-color:var(--gold)}
.dd-btn .dd-chev{color:#8a834f;flex:none;transition:transform .2s ease}
.dd-btn[aria-expanded="true"] .dd-chev{transform:rotate(180deg)}
.dd:not(.has) .dd-val{color:#7c7663}
.dd-panel{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid #e5e0cd;border-radius:14px;box-shadow:0 24px 48px rgba(0,0,0,.30);z-index:70;overflow:hidden}
.dd-panel[hidden]{display:none}
.dd-search{width:100%;border:0;border-bottom:1px solid #eee7cf;padding:12px 14px;font:inherit;font-size:.98rem;color:var(--ink)}
.dd-search:focus{outline:none;border-bottom-color:var(--gold)}
.dd-list{max-height:236px;overflow:auto;padding:6px}
.dd-list::-webkit-scrollbar{width:9px}
.dd-list::-webkit-scrollbar-thumb{background:#d8c98f;border-radius:99px;border:2px solid #fff}
.dd-list::-webkit-scrollbar-track{background:transparent}
.dd-item{padding:9px 10px;border-radius:8px;cursor:pointer;color:var(--ink);font-size:.97rem}
.dd-item:hover{background:#f4efe0}
.dd-item.act{background:#f4efe0;outline:1px solid var(--gold)}
.dd-item.on{background:rgba(201,162,75,.20);font-weight:700}
.dd-none{padding:12px 10px;color:var(--muted);font-size:.92rem}

/* ============ hero headline motion: word reveal + gold sheen sweep ============ */
.hero h1{animation:none}
.hero h1 .w{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.12em;margin-bottom:-.12em}
.hero h1 .wi{display:inline-block;transform:translateY(112%);animation:wup .7s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes wup{to{transform:none}}
@supports ((-webkit-background-clip:text) or (background-clip:text)){
  .hero h1 .wi{background:linear-gradient(100deg,#ffffff 42%,#f0d48c 50%,#ffffff 58%);background-size:250% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:wup .7s cubic-bezier(.2,.7,.2,1) forwards,sheenmove 6.5s ease-in-out infinite}
}
@keyframes sheenmove{0%{background-position:125% 0}55%{background-position:-25% 0}100%{background-position:-25% 0}}
@media (prefers-reduced-motion: reduce){
  .hero h1 .wi{animation:none;transform:none;background-position:35% 0}
}

/* ============ apply page: single-page form (2026-11-06) ============ */
.apply-wrap{max-width:1180px}
.apply-grid{display:grid;grid-template-columns:1fr;gap:26px;align-items:start}
@media(min-width:1024px){ .apply-grid{grid-template-columns:1fr 340px} .arail{position:sticky;top:112px} }
.a-note{background:#f4efe0;border:1px solid #e7dfc6;border-radius:14px;padding:14px 16px;font-size:.94rem;margin-bottom:20px}
.asec{background:#fff;border:1px solid #eee5cb;border-radius:20px;padding:26px;margin-bottom:20px;box-shadow:0 14px 34px rgba(4,33,21,.06)}
.asec-head{display:flex;gap:13px;align-items:flex-start;margin-bottom:18px}
.asec-head h3{font-size:1.2rem}
.asec-head p{color:var(--muted);font-size:.9rem}
.asec-num{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;flex:none;font-family:Marcellus,serif;font-size:1.05rem;color:var(--gold-d);background:radial-gradient(circle at 32% 30%,#fdf8ea,#f3e9c8);border:1.6px solid var(--gold);box-shadow:0 4px 10px rgba(201,162,75,.25)}
.a-hint{font-size:.9rem;color:var(--muted);margin-top:4px}
.uploads{display:grid;gap:12px}
@media(min-width:760px){ .uploads{grid-template-columns:repeat(3,1fr)} }
.upload-tile{display:flex;flex-direction:column;gap:3px;border:1.6px dashed #d8c98f;border-radius:14px;padding:16px;background:#fbf8ee;cursor:pointer;transition:border-color .2s ease,background .2s ease}
.upload-tile:hover{border-color:var(--gold);background:#f7f1dc}
.upload-tile b{font-size:1rem;color:var(--green-ink)}
.upload-tile span{font-size:.86rem;color:var(--muted)}
.upload-tile .u-fmt{font-size:.78rem;color:#a08c4a;font-weight:700}
.upload-tile input[type="file"]{margin-top:10px;font-size:.85rem}
.upload-tile.filled{border-style:solid;border-color:var(--gold);background:#f4efe0}
.upload-tile .u-file{color:var(--green);font-weight:700;font-size:.85rem;word-break:break-all}
.a-secure{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.9rem;margin:14px 0}
#reviewCard{border-top:1px solid #eee5cb;margin-top:20px}
.railcard{background:#fff;border:1px solid #eee5cb;border-radius:20px;padding:22px;margin-bottom:20px;box-shadow:0 14px 34px rgba(4,33,21,.06)}
.railcard h3{margin-bottom:8px}
.nextsteps{margin:6px 0 0 18px;display:grid;gap:10px;font-size:.94rem;color:var(--muted)}
.nextsteps b{color:var(--ink)}

/* ============ countries: grid, search, verdict (2026-11-06) ============ */
.countries{position:relative;background:var(--sand);overflow:hidden}
.countries::before{content:"";position:absolute;top:-30px;right:-60px;width:min(780px,95%);aspect-ratio:2.15;background:url("../img/world-dots.svg") no-repeat center/contain;opacity:.45;pointer-events:none}
.countries.flat{background:transparent}
.countries.flat::before{display:none}
.countries .wrap{position:relative}
.csearch{display:flex;align-items:center;gap:11px;background:#fff;border:1px solid #e2d9bc;border-radius:14px;padding:6px 8px 6px 16px;max-width:560px;box-shadow:0 10px 24px rgba(4,33,21,.07);margin-bottom:22px;color:#8a834f}
.csearch input{flex:1;border:0;font:inherit;font-size:1rem;color:var(--ink);background:transparent;min-width:0}
.csearch input:focus{outline:none}
.csearch span{font-size:.85rem;color:var(--muted);background:#f4efe0;border-radius:99px;padding:5px 12px;white-space:nowrap}
.cgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(218px,1fr));gap:10px}
.cchip{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #eae2c8;border-radius:13px;padding:10px 12px;color:var(--ink);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.cchip:hover{transform:translateY(-2px);border-color:var(--gold);box-shadow:0 12px 24px rgba(4,33,21,.10)}
.cflag{width:30px;height:30px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(4,33,21,.12);background:#f4efe0}
.cname{font-weight:700;font-size:.93rem;line-height:1.25}
.cbadge{margin-left:auto;font-size:.68rem;font-weight:800;letter-spacing:.02em;border-radius:99px;padding:4px 8px;white-space:nowrap}
.cbadge.ev{background:rgba(201,162,75,.18);color:#8a6a1f}
.cbadge.gcc{background:rgba(10,107,71,.13);color:var(--green)}
.cbadge.sp{background:#f1eee2;color:#7c7663}
.carr{color:#b9a44f;flex:none}
.cnone{margin-top:16px;color:var(--muted)}
.relgrid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}
.verdict{display:flex;gap:20px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:18px;padding:26px;box-shadow:0 16px 36px rgba(4,33,21,.07)}
.verdict b{font-weight:700;color:var(--green-ink)}
.verdict .vhead{font-family:Marcellus,serif;font-size:1.32rem;font-weight:400;color:var(--green-ink);display:block;margin-bottom:8px;line-height:1.3}
.verdict p{color:var(--muted)}
.vflag{width:74px;height:74px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(4,33,21,.12),0 10px 22px rgba(4,33,21,.16)}
@media(max-width:640px){ .cgrid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))} .cbadge{display:none} .verdict{flex-direction:column} .countries::before{opacity:.28} }

/* country chips: keep badges inside the card at every width */
.cchip{min-width:0;overflow:hidden}
.cchip .cname{min-width:0}
.cchip .cbadge{flex:none}
@media(max-width:1560px){ .cchip .carr{display:none} }

/* ---------- mega menu ---------- */
.has-mega{display:flex;align-items:center}
.mega-btn{font:inherit;font-weight:600;font-size:.97rem;color:var(--ink);background:none;border:0;cursor:pointer;display:inline-flex;gap:6px;align-items:center;padding:6px 0;position:relative}
.mega-btn:hover{color:var(--green)}
.mega-btn .chev{width:15px;height:15px;transition:transform .25s ease}
.has-mega.open .mega-btn{color:var(--green)}
.has-mega.open .mega-btn .chev{transform:rotate(180deg)}
.mega{display:none;position:absolute;top:calc(100% + 10px);left:0;right:0;margin-inline:auto;width:min(1180px,calc(100vw - 44px));background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:22px;box-shadow:0 34px 70px rgba(3,33,21,.22);padding:26px 28px 24px;z-index:80;text-align:start}
.has-mega.open .mega{display:block;animation:fadeUp .25s ease both}
.mega.slim{width:min(880px,calc(100vw - 44px))}
.mega-top{display:flex;align-items:baseline;gap:18px;flex-wrap:wrap;margin-bottom:18px}
.mega-kicker{font-size:.78rem;font-weight:800;letter-spacing:.16em;color:var(--gold-deep)}
.mega-note{color:var(--mut);font-size:.92rem}
.mega-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.mcard{display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center;background:#FBF8F1;border:1px solid #EFE7D3;border-radius:14px;padding:16px 8px 13px;color:var(--ink);font-weight:700;font-size:.9rem;line-height:1.25;transition:border-color .2s,transform .2s,box-shadow .2s}
.mcard:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 12px 24px rgba(3,33,21,.10);text-decoration:none}
.mcard .wic{width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid #EFE7D3;color:var(--gold-deep);display:grid;place-items:center}
.mcard .wic svg{width:22px;height:22px}
.mega-cols{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:30px;padding-top:20px}
.mega-col h5{font-size:.74rem;font-weight:800;letter-spacing:.15em;color:var(--gold-deep);margin-bottom:11px}
.mega-col ul{list-style:none;display:grid;gap:8px}
.mega-col li a{color:var(--ink);font-weight:600;font-size:.93rem;display:inline-flex;gap:7px;align-items:baseline}
.mega-col li a::before{content:"›";color:var(--gold-deep);font-weight:800}
.mega-col li a:hover{color:var(--green);text-decoration:none}
.mega-feat{background:linear-gradient(150deg,#FBF3DF,#F7ECD2);border:1px solid #EBDCB4;border-radius:16px;padding:18px}
.mega-feat h4{font-family:var(--serif);font-size:1.18rem;color:var(--green-ink);margin-bottom:6px}
.mega-feat p{color:#5C5546;font-size:.9rem;margin-bottom:13px}
.mega-quick{margin-top:13px;display:grid;gap:5px}
.mega-quick span{font-size:.7rem;font-weight:800;letter-spacing:.14em;color:#97834F}
.mega-quick a{color:var(--green-ink);font-weight:700;font-size:.9rem}
.mega-tools{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.mtool{display:flex;flex-direction:column;gap:7px;background:#FBF8F1;border:1px solid #EFE7D3;border-radius:16px;padding:18px 16px;color:var(--ink);transition:border-color .2s,transform .2s,box-shadow .2s}
.mtool:hover{border-color:var(--gold);transform:translateY(-2px);box-shadow:0 12px 24px rgba(3,33,21,.10);text-decoration:none}
.mtool .wic{width:44px;height:44px;border-radius:12px;background:#fff;border:1px solid #EFE7D3;color:var(--gold-deep);display:grid;place-items:center}
.mtool .wic svg{width:23px;height:23px}
.mtool .mt-t{font-weight:800;font-size:1rem;color:var(--green-ink)}
.mtool .mt-l{color:var(--mut);font-size:.88rem;line-height:1.45}
.mega-tools.hub{grid-template-columns:repeat(2,1fr);gap:16px}
.mtool.big{padding:26px 22px}
.mtool.big .mt-t{font-size:1.15rem}
@media(max-width:1440px){
  .nav nav.open{max-height:calc(100dvh - 72px);overflow:auto}
  .has-mega{display:block;width:100%}
  .mega-btn{width:100%;justify-content:space-between;padding:8px 0;font-size:1rem}
  .mega{position:static;transform:none;width:auto;box-shadow:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:14px 0 8px;background:transparent}
  .mega-cards{grid-template-columns:repeat(2,1fr)}
  .mega-cols{grid-template-columns:1fr;gap:18px}
  .mega-tools{grid-template-columns:1fr}
  .mega-top{margin-bottom:12px}
}
/* ---------- tools pages ---------- */
.tool-wrap{max-width:880px}
.toolgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}
.toolcard{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 10px 30px rgba(4,33,21,.05);margin-bottom:18px}
.toolcard h3{font-family:var(--serif);font-size:1.3rem;color:var(--green-ink);margin-bottom:12px}
.tool-big{font-size:1.12rem;line-height:1.6}
.tool-result{margin-top:16px;background:#F3F8F4;border:1px solid #DCE9DE;border-radius:14px;padding:16px 18px;font-size:1.06rem;color:var(--green-ink);min-height:58px}
.tool-note{color:var(--mut);font-size:.88rem;line-height:1.55;margin-top:12px}
.tool-dates{list-style:none;display:grid;gap:0}
.tool-dates li{display:flex;justify-content:space-between;gap:16px;padding:11px 2px;border-bottom:1px dashed var(--line);font-size:.96rem}
.tool-dates li:last-child{border-bottom:0}
.tool-dates li b{color:var(--green-ink);text-align:end;white-space:nowrap}
.cur-grid{align-items:end}
.name-out{font-size:2.6rem;line-height:1.5;text-align:center;font-weight:700;background:#FBF8F1;border-color:#EFE7D3;min-height:96px;display:flex;align-items:center;justify-content:center}
#nameCopy{margin-top:12px}
@media(max-width:760px){ .toolgrid{grid-template-columns:1fr} .mega-tools.hub{grid-template-columns:1fr} .tool-dates li b{white-space:normal} }

/* mega card labels must wrap (header links elsewhere are nowrap) */
.mega .mcard span{white-space:normal}
.mega .mtool .mt-t,.mega .mtool .mt-l{white-space:normal}

/* country grid: clipped with a View all toggle */
.cgridwrap{position:relative}
.cgridwrap.clipped .cchip:nth-of-type(n+16){display:none}
.cgridwrap.clipped::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:118px;background:linear-gradient(to bottom,rgba(247,242,231,0),var(--sand) 88%);pointer-events:none}
.countries.flat .cgridwrap.clipped::after{background:linear-gradient(to bottom,rgba(255,255,255,0),var(--white) 88%)}
.cview{display:flex;justify-content:center;margin-top:20px}
.cview .btn{gap:9px}
.cview .btn .chev{transition:transform .3s ease}
.cview .btn.open .chev{transform:rotate(180deg)}
@media(max-width:760px){ .cgridwrap.clipped .cchip:nth-of-type(n+11){display:none} }

/* country names: one tidy line, ellipsis when a long name meets its badge */
.cchip .cname{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* mega polish: photo featured card + staggered entrance */
.mega-feat-img{height:92px;margin:-18px -18px 14px;border-radius:16px 16px 0 0;background-size:cover;background-position:center 62%}
.has-mega.open .mcard{animation:fadeUp .45s ease backwards}
.has-mega.open .mcard:nth-child(2){animation-delay:.03s}.has-mega.open .mcard:nth-child(3){animation-delay:.06s}.has-mega.open .mcard:nth-child(4){animation-delay:.09s}.has-mega.open .mcard:nth-child(5){animation-delay:.12s}.has-mega.open .mcard:nth-child(6){animation-delay:.15s}.has-mega.open .mcard:nth-child(7){animation-delay:.18s}.has-mega.open .mcard:nth-child(8){animation-delay:.21s}.has-mega.open .mcard:nth-child(9){animation-delay:.24s}.has-mega.open .mcard:nth-child(10){animation-delay:.27s}
.has-mega.open .mtool{animation:fadeUp .45s ease backwards}
.has-mega.open .mtool:nth-child(2){animation-delay:.05s}.has-mega.open .mtool:nth-child(3){animation-delay:.1s}.has-mega.open .mtool:nth-child(4){animation-delay:.15s}
@media(max-width:1440px){ .mega-feat-img{margin:-14px -14px 12px} }

/* mega slim-down after dedupe: 3-column row, tighter panel */
.mega{padding:22px 24px 20px}
.mega-cards{padding-bottom:16px}
.mcard{padding:13px 8px 11px}
.mega-cols{grid-template-columns:1fr 1fr 1.35fr;padding-top:16px}
.mega-feat-img{height:74px}

/* richer tool cards (mega panel + tools hub) */
.mtool{gap:8px;padding:20px 18px}
.mtool .wic{width:48px;height:48px;border-radius:13px;background:linear-gradient(150deg,#FFF7E0,#FBEFC9);border-color:#EBDCB4}
.mt-live{display:inline-flex;align-items:center;gap:7px;font-size:.8rem;font-weight:700;color:var(--green);background:#EFF6EF;border:1px solid #DCE9DE;border-radius:999px;padding:4px 10px;width:fit-content}
.mt-live::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--gold);flex:none}
.mt-go{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:.86rem;color:var(--gold-deep);margin-top:2px}
.mtool:hover .mt-go{color:var(--green)}
.mtool:hover .mt-go svg{transform:translateX(3px)}
.mt-go svg{transition:transform .2s ease}
.mega-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);color:var(--mut);font-size:.88rem}
.mega-foot a{font-weight:800;color:var(--green-ink)}

/* tools panel: give the richer cards room and let tracks shrink */
.mega.slim{width:min(1060px,calc(100vw - 44px))}
.mega-tools{grid-template-columns:repeat(4,minmax(0,1fr))}
.mega-tools.hub{grid-template-columns:repeat(2,minmax(0,1fr))}
.mt-live{white-space:normal;line-height:1.35}
@media(max-width:760px){ .mega-tools.hub{grid-template-columns:1fr} }

/* legal pages */
.legal-wrap{max-width:820px}
.legal-updated{color:var(--mut);font-size:.9rem;margin-bottom:8px}
.legal-h{font-family:var(--serif);font-size:1.42rem;color:var(--green-ink);margin:30px 0 10px}
.legal-h:first-of-type{margin-top:16px}
.legal-p{color:#3E4A42;margin-bottom:12px;line-height:1.7}
.legal-ul{margin:0 0 14px 20px;color:#3E4A42;line-height:1.7}
.legal-ul li{margin-bottom:7px}

/* the top-level nav underline must never leak into the mega panels */
.nav nav .mega a::after{content:none !important}

/* legal pages v2: designed layout with sticky contents */
.legal-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:44px;align-items:start}
.legal-side{position:sticky;top:110px}
.legal-toc{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 10px;box-shadow:0 8px 24px rgba(3,33,21,.05)}
.legal-toc-k{font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--gold);padding:2px 12px 10px}
.legal-toc a{padding:8px 12px;border-radius:9px;color:#43514A;font-weight:600;font-size:.92rem;line-height:1.35}
.legal-toc a:hover{background:var(--sand);text-decoration:none;color:var(--green-ink)}
.legal-toc a.on{background:#EFF6EF;color:var(--green);font-weight:800;box-shadow:inset 3px 0 0 var(--gold)}
.legal-main{counter-reset:lsec;min-width:0}
.legal-sec{padding:22px 0 6px;border-bottom:1px solid var(--line);scroll-margin-top:110px}
.legal-sec:last-of-type{border-bottom:none}
.legal-h{display:flex;gap:12px;align-items:baseline}
.legal-h::before{counter-increment:lsec;content:counter(lsec,decimal-leading-zero);font-family:Manrope,sans-serif;font-size:.8rem;font-weight:800;color:var(--gold-deep);background:#FBF3DC;border:1px solid #EBDCB4;border-radius:8px;padding:3px 8px;flex:none;transform:translateY(-2px)}
.glancebox{background:linear-gradient(160deg,#FDF9EE,#FBF3DC);border:1px solid #EBDCB4;border-radius:16px;padding:20px 22px;margin:14px 0 8px}
.glancebox b{color:var(--green-ink);display:block;margin-bottom:8px}
.glancebox ul{margin-left:18px;color:#3E4A42;line-height:1.65}
.glancebox li{margin-bottom:5px}
.stagecards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0 6px}
.stagecard{background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:6px}
.stagecard-k{font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--gold)}
.stagecard b{color:var(--green-ink)}
.stagecard p{color:var(--mut);font-size:.9rem;flex:1}
.stagecard-r{font-weight:800;font-size:.88rem;border-radius:999px;padding:5px 11px;width:fit-content}
.stagecard-r.full{background:#E7F4EA;color:var(--green)}
.stagecard-r.part{background:#FBF3DC;color:#8a6d1f}
.stagecard-r.none{background:#F7EDEC;color:#9c4038}
.legal-questions{display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;background:var(--green-ink);border-radius:18px;padding:24px 26px;margin-top:30px}
.legal-questions b{color:#fff;font-family:var(--serif);font-size:1.25rem;font-weight:400;display:block;margin-bottom:4px}
.legal-questions p{color:#C9D8CE}
.legal-q-btns{display:flex;gap:10px;flex-wrap:wrap}
.legal-q-btns .btn.ghost{border-color:rgba(255,255,255,.45);color:#fff;background:transparent}
@media(max-width:900px){
  .legal-grid{grid-template-columns:1fr}
  .legal-side{position:static}
  .legal-toc{flex-direction:row;flex-wrap:wrap;gap:4px}
  .legal-toc-k{width:100%}
  .stagecards{grid-template-columns:1fr}
}
/* softer mega cards: quiet resting borders, gold only on hover */
.mcard,.mtool{border-color:rgba(3,33,21,.05);box-shadow:0 1px 3px rgba(3,33,21,.05)}
.mcard:hover,.mtool:hover{border-color:var(--gold)}

/* currency exchange table: full beauty pass */
.fxt{width:100%;min-width:540px;border-collapse:separate;border-spacing:0;font-size:.95rem}
.fxt thead th{background:linear-gradient(180deg,#FBF3DC,#F7EDCB);color:#8a6d1f;font-size:.76rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;text-align:left;padding:13px 18px;border-bottom:2px solid #EBDCB4;white-space:nowrap}
.fxt thead th:nth-child(2),.fxt thead th:nth-child(3){text-align:right}
.fxt tbody td{padding:11px 18px;border-bottom:1px solid #F1EAD8;vertical-align:middle;color:#3E4A42}
.fxt tbody tr:nth-child(even){background:#FCFAF3}
.fxt tbody tr{transition:background .15s ease}
.fxt tbody tr:hover{background:#F7F1DE}
.fxt tbody tr:last-child td{border-bottom:none}
.fxcur{display:flex;align-items:center;gap:10px;min-width:210px}
.fxflag{width:23px;height:23px;border-radius:50%;object-fit:cover;flex:none;box-shadow:0 0 0 1px rgba(4,33,21,.14)}
.fxcode{font-weight:800;color:var(--green-ink)}
.fxname{color:var(--mut)}
.fxpeg{font-size:.66rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#8a6d1f;background:#FBF3DC;border:1px solid #EBDCB4;border-radius:999px;padding:2px 8px}
.fxnum{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;color:#3E4A42}
.fxnum b{color:var(--green-ink);font-weight:800}
.fxt tbody tr.fxsel{background:#F7EDCB}
.fxt tbody tr.fxsel .fxcode{color:#8a6d1f}

/* RTL repair pass: physical properties that do not flip with dir=rtl */
html[dir="rtl"] .callout{border-left:none;border-right:5px solid var(--gold)}
html[dir="rtl"] .consult-points li{padding-left:0;padding-right:32px}
html[dir="rtl"] .consult-points li::before{left:auto;right:0}
html[dir="rtl"] .glancebox ul{margin-left:0;margin-right:18px}
html[dir="rtl"] .article ul,html[dir="rtl"] .legal-ul{margin-left:0;margin-right:20px}
html[dir="rtl"] .upd{border-left:none;border-right:3px solid var(--gold);border-radius:12px 0 0 12px}
html[dir="rtl"] .upd span{margin-left:0;margin-right:6px}
html[dir="rtl"] .hero-facts div{padding-right:0;margin-right:0;border-right:none;padding-left:30px;margin-left:30px;border-left:1px solid rgba(255,255,255,.22)}
html[dir="rtl"] .hero-facts div:last-child{padding-left:0;margin-left:0;border-left:none}
html[dir="rtl"] .legal-toc a.on{box-shadow:inset -3px 0 0 var(--gold)}
html[dir="rtl"] .chat-head button{margin-left:0;margin-right:auto}
html[dir="rtl"] .artcta-mini a{margin-left:0;margin-right:auto}
html[dir="rtl"] .ctaband .sp{margin-left:0;margin-right:auto}
html[dir="rtl"] .wa-float{right:auto;left:20px}
html[dir="rtl"] #chatBtn{right:auto;left:20px}
html[dir="rtl"] #toTop{right:auto;left:22px}
html[dir="rtl"] #chatPanel{right:auto;left:20px}
html[dir="rtl"] #offerPop{left:auto;right:22px}
html[dir="rtl"] .dd-panel{left:auto;right:0}
html[dir="rtl"] .fxt thead th{text-align:right}
html[dir="rtl"] .fxt thead th:nth-child(2),html[dir="rtl"] .fxt thead th:nth-child(3){text-align:left}
html[dir="rtl"] .fxnum{text-align:left}
/* mixed-direction safety: formulas, codes and chat text pick their own direction per line */
#curResult,#curRate,.bot-msg,.bmsg,.chat-line,.tool-result{unicode-bidi:plaintext}

/* header balance: nav centred between logo and controls (closes the dead gap) */
.nav nav{margin-inline:auto}
html[dir="rtl"] .nav nav{margin-left:auto;margin-right:auto}
/* cookie consent bar */
#cookieBar{position:fixed;left:50%;transform:translate(-50%,18px);bottom:18px;z-index:88;width:min(760px,calc(100vw - 28px));background:#fff;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:16px;box-shadow:0 24px 50px rgba(3,33,21,.25);padding:16px 20px;display:flex;gap:16px;align-items:center;opacity:0;pointer-events:none;transition:opacity .35s ease,transform .35s ease}
#cookieBar[hidden]{display:none!important}
#cookieBar.show{opacity:1;pointer-events:auto;transform:translate(-50%,0)}
#cookieBar .ck-ic{flex:none;width:42px;height:42px;border-radius:12px;background:#FBF3DC;display:grid;place-items:center;color:#8a6d1f}
#cookieBar p{margin:0;font-size:.93rem;line-height:1.55;color:#3E4A42}
#cookieBar p a{font-weight:700;white-space:nowrap}
.ck-btns{display:flex;gap:9px;flex:none}
@media(max-width:760px){ #cookieBar{flex-direction:column;align-items:stretch;text-align:center;bottom:84px;padding:16px} .ck-btns{justify-content:center} #cookieBar .ck-ic{margin:0 auto} }

/* header fit for long-word languages: compact, no wrapping, wider header measure */
header.site .wrap{max-width:1720px}
.nav nav{gap:17px}
.nav nav a,.mega-btn{white-space:nowrap}
@media(max-width:1750px){ .nav nav{gap:14px} .nav nav a{font-size:.94rem} }
@media(max-width:1580px){ .nav nav{gap:11px} .nav nav a{font-size:.91rem} .nav .btn{padding-left:16px;padding-right:16px} }

/* header slack for font-swap widening in long-word languages */
.logo{font-size:1.2rem}
@media(max-width:1500px){ .nav nav{gap:10px} .nav nav a{font-size:.89rem} .hcontrols{gap:6px} .hcontrols .dd-btn{padding:9px 12px} }

/* sliding ticker bar (our style: deep green, gold separators) */
.ticker{background:linear-gradient(90deg,var(--green-deep),var(--green) 55%,var(--green-deep));color:#F3EAD2;overflow:hidden;padding:8px 0;border-bottom:1px solid rgba(212,175,55,.35)}
.ticker-track{display:flex;width:max-content;animation:tickmove 46s linear infinite}
.ticker:hover .ticker-track{animation-play-state:paused}
.tk{display:inline-flex;align-items:center;gap:26px;padding-right:26px;font-size:.82rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.tk i{color:var(--gold);font-style:normal;font-size:.7rem}
@keyframes tickmove{from{transform:translateX(0)}to{transform:translateX(-50%)}}
html[dir="rtl"] .ticker-track{animation-direction:reverse}
@media(max-width:760px){ .tk{font-size:.76rem;gap:20px;padding-right:20px} }
@media (prefers-reduced-motion: reduce){ .ticker-track{animation:none} }

/* header distribution: nav spreads evenly - no dead gaps (user) + animated top strip */
.nav nav{flex:1 1 auto;justify-content:space-evenly;margin:0 14px}
html[dir="rtl"] .nav nav{margin-left:14px;margin-right:14px}
.topstrip{background:linear-gradient(100deg,#07271C 0%,#0B3D2C 38%,#175C43 50%,#0B3D2C 62%,#07271C 100%);background-size:220% 100%;animation:topsheen 8s ease-in-out infinite alternate}
@keyframes topsheen{from{background-position:0% 0}to{background-position:100% 0}}
.topmsg{display:none}
.topmsg.on{display:inline-block;animation:topfade .55s ease both}
@keyframes topfade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){ .topstrip{animation:none} .topmsg.on{animation:none} }

/* logo nudge right (user) - inline-start keeps RTL correct */
.logo{margin-inline-start:16px}

/* menu nudged right too (user) */
.nav nav{margin-inline-start:38px}
html[dir="rtl"] .nav nav{margin-right:38px}

/* sleek header: less vertical air (user) */
.nav{padding:7px 0}

/* tools mega cards redesign (user: not good enough) */
.mega.slim{background:linear-gradient(180deg,#FFFDF8,#FAF3E2)}
.mega-tools{gap:14px}
.mtool{background:#fff;border:1px solid #E7DCBE;border-radius:18px;padding:20px;box-shadow:0 10px 26px rgba(7,39,28,.07);gap:9px}
.mtool:hover{transform:translateY(-3px);border-color:var(--gold);box-shadow:0 18px 34px rgba(7,39,28,.13)}
.mtool .wic{width:52px;height:52px;border-radius:14px;background:linear-gradient(145deg,var(--green-2),var(--green-deep));color:#F2D98C;border:1px solid #0B3D2C;box-shadow:0 8px 16px rgba(7,39,28,.18)}
.mtool .wic svg{width:26px;height:26px}
.mtool:hover .wic{background:linear-gradient(145deg,#E9C767,var(--gold));color:#173D2A;border-color:#C9A227}
.mtool .mt-t{font-size:1.07rem}
.mtool .mt-l{color:var(--mut);line-height:1.5}
.mtool .mt-live{margin-top:auto;width:100%;min-height:44px;border-radius:12px;padding:7px 12px;background:#F2F7F1;border-color:#DFEBDD;line-height:1.3}
.mtool .mt-go{margin-top:4px}

/* imgbreak video background (user pick) - photo stays as poster/fallback */
.imgbreak>video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.imgbreak::after{z-index:2}
.imgbreak-in{z-index:3}

/* header fit system: no shrink-clipping, tighter tiers, burger from 1440 (user: responsive issues) */
.nav{gap:16px}
.nav nav>*{flex:none}
@media(max-width:1700px){
  .logo{margin-inline-start:8px}
  .nav nav{margin-inline-start:12px}
  html[dir="rtl"] .nav nav{margin-right:12px}
  .nav nav a,.nav nav .mega-btn{font-size:.92rem}
}
@media(max-width:1560px){
  .nav nav{gap:10px}
  .nav nav a,.nav nav .mega-btn{font-size:.88rem}
  .logo{font-size:1.1rem}
  .hcontrols{gap:6px}
  .hcontrols .dd-btn{padding:9px 11px}
  header.site .btn{padding:10px 16px;font-size:.93rem}
}
@media(min-width:1441px) and (max-width:1520px){
  .nav nav .nav-track{display:none}
}

/* whole-card links (user: all boxes linkable) */
.post{position:relative;cursor:pointer}
.post h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.vcard{position:relative;cursor:pointer}
.vcard h3 a::after{content:"";position:absolute;inset:0;z-index:1}
.vcard .row,.vcard>a.btn{position:relative;z-index:2}
a.gcard{color:inherit;text-decoration:none;cursor:pointer;display:block}
/* header: hide nav Track across the tight band (topstrip carries it), trim controls */
@media(min-width:1441px) and (max-width:1700px){ .nav nav .nav-track{display:none} }
@media(max-width:1700px){ .hcontrols .dd-btn{padding:9px 11px} header.site .btn{padding:11px 18px} }

/* dropdown polish: styled scrollbars, softer items, gold focus (user: all dropdowns should look good) */
.dd-menu{border-color:#E7DFC6;scrollbar-width:thin;scrollbar-color:#C9A227 #F5EFDC}
.dd-menu::-webkit-scrollbar,.dd-list::-webkit-scrollbar{width:8px}
.dd-menu::-webkit-scrollbar-thumb,.dd-list::-webkit-scrollbar-thumb{background:#D8C58F;border-radius:8px}
.dd-menu::-webkit-scrollbar-track,.dd-list::-webkit-scrollbar-track{background:#F7F2E2}
.dd-list{scrollbar-width:thin;scrollbar-color:#C9A227 #F5EFDC}
.dd-opt{padding:10px 12px;transition:background .15s}
.dd-opt:hover{background:#F7F0DA}
.dd-panel{animation:fadeUp .18s ease both}
.dd-search:focus{outline:none;background:#FDFBF4;box-shadow:inset 0 -2px 0 var(--gold)}
select:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(201,162,39,.18)}

/* Track Application becomes a real button in the menu (user ask) */
.nav a.nav-track{display:inline-flex;align-items:center;gap:7px;border:1.6px solid var(--green);color:var(--green);border-radius:999px;padding:7px 15px;font-weight:800;background:#FDFBF3;line-height:1}
.nav a.nav-track .ic{width:16px;height:16px;color:var(--gold-deep);flex:none}
.nav a.nav-track:hover{background:var(--green);color:#fff;text-decoration:none}
.nav a.nav-track:hover .ic{color:var(--gold)}
.nav a.nav-track::after{content:none!important}
@media(min-width:1441px) and (max-width:1700px){ .nav nav .nav-track{display:inline-flex!important} }
/* RTL alignment fixes: timeline rail follows the dots, arrows point the reading way */
.timeline li::before{left:auto;inset-inline-start:13px}
html[dir="rtl"] .btn .arr, html[dir="rtl"] a .arr{transform:scaleX(-1)}
/* Urdu (Nastaliq) needs taller line boxes or glyphs clip */
html[lang="ur"] h1, html[lang="ur"] h2{line-height:1.8}
html[lang="ur"] h3{line-height:1.9}
html[lang="ur"] p, html[lang="ur"] li{line-height:2}
html[lang="ur"] .btn{line-height:1.8}
/* hero entrance for the checker card + parallax bleed (user-approved animations) */
.hero-card{animation:fadeUp .9s cubic-bezier(.2,.7,.2,1) .3s both}
.hero-dots{animation:fadeIn 1.1s ease .85s both}
.hero .bg{top:-120px}
@media (prefers-reduced-motion: reduce){ .hero-card,.hero-dots{animation:none} }

/* header fit with the Track button restored: extra squeeze tiers (Russian/German) */
@media(max-width:1800px){ .nav nav>a,.nav nav>.has-mega>.mega-btn{font-size:.9rem} .nav a.nav-track{padding:7px 13px} }
@media(max-width:1600px){
  .nav nav>a,.nav nav>.has-mega>.mega-btn{font-size:.86rem}
  .nav a.nav-track{font-size:.86rem;padding:6px 12px}
  .logo{margin-inline-start:0}
  .nav nav{margin-inline-start:6px}
  header.site .wrap{padding-inline:14px}
  .hcontrols{gap:6px}
  .hcontrols .dd-btn{padding:8px 9px}
  .nav .btn.gold,.hcontrols .btn{padding:10px 15px}
}


/* Russian is the widest language: one extra squeeze so the Track button fits at laptop widths */
@media(max-width:1560px){
  html[lang="ru"] .nav nav>a, html[lang="ru"] .nav nav>.has-mega>.mega-btn{font-size:.82rem}
  html[lang="ru"] .nav a.nav-track{font-size:.82rem;padding:6px 11px}
  html[lang="ru"] .hcontrols .btn{padding:9px 13px;font-size:.9rem}
}
@media(max-width:1500px){ html[lang="ru"] .nav nav a[data-i18n="nav_about"]{display:none} }
@media(min-width:1601px) and (max-width:1700px){ html[lang="ru"] .nav nav>a, html[lang="ru"] .nav nav>.has-mega>.mega-btn{font-size:.85rem} }
/* Urdu Nastaliq descenders fall far below the baseline: give the word-reveal mask room */
html[lang="ur"] .hero h1 .w{padding-bottom:.52em;margin-bottom:-.52em}

/* article pages: two-column layout with a working sidebar (user ask, reference-style widgets in our design) */
.artsec{padding:46px 0 60px}
.artgrid{display:grid;grid-template-columns:minmax(0,1fr) 332px;gap:42px;align-items:start}
.artgrid .article{max-width:none;margin:0}
.article h2{scroll-margin-top:112px}
.aside{position:sticky;top:104px;display:grid;gap:18px}
.awidget{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;box-shadow:0 10px 28px rgba(3,33,21,.06)}
.awidget h3{font-size:1.16rem;margin-bottom:7px}
.awidget p{color:var(--mut);font-size:.93rem;margin-bottom:13px}
.awidget.green{background:linear-gradient(160deg,#07503A,#063C28);color:#fff;border:0}
.awidget.green h3{color:#fff}
.awidget.green p{color:#CFE3D6}
.awidget.green .result{color:var(--ink)}
.awidget.sand{background:#FBF6E9}
.awidget.photo{background-size:cover;background-position:center;color:#fff;border:0;position:relative;overflow:hidden}
.awidget.photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,40,26,.45),rgba(4,40,26,.78))}
.awidget.photo>*{position:relative}
.awidget.photo h3{color:#fff}
.awidget.photo p{color:#E8EFE9}
.vlinks{display:grid}
.vlinks a{padding:8.5px 2px;border-bottom:1px dashed #E7DFC6;font-weight:600;color:var(--ink);display:flex;justify-content:space-between;align-items:center}
.vlinks a::after{content:"›";color:var(--gold-deep);font-weight:900}
.vlinks a:hover{color:var(--green)}
.awfoot{display:inline-block;margin-top:13px;font-weight:800;color:var(--green)}
.poprow{display:flex;gap:11px;align-items:center;padding:9px 0;border-bottom:1px dashed #E7DFC6;color:var(--ink)}
.poprow:last-child{border-bottom:0}
.poprow img{width:58px;height:44px;object-fit:cover;border-radius:9px;flex:none}
.poprow span{font-weight:600;font-size:.92rem;line-height:1.35}
.poprow:hover span{color:var(--green)}
.tocbox{background:#FBF6E9;border:1px solid #EFE5C8;border-radius:14px;padding:17px 20px;margin:24px 0}
.tocbox b{display:block;margin-bottom:8px}
.tocbox ol{margin:0;padding-inline-start:20px;display:grid;gap:5px}
.tocbox a{color:var(--green);font-weight:600}
.share{display:flex;align-items:center;gap:9px;margin-bottom:18px}
.share>span{font-weight:700;font-size:.9rem;color:var(--mut)}
.shbtn{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--line);background:#fff;color:var(--green);display:inline-grid;place-items:center;cursor:pointer}
.shbtn:hover{background:var(--green);color:#fff;border-color:var(--green)}
.copied{font-size:.85rem;font-weight:700;color:var(--green)}
.authorcard{display:flex;gap:15px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:19px 21px;margin:30px 0}
.authorcard img{width:44px;height:44px;flex:none}
.authorcard b{display:block;margin-bottom:4px}
.authorcard span{color:var(--mut);font-size:.93rem}
html[dir="rtl"] .vlinks a::after{content:"‹"}
@media(max-width:1079px){ .artgrid{grid-template-columns:1fr} .aside{position:static} }

/* fund the Track button by closing spacing, never by hiding the logo wordmark (user correction) */
@media(max-width:1750px){ header.site .wrap{padding-inline:14px} .nav{gap:10px} .hcontrols{gap:6px} .logo{gap:7px} }
@media(max-width:1600px){ .nav nav>a,.nav nav>.has-mega>.mega-btn{font-size:.84rem} .nav .btn.gold,.hcontrols .btn{padding:10px 14px} }
@media(max-width:1560px){ html[lang="ru"] .nav nav>a, html[lang="ru"] .nav nav>.has-mega>.mega-btn{font-size:.8rem} html[lang="ru"] .nav a.nav-track{font-size:.8rem} }
@media(max-width:1500px){
  .nav nav>a,.nav nav>.has-mega>.mega-btn{font-size:.82rem}
  .nav nav{margin-inline-start:0}
  header.site .wrap{padding-inline:10px}
  .hcontrols .dd-btn{padding:7px 8px;font-size:.88rem}
  .logo .mark-img{width:34px;height:34px}
  html[lang="de"] .nav a.nav-track{font-size:.8rem;padding:6px 11px}
}
@media(min-width:1441px) and (max-width:1470px){ html[lang="ru"] .nav nav a[data-i18n="nav_guides"]{display:none} }

/* Tools mega panel: match the Visas panel (white panel, ivory cards) - user: make it look like the other dropdown */
.mega.slim{background:#fff}
.mtool{background:#FBF8F1;border:1px solid #EFE7D3;border-radius:16px;box-shadow:none;padding:18px}
.mtool:hover{border-color:var(--gold);box-shadow:0 14px 30px rgba(7,39,28,.10)}
.mt-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.mtool .mt-live{margin:0;width:auto;min-height:0;border-radius:999px;padding:4px 10px;font-size:.75rem;line-height:1.25;white-space:nowrap;background:#EFF6EF;border:1px solid #DCE9DE}
.mtool .mt-l{flex:1}
.mtool .mt-go{border-top:1px solid #EFE7D3;padding-top:10px}

/* phone header: second row becomes a full toolbar (language, currency, Track) - no more empty gap */
.mtrk{display:none}
@media(max-width:640px){
  .hcontrols{justify-content:flex-start}
  .mtrk{display:inline-flex;flex:1;justify-content:center;padding:10px 8px;font-size:.9rem}
}

/* nationality dropdowns: country flags in the list and beside the chosen value */
.dd-item{display:flex;align-items:center;gap:9px}
.dd-flag{width:21px;height:15px;object-fit:cover;border-radius:3px;flex:none;box-shadow:0 0 0 1px rgba(3,33,21,.10)}
.dd-btnflag{width:22px;height:16px;object-fit:cover;border-radius:3px;flex:none;box-shadow:0 0 0 1px rgba(3,33,21,.10)}
.field.invalid .dd-btn{border-color:#b3261e}

/* tools mega panel: real breathing room between the cards (user-flagged) */
.mega.slim{width:min(1140px,calc(100vw - 44px));padding:28px 30px 24px}
.mega-tools{gap:22px}
.mega .mtool{padding:20px}
@media(max-width:760px){ .mega.slim{padding:6px 2px 4px} .mega-tools{gap:14px} }

/* tools mega: icon tiles must never be squeezed by the live pill */
.mega.slim{width:min(1180px,calc(100vw - 44px))}
.mt-top{display:flex;align-items:center;gap:8px}
.mtool .wic{flex:none}
.mega .mtool .mt-live{font-size:.7rem;padding:4px 8px}

/* phone header: dropdown menus become a full-width sheet under the toolbar
   (they were right-anchored to each button and slid off the left edge),
   and the Track pill keeps its label on one line */
@media(max-width:640px){
  .hcontrols{position:relative;gap:7px}
  .hcontrols .dd{position:static;flex:none}
  .hcontrols .dd-menu{left:0;right:0;width:auto;min-width:0;top:calc(100% + 8px)}
  .hcontrols .hsel{padding:7px 8px;font-size:.8rem}
  .mtrk{white-space:nowrap;font-size:.84rem;padding:9px 10px;gap:6px;min-width:0}
}
@media(max-width:380px){
  .hcontrols .hsel{padding:7px 7px;font-size:.78rem}
  .mtrk{font-size:.78rem;padding:9px 8px}
}

/* the button flag placeholder must stay hidden until a country is chosen
   (a global img display rule was defeating the hidden attribute) */
.dd-btnflag[hidden]{display:none!important}

/* the phone-only Track twin inside .hcontrols must stay hidden on desktop:
   the base .nav a.nav-track rule (higher specificity) was defeating .mtrk{display:none} */
.hcontrols a.nav-track.mtrk{display:none!important}
@media(max-width:640px){ .hcontrols a.nav-track.mtrk{display:inline-flex!important} }

/* Spanish is a long language in this header: give it the RU-style tiers */
@media(max-width:1600px){ html[lang="es"] .nav nav>a, html[lang="es"] .nav nav>.has-mega>.mega-btn{font-size:.82rem} html[lang="es"] .nav a.nav-track{font-size:.8rem;padding:6px 11px} }
@media(max-width:1520px){ html[lang="es"] .nav nav a[data-i18n="nav_about"]{display:none} }

/* audit fixes: long-language header tiers for PT/FR/TR + a tighter RU band */
@media(max-width:1600px){ html[lang="pt"] .nav nav>a, html[lang="pt"] .nav nav>.has-mega>.mega-btn, html[lang="fr"] .nav nav>a, html[lang="fr"] .nav nav>.has-mega>.mega-btn, html[lang="tr"] .nav nav>a, html[lang="tr"] .nav nav>.has-mega>.mega-btn{font-size:.82rem} html[lang="pt"] .nav a.nav-track, html[lang="fr"] .nav a.nav-track, html[lang="tr"] .nav a.nav-track{font-size:.8rem;padding:6px 11px} }
@media(max-width:1520px){ html[lang="pt"] .nav nav a[data-i18n="nav_about"], html[lang="fr"] .nav nav a[data-i18n="nav_about"], html[lang="tr"] .nav nav a[data-i18n="nav_about"]{display:none} }
@media(max-width:1650px){ html[lang="ru"] .nav nav>a, html[lang="ru"] .nav nav>.has-mega>.mega-btn{font-size:.82rem} }
/* two-column content wrappers built with inline grid styles must stack on phones */
@media(max-width:860px){ .wrap[style*="display:grid"]{grid-template-columns:1fr!important;gap:26px!important} }

/* audit round 2: the 1441px desktop edge for PT/FR/TR/HU + PT's marginal 1600-1700 band */
@media(max-width:1750px){ html[lang="pt"] .nav nav>a, html[lang="pt"] .nav nav>.has-mega>.mega-btn{font-size:.8rem} html[lang="pt"] .nav a.nav-track{font-size:.8rem;padding:6px 11px} }
@media(max-width:1560px){ html[lang="pt"] .nav nav>a, html[lang="pt"] .nav nav>.has-mega>.mega-btn, html[lang="fr"] .nav nav>a, html[lang="fr"] .nav nav>.has-mega>.mega-btn, html[lang="tr"] .nav nav>a, html[lang="tr"] .nav nav>.has-mega>.mega-btn, html[lang="hu"] .nav nav>a, html[lang="hu"] .nav nav>.has-mega>.mega-btn{font-size:.79rem} html[lang="hu"] .nav a.nav-track{font-size:.78rem;padding:6px 10px} }
@media(max-width:1520px){ html[lang="hu"] .nav nav a[data-i18n="nav_about"]{display:none} }
@media(max-width:1480px){ html[lang="pt"] .nav nav a[data-i18n="nav_guides"], html[lang="hu"] .nav nav a[data-i18n="nav_guides"]{display:none} }

/* embassies finder page */
.embsec{background:var(--sand)}
.egrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:10px;margin-top:18px}
.ecard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px 11px}
.ecard .ename{display:flex;align-items:center;gap:9px;font-weight:700;font-size:.96rem}
.ecard .ename img{width:24px;height:18px;object-fit:cover;border-radius:3px;flex:none}
.ecard .elinks{margin-top:8px;display:flex;flex-direction:column;gap:3px;font-size:.85rem}
.ecard .enom{color:var(--muted)}
.embsearch{max-width:520px;margin-top:16px}
.embsearch input{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:999px;font-size:.95rem;background:#fff}
.embsearch input:focus{outline:2px solid var(--gold);border-color:transparent}
.needgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
@media(max-width:900px){.needgrid{grid-template-columns:1fr}}
.need{background:#FBF8F1;border:1px solid #EFE7D3;border-radius:16px;padding:18px}
.need h3{margin:0 0 6px;font-size:1.02rem}
.need p{margin:0;font-size:.9rem}

/* tourism landing: destination cards */
.tgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px}
@media(max-width:1000px){.tgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.tgrid{grid-template-columns:1fr}}
.tcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .18s,box-shadow .18s}
.tcard:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(6,61,46,.13);text-decoration:none}
.tcard .timg{height:168px;background-size:cover;background-position:center;display:block}
.tcard .tbody{padding:15px 17px 14px;display:flex;flex-direction:column;gap:6px}
.tcard .tbody b{font-family:Marcellus,serif;font-size:1.16rem;font-weight:400}
.tcard .tbody span{font-size:.9rem;color:var(--muted)}
.tcard .tgo{color:var(--green);font-weight:700;font-size:.86rem}

/* fact rows on visa cards + whatsapp card button */
.vfacts{border-top:1px solid var(--line);margin-top:6px}
.vfacts>div{display:flex;justify-content:space-between;gap:10px;padding:7px 1px;border-bottom:1px solid #F1EAD9;font-size:.86rem}
.vfacts span{color:var(--muted)}
.vfacts b{font-weight:700;text-align:right}
.wabtn{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#25D366;flex:none;margin-inline-start:auto}
.vcard .vnote{font-size:.76rem;color:var(--muted);margin-top:9px}
.vcard.feat{border-color:var(--gold);box-shadow:0 12px 28px rgba(176,141,62,.18)}
.mcard .fpill{position:absolute;top:5px;inset-inline-end:7px;background:var(--gold);color:#231A05;font-size:.58rem;font-weight:800;letter-spacing:.07em;padding:2px 7px;border-radius:99px;font-style:normal}
.mcard{position:relative}
/* prose pages (about saudi / history / vision / royal family) */
.prose{max-width:840px}
.prose p{margin:0 0 14px;line-height:1.78}
.prose h3{margin:22px 0 8px;font-size:1.12rem}
/* entry points cards */
.epgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:10px;margin-top:18px}
.epcard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:13px 15px}
.epcard .iata{font-family:Marcellus,serif;font-size:1.35rem;color:var(--green);letter-spacing:.04em}
.epcard .epn{font-weight:700;font-size:.93rem;margin-top:2px}
.epcard .epc{font-size:.83rem;color:var(--muted)}
.epbadges{margin-top:8px;display:flex;gap:6px;flex-wrap:wrap}
.epb{font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:99px;background:#EAF4EC;color:var(--green)}
.epb.voa{background:#FBF3DC;color:#7A5B12}

/* visa card action row: one clean line - Apply grows, WhatsApp sits square beside it */
.vcard .row{flex-wrap:nowrap;align-items:stretch}
.vcard .row .vapply{flex:1;justify-content:center}
.wabtn{width:46px;height:auto;min-height:46px;border-radius:12px;margin-inline-start:0}
.vmore{margin-top:10px}
.vmore a{font-weight:700;font-size:.87rem;color:var(--green)}

/* featured visa CTA buttons in the Visas mega menu */
.mega-feats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 6px}
.mfbtn{display:flex;flex-direction:column;gap:2px;padding:13px 18px;border-radius:14px;text-decoration:none;transition:transform .15s,box-shadow .15s}
.mfbtn b{font-size:1.03rem}
.mfbtn span{font-size:.8rem;opacity:.88}
.mfbtn.gold{background:linear-gradient(135deg,var(--gold),#C9A24B);color:#241B04}
.mfbtn.green{background:var(--green);color:#fff}
.mfbtn:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(6,61,46,.22);text-decoration:none}
@media(max-width:640px){.mega-feats{grid-template-columns:1fr}}

/* featured visa cards in the Visas mega menu (replaces the flat button slabs) */
.mega-feats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 8px}
.mfcard{display:flex;align-items:center;gap:14px;background:#FBF7EC;border:1.5px solid rgba(200,162,75,.55);border-radius:16px;padding:10px 14px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s}
.mfcard img{width:76px;height:56px;object-fit:cover;border-radius:10px;flex:none}
.mfcard .mft{display:flex;flex-direction:column;gap:2px;margin-inline-end:auto;min-width:0}
.mfcard .mft b{font-size:1rem;color:var(--ink)}
.mfcard .mft small{color:var(--muted);font-size:.8rem}
.mfcard .mfgo{background:linear-gradient(135deg,var(--gold),#C9A24B);color:#241B04;padding:8px 14px;border-radius:999px;font-weight:700;font-size:.84rem;white-space:nowrap}
.mfcard:hover{transform:translateY(-2px);box-shadow:0 10px 22px rgba(6,61,46,.16);border-color:var(--gold);text-decoration:none}
@media(max-width:640px){.mega-feats{grid-template-columns:1fr}.mfcard img{width:60px;height:48px}}

/* featured visa spotlight cards on the homepage */
.fspots{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:4px 0 28px}
.fspot{background:#fff;border:1.5px solid rgba(200,162,75,.6);border-radius:20px;overflow:hidden;box-shadow:0 14px 34px rgba(6,61,46,.10);display:flex;flex-direction:column}
.fspot-head{background:linear-gradient(135deg,#0B4A35,#063D2E);padding:20px 22px 16px}
.fspot-head .fpill2{display:inline-block;background:rgba(200,162,75,.22);color:#E9CD7E;border:1px solid rgba(200,162,75,.5);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.fspot-head h3{margin:9px 0 2px}
.fspot-head h3 a{color:#fff;font-size:1.38rem}
.fspot-head p{color:#C9D8CE;margin:0;font-size:.93rem}
.fspot-body{padding:16px 22px 20px;display:flex;flex-direction:column;flex:1}
.ffact{display:flex;align-items:center;gap:10px;padding:9px 0;border-bottom:1px solid var(--line)}
.ffact svg{width:18px;height:18px;color:var(--gold);flex:none}
.ffact span{color:var(--muted)}
.ffact b{margin-inline-start:auto;color:var(--ink);text-align:end}
.ftotal{display:flex;justify-content:space-between;gap:12px;padding:12px 0 2px}
.ftotal span{color:var(--muted)}
.ftotal b{color:var(--green);text-align:end}
.fspot .row{display:flex;gap:10px;margin-top:auto;padding-top:12px;flex-wrap:nowrap;align-items:stretch}
.fspot .row .vapply{flex:1;justify-content:center}
.fspot .vmore{margin-top:10px}
.fspot .vmore a{font-weight:700;font-size:.87rem;color:var(--green)}
@media(max-width:860px){.fspots{grid-template-columns:1fr}}

/* hero fact strip: bigger numbers (the label rule was shrinking the counters) */
.hero-facts b{font-size:2rem;line-height:1.15}
.hero-facts b span[data-count]{font-size:2.35rem;color:#E9CD7E}
.hero-facts>div>span{font-size:.9rem}
@media(max-width:640px){.hero-facts b{font-size:1.55rem}.hero-facts b span[data-count]{font-size:1.85rem}}

/* mega featured cards: clean icon tiles instead of photos */
.mfcard .mfic{width:52px;height:52px;border-radius:14px;background:#fff;border:1px solid rgba(200,162,75,.45);display:grid;place-items:center;color:#B78F2E;flex:none}
.mfcard .mfic svg{width:26px;height:26px}
@media(max-width:640px){.mfcard .mfic{width:46px;height:46px}}

/* hero fact strip: one row at the bigger size (tightened gaps) */
.hero-facts{flex-wrap:nowrap;max-width:100%}
.hero-facts div{padding-right:17px;margin-right:17px}
.hero-facts b{font-size:1.68rem}
.hero-facts b span[data-count]{font-size:2.02rem}
.hero-facts>div>span{font-size:.84rem}
@media(max-width:900px){.hero-facts{flex-wrap:wrap}.hero-facts div{padding-right:22px;margin-right:22px}}

/* deep content sections on the featured visa pages */
.deepsec{padding:10px 0 4px}
.deepsec h2{margin:30px 0 10px;font-size:1.55rem}
.deepsec h2:first-child{margin-top:4px}
.deepsec p{margin:0 0 12px;color:#33473C;line-height:1.65}
.deepsec ul{margin:0 0 14px 20px;line-height:1.7;color:#33473C}
.deepsec h3{margin:20px 0 6px;font-size:1.12rem}
.deepsec .vtable th.hl,.deepsec .vtable td.hl{background:#FBF3DC}

/* embassies interactive map */
.embchips{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 14px}
.embchip{border:1.5px solid var(--line);background:#fff;padding:8px 15px;border-radius:999px;font-weight:700;font-size:.88rem;cursor:pointer;color:var(--ink)}
.embchip.active{background:var(--green);color:#fff;border-color:var(--green)}
.embmap-card{background:linear-gradient(180deg,#FDFBF4,#F6EFDC);border:1px solid var(--line);border-radius:20px;padding:18px 18px 8px;box-shadow:0 12px 30px rgba(6,61,46,.07);margin-bottom:18px}
#embMap{width:100%;height:auto;display:block}
#embMap .land{fill:#DFE7DC}
#embMap .cty{fill:#A9C6AE;stroke:#fff;stroke-width:.6;cursor:pointer;transition:fill .12s,opacity .15s}
#embMap .cty:hover{fill:#C8A24B}
#embMap .cty.active{fill:#0B5B3E}
#embMap .cty.host{fill:#C8A24B}
#embMap .cty.dim{opacity:.15}
#embMap circle.cty{stroke:#fff;stroke-width:1.4}
.embinfo{border-top:1px solid var(--line);margin-top:10px;padding:14px 4px 10px;min-height:64px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.embinfo-head{display:flex;align-items:center;gap:11px;font-size:1.12rem}
.embinfo-head img{width:34px;height:24px;object-fit:cover;border-radius:5px}
.embinfo-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-inline-start:auto}
.embinfo-route{font-weight:700;color:var(--green)}
.embinfo-p,.embinfo-hint{color:var(--muted);margin:0}
.ecard.hl{border-color:var(--gold);box-shadow:0 0 0 2px rgba(200,162,75,.45)}
@media(max-width:640px){.embinfo-actions{margin-inline-start:0}}

/* country page embassy box */
.embbox{background:#fff;border:1px solid var(--line);border-radius:18px;padding:26px 28px;box-shadow:0 12px 30px rgba(6,61,46,.06)}
.embbox h2{font-size:1.5rem;margin:6px 0 10px}
.embbox p{color:var(--muted)}
.embbox-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0 12px}
.embbox-note{font-size:.93rem;margin:0}

/* embassies: search suggestions + map hint */
.embsearch{position:relative}
.embsugg{position:absolute;left:0;right:0;top:calc(100% + 6px);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px rgba(6,61,46,.16);overflow:hidden;z-index:6}
.embsugg button{display:flex;align-items:center;gap:10px;width:100%;padding:11px 14px;background:none;border:0;text-align:left;font-weight:600;font-size:.98rem;cursor:pointer;color:var(--ink)}
.embsugg button:hover{background:var(--sand)}
.embsugg img{width:26px;height:19px;object-fit:cover;border-radius:4px}
.embhint{color:var(--muted);font-size:.92rem;margin-top:12px}

/* header dropdowns v2: search, flags, symbols */
.dd-search{position:sticky;top:-6px;margin:-6px -6px 6px;padding:10px 12px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;z-index:2}
.dd-search svg{width:15px;height:15px;color:var(--muted);flex:none}
.dd-search input{border:0;outline:0;background:none;font:inherit;font-size:.92rem;width:100%;color:var(--ink)}
#langDD .dd-menu{min-width:274px}
#curDD .dd-menu{min-width:256px}
.dd-flag{width:26px;height:19px;object-fit:cover;border-radius:4px;flex:none}
.dd-opt .dd-sub{color:var(--muted);font-weight:500;font-size:.85rem}
.dd-sym{width:38px;height:26px;flex:none;display:flex;align-items:center;justify-content:center;background:var(--sand);border-radius:7px;font-size:.82rem;font-weight:800;color:var(--green)}
.dd-opt.sel .dd-sym{background:#dcead9}

/* visa cards: even rows, actions pinned to the bottom, tighter body */
.cards{align-items:stretch}
.vcard{height:100%;padding:22px;gap:8px}
.vcard .vimg{height:112px;margin:-22px -22px 4px;width:calc(100% + 44px)}
.vcard h3{min-height:2.5em}
.vcard>p{flex:0 1 auto}
.vcard .vfacts{margin-top:auto;padding-top:10px}
.vcard .vfacts>div{padding:6px 1px}
.vcard .row{margin-top:10px}
.vcard .vnote{margin-top:7px}

/* fix batch: FAQ margins, comparison table, total box, mega gaps */
.faq details>p{padding:0 20px 18px;color:var(--muted);margin:0}
.deepsec .vtable{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#fff;margin:18px 0 8px}
.deepsec .vtable th,.deepsec .vtable td{padding:13px 16px;text-align:left;font-size:.95rem;line-height:1.5;border-bottom:1px solid #F1EAD9;vertical-align:top}
.deepsec .vtable tr:last-child td{border-bottom:0}
.deepsec .vtable th{font-family:var(--font-display);font-weight:400;font-size:1.04rem;background:#FBFAF4;border-bottom:2px solid var(--line)}
.deepsec .vtable td:first-child{font-weight:700;color:var(--green-ink);width:21%}
.deepsec .vtable th.hl{background:#F1E2B6}
.deepsec .vtable td.hl{background:#FBF3DC}
@media(max-width:640px){.deepsec .vtable th,.deepsec .vtable td{padding:10px 11px;font-size:.85rem}}
.totalbox .tbgrid{display:flex;align-items:stretch;gap:8px;flex-wrap:nowrap}
.totalbox .tcell{flex:1 1 0;min-width:0;padding:11px 12px}
.totalbox .top{flex:none}
@media(max-width:520px){.totalbox .tbgrid{flex-wrap:wrap}.totalbox .tcell{flex:1 1 42%}}
.mega-feats{gap:16px}
.mfcard{min-width:0;padding:12px 16px}
.mfcard .mfgo{flex:none}

/* photo credits: collapsible card */
.creditsbox{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 10px 26px rgba(6,61,46,.05)}
.creditsbox summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:14px;padding:20px 24px;font-family:var(--font-display);font-size:1.28rem;color:var(--green-ink)}
.creditsbox summary::-webkit-details-marker{display:none}
.creditsbox summary::after{content:"+";margin-inline-start:auto;color:var(--gold);font-size:1.5rem}
.creditsbox[open] summary::after{content:"\2212"}
.cb-hint{font-family:var(--font-body);font-size:.82rem;color:var(--muted)}
.cb-body{padding:4px 24px 22px;border-top:1px solid #F1EAD9}
.cb-body ul{columns:2;column-gap:34px;font-size:.85rem;color:var(--muted)}
.cb-body li{margin-bottom:7px;break-inside:avoid}
@media(max-width:700px){.cb-body ul{columns:1}}

/* ---- polish round: FAQ reskin, regions stack, cmp table, verdict CTAs, emb gap ---- */
.faq{max-width:840px}
.faq details{border:1px solid #E7DFC8;border-radius:16px;margin-bottom:12px;background:#fff;box-shadow:0 3px 10px rgba(6,61,46,.04);overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq details:hover{border-color:#D9C98F}
.faq details[open]{border-color:var(--gold);background:linear-gradient(180deg,#FFFDF6,#fff);box-shadow:0 12px 26px rgba(6,61,46,.07)}
.faq summary{padding:18px 22px;font-size:1.01rem;align-items:center}
.faq summary::after{content:"+";flex:none;width:30px;height:30px;border:1.5px solid rgba(200,162,75,.55);border-radius:50%;display:grid;place-items:center;font-size:1.12rem;font-weight:400;color:#B78F2E;background:#FDF9EC;transition:transform .25s,background .25s}
.faq details[open] summary::after{content:"\2212";background:var(--gold);color:#241B04;border-color:var(--gold)}
.faq .a{padding:0 22px 19px;line-height:1.68}
.faq details>p{padding:0 22px 19px;color:var(--muted);line-height:1.68;font-size:.965rem;margin:0;animation:fadeIn .4s ease}
.regions{display:flex;flex-direction:column;gap:16px}
.region{display:grid;grid-template-columns:190px 1fr;gap:6px 24px;align-items:start;padding:22px 26px;background:#fff;border-radius:18px}
.region h3{margin:3px 0 0}
.region .regn{display:block;font-family:Inter,sans-serif;font-size:.74rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#B78F2E;margin-top:6px}
@media(max-width:640px){.region{grid-template-columns:1fr;padding:18px 20px}}
.cmp tbody tr:nth-child(even){background:#FCFAF3}
.cmp td{padding:19px 22px}
.cpill{display:inline-block;margin-inline-start:9px;background:#F3E5BC;color:#7A5B12;font-size:.6rem;font-weight:800;letter-spacing:.09em;padding:3px 8px;border-radius:999px;vertical-align:2px;text-transform:uppercase}
.vctas{display:flex;gap:11px;flex-wrap:wrap;margin-top:18px}
.embsec.emblast{padding-bottom:24px}

/* ---- mobile mega menus: true single column, nothing overflows (round 107) ---- */
@media(max-width:1440px){
  .mega-cols{grid-template-columns:1fr;gap:20px}
  .mega-col{min-width:0}
  .mega-feat{max-width:560px}
  .mega-cards{grid-template-columns:repeat(2,1fr)}
  .mega-tools{grid-template-columns:1fr}
  .mtool{min-width:0}
  .mt-top{flex-wrap:wrap;row-gap:8px}
  .mt-live{white-space:normal}
}
@media(max-width:640px){
  .mega-feats{grid-template-columns:1fr}
}

/* ---- indonesian header headroom (round 107) ---- */
@media(max-width:1750px){ html[lang="id"] .nav nav>a, html[lang="id"] .nav nav>.has-mega>.mega-btn{font-size:.88rem} html[lang="id"] .nav a.nav-track{font-size:.87rem;padding:6px 12px} html[lang="id"] .hcontrols .btn{padding:9px 14px;font-size:.92rem} }
@media(max-width:1560px){ html[lang="id"] .nav nav>a, html[lang="id"] .nav nav>.has-mega>.mega-btn{font-size:.85rem} }

/* ---- round 111: RTL number isolation, phone mega wrap, emb gap tighten ---- */
.ltrnum{direction:ltr;unicode-bidi:isolate;display:inline-block}
@media(max-width:1440px){ .nav nav .mega a{white-space:normal} }
.embsec.emblast{padding-bottom:12px}

/* ---- round 112: button pairs always keep a real gap, incl. stacked on phone ---- */
.btnpair{display:flex;gap:12px;flex-wrap:wrap}

/* ---- round 113: card rows reveal by fade only - no vertical drift, buttons stay aligned ---- */
.cards>.rv,.postgrid>.rv{transform:none;transition:opacity .5s ease}

/* ---- round 114: eligibility region chips are links ---- */
a.flag{color:var(--ink);text-decoration:none;transition:border-color .18s,background .18s,transform .18s}
a.flag:hover{border-color:var(--gold);background:#FDFAF0;transform:translateY(-1px);text-decoration:none}

/* ---- visa cards redesigned: compact + beautiful (round 115) ---- */
.vcard{padding:20px;border-radius:20px;gap:9px}
.vcard .vhead{position:relative;margin:-20px -20px 13px;border-radius:20px 20px 0 0;overflow:hidden}
.vcard .vimg{height:118px;width:100%;max-width:none;margin:0;object-fit:cover;display:block}
.vcard .vhead .tag{position:absolute;left:12px;bottom:10px;background:rgba(255,253,246,.94);color:#8A6D1F;box-shadow:0 4px 12px rgba(3,33,21,.18)}
.vcard h3{font-size:1.22rem;line-height:1.28}
.vcard:not(.svc) h3{min-height:0}
.vcard h3 a{text-decoration:none}
.vcard:hover h3 a{color:var(--green)}
.vcard>p:not(.vnote){display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.58}
.vcard .vfacts{display:grid;grid-template-columns:1fr 1fr 1fr;background:#FAF6EA;border:1px solid #F0E7CE;border-radius:14px;padding:11px 4px}
.vcard .vfacts>div{display:block;text-align:center;padding:0 5px;border-bottom:0}
.vcard .vfacts>div+div{border-inline-start:1px solid #EAE0C6}
.vcard .vfacts span{display:block;font-size:.6rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:#B78F2E;margin-bottom:3px}
.vcard .vfacts b{display:block;font-size:.88rem;font-weight:700;color:var(--green-ink);text-align:center;line-height:1.3}

/* ---- round 116: card grids 3 per row, richer photo proportion ---- */
.cards{grid-template-columns:repeat(3,1fr)}
@media(max-width:1020px){.cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.cards{grid-template-columns:1fr}}
.vcard .vimg{height:148px}

/* ---- round 117: card WhatsApp = labelled brand-green pill ---- */
.vcard .wabtn,.fspot .wabtn{width:auto;height:auto;min-height:46px;padding:10px 18px;border-radius:999px;background:#0B4A34;color:#fff;font-weight:700;font-size:.95rem;display:inline-flex;align-items:center;justify-content:center;gap:8px;flex:none;text-decoration:none;transition:background .18s,transform .18s}
.vcard .wabtn:hover,.fspot .wabtn:hover{background:#0E5F43;transform:translateY(-1px);text-decoration:none}
.vcard .wabtn svg,.fspot .wabtn svg{width:20px;height:20px;flex:none}

/* ---- round 118: nationality map comes alive - Saudi pulse + gentle breathing ---- */
.countries::before{animation:mapbreath 9s ease-in-out infinite alternate}
@keyframes mapbreath{from{opacity:.42;transform:translateY(0)}to{opacity:.56;transform:translateY(6px)}}
.saudiping{position:absolute;top:-30px;right:-60px;width:min(780px,95%);aspect-ratio:2.15;pointer-events:none}
.saudiping i{position:absolute;left:62.83%;top:44.8%;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;border-radius:50%;background:#C9A24B;box-shadow:0 0 0 2px rgba(201,162,75,.35)}
.saudiping i::before,.saudiping i::after{content:"";position:absolute;inset:-1px;border-radius:50%;border:2px solid rgba(201,162,75,.55);animation:saudiping 3.2s ease-out infinite}
.saudiping i::after{animation-delay:1.6s}
@keyframes saudiping{0%{transform:scale(1);opacity:.85}70%{opacity:.28}100%{transform:scale(6.5);opacity:0}}
@media(prefers-reduced-motion:reduce){.countries::before{animation:none}.saudiping i::before,.saudiping i::after{animation:none;opacity:0}}

/* ---- round 119: audit fixes - anchor offset + phone tables fit without sideways scroll ---- */
html{scroll-padding-top:102px}
@media(max-width:680px){
.cmp th:nth-child(3),.cmp td:nth-child(3){display:none}
.cmp{min-width:0}
.cmp th,.cmp td{padding:11px 8px}
.fxt .fxcur{min-width:0}
.fxt{min-width:0;font-size:.88rem}
.fxt .fxname{display:none}
.fxt th,.fxt td{padding:10px 10px}
.fxt thead th{letter-spacing:.04em}
.fxt .fxcur{flex-wrap:wrap}
.cmp{font-size:.9rem}
.cmp .btn{padding:8px 13px}
}

@media(max-width:480px){
.fxt .fxflag{display:none}
.fxt thead th{font-size:.68rem;letter-spacing:.02em;white-space:normal}
.fxt{font-size:.82rem}
.fxt .fxcur{gap:6px}
.fxt .fxpeg{padding:2px 6px}
.fxt .fxnum{white-space:normal}
.fxt th,.fxt td{padding:9px 6px}
}

/* ---- round 120: total box + airport cards beautified ---- */
.totalbox{border:1px solid #EFE5C8;border-radius:18px;padding:22px}
.totalbox .tcell{border:1px solid #EDE3C6;border-radius:14px;padding:15px 16px}
.totalbox .tic{width:36px;height:36px;border-radius:11px;background:var(--sand);color:#8A6D1F;display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.totalbox .tic svg{width:19px;height:19px}
.totalbox .top{align-self:center;width:26px;height:26px;border-radius:50%;background:var(--gold);color:#fff;font-weight:800;font-size:1.02rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 10px rgba(201,162,75,.35)}
.totalbox .tcell.gold{background:linear-gradient(155deg,#0C4F36,#062E1E);border-color:#0C4F36}
.totalbox .tcell.gold b{color:#fff}
.totalbox .tcell.gold span{color:#CFE3D6}
.totalbox .tcell.gold .tic{background:rgba(255,255,255,.13);color:#F2C14E}
@media(max-width:520px){.totalbox .top{display:none}}
.epcard{display:flex;flex-direction:column;padding:16px 17px;border-radius:16px;transition:transform .25s,box-shadow .25s,border-color .25s}
.epcard:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(4,33,21,.10);border-color:#E4D6AC}
.ephead{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.epic{width:34px;height:34px;flex:none;border-radius:50%;background:var(--sand);color:#8A6D1F;display:flex;align-items:center;justify-content:center}
.epic svg{width:17px;height:17px}
.epcard .epbadges{margin-top:auto;padding-top:12px}

/* ---- round 121: footer bottom row legibility (AXMai credit line) ---- */
footer.site .bottom{font-size:.9rem;color:#EDF3EA}
footer.site .bottom a{color:#EDF3EA;font-size:.9rem}
footer.site .bottom a.cred{font-weight:700}
