:root{
    --blue:#1b5faa;        /* headline blue from PDF */
    --blue-2:#2e86d8;      /* lighter brand blue */
    --blue-3:#4fb3ec;      /* cyan highlight */
    --navy:#12386f;        /* "Key Features" bars */
    --green:#22a651;       /* logo leaf / phone numbers */
    --green-2:#7dc242;
    --teal:#1a7f9c;        /* small dots */
    --ink:#1f2a3a;
    --ink-soft:#4a5668;
    --line:#d5e3f2;
    --sky:#eaf4fc;
    --white:#ffffff;
    --maxw:1180px;
  }
  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    margin:0; background:var(--white); color:var(--ink);
    font-family:'Montserrat',system-ui,-apple-system,'Segoe UI',sans-serif; font-size:15.5px; line-height:1.65;
  }
  h1,h2,h3,h4,h5{margin:0; font-family:'Montserrat';}
  p{margin:0;} a{color:inherit;text-decoration:none;} img{max-width:100%;display:block;}
  .wrap{max-width:var(--maxw); margin:0 auto; padding:0 32px;}
  section{padding:80px 0; position:relative; overflow:hidden;}
  @media (max-width:640px){ section{padding:56px 0;} .wrap{padding:0 18px;} }

  /* ---- PDF-style backdrops ---- */
  .bg-hex{
    background-color:#fff;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='156' viewBox='0 0 180 156'%3E%3Cg fill='none' stroke='%23bcd9f2' stroke-width='1.4'%3E%3Cpath d='M45 0 L90 26 L90 78 L45 104 L0 78 L0 26 Z'/%3E%3Cpath d='M135 0 L180 26 L180 78 L135 104 L90 78 L90 26 Z'/%3E%3Cpath d='M45 104 L90 130 L90 182 L45 208 L0 182 L0 130 Z'/%3E%3Cpath d='M135 104 L180 130 L180 182 L135 208 L90 182 L90 130 Z'/%3E%3C/g%3E%3Cg fill='%23bcd9f2'%3E%3Ccircle cx='90' cy='26' r='2.6'/%3E%3Ccircle cx='0' cy='78' r='2.6'/%3E%3Ccircle cx='135' cy='104' r='2.6'/%3E%3C/g%3E%3C/svg%3E");
    background-size:180px 156px;
  }
  .bg-net{
    background-color:#fff;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260' viewBox='0 0 260 260'%3E%3Cg stroke='%23cfe1f3' stroke-width='1' fill='none'%3E%3Cpath d='M20 40 L120 90 L200 30 M120 90 L90 200 L230 160 M200 30 L230 160 M20 40 L90 200 M120 90 L10 230'/%3E%3C/g%3E%3Cg fill='%2317809c'%3E%3Ccircle cx='20' cy='40' r='4'/%3E%3Ccircle cx='120' cy='90' r='5'/%3E%3Ccircle cx='200' cy='30' r='3'/%3E%3Ccircle cx='90' cy='200' r='4'/%3E%3Ccircle cx='230' cy='160' r='5'/%3E%3C/g%3E%3Cg fill='%23bcd9f2'%3E%3Ccircle cx='10' cy='230' r='9'/%3E%3Ccircle cx='250' cy='90' r='6'/%3E%3C/g%3E%3C/svg%3E");
    background-size:260px 260px;
  }
  .bg-fade::before{
    content:""; position:absolute; inset:0; background:linear-gradient(180deg,rgba(255,255,255,.55),rgba(255,255,255,.9) 60%);
    pointer-events:none;
  }
  .blob{
    position:absolute; width:520px; height:520px; border-radius:38% 62% 60% 40% / 45% 40% 60% 55%;
    background:linear-gradient(135deg,#4fb3ec 0%, #1b74c9 55%, #0f4c96 100%);
    opacity:.95; pointer-events:none; z-index:0;
  }
  .tri{
    position:absolute; width:210px; height:210px; pointer-events:none; z-index:0;
    background:linear-gradient(160deg,#5cc0f2,#1d6fc2); clip-path:polygon(0 0,100% 50%,0 100%); border-radius:20px; opacity:.55;
  }

  /* ---- headings ---- */
  .h-title{
    text-align:center; color:var(--blue); font-weight:800; font-size:clamp(28px,3.4vw,40px); letter-spacing:-.01em;
    text-shadow:0 2px 0 rgba(255,255,255,.9), 0 3px 8px rgba(27,95,170,.15);
  }
  .h-sub{
    text-align:center; color:var(--blue-2); font-weight:600; font-size:15px; margin-top:8px;
    display:flex; align-items:center; justify-content:center; gap:14px;
  }
  .h-sub::before,.h-sub::after{content:""; height:2px; width:70px; background:linear-gradient(90deg,transparent,var(--blue-2));}
  .h-sub::after{background:linear-gradient(90deg,var(--blue-2),transparent);}
  .h-lead{text-align:center; color:var(--ink); max-width:700px; margin:10px auto 0; font-size:15.5px;}

  /* ---- pills (contact) ---- */
  .pill{
    display:inline-flex; align-items:center; gap:10px; background:#fff; border:2px solid var(--blue-2);
    border-radius:100px; padding:7px 18px 7px 8px; font-weight:700; font-size:14.5px; color:var(--green);
    box-shadow:0 4px 12px rgba(27,95,170,.12); white-space:nowrap;
  }
  .pill .ic{
    width:30px;height:30px;border-radius:50%;border:2px solid var(--green);display:flex;align-items:center;justify-content:center;color:var(--green); flex:none;
  }
  .pill .ic svg{width:15px;height:15px;}
  .pill.web{color:var(--ink); font-weight:600; padding:9px 22px; border-color:var(--ink-soft);}
  .contact-row{display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin-top:34px;}

  /* ---- NAV ---- */
  header.nav{
    position:sticky; top:0; z-index:60; background:rgba(255,255,255,.94); backdrop-filter:blur(10px);
    border-bottom:3px solid transparent;
    border-image:linear-gradient(90deg,var(--blue) 0 60%,var(--green) 60% 100%) 1;
  }
  .nav-inner{max-width:var(--maxw); margin:0 auto; padding:12px 32px; display:flex; align-items:center; justify-content:space-between; gap:20px;}
  .brand{display:flex; align-items:center; gap:12px;}
  .logo{
    font-family:'Montserrat'; font-weight:900; font-size:30px; line-height:1; letter-spacing:-.05em; font-style:italic;
    background:linear-gradient(90deg,#2e86d8 0%,#2e86d8 30%,#22a651 30%,#22a651 65%,#1d6fc2 65%);
    -webkit-background-clip:text; background-clip:text; color:transparent;
  }
  .brand-name{line-height:1.05;}
  .brand-name b{display:block; color:var(--blue); font-weight:800; font-size:14px; letter-spacing:.01em;}
  .brand-name i{display:block; color:var(--green); font-style:italic; font-size:9.5px; letter-spacing:.32em; font-weight:600;}
  nav.links{display:flex; gap:26px; font-size:13.5px; font-weight:600; color:var(--blue);}
  nav.links a:hover{color:var(--green);}
  .nav-btn{
    background:linear-gradient(90deg,var(--blue-2),var(--blue)); color:#fff; padding:10px 20px; border-radius:100px;
    font-weight:700; font-size:13.5px; box-shadow:0 6px 16px rgba(27,95,170,.28);
  }
  @media (max-width:880px){ nav.links{display:none;} }

  /* ---- HERO (cover page) ---- */
  .hero{padding:90px 0 0;}
  .hero .blob{left:-260px; top:-160px;}
  .hero .tri{right:-40px; top:120px;}
  .hero-inner{position:relative; z-index:1; text-align:center;}
  .hero-logo{
    font-family:'Montserrat'; font-weight:900; font-style:italic; font-size:clamp(90px,16vw,170px); line-height:.9; letter-spacing:-.07em;
    background:linear-gradient(90deg,#2e86d8 0%,#2e86d8 32%,#22a651 32%,#22a651 64%,#1d6fc2 64%);
    -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 8px 14px rgba(27,95,170,.25));
  }
  .hero-name{color:var(--blue); font-weight:900; font-size:clamp(28px,5vw,54px); letter-spacing:.02em; margin-top:8px;}
  .hero-intl{color:var(--green); font-style:italic; font-weight:600; letter-spacing:.42em; font-size:clamp(13px,2vw,20px);}
  .hero-rule{width:min(560px,80%); height:4px; margin:14px auto 12px; background:linear-gradient(90deg,var(--blue) 0 62%,var(--green) 62% 100%);}
  .hero-promise{letter-spacing:.32em; font-size:12px; font-weight:700; color:var(--ink);}
  .hero-band{
    margin-top:0; padding:34px 0 40px; position:relative;
    background:linear-gradient(180deg,#fff 0%,#eaf4fc 40%,#d9ecf9 100%);
  }
  .hero-band .wrap{display:flex; gap:20px; justify-content:center; flex-wrap:wrap;}
  .hero-band .stat{
    background:#fff; border:2px solid var(--line); border-radius:14px; padding:16px 26px; text-align:center; min-width:180px;
    box-shadow:0 8px 20px rgba(27,95,170,.1);
  }
  .hero-band .stat b{display:block; color:var(--blue); font-weight:800; font-size:28px;}
  .hero-band .stat span{font-size:12.5px; color:var(--ink-soft); font-weight:500;}

  /* ---- PHILOSOPHY ---- */
  .phil .wrap{max-width:860px; text-align:center; position:relative; z-index:1;}
  .phil p.quote{font-size:16px; color:var(--ink); margin-top:20px; line-height:1.9;}

  /* ---- CEO ---- */
  .ceo .tri{left:-60px; top:60px; transform:scaleX(1);}
  .ceo .tri.b{left:auto; right:-60px; top:auto; bottom:40px; transform:scaleX(-1);}
  .ceo-grid{display:grid; grid-template-columns:300px 1fr; gap:56px; align-items:start; position:relative; z-index:1;}
  @media (max-width:820px){ .ceo-grid{grid-template-columns:1fr;} }
  .ceo-photo{
    aspect-ratio:1/1.1; border-radius:200px 200px 24px 24px; background:linear-gradient(180deg,#eaf4fc,#c6e2f5);
    display:flex; align-items:flex-end; justify-content:center; border:4px solid #fff; box-shadow:0 12px 30px rgba(27,95,170,.18);
    position:relative; overflow:hidden;
  }
  .ceo-photo svg{width:70%; color:#7fb7e2;}
  .ceo-name{color:var(--blue); font-weight:800; font-size:26px; letter-spacing:.06em; text-align:center; margin-top:18px;}
  .ceo-role{text-align:center; color:var(--ink-soft); font-size:14px;}
  .ceo-text p{margin-bottom:16px; font-size:15px; line-height:1.8;}
  .ceo-text .sign{color:var(--blue); font-weight:700;}

  /* ---- SALES & SERVICES (gradient pill list) ---- */
  .services .wrap{position:relative; z-index:1;}
  .pill-list{list-style:none; margin:34px auto 0; padding:0; max-width:820px; display:flex; flex-direction:column; gap:11px;}
  .pill-list li{
    color:#fff; font-weight:700; font-size:15.5px; padding:13px 26px; border-radius:100px;
    background:linear-gradient(90deg,#0f4c96 0%,#2e86d8 60%,#5cc0f2 100%);
    box-shadow:0 6px 14px rgba(27,95,170,.28), inset 0 2px 0 rgba(255,255,255,.35);
  }
  .pill-list li span{opacity:.85; margin-right:10px;}

  /* ---- SOLUTIONS (circle icons) ---- */
  .sol-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:38px 24px; position:relative; z-index:1; margin-top:46px;}
  @media (max-width:900px){ .sol-grid{grid-template-columns:repeat(3,1fr);} }
  @media (max-width:560px){ .sol-grid{grid-template-columns:repeat(2,1fr); gap:28px 14px;} }
  .sol{text-align:center;}
  .sol .ring{
    width:140px; height:140px; border-radius:50%; margin:0 auto 14px; border:2px solid var(--blue-2); background:#fff;
    display:flex; align-items:center; justify-content:center; color:var(--blue); box-shadow:0 8px 22px rgba(27,95,170,.12);
    position:relative;
  }
  .sol .ring::after{content:""; position:absolute; inset:-9px; border-radius:50%; border:1px solid #cfe1f3;}
  .sol .ring svg{width:64px; height:64px;}
  .sol h4{font-size:14px; font-weight:700; color:var(--ink); line-height:1.35;}
  @media (max-width:560px){ .sol .ring{width:110px;height:110px;} .sol .ring svg{width:50px;height:50px;} }

  /* ---- PRODUCT PAGES (Key Features layout) ---- */
  .product{padding:80px 0;}
  .product .wrap{position:relative; z-index:1;}
  .product .visual{
    margin:34px auto 0; max-width:640px; height:250px; border-radius:24px;
    background:radial-gradient(circle at 50% 40%,#fff 0%,#e5f1fb 55%,#cfe4f6 100%); border:1px solid var(--line);
    display:flex; align-items:center; justify-content:center; color:var(--blue); box-shadow:0 14px 34px rgba(27,95,170,.14);
  }
  .product .visual svg{width:150px; height:150px;}
  .kf-bar{
    display:inline-block; background:var(--navy); color:#fff; font-weight:800; font-size:24px; padding:12px 44px 12px 30px;
    clip-path:polygon(0 0,100% 0,92% 50%,100% 100%,0 100%); margin:44px 0 30px; margin-left:-32px; padding-left:62px;
  }
  .kf-bar.right{margin-left:0; margin-right:-32px; padding-right:62px; padding-left:44px; clip-path:polygon(8% 0,100% 0,100% 100%,8% 100%,0 50%);}
  .kf-grid{display:grid; grid-template-columns:1fr 1fr; gap:40px 60px; align-items:start;}
  @media (max-width:820px){ .kf-grid{grid-template-columns:1fr;} }
  .kf{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:20px;}
  .kf li{display:flex; gap:16px; align-items:flex-start;}
  .kf .ic{
    flex:none; width:48px; height:48px; border-radius:50%; background:linear-gradient(135deg,#2e86d8,#0f4c96); color:#fff;
    display:flex; align-items:center; justify-content:center; box-shadow:0 5px 12px rgba(27,95,170,.3);
  }
  .kf .ic svg{width:22px;height:22px;}
  .kf b{display:block; color:var(--blue); font-weight:700; font-size:15px;}
  .kf span{display:block; font-style:italic; font-size:13.5px; color:var(--ink-soft); border-bottom:1.5px solid var(--navy); padding-bottom:6px; margin-top:2px;}
  .benefits-bar{
    display:inline-block; background:var(--navy); color:#fff; font-weight:800; font-size:18px; padding:8px 40px;
    clip-path:polygon(8% 0,92% 0,100% 50%,92% 100%,8% 100%,0 50%); margin-bottom:18px;
  }
  .benefits{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px;}
  .benefits li{display:flex; align-items:center; gap:12px; font-weight:700; font-size:14.5px;}
  .benefits .chk{
    width:24px;height:24px;border-radius:50%;background:var(--blue-2);color:#fff;display:flex;align-items:center;justify-content:center; flex:none;
  }
  .benefits .chk svg{width:14px;height:14px;}
  .benefits.green .chk{background:var(--green);}
  .product p.body{font-size:15px; line-height:1.8;}
  .product .tagline{color:var(--blue); font-style:italic; font-weight:700; text-align:center; margin-top:20px; font-size:15px;}

  .big-title{color:var(--blue); font-weight:800; font-size:clamp(30px,4vw,44px); line-height:1.1;}
  .big-title small{display:block; color:var(--ink); font-size:.62em; font-weight:800; margin-top:4px;}
  .big-title span{color:var(--blue-2);}
  .two-col{display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:start; position:relative; z-index:1;}
  @media (max-width:820px){ .two-col{grid-template-columns:1fr;} }
  .under{width:280px; height:3px; background:linear-gradient(90deg,var(--blue),transparent); margin:10px 0 18px; position:relative;}
  .under::after{content:""; position:absolute; left:-1px; top:-5px; width:13px; height:13px; border-radius:50%; background:var(--blue);}

  .icon-row{display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:26px;}
  .icon-row div{text-align:center; font-size:12px; font-weight:700; color:var(--ink);}
  .icon-row .ring{
    width:78px;height:78px;border-radius:50%;border:2px solid var(--blue-2);margin:0 auto 8px;display:flex;align-items:center;justify-content:center;color:var(--blue);
  }
  .icon-row .ring svg{width:36px;height:36px;}

  /* solar accent */
  .solar .yellow{background:linear-gradient(90deg,#f7b733,#f9d64d); color:#111; font-weight:800; display:inline-block; padding:8px 20px; margin-top:8px; font-size:18px; clip-path:polygon(0 0,100% 0,96% 100%,0 100%);}
  .solar .big-title{color:#0f7a31;}
  .solar .big-title .sys{color:var(--navy); display:block;}

  /* radios */
  .radio-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:22px 30px; margin-top:34px; position:relative; z-index:1;}
  @media (max-width:820px){ .radio-grid{grid-template-columns:repeat(2,1fr);} }
  @media (max-width:520px){ .radio-grid{grid-template-columns:1fr;} }
  .radio{display:flex; gap:14px; align-items:flex-start;}
  .radio .dev{flex:none; width:38px; height:82px; border-radius:8px; background:linear-gradient(180deg,#3a3f47,#15181d); position:relative; box-shadow:0 4px 10px rgba(0,0,0,.25);}
  .radio .dev::before{content:""; position:absolute; top:-14px; left:11px; width:5px; height:16px; background:#2b2f36; border-radius:3px;}
  .radio .dev::after{content:""; position:absolute; top:18px; left:8px; right:8px; height:18px; background:#1d6fc2; border-radius:3px; opacity:.9;}
  .radio h5{color:var(--blue); font-weight:800; font-size:14.5px; margin-bottom:4px;}
  .radio ul{list-style:none; margin:0; padding:0; font-size:12.5px; line-height:1.6;}
  .radio ul li::before{content:"• "; color:var(--ink-soft);}
  .radio ul b{font-weight:700;}
  .btrc-note{max-width:900px; margin:22px auto 0; text-align:center; font-size:14.5px; line-height:1.8;}
  .btrc-note strong{color:var(--blue);} .btrc-note em{color:#d62828; font-style:normal; font-weight:700;}


  .nav .brand img{height:44px;width:auto;}
  .hero-logo-img{width:min(460px,70%);margin:0 auto;display:block;filter:drop-shadow(0 8px 14px rgba(27,95,170,.25));}
  .hero-photo{position:relative;height:clamp(240px,40vw,460px);margin-top:36px;overflow:hidden;}
  .hero-photo img{width:100%;height:100%;object-fit:cover;}
  .hero-photo::after{content:"";position:absolute;inset:0;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='156' viewBox='0 0 180 156'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='5'%3E%3Cpath d='M45 0 L90 26 L90 78 L45 104 L0 78 L0 26 Z'/%3E%3Cpath d='M135 0 L180 26 L180 78 L135 104 L90 78 L90 26 Z'/%3E%3Cpath d='M45 104 L90 130 L90 182 L45 208 L0 182 L0 130 Z'/%3E%3Cpath d='M135 104 L180 130 L180 182 L135 208 L90 182 L90 130 Z'/%3E%3C/g%3E%3C/svg%3E");
    background-size:180px 156px;}
  .hero-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#fff 0%,rgba(255,255,255,0) 22%);z-index:1;}
  .ceo-photo img{width:100%;height:100%;object-fit:cover;object-position:top;}
  .visual img{width:100%;height:100%;object-fit:contain;}
  .visual.photo{padding:0;overflow:hidden;background:none;border:none;box-shadow:0 14px 34px rgba(27,95,170,.18);}
  .visual.photo img{object-fit:cover;}
  .sol .ring img{width:78%;height:78%;object-fit:contain;}
  .radio .pic{flex:none;width:80px;height:110px;display:flex;align-items:center;justify-content:center;}
  .radio .pic img{max-width:100%;max-height:100%;object-fit:contain;}
  .radio-banner{margin:0 -32px 36px;position:relative;z-index:1;}
  .radio-banner img{width:100%;height:clamp(180px,32vw,380px);object-fit:cover;object-position:center 30%;}
  .skyline{background:none;}
  .skyline img{width:100%;height:100%;object-fit:cover;object-position:bottom;}
  .skyline::before{display:none;}
  .hex-photo{position:relative;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(27,95,170,.18);}
  .hex-photo img{width:100%;display:block;}
  .hex-photo::after{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='104' viewBox='0 0 120 104'%3E%3Cg fill='none' stroke='%23ffffff' stroke-width='4'%3E%3Cpath d='M30 0 L60 17 L60 52 L30 69 L0 52 L0 17 Z'/%3E%3Cpath d='M90 0 L120 17 L120 52 L90 69 L60 52 L60 17 Z'/%3E%3Cpath d='M30 69 L60 86 L60 121 L30 138 L0 121 L0 86 Z'/%3E%3Cpath d='M90 69 L120 86 L120 121 L90 138 L60 121 L60 86 Z'/%3E%3C/g%3E%3C/svg%3E");background-size:120px 104px;}

  .voicely .vdevice{text-align:center;}
  .voicely .vdevice img{width:min(300px,70%);height:auto;margin:0 auto;display:block;filter:drop-shadow(0 22px 34px rgba(15,39,66,.35));}
  .voicely .vdevice .cap{margin-top:16px;font-size:13px;font-weight:600;color:#0F2742;background:#fff4e3;border:1.5px solid #f3d6a6;border-radius:100px;padding:8px 18px;display:inline-block;}
  /* voicely */
  .voicely .big-title{color:#0F2742;}
  .voicely .big-title .v{color:#E8900A;}
  .voicely .orange-bar{background:linear-gradient(90deg,#E8900A,#f5b445);color:#fff;font-weight:800;display:inline-block;padding:8px 22px;margin-top:8px;font-size:16px;clip-path:polygon(0 0,100% 0,96% 100%,0 100%);}
  .voicely .kf .ic{background:linear-gradient(135deg,#f5b445,#E8900A);box-shadow:0 5px 12px rgba(232,144,10,.35);}
  .voicely .kf b{color:#0F2742;}
  .voicely .kf span{border-color:#E8900A;}
  .voicely .phone{
    margin:0 auto; width:250px; height:420px; border-radius:34px; background:linear-gradient(180deg,#1b2f4a,#0F2742);
    border:6px solid #223a5a; box-shadow:0 20px 40px rgba(15,39,66,.35); position:relative; overflow:hidden; color:#fff;
    display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px;
  }
  .voicely .phone::before{content:""; position:absolute; left:-14px; top:120px; width:10px; height:70px; background:#E8900A; border-radius:4px;}
  .voicely .phone .ptt{
    width:150px;height:150px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffbe55,#E8900A 60%,#b96f05);
    box-shadow:0 0 0 12px rgba(232,144,10,.22),0 0 0 26px rgba(232,144,10,.1),0 10px 24px rgba(0,0,0,.4);
    display:flex;align-items:center;justify-content:center;font-weight:900;font-size:15px;letter-spacing:.2em;
  }
  .voicely .phone .ch{font-size:12px;color:#ffd08a;font-weight:700;}
  .voicely .phone .name{font-weight:900;font-size:24px;letter-spacing:.04em;color:#fff;}
  .voicely .phone .name i{color:#E8900A;font-style:normal;}
  .voicely .use{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px;}
  @media (max-width:520px){ .voicely .use{grid-template-columns:repeat(2,1fr);} }
  .voicely .use div{background:#fff;border:2px solid #f3d6a6;border-radius:12px;padding:12px 10px;text-align:center;font-size:12.5px;font-weight:700;color:#0F2742;}
  .voicely .use div b{display:block;color:#E8900A;font-size:11px;letter-spacing:.08em;margin-bottom:3px;}
  .voicely .benefits .chk{background:#E8900A;}

  /* gps services icons */
  .gps-services{display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:26px;}
  @media (max-width:640px){ .gps-services{grid-template-columns:repeat(2,1fr);} }
  .gps-services div{text-align:center; font-weight:700; font-size:13px; color:var(--navy); line-height:1.3;}
  .gps-services .sq{
    width:64px;height:64px;border-radius:14px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center;color:#fff;
    box-shadow:0 6px 14px rgba(0,0,0,.18);
  }
  .gps-services .sq svg{width:32px;height:32px;}
  .gps-bar{
    margin-top:34px; background:linear-gradient(90deg,#0f4c96,#12386f); color:#fff; border-radius:100px; padding:18px 30px;
    display:grid; grid-template-columns:repeat(4,1fr); gap:10px; font-style:italic; font-weight:800; font-size:13px; text-align:center;
  }
  .gps-bar div{border-left:1px solid rgba(255,255,255,.3);}
  .gps-bar div:first-child{border-left:none;}
  @media (max-width:640px){ .gps-bar{grid-template-columns:repeat(2,1fr); border-radius:20px;} .gps-bar div{border:none;} }

  /* expertise */
  .exp-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:34px 22px; margin-top:40px; position:relative; z-index:1;}
  @media (max-width:820px){ .exp-grid{grid-template-columns:repeat(2,1fr);} }
  .exp{text-align:center; font-weight:700; font-size:13.5px;}
  .exp .ring{
    width:150px;height:150px;border-radius:50%;border:2px solid var(--blue-2);margin:0 auto 12px;display:flex;align-items:center;justify-content:center;color:var(--blue-2);
    background:#fff; box-shadow:0 8px 22px rgba(27,95,170,.12);
  }
  .exp .ring svg{width:70px;height:70px;}
  .exp-intro{max-width:880px; margin:16px auto 0; font-size:14.5px; line-height:1.8;}
  .exp-intro strong{color:var(--blue); font-weight:800;}

  /* world */
  .world{padding-bottom:0;}
  .world-map{position:relative; z-index:1; margin:30px auto 0; max-width:980px;}
  .world-map svg{width:100%; height:auto;}
  .skyline{height:150px; background:linear-gradient(180deg,#c6e2f5 0%,#8fc3e6 60%,#5c9ecf 100%); position:relative; margin-top:-30px;}
  .skyline::before{
    content:""; position:absolute; inset:0;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='150' viewBox='0 0 300 150'%3E%3Cg fill='%233872a8' opacity='.55'%3E%3Crect x='10' y='60' width='30' height='90'/%3E%3Crect x='50' y='30' width='24' height='120'/%3E%3Crect x='84' y='80' width='40' height='70'/%3E%3Crect x='134' y='20' width='22' height='130'/%3E%3Crect x='166' y='55' width='34' height='95'/%3E%3Crect x='210' y='40' width='20' height='110'/%3E%3Crect x='240' y='70' width='46' height='80'/%3E%3C/g%3E%3C/svg%3E");
    background-size:300px 150px; background-repeat:repeat-x; background-position:bottom;
  }

  /* contact */
  .contact .wrap{text-align:center; position:relative; z-index:1;}
  .contact h2{font-weight:900; font-size:clamp(34px,5vw,54px); color:#111; letter-spacing:.01em;}
  .contact-big{margin-top:26px; font-weight:700; font-size:clamp(17px,2.4vw,26px); line-height:1.75; color:var(--ink);}
  .contact-big b{color:var(--ink);}

  /* footer */
  footer{position:relative; padding:0 0 26px; background:#fff;}
  .foot-ribbon{height:12px; background:linear-gradient(90deg,var(--green) 0 45%,var(--blue) 45% 100%); clip-path:polygon(0 0,100% 0,100% 100%,3% 100%,0 60%);}
  .foot-inner{max-width:var(--maxw); margin:18px auto 0; padding:0 32px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:12.5px; color:var(--ink-soft);}
  .foot-inner b{color:var(--green);}

  @media (prefers-reduced-motion: reduce){ html{scroll-behavior:auto;} }
  nav.links a.active{color:var(--green);}
