/* Local review design. Uses installed fonts; no font downloads or tracking. */
:root{--ink:#172f36;--navy:#102d33;--green:#275c51;--mint:#c4dbc6;--gold:#bea572;--paper:#f6f6f2;--muted:#54666a;--line:#dce2dc;--heading:"Bahnschrift","Aptos Display","Segoe UI",sans-serif;--body:"Segoe UI","Aptos",Arial,sans-serif}
body{font:17px/1.75 var(--body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}
a{color:var(--green);text-decoration-thickness:1px;text-underline-offset:5px}
.draft{background:#e8ece6;color:#506057;border-bottom:1px solid #dce2da;font:11px/1.5 var(--body);letter-spacing:.065em;padding:9px 24px}
.shell{max-width:1264px;padding:0 42px}
.top{padding:30px 0 26px;gap:24px;border:0;align-items:center}
.brand{font:600 26px/1 var(--heading);letter-spacing:-.055em;white-space:nowrap}
.brand small{font:600 9px/1.7 var(--body);letter-spacing:.16em;margin-top:9px;color:#61746c}
nav{font:600 13px/1.4 var(--body);gap:24px;align-items:center}
nav a{padding:9px 0;border-bottom:2px solid transparent;color:#425954;white-space:nowrap}
nav a:hover{color:#102d33;border-bottom-color:#c4cfc4}
nav a[aria-current=page]{color:#102d33;border-bottom:2px solid #618b76}
nav a:last-child{padding:11px 18px;background:var(--navy);color:#fff;border:1px solid var(--navy);border-radius:3px}
nav a:last-child:hover,nav a:last-child[aria-current=page]{background:#28584d}
main{padding:0 0 65px}
h1,h2,h3{font-family:var(--heading);font-weight:500;color:var(--ink);letter-spacing:-.035em}
h2{font-size:clamp(26px,2.8vw,36px);line-height:1.2;margin:0 0 18px}
h3{font-size:23px;line-height:1.2;margin:0 0 15px}
p{max-width:73ch;margin:0 0 19px}
.hero{padding:58px 52px 60px;min-height:420px;background:var(--navy);border:1px solid #1b3e42;border-radius:6px;overflow:hidden;overflow-clip-margin:0;display:flex;align-items:center;margin:0 0 62px;isolation:isolate;box-shadow:0 18px 34px -30px #0a292f}
.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 92% 10%,rgba(97,152,125,.24),transparent 60%),linear-gradient(125deg,#0d2b33 0%,#123239 62%,#163c3d 100%)}
.hero::after{content:"";left:52px;bottom:31px;width:44px;height:2px;background:var(--gold)}
.hero-copy{width:68%;max-width:725px;z-index:2}
.hero-copy h1{font:500 clamp(43px,5.1vw,66px)/1.055 var(--heading);letter-spacing:-.04em;color:#f5f6ed;text-wrap:balance;margin:0 0 25px;max-width:730px}
.hero-copy .intro{font:400 19px/1.65 var(--body);color:#cbdad3;max-width:540px;margin-bottom:22px}
.eyebrow{display:flex;align-items:center;gap:10px;font:600 10px/1.6 var(--body);letter-spacing:.19em;color:#64796f;margin:0 0 22px}
.hero .eyebrow{color:#b0c9b7}
.eyebrow::before{content:"";width:18px;height:1px;flex:none;background:currentColor;opacity:.7}
.analytics-art{position:absolute;right:-66px;top:0;bottom:0;transform:none;width:56%;height:100%;min-height:0;max-height:none;background:url("analytics-professional.svg") center/contain no-repeat;opacity:.9;mask-image:linear-gradient(to right,transparent 0%,#000 29%,#000 100%);pointer-events:none;z-index:0}
.actions{gap:24px;margin:25px 0 8px}
.button{padding:14px 21px;border-radius:3px;background:var(--navy);color:#fff;font:600 13px/1.5 var(--body);box-shadow:none;letter-spacing:.01em;transition:background-color .15s ease,transform .15s ease}
.button::after{content:"↗";margin-left:14px;display:inline-block;font-size:16px;line-height:1}
.button:hover{background:#275b4f;transform:translateY(-1px)}
.hero .button,.closing .button{background:#c4dbc6;color:#142f31}
.hero .button:hover,.closing .button:hover{background:#dfebd7}
.secondary{font:600 13px/1.5 var(--body);color:#e1e9df;text-decoration:none;border-bottom:1px solid #6e8e80;padding-bottom:4px}
section{margin-top:54px}
.hero+section{margin-top:0}
.cards{gap:18px;margin-top:29px}
.cards article{position:relative;background:#fff;border:1px solid var(--line);border-top:0;border-radius:3px;padding:30px 27px 25px;box-shadow:0 4px 18px -14px #4a6456}
.cards article::before{content:"";display:block;width:32px;height:28px;margin-bottom:25px;background:linear-gradient(#547867,#547867) 0 14px/6px 14px no-repeat,linear-gradient(#88a590,#88a590) 11px 7px/6px 21px no-repeat,linear-gradient(#b6cbb5,#b6cbb5) 22px 0/6px 28px no-repeat}
.cards article:nth-child(2)::before{background:linear-gradient(135deg,transparent 43%,#537765 44%,#537765 51%,transparent 52%) 0 0/30px 25px no-repeat;border-bottom:2px solid #abc0aa;border-left:2px solid #abc0aa}
.cards article:nth-child(3)::before{border:5px solid #adc4ae;border-left-color:#527863;border-bottom-color:#527863;border-radius:50%;width:28px;height:28px;background:none}
.cards p{font:400 15px/1.7 var(--body);color:var(--muted);margin:0}
.tint{padding:42px;background:#e8eee5;border:1px solid #d4dfd1;border-radius:4px;color:#314c43}
.tint h2{max-width:730px}
.steps{counter-reset:process;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:none}
.steps li{counter-increment:process;position:relative;margin:0;padding:30px 31px 27px;border:1px solid var(--line);background:#fff;border-radius:4px;box-shadow:0 3px 14px -12px #53675c}
.steps li::before{content:counter(process,decimal-leading-zero);display:block;font:400 29px/1 var(--heading);letter-spacing:-.04em;color:#70917b;margin-bottom:25px}
.steps h2{font:500 25px/1.2 var(--heading);letter-spacing:-.025em;margin:0 0 14px;max-width:380px}
.steps p{font-size:15px;line-height:1.8;color:#4f6560;margin:0}
#assessment{display:grid;grid-template-columns:1fr 1.4fr;column-gap:42px;row-gap:0;padding:44px}
#assessment h2{grid-column:1;grid-row:1 / span 5;font-size:34px;max-width:340px}
#assessment>p,#assessment>ul{grid-column:2;font-size:15px;line-height:1.8}
#assessment>p:first-of-type{font-size:12px;letter-spacing:.07em;text-transform:uppercase;color:#486b52}
#assessment ul{padding-left:20px;margin-top:0;margin-bottom:18px}
#assessment li{margin:7px 0}
body[data-page="about"] main>section:not(.closing),body[data-page="services"] main>section:not(.closing):not(.tint){display:grid;grid-template-columns:.82fr 1.6fr;column-gap:50px;row-gap:0;padding:0 4px 35px;border-bottom:1px solid var(--line)}
body[data-page="about"] main>section:not(.closing)>h2,body[data-page="services"] main>section:not(.closing):not(.tint)>h2{grid-column:1;grid-row:1 / span 3;font-size:29px;max-width:280px}
body[data-page="about"] main>section:not(.closing)>p,body[data-page="services"] main>section:not(.closing):not(.tint)>p{grid-column:2;font-size:16px;color:#4f615d}
body[data-page="contact"] main>section:not(.closing){max-width:790px;margin-left:auto;margin-right:auto;padding:38px;background:#fff;border:1px solid var(--line);border-radius:4px}
.closing{display:block;padding:43px 46px;border:1px solid #25453e;border-radius:4px;background:var(--navy);color:#c8d9ce;box-shadow:none}
.closing h2{color:#f0f4ea;font-size:34px;max-width:780px;letter-spacing:-.03em}
.closing p{max-width:700px;font-size:17px}
.closing::after{background-image:url("analytics-professional.svg");opacity:.18;width:390px;height:360px;right:-75px;bottom:-110px}
.endpoint{font:13px/1.7 var(--body);padding:17px;background:#ecf0e6;border-left:3px solid #91a680;color:#56604f}
footer{border-color:#d7dfd5;padding:27px 0 38px;font:12px/1.7 var(--body);color:#63746a}
a:focus-visible{outline:3px solid #bca16e;outline-offset:5px}
@media(min-width:1150px){.hero{min-height:450px}.hero-copy{width:67%}.hero-copy h1{font-size:65px}.hero-copy .intro{font-size:20px}}
@media(max-width:1050px){.shell{padding:0 30px}.top{gap:16px}nav{gap:17px}.brand{font-size:24px}.brand small{font-size:8px}.hero{padding:46px 36px 54px}.hero-copy{width:72%}.hero-copy h1{font-size:49px}.hero-copy .intro{font-size:18px;max-width:490px}.hero::after{left:36px}.analytics-art{right:-78px;width:58%;opacity:.74}.button{font-size:12px;padding:13px 16px}.hero .actions{gap:18px}#assessment{gap:28px;padding:35px}#assessment h2{font-size:29px}}
@media(max-width:800px){.top{flex-wrap:wrap}.brand{font-size:25px}nav{gap:21px}.hero-copy{width:79%}.hero-copy h1{font-size:45px}.analytics-art{width:52%;right:-100px;opacity:.38}.cards{gap:12px}.cards article{padding:23px 20px}.cards h3{font-size:21px}body[data-page="about"] main>section:not(.closing),body[data-page="services"] main>section:not(.closing):not(.tint){column-gap:30px}}
@media(max-width:650px){body{font-size:16px}.shell{padding:0 18px}.draft{font-size:10px;padding:8px 17px;letter-spacing:.035em}.top{padding:25px 1px 24px;display:block}.brand{font-size:26px}.brand small{font-size:8px;letter-spacing:.14em}nav{margin-top:21px;gap:8px 18px;font-size:12px}nav a{padding:5px 0}nav a:last-child{padding:7px 12px}main{padding-top:0}.hero{padding:33px 25px 27px;min-height:0;display:block;margin:0 0 37px}.hero-copy{width:100%;max-width:none}.hero-copy h1{font-size:38px;line-height:1.08;letter-spacing:-.04em;margin-bottom:22px;text-wrap:balance}.hero-copy .intro{font-size:17px;line-height:1.65;max-width:none}.hero .eyebrow{font-size:9px;margin-bottom:20px;letter-spacing:.16em}.hero .actions{gap:19px;margin-top:24px}.button{padding:13px 15px;font-size:12px}.button::after{margin-left:10px}.secondary{font-size:12px}.analytics-art{position:relative;top:auto;right:auto;bottom:auto;width:100%;height:190px;min-height:0;margin:12px 0 -6px;background-size:contain;opacity:.9;mask-image:none}.hero::after{left:25px;bottom:20px;width:34px}.cards{grid-template-columns:1fr;gap:15px;margin-top:24px}.cards article{padding:25px}.cards article::before{margin-bottom:18px}h2{font-size:28px}.steps{grid-template-columns:1fr;gap:16px}.steps li{padding:26px}.steps li::before{font-size:26px;margin-bottom:20px}.steps h2{font-size:24px}.steps p{font-size:15px}.tint{padding:27px 25px}.tint h2{font-size:28px}#assessment{display:block;padding:29px 25px}#assessment h2{font-size:29px;max-width:none;margin-bottom:25px}#assessment>p,#assessment>ul{font-size:15px}#assessment>p:first-of-type{font-size:11px;letter-spacing:.04em}section{margin-top:37px}body[data-page="about"] main>section:not(.closing),body[data-page="services"] main>section:not(.closing):not(.tint){display:block;padding:0 4px 25px}body[data-page="about"] main>section:not(.closing)>h2,body[data-page="services"] main>section:not(.closing):not(.tint)>h2{font-size:28px;max-width:none}body[data-page="contact"] main>section:not(.closing){padding:26px}.closing{padding:30px 26px}.closing h2{font-size:30px}.closing p{font-size:16px}.closing::after{opacity:.13}footer{font-size:11px;padding-top:23px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}.button:hover{transform:none}}
@media print{.draft,.analytics-art,.hero::before,.hero::after,.closing::after{display:none}.shell{padding:0}.hero{background:white;box-shadow:none;border:0;min-height:0;padding:0;margin-bottom:25px}.hero-copy{width:100%}.hero-copy h1{font-size:28pt;color:#172f36}.hero-copy .intro{font-size:12pt;color:#172f36}.hero .eyebrow{color:#172f36}.closing{background:white;color:#172f36;border:0;padding:20px 0}.closing h2{color:#172f36}.steps{display:block}.steps li{break-inside:avoid;margin:15px 0}body{font-size:11pt}.cards article{box-shadow:none}.button{background:white!important;color:#172f36!important}.button::after{content:""}#assessment{display:block}.top{padding-top:0}}
