:root { --navy: #0c2343; --navy-2: #10294d; --red: #d92d37; --cream: #f3eee5; --paper: #fffdfa; --ink: #10213a; --muted: #5f6b7c; --line: #ddd5cb; --green: #24d366; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0px; background: var(--paper); color: var(--ink); font-family: Arial, Helvetica, sans-serif; line-height: 1.55; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.topbar { height: 34px; background: var(--navy); color: rgb(255, 255, 255); display: flex; align-items: center; justify-content: center; gap: 8vw; padding: 0px 24px; font-size: 10px; letter-spacing: 0.22em; white-space: nowrap; overflow: hidden; }
.site-header { position: sticky; top: 0px; z-index: 20; display: grid; grid-template-columns: minmax(230px, 1fr) auto 1fr; align-items: center; min-height: 96px; padding: 12px 6vw; background: rgba(255, 255, 255, 0.97); border-bottom: 1px solid rgb(238, 238, 238); }
.brand { display: flex; align-items: center; justify-self: start; min-width: 0px; }
.brand img.header-logo { width: clamp(235px, 22vw, 320px); height: auto; object-fit: contain; }
.brand-text { display: none; }
.site-header nav { display: flex; gap: 34px; font-size: 12px; }
.site-header nav a:hover { color: var(--red); }
.header-cta { justify-self: end; }
.btn { display: inline-flex; align-items: center; justify-content: center; border: 0px; padding: 15px 22px; font-weight: 700; font-size: 12px; cursor: pointer; transition: 0.2s; }
.btn:hover { transform: translateY(-1px); }
.btn-red { background: var(--red); color: rgb(255, 255, 255); }
.btn-whatsapp { background: var(--green); color: rgb(4, 27, 16); }
.hero { min-height: 520px; background: var(--cream); display: grid; grid-template-columns: 1.2fr 0.9fr; gap: 70px; align-items: center; padding: 62px 7vw 78px; overflow: hidden; }
.hero-copy { max-width: 690px; }
.eyebrow { margin: 0px 0px 20px; color: var(--red); font-weight: 800; font-size: 10px; letter-spacing: 0.34em; }
.eyebrow.light { color: rgb(255, 255, 255); }
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; font-weight: 500; margin-top: 0px; }
h1 { font-size: clamp(52px, 5.2vw, 82px); line-height: 1.02; margin-bottom: 20px; }
h1 em { display: block; color: var(--red); font-weight: 500; }
h2 { font-size: clamp(38px, 4vw, 62px); line-height: 1.06; margin-bottom: 18px; }
h3 { font-size: 24px; line-height: 1.2; }
.lead { max-width: 680px; font-size: 17px; }
.hero-actions { display: flex; gap: 26px; align-items: center; margin: 30px 0px; }
.text-link { font-weight: 700; font-size: 12px; border-bottom: 1px solid var(--navy); padding-bottom: 4px; }
.fineprint { font-size: 10px; color: rgb(102, 112, 133); }
.hero-card { position: relative; background: var(--navy); color: rgb(255, 255, 255); min-height: 405px; padding: 30px 34px; display: flex; flex-direction: column; justify-content: space-between; box-shadow: rgb(234, 210, 201) 16px 16px 0px; }
.country-pill { align-self: flex-start; border: 1px solid rgb(131, 144, 165); padding: 10px 14px; font-size: 11px; letter-spacing: 0.12em; }
.country-pill span { padding: 0px 10px; }
.route-line { position: absolute; left: 20%; right: 18%; top: 48%; border-top: 3px dashed var(--red); transform: rotate(-12deg); }
.flag-mark { position: absolute; right: 26%; top: 54%; font-size: 78px; font-weight: 100; color: rgb(255, 255, 255); transform: rotate(0deg); }
.hero-card p { font-size: 9px; letter-spacing: 0.24em; }
.hero-card p span { color: rgb(255, 133, 144); }
.trust-strip { display: grid; grid-template-columns: repeat(3, 1fr); padding: 26px 7vw; background: rgb(255, 255, 255); border-bottom: 1px solid rgb(238, 238, 238); }
.trust-strip > div { display: grid; gap: 5px; padding: 0px 28px; border-right: 1px solid var(--line); }
.trust-strip > div:last-child { border-right: 0px; }
.trust-strip strong { font-family: Georgia, serif; font-size: 17px; }
.trust-strip span { font-size: 10px; color: rgb(101, 112, 132); }
.section { padding: 85px 7vw; }
.section-heading { max-width: 860px; margin-bottom: 42px; }
.section-heading p:not(.eyebrow) { color: var(--muted); max-width: 760px; }
.centered { text-align: center; margin-left: auto; margin-right: auto; }
.centered p:not(.eyebrow) { margin-left: auto; margin-right: auto; }
.service-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.service-card { position: relative; min-height: 260px; padding: 28px; background: rgb(255, 255, 255); border: 1px solid rgb(221, 214, 205); }
.service-card.featured { background: var(--navy); color: rgb(255, 255, 255); }
.service-card.registry { border-top: 4px solid var(--red); }
.service-no { display: inline-block; margin-bottom: 38px; color: var(--red); font-size: 10px; letter-spacing: 0.2em; font-weight: 800; }
.service-card p { font-size: 13px; color: rgb(93, 103, 118); }
.service-card.featured p { color: rgb(203, 213, 225); }
.process { display: grid; grid-template-columns: 0.9fr 1.1fr; background: var(--navy-2); color: rgb(255, 255, 255); padding: 74px 7vw; gap: 70px; }
.process-intro p:not(.eyebrow) { color: rgb(185, 197, 213); max-width: 520px; }
.process-steps { list-style: none; padding: 0px; margin: 0px; }
.process-steps li { display: grid; grid-template-columns: 34px 1fr; gap: 20px; padding: 20px 0px; border-top: 1px solid rgba(255, 255, 255, 0.18); }
.process-steps li:last-child { border-bottom: 1px solid rgba(255, 255, 255, 0.18); }
.process-steps > li > span { color: var(--red); font-size: 10px; font-weight: 800; }
.process-steps h3 { margin: 0px 0px 6px; }
.process-steps p { margin: 0px; color: rgb(185, 197, 213); font-size: 12px; }
.fees { background: var(--cream); }
.fee-note { max-width: 850px; margin: 0px auto; background: rgb(255, 255, 255); border-top: 6px solid var(--red); padding: 28px; display: grid; gap: 6px; text-align: center; }
.fee-note strong { font-family: Georgia, serif; font-size: 24px; }
.fee-note span { font-size: 13px; color: var(--muted); }
.about { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; align-items: start; }
.about > p { color: var(--muted); font-size: 15px; }
.contact { background: var(--red); color: rgb(255, 255, 255); display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 80px; padding: 72px 7vw; }
.contact-copy { max-width: 520px; }
.contact-copy h2 { font-size: clamp(46px, 4.7vw, 70px); }
.contact-copy p { max-width: 520px; }
.contact-copy ul { list-style: none; padding: 0px; margin: 10px 0px 28px; font-size: 12px; }
.contact-copy li { margin: 5px 0px; }
.enquiry-form { background: rgb(255, 255, 255); color: var(--ink); padding: 32px; display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.enquiry-form label { font-size: 9px; letter-spacing: 0.12em; font-weight: 800; display: grid; gap: 8px; }
.enquiry-form input, .enquiry-form select, .enquiry-form textarea { width: 100%; border: 1px solid rgb(203, 209, 217); background: rgb(255, 255, 255); padding: 13px 12px; font: inherit; color: var(--ink); outline: none; }
.enquiry-form input:focus, .enquiry-form select:focus, .enquiry-form textarea:focus { border-color: var(--navy); }
.full { grid-column: 1 / -1; }
.form-note { margin: 0px; color: rgb(107, 114, 128); font-size: 9px; letter-spacing: 0px; font-weight: 400; }
footer { background: rgb(7, 26, 52); color: rgb(255, 255, 255); padding: 40px 7vw 26px; display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; }
.footer-brand { display: flex; align-items: center; gap: 12px; }
.footer-brand img { width: 44px; }
.footer-brand div { display: grid; }
.footer-brand strong { font-size: 12px; letter-spacing: 0.17em; }
.footer-brand span { font-size: 9px; letter-spacing: 0.35em; color: var(--red); }
.footer-links { display: flex; gap: 25px; font-size: 11px; }
footer p { grid-column: 2; text-align: right; margin: 0px; color: rgb(184, 192, 206); font-size: 10px; }
footer small { grid-column: 1 / -1; border-top: 1px solid rgba(255, 255, 255, 0.16); padding-top: 20px; color: rgb(137, 150, 168); font-size: 9px; }
.floating-whatsapp { position: fixed; right: 18px; bottom: 18px; z-index: 30; background: var(--green); color: rgb(4, 27, 16); padding: 13px 18px; border-radius: 30px; font-size: 12px; font-weight: 800; box-shadow: rgba(0, 0, 0, 0.18) 0px 8px 30px; }
@media (max-width: 980px) {
  .site-header { grid-template-columns: minmax(0px, 1fr) auto; gap: 16px; }
  .brand img.header-logo { width: clamp(210px, 36vw, 270px); }
  .site-header nav { display: none; }
  .hero { grid-template-columns: 1fr; }
  .hero-card { min-height: 340px; }
  .service-grid { grid-template-columns: 1fr 1fr; }
  .process, .contact, .about { grid-template-columns: 1fr; }
  .contact { gap: 36px; }
  .trust-strip { grid-template-columns: 1fr; }
  .trust-strip > div { border-right: 0px; border-bottom: 1px solid var(--line); padding: 14px 0px; }
  .trust-strip > div:last-child { border-bottom: 0px; }
}
@media (max-width: 640px) {
  .topbar { justify-content: flex-start; gap: 28px; }
  .site-header { padding: 10px 14px; gap: 10px; min-height: 84px; }
  .brand img.header-logo { width: clamp(185px, 52vw, 225px); }
  .brand-text { display: none; }
  .header-cta { padding: 11px 12px; font-size: 11px; }
  .hero, .section, .process, .contact { padding-left: 22px; padding-right: 22px; }
  .hero { gap: 36px; padding-top: 42px; }
  .hero-card { min-height: 290px; padding: 24px; }
  .service-grid { grid-template-columns: 1fr; }
  .enquiry-form { grid-template-columns: 1fr; padding: 22px; }
  .enquiry-form label, .full { grid-column: 1; }
  .trust-strip { padding-left: 22px; padding-right: 22px; }
  footer { grid-template-columns: 1fr; padding-left: 22px; padding-right: 22px; }
  .footer-links, footer p { grid-column: 1; text-align: left; }
  .floating-whatsapp { right: 12px; bottom: 12px; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 16px; }
}

.site-header nav{gap:22px}
.prc-global{background:#0c2343;color:#fff;padding:78px 6vw;scroll-margin-top:115px}
.prc-global-inner{max-width:1160px;margin:auto}
.prc-global-eyebrow{font-size:11px;font-weight:700;letter-spacing:.2em;color:#e7c69b;margin:0 0 17px}
.prc-global h2{font:400 clamp(35px,4vw,54px)/1.16 Georgia,serif;margin:0 0 22px;letter-spacing:-.02em}
.prc-global h2 em{color:#f2d7b5;font-weight:400}
.prc-global-lead{font-size:16px;line-height:1.8;max-width:750px;color:#d7e0ec;margin:0 0 30px}
.prc-global-countries{display:grid;grid-template-columns:repeat(5,1fr);gap:13px;margin:30px 0}
.prc-global-card{display:flex;flex-direction:column;min-height:190px;background:#fffdfa;border-radius:8px;padding:21px 18px;color:#10213a;transition:transform .18s}
.prc-global-card:hover{transform:translateY(-4px)}
.prc-global-card span{font-size:31px;line-height:1.3}.prc-global-card h3{font:600 21px Georgia,serif;margin:15px 0 8px}.prc-global-card p{font-size:12px;color:#5f6b7c;margin:0 0 15px}.prc-global-card b{margin-top:auto;color:#d92d37;font-size:20px}
.prc-global-cta{display:inline-block;background:#d92d37;color:white;padding:15px 23px;border-radius:5px;font-size:13px;font-weight:700}
.prc-global-note{max-width:880px;font-size:12px;line-height:1.75;color:#b7c7d9;margin:22px 0 0}
@media(max-width:1050px){.site-header nav{gap:14px}.prc-global-countries{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.prc-global{padding:55px 22px}.prc-global-countries{grid-template-columns:repeat(2,1fr)}.prc-global-card{min-height:178px}}
@media(max-width:380px){.prc-global-countries{grid-template-columns:1fr}.prc-global-card{min-height:150px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.prc-global-card,.btn{transition:none}.prc-global-card:hover{transform:none}}

/* Multipage navigation and compact service layouts */
section[id]{scroll-margin-top:150px}.mobile-services{display:none}.service-hero{padding:60px 7vw;background:var(--cream)}.service-hero h1{font-size:clamp(38px,5vw,68px);max-width:900px}.service-hero .lead{max-width:760px;margin-bottom:28px}.breadcrumb{font-size:13px;margin-bottom:26px}.breadcrumb a{text-decoration:underline}.service-detail{padding:55px 7vw;display:grid;grid-template-columns:1.2fr 1fr;gap:55px}.service-detail h2{font-size:38px}.service-detail aside{background:var(--cream);padding:28px}.service-card .text-link{display:inline-block;margin-top:12px}.btn:disabled{opacity:.7;cursor:wait}.form-note{min-height:44px}a:focus-visible,button:focus-visible{outline:3px solid #2465bd;outline-offset:4px}
@media(max-width:980px){.site-header{grid-template-columns:minmax(0,1fr) auto auto}.mobile-services{display:block;font-size:12px;font-weight:bold}.service-detail{grid-template-columns:1fr;gap:20px}.brand img.header-logo{width:210px}}
@media(max-width:640px){.topbar{height:auto;min-height:30px;white-space:normal;font-size:8px;letter-spacing:.08em;gap:10px;flex-wrap:wrap;padding:6px 14px}.topbar span:nth-last-child(-n+2){display:none}.site-header{grid-template-columns:1fr auto;padding:12px 16px;gap:12px;position:relative}.brand img.header-logo{width:190px}.header-cta{grid-column:1/-1;width:100%;padding:11px}.mobile-services{font-size:13px}.service-hero{padding:38px 22px}.service-detail{padding:35px 22px}.service-detail h2{font-size:32px}section[id]{scroll-margin-top:18px}.floating-whatsapp{bottom:18px}.contact{padding-bottom:110px}}
