
:root{
    --navy:#020c1c;
    --navy2:#06172f;
    --panel:#081b36;
    --panel2:#0b2344;
    --blue:#3d78ff;
    --blue2:#6da0ff;
    --ice:#d8e7ff;
    --white:#f5f7fb;
    --muted:#aebbd0;
    --line:rgba(156,183,228,.34);
    --line-strong:rgba(164,190,232,.58);
    --shadow:0 22px 60px rgba(0,0,0,.34);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;
    background:
      radial-gradient(circle at 77% 9%, rgba(28,79,159,.20), transparent 26%),
      radial-gradient(circle at 5% 57%, rgba(29,72,140,.16), transparent 25%),
      linear-gradient(180deg,#020b19 0%,#031126 45%,#020a16 100%);
    color:var(--white);
    font-family:Arial,Helvetica,sans-serif;
    line-height:1.5;
}
body:before{
    content:"";
    position:fixed;
    inset:0;
    pointer-events:none;
    background-image:linear-gradient(rgba(255,255,255,.012) 1px,transparent 1px);
    background-size:100% 4px;
    opacity:.35;
}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
.shell{width:min(1180px,calc(100% - 72px));margin:0 auto}
.site-header{
    position:relative;
    z-index:20;
    padding:22px 0 9px;
    background:linear-gradient(180deg,rgba(1,8,20,.96),rgba(1,8,20,.72),transparent);
}
.nav-shell{display:grid;grid-template-columns:260px 1fr auto;align-items:center;gap:26px}
.brand img{width:255px;height:auto}
.site-nav{display:flex;align-items:center;justify-content:center;gap:35px}
.site-nav a{
    position:relative;
    font-size:12px;
    letter-spacing:.035em;
    color:#d6d8df;
    padding:18px 0;
}
.site-nav a:after{
    content:"";
    position:absolute;
    left:50%;right:50%;bottom:4px;height:2px;
    background:linear-gradient(90deg,transparent,var(--blue2),transparent);
    box-shadow:0 0 10px rgba(85,135,255,.9);
    transition:.2s ease;
}
.site-nav a:hover:after,.site-nav a.active:after{left:0;right:0}
.rfq-btn,.primary-btn,.secondary-btn,.inquiry-btn{
    border:1px solid rgba(95,137,255,.8);
    border-radius:6px;
    background:linear-gradient(180deg,rgba(14,40,83,.86),rgba(4,18,43,.86));
    box-shadow:inset 0 0 20px rgba(54,111,255,.08),0 0 22px rgba(30,80,186,.12);
    color:#f1f5ff;
    transition:.2s ease;
}
.rfq-btn:hover,.primary-btn:hover,.secondary-btn:hover,.inquiry-btn:hover{
    transform:translateY(-1px);
    border-color:#79a3ff;
    box-shadow:0 0 24px rgba(45,101,255,.24);
}
.rfq-btn{padding:12px 20px;font-size:12px;letter-spacing:.03em;white-space:nowrap}
.paper-plane{display:inline-block;transform:rotate(-22deg);margin-right:9px;color:#a8c5ff}
.menu-toggle{display:none;background:none;border:0;color:#fff}
.hero{
    position:relative;
    min-height:430px;
    overflow:hidden;
}
.hero-grid{
    display:grid;
    grid-template-columns:37% 63%;
    min-height:420px;
    align-items:center;
}
.hero-copy{position:relative;z-index:4;padding:18px 0 35px}
.eyebrow{
    margin:0 0 8px;
    font-size:10px;
    letter-spacing:.24em;
    color:#78a5ff;
    text-transform:uppercase;
}
.hero h1{
    margin:0;
    font-family:Georgia,"Times New Roman",serif;
    font-weight:400;
    font-size:58px;
    line-height:.95;
    letter-spacing:-.025em;
    text-shadow:0 4px 28px rgba(0,0,0,.3);
}
.hero h1 span,.about-copy h2 span{color:#4d84ff}
.title-rule{
    width:72px;height:2px;
    margin:25px 0 15px;
    background:linear-gradient(90deg,#77a3ff,transparent);
}
.hero-lead{max-width:390px;color:#d8dde8;font-size:14px;line-height:1.42;margin:0 0 20px}
.primary-btn,.secondary-btn{display:inline-flex;align-items:center;gap:22px;padding:12px 22px;font-size:12px}
.hero-visual{
    position:absolute;
    right:-1.5%;
    top:5px;
    width:72%;
    height:420px;
    overflow:hidden;
}
.hero-visual img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    filter:saturate(1.05) contrast(1.04);
}
.hero-vignette{
    position:absolute;inset:0;
    background:
      linear-gradient(90deg,#020b19 0%,rgba(2,11,25,.72) 7%,transparent 28%),
      linear-gradient(180deg,rgba(2,11,25,.12),transparent 63%,#020d1d 100%);
}
.hero-glow{position:absolute;border-radius:50%;filter:blur(60px);opacity:.22}
.hero-glow-a{width:300px;height:220px;background:#2166d2;right:8%;top:70px}
.hero-glow-b{width:220px;height:160px;background:#103e91;left:8%;bottom:0}
.section{padding:22px 0}
.section-title{display:flex;align-items:center;justify-content:center;gap:16px;margin:0 0 20px}
.section-title span{width:48px;height:1px;background:linear-gradient(90deg,transparent,#8190a6)}
.section-title span:last-child{transform:scaleX(-1)}
.section-title h2{
    margin:0;
    font-family:Georgia,"Times New Roman",serif;
    font-size:15px;
    font-weight:400;
    letter-spacing:.25em;
    color:#6fa1ff;
}
.coverage-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}
.coverage-card{
    position:relative;
    min-height:145px;
    display:grid;
    grid-template-columns:118px 1fr;
    align-items:center;
    padding:18px 26px;
    border:1px solid var(--line-strong);
    border-radius:7px;
    background:
      radial-gradient(circle at 90% 20%,rgba(50,90,160,.14),transparent 35%),
      linear-gradient(145deg,rgba(8,29,57,.88),rgba(5,20,41,.76));
    box-shadow:var(--shadow);
    overflow:hidden;
}
.coverage-card:after{
    content:"";
    position:absolute;right:-5%;top:-55%;width:55%;height:180%;
    background:url('/assets/images/hero-world.png') center/cover no-repeat;
    opacity:.07;filter:grayscale(1);
}
.coverage-card-wide{grid-column:1/-1}
.compass{
    position:relative;z-index:2;
    width:78px;height:78px;
    display:grid;place-items:center;
    border:1px solid rgba(84,133,255,.44);
    border-radius:50%;
    font-size:38px;color:#eaf1ff;
    background:radial-gradient(circle,rgba(37,101,219,.43),rgba(4,18,40,.8) 68%);
    box-shadow:0 0 28px rgba(29,89,220,.34),inset 0 0 25px rgba(38,93,203,.22);
}
.coverage-body{position:relative;z-index:2}
.coverage-body h3{
    margin:0;
    font-family:Georgia,"Times New Roman",serif;
    font-size:24px;
    font-weight:400;
    letter-spacing:.04em;
}
.coverage-line{height:1px;width:170px;background:linear-gradient(90deg,#bac6da,transparent);margin:8px 0 18px}
.port-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;color:#c8d0df;font-size:12px;text-align:center}
.port-row span:before{
    content:"♜";
    display:block;
    color:#aab6c8;
    font-size:23px;
    line-height:1;
    margin-bottom:6px;
    opacity:.8;
}
.services{padding-top:30px}
.services-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}
.service-card{
    position:relative;
    overflow:hidden;
    border:1px solid var(--line-strong);
    border-radius:7px;
    background:linear-gradient(180deg,#0a1f3b,#07172c);
    box-shadow:var(--shadow);
}
.service-card>img{width:100%;height:118px;object-fit:cover}
.service-card:after{
    content:"";position:absolute;left:0;right:0;top:76px;height:58px;
    background:linear-gradient(transparent,#07172c);
}
.service-icon{
    position:relative;z-index:3;
    width:54px;height:54px;
    margin:-28px auto 0;
    display:grid;place-items:center;
    border-radius:50%;
    border:1px solid #5b87ff;
    background:radial-gradient(circle at 50% 35%,#154ba5,#07255a 70%);
    box-shadow:0 0 18px rgba(41,97,232,.48);
    font-size:25px;
}
.service-copy{position:relative;z-index:4;text-align:center;padding:14px 14px 18px;min-height:125px}
.service-copy h3{
    margin:0 0 8px;
    font:400 16px Georgia,"Times New Roman",serif;
    letter-spacing:.02em;
}
.service-copy p{margin:0;color:#c4cedd;font-size:12px;line-height:1.3}
.about{
    margin-top:18px;
    min-height:280px;
    display:grid;
    grid-template-columns:46% 54%;
    align-items:center;
    background:
      linear-gradient(90deg,rgba(4,17,35,.14),#041328 48%,#031126 100%);
    border-top:1px solid rgba(83,121,178,.18);
    border-bottom:1px solid rgba(83,121,178,.18);
}
.about-image{height:280px;overflow:hidden;position:relative}
.about-image img{width:100%;height:100%;object-fit:cover}
.about-image:after{
    content:"";position:absolute;inset:0;
    background:linear-gradient(90deg,rgba(3,13,29,.12),rgba(3,17,37,.05) 50%,#041328 100%);
}
.about-copy{padding:30px 8vw 30px 32px;max-width:760px}
.about-copy h2{margin:0 0 9px;font:400 26px Georgia,"Times New Roman",serif}
.about-copy p{margin:7px 0;color:#c4cede;font-size:13px}
.secondary-btn{margin-top:8px;padding:9px 16px}
.quality{padding-top:22px}
.quality-strip{
    display:grid;
    grid-template-columns:1fr 1px 1fr 1px 1fr 1px 1fr;
    align-items:center;
    border:1px solid var(--line-strong);
    border-radius:7px;
    padding:17px 20px;
    background:linear-gradient(145deg,rgba(9,29,57,.78),rgba(5,18,36,.72));
}
.quality-item{text-align:center}
.quality-item b{
    display:block;
    color:#6093ff;
    font:400 28px Georgia,"Times New Roman",serif;
    line-height:1.1
}
.quality-item span{font-size:11px;color:#c7cfdd}
.divider{width:1px;height:48px;background:var(--line)}
.contact{padding:0 0 26px}
.contact-panel{
    position:relative;
    display:grid;
    grid-template-columns:1fr auto;
    align-items:center;
    gap:30px;
    padding:24px 34px;
    border:1px solid var(--line-strong);
    border-radius:7px;
    overflow:hidden;
    background:
      radial-gradient(circle at 90% 60%,rgba(31,85,183,.20),transparent 22%),
      linear-gradient(145deg,rgba(7,25,50,.93),rgba(4,17,35,.9));
}
.contact-panel:after{
    content:"✦";
    position:absolute;
    right:5%;top:-45px;
    font-size:170px;color:rgba(76,117,187,.08);
}
.contact-panel h2{
    margin:0 0 4px;
    font:400 19px Georgia,"Times New Roman",serif;
    letter-spacing:.08em
}
.contact-panel p{margin:0;color:#c6cedc;font-size:12px}
.contact-points{display:flex;gap:36px;margin-top:16px;color:#cbd5e6;font-size:11px}
.inquiry-btn{position:relative;z-index:2;padding:16px 32px;font:400 16px Georgia,"Times New Roman",serif;letter-spacing:.04em}
.site-footer{padding:0 0 18px;background:rgba(1,7,16,.52)}
.footer-grid{
    display:grid;
    grid-template-columns:1.8fr .75fr .95fr .9fr 1.25fr;
    gap:28px;
    padding:20px 18px 18px;
    border-top:1px solid rgba(121,151,197,.14);
}
.footer-brand img{width:190px}
.footer-brand p{max-width:235px;color:#8f9cb0;font-size:10px}
.site-footer h3{font-size:9px;letter-spacing:.12em;color:#8ea4cc;margin:0 0 8px}
.site-footer a,.site-footer p{display:block;font-size:10px;color:#aab5c6;margin:3px 0}
.footer-rfq{margin-top:9px!important;color:#78a3ff!important}
.footer-bottom{
    display:flex;justify-content:space-between;
    padding-top:12px;border-top:1px solid rgba(117,145,189,.12);
    color:#6f7d90;font-size:9px
}
@media (max-width:1050px){
    .nav-shell{grid-template-columns:220px 1fr auto}
    .brand img{width:210px}
    .site-nav{gap:18px}
    .services-grid{grid-template-columns:repeat(3,1fr)}
    .footer-grid{grid-template-columns:1.5fr repeat(2,1fr)}
}
@media (max-width:820px){
    .shell{width:min(100% - 34px,1180px)}
    .site-header{padding-top:10px}
    .nav-shell{grid-template-columns:1fr auto;gap:12px}
    .brand img{width:210px}
    .rfq-btn{display:none}
    .menu-toggle{
        display:flex;align-items:center;gap:4px;flex-direction:column;
        padding:10px;border:1px solid rgba(105,143,210,.4);border-radius:5px
    }
    .menu-toggle span{display:block;width:22px;height:1px;background:#dce7fa}
    .menu-toggle b{font-size:8px;letter-spacing:.15em;margin-top:3px}
    .site-nav{
        position:absolute;left:17px;right:17px;top:76px;
        display:none;flex-direction:column;align-items:stretch;gap:0;
        padding:12px 18px;
        background:rgba(2,12,28,.98);
        border:1px solid var(--line);border-radius:8px;
        box-shadow:var(--shadow)
    }
    .site-nav.open{display:flex}
    .site-nav a{padding:12px 4px}
    .hero{min-height:auto}
    .hero-grid{display:block;min-height:610px;padding-top:335px}
    .hero-visual{width:100%;height:360px;right:0;top:0}
    .hero-visual img{object-position:62% center}
    .hero-vignette{background:linear-gradient(180deg,rgba(2,11,25,.08),rgba(2,11,25,.1) 52%,#020b19 100%)}
    .hero-copy{padding-bottom:30px}
    .hero h1{font-size:48px}
    .coverage-grid{grid-template-columns:1fr}
    .coverage-card-wide{grid-column:auto}
    .services-grid{grid-template-columns:repeat(2,1fr)}
    .about{grid-template-columns:1fr}
    .about-image{height:260px}
    .about-copy{padding:26px 22px 30px}
    .quality-strip{grid-template-columns:1fr 1fr;gap:20px}
    .quality-strip .divider{display:none}
    .contact-panel{grid-template-columns:1fr}
    .contact-points{flex-wrap:wrap;gap:14px 22px}
    .inquiry-btn{justify-self:start}
    .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:520px){
    .shell{width:calc(100% - 24px)}
    .brand img{width:190px}
    .hero-grid{padding-top:300px;min-height:570px}
    .hero-visual{height:320px}
    .hero h1{font-size:42px}
    .hero-lead{font-size:13px}
    .coverage-card{grid-template-columns:82px 1fr;padding:16px}
    .compass{width:62px;height:62px;font-size:30px}
    .coverage-body h3{font-size:20px}
    .port-row{grid-template-columns:repeat(2,1fr);row-gap:14px}
    .services-grid{grid-template-columns:1fr}
    .service-card>img{height:150px}
    .quality-strip{grid-template-columns:1fr 1fr}
    .quality-item b{font-size:22px}
    .contact-panel{padding:22px}
    .contact-points{display:grid;grid-template-columns:1fr}
    .footer-grid{grid-template-columns:1fr 1fr}
    .footer-brand,.footer-contact{grid-column:1/-1}
    .footer-bottom{display:block}
    .footer-bottom span{display:block;margin:4px 0}
}
