@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:wght@500;600&display=swap');
:root{--cream:#f4f0e9;--ink:#191a1c;--muted:#6c6964;--wine:#711c28;--wine2:#57141e;--line:#d7d0c7;--white:#fff;--dark:#1c1d20}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}a{text-decoration:none;color:inherit}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}header{position:sticky;top:0;z-index:20;background:rgba(244,240,233,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.07)}.nav{height:80px;display:flex;align-items:center;gap:25px}.logo{display:flex;align-items:center;gap:11px;margin-inline-end:auto}.monogram{width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--ink);font-family:"Playfair Display",serif}.logo b{display:block;font-family:"Playfair Display",serif}.logo small{display:block;font-size:9px;color:var(--muted);letter-spacing:.08em}nav{display:flex;gap:19px;font-size:12px}nav a:hover{color:var(--wine)}.switch{border:1px solid var(--line);border-radius:25px;padding:3px;display:flex}.switch button{border:0;background:none;padding:6px 9px;border-radius:18px;cursor:pointer}.switch button.on{background:var(--ink);color:white}.hero{padding:78px 0 90px}.hero-grid{display:grid;grid-template-columns:1.18fr .72fr;gap:75px;align-items:center}.kicker{font-size:10px;letter-spacing:.17em;font-weight:600;color:var(--wine);margin:0 0 17px}.hero h1,h2{font-family:"Playfair Display",serif;font-weight:500;letter-spacing:-.025em}.hero h1{font-size:clamp(44px,5.5vw,73px);line-height:1.02;margin:0 0 24px}.lead{font-size:16px;line-height:1.75;color:var(--muted);max-width:720px}.person{margin:28px 0 16px}.person strong{display:block;font-family:"Playfair Display",serif;font-size:23px}.person span{color:var(--muted);font-size:13px}.chips{display:flex;flex-wrap:wrap;gap:7px;margin:18px 0 27px}.chips span{border:1px solid #c9c0b5;border-radius:30px;padding:7px 11px;font-size:9px;letter-spacing:.1em}.actions{display:flex;gap:10px;flex-wrap:wrap}.primary,.secondary{display:inline-flex;justify-content:center;align-items:center;padding:13px 18px;border-radius:3px;font-size:12px;font-weight:600;border:0;cursor:pointer}.primary{background:var(--wine);color:white}.primary:hover{background:var(--wine2)}.secondary{border:1px solid var(--ink)}.trust{display:flex;flex-wrap:wrap;margin-top:26px}.trust span{font-size:10px;color:var(--muted);padding:0 12px;border-inline-end:1px solid var(--line)}.trust span:first-child{padding-inline-start:0}.trust span:last-child{border:0}figure{margin:0;background:#ddd4c8;padding:11px 11px 0;box-shadow:0 28px 70px rgba(30,20,15,.13)}figure img{width:100%;height:570px;display:block;object-fit:cover;object-position:center 22%}figcaption{display:flex;justify-content:space-between;padding:14px 3px 15px;font-size:11px}figcaption span{color:var(--muted)}.section{padding:92px 0}.title-row,.split{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.title-row{align-items:end;margin-bottom:36px}.title-row h2,.section h2,.world h2{font-size:clamp(35px,4vw,52px);margin:0}.title-row p,.cred-intro{color:var(--muted);line-height:1.7;font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.cards article{padding:28px 25px 32px;min-height:215px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.23)}.cards i{font-style:normal;color:var(--wine);font-size:9px;letter-spacing:.15em}.cards h3{font-family:"Playfair Display",serif;font-size:20px;margin:31px 0 10px}.cards p,.cards small{color:var(--muted);font-size:12px;line-height:1.7}.cards small{display:block;border-top:1px solid var(--line);padding-top:10px;margin-top:12px}.dark{background:var(--dark);color:#f4f0e9}.pale{color:#d7adb3}.about-text{font-family:"Playfair Display",serif;font-size:19px;line-height:1.72}.about-text p{margin-top:0;margin-bottom:23px}.about-text p:first-child{font-size:24px}.credentials{background:#ebe5dc}.cred-intro{max-width:650px;margin-bottom:30px}.cred{border-top:1px solid #c8bfb4}.cred>div{display:grid;grid-template-columns:210px 140px 1fr;gap:25px;padding:19px 4px;border-bottom:1px solid #c8bfb4;align-items:center}.cred b{font-family:"Playfair Display",serif;font-size:18px}.cred em{font-style:normal;color:var(--wine);font-size:11px;text-transform:uppercase;letter-spacing:.1em}.cred span{font-size:12px;color:var(--muted)}.world{background:var(--wine);color:white;padding:80px 0}.world p{line-height:1.75;color:#f0dcdf}.world h3{font-family:"Playfair Display",serif;margin-top:25px}.immigration{background:#f0e8df}.imm-intro{color:var(--muted);line-height:1.8}.imm-list{display:grid;gap:0;border-top:1px solid var(--line)}.imm-list span{padding:13px 0;border-bottom:1px solid var(--line)}.imm-list .primary{margin-top:24px;justify-self:start}.quote{background:white}.quote>div>p:not(.kicker){color:var(--muted)}.form{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:35px;max-width:950px}.form label{display:grid;gap:7px;font-size:11px;font-weight:600}.form input,.form select,.form textarea{width:100%;border:1px solid #cfc7bd;background:#faf8f4;padding:13px 12px;font:inherit;font-size:13px;border-radius:2px}.form textarea{resize:vertical}.wide{grid-column:1/-1}.form-note,.warning{font-size:10px!important;color:var(--muted);line-height:1.55;max-width:700px}.imm-form{background:#fff}.contact-list{border-top:1px solid var(--line)}.contact-list a{display:flex;justify-content:space-between;gap:25px;padding:20px 0;border-bottom:1px solid var(--line);font-size:12px}.contact-list span{color:var(--muted)}footer{background:#111214;color:#ddd;padding:38px 0 28px}.foot{display:flex;justify-content:space-between;gap:30px}.foot b{font-family:"Playfair Display",serif}.foot p,.foot>span,.disclaimer{font-size:10px;color:#858585}.disclaimer{border-top:1px solid #292a2d;margin-top:20px;padding-top:17px;line-height:1.6}.fa-only{display:none}.ltr-inline{direction:ltr;unicode-bidi:isolate;display:inline-block}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#17181a;color:white;padding:13px 18px;border-radius:4px;font-size:12px;opacity:0;pointer-events:none;transition:.2s;z-index:50}#toast.show{opacity:1}
html[dir=rtl] body{text-align:right;font-family:Tahoma,Arial,sans-serif}html[dir=rtl] h1,html[dir=rtl] h2,html[dir=rtl] h3,html[dir=rtl] .person strong,html[dir=rtl] .about-text{font-family:Tahoma,Arial,sans-serif;letter-spacing:0}html[dir=rtl] .kicker{letter-spacing:0}html[dir=rtl] .fa-only{display:block}html[dir=rtl] nav .fa-only{display:inline}html[dir=rtl] .cards article.fa-only{display:block}html[dir=rtl] .immigration.fa-only,html[dir=rtl] .imm-form.fa-only{display:block}
@media(max-width:950px){nav{display:none}.hero-grid,.split,.title-row{grid-template-columns:1fr}.hero-grid,.split{gap:45px}.cards{grid-template-columns:repeat(2,1fr)}figure{max-width:560px}.cred>div{grid-template-columns:150px 120px 1fr}}
@media(max-width:620px){.wrap{width:calc(100% - 28px)}.nav{height:68px}.logo small{display:none}.hero{padding:52px 0 65px}.hero h1{font-size:43px}figure img{height:440px}.section{padding:66px 0}.cards{grid-template-columns:1fr}.cred>div{grid-template-columns:1fr;gap:5px}.form{grid-template-columns:1fr}.wide{grid-column:auto}.contact-list a{display:block}.contact-list b{display:block;margin-top:6px}.foot{display:block}.foot>span{display:block;margin-top:16px}}

/* SEO v9 additions */
.seo-intro{max-width:820px;color:var(--muted);line-height:1.75;margin:12px 0 32px}
.breadcrumbs{font-size:11px;color:var(--muted);padding-top:20px}
.breadcrumbs a{color:var(--wine)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* v10 — true mirrored RTL layout */
html[dir="rtl"] .nav{flex-direction:row-reverse}
html[dir="rtl"] .logo{margin-inline-end:0;margin-inline-start:auto;flex-direction:row-reverse;text-align:right}
html[dir="rtl"] nav{direction:rtl;flex-direction:row}
html[dir="rtl"] .switch{direction:ltr}
html[dir="rtl"] .hero-grid{direction:rtl}
html[dir="rtl"] .hero-grid>div{grid-column:2;text-align:right}
html[dir="rtl"] .hero-grid>figure{grid-column:1;grid-row:1}
html[dir="rtl"] .chips,html[dir="rtl"] .actions,html[dir="rtl"] .trust{direction:rtl;justify-content:flex-start}
html[dir="rtl"] .chips span,html[dir="rtl"] .actions a{direction:ltr}
html[dir="rtl"] .title-row,html[dir="rtl"] .split{direction:rtl}
html[dir="rtl"] .cards{direction:rtl;border-left:0;border-right:1px solid var(--line)}
html[dir="rtl"] .cards article{text-align:right}
html[dir="rtl"] .cred>div{direction:rtl;text-align:right}
html[dir="rtl"] .cred b,html[dir="rtl"] .cred span{unicode-bidi:plaintext}
html[dir="rtl"] .contact-list a{direction:rtl}
html[dir="rtl"] .form{direction:rtl}
html[dir="rtl"] .form label{text-align:right}
html[dir="rtl"] input:not([dir="ltr"]),html[dir="rtl"] textarea,html[dir="rtl"] select{text-align:right;direction:rtl}
html[dir="rtl"] .foot{direction:rtl;text-align:right}
.upload-help{display:block;margin-top:5px;color:var(--muted);font-size:10px;font-weight:400}
.switch a{border:0;background:none;padding:6px 9px;border-radius:18px;font-size:12px}
.switch a.on{background:var(--ink);color:#fff}
@media(max-width:950px){
 html[dir="rtl"] .hero-grid>div,html[dir="rtl"] .hero-grid>figure{grid-column:auto;grid-row:auto}
}

/* v11 multi-file selection feedback */
input[type=file]{cursor:pointer;border:1px dashed #b7aa9e!important;background:#f7f3ed!important;padding:18px!important}
.file-status{margin-top:10px;padding:12px 14px;border-left:3px solid var(--wine);background:#f3eee7;color:var(--muted);font-size:11px;line-height:1.55}
html[dir=rtl] .file-status{border-left:0;border-right:3px solid var(--wine);text-align:right}
.file-status strong{display:block;color:var(--ink);margin-bottom:6px}
.file-status ul{margin:0;padding-inline-start:20px;max-height:145px;overflow:auto}
.file-status li{margin:3px 0;unicode-bidi:plaintext}

/* v12 — Persian Canada-first credential emphasis */
.canada-credentials{margin:34px 0 46px;padding:32px;border:1px solid #c8bfb4;background:rgba(255,255,255,.42)}
.canada-credentials h3{font-size:30px;margin:0 0 20px}
.canada-credentials>p{line-height:1.9;color:#514e49;font-size:13px}
.canada-badges{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}
.canada-badges>div{background:#fff;padding:22px;border-top:3px solid var(--wine)}
.canada-badges strong{display:block;font-family:"Playfair Display",serif;font-size:27px;color:var(--wine)}
.canada-badges span{display:block;margin:5px 0 12px;font-weight:600}
.canada-badges small{display:block;color:var(--muted);line-height:1.65}
html[dir=rtl] .canada-credentials{text-align:right}
@media(max-width:620px){.canada-badges{grid-template-columns:1fr}.canada-credentials{padding:22px}}

/* v13 — compact header contact links */
.header-contact{
  display:flex; align-items:center; gap:12px; white-space:nowrap;
  font-size:11px; letter-spacing:.02em;
}
.header-contact a{color:inherit;text-decoration:none;transition:opacity .2s ease,color .2s ease}
.header-contact a:hover{color:var(--wine);opacity:.9}
.header-phone{font-weight:600}
.header-social{position:relative}
.header-social + .header-social:before{
  content:"·"; position:absolute; inset-inline-start:-8px; color:var(--muted);
}
@media(max-width:1050px){
  .header-contact{gap:9px;font-size:10px}
}
@media(max-width:820px){
  .header-contact{width:100%;justify-content:center;order:3;padding-top:8px}
}

.upload-limit-note{display:block;margin-top:8px;color:var(--muted);font-size:11px;line-height:1.5}

/* v15 — regional credential SEO section */
.regional-seo{padding:76px 0;border-top:1px solid rgba(90,70,60,.12)}
.regional-seo h2{max-width:760px;margin-bottom:28px}
.regional-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.regional-grid article{padding:24px;border:1px solid rgba(90,70,60,.16);background:rgba(255,255,255,.34)}
.regional-grid h3{margin:0 0 10px;font-size:18px}
.regional-grid p{margin:0;color:var(--muted);font-size:12px;line-height:1.8}
html[dir=rtl] .regional-seo{text-align:right}
@media(max-width:720px){.regional-grid{grid-template-columns:1fr}.regional-seo{padding:54px 0}}

/* v16 — interactive professional credential pills */
.cred-pill{
  appearance:none;border:1px solid var(--wine);background:#fbf7f0;color:var(--wine);
  min-width:72px;padding:8px 11px 7px;border-radius:999px;cursor:pointer;
  display:inline-flex;flex-direction:column;align-items:center;justify-content:center;
  gap:1px;line-height:1.05;transition:background .18s ease,color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.cred-pill strong{font-size:11px;letter-spacing:.08em}
.cred-pill small{font-size:7px;color:var(--muted);letter-spacing:.03em}
.cred-pill:hover,.cred-pill:focus-visible{
  background:var(--wine);color:#fff;transform:translateY(-1px);box-shadow:0 5px 16px rgba(85,20,31,.14);outline:none
}
.cred-pill:hover small,.cred-pill:focus-visible small{color:rgba(255,255,255,.78)}
.credential-modal{position:fixed;inset:0;z-index:9999;background:rgba(24,20,18,.52);display:none;align-items:center;justify-content:center;padding:22px}
.credential-modal.open{display:flex}
.credential-modal-card{position:relative;width:min(560px,100%);background:#f8f3ea;border:1px solid rgba(92,25,35,.22);padding:38px;box-shadow:0 28px 80px rgba(0,0,0,.22)}
.credential-modal-close{position:absolute;top:13px;right:16px;border:0;background:transparent;font-size:28px;line-height:1;cursor:pointer;color:#2a2724}
html[dir=rtl] .credential-modal-close{right:auto;left:16px}
.credential-modal-country{margin:0 0 6px;color:var(--wine);font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}
.credential-modal-card h2{margin:0 0 7px;font-size:34px}
.credential-modal-status{margin:0 0 18px;color:var(--wine);font-weight:700}
.credential-modal-text{font-size:13px;line-height:1.9;color:var(--muted)}
.credential-modal-link{display:inline-block;margin-top:12px;color:var(--wine);font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}
.modal-open{overflow:hidden}
@media(max-width:650px){.cred-pill{min-width:66px}.credential-modal-card{padding:30px 24px}.credential-modal-card h2{font-size:28px}}

/* v17 — Persian hero refinement and remote-service/office information */
.fa-hero-title{
  max-width:680px !important;
  background:none !important;
  color:var(--ink) !important;
  line-height:.98 !important;
  letter-spacing:-.025em;
}
.fa-hero-title span{
  display:block;
  background:none !important;
  color:inherit !important;
  -webkit-text-fill-color:currentColor !important;
  box-decoration-break:initial !important;
}
.fa-hero-title span:first-child{font-size:1em}
.fa-hero-title span:last-child{
  margin-top:.12em;
  color:var(--wine) !important;
  font-size:.72em;
  line-height:1.15;
}
.office-access-card{
  margin-top:32px;
  padding:24px 26px;
  border:1px solid rgba(92,25,35,.18);
  background:rgba(255,255,255,.30);
  max-width:760px;
}
.office-access-kicker{
  margin:0 0 10px !important;
  color:var(--wine) !important;
  font-weight:700;
  font-size:16px !important;
}
.office-access-card p{line-height:1.85}
.office-address{margin-top:16px !important}
.footer-office{
  width:100%;
  margin-top:14px;
  text-align:center;
  font-size:11px;
  color:var(--muted);
}
html[dir=rtl] .office-access-card{text-align:right}
@media(max-width:760px){
  .fa-hero-title{font-size:clamp(44px,13vw,68px) !important}
  .fa-hero-title span:last-child{font-size:.66em}
  .office-access-card{padding:20px}
}

/* v19 — multi-page site components */
.narrow{max-width:850px}
.steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:34px}
.steps article{padding:28px;border:1px solid rgba(92,25,35,.15);background:rgba(255,255,255,.25)}
.steps i{display:block;color:var(--wine);font-style:normal;font-size:12px;letter-spacing:.14em;font-weight:700;margin-bottom:12px}
.steps h2{margin:0 0 10px;font-size:25px}
.steps p{margin:0;line-height:1.8;color:var(--muted)}
.faq-list{max-width:900px;margin-top:30px}
details{border-top:1px solid rgba(92,25,35,.18);padding:18px 0}
details:last-child{border-bottom:1px solid rgba(92,25,35,.18)}
summary{cursor:pointer;font-weight:700;font-size:18px;color:var(--ink)}
details p{margin:12px 0 0;line-height:1.8;color:var(--muted)}
@media(max-width:760px){.steps{grid-template-columns:1fr}}

/* SEO semantic page titles: preserve existing visual treatment after h2→h1 upgrade */
.section h1.page-title{font-family:"Playfair Display",serif;font-weight:500;letter-spacing:-.025em;font-size:clamp(35px,4vw,52px);margin:0}
html[dir=rtl] .section h1.page-title{font-family:Tahoma,Arial,sans-serif;letter-spacing:0}
