/* SaudiWelcome Pillar System v1.0 */

:root{
  --green:#0a6047;--green2:#0f7658;--deep:#063c2f;--deep2:#042a21;
  --gold:#d3a54b;--gold2:#f0cf88;--ink:#14211c;--muted:#66746e;
  --soft:#f4f8f6;--line:#dbe5e0;--white:#fff;--warm:#fffaf0;
  --container:min(1180px,calc(100% - 40px));--article:min(830px,calc(100% - 40px));
  --radius:24px;--shadow:0 22px 60px rgba(10,63,47,.12)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.7}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:var(--container);margin:auto}
.article{width:var(--article);margin:auto}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:10px 14px;z-index:9999;border-radius:8px}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#dbeae4}
.eyebrow.green{color:var(--green)}
h1,h2,h3{margin:0;line-height:1.14;font-family:Georgia,"Times New Roman",serif}
h2{font-size:clamp(2rem,4vw,3.15rem);letter-spacing:-.025em}
h3{font-size:1.45rem}
p{margin-top:0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;border:1px solid var(--green);background:var(--green);color:white;font-weight:800;transition:.2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(10,96,71,.18)}
.btn-light{background:white;color:var(--deep);border-color:white}
.btn-outline{background:transparent;color:white;border-color:rgba(255,255,255,.42)}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#24352d}
.btn-small{min-height:42px;padding:0 17px;font-size:13px}

/* global header */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.navbar{height:78px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:11px;min-width:max-content}
.brand-badge{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--green),var(--deep));display:grid;place-items:center;color:white;font-weight:900;font-size:12px}
.brand strong{display:block;color:var(--deep);font-size:16px}.brand small{display:block;color:var(--muted);font-size:10px}
.mainnav{margin-left:auto;display:flex;align-items:center;gap:19px;font-size:14px;font-weight:700}
.mainnav>a,.drop-btn{color:#405049}.mainnav>a:hover,.drop-btn:hover,.mainnav .active{color:var(--green)}
.drop{position:relative}.drop-btn{border:0;background:none;cursor:pointer;padding:26px 0;font-weight:700}
.dropmenu{position:absolute;top:58px;left:-18px;width:235px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:9px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(7px);transition:.16s}
.drop:hover .dropmenu,.drop.open .dropmenu{opacity:1;visibility:visible;transform:none}
.dropmenu a{display:block;padding:10px 11px;border-radius:9px}.dropmenu a:hover{background:#edf6f2;color:var(--green)}
.menu-btn{display:none;margin-left:auto;border:0;background:none;font-size:28px;color:var(--deep);cursor:pointer}

/* breadcrumbs */
.breadcrumbs{background:#fff;border-bottom:1px solid var(--line)}
.breadcrumbs .container{display:flex;gap:8px;align-items:center;padding:13px 0;font-size:12px;color:var(--muted)}
.breadcrumbs a{color:var(--green);font-weight:700}

/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--deep) 0%,#08543f 52%,var(--green2) 100%);color:white;padding:78px 0 66px}
.hero:before{content:"";position:absolute;inset:0;opacity:.07;background-image:linear-gradient(30deg,#fff 12%,transparent 12.5%,transparent 87%,#fff 87.5%,#fff),linear-gradient(150deg,#fff 12%,transparent 12.5%,transparent 87%,#fff 87.5%,#fff);background-size:90px 155px}
.hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}
.hero h1{font-size:clamp(3rem,6vw,5.6rem);letter-spacing:-.05em;color:white;margin-top:15px}
.hero h1 span{color:var(--gold2)}
.hero .lead{font-size:18px;color:#dce9e4;max-width:720px;margin:25px 0 29px}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap}
.hero-meta{display:flex;gap:15px;flex-wrap:wrap;margin-top:23px;color:#d5e5df;font-size:12px}
.hero-card{border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.09);border-radius:28px;padding:25px}
.hero-card h2{font-family:Arial,sans-serif;font-size:18px;color:white;margin-bottom:19px}
.hero-checks{display:grid;gap:11px}
.hero-checks a{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);border-radius:12px;color:#eef7f3;font-size:14px}
.hero-checks a span{color:var(--gold2)}

/* quick nav */
.quicknav-wrap{background:white;border-bottom:1px solid var(--line);position:sticky;top:78px;z-index:60}
.quicknav{display:flex;gap:7px;overflow:auto;padding:11px 0;scrollbar-width:none}.quicknav::-webkit-scrollbar{display:none}
.quicknav a{flex:0 0 auto;padding:9px 13px;border-radius:999px;background:var(--soft);color:#45554e;font-size:12px;font-weight:700}
.quicknav a:hover{background:#e3f1eb;color:var(--green)}

/* content */
.section{padding:88px 0}.soft{background:var(--soft)}.warm{background:var(--warm)}
.section-head{max-width:800px;margin-bottom:34px}.section-head h2{margin:8px 0 14px}.section-head p{color:var(--muted);font-size:16px}
.prose p{color:#43514b;font-size:16px}.prose strong{color:var(--ink)}
.notice{border-left:4px solid var(--gold);background:var(--warm);padding:20px 22px;border-radius:0 16px 16px 0;color:#4d4b42;margin-top:25px}
.notice strong{display:block;color:#302f2a;margin-bottom:4px}

/* cards */
.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.type-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.type-card small{color:var(--gold);font-weight:800;letter-spacing:.08em}.type-card h3{margin:9px 0 10px}.type-card p{font-size:14px;color:var(--muted)}
.prep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.prep-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:white}
.prep-card span{font-size:24px}.prep-card h3{font-family:Arial,sans-serif;font-size:16px;margin:12px 0 7px}.prep-card p{font-size:13px;color:var(--muted);margin:0}

/* timeline */
.timeline{position:relative;display:grid;gap:16px;margin-top:35px}
.timeline:before{content:"";position:absolute;left:29px;top:25px;bottom:25px;width:2px;background:#c9ded5}
.step{display:grid;grid-template-columns:60px 1fr;gap:20px;position:relative}
.step-num{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-weight:900;z-index:2;border:6px solid #fff;box-shadow:0 0 0 1px #c9ded5}
.step-card{border:1px solid var(--line);border-radius:20px;padding:22px 24px;background:white}
.step-top{display:flex;justify-content:space-between;gap:15px;align-items:start}.step-top small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.step-card h3{margin:3px 0 8px}.step-card p{color:var(--muted);font-size:14px;margin-bottom:0}

/* jump cards */
.ritual-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}
.ritual{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff}
.ritual .number{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#edf7f2;color:var(--green);font-weight:900;margin-bottom:15px}
.ritual h3{margin-bottom:8px}.ritual p{font-size:14px;color:var(--muted);margin-bottom:13px}.ritual a{color:var(--green);font-weight:800;font-size:13px}

/* source panel */
.source-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;border-radius:28px;padding:34px;background:linear-gradient(135deg,var(--deep),#0a644a);color:white}
.source-panel h2{color:white;font-size:clamp(1.9rem,3.5vw,2.8rem);margin:8px 0 13px}
.source-panel p{color:#d6e7e0}.source-list{display:grid;gap:10px}
.source-list div{padding:14px 15px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:13px}
.source-list strong{display:block;color:#fff;font-size:14px}.source-list small{color:#c9ddd5}

/* FAQ */
.faq{display:grid;gap:10px}.faq details{border:1px solid var(--line);border-radius:17px;background:white;padding:0 20px}
.faq summary{cursor:pointer;padding:18px 0;font-weight:800;color:var(--deep);list-style:none}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";float:right;color:var(--green);font-size:20px}.faq details[open] summary:after{content:"–"}
.faq details p{color:var(--muted);font-size:14px;padding-bottom:18px}

/* related */
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related{border:1px solid var(--line);border-radius:20px;padding:22px;transition:.2s}.related:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.related small{color:var(--gold);font-weight:800}.related h3{margin:7px 0 8px}.related p{font-size:13px;color:var(--muted)}.related b{color:var(--green);font-size:13px}

/* ad & partner */
.ad{height:105px;border:1px dashed #b9c8c2;border-radius:18px;background:#fbfdfc;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#89968f;font-size:11px}.ad span{letter-spacing:.1em}
.partner{background:linear-gradient(135deg,var(--deep2),#0a5b44);color:white;border-radius:28px;padding:38px}
.partner h2{color:white;margin:8px 0 13px}.partner p{color:#d5e5df;max-width:760px}

/* footer */
footer{background:#071e17;color:#aebdb7;padding:66px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:50px}.footer-brand p{max-width:430px;margin-top:20px}.footer-brand .disclaimer{display:block;color:#7f938b;font-size:11px;max-width:440px}.footer-grid h3{font-family:Arial,sans-serif;color:white;font-size:14px;margin-bottom:15px}.footer-grid>div>a:not(.brand){display:block;font-size:13px;margin:9px 0}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px}

/* responsive */
@media(max-width:1080px){
  .mainnav{display:none;position:absolute;top:70px;left:20px;right:20px;background:white;border:1px solid var(--line);border-radius:18px;padding:15px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:3px}
  .mainnav.open{display:flex}.mainnav>a,.drop-btn{display:block;padding:10px 8px;text-align:left}.drop-btn{width:100%}
  .dropmenu{position:static;width:auto;box-shadow:none;border:0;padding-left:12px;display:none;opacity:1;visibility:visible;transform:none}.drop.open .dropmenu{display:block}.drop:hover .dropmenu{display:none}.drop.open:hover .dropmenu{display:block}
  .menu-btn{display:block}.desktop-cta{display:none}.hero-grid{grid-template-columns:1fr}.hero-card{max-width:620px}
  .type-grid,.prep-grid,.related-grid{grid-template-columns:1fr 1fr}.source-panel{grid-template-columns:1fr}
}
@media(max-width:700px){
  :root{--container:min(100% - 28px,1180px);--article:min(100% - 28px,830px)}
  .navbar{height:68px}.brand small{display:none}.quicknav-wrap{top:68px}.hero{padding:58px 0}.hero h1{font-size:clamp(2.8rem,13vw,4.1rem)}
  .hero-actions .btn{width:100%}.hero-meta{display:grid;gap:5px}.section{padding:66px 0}
  .type-grid,.prep-grid,.ritual-grid,.related-grid{grid-template-columns:1fr}.step{grid-template-columns:48px 1fr;gap:12px}.step-num{width:48px;height:48px;border-width:5px}.timeline:before{left:23px}
  .step-top{display:block}.source-panel{padding:26px}.partner{padding:28px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:12px}
}

/* Umrah extensions / harmonized overrides */

:root{
  --green:#0a6047;--green2:#0f7658;--deep:#063c2f;--deep2:#042a21;
  --gold:#d3a54b;--gold2:#f0cf88;--ink:#14211c;--muted:#66746e;
  --soft:#f4f8f6;--line:#dbe5e0;--white:#fff;--warm:#fffaf0;
  --container:min(1180px,calc(100% - 40px));--article:min(830px,calc(100% - 40px));
  --radius:24px;--shadow:0 22px 60px rgba(10,63,47,.12)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:105px}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.7}
a{color:inherit;text-decoration:none}
button{font:inherit}
.container{width:var(--container);margin:auto}
.article{width:var(--article);margin:auto}
.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;background:#fff;padding:10px 14px;z-index:9999;border-radius:8px}
.eyebrow{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#dbeae4}
.eyebrow.green{color:var(--green)}
h1,h2,h3{margin:0;line-height:1.14;font-family:Georgia,"Times New Roman",serif}
h2{font-size:clamp(2rem,4vw,3.15rem);letter-spacing:-.025em}
h3{font-size:1.45rem}
p{margin-top:0}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:999px;border:1px solid var(--green);background:var(--green);color:white;font-weight:800;transition:.2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(10,96,71,.18)}
.btn-light{background:white;color:var(--deep);border-color:white}
.btn-outline{background:transparent;color:white;border-color:rgba(255,255,255,.42)}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#24352d}
.btn-small{min-height:42px;padding:0 17px;font-size:13px}

/* global header */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.navbar{height:78px;display:flex;align-items:center;gap:24px}
.brand{display:flex;align-items:center;gap:11px;min-width:max-content}
.brand-badge{width:42px;height:42px;border-radius:13px;background:linear-gradient(145deg,var(--green),var(--deep));display:grid;place-items:center;color:white;font-weight:900;font-size:12px}
.brand strong{display:block;color:var(--deep);font-size:16px}.brand small{display:block;color:var(--muted);font-size:10px}
.mainnav{margin-left:auto;display:flex;align-items:center;gap:19px;font-size:14px;font-weight:700}
.mainnav>a,.drop-btn{color:#405049}.mainnav>a:hover,.drop-btn:hover,.mainnav .active{color:var(--green)}
.drop{position:relative}.drop-btn{border:0;background:none;cursor:pointer;padding:26px 0;font-weight:700}
.dropmenu{position:absolute;top:58px;left:-18px;width:235px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:9px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(7px);transition:.16s}
.drop:hover .dropmenu,.drop.open .dropmenu{opacity:1;visibility:visible;transform:none}
.dropmenu a{display:block;padding:10px 11px;border-radius:9px}.dropmenu a:hover{background:#edf6f2;color:var(--green)}
.menu-btn{display:none;margin-left:auto;border:0;background:none;font-size:28px;color:var(--deep);cursor:pointer}

/* breadcrumbs */
.breadcrumbs{background:#fff;border-bottom:1px solid var(--line)}
.breadcrumbs .container{display:flex;gap:8px;align-items:center;padding:13px 0;font-size:12px;color:var(--muted)}
.breadcrumbs a{color:var(--green);font-weight:700}

/* hero */
.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--deep) 0%,#08543f 52%,var(--green2) 100%);color:white;padding:78px 0 66px}
.hero:before{content:"";position:absolute;inset:0;opacity:.07;background-image:linear-gradient(30deg,#fff 12%,transparent 12.5%,transparent 87%,#fff 87.5%,#fff),linear-gradient(150deg,#fff 12%,transparent 12.5%,transparent 87%,#fff 87.5%,#fff);background-size:90px 155px}
.hero-grid{position:relative;display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:center}
.hero h1{font-size:clamp(3rem,6vw,5.6rem);letter-spacing:-.05em;color:white;margin-top:15px}
.hero h1 span{color:var(--gold2)}
.hero .lead{font-size:18px;color:#dce9e4;max-width:720px;margin:25px 0 29px}
.hero-actions{display:flex;gap:11px;flex-wrap:wrap}
.hero-meta{display:flex;gap:15px;flex-wrap:wrap;margin-top:23px;color:#d5e5df;font-size:12px}
.hero-card{border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.09);border-radius:28px;padding:25px}
.hero-card h2{font-family:Arial,sans-serif;font-size:18px;color:white;margin-bottom:19px}
.hero-checks{display:grid;gap:11px}
.hero-checks a{display:flex;align-items:center;justify-content:space-between;padding:13px 14px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.10);border-radius:12px;color:#eef7f3;font-size:14px}
.hero-checks a span{color:var(--gold2)}

/* quick nav */
.quicknav-wrap{background:white;border-bottom:1px solid var(--line);position:sticky;top:78px;z-index:60}
.quicknav{display:flex;gap:7px;overflow:auto;padding:11px 0;scrollbar-width:none}.quicknav::-webkit-scrollbar{display:none}
.quicknav a{flex:0 0 auto;padding:9px 13px;border-radius:999px;background:var(--soft);color:#45554e;font-size:12px;font-weight:700}
.quicknav a:hover{background:#e3f1eb;color:var(--green)}

/* content */
.section{padding:88px 0}.soft{background:var(--soft)}.warm{background:var(--warm)}
.section-head{max-width:800px;margin-bottom:34px}.section-head h2{margin:8px 0 14px}.section-head p{color:var(--muted);font-size:16px}
.prose p{color:#43514b;font-size:16px}.prose strong{color:var(--ink)}
.notice{border-left:4px solid var(--gold);background:var(--warm);padding:20px 22px;border-radius:0 16px 16px 0;color:#4d4b42;margin-top:25px}
.notice strong{display:block;color:#302f2a;margin-bottom:4px}

/* cards */
.type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.type-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.type-card small{color:var(--gold);font-weight:800;letter-spacing:.08em}.type-card h3{margin:9px 0 10px}.type-card p{font-size:14px;color:var(--muted)}
.prep-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.prep-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:white}
.prep-card span{font-size:24px}.prep-card h3{font-family:Arial,sans-serif;font-size:16px;margin:12px 0 7px}.prep-card p{font-size:13px;color:var(--muted);margin:0}

/* timeline */
.timeline{position:relative;display:grid;gap:16px;margin-top:35px}
.timeline:before{content:"";position:absolute;left:29px;top:25px;bottom:25px;width:2px;background:#c9ded5}
.step{display:grid;grid-template-columns:60px 1fr;gap:20px;position:relative}
.step-num{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:white;font-weight:900;z-index:2;border:6px solid #fff;box-shadow:0 0 0 1px #c9ded5}
.step-card{border:1px solid var(--line);border-radius:20px;padding:22px 24px;background:white}
.step-top{display:flex;justify-content:space-between;gap:15px;align-items:start}.step-top small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.step-card h3{margin:3px 0 8px}.step-card p{color:var(--muted);font-size:14px;margin-bottom:0}

/* jump cards */
.ritual-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}
.ritual{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff}
.ritual .number{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#edf7f2;color:var(--green);font-weight:900;margin-bottom:15px}
.ritual h3{margin-bottom:8px}.ritual p{font-size:14px;color:var(--muted);margin-bottom:13px}.ritual a{color:var(--green);font-weight:800;font-size:13px}

/* source panel */
.source-panel{display:grid;grid-template-columns:1.1fr .9fr;gap:30px;align-items:center;border-radius:28px;padding:34px;background:linear-gradient(135deg,var(--deep),#0a644a);color:white}
.source-panel h2{color:white;font-size:clamp(1.9rem,3.5vw,2.8rem);margin:8px 0 13px}
.source-panel p{color:#d6e7e0}.source-list{display:grid;gap:10px}
.source-list div{padding:14px 15px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);border-radius:13px}
.source-list strong{display:block;color:#fff;font-size:14px}.source-list small{color:#c9ddd5}

/* FAQ */
.faq{display:grid;gap:10px}.faq details{border:1px solid var(--line);border-radius:17px;background:white;padding:0 20px}
.faq summary{cursor:pointer;padding:18px 0;font-weight:800;color:var(--deep);list-style:none}.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";float:right;color:var(--green);font-size:20px}.faq details[open] summary:after{content:"–"}
.faq details p{color:var(--muted);font-size:14px;padding-bottom:18px}

/* related */
.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.related{border:1px solid var(--line);border-radius:20px;padding:22px;transition:.2s}.related:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.related small{color:var(--gold);font-weight:800}.related h3{margin:7px 0 8px}.related p{font-size:13px;color:var(--muted)}.related b{color:var(--green);font-size:13px}

/* ad & partner */
.ad{height:105px;border:1px dashed #b9c8c2;border-radius:18px;background:#fbfdfc;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#89968f;font-size:11px}.ad span{letter-spacing:.1em}
.partner{background:linear-gradient(135deg,var(--deep2),#0a5b44);color:white;border-radius:28px;padding:38px}
.partner h2{color:white;margin:8px 0 13px}.partner p{color:#d5e5df;max-width:760px}

/* footer */
footer{background:#071e17;color:#aebdb7;padding:66px 0 22px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:50px}.footer-brand p{max-width:430px;margin-top:20px}.footer-brand .disclaimer{display:block;color:#7f938b;font-size:11px;max-width:440px}.footer-grid h3{font-family:Arial,sans-serif;color:white;font-size:14px;margin-bottom:15px}.footer-grid>div>a:not(.brand){display:block;font-size:13px;margin:9px 0}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:46px;padding-top:20px;display:flex;justify-content:space-between;font-size:12px}

/* responsive */
@media(max-width:1080px){
  .mainnav{display:none;position:absolute;top:70px;left:20px;right:20px;background:white;border:1px solid var(--line);border-radius:18px;padding:15px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch;gap:3px}
  .mainnav.open{display:flex}.mainnav>a,.drop-btn{display:block;padding:10px 8px;text-align:left}.drop-btn{width:100%}
  .dropmenu{position:static;width:auto;box-shadow:none;border:0;padding-left:12px;display:none;opacity:1;visibility:visible;transform:none}.drop.open .dropmenu{display:block}.drop:hover .dropmenu{display:none}.drop.open:hover .dropmenu{display:block}
  .menu-btn{display:block}.desktop-cta{display:none}.hero-grid{grid-template-columns:1fr}.hero-card{max-width:620px}
  .type-grid,.prep-grid,.related-grid{grid-template-columns:1fr 1fr}.source-panel{grid-template-columns:1fr}
}
@media(max-width:700px){
  :root{--container:min(100% - 28px,1180px);--article:min(100% - 28px,830px)}
  .navbar{height:68px}.brand small{display:none}.quicknav-wrap{top:68px}.hero{padding:58px 0}.hero h1{font-size:clamp(2.8rem,13vw,4.1rem)}
  .hero-actions .btn{width:100%}.hero-meta{display:grid;gap:5px}.section{padding:66px 0}
  .type-grid,.prep-grid,.ritual-grid,.related-grid{grid-template-columns:1fr}.step{grid-template-columns:48px 1fr;gap:12px}.step-num{width:48px;height:48px;border-width:5px}.timeline:before{left:23px}
  .step-top{display:block}.source-panel{padding:26px}.partner{padding:28px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column;gap:12px}
}

/* ===== Makkah Hub extensions ===== */
.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.place-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:230px;transition:.2s}
.place-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.place-card .place-icon{font-size:25px;margin-bottom:16px}
.place-card h3{margin-bottom:8px}.place-card p{font-size:14px;color:var(--muted)}
.place-card b{margin-top:auto;color:var(--green);font-size:13px}

.orientation-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.orientation-panel{border:1px solid var(--line);border-radius:24px;padding:27px;background:#fff}
.orientation-panel h3{margin-bottom:12px}
.orientation-panel ul{margin:0;padding-left:20px;color:var(--muted)}
.orientation-panel li{margin:8px 0}
.orientation-panel.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:white;border-color:var(--deep)}
.orientation-panel.dark h3{color:white}.orientation-panel.dark p,.orientation-panel.dark li{color:#d4e5de}

.area-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.area-card{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.area-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}.area-card h3{margin:7px 0 9px}.area-card p{font-size:14px;color:var(--muted)}

.transport-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.transport-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.transport-card span{font-size:23px}.transport-card h3{font-family:Arial,sans-serif;font-size:16px;margin:11px 0 6px}.transport-card p{font-size:13px;color:var(--muted);margin:0}

@media(max-width:1080px){
  .place-grid,.transport-grid{grid-template-columns:1fr 1fr}
  .orientation-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .place-grid,.transport-grid,.area-grid{grid-template-columns:1fr}
}

/* ===== Madinah Hub extensions ===== */
.madinah-place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.madinah-place-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:230px;transition:.2s}
.madinah-place-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.madinah-place-card .place-icon{font-size:25px;margin-bottom:16px}
.madinah-place-card h3{margin-bottom:8px}.madinah-place-card p{font-size:14px;color:var(--muted)}.madinah-place-card b{margin-top:auto;color:var(--green);font-size:13px}
.visit-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.visit-panel{border:1px solid var(--line);border-radius:24px;padding:27px;background:#fff}
.visit-panel h3{margin-bottom:12px}.visit-panel ul{margin:0;padding-left:20px;color:var(--muted)}.visit-panel li{margin:8px 0}
.visit-panel.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.visit-panel.dark h3{color:#fff}.visit-panel.dark p,.visit-panel.dark li{color:#d4e5de}
.madinah-area-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.madinah-area-card{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.madinah-area-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}.madinah-area-card h3{margin:7px 0 9px}.madinah-area-card p{font-size:14px;color:var(--muted)}
.madinah-transport-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.madinah-transport-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.madinah-transport-card span{font-size:23px}.madinah-transport-card h3{font-family:Arial,sans-serif;font-size:16px;margin:11px 0 6px}.madinah-transport-card p{font-size:13px;color:var(--muted);margin:0}
@media(max-width:1080px){.madinah-place-grid,.madinah-transport-grid{grid-template-columns:1fr 1fr}.visit-grid{grid-template-columns:1fr}}
@media(max-width:700px){.madinah-place-grid,.madinah-transport-grid,.madinah-area-grid{grid-template-columns:1fr}}

/* ===== Travel Hub extensions ===== */
.travel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.travel-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:230px;transition:.2s}
.travel-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.travel-card .travel-icon{font-size:25px;margin-bottom:16px}
.travel-card h3{margin-bottom:8px}.travel-card p{font-size:14px;color:var(--muted)}
.travel-card b{margin-top:auto;color:var(--green);font-size:13px}

.travel-plan-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.travel-plan{border:1px solid var(--line);border-radius:24px;padding:27px;background:#fff}
.travel-plan h3{margin-bottom:12px}.travel-plan ul{margin:0;padding-left:20px;color:var(--muted)}.travel-plan li{margin:8px 0}
.travel-plan.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.travel-plan.dark h3{color:#fff}.travel-plan.dark p,.travel-plan.dark li{color:#d4e5de}

.travel-stage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.travel-stage{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.travel-stage small{color:var(--gold);font-weight:800;letter-spacing:.06em}.travel-stage h3{margin:7px 0 9px}.travel-stage p{font-size:14px;color:var(--muted)}

.travel-tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.travel-tool{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.travel-tool span{font-size:23px}.travel-tool h3{font-family:Arial,sans-serif;font-size:16px;margin:11px 0 6px}.travel-tool p{font-size:13px;color:var(--muted);margin:0}

@media(max-width:1080px){
  .travel-grid,.travel-tool-grid{grid-template-columns:1fr 1fr}
  .travel-plan-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .travel-grid,.travel-tool-grid,.travel-stage-grid{grid-template-columns:1fr}
}

/* ===== Resources Hub extensions ===== */
.resource-hub-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.resource-hub-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:240px;transition:.2s}
.resource-hub-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.resource-hub-card .resource-icon{font-size:26px;margin-bottom:16px}
.resource-hub-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.resource-hub-card h3{margin:8px 0}.resource-hub-card p{font-size:14px;color:var(--muted)}
.resource-hub-card b{margin-top:auto;color:var(--green);font-size:13px}

.resource-feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.resource-feature{border:1px solid var(--line);border-radius:24px;padding:28px;background:#fff}
.resource-feature h3{margin-bottom:12px}
.resource-feature ul{margin:0;padding-left:20px;color:var(--muted)}
.resource-feature li{margin:8px 0}
.resource-feature.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.resource-feature.dark h3{color:#fff}.resource-feature.dark p,.resource-feature.dark li{color:#d4e5de}

.download-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.download-card{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.download-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.download-card h3{margin:7px 0 9px}.download-card p{font-size:14px;color:var(--muted)}
.download-card .status{display:inline-block;margin-top:8px;padding:6px 10px;border-radius:999px;background:#edf7f2;color:var(--green);font-size:11px;font-weight:800}

.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.tool-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.tool-card span{font-size:24px}.tool-card h3{font-family:Arial,sans-serif;font-size:16px;margin:11px 0 6px}
.tool-card p{font-size:13px;color:var(--muted);margin:0}

@media(max-width:1080px){
  .resource-hub-grid,.tool-grid{grid-template-columns:1fr 1fr}
  .resource-feature-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .resource-hub-grid,.tool-grid,.download-grid{grid-template-columns:1fr}
}

/* ===== Official Updates Hub extensions ===== */
.update-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.update-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:250px;transition:.2s}
.update-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.update-card .update-badge{display:inline-block;width:max-content;padding:6px 9px;border-radius:999px;background:#edf7f2;color:var(--green);font-size:11px;font-weight:800;letter-spacing:.05em;margin-bottom:15px}
.update-card .update-badge.urgent{background:#fff2df;color:#8a5a00}
.update-card .update-badge.info{background:#eef4ff;color:#36558f}
.update-card small{color:var(--muted);font-size:12px}
.update-card h3{margin:10px 0}.update-card p{font-size:14px;color:var(--muted)}
.update-card b{margin-top:auto;color:var(--green);font-size:13px}

.source-rules-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.source-rule{border:1px solid var(--line);border-radius:24px;padding:27px;background:#fff}
.source-rule h3{margin-bottom:12px}.source-rule ul{margin:0;padding-left:20px;color:var(--muted)}.source-rule li{margin:8px 0}
.source-rule.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.source-rule.dark h3{color:#fff}.source-rule.dark p,.source-rule.dark li{color:#d4e5de}

.category-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.category-card{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.category-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}.category-card h3{margin:7px 0 9px}.category-card p{font-size:14px;color:var(--muted)}

.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.archive-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.archive-card span{font-size:23px}.archive-card h3{font-family:Arial,sans-serif;font-size:16px;margin:11px 0 6px}.archive-card p{font-size:13px;color:var(--muted);margin:0}

.update-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.update-meta span{font-size:11px;color:var(--muted);background:var(--soft);border-radius:999px;padding:5px 8px}

@media(max-width:1080px){
  .update-grid,.archive-grid{grid-template-columns:1fr 1fr}
  .source-rules-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .update-grid,.archive-grid,.category-grid{grid-template-columns:1fr}
}

/* ===== Duas Hub extensions ===== */
.dua-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.dua-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:230px;transition:.2s}
.dua-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.dua-card .dua-icon{font-size:25px;margin-bottom:15px}.dua-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.dua-card h3{margin:8px 0}.dua-card p{font-size:14px;color:var(--muted)}.dua-card b{margin-top:auto;color:var(--green);font-size:13px}
.dua-principles{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.dua-panel{border:1px solid var(--line);border-radius:24px;padding:27px;background:#fff}
.dua-panel ul{margin:0;padding-left:20px;color:var(--muted)}.dua-panel li{margin:8px 0}
.dua-panel.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.dua-panel.dark h3{color:#fff}.dua-panel.dark p,.dua-panel.dark li{color:#d4e5de}
.dua-stage-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.dua-stage{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.dua-stage small{color:var(--gold);font-weight:800;letter-spacing:.06em}.dua-stage h3{margin:7px 0 9px}.dua-stage p{font-size:14px;color:var(--muted)}
@media(max-width:1080px){.dua-grid{grid-template-columns:1fr 1fr}.dua-principles{grid-template-columns:1fr}}
@media(max-width:700px){.dua-grid,.dua-stage-grid{grid-template-columns:1fr}}

/* ===== Verified Partners Hub extensions ===== */
.partner-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.partner-cat{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:235px;transition:.2s}
.partner-cat:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.partner-cat .picon{font-size:26px;margin-bottom:15px}.partner-cat small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.partner-cat h3{margin:8px 0}.partner-cat p{font-size:14px;color:var(--muted)}.partner-cat b{margin-top:auto;color:var(--green);font-size:13px}
.verify-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.verify-panel{border:1px solid var(--line);border-radius:24px;padding:28px;background:#fff}
.verify-panel ul{margin:0;padding-left:20px;color:var(--muted)}.verify-panel li{margin:8px 0}
.verify-panel.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.verify-panel.dark h3{color:#fff}.verify-panel.dark p,.verify-panel.dark li{color:#d4e5de}
.partner-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.partner-step{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}
.partner-step small{color:var(--gold);font-weight:800}.partner-step h3{font-family:Arial,sans-serif;font-size:16px;margin:10px 0 7px}.partner-step p{font-size:13px;color:var(--muted);margin:0}
.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
.metric-card{border:1px solid var(--line);border-radius:20px;padding:22px;background:#fff}.metric-card span{font-size:23px}.metric-card h3{font-family:Arial,sans-serif;font-size:16px;margin:10px 0 6px}.metric-card p{font-size:13px;color:var(--muted);margin:0}
@media(max-width:1080px){.partner-cat-grid,.metric-grid{grid-template-columns:1fr 1fr}.partner-step-grid{grid-template-columns:1fr 1fr}.verify-grid{grid-template-columns:1fr}}
@media(max-width:700px){.partner-cat-grid,.metric-grid,.partner-step-grid{grid-template-columns:1fr}}

/* ===== Blog Hub extensions ===== */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.blog-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff;display:flex;flex-direction:column;min-height:255px;transition:.2s}
.blog-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#b7d0c6}
.blog-card .blog-icon{font-size:24px;margin-bottom:14px}
.blog-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.blog-card h3{margin:8px 0}.blog-card p{font-size:14px;color:var(--muted)}
.blog-card b{margin-top:auto;color:var(--green);font-size:13px}

.feature-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px}
.feature-main,.feature-side{border:1px solid var(--line);border-radius:24px;background:#fff;padding:28px}
.feature-main h3,.feature-side h3{margin:8px 0 10px}
.feature-main p,.feature-side p{color:var(--muted);font-size:14px}
.feature-stack{display:grid;gap:14px}
.feature-mini{border:1px solid var(--line);border-radius:18px;padding:18px;background:#fff}
.feature-mini small{color:var(--gold);font-weight:800}.feature-mini h3{font-size:1.2rem;margin:7px 0 5px}.feature-mini p{font-size:13px;color:var(--muted);margin:0}

.category-grid-blog{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.category-blog{border:1px solid var(--line);border-radius:20px;padding:23px;background:#fff}
.category-blog small{color:var(--gold);font-weight:800;letter-spacing:.06em}
.category-blog h3{margin:7px 0 9px}.category-blog p{font-size:14px;color:var(--muted)}

.editorial-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}
.editorial-panel{border:1px solid var(--line);border-radius:24px;padding:27px;background:#fff}
.editorial-panel ul{margin:0;padding-left:20px;color:var(--muted)}.editorial-panel li{margin:8px 0}
.editorial-panel.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}
.editorial-panel.dark h3{color:#fff}.editorial-panel.dark p,.editorial-panel.dark li{color:#d4e5de}

@media(max-width:1080px){
  .blog-grid{grid-template-columns:1fr 1fr}
  .feature-grid,.editorial-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .blog-grid,.category-grid-blog{grid-template-columns:1fr}
}

/* ===== Institutional Pages extensions ===== */
.institution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.institution-card{border:1px solid var(--line);border-radius:22px;padding:24px;background:#fff}.institution-card small{color:var(--gold);font-weight:800;letter-spacing:.06em}.institution-card h3{margin:8px 0}.institution-card p{font-size:14px;color:var(--muted);margin-bottom:0}
.policy-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:22px}.policy-panel{border:1px solid var(--line);border-radius:24px;padding:28px;background:#fff}.policy-panel h3{margin-bottom:12px}.policy-panel p,.policy-panel li{color:var(--muted)}.policy-panel li{margin:8px 0}.policy-panel.dark{background:linear-gradient(135deg,var(--deep),#0a644a);color:#fff;border-color:var(--deep)}.policy-panel.dark h3{color:#fff}.policy-panel.dark p,.policy-panel.dark li{color:#d4e5de}
.legal{max-width:850px;margin:auto}.legal h2{margin-top:36px}.legal h3{margin-top:25px}.legal p,.legal li{color:var(--muted);line-height:1.75}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.contact-box{border:1px solid var(--line);border-radius:22px;padding:25px;background:#fff}.contact-box h3{margin:8px 0}.contact-box p{color:var(--muted)}.contact-box a{color:var(--green);font-weight:700}
@media(max-width:900px){.institution-grid{grid-template-columns:1fr 1fr}.policy-grid,.contact-grid{grid-template-columns:1fr}}@media(max-width:650px){.institution-grid{grid-template-columns:1fr}}


/* ===== SaudiWelcome Visual System v2.1 ===== */
.hero-visual{
  margin:0 0 20px;
  overflow:hidden;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.14);
  background:#073a2e;
  box-shadow:0 18px 50px rgba(2,26,21,.18);
}
.hero-visual img{
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
}
.hero-visual figcaption{
  padding:10px 13px;
  color:#d7e7e1;
  font-size:11px;
  border-top:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.14);
}
.visual-band{padding:28px 0;background:#fff;border-bottom:1px solid var(--line)}
.visual-band-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.visual-link{position:relative;overflow:hidden;border-radius:20px;min-height:210px;background:#073a2e;box-shadow:0 12px 32px rgba(4,60,45,.10)}
.visual-link img{display:block;width:100%;height:100%;min-height:210px;object-fit:cover;transition:transform .35s ease}
.visual-link:hover img{transform:scale(1.025)}
.visual-link span{position:absolute;left:15px;bottom:14px;padding:7px 11px;border-radius:999px;background:rgba(5,31,25,.78);color:#fff;font-size:12px;font-weight:800;backdrop-filter:blur(8px)}
.media-feature{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:center;margin-top:28px}
.media-feature figure{margin:0;overflow:hidden;border-radius:24px;border:1px solid var(--line);background:#eef5f2;box-shadow:var(--shadow)}
.media-feature img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.media-feature figcaption{padding:10px 14px;font-size:11px;color:var(--muted)}
.media-feature .media-copy p{color:var(--muted)}
@media(max-width:900px){
  .visual-band-grid{grid-template-columns:1fr 1fr}
  .media-feature{grid-template-columns:1fr}
}
@media(max-width:620px){
  .visual-band-grid{grid-template-columns:1fr}
  .visual-link{min-height:190px}
}


/* ===== SaudiWelcome Premium Photography v2.3 ===== */
.premium-photo{margin:0;width:100%;overflow:hidden;background:#073a2e}
.premium-photo picture,.premium-photo img{display:block;width:100%}
.premium-photo img{height:clamp(360px,43vw,720px);object-fit:cover}
.premium-photo--home img{object-position:center 48%}
.premium-photo--hajj img{object-position:center 52%}
.premium-photo--umrah img{object-position:center 50%}
.premium-photo--makkah img{object-position:center 40%}
.premium-photo--madinah img{object-position:center 48%}
.premium-photo--travel img{object-position:center 42%}
.media-feature{max-width:1180px;margin-left:auto;margin-right:auto}
.media-feature figure{border-radius:26px;overflow:hidden}
.media-feature img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
@media(max-width:700px){.premium-photo img{height:62vw;min-height:270px;max-height:450px}}


/* SaudiWelcome Platform v3.0 */
.platform-shell{background:linear-gradient(180deg,#f6faf8,#fff);border-bottom:1px solid var(--line)}
.platform-dashboard{padding:38px 0 44px}.platform-kicker{font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#a77a22}
.platform-head{display:flex;justify-content:space-between;gap:22px;align-items:end;margin-bottom:22px}.platform-head h2{margin:6px 0 0;font-size:clamp(28px,4vw,48px)}.platform-head p{max-width:590px;color:var(--muted);margin:0}
.journey-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.journey-card{display:flex;flex-direction:column;min-height:210px;padding:22px;border:1px solid var(--line);border-radius:22px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 10px 30px rgba(3,54,42,.06);transition:.2s}.journey-card:hover{transform:translateY(-3px);box-shadow:0 16px 40px rgba(3,54,42,.11)}.journey-icon{font-size:27px;margin-bottom:22px}.journey-card strong{font-size:18px}.journey-card p{font-size:13px;color:var(--muted);line-height:1.6}.journey-card b{margin-top:auto;color:#08704f;font-size:13px}
.platform-strip{padding:28px 0;background:#073b30;color:#fff}.platform-strip-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,.13)}.platform-stat{padding:19px;background:#073b30}.platform-stat small{display:block;color:#b9d3ca;font-size:11px;text-transform:uppercase;letter-spacing:.08em}.platform-stat strong{display:block;margin-top:5px;font-size:16px}
.platform-photo-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;margin-top:26px}.platform-photo-card{position:relative;overflow:hidden;border-radius:24px;min-height:300px;background:#073b30}.platform-photo-card img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.platform-photo-card:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,25,20,.76),rgba(0,0,0,0) 62%)}.platform-photo-label{position:absolute;z-index:2;left:22px;right:22px;bottom:20px;color:#fff}.platform-photo-label small{color:#e6c477;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.platform-photo-label strong{display:block;font-size:22px;margin-top:4px}
.next-step{margin:30px 0;padding:24px;border-radius:24px;background:#edf7f3;border:1px solid #cfe6dc}.next-step h3{margin:0 0 8px}.next-step-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.next-step-links a{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px;font-weight:800;text-decoration:none;color:#075b43}
@media(max-width:980px){.journey-grid{grid-template-columns:1fr 1fr}.platform-strip-grid{grid-template-columns:1fr 1fr}.platform-photo-grid{grid-template-columns:1fr}}@media(max-width:600px){.journey-grid,.platform-strip-grid{grid-template-columns:1fr}.platform-head{display:block}.platform-head p{margin-top:10px}}


/* ===== SaudiWelcome v3.2 Actual Visual Rebuild ===== */
.v32-section{padding:58px 0}
.v32-soft{background:#f4f5f4}
.v32-head{margin-bottom:28px}
.v32-head small{font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;color:#0c8058}
.v32-head h2{font-size:clamp(30px,3.6vw,46px);margin:7px 0 8px}
.v32-head p{max-width:760px;color:var(--muted);line-height:1.7;margin:0}
.v32-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.v32-grid.v32-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.v32-card{background:#fff;border:1px solid #d4dad7;border-radius:21px;overflow:hidden;display:flex;flex-direction:column;min-width:0}
.v32-card-media{margin:15px 15px 0;border-radius:13px;overflow:hidden;aspect-ratio:4/3;background:#e9eeec}
.v32-card-media img{width:100%;height:100%;display:block;object-fit:cover}
.v32-card-body{padding:20px;display:flex;flex:1;flex-direction:column}
.v32-card h3{font-size:20px;margin:0 0 11px;line-height:1.25}
.v32-card p{font-size:15px;line-height:1.65;color:#394540;margin:0}
.v32-card a{margin-top:auto;padding-top:18px;color:#0a7652;font-weight:800;text-decoration:none}
.v32-tabs{display:flex;gap:34px;overflow-x:auto;border-bottom:3px solid #d5dad8;margin-bottom:38px;white-space:nowrap}
.v32-tab{padding:0 0 14px;font-weight:750;color:#26322e}
.v32-tab.active{border-bottom:3px solid #11845b;margin-bottom:-3px;color:#071a13}
.v32-editorial{display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center}
.v32-editorial.reverse .v32-photo{order:-1}
.v32-copy h2{font-size:clamp(30px,3.4vw,44px);margin:0 0 18px}
.v32-copy p{font-size:17px;line-height:1.75;color:#303c38}
.v32-photo{aspect-ratio:16/9;border-radius:17px;overflow:hidden;background:#e7ecea}
.v32-photo img{width:100%;height:100%;object-fit:cover;display:block}
.v32-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:22px}
.v32-actions a{padding:10px 14px;border:1px solid #d4ddd9;border-radius:999px;background:#fff;color:#086347;text-decoration:none;font-size:12px;font-weight:800}
@media(max-width:1050px){.v32-grid,.v32-grid.v32-grid-3{grid-template-columns:repeat(2,1fr)}.v32-editorial{grid-template-columns:1fr;gap:28px}.v32-editorial.reverse .v32-photo{order:0}}
@media(max-width:650px){.v32-section{padding:40px 0}.v32-grid,.v32-grid.v32-grid-3{grid-template-columns:1fr}.v32-card-media{aspect-ratio:16/10}.v32-tabs{gap:22px}}
