@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Manrope:wght@500;600;700;800&display=swap');
:root{color-scheme:light;--ink:#252b3b;--muted:#617083;--line:#e1e5ec;--blue:#3449c3}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",system-ui,sans-serif;background:#fafaf8;color:var(--ink);line-height:1.7}
img{max-width:100%;height:auto;display:block}a{color:#3349bd;text-underline-offset:3px}a:hover{color:#253ca4}
.container{width:min(1140px,100% - 44px);margin-inline:auto}
.site-header{background:#fff;border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:80px}
.brand{text-decoration:none;font-weight:800;font-family:Manrope,sans-serif;color:#222838;font-size:20px;letter-spacing:-.05em}.brand span{color:var(--blue)}
.nav nav{display:flex;align-items:center;gap:26px}.nav nav a{text-decoration:none;color:#4b586a;font-size:14px;font-weight:700}.nav nav a:hover{color:var(--blue)}
.breadcrumbs{font-size:12px;color:#7b8798;margin-top:34px;display:flex;flex-wrap:wrap;gap:10px}.breadcrumbs a{color:#4c5c7d;text-decoration:none}
.detail-head{padding:47px 0 39px;max-width:860px}.eyebrow{text-transform:uppercase;font-weight:800;letter-spacing:.12em;font-size:11px;color:#5367a9}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.17;letter-spacing:-.055em}
h1{font-size:clamp(40px,5vw,69px);margin:16px 0 24px;font-weight:800;max-width:860px}
.lede{font-size:18px;color:#58677b;line-height:1.8;max-width:820px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-flex;justify-content:center;align-items:center;padding:13px 19px;background:var(--blue);color:#fff;border-radius:8px;font-weight:800;text-decoration:none;font-size:13px;min-height:48px}.button:hover{background:#293baf;color:#fff}.button.secondary{background:#fff;color:#3449bd;border:1px solid #d2d7e8}
.feature{margin:10px 0 48px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}.feature img{width:100%;height:auto;aspect-ratio:1440/950;object-fit:cover;object-position:top}.feature figcaption{font-size:12px;color:#7b8695;padding:13px 17px}
.detail-layout,.about-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:70px;align-items:start}
.prose h2{font-size:29px;margin:38px 0 14px}.prose h2:first-child{margin-top:0}.prose h3{font-size:19px;margin:24px 0 10px}.prose p,.prose li{color:#596679;font-size:15px;line-height:1.9}
.prose ul{padding-left:22px}.prose li{margin:7px 0}
.prose section{margin-bottom:26px}.facts{background:#fff;border:1px solid var(--line);border-radius:12px;padding:23px}.facts h2{font-size:19px;margin-bottom:18px}.facts dl{margin:0}.facts dt{font-size:10px;color:#7c899c;text-transform:uppercase;letter-spacing:.1em;font-weight:800;margin-top:16px}.facts dd{margin:4px 0 0;font-size:14px;overflow-wrap:anywhere}.facts .profile{border-radius:8px;aspect-ratio:1.1;object-fit:cover;object-position:center 35%;margin-bottom:22px}
.next-link{border-top:1px solid var(--line);margin:65px 0;padding:28px 0 48px;font-weight:750;font-size:13px}
.project-grid,.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;margin:0 0 48px}
.project-card{border:1px solid var(--line);border-radius:11px;overflow:hidden;background:#fff}.project-card>a img{width:100%;aspect-ratio:1.55;object-fit:cover;object-position:top}.card-body{padding:26px}.card-body h2{font-size:26px;margin:12px 0 9px}.card-body h2 a{text-decoration:none;color:#22283a}.card-body p{font-size:14px;color:#657186;line-height:1.75}.card-links{display:flex;flex-wrap:wrap;gap:18px;font-size:13px;font-weight:800}
.service-grid article{padding:30px 28px;background:#fff;border:1px solid var(--line);border-radius:12px}.service-grid article>span{font-size:12px;color:var(--blue);font-weight:800}.service-grid h2{font-size:25px;margin:16px 0 12px}.service-grid h3{font-size:17px;margin:20px 0 9px}.service-grid p,.service-grid li{color:var(--muted);font-size:14px;line-height:1.8}
.faq{max-width:840px;margin:48px 0}.faq h2{margin-bottom:24px}.bottom-cta{padding:34px;border-radius:12px;background:#eef0fc;margin-bottom:70px}.bottom-cta h2{font-size:30px}.bottom-cta p{color:#5f6b7c}
.note{color:#718093;font-size:12px;margin-bottom:70px}
.footer{background:#fff;border-top:1px solid var(--line)}.footer-inner{min-height:100px;display:flex;justify-content:space-between;gap:18px;align-items:center;color:#6b7788;font-size:12px}.footer-inner>div{display:flex;gap:18px;flex-wrap:wrap}.footer a{text-decoration:none;color:#59667d}
:focus-visible{outline:3px solid #6174ff;outline-offset:3px}
@media(max-width:900px){.detail-layout,.about-grid{grid-template-columns:1fr;gap:25px}.facts{max-width:500px}.nav nav{gap:14px}}
@media(max-width:640px){.container{width:min(100% - 32px,1140px)}.nav{flex-wrap:wrap;gap:8px;justify-content:center;padding:16px 0}.nav nav{width:100%;justify-content:space-between;gap:12px}.nav nav a{font-size:12px}.detail-head{padding:28px 0}.lede{font-size:16px}.project-grid,.service-grid{grid-template-columns:1fr;gap:17px}.card-body{padding:20px}.footer-inner{flex-direction:column;align-items:flex-start;justify-content:center;padding:22px 0}.footer-inner>div{gap:14px}.feature{margin-bottom:28px}.prose h2{font-size:25px}.next-link{margin:35px 0}.facts{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Shared premium MH monogram */
.brand {display:inline-flex;align-items:center;gap:11px;white-space:nowrap;}
.brand img {display:block;width:56px;height:43px;object-fit:contain;flex-shrink:0;}
.brand span {color:#222838;}
@media(max-width:640px){.brand{gap:9px}.brand img{width:50px;height:39px;}}

/* Expanded expertise & experience pages, consistent with minimalist light portfolio */
.skip{position:absolute;left:15px;top:-100px;z-index:100;background:#3448cc;color:#fff;padding:12px}.skip:focus{top:0}
.pro-expertise-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:40px}
.expertise-deep-card{scroll-margin-top:20px;background:#fff;border:1px solid #e0e4ec;border-radius:12px;padding:29px}
.expertise-deep-card h2{font-size:27px;letter-spacing:-.05em;margin:17px 0 12px}
.expertise-deep-card>p{font-size:14px;line-height:1.8;color:#627085}
.expertise-deep-card ul{padding:0;list-style:none;margin:19px 0}
.expertise-deep-card li{padding:9px 0 9px 18px;position:relative;border-bottom:1px solid #eef0f5;color:#415067;font-size:13px}
.expertise-deep-card li:before{position:absolute;left:0;top:9px;content:'•';color:#445bd1}
.expertise-deep-card .evidence{font-size:12px;font-weight:700;color:#4e61b2;border-radius:7px;background:#f3f5ff;padding:12px;margin:18px 0 0}
.proof-note{border:1px solid #dfe3ec;border-radius:12px;padding:25px;background:#f5f7fc;margin:0 0 55px}
.proof-note h2{font-size:21px}.proof-note p{color:#667086;font-size:13px;max-width:850px;line-height:1.8;margin:0}
.experience-library{display:grid;gap:18px;margin-bottom:40px}
.experience-library article{background:#fff;border:1px solid #e0e4ec;border-radius:12px;padding:31px;display:grid;grid-template-columns:1fr 1.15fr;gap:8px 40px}
.exp-lib-head{grid-row:span 3}.exp-lib-head>span{font-size:11px;letter-spacing:.1em;color:#485dbb;font-weight:800}
.exp-lib-head h2{font-size:29px;margin:15px 0}
.experience-library article>p{font-size:14px;color:#667084;line-height:1.8}
.stackline{font-size:12px;font-weight:800;color:#394eab}
.experience-library article .experience-proof{font-size:12px;color:#748097;margin-bottom:0}
.experience-context{max-width:850px;margin-bottom:42px}
.service-link{display:inline-block;font-size:12px;font-weight:800;margin-top:16px}
@media(max-width:820px){.pro-expertise-grid{grid-template-columns:1fr}.experience-library article{grid-template-columns:1fr}.exp-lib-head{grid-row:auto}.nav nav{flex-wrap:wrap;justify-content:center;gap:10px 18px}.nav nav a{font-size:12px}}
@media(max-width:640px){.expertise-deep-card{padding:22px}.expertise-deep-card h2{font-size:24px}.experience-library article{padding:23px}.experience-library h2{font-size:24px}.nav{gap:13px}.brand{justify-content:center}.nav nav{justify-content:center;gap:8px 14px}.nav nav a{font-size:12px}}

/* Conversion UX for service selection and project-specific inquiries */
.service-hero-micro{font-size:12px;color:#697589;line-height:1.8;margin:17px 0 0}
.engagement-process{margin:63px 0 56px;padding:35px;border-radius:15px;border:1px solid #e1e6f2;background:#f5f7ff}
.engagement-head{max-width:740px}
.engagement-head h2{font-size:clamp(25px,3vw,38px);line-height:1.25;margin:14px 0}
.engagement-head>p{color:#66758b;font-size:13px;line-height:1.85}
.engagement-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0;margin:25px 0 28px}
.engagement-steps li{border:1px solid #e2e6f1;background:#fff;padding:21px;border-radius:10px}
.engagement-steps li>span{font-size:11px;font-weight:800;color:#4057c7}
.engagement-steps h3{font-size:17px;line-height:1.35;margin:14px 0 8px}
.engagement-steps p{color:#68758a;font-size:12px;line-height:1.83;margin:0}
.project-inquiry-cta{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#f3f5fc;border:1px solid #e1e6f2;border-radius:12px;padding:27px 29px;margin:24px 0 35px}
.project-inquiry-cta h2{font-size:24px;line-height:1.35;margin:10px 0 5px}
.project-inquiry-cta p{font-size:12px;color:#64738a;line-height:1.75;margin:0}
.project-inquiry-cta .button{flex-shrink:0}
.project-card .card-links .inquiry-link{font-weight:800;color:#3448c1}
@media(max-width:780px){.engagement-steps{grid-template-columns:1fr}.project-inquiry-cta{flex-direction:column;align-items:flex-start}.engagement-process{padding:25px}}
@media(max-width:480px){.engagement-process{margin:45px 0 38px}.project-inquiry-cta{padding:22px}.project-inquiry-cta .button{flex-shrink:1}}

/* Fix 5: mobile page navigation and touch accessibility */
.nav nav a{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:9px 5px;border-radius:7px;
}
.breadcrumbs{color:#53627b}
.breadcrumbs a{display:inline-flex;align-items:center;min-height:44px;padding-inline:3px}
.card-links a,.service-link,.footer a{
  display:inline-flex;align-items:center;min-height:44px;
}
.nav nav a:focus-visible,.button:focus-visible,.card-links a:focus-visible,
.breadcrumbs a:focus-visible{
  outline:3px solid #3448cc;outline-offset:3px;
}
@media(max-width:720px){
  .nav{padding-block:12px}
  .nav nav{
    display:flex;flex-wrap:wrap;justify-content:center;
    align-items:center;gap:4px 8px;width:100%;
  }
  .nav nav a{
    font-size:14px;min-height:44px;padding:10px 12px;
    line-height:1.35;white-space:nowrap;
  }
}
@media(max-width:390px){
 .nav nav{gap:2px 5px}
 .nav nav a{padding-inline:9px}
}
@media(prefers-reduced-motion:reduce){
 *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}
}
