
  :root{
    --navy:#0e2d52;
    --navy-deep:#0a2342;
    --navy-2:#16407a;
    --blue:#2f6db5;
    --blue-soft:#5b94d6;
    --ink:#1a2433;
    --muted:#5d6b7e;
    --line:#e3e9f1;
    --bg:#ffffff;
    --bg-soft:#f4f7fb;
    --bg-tint:#eef3f9;
    --gold:#c9a24a;
    --shadow:0 18px 50px -20px rgba(14,45,82,.28);
    --shadow-sm:0 8px 26px -14px rgba(14,45,82,.30);
    --sans:'Pretendard',-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
    --maxw:1180px;
  }
  *{margin:0;padding:0;box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    font-family:var(--sans);
    color:var(--ink);
    background:var(--bg);
    line-height:1.65;
    -webkit-font-smoothing:antialiased;
    letter-spacing:-.01em;
    overflow-x:hidden;
  }
  a{text-decoration:none;color:inherit}
  ul{list-style:none}
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  .eyebrow{
    font-size:.8rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase;
    color:var(--blue);display:inline-flex;align-items:center;gap:10px;
  }
  .eyebrow::before{content:"";width:26px;height:2px;background:var(--gold)}
  .sec-title{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:800;line-height:1.25;color:var(--navy);letter-spacing:-.025em}
  .sec-sub{color:var(--muted);font-size:1.02rem;margin-top:14px;max-width:620px}

  /* ============ HEADER ============ */
  header{
    position:fixed;top:0;left:0;right:0;z-index:100;
    background:rgba(255,255,255,.0);
    transition:background .3s,box-shadow .3s,border-color .3s;
    border-bottom:1px solid transparent;
  }
  header.scrolled{background:rgba(255,255,255,.96);backdrop-filter:blur(10px);box-shadow:0 6px 30px -22px rgba(0,0,0,.4);border-bottom-color:var(--line)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:78px}
  .logo{display:flex;align-items:center}
  .logo .logo-imgs{display:inline-flex;align-items:center}
  .logo .logo-imgs img{height:44px;width:auto}
  .logo .logo-imgs img.lg-w{display:block}
  .logo .logo-imgs img.lg-c{display:none}
  header.scrolled .logo .logo-imgs img.lg-w{display:none}
  header.scrolled .logo .logo-imgs img.lg-c{display:block}
  nav.menu ul{display:flex;gap:34px}
  nav.menu a{
    font-weight:600;font-size:.96rem;color:rgba(255,255,255,.92);position:relative;padding:6px 0;transition:color .25s;
  }
  header.scrolled nav.menu a{color:var(--ink)}
  nav.menu a::after{content:"";position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--blue);transition:width .28s}
  nav.menu a:hover::after{width:100%}
  nav.menu a:hover{color:#fff}
  header.scrolled nav.menu a:hover{color:var(--blue)}
  .header-actions{display:flex;align-items:center;gap:18px}
  .login{font-size:.9rem;font-weight:600;color:rgba(255,255,255,.9);display:flex;align-items:center;gap:6px}
  header.scrolled .login{color:var(--muted)}
  .btn-join{
    background:var(--navy);color:#fff;padding:10px 20px;border-radius:8px;font-weight:700;font-size:.9rem;
    transition:transform .2s,background .2s;box-shadow:var(--shadow-sm);
  }
  header.scrolled .btn-join{background:var(--blue)}
  .btn-join:hover{transform:translateY(-2px);background:var(--navy-2)}
  .hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:8px}
  .hamburger span{width:24px;height:2px;background:#fff;transition:.3s}
  header.scrolled .hamburger span{background:var(--navy)}

  /* ============ HERO ============ */
  .hero{
    position:relative;min-height:760px;display:flex;align-items:center;
    background:
      linear-gradient(105deg,rgba(8,28,54,.94) 0%,rgba(13,45,82,.86) 42%,rgba(16,52,95,.40) 75%,rgba(20,64,122,.15) 100%),
      radial-gradient(1200px 600px at 80% 20%,rgba(91,148,214,.30),transparent 60%),
      linear-gradient(135deg,#0a2342,#123a6b 60%,#1a4f8f);
    overflow:hidden;
  }
  .hero-hex{position:absolute;inset:0;opacity:.5;pointer-events:none}
  .hero-glow{position:absolute;right:-8%;top:8%;width:620px;height:620px;border-radius:50%;
    background:radial-gradient(circle,rgba(120,170,230,.35),transparent 65%);filter:blur(10px)}
  .hero-photo{position:absolute;inset:0;z-index:0;overflow:hidden}
  .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:80% center}
  .hero-shade{position:absolute;inset:0;z-index:1;pointer-events:none;
    background:linear-gradient(100deg,#0a2342 0%,rgba(10,35,66,.97) 33%,rgba(11,38,72,.82) 49%,rgba(12,42,80,.42) 66%,rgba(14,48,90,.10) 82%,rgba(14,48,90,0) 100%),
      linear-gradient(0deg,rgba(8,28,54,.5) 0%,rgba(8,28,54,0) 26%)}
  .hero .wrap{position:relative;z-index:2;width:100%}
  .hero-inner{max-width:660px;color:#fff;padding:60px 0}
  .hero-tag{
    display:inline-flex;align-items:center;gap:9px;font-size:.92rem;font-weight:600;
    color:#bcd6f5;letter-spacing:.02em;margin-bottom:22px;
    border:1px solid rgba(150,190,235,.4);padding:7px 16px;border-radius:30px;background:rgba(255,255,255,.05);
  }
  .hero-tag .dot{width:7px;height:7px;border-radius:50%;background:var(--gold)}
  .hero h1{
    font-size:clamp(2.4rem,5.2vw,3.85rem);font-weight:800;line-height:1.18;letter-spacing:-.035em;
    margin-bottom:26px;
  }
  .hero h1 .hl{color:#7fb0e8}
  .hero p.lead{font-size:1.12rem;line-height:1.85;color:rgba(233,242,252,.92);max-width:540px;margin-bottom:40px;font-weight:300}
  .btn{
    display:inline-flex;align-items:center;gap:10px;padding:16px 30px;border-radius:10px;
    font-weight:700;font-size:1rem;transition:transform .22s,box-shadow .22s,background .22s;cursor:pointer;border:none;
  }
  .btn-primary{background:linear-gradient(135deg,var(--blue),#2155a0);color:#fff;box-shadow:0 16px 40px -16px rgba(47,109,181,.9)}
  .btn-primary:hover{transform:translateY(-3px);box-shadow:0 22px 48px -16px rgba(47,109,181,1)}
  .btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.5)}
  .btn-ghost:hover{background:rgba(255,255,255,.12);transform:translateY(-3px)}
  /* hero login box */
  .hero-login{
    max-width:540px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);
    border-radius:16px;padding:22px 24px;backdrop-filter:blur(10px);box-shadow:0 24px 60px -28px rgba(0,0,0,.6);
  }
  .hl-head{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}
  .hl-title{font-size:1.15rem;font-weight:800;letter-spacing:.14em;color:#fff}
  .hl-desc{font-size:.84rem;color:rgba(210,226,246,.75);font-weight:400}
  .hl-fields{display:flex;gap:10px;flex-wrap:wrap}
  .hl-fields input{
    flex:1;min-width:120px;padding:13px 15px;border-radius:9px;border:1px solid rgba(255,255,255,.22);
    background:rgba(8,24,46,.5);color:#fff;font-family:inherit;font-size:.95rem;transition:.2s;
  }
  .hl-fields input::placeholder{color:rgba(200,216,238,.6)}
  .hl-fields input:focus{outline:none;border-color:var(--blue-soft);background:rgba(8,24,46,.7);box-shadow:0 0 0 4px rgba(91,148,214,.18)}
  .hl-btn{
    padding:13px 26px;border:none;border-radius:9px;font-family:inherit;font-weight:700;font-size:.95rem;cursor:pointer;
    background:linear-gradient(135deg,var(--blue),#2155a0);color:#fff;transition:transform .2s,box-shadow .2s;flex:none;
  }
  .hl-btn:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px rgba(47,109,181,.9)}
  .hl-links{display:flex;align-items:center;gap:14px;margin-top:14px}
  .hl-links a{font-size:.86rem;color:rgba(214,228,246,.85);font-weight:500;transition:color .2s}
  .hl-links a:hover{color:#fff}
  .hl-links .sep{width:1px;height:12px;background:rgba(255,255,255,.25)}
  .hero-stats{
    position:absolute;left:0;right:0;bottom:0;z-index:3;
  }
  .hero-stats .wrap{display:flex;gap:0;flex-wrap:wrap;
    background:rgba(255,255,255,.06);backdrop-filter:blur(8px);border-top:1px solid rgba(255,255,255,.12);
    padding:0;border-radius:0;}
  .stat{flex:1;min-width:160px;padding:22px 22px;text-align:center;border-right:1px solid rgba(255,255,255,.12)}
  .stat:last-child{border-right:none}
  .stat b{display:block;font-size:1.18rem;font-weight:800;color:#fff;letter-spacing:-.01em}
  .stat b .u{font-size:1.05rem;color:#7fb0e8}
  .stat span{font-size:.82rem;color:rgba(220,232,247,.8);font-weight:500}

  /* ============ SERVICES ============ */
  .services{padding:118px 0 100px;background:var(--bg);position:relative}
  .sec-head{text-align:center;margin-bottom:60px;display:flex;flex-direction:column;align-items:center}
  .sec-head .sec-sub{text-align:center}
  .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
  .card{
    background:#fff;border:1px solid var(--line);border-radius:18px;padding:38px 28px 32px;position:relative;
    transition:transform .3s,box-shadow .3s,border-color .3s;overflow:hidden;
  }
  .card::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--navy));transform:scaleX(0);transform-origin:left;transition:transform .35s}
  .card:hover{transform:translateY(-8px);box-shadow:var(--shadow);border-color:transparent}
  .card:hover::before{transform:scaleX(1)}
  .card .ic{
    width:62px;height:62px;border-radius:15px;display:grid;place-items:center;margin-bottom:24px;
    background:linear-gradient(135deg,var(--bg-tint),#dde8f5);color:var(--navy);transition:.3s;
  }
  .card:hover .ic{background:linear-gradient(135deg,var(--blue),var(--navy));color:#fff;transform:rotate(-6deg) scale(1.05)}
  .card .ic svg{width:30px;height:30px}
  .card h3{font-size:1.22rem;font-weight:800;color:var(--navy);margin-bottom:12px;letter-spacing:-.02em}
  .card p{font-size:.94rem;color:var(--muted);line-height:1.7}
  .card .more{display:inline-flex;align-items:center;gap:7px;margin-top:22px;font-size:.85rem;font-weight:700;color:var(--blue);opacity:.85}
  .card .more svg{width:16px;height:16px;transition:transform .25s}
  .card:hover .more svg{transform:translateX(4px)}

  /* ============ PROCESS ============ */
  .process{padding:108px 0;background:linear-gradient(180deg,var(--bg-soft),#eaf1f9);position:relative;overflow:hidden}
  .process .hex-bg{position:absolute;right:-60px;top:-40px;width:340px;opacity:.35;color:#cdddf0}
  .process-grid{display:grid;grid-template-columns:.85fr 2.15fr;gap:50px;align-items:center}
  .process-intro h2{font-size:clamp(1.7rem,3.2vw,2.3rem);font-weight:800;color:var(--navy);line-height:1.3;letter-spacing:-.025em}
  .process-intro p{color:var(--muted);margin-top:18px;font-size:1rem}
  .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}
  .step{background:#fff;border-radius:16px;padding:30px 22px;position:relative;border:1px solid var(--line);transition:transform .3s,box-shadow .3s}
  .step:hover{transform:translateY(-6px);box-shadow:var(--shadow-sm)}
  .step .circle{
    width:56px;height:56px;border-radius:50%;display:grid;place-items:center;margin-bottom:20px;
    background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff;box-shadow:var(--shadow-sm);
  }
  .step .circle svg{width:26px;height:26px}
  .step .num{position:absolute;top:22px;right:22px;font-size:1.5rem;font-weight:800;color:var(--bg-tint)}
  .step:hover .num{color:#d7e4f4}
  .step h4{font-size:1.06rem;font-weight:800;color:var(--navy);margin-bottom:8px}
  .step p{font-size:.86rem;color:var(--muted);line-height:1.6}
  .step .arrow{position:absolute;right:-17px;top:50%;transform:translateY(-50%);z-index:2;color:var(--blue-soft);background:#fff;border-radius:50%}
  .step:last-child .arrow{display:none}

  /* ============ ABOUT / CEO ============ */
  .about{padding:120px 0;background:var(--navy-deep);color:#fff;position:relative;overflow:hidden}
  .about .glow{position:absolute;left:-10%;bottom:-20%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(91,148,214,.22),transparent 65%)}
  .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;position:relative;z-index:2}
  .about .eyebrow{color:#7fb0e8}
  .about-quote{font-size:clamp(1.6rem,3vw,2.15rem);font-weight:800;line-height:1.4;letter-spacing:-.025em;margin:22px 0 30px}
  .about-quote .hl{color:#7fb0e8}
  .about-body p{color:rgba(220,232,247,.82);font-size:1rem;line-height:1.9;font-weight:300;margin-bottom:18px}
  .about-sign{margin-top:34px;display:flex;align-items:center;gap:16px}
  .about-sign .line{width:40px;height:1px;background:rgba(255,255,255,.4)}
  .about-sign b{font-weight:700;font-size:1.02rem}
  .about-sign span{color:rgba(200,216,236,.7);font-size:.88rem;display:block}
  .about-points{display:flex;flex-direction:column;gap:18px}
  .point{display:flex;gap:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:22px 24px;transition:.3s}
  .point:hover{background:rgba(255,255,255,.09);transform:translateX(6px)}
  .point .pic{width:46px;height:46px;flex:none;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--navy-2));color:#fff}
  .point .pic svg{width:23px;height:23px}
  .point h5{font-size:1.05rem;font-weight:800;margin-bottom:5px}
  .point p{font-size:.88rem;color:rgba(214,228,246,.78);line-height:1.6;font-weight:300}

  /* ============ TEAM ============ */
  .team{padding:0;background:#fff;position:relative}
  .team-photo{position:relative;width:100%;height:clamp(380px,46vw,560px);overflow:hidden}
  .team-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
  .team-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,35,66,.86) 0%,rgba(10,35,66,.55) 38%,rgba(10,35,66,.08) 65%,transparent 100%)}
  .team-overlay{position:absolute;inset:0;z-index:2;display:flex;align-items:center}
  .team-overlay .wrap{width:100%}
  .team-card{max-width:480px;color:#fff}
  .team-card .eyebrow{color:#9cc4ee}
  .team-card h2{font-size:clamp(1.8rem,3.4vw,2.5rem);font-weight:800;line-height:1.3;margin:20px 0 18px;letter-spacing:-.025em}
  .team-card p{color:rgba(226,238,250,.9);font-size:1.02rem;line-height:1.8;font-weight:300}
  .team-tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}
  .team-tags span{font-size:.84rem;font-weight:600;padding:8px 16px;border-radius:30px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22)}

  /* ============ CONTACT ============ */
  .contact{padding:110px 0;background:var(--bg-soft)}
  .contact-cards-row{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:8px}
  .ci-card{display:flex;align-items:flex-start;gap:18px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px 26px;transition:.3s}
  .ci-card:hover{box-shadow:var(--shadow-sm);transform:translateY(-4px)}
  .ci-card .ic{width:54px;height:54px;border-radius:14px;flex:none;display:grid;place-items:center;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}
  .ci-card .ic svg{width:25px;height:25px}
  .ci-card .meta span{font-size:.82rem;color:var(--muted);font-weight:600;letter-spacing:.02em}
  .ci-card .meta b{display:block;font-size:1.3rem;font-weight:800;color:var(--navy);letter-spacing:-.01em;margin:2px 0 4px}
  .ci-card .meta small{color:var(--muted);font-size:.84rem;font-weight:500;line-height:1.5}

  /* ============ CTA BAND ============ */
  .cta-band{background:linear-gradient(120deg,var(--navy-deep),var(--navy-2));color:#fff;padding:64px 0;position:relative;overflow:hidden}
  .cta-band .hex-bg{position:absolute;right:-40px;bottom:-60px;width:300px;opacity:.25;color:#5b94d6}
  .cta-band .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;position:relative;z-index:2}
  .cta-band h2{font-size:clamp(1.6rem,3vw,2.1rem);font-weight:800;letter-spacing:-.025em}
  .cta-band p{color:rgba(220,232,247,.82);margin-top:10px;font-weight:300}
  .btn-white{background:#fff;color:var(--navy)}
  .btn-white:hover{transform:translateY(-3px);box-shadow:0 18px 40px -16px rgba(0,0,0,.5)}

  /* ============ FOOTER ============ */
  footer{background:#071a33;color:rgba(220,232,247,.7);padding:64px 0 30px;font-size:.9rem}
  .f-top{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:42px;border-bottom:1px solid rgba(255,255,255,.1)}
  .f-brand .logo{color:#fff;margin-bottom:18px}
  .f-brand p{line-height:1.8;font-weight:300;max-width:320px}
  .f-col h6{color:#fff;font-size:.95rem;font-weight:700;margin-bottom:16px}
  .f-col a{display:block;margin-bottom:10px;transition:color .2s}
  .f-col a:hover{color:#7fb0e8}
  .f-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:26px;flex-wrap:wrap;gap:14px}
  .f-bottom .legal{font-size:.82rem;line-height:1.7;color:rgba(200,216,236,.55)}
  .f-bottom .socials{display:flex;gap:12px}
  .f-bottom .socials a{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(255,255,255,.07);transition:.25s}
  .f-bottom .socials a:hover{background:var(--blue);color:#fff;transform:translateY(-3px)}
  .f-bottom .socials svg{width:18px;height:18px}

  /* ============ REVEAL ANIMATION ============ */
  .reveal{opacity:0;transform:translateY(34px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1)}
  .reveal.in{opacity:1;transform:none}
  .hero .reveal{transition-duration:.9s}

  /* ============ RESPONSIVE ============ */
  @media(max-width:1024px){
    .cards{grid-template-columns:repeat(2,1fr)}
    .process-grid{grid-template-columns:1fr;gap:36px}
    .steps{grid-template-columns:repeat(2,1fr);gap:24px}
    .step .arrow{display:none}
    .about-grid{grid-template-columns:1fr;gap:44px}
    .hero-photo img{object-position:74% center}
    .hero-shade{background:linear-gradient(100deg,#0a2342 0%,rgba(10,35,66,.96) 42%,rgba(12,42,80,.6) 72%,rgba(14,48,90,.18) 100%)}
  }
  @media(max-width:860px){
    nav.menu,.header-actions .login,.header-actions .btn-join{display:none}
    .hamburger{display:flex}
    .hero-photo img{object-position:66% center}
    .hero-shade{background:linear-gradient(160deg,rgba(8,28,54,.93) 0%,rgba(10,35,66,.86) 60%,rgba(12,42,80,.8) 100%)}
    nav.menu.open{display:block;position:absolute;top:78px;left:0;right:0;background:#fff;box-shadow:var(--shadow);padding:14px 24px}
    nav.menu.open ul{flex-direction:column;gap:0}
    nav.menu.open a{display:block;padding:14px 0;color:var(--ink)!important;border-bottom:1px solid var(--line)}
    .contact-cards-row{grid-template-columns:1fr;gap:16px}
    .hero-inner{padding:40px 0 36px}
    .hero{min-height:auto}
    .hero-login{max-width:100%}
    .hero-stats{position:static;margin-top:8px}
    .hero-stats .wrap{padding:0;border-top:none}
    .stat{flex:1 1 50%;min-width:140px;padding:20px 16px}
    .stat:nth-child(2){border-right:none}
    .stat:nth-child(1),.stat:nth-child(2){border-bottom:1px solid rgba(255,255,255,.12)}
  }
  @media(max-width:600px){
    .cards{grid-template-columns:1fr}
    .steps{grid-template-columns:1fr}
    .f-top{grid-template-columns:1fr 1fr;gap:30px}
    .hl-fields{flex-direction:column}
    .hl-fields input,.hl-btn{width:100%}
  }


  .policy-section{padding:110px 0;background:#fff;scroll-margin-top:78px}
  .policy-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:34px}
  .policy-head .sec-title{margin-top:16px}
  .policy-version-box{min-width:340px}
  .policy-version-box label{display:block;margin-bottom:8px;color:var(--muted);font-size:.86rem;font-weight:700}
  .policy-version-box select{width:100%;padding:13px 42px 13px 15px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);font-family:inherit;font-size:.93rem;cursor:pointer}
  .policy-version-box select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(47,109,181,.12)}
  .policy-card{height:680px;overflow-y:auto;padding:34px 38px;background:var(--bg-soft);border:1px solid var(--line);border-radius:18px;color:#38465a;font-size:.94rem;line-height:1.85;scrollbar-color:var(--blue-soft) var(--bg-tint);scrollbar-width:thin}
  .policy-card::-webkit-scrollbar{width:10px}
  .policy-card::-webkit-scrollbar-track{background:var(--bg-tint);border-radius:10px}
  .policy-card::-webkit-scrollbar-thumb{background:var(--blue-soft);border:2px solid var(--bg-tint);border-radius:10px}
  .policy-content{display:none}
  .policy-content.active{display:block}
  .policy-content strong{display:inline-block;margin:8px 0 5px;color:var(--navy);font-size:1.05rem}
  .policy-content table{width:70%;margin:15px auto;border-collapse:collapse;background:#fff}
  .policy-content table td{padding:10px;border:1px solid var(--line)}
  .policy-content a{color:var(--blue);font-weight:700;text-decoration:underline}
  @media(max-width:760px){
    .policy-section{padding:82px 0}
    .policy-head{display:block}
    .policy-version-box{min-width:0;margin-top:24px}
    .policy-card{height:600px;padding:24px 20px;font-size:.9rem}
    .policy-content table{width:100%}
  }

  /* ============ RESPONSIVE STABILITY FIXES ============ */
  img{display:block;max-width:100%}
  .hamburger{appearance:none;border:0;background:transparent;font:inherit}

  @media(max-width:860px){
    .hero{padding-top:78px}
    .hero-inner{padding:48px 0 36px}
    .hero-photo img{object-position:68% center}
    .team-photo{height:auto;min-height:560px}
    .team-photo>img{position:absolute;inset:0;width:100%;height:100%;object-position:62% center}
    .team-overlay{position:relative;min-height:560px;padding:72px 0}
  }

  @media(max-width:600px){
    .wrap{padding-left:18px;padding-right:18px}
    .nav{height:68px}
    .logo .logo-imgs img{height:38px}
    nav.menu.open{top:68px;padding:10px 18px}
    .hero{padding-top:68px}
    .hero-inner{padding:38px 0 30px}
    .hero h1{font-size:clamp(2rem,11vw,2.7rem);margin-bottom:20px}
    .hero p.lead{font-size:1rem;line-height:1.75;margin-bottom:30px}
    .hero-login{padding:20px 18px}
    .hl-head{align-items:flex-start;flex-direction:column;gap:3px}
    .services,.process,.about,.contact{padding-top:82px;padding-bottom:74px}
    .sec-head{margin-bottom:38px}
    .card{padding:30px 24px 27px}
    .about-grid{gap:34px}
    .point{padding:20px 18px}
    .team-photo,.team-overlay{min-height:650px}
    .team-photo>img{object-position:68% center}
    .team-card h2{font-size:clamp(1.75rem,9vw,2.15rem)}
    .ci-card{padding:22px 18px}
    .ci-card .meta b{font-size:1.08rem;overflow-wrap:anywhere}
    .cta-band{padding:50px 0}
    .cta-band .wrap{align-items:flex-start}
    .cta-band .btn{width:100%;justify-content:center}
    .f-top{grid-template-columns:1fr;gap:26px}
    .f-bottom{align-items:flex-start;flex-direction:column}
    .policy-card{height:min(600px,70vh);overflow-wrap:anywhere}
  }

  @media(max-width:380px){
    .stat{flex-basis:100%;border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}
    .stat:last-child{border-bottom:0}
  }

  @media(prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    *,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}
    .reveal{opacity:1;transform:none}
  }
