:root {
  --ink: #132b3c;
  --muted: #526779;
  --accent: #116f78;
  --accent-dark: #0b565e;
  --surface: #ffffff;
  --bg: #f5f8fa;
  --border: #dbe5e9;
  --soft-border: #e6edef;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Arial, sans-serif;
  color: var(--ink);
  background: var(--surface);
  scroll-behavior: smooth;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-width:320px;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:3px solid #56b4bd;outline-offset:4px}
.container{width:min(1140px,calc(100% - 80px));margin:0 auto}
.skip-link{position:absolute;left:12px;top:-90px;background:var(--ink);padding:12px 18px;z-index:99;color:#fff}.skip-link:focus{top:12px}
.site-header{background:#fff;border-bottom:1px solid var(--soft-border);position:relative;z-index:2}
.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:14px;min-width:0}
.brand-mark{width:50px;height:48px;border:2px solid var(--ink);display:flex;align-items:center;justify-content:center;gap:2px;flex:none;border-radius:4px;font-weight:800;letter-spacing:-.08em;font-size:17px;line-height:1}.mark-g{color:var(--accent)}
.brand-name{font-weight:700;font-size:17px;letter-spacing:-.025em;white-space:nowrap}.brand-name strong{font-size:13px;letter-spacing:.1em;font-weight:760;margin-left:2px}
.nav{display:flex;align-items:center;gap:34px;color:#4b5c6b;font-size:13px;font-weight:600}.nav a:hover{color:var(--accent)}
.nav-contact{padding:10px 16px;border:1px solid #d7e1e5;border-radius:3px;color:var(--ink)!important}.nav-contact span{margin-left:12px;font-size:15px}.nav-contact:hover{background:var(--bg)}
.hero{background:linear-gradient(124deg,#fdfefe 0%,#f0f7f7 100%);border-bottom:1px solid var(--soft-border);overflow:hidden}
.hero-grid{min-height:576px;display:grid;grid-template-columns:1.07fr .93fr;gap:46px;align-items:center}
.hero-copy{padding:85px 0 88px}
.eyebrow,.section-label{margin:0;font-size:11px;font-weight:760;letter-spacing:.165em;color:var(--accent)}
.eyebrow{display:inline-flex;align-items:center;gap:11px}.eyebrow-line{display:inline-block;width:28px;height:2px;background:var(--accent)}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(38px,4.5vw,58px);font-weight:750;letter-spacing:-.048em;line-height:1.13;margin:25px 0 24px;max-width:680px}h1 span{color:var(--accent)}
.hero-intro{max-width:580px;color:var(--muted);font-size:17px;line-height:1.78;margin-bottom:35px}
.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;font-size:13px;font-weight:680;white-space:nowrap}.button-primary{background:var(--accent);color:#fff;padding:13px 20px;border:1px solid var(--accent);border-radius:3px;transition:background .2s}.button-primary:hover{background:var(--accent-dark)}.button-primary span{font-weight:400;font-size:17px}.button-link{color:#455c68;padding:13px 0}.button-link:hover{color:var(--accent)}.button-link span{font-size:15px;font-weight:400}
.hero-visual{height:100%;min-height:480px;position:relative;display:flex;justify-content:center;align-items:center}
.visual-grid{position:absolute;inset:38px -120px 38px -36px;opacity:.7;background-image:linear-gradient(#dce8eb 1px,transparent 1px),linear-gradient(90deg,#dce8eb 1px,transparent 1px);background-size:28px 28px;mask-image:radial-gradient(ellipse at 50% 50%,black,transparent 72%)}
.advisory-panel{position:relative;width:min(408px,100%);background:#fff;border:1px solid #cddfe1;border-radius:5px;box-shadow:0 25px 80px rgba(15,59,63,.10),0 4px 11px rgba(15,59,63,.035);overflow:hidden}
.panel-header{display:flex;align-items:center;gap:13px;padding:20px 23px;border-bottom:1px solid var(--soft-border)}.panel-icon{width:42px;height:42px;border:1px solid #b5d2d5;background:#eaf5f5;border-radius:4px;display:flex;align-items:center;justify-content:center;color:var(--accent)}.panel-icon svg{height:25px;width:25px}.panel-heading{font-size:11px;letter-spacing:.10em;font-weight:780;color:var(--ink);display:block}.panel-subheading{display:block;font-size:11px;color:#7a8993}.panel-reference{font-size:10px;color:#a1b0b6;letter-spacing:.12em;margin-left:auto}
.panel-content{padding:30px 27px}.advisory-row{border:1px solid #d7e4e6;background:#fff;border-radius:3px;padding:15px 17px;height:60px;display:flex;align-items:center;gap:19px;color:#2b4754;font-size:14px;font-weight:650}.step-number{font-size:10px;font-weight:700;color:#889da5}.step-indicator{width:27px;height:6px;border-radius:9px;background:#d5e3e5;margin-left:auto}.row-highlight{background:#eaf5f5;border-color:#85b5b9;color:#135b63}.row-highlight .step-indicator{background:#3e959c}.connector-line{display:block;height:25px;width:1px;background:#9ab7ba;margin:auto;position:relative}.connector-line::after{content:"";position:absolute;bottom:3px;left:-3px;width:6px;height:6px;border-right:1px solid #86aaae;border-bottom:1px solid #86aaae;transform:rotate(45deg)}
.panel-footer{display:flex;align-items:center;gap:8px;border-top:1px solid var(--soft-border);height:46px;padding:0 22px;color:#66808a;font-size:9px;font-weight:750;letter-spacing:.11em}.status-dot{height:6px;width:6px;border-radius:50%;background:var(--accent);margin-right:5px}.mini-sep{color:#b6c8cb}
.section{padding:92px 0 102px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:40px}h2{font-size:clamp(30px,3vw,40px);font-weight:730;letter-spacing:-.039em;line-height:1.19;margin:14px 0 0}.section-summary{font-size:14px;line-height:1.75;color:var(--muted);max-width:370px;margin:0 0 2px}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.service-card{padding:25px 23px 29px;background:#fff;border:1px solid var(--border);border-radius:4px;min-height:309px;transition:border-color .2s,transform .2s}.service-card:hover{transform:translateY(-2px);border-color:#a1c2c4}.service-top{display:flex;align-items:flex-start;justify-content:space-between;color:var(--accent);margin-bottom:37px}.service-top svg{height:38px;width:38px}.service-number{color:#97aab1;font-weight:680;font-size:11px}h3{font-size:19px;font-weight:710;letter-spacing:-.025em;line-height:1.3;margin:0 0 13px}.service-card p{font-size:13.5px;line-height:1.76;color:var(--muted);margin:0}
.approach{background:var(--bg);border-top:1px solid var(--soft-border);border-bottom:1px solid var(--soft-border)}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.approach-step{background:#fff;border:1px solid #e0e9ec;border-radius:4px;padding:29px 27px;display:flex;gap:19px;min-height:162px}.approach-num{font-size:11px;font-weight:750;color:var(--accent);padding-top:4px}.approach-step h3{font-size:19px;margin-bottom:10px}.approach-step p{font-size:14px;color:var(--muted);margin-bottom:0;line-height:1.73}
.about{padding:82px 0 88px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-copy{padding-top:2px}.about-copy p{color:#536877;font-size:16px;line-height:1.85;margin-bottom:19px}.about-copy p:first-child{color:var(--ink);font-weight:550}.about-copy p:last-child{margin:0}
.contact-section{padding:0 0 90px}.contact-panel{background:#142f3d;color:#fff;border-radius:4px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:45px;padding:59px 59px}.contact-label{margin:0 0 12px;color:#8fc4ca;letter-spacing:.165em;font-weight:770;font-size:11px}.contact-copy h2{font-size:34px;margin:0 0 13px}.contact-copy>p:last-child{color:#b7cbd0;max-width:430px;font-size:14px;line-height:1.75;margin-bottom:0}.contact-email{display:flex;align-items:center;justify-content:space-between;padding:20px 21px;border:1px solid #587682;border-radius:3px;gap:18px;font-weight:650;font-size:clamp(15px,1.5vw,18px)}.contact-email:hover{background:#214450}.contact-email span:last-child{font-size:23px;font-weight:400}
.site-footer{border-top:1px solid var(--soft-border)}.footer-inner{padding:27px 0 32px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px 23px;color:#72838e;font-size:12px}
@media(max-width:1150px){.service-grid{grid-template-columns:repeat(2,1fr)}.service-card{min-height:254px}}
@media(max-width:1000px){.container{width:min(100% - 56px,1140px)}.hero-grid{gap:18px}h1{font-size:clamp(37px,4.6vw,52px)}.nav{gap:22px}.contact-panel{padding:44px}}
@media(max-width:760px){.container{width:min(100% - 38px,1140px)}.header-inner{height:auto;min-height:77px;flex-wrap:wrap;gap:14px;padding:16px 0}.brand-mark{width:43px;height:43px;font-size:15px}.brand-name{font-size:15px}.brand-name strong{font-size:12px}.nav{gap:18px;font-size:12px;flex-wrap:wrap}.nav-contact{padding:7px 9px}.nav-contact span{margin-left:4px}.hero-grid{display:block}.hero-copy{padding:70px 0 73px}.hero-visual{display:none}h1{font-size:clamp(35px,7.2vw,50px)}.hero-intro{font-size:16px}.section{padding:69px 0 77px}.section-heading{display:block}.section-summary{max-width:570px;margin:17px 0 0}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{min-height:0;padding:25px}.service-top{margin-bottom:23px}.approach-grid{grid-template-columns:1fr;gap:12px}.approach-step{min-height:0}.about-grid{grid-template-columns:1fr;gap:22px}.about{padding:70px 0}.contact-section{padding-bottom:60px}.contact-panel{display:block;padding:34px 28px}.contact-copy h2{font-size:29px}.contact-email{margin-top:29px}}
@media(max-width:490px){.header-inner{align-items:flex-start}.nav{width:100%;justify-content:space-between;gap:11px}.nav a{font-size:11px}.brand-name{font-size:15px}.eyebrow{font-size:9px}.contact-email{font-size:15px;padding:18px 13px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
