:root{
  --emerald: #0b7350;
  --emerald-dark: #085840;
  --emerald-light: #e7f3ee;
  --grey: #58585b;
  --grey-dark: #2c2c2e;
  --grey-mid: #8a8a8d;
  --grey-light: #f2f2f3;
  --off-white: #faf9f7;
  --white: #ffffff;
  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --shadow: 0 20px 50px -20px rgba(30,40,35,0.25);
  --radius: 14px;
}
*{box-sizing:border-box; margin:0; padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--sans); color:var(--grey-dark); background:var(--off-white); line-height:1.6; overflow-x:hidden;}
img{max-width:100%; display:block;}
a{text-decoration:none; color:inherit;}
ul{list-style:none;}
.container{max-width:1220px; margin:0 auto; padding:0 28px;}
.eyebrow{font-family:var(--sans); font-weight:700; letter-spacing:.14em; text-transform:uppercase; font-size:.78rem; color:var(--emerald);}
h1,h2,h3,h4{font-family:var(--serif); font-weight:600; color:var(--grey-dark); line-height:1.12;}
h2{font-size:2.6rem; letter-spacing:-.01em;}
h3{font-size:1.4rem;}
p{color:var(--grey);}
.section{padding:100px 0;}

/* SCROLL REVEAL */
.reveal{opacity:0; transform:translateY(28px); transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal.active{opacity:1; transform:translateY(0);}
.reveal-scale{opacity:0; transform:scale(.94); transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1);}
.reveal-scale.active{opacity:1; transform:scale(1);}
.stagger > *{opacity:0; transform:translateY(24px); transition:opacity .7s cubic-bezier(.2,.7,.2,1), transform .7s cubic-bezier(.2,.7,.2,1);}
.stagger.active > *{opacity:1; transform:translateY(0); transition-delay:calc(var(--i, 0) * 90ms);}
.stagger > *:nth-child(1){--i:1;} .stagger > *:nth-child(2){--i:2;} .stagger > *:nth-child(3){--i:3;}
.stagger > *:nth-child(4){--i:4;} .stagger > *:nth-child(5){--i:5;} .stagger > *:nth-child(6){--i:6;}
.stagger > *:nth-child(7){--i:7;} .stagger > *:nth-child(8){--i:8;} .stagger > *:nth-child(9){--i:9;}
.stagger > *:nth-child(10){--i:10;}

/* HERO ENTRANCE */
@keyframes heroUp{from{opacity:0; transform:translateY(26px);} to{opacity:1; transform:translateY(0);}}
.hero-anim{opacity:0; animation:heroUp .9s cubic-bezier(.2,.7,.2,1) forwards;}
.hero .eyebrow.hero-anim{animation-delay:.15s;}
.hero h1.hero-anim{animation-delay:.32s;}
.hero p.hero-anim{animation-delay:.5s;}
.hero-btns.hero-anim{animation-delay:.68s;}
.page-hero .eyebrow.hero-anim{animation-delay:.15s;}
.page-hero h1.hero-anim{animation-delay:.32s;}
.page-hero p.hero-anim{animation-delay:.5s;}
.page-hero .crumbs.hero-anim{animation-delay:.62s;}

.section-head{max-width:640px; margin:0 auto 56px; text-align:center;}
.section-head p{margin-top:14px; font-size:1.08rem;}
.section-head.left{margin:0 0 44px; text-align:left;}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:15px 30px; border-radius:4px; font-weight:600; font-size:.86rem; letter-spacing:.06em; text-transform:uppercase; transition:.25s ease; cursor:pointer; border:1.5px solid transparent;}
.btn-primary{background:var(--emerald); color:#fff;}
.btn-primary:hover{background:var(--emerald-dark); transform:translateY(-2px); box-shadow:0 12px 24px -10px rgba(11,115,80,.5);}
.btn-outline{background:transparent; border-color:rgba(255,255,255,.55); color:#fff;}
.btn-outline:hover{background:rgba(255,255,255,.12); border-color:#fff;}
.btn-outline-dark{background:transparent; border-color:var(--grey-dark); color:var(--grey-dark);}
.btn-outline-dark:hover{background:var(--grey-dark); color:#fff;}

/* NAV */
header{position:fixed; top:0; left:0; right:0; z-index:1000; transition:.3s ease; background:rgba(250,249,247,0); padding:18px 0;}
header.scrolled{background:rgba(250,249,247,.97); backdrop-filter:blur(10px); box-shadow:0 4px 20px -10px rgba(0,0,0,.12); padding:10px 0;}
header.solid{background:rgba(250,249,247,.97); backdrop-filter:blur(10px); box-shadow:0 4px 20px -10px rgba(0,0,0,.08);}
.nav-inner{display:flex; align-items:center; justify-content:space-between;}
.logo-link img{height:40px; width:auto; transition:.3s;}
header.scrolled .logo-link img{height:34px;}
.nav-links{display:flex; align-items:center; gap:38px;}
.nav-cta .btn-primary{white-space:nowrap;}
@media (max-width:1150px){
  .nav-links{gap:24px;}
  .nav-cta{gap:14px;}
  .nav-cta .btn-primary{padding:13px 18px; font-size:.76rem;}
}
.nav-links a{font-size:.82rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase; color:var(--grey-dark); position:relative; padding:4px 0;}
header:not(.scrolled):not(.solid) .nav-links a{color:#fff;}
.nav-links a.current{color:var(--emerald);}
header:not(.scrolled):not(.solid) .nav-links a.current{color:#8fe4bd;}
.nav-links a::after{content:''; position:absolute; left:0; bottom:-2px; width:0; height:2px; background:var(--emerald); transition:.25s;}
header:not(.scrolled):not(.solid) .nav-links a::after{background:#fff;}
.nav-links a:hover::after, .nav-links a.current::after{width:100%;}
.nav-cta{display:flex; align-items:center; gap:22px;}
.burger{display:none; flex-direction:column; gap:5px; cursor:pointer; z-index:1100;}
.burger span{width:26px; height:2px; background:#fff; transition:.3s;}
header.scrolled .burger span, header.solid .burger span{background:var(--grey-dark);}

/* HERO (home, full height) */
.hero{position:relative; min-height:100vh; display:flex; align-items:center; color:#fff; overflow:hidden;}
.hero::before{content:''; position:absolute; inset:0; background-image:var(--hero-img, url('/assets/img/hero.png')); background-size:cover; background-position:center 30%;}
.hero::after{content:''; position:absolute; inset:0; background:linear-gradient(100deg, rgba(10,20,17,.88) 0%, rgba(10,20,17,.66) 38%, rgba(11,115,80,.35) 72%, rgba(10,20,17,.75) 100%);}
.hero-content{position:relative; z-index:2; max-width:660px; padding-top:70px;}
.hero .eyebrow{color:#8fe4bd; margin-bottom:18px; display:block;}
.hero h1{font-size:4.4rem; color:#fff; margin-bottom:22px;}
.hero h1 em{font-style:normal; color:#8fe4bd;}
.hero p{color:rgba(255,255,255,.86); font-size:1.14rem; max-width:560px; margin-bottom:38px;}
.hero-btns{display:flex; gap:16px; flex-wrap:wrap;}
.scroll-cue{position:absolute; bottom:34px; left:50%; transform:translateX(-50%); z-index:2; color:rgba(255,255,255,.75); font-size:.72rem; letter-spacing:.15em; text-transform:uppercase; display:flex; flex-direction:column; align-items:center; gap:8px;}
.scroll-cue .line{width:1px; height:34px; background:rgba(255,255,255,.5); animation:scrollpulse 1.8s ease-in-out infinite;}
@keyframes scrollpulse{0%{transform:scaleY(0); transform-origin:top;}50%{transform:scaleY(1); transform-origin:top;}50.01%{transform-origin:bottom;}100%{transform:scaleY(0); transform-origin:bottom;}}

/* PAGE HERO (interior pages, shorter banner) */
.page-hero{position:relative; min-height:52vh; display:flex; align-items:center; color:#fff; overflow:hidden; padding-top:80px;}
.page-hero::before{content:''; position:absolute; inset:0; background-image:var(--hero-img); background-size:cover; background-position:center;}
.page-hero::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,18,15,.82) 0%, rgba(8,18,15,.78) 60%, rgba(8,18,15,.92) 100%);}
.page-hero-content{position:relative; z-index:2; max-width:680px;}
.page-hero .crumbs{font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; color:rgba(255,255,255,.7); margin-bottom:16px; display:flex; gap:8px; align-items:center;}
.page-hero .crumbs a{color:rgba(255,255,255,.7);}
.page-hero .crumbs a:hover{color:#fff;}
.page-hero .eyebrow{color:#8fe4bd; margin-bottom:14px; display:block;}
.page-hero h1{font-size:3.2rem; color:#fff; margin-bottom:16px;}
.page-hero p{color:rgba(255,255,255,.85); font-size:1.08rem; max-width:560px;}

/* DESTINATIONS */
.destinations{background:var(--white);}
.region-toggle{display:flex; justify-content:center; gap:10px; margin-bottom:44px;}
.region-toggle button{font-family:var(--sans); font-weight:700; font-size:.78rem; letter-spacing:.08em; text-transform:uppercase; padding:12px 26px; border-radius:30px; border:1.5px solid var(--grey-light); background:var(--grey-light); color:var(--grey); cursor:pointer; transition:.25s;}
.region-toggle button.active{background:var(--emerald); border-color:var(--emerald); color:#fff;}
.country-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
.country-panel{display:none;}
.country-panel.active{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
.country-card{background:var(--off-white); border:1px solid #ece9e3; border-radius:var(--radius); padding:30px 24px; transition:.3s;}
.country-card:hover{transform:translateY(-6px); box-shadow:var(--shadow); border-color:transparent;}
.country-card .flag{font-size:2.2rem; margin-bottom:14px;}
.country-card h4{font-family:var(--serif); font-size:1.35rem; margin-bottom:8px;}
.country-card p{font-size:.92rem; margin:0;}

/* ABOUT */
.about{background:var(--off-white);}
.about-grid{display:grid; grid-template-columns:0.95fr 1.05fr; gap:70px; align-items:center;}
.about-media{position:relative;}
.about-media img{border-radius:var(--radius); box-shadow:var(--shadow); width:100%; height:520px; object-fit:cover;}
.about-media .badge{position:absolute; bottom:-28px; left:-28px; background:var(--emerald); color:#fff; padding:26px 28px; border-radius:var(--radius); box-shadow:0 20px 40px -14px rgba(11,115,80,.5);}
.about-media .badge .num{font-family:var(--serif); font-size:2.4rem; font-weight:700; line-height:1;}
.about-media .badge .lbl{font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; margin-top:4px; opacity:.9;}
.about-copy h2{margin:10px 0 22px;}
.about-copy p{margin-bottom:18px;}
.about-copy .btn{margin-top:12px;}
.stat-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:26px; margin-top:44px;}
.stat-item h3{font-size:2rem; color:var(--emerald); margin-bottom:6px;}
.stat-item p{font-size:.88rem; margin:0;}

/* VALUES */
.values{background:var(--white);}
.value-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px;}
.value-card{padding:34px 26px; border:1px solid #ece9e3; border-radius:var(--radius); transition:.3s;}
.value-card:hover{border-color:var(--emerald); box-shadow:var(--shadow); transform:translateY(-6px);}
.value-card .icon{width:52px; height:52px; border-radius:50%; background:var(--emerald-light); color:var(--emerald); display:flex; align-items:center; justify-content:center; margin-bottom:20px;}
.value-card .icon svg{width:24px; height:24px;}
.value-card h3{font-size:1.2rem; margin-bottom:10px;}
.value-card p{font-size:.92rem; margin:0;}

/* TIMELINE */
.timeline{background:var(--off-white);}
.timeline-list{max-width:760px; margin:0 auto; position:relative;}
.timeline-list::before{content:''; position:absolute; left:22px; top:8px; bottom:8px; width:2px; background:#e3e0d9;}
.timeline-item{position:relative; padding-left:64px; margin-bottom:42px;}
.timeline-item:last-child{margin-bottom:0;}
.timeline-item::before{content:''; position:absolute; left:14px; top:4px; width:18px; height:18px; border-radius:50%; background:var(--emerald); border:4px solid var(--off-white); box-shadow:0 0 0 2px var(--emerald);}
.timeline-item .yr{font-family:var(--serif); font-size:1.5rem; color:var(--emerald); font-weight:700; margin-bottom:6px; display:block;}
.timeline-item h3{font-size:1.15rem; margin-bottom:6px;}
.timeline-item p{font-size:.93rem; margin:0;}

/* PROCESS STEPS */
.process{background:var(--off-white);}
.process-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:20px; counter-reset:step;}
.process-step{position:relative; padding:32px 22px 26px; background:var(--white); border:1px solid #ece9e3; border-radius:var(--radius); transition:.3s;}
.process-step:hover{border-color:var(--emerald); box-shadow:var(--shadow); transform:translateY(-6px);}
.process-step .step-num{font-family:var(--serif); font-size:2.2rem; font-weight:700; color:var(--emerald-light); -webkit-text-stroke:1.5px var(--emerald); color:transparent; margin-bottom:14px; display:block;}
.process-step h3{font-size:1.05rem; margin-bottom:8px;}
.process-step p{font-size:.87rem; margin:0;}

/* SERVICES */
.services{background:var(--white);}
.service-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.service-card{border:1px solid #ece9e3; border-radius:var(--radius); padding:38px 30px; transition:.3s; position:relative;}
.service-card:hover{border-color:var(--emerald); box-shadow:var(--shadow); transform:translateY(-6px);}
.service-card .icon{width:56px; height:56px; border-radius:50%; background:var(--emerald-light); display:flex; align-items:center; justify-content:center; margin-bottom:22px; color:var(--emerald); transition:.3s ease;}
.service-card .icon svg{width:26px; height:26px;}
.service-card:hover .icon{background:var(--emerald); color:#fff; transform:scale(1.08) rotate(-4deg);}
.service-card h3{margin-bottom:12px;}
.service-card p{font-size:.94rem; margin:0;}
.services-cta{text-align:center; margin-top:48px;}

/* SERVICE DETAIL ROWS (services.html) */
.service-detail{padding:76px 0; border-bottom:1px solid #ece9e3;}
.service-detail:last-child{border-bottom:none;}
.service-detail .container{display:grid; grid-template-columns:0.55fr 1.45fr; gap:60px; align-items:start;}
.service-detail-head{position:sticky; top:120px;}
.service-detail-head .icon{width:60px; height:60px; border-radius:50%; background:var(--emerald-light); color:var(--emerald); display:flex; align-items:center; justify-content:center; margin-bottom:20px;}
.service-detail-head .icon svg{width:28px; height:28px;}
.service-detail-head .num{font-family:var(--serif); color:var(--emerald-light); font-size:.85rem; letter-spacing:.1em; text-transform:uppercase; margin-bottom:10px; display:block; color:var(--emerald);}
.service-detail-body p{margin-bottom:16px; font-size:1rem;}
.service-detail-list{margin-top:22px; display:grid; gap:14px;}
.service-detail-list li{display:flex; gap:12px; align-items:flex-start; font-size:.95rem; color:var(--grey-dark);}
.service-detail-list li svg{width:20px; height:20px; color:var(--emerald); flex-shrink:0; margin-top:2px;}
.service-detail:nth-child(even){background:var(--off-white);}

/* RELOCATION */
.relocation{position:relative; color:#fff;}
.relocation::before{content:''; position:absolute; inset:0; background-image:url('/assets/img/relocation.png'); background-size:cover; background-position:center;}
.relocation::after{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,20,16,.94) 0%, rgba(8,20,16,.88) 100%);}
.relocation-inner{position:relative; z-index:2;}
.relocation .section-head p{color:rgba(255,255,255,.78);}
.relocation .section-head .eyebrow{color:#8fe4bd;}
.relocation .section-head h2{color:#fff;}
.perm-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.perm-card{background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.14); border-radius:var(--radius); padding:34px 28px; backdrop-filter:blur(6px);}
.perm-card h3{color:#fff; margin-bottom:12px;}
.perm-card p{color:rgba(255,255,255,.75); font-size:.94rem; margin:0;}

/* STATS STRIP */
.stats-strip{background:var(--grey-dark); color:#fff; padding:64px 0;}
.stats-strip .container{display:grid; grid-template-columns:repeat(4,1fr); gap:20px; text-align:center;}
.stats-strip .num{font-family:var(--serif); font-size:3rem; font-weight:700; color:#8fe4bd;}
.stats-strip .lbl{font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; margin-top:8px; color:rgba(255,255,255,.7);}

/* INDUSTRIES */
.industries{background:var(--off-white);}
.industry-grid{display:grid; grid-template-columns:repeat(5,1fr); gap:16px;}
.industry-chip{background:var(--white); border:1px solid #ece9e3; border-radius:10px; padding:22px 16px; text-align:center; font-weight:600; font-size:.94rem; transition:.25s;}
.industry-chip:hover{background:var(--emerald); color:#fff; border-color:var(--emerald); transform:translateY(-4px);}

/* TESTIMONIALS */
.testimonials{background:var(--white);}
.test-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.test-card{background:var(--off-white); border-radius:var(--radius); padding:36px 30px; border:1px solid #ece9e3; display:flex; flex-direction:column;}
.test-card .quote-mark{font-family:var(--serif); font-size:3rem; color:var(--emerald); line-height:1; margin-bottom:6px;}
.test-card p.quote{color:var(--grey-dark); font-size:.98rem; flex:1; margin-bottom:22px;}
.test-card .person{border-top:1px solid #e3e0d9; padding-top:16px;}
.test-card .person strong{display:block; font-size:.95rem;}
.test-card .person span{font-size:.82rem; color:var(--grey-mid);}

/* PARTNERS */
.partners{padding:60px 0; background:var(--off-white); border-top:1px solid #ece9e3; border-bottom:1px solid #ece9e3;}
.partners .eyebrow{display:block; text-align:center; margin-bottom:34px;}
.partner-row{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:30px; opacity:.75;}
.partner-row span{font-family:var(--serif); font-size:1.5rem; font-weight:600; color:var(--grey-mid); letter-spacing:.02em;}

/* FAQ */
.faq{background:var(--white);}
.faq-list{max-width:800px; margin:0 auto;}
.faq-item{border-bottom:1px solid #ece9e3;}
.faq-item summary{list-style:none; cursor:pointer; padding:24px 0; display:flex; justify-content:space-between; align-items:center; font-family:var(--serif); font-size:1.15rem; font-weight:600; color:var(--grey-dark);}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary .plus{width:26px; height:26px; border-radius:50%; border:1.5px solid var(--emerald); color:var(--emerald); display:flex; align-items:center; justify-content:center; flex-shrink:0; margin-left:20px; transition:.25s; font-size:1rem;}
.faq-item[open] summary .plus{transform:rotate(45deg); background:var(--emerald); color:#fff;}
.faq-item p{padding-bottom:24px; font-size:.96rem; max-width:680px;}

/* CONTACT */
.contact{background:var(--white);}
.contact-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:60px;}
.contact-info h2{margin-bottom:18px;}
.contact-info p.lead{margin-bottom:34px;}
.info-row{display:flex; gap:16px; margin-bottom:26px; align-items:flex-start;}
.info-row .ic{width:42px; height:42px; border-radius:50%; background:var(--emerald-light); color:var(--emerald); display:flex; align-items:center; justify-content:center; flex-shrink:0; font-size:1.1rem;}
.info-row strong{display:block; font-size:.95rem; margin-bottom:3px;}
.info-row span, .info-row a{font-size:.92rem; color:var(--grey);}
.map-embed{margin-top:30px; border-radius:var(--radius); overflow:hidden; border:1px solid #ece9e3; height:220px;}
.map-embed iframe{width:100%; height:100%; border:0; filter:grayscale(45%) contrast(1.05);}
.contact-form{background:var(--off-white); border-radius:var(--radius); padding:44px; border:1px solid #ece9e3;}
.form-row{margin-bottom:20px;}
.form-row.two{display:grid; grid-template-columns:1fr 1fr; gap:16px;}
.form-row label{display:block; font-size:.8rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; color:var(--grey-dark); margin-bottom:8px;}
.form-row input, .form-row textarea, .form-row select{width:100%; padding:14px 16px; border:1.5px solid #e3e0d9; border-radius:8px; font-family:var(--sans); font-size:.95rem; background:#fff; transition:.2s;}
.form-row input:focus, .form-row textarea:focus, .form-row select:focus{outline:none; border-color:var(--emerald);}
.contact-form .btn{width:100%; margin-top:6px;}
.contact-cards{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; margin-bottom:70px;}
.contact-card{padding:32px 26px; border:1px solid #ece9e3; border-radius:var(--radius); text-align:center; transition:.3s;}
.contact-card:hover{border-color:var(--emerald); box-shadow:var(--shadow); transform:translateY(-6px);}
.contact-card .ic{width:52px; height:52px; border-radius:50%; background:var(--emerald-light); color:var(--emerald); display:flex; align-items:center; justify-content:center; margin:0 auto 18px; font-size:1.3rem;}
.contact-card h3{font-size:1.1rem; margin-bottom:8px;}
.contact-card p, .contact-card a{font-size:.92rem;}

/* FOOTER */
footer{background:var(--grey-dark); color:rgba(255,255,255,.8); padding:70px 0 30px;}
.footer-grid{display:grid; grid-template-columns:1.4fr 0.8fr 0.8fr 1.1fr; gap:40px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,.1);}
.footer-grid img{height:38px; margin-bottom:16px; filter:brightness(0) invert(1);}
.footer-grid p{color:rgba(255,255,255,.6); font-size:.9rem; max-width:280px;}
.footer-col h4{color:#fff; font-family:var(--sans); font-size:.85rem; letter-spacing:.08em; text-transform:uppercase; margin-bottom:18px;}
.footer-col li{margin-bottom:11px;}
.footer-col a{font-size:.9rem; color:rgba(255,255,255,.65); transition:.2s;}
.footer-col a:hover{color:#8fe4bd;}
.footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:26px; font-size:.82rem; color:rgba(255,255,255,.5); flex-wrap:wrap; gap:10px;}
.social-row{display:flex; gap:14px;}
.social-row a{width:36px; height:36px; border-radius:50%; border:1px solid rgba(255,255,255,.2); display:flex; align-items:center; justify-content:center; font-size:.85rem;}
.social-row a:hover{background:var(--emerald); border-color:var(--emerald);}

/* MOBILE */
@media (max-width:980px){
  h2{font-size:2.1rem;}
  .hero h1{font-size:3rem;}
  .page-hero h1{font-size:2.4rem;}
  .about-grid, .contact-grid{grid-template-columns:1fr; gap:44px;}
  .about-media{order:2;}
  .about-media img{height:380px;}
  .stat-grid{grid-template-columns:repeat(2,1fr);}
  .service-grid, .value-grid{grid-template-columns:repeat(2,1fr);}
  .perm-grid{grid-template-columns:1fr;}
  .industry-grid{grid-template-columns:repeat(3,1fr);}
  .country-grid, .country-panel.active{grid-template-columns:repeat(2,1fr);}
  .stats-strip .container{grid-template-columns:repeat(2,1fr); gap:36px;}
  .test-grid{grid-template-columns:1fr;}
  .footer-grid{grid-template-columns:1fr 1fr; gap:34px;}
  .process-grid{grid-template-columns:repeat(3,1fr);}
  .service-detail .container{grid-template-columns:1fr; gap:30px;}
  .service-detail-head{position:static;}
  .contact-cards{grid-template-columns:1fr;}
}
@media (max-width:720px){
  .nav-links{position:fixed; top:0; right:-100%; width:78%; max-width:320px; height:100vh; background:var(--grey-dark); flex-direction:column; justify-content:center; align-items:flex-start; padding:40px; gap:26px; transition:.35s ease; z-index:1050;}
  .nav-links.open{right:0;}
  .nav-links a{color:#fff !important;}
  .burger{display:flex;}
  .nav-cta .btn-primary{display:none;}
  header:not(.scrolled):not(.solid) .burger span{background:#fff;}
  .service-grid, .value-grid{grid-template-columns:1fr;}
  .industry-grid{grid-template-columns:repeat(2,1fr);}
  .country-grid, .country-panel.active{grid-template-columns:1fr;}
  .stats-strip .container{grid-template-columns:1fr; gap:30px;}
  .footer-grid{grid-template-columns:1fr;}
  .contact-form{padding:30px 24px;}
  .section{padding:70px 0;}
  .process-grid{grid-template-columns:1fr 1fr;}
  .form-row.two{grid-template-columns:1fr;}
  .scroll-cue{display:none;}
  .hero-content{padding-top:90px;}
  .hero-btns{gap:12px;}
  .hero-btns .btn{width:100%;}
}
@media (max-width:480px){
  .hero h1{font-size:2.35rem;}
  .hero p{font-size:1rem;}
  .page-hero h1{font-size:1.9rem;}
  h2{font-size:1.7rem;}
  .about-media .badge{left:0; bottom:-20px; padding:18px 20px;}
  .about-media .badge .num{font-size:1.8rem;}
  .contact-form{padding:26px 18px;}
  .service-detail{padding:56px 0;}
  .timeline-item{padding-left:52px;}
}
