/* About, Blog, FAQ and Contact pages — builds on service.css */
.section{padding:110px 0}
.section.cream{background:var(--cream)}
.center{text-align:center}
.head{max-width:720px;margin:0 auto 56px}
.title{font-size:clamp(30px,3.6vw,46px)}
.head p{margin-top:14px}

/* About intro */
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.about-media{position:relative}
.about-media .ph{border-radius:300px 300px 30px 30px;overflow:hidden;aspect-ratio:1/1.05;background:var(--cream)}
.about-media .ph img{width:100%;height:100%;object-fit:cover}
.badge{position:absolute;left:-16px;bottom:40px;background:var(--brand);color:#fff;border-radius:22px;padding:26px 30px;text-align:center;box-shadow:0 30px 50px -20px rgba(14,124,90,.7)}
.badge b{font-family:Manrope;font-size:50px;line-height:1;display:block}
.badge span{font-size:15px;display:block;max-width:170px}
.about-grid p+p{margin-top:14px}
.checks{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:28px 0 32px}
.checks li{display:flex;align-items:center;gap:10px;color:var(--heading);font-weight:500}
.checks li::before{content:"✓";flex:none;width:22px;height:22px;border-radius:50%;background:var(--brand);color:#fff;font-size:12px;display:grid;place-items:center}

/* Numbers band */
.numbers{background:var(--dark);position:relative;overflow:hidden;color:#A9B2C1}
.numbers::before{content:"";position:absolute;inset:0;background:radial-gradient(700px 400px at 85% 10%,rgba(14,124,90,.45),transparent 70%),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:auto,70px 70px,70px 70px}
.numbers .container{position:relative}
.numbers h2{color:#fff}
.num-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}
.num{text-align:center}
.num h3{font-size:clamp(46px,5vw,68px);color:#fff;line-height:1;font-variant-numeric:tabular-nums}
.num h3 sup{font-size:.36em;color:var(--brand);vertical-align:top}
.num h4{color:#fff;font-size:18px;margin-top:12px}

/* Card grids */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:32px;transition:.3s}
.card:hover{border-color:var(--brand);transform:translateY(-4px);box-shadow:0 26px 50px -30px rgba(14,124,90,.5)}
.card .ic{width:60px;height:60px;border-radius:16px;background:var(--brand-soft);color:var(--brand);display:grid;place-items:center;margin-bottom:22px}
.card .ic svg{width:28px;height:28px}
.card h4{font-size:21px;margin-bottom:10px}
.card p{font-size:15px}
.market{padding:28px}
.market h4{display:flex;align-items:center;gap:10px}
.card-grid.four{grid-template-columns:repeat(4,1fr)}
.market.expand{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background:var(--dark);border-color:var(--dark)}
.market.expand h4{color:#fff}
.market.expand p{color:#A9B2C1}
.market h4 span{font-family:"DM Sans";font-size:12px;font-weight:700;letter-spacing:.1em;color:var(--brand);background:var(--brand-soft);padding:3px 9px;border-radius:20px}

/* Testimonials */
.testi-grid{display:grid;grid-template-columns:.8fr 1.1fr 1.1fr;gap:24px}
.rate-card{background:radial-gradient(400px 300px at 50% 110%,rgba(14,124,90,.5),transparent 70%),var(--dark);border-radius:var(--radius);padding:40px 28px;text-align:center;color:#fff;display:flex;flex-direction:column;justify-content:center}
.rate-card h3{font-size:64px;color:#fff;line-height:1}
.rate-card h4{color:#fff;font-size:20px;margin-top:14px}
.stars{color:var(--brand);letter-spacing:3px}
.quote{background:#fff;border-radius:var(--radius);padding:34px}
.quote p{color:#344054;margin:14px 0 24px}
.who{display:flex;align-items:center;gap:14px}
.who i{width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--brand-2));color:#fff;font-style:normal;font-weight:700;display:grid;place-items:center}
.who h5{font-size:18px}
.who small{font-size:13.5px}

/* Contact strip (above footer) */
.strip{background:var(--dark);border-bottom:1px solid rgba(255,255,255,.1)}
.strip-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.strip-item{display:flex;gap:14px;align-items:center;padding:34px 22px;border-right:1px solid rgba(255,255,255,.1);color:#A9B2C1;font-size:14.5px;min-width:0}
.strip-item:last-child{border-right:0}
.strip-item b{flex:none;width:50px;height:50px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center}
.strip-item h5{color:#fff;font-size:17px;margin-bottom:2px}
.strip-item span{overflow-wrap:anywhere}
.strip-item .socials a{padding:4px 10px;font-size:12.5px}

/* Blog */
.blog-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start}
.posts{display:grid;gap:30px}
.post{position:relative;display:flex;align-items:flex-end;min-height:440px;border-radius:26px;overflow:hidden;background:#1D2939}
.post img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.post:hover img{transform:scale(1.04)}
.post::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 25%,rgba(16,24,40,.92))}
.post .body{position:relative;z-index:1;padding:36px;color:#C9D1DC}
.meta{display:flex;gap:12px;align-items:center;font-size:13px;letter-spacing:.06em;text-transform:uppercase}
.meta .cat{background:var(--brand);color:#fff;padding:4px 12px;border-radius:30px}
.post h2{color:#fff;font-size:clamp(24px,2.6vw,32px);margin:14px 0 10px}
.post p{max-width:62ch}
.post .more{display:inline-flex;margin-top:16px;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--brand-2)}
.blog-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.blog-filter button{border:1px solid var(--line);background:#fff;border-radius:30px;padding:9px 18px;font:inherit;font-size:14px;font-weight:600;color:var(--heading);cursor:pointer;transition:.2s}
.blog-filter button:hover{border-color:var(--brand);color:var(--brand)}
.blog-filter button.on{background:var(--brand);border-color:var(--brand);color:#fff}
.posts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.bcard{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;transition:.3s}
.bcard:hover{border-color:var(--brand);transform:translateY(-4px);box-shadow:0 24px 44px -30px rgba(14,124,90,.6)}
.bcard img{width:100%;aspect-ratio:16/9;object-fit:cover}
.bcard-body{padding:22px 24px 26px;display:flex;flex-direction:column;gap:10px;flex:1}
.bcard-cat{font-size:12.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}
.bcard h3{font-size:20px;line-height:1.3}
.bcard p{font-size:15px}
.bcard-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13.5px;color:var(--text)}
.bcard-more{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--heading)}
@media (max-width:640px){.posts-grid{grid-template-columns:minmax(0,1fr)}}
.coming{border-radius:26px;overflow:hidden;background:var(--cream);border:1px solid var(--line)}
.coming img{width:100%;aspect-ratio:16/7;object-fit:cover}
.coming .body{padding:40px}
.coming h2{font-size:clamp(26px,3vw,36px);margin-bottom:12px}
.coming p{max-width:62ch;margin-bottom:22px}
.coming .topics a{background:#fff}
.blog-side{display:grid;gap:26px;position:sticky;top:120px}
.topics{display:flex;flex-wrap:wrap;gap:8px}
.topics a{background:var(--cream);border-radius:30px;padding:7px 14px;font-size:14px;color:var(--heading);transition:.2s}
.topics a:hover{background:var(--brand);color:#fff}
.side-card p{font-size:15px}
.side-card .sub2{display:grid;gap:10px;margin-top:16px}
.side-card input{border:1px solid var(--line);border-radius:30px;padding:13px 18px;font:inherit;outline-color:var(--brand)}

/* FAQ page */
.faq-grid{display:grid;grid-template-columns:380px minmax(0,1fr);gap:50px;align-items:start}
.faq-side{position:sticky;top:120px;background:linear-gradient(rgba(14,124,90,.12),rgba(14,124,90,.02));border-radius:26px;padding:32px}
.faq-side .top{background:#fff;border-radius:18px;padding:26px;margin-bottom:24px}
.faq-side .top h3{font-size:28px;margin-bottom:8px}
.faq-side h4{font-size:21px;margin-bottom:14px}
.help{display:flex;align-items:center;gap:14px;background:#fff;border-radius:16px;padding:16px 18px;margin-bottom:12px;font-family:Manrope;font-weight:600;color:var(--heading);transition:.25s}
.help:hover{color:var(--brand)}
.help{overflow-wrap:anywhere;min-width:0}
.help b{flex:none;width:38px;height:38px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center}
.faq-group+.faq-group{margin-top:44px}
.faq-group h2{font-size:26px;margin-bottom:6px;display:flex;align-items:center;gap:12px}
.faq-group h2 a{font-family:"DM Sans";font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--brand)}
.faq-jump{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}
.faq-jump a{border:1px solid var(--line);border-radius:30px;padding:8px 16px;font-size:14px;color:var(--heading);transition:.2s}
.faq-jump a:hover{border-color:var(--brand);color:var(--brand)}

/* Countries We Serve */
.countries-intro .head{margin-bottom:34px}
.country-jump{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:40px}
.country-jump a{display:flex;align-items:center;gap:14px;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#fff;font-family:Manrope;font-weight:600;font-size:17px;color:var(--heading);transition:.25s}
.country-jump a:hover{border-color:var(--brand);transform:translateY(-3px)}
.country-jump b,.ccode{flex:none;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--brand);color:#fff;font-family:Manrope;font-size:15px;letter-spacing:.04em}
.matrix-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:18px}
.matrix{width:100%;border-collapse:collapse;min-width:560px;font-size:15px}
.matrix th,.matrix td{padding:13px 18px;border-bottom:1px solid var(--line);text-align:center}
.matrix th{background:var(--dark);color:#fff;font-family:Manrope;font-weight:600}
.matrix th:first-child,.matrix td:first-child{text-align:left}
.matrix td:not(:first-child){color:var(--brand);font-weight:700;font-size:17px}
.matrix tr:last-child td{border-bottom:0}
.matrix td a{color:var(--heading);font-weight:600}
.matrix td a:hover{color:var(--brand)}
.country{padding:90px 0;scroll-margin-top:90px}
.country:nth-of-type(odd){background:var(--cream)}
.country-head{display:flex;gap:20px;align-items:center;margin-bottom:36px}
.ccode{width:64px;height:64px;font-size:19px}
.country-head p{margin-top:6px}
.country-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:40px;align-items:start}
.tailor{background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px}
.tailor h3{font-size:21px;margin-bottom:16px}
.tailor .checks{grid-template-columns:1fr;margin:0 0 24px}
.tailor .checks li{align-items:flex-start;font-weight:500;font-size:15px}
.tailor .btn{white-space:normal}
.csvc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.csvc{display:flex;gap:16px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;transition:.25s}
.csvc:hover{border-color:var(--brand);transform:translateY(-3px);box-shadow:0 20px 36px -28px rgba(14,124,90,.6)}
.csvc b{flex:none;font-family:Manrope;font-size:14px;color:var(--brand);margin-top:2px}
.csvc strong{display:block;font-family:Manrope;font-weight:600;color:var(--heading);font-size:16.5px;line-height:1.3}
.csvc small{display:block;font-size:14px;margin-top:4px;line-height:1.5}
@media (max-width:980px){
  .country-jump{grid-template-columns:1fr 1fr}
  .country-grid{grid-template-columns:minmax(0,1fr)}
  .country{padding:70px 0}
}
@media (max-width:640px){
  .csvc-grid,.country-jump{grid-template-columns:minmax(0,1fr)}
  .country-head{align-items:flex-start}
}

/* Contact */
.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:70px}
.info{text-align:center;padding:40px 28px;border-radius:var(--radius);background:var(--cream);transition:.3s}
.info:hover{background:var(--brand);color:#fff}
.info:hover h4{color:#fff}
.info b{width:66px;height:66px;margin:0 auto 20px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;transition:.3s}
.info:hover b{background:#fff;color:var(--brand)}
.info h4{font-size:21px;margin-bottom:8px}
.info p{overflow-wrap:anywhere}
.contact-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:stretch}
.form-card{background:#fff;border:1px solid var(--line);border-radius:26px;padding:44px}
.form-card h3{font-size:32px;margin-bottom:8px}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}
.form .full{grid-column:1/-1}
.form label{display:grid;gap:6px;font-size:14px;font-weight:600;color:var(--heading)}
.form input,.form select,.form textarea{width:100%;border:1px solid var(--line);background:var(--cream);border-radius:14px;padding:14px 16px;font:inherit;font-weight:400;color:var(--heading);outline-color:var(--brand)}
.form textarea{min-height:140px;resize:vertical}
.form .btn{justify-self:start}
.form-note{font-size:13.5px;margin-top:4px}
.form-status{grid-column:1/-1;background:var(--brand-soft);color:var(--heading);border-radius:12px;padding:14px 16px;font-size:14.5px}
.map-card{position:relative;border-radius:26px;overflow:hidden;min-height:420px;background:var(--dark)}
.map-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.map-card .over{position:absolute;left:24px;right:24px;bottom:24px;background:#fff;border-radius:18px;padding:24px}
.map-card .over h4{font-size:20px;margin-bottom:12px}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pills span{background:var(--cream);border-radius:30px;padding:6px 12px;font-size:13.5px;color:var(--heading)}

@media (max-width:1100px){
  .strip-grid{grid-template-columns:1fr 1fr}
  .strip-item:nth-child(2){border-right:0}
  .testi-grid{grid-template-columns:1fr 1fr}
  .rate-card{grid-column:1/-1}
}
@media (max-width:980px){
  .about-grid,.blog-grid,.faq-grid,.contact-grid{grid-template-columns:minmax(0,1fr)}
  .blog-side,.faq-side{position:static}
  .card-grid,.card-grid.four,.info-grid{grid-template-columns:1fr 1fr}
  .num-grid{grid-template-columns:1fr 1fr;row-gap:44px}
  .section{padding:80px 0}
}
@media (max-width:640px){
  .card-grid,.card-grid.four,.info-grid,.testi-grid,.strip-grid,.checks,.form{grid-template-columns:1fr}
  .strip-item{border-right:0;border-bottom:1px solid rgba(255,255,255,.1)}
  .badge{left:10px;bottom:10px;padding:18px 22px}
  .badge b{font-size:38px}
  .form-card{padding:28px 22px}
  .post{min-height:380px}
  .post .body,.coming .body{padding:26px}
}
