@charset "UTF-8";
:root{--navy:#071b36;--navy2:#102d50;--blue:#1465ed;--cyan:#69d5ff;--ink:#12263f;--muted:#53657a;--pale:#f1f6fc;--border:#d9e3ef;--white:#fff;--max:1200px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:16px;line-height:1.65;color:var(--ink);background:#fff}a{color:inherit;text-underline-offset:5px}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #168bc5;outline-offset:5px}p{margin:0 0 1.15em}h1,h2,h3,h4{line-height:1.15;letter-spacing:-.035em;margin:0}h2{font-size:clamp(2rem,3.5vw,3rem);font-weight:650}h3{font-size:1.55rem}img{max-width:100%}.wrap{width:min(var(--max),calc(100% - 96px));margin:auto}.header{position:sticky;top:0;background:rgba(255,255,255,.98);z-index:20;border-bottom:1px solid var(--border)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;min-height:92px;gap:28px}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;font-size:1.1rem;font-weight:700;white-space:nowrap}.brand small{display:block;font-size:.75rem;letter-spacing:.2em;font-weight:600;color:var(--muted)}.monogram{font-size:2.1rem;letter-spacing:-.12em;line-height:1;border-right:1px solid var(--border);padding-right:16px}.monogram span{color:var(--blue)}nav{display:flex;gap:28px;align-items:center}nav a{font-size:.9rem;font-weight:600;text-decoration:none}nav a:hover{color:var(--blue)}.nav-contact{background:var(--navy);color:white;padding:10px 22px;border-radius:5px}.nav-contact:hover{background:var(--blue);color:white}.menu-toggle{display:none}.skip{position:fixed;left:20px;top:-100px;z-index:100;background:#fff;padding:12px}.skip:focus{top:8px}.hero{background:var(--navy);color:white;position:relative;overflow:hidden;background-image:radial-gradient(ellipse at 92% 25%,#13466b 0,transparent 58%)}.hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;padding:83px 0 71px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;line-height:1.5;margin-bottom:23px;display:flex;align-items:center;gap:12px}.line{width:24px;height:2px;background:var(--cyan)}.blue{color:#1253bc}.cyan{color:var(--cyan)}h1{font-size:clamp(3.5rem,5.4vw,5.1rem);font-weight:650;letter-spacing:-.055em;line-height:1.04;margin-bottom:28px}h1 span{color:var(--cyan)}.hero-intro{font-size:1.1rem;color:#c6d7e9;max-width:570px;line-height:1.7}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}.button{display:inline-flex;justify-content:center;align-items:center;text-align:center;min-height:50px;padding:12px 21px;font-weight:650;font-size:.9rem;line-height:1.5;text-decoration:none;border:1px solid transparent;border-radius:5px;transition:background .16s,transform .16s}.button:hover{transform:translateY(-2px)}.primary{background:var(--blue);color:#fff}.primary:hover{background:#0756d6}.ghost{color:white;border-color:#56718f;background:transparent}.ghost:hover{background:#173653}.white{background:#fff;color:var(--navy)}.hero-note{font-size:.75rem;color:#b6c9df;line-height:1.8;margin:26px 0 0}.hero-note span{padding:0 9px;color:#7596b7}.hero-side{padding-top:12px;align-self:center}.path-heading{display:flex;justify-content:space-between;gap:15px;color:#9ebbd8;font-size:.75rem;letter-spacing:.12em;border-bottom:1px solid #34526f;padding-bottom:21px}.ai-path{list-style:none;margin:0;padding:0}.ai-path li{display:flex;gap:21px;padding:25px 0;border-bottom:1px solid #34526f}.step-num{font-size:.8rem;color:var(--cyan);border:1px solid #52728f;border-radius:50%;width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;margin-top:1px}.ai-path h2{font-size:1.35rem;letter-spacing:-.015em}.ai-path p{color:#b9cde1;font-size:.9rem;margin:7px 0}.path-tag{color:var(--cyan);font-size:.75rem;letter-spacing:.15em}.side-feature{display:flex;gap:17px;align-items:center;text-decoration:none;padding:21px 0 0}.feature-icon{width:51px;height:51px;flex:0 0 51px;background:#1b4c76;display:grid;place-items:center;font-size:1.15rem;border:1px solid #477a9e;border-radius:10px}.side-feature small{font-size:.75rem;letter-spacing:.16em;display:block;color:var(--cyan)}.side-feature strong{display:block;font-size:1.12rem;font-weight:600}.side-domain{font-size:.75rem;color:#b9cde1}.live-label{font-size:.75rem;letter-spacing:.08em;margin-left:auto;border:1px solid #466a88;padding:4px 8px;white-space:nowrap}.proof{border-bottom:1px solid var(--border);background:#f7faff}.proof-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1.25fr;align-items:center;padding:30px 0;gap:35px}.proof p{font-size:.9rem;margin:0;line-height:1.6;color:var(--muted)}.proof p strong{font-size:.9rem;color:var(--ink);letter-spacing:0}.proof-grid>div{padding-left:30px;border-left:1px solid var(--border)}.proof strong{display:block;font-size:2rem;letter-spacing:-.05em;line-height:1.2}.proof span{display:block;font-size:.75rem;color:var(--muted);margin-top:5px}.section{padding:90px 0;scroll-margin-top:0}.section-heading{display:grid;grid-template-columns:1.35fr 1fr;gap:100px;align-items:end;margin-bottom:44px}.section-heading p:last-child:not(.eyebrow){color:var(--muted);font-size:1rem;margin-bottom:3px}.section-heading .eyebrow{margin-bottom:18px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border);border-radius:8px;overflow:hidden}.service{padding:30px;display:flex;flex-direction:column;gap:0;background:white}.service+.service{border-left:1px solid var(--border)}.service-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:31px}.service-index{font-size:.75rem;letter-spacing:.1em;font-weight:700;color:var(--muted)}.simple-icon{font-size:1.9rem;line-height:1;color:var(--blue)}.service h3{margin-bottom:18px}.service p{font-size:.95rem;color:var(--muted)}.service ul{font-size:.85rem;padding:0;list-style:none;margin:3px 0 27px}.service li{padding:8px 0;border-bottom:1px solid #edf1f7}.service li:before{content:"+";font-weight:600;color:var(--blue);padding-right:10px}.text-link{font-weight:650;font-size:.9rem;color:#1253bc}.service .text-link{margin-top:auto}.foundation{margin-top:24px;display:flex;justify-content:space-between;gap:25px;font-size:.8rem}.foundation p{margin:0;color:var(--muted)}.personal-services{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;background:var(--pale);padding:32px;margin-top:35px;border-radius:8px;border-left:4px solid var(--blue)}.personal-services h3{margin-bottom:14px}.personal-services p{color:var(--muted);font-size:.95rem}.personal-services ul{margin:0 0 18px;padding-left:20px;color:var(--muted);font-size:.95rem}.portfolio{background:var(--pale)}.featured-project{display:grid;grid-template-columns:1.1fr 1fr;background:var(--navy);color:white;border-radius:10px;overflow:hidden}.project-copy{padding:46px 48px}.project-copy h3{font-size:2.9rem;margin-bottom:20px}.project-lead{font-size:1.4rem;line-height:1.4;color:#fff!important}.project-copy>p{color:#c4d4e6;font-size:.95rem}.project-copy .eyebrow{color:var(--cyan);font-size:.75rem}.tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.tags span{font-size:.75rem;padding:4px 10px;border:1px solid #48637f;border-radius:3px;color:#cbe0f3}.link-caption{font-size:.75rem!important;margin:12px 0 0}.project-detail{margin:42px 0;padding:0 42px;border-left:1px solid #34526f}.detail-kicker{font-size:.75rem;letter-spacing:.14em;color:#9bbbd8}.project-detail>div{display:flex;gap:19px;padding:24px 0;border-bottom:1px solid #34526f}.project-detail>div:last-child{border:0;padding-bottom:0}.project-detail>div>span{font-size:.75rem;color:var(--cyan);padding-top:3px}.project-detail h4{font-size:1.15rem;margin:0 0 8px;letter-spacing:-.02em}.project-detail p{font-size:.88rem;color:#b5cbe0;line-height:1.6;margin:0}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:24px}.project-card{padding:32px;background:white;border:1px solid var(--border);border-radius:8px}.project-card .eyebrow{font-size:.75rem;margin-bottom:18px}.project-card h3{margin-bottom:16px}.project-card>p:not(.eyebrow){font-size:.95rem;color:var(--muted)}.tags.light span{border-color:var(--border);color:var(--muted);background:#f5f8fc}.project-card details{border-top:1px solid var(--border)}summary{cursor:pointer;list-style:none;font-weight:600;position:relative;padding:18px 35px 18px 0}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:2px;top:15px;font-size:1.4rem;color:var(--blue);font-weight:400}details[open]>summary:after{content:"−"}details p{font-size:.95rem;color:var(--muted);padding-right:20px}details a{color:#1253bc}.project-card summary{font-size:.85rem;padding-bottom:0}.project-card details[open] summary{padding-bottom:16px}.portfolio-foot{display:flex;justify-content:space-between;gap:30px;margin-top:28px;font-size:.8rem;color:var(--muted)}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.approach-grid>div{border-top:2px solid #bfdbfb;padding-top:25px}.approach-grid span{font-size:.8rem;color:var(--blue);font-weight:700}.approach-grid h3{margin:18px 0 15px;font-size:1.35rem}.approach-grid p{color:var(--muted);font-size:.95rem;margin-bottom:0}.about{background:var(--navy);color:white}.about-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:100px}.about h2{margin-bottom:25px}.about p{color:#b9cce0}.about p.eyebrow{color:var(--cyan)}.about-intro{font-size:1.16rem}.about-aside{padding:0 0 0 35px;border-left:1px solid #36516e}.about-aside dl{margin:0}.about-aside dl>div{margin-bottom:23px}.about-aside dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#90b3d2;margin-bottom:7px}.about-aside dd{margin:0;line-height:1.5;font-size:.95rem}.about-aside dd span{color:#a9c1d8;font-size:.85rem}.personal-note{display:flex;align-items:center;gap:20px;padding-top:20px;border-top:1px solid #36516e;margin-top:30px}.personal-note img{object-fit:contain;width:72px;height:112px;object-position:top}.personal-note h3{font-size:1rem}.personal-note p{font-size:.8rem;margin:9px 0}.personal-note a{font-size:.8rem;color:var(--cyan)}.faq-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:70px}.faq details{border-bottom:1px solid var(--border)}.faq details:first-child{border-top:1px solid var(--border)}.contact{background:#0d3159;color:#fff;padding:70px 0}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:center}.contact h2{font-size:clamp(2.3rem,3.7vw,3.4rem);margin-bottom:22px}.contact p:not(.eyebrow){color:#bdd3e8;max-width:520px;margin-bottom:0}.contact-panel{display:flex;align-items:flex-start;flex-direction:column;gap:10px;border-left:1px solid #456482;padding-left:45px}.contact-panel .button{margin-bottom:15px}.contact-panel a:not(.button){font-size:1rem}.contact-panel span{color:#bdd3e8;font-size:.9rem}.contact-panel small{color:#b2c9de;font-size:.75rem;margin-top:8px}footer{padding:30px 0;background:#f7faff}.footer-grid{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-grid>p{font-size:.75rem;color:var(--muted);margin:0}.footer-grid>div{display:flex;gap:23px;font-size:.8rem}.footer-grid .brand{font-size:.9rem}.footer-grid .monogram{font-size:1.8rem}.page-hero{background:var(--navy);color:#fff;padding:65px 0}.page-hero h1{font-size:clamp(2.7rem,5vw,4.5rem);margin-bottom:20px}.page-hero p{max-width:740px;color:#c3d4e6}.resume-layout{display:grid;grid-template-columns:2fr 1fr;gap:65px}.resume-layout h2{font-size:1.8rem;margin-bottom:28px}.experience{border-bottom:1px solid var(--border);padding:0 0 28px;margin-bottom:30px}.experience h3{font-size:1.3rem;margin-bottom:9px}.experience .meta{color:#1253bc;font-weight:600;font-size:.85rem}.experience ul{padding-left:20px;color:var(--muted)}.experience li{margin-bottom:9px}.resume-aside{background:var(--pale);padding:28px;border-radius:8px;height:fit-content}.resume-aside h3{font-size:1.15rem;margin-bottom:18px}.resume-aside p,.resume-aside li{font-size:.9rem;color:var(--muted)}.resume-aside ul{padding-left:20px}.resume-aside hr{border:0;border-top:1px solid var(--border);margin:28px 0}.music-layout{display:grid;grid-template-columns:220px 1fr;max-width:900px;gap:60px}.music-portrait{background:var(--pale);border-radius:8px;display:grid;place-items:center;padding:30px;align-self:start}.music-portrait img{width:150px;height:auto}.music-copy h2{font-size:1.6rem;margin-bottom:20px}.music-copy p{color:var(--muted)}
@media(min-width:1450px){.hero-grid{padding-top:96px;padding-bottom:88px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero-grid{gap:38px}.hero h1{font-size:4rem}.section-heading{gap:50px}.nav-wrap{gap:20px}nav{gap:18px}.service{padding:24px}.foundation{display:block}.foundation p{margin-top:7px}.about-grid{gap:45px}.project-copy{padding:35px}.project-detail{padding:0 30px}.contact-panel{padding-left:30px}.live-label{display:none}}
@media(max-width:1000px){.wrap{width:calc(100% - 40px)}.nav-wrap{min-height:78px;flex-wrap:wrap;gap:0}.brand{font-size:1rem}.monogram{font-size:1.9rem}.menu-toggle:not([hidden]){display:flex;gap:13px;align-items:center;background:transparent;border:1px solid var(--border);border-radius:4px;padding:7px 12px;font-size:.85rem}.js nav{display:none}.js nav.is-open,nav{display:flex;flex-basis:100%;flex-direction:column;align-items:stretch;gap:0;padding:10px 0 20px}.js nav a,nav a{padding:12px 15px}.hero-grid{grid-template-columns:1fr;padding:55px 0;gap:40px}.hero h1{font-size:clamp(3.2rem,8vw,4.8rem)}.hero-intro{max-width:620px}.hero-side{max-width:600px;width:100%;padding:0}.ai-path li{padding:20px 0}.hero-note{max-width:500px}.live-label{display:block}.proof-grid{grid-template-columns:1fr 1fr;gap:24px}.proof-grid>div{padding-left:18px}.proof-grid>div:nth-child(3){border-left:0;padding-left:0}.proof strong{font-size:1.8rem}.section{padding:60px 0}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.section-heading>p{max-width:590px}.services-grid{grid-template-columns:1fr}.service{padding:30px}.service+.service{border-left:0;border-top:1px solid var(--border)}.service-top{margin-bottom:20px}.service ul{margin-bottom:22px}.personal-services{grid-template-columns:1fr;gap:15px;padding:26px}.featured-project{grid-template-columns:1fr}.project-detail{border-left:0;border-top:1px solid #34526f;margin:0 35px 35px;padding:25px 0 0}.project-grid{gap:18px}.project-card{padding:25px}.portfolio-foot{flex-direction:column;gap:12px}.approach-grid{gap:25px}.about-grid{grid-template-columns:1fr;gap:45px}.about-aside{padding:30px 0 0;border-left:0;border-top:1px solid #36516e}.faq-grid{grid-template-columns:1fr;gap:30px}.contact-grid{grid-template-columns:1fr;gap:30px}.contact-panel{padding:25px 0 0;border-left:0;border-top:1px solid #456482}.contact{padding:55px 0}.footer-grid{flex-wrap:wrap}.footer-grid>div{flex-basis:100%}.resume-layout{grid-template-columns:1fr;gap:25px}.music-layout{grid-template-columns:150px 1fr;gap:30px}.music-portrait{padding:15px}html{scroll-padding-top:90px}}
@media(max-width:520px){.hero .eyebrow{font-size:.75rem;letter-spacing:.12em}.hero h1{font-size:3.3rem}.hero-intro{font-size:1rem}.actions{flex-direction:column;align-items:stretch}.hero-note span{padding:0 3px}.hero-note{font-size:.75rem}.proof-grid{gap:24px 15px}.proof span{font-size:.75rem}.section h2{font-size:2rem}.project-grid{grid-template-columns:1fr}.project-copy{padding:28px}.project-copy h3{font-size:2.5rem}.project-detail{margin:0 28px 28px}.approach-grid{grid-template-columns:1fr;gap:27px}.approach-grid h3{margin:12px 0}.approach-grid>div{padding-top:18px}.live-label{font-size:.75rem;padding:4px}.side-feature{gap:12px}.path-heading{font-size:.75rem}.ai-path h2{font-size:1.22rem}.footer-grid>div{gap:18px;flex-wrap:wrap}.music-layout{grid-template-columns:1fr}.music-portrait{width:180px}.email{overflow-wrap:anywhere}.resume-aside{padding:24px}.page-hero{padding:45px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
@media print{.header,footer,.contact,.menu-toggle,.actions,.skip{display:none!important}.wrap{width:100%}.page-hero{background:white;color:black;padding:10px 0}.page-hero p{color:black}.section{padding:20px 0}.resume-layout{display:block}.resume-aside{background:white;padding:0}.experience{break-inside:avoid}body{font-size:11pt}.page-hero h1{font-size:28pt}a{color:inherit}.resume-aside hr{margin:15px 0}}


.form-layout{display:grid;grid-template-columns:1fr 1.25fr;gap:80px;max-width:1100px}.form-layout h2{margin-bottom:25px}.form-layout>div>p:not(.eyebrow){color:var(--muted)}.inquiry-form{display:flex;flex-direction:column;gap:10px;padding:32px;background:var(--pale);border:1px solid var(--border);border-radius:8px}.inquiry-form label{font-weight:600;font-size:.95rem}.inquiry-form label span{font-weight:400;color:var(--muted);font-size:.8rem}.inquiry-form input,.inquiry-form textarea,.inquiry-form select{font:inherit;font-size:1rem;color:var(--ink);border:1px solid #99acc1;border-radius:4px;background:white;padding:12px;min-width:0;width:100%;margin-bottom:12px}.inquiry-form textarea{resize:vertical}.inquiry-form :is(input,textarea,select):focus-visible{outline:3px solid #168bc5;outline-offset:2px}.form-note{font-size:.85rem;color:var(--muted)}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-error{background:#fff2f2;border:1px solid #af3030;padding:18px;color:#852222!important;border-radius:5px}.form-success{background:var(--pale);border:1px solid var(--border);padding:35px;border-radius:8px}.form-success h2{font-size:2rem}.inquiry-form .button{cursor:pointer;align-self:flex-start} @media(max-width:800px){.form-layout{grid-template-columns:1fr;gap:30px}.inquiry-form{padding:24px}}
