@import "https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@0;1&family=Source+Sans+3:wght@400;500;600;700&display=swap";
:root{--ink:#102238;--ink-2:#24384f;--paper:#f6f2e9;--paper-2:#fffaf0;--steel:#6d7781;--line:#10223829;--orange:#d85c27;--blue:#1f6d85;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:"Source Sans 3",sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.hero{min-height:78svh;color:var(--white);isolation:isolate;position:relative;overflow:hidden}.homeHero{min-height:82svh}.homeHero .heroImage{object-position:58% 50%}.homeHero .heroShade{background:linear-gradient(90deg,#091624e6 0%,#09162494 38%,#09162414 100%),linear-gradient(#0916240d,#0916246b)}.teamHero{min-height:74svh}.teamHeroImage{object-position:74% 24%}.heroImage{z-index:-3;object-fit:cover;object-position:center;width:100%;height:100%;animation:18s ease-out forwards slowLift;position:absolute;inset:0;transform:scale(1.04)}.heroShade{z-index:-2;background:linear-gradient(90deg,#091624eb 0%,#091624b3 38%,#0916242e 100%),linear-gradient(#0916241a,#0916248a);position:absolute;inset:0}.nav{z-index:2;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:linear-gradient(90deg,#07111cc7,#07111c57),#07111c33;border-bottom:1px solid #ffffff2e;justify-content:space-between;align-items:center;gap:24px;width:100%;margin:0 auto;padding:18px max(20px,50vw - 590px);display:flex;position:relative;box-shadow:0 14px 36px #0000001f}.brand{background:0 0;align-items:center;width:273px;padding:0;display:inline-flex}.brand:focus-visible,.navLinks a:focus-visible,.mobileMenu summary:focus-visible,.mobileMenuLinks a:focus-visible,.button:focus-visible,.aboutSummaryBody a:focus-visible,.contactPanel a:focus-visible,.serviceRow summary:focus-visible,.serviceDetail a:focus-visible,.teamHeaderLink:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.navLinks{background:#07111c3d;border:1px solid #fff3;align-items:center;gap:10px;padding:8px;display:flex}.navLinks a{color:#ffffffd1;text-transform:uppercase;padding:10px 14px;font-size:.92rem;font-weight:700;transition:color .18s,background-color .18s}.navLinks a:hover{color:var(--white);background:#ffffff1f}.mobileMenu{display:none;position:relative}.mobileMenu summary{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;background:#07111c7a;border:1px solid #ffffff47;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:46px;height:46px;list-style:none;display:inline-flex}.mobileMenu summary::-webkit-details-marker{display:none}.mobileMenu summary span{background:var(--white);width:19px;height:2px;transition:opacity .18s,transform .18s}.mobileMenu[open] summary span:first-child{transform:translateY(7px)rotate(45deg)}.mobileMenu[open] summary span:nth-child(2){opacity:0}.mobileMenu[open] summary span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.mobileMenuLinks{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#07111ce6;border:1px solid #ffffff38;min-width:min(72vw,250px);padding:8px;display:grid;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 20px 50px #0000003d}.mobileMenuLinks a{color:#ffffffdb;text-transform:uppercase;padding:13px 14px;font-size:.92rem;font-weight:800}.mobileMenuLinks a:hover{color:var(--white);background:#ffffff1f}.heroContent{width:min(1180px,100% - 40px);margin:0 auto;padding:clamp(44px,9vw,110px) 0 72px;animation:.7s both contentIn}.eyebrow{color:var(--orange);letter-spacing:0;text-transform:uppercase;margin:0 0 16px;font-size:.76rem;font-weight:800}.homeHero .eyebrow,.tapPlansHero .eyebrow{font-size:clamp(1.2rem,1.43vw,1.37rem);line-height:1.2}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Instrument Serif,Georgia,serif;font-weight:400;line-height:.96}h1{max-width:850px;margin-bottom:24px;font-size:clamp(3.6rem,8.2vw,8.8rem)}h2{max-width:790px;margin-bottom:22px;font-size:clamp(2.5rem,5vw,5.8rem)}h3{margin-bottom:12px;font-size:1.2rem;line-height:1.15}.heroCopy{color:#ffffffd1;max-width:560px;margin-bottom:30px;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.45}.heroActions{flex-wrap:wrap;gap:12px;display:flex}.button{justify-content:center;align-items:center;min-height:50px;padding:14px 20px;font-weight:800;transition:transform .18s,background-color .18s,color .18s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--orange);color:var(--white)}.button.secondary{color:var(--white);border:1px solid #ffffff4d}.intro{background:var(--orange);color:var(--white);grid-template-columns:1fr auto;gap:20px;padding:28px max(20px,50vw - 590px);display:grid}.intro p,.intro span{margin:0;font-size:clamp(1.05rem,2.4vw,1.65rem);font-weight:700}.intro span{color:#ffffffc7}.teamIntro{border-bottom:1px solid var(--line);background:var(--paper);color:var(--ink);grid-template-columns:minmax(0,.95fr) minmax(280px,.55fr);align-items:end;gap:clamp(28px,6vw,90px);padding-top:clamp(54px,8vw,92px);padding-bottom:clamp(50px,7vw,84px)}.teamIntro p{max-width:720px;font-family:Instrument Serif,Georgia,serif;font-size:clamp(2.7rem,5.4vw,6rem);font-weight:400;line-height:.96}.teamIntro span{border-top:2px solid var(--orange);max-width:360px;color:var(--ink-2);padding-top:18px;font-size:clamp(1rem,1.35vw,1.18rem);font-weight:700;line-height:1.45;position:relative}.section{width:min(1180px,100% - 40px);margin:0 auto;padding:clamp(72px,11vw,128px) 0}.sectionHeader{grid-template-columns:.9fr 1.6fr;align-items:end;gap:32px;margin-bottom:48px;display:grid}.services .sectionHeader{margin-bottom:38px;display:block}.services .sectionHeader .eyebrow{text-transform:none;margin-bottom:0;font-family:Instrument Serif,Georgia,serif;font-size:clamp(1.8rem,3vw,3.2rem);font-weight:400;line-height:1}.aboutSummary{border-bottom:1px solid var(--line);grid-template-columns:.9fr 1.1fr;align-items:center;gap:clamp(34px,7vw,92px);padding-top:clamp(76px,10vw,116px);padding-bottom:clamp(66px,9vw,108px);display:grid}.aboutSummary h2{max-width:680px;margin-bottom:0;font-size:clamp(2.55rem,4.9vw,5.5rem)}.aboutSummaryBody{gap:clamp(26px,4vw,38px);padding-top:12px;display:grid}.aboutSummaryBody p{max-width:660px;color:var(--ink-2);margin:0;font-size:clamp(1.16rem,1.55vw,1.38rem);line-height:1.62}.aboutSummaryLead{border-left:4px solid var(--orange);padding-left:clamp(18px,2vw,28px)}.aboutSummaryList{border-top:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.aboutSummaryList li{border-bottom:1px solid var(--line);color:var(--ink);padding:17px 0 17px 34px;font-size:clamp(1rem,1.2vw,1.12rem);font-weight:800;line-height:1.28;position:relative}.aboutSummaryList li:before{border:2px solid var(--blue);content:"";border-radius:50%;width:10px;height:10px;position:absolute;top:1.55em;left:2px}.aboutSummaryBody a{color:var(--orange);text-transform:uppercase;justify-self:start;font-size:.78rem;font-weight:800;transition:color .18s}.aboutSummaryBody a:hover{color:var(--ink)}.serviceGrid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid}.serviceList{border-top:1px solid var(--line);display:grid}.serviceRow{border-bottom:1px solid var(--line);transition:color .18s}.serviceRow summary{cursor:pointer;grid-template-columns:minmax(0,max-content) auto;align-items:center;gap:18px;min-height:88px;padding:22px 0;list-style:none;transition:color .18s,padding-left .18s;display:grid}.serviceRow summary::-webkit-details-marker{display:none}.serviceRow summary:after{content:"+";border:1px solid var(--line);width:34px;height:34px;color:var(--orange);grid-area:1/2;place-items:center;font-family:"Source Sans 3",sans-serif;font-size:1.25rem;font-weight:700;line-height:1;transition:transform .18s,background-color .18s,color .18s;display:inline-grid}.serviceRow summary:hover{color:var(--orange);padding-left:12px}.serviceRow[open] summary{color:var(--orange)}.serviceRow[open] summary:after{background:var(--orange);color:var(--white);transform:rotate(45deg)}.serviceRow span{font-family:Instrument Serif,Georgia,serif;font-size:clamp(1.8rem,3vw,3.2rem);line-height:1}.serviceDetail{grid-template-columns:minmax(0,.9fr) auto;align-items:start;gap:24px;padding:0 0 28px clamp(0px,7vw,96px);animation:.22s both serviceDetailIn;display:grid}.serviceDetail p{color:var(--ink-2);margin:0;font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:1.5}.serviceDetail a{color:var(--orange);text-transform:uppercase;white-space:nowrap;font-size:.78rem;font-weight:800;transition:color .18s}.serviceDetail a:hover{color:var(--ink)}.service{border-bottom:1px solid var(--line);min-height:260px;padding:28px 28px 28px 0}.service+.service{border-left:1px solid var(--line);padding-left:28px}.service span{background:var(--blue);width:52px;height:5px;margin-bottom:34px;display:block}.service p,.muted,.proofText p,.approachStack p{color:var(--ink-2);font-size:1.08rem;line-height:1.55}.proofText h2{font-size:clamp(2.35rem,4.2vw,4.8rem);line-height:1}.split{grid-template-columns:1.1fr .9fr;align-items:start;gap:clamp(36px,7vw,96px);display:grid}.timeline{border-top:1px solid var(--line);gap:0;margin:0;padding:0;list-style:none;display:grid}.timeline li{border-bottom:1px solid var(--line);grid-template-columns:72px 1fr;gap:18px;padding:22px 0;display:grid}.timeline span{color:var(--orange);font-weight:800}.timeline p{margin:0;font-size:1.2rem;font-weight:700}.approachStack{border-top:1px solid var(--line);gap:0;display:grid}.homeApproach .approachStack{border-top:0}.approachStack article{border-bottom:1px solid var(--line);padding:24px 0}.approachStack h3{font-family:Instrument Serif,Georgia,serif;font-size:clamp(1.6rem,2.4vw,2.5rem);font-weight:400}.proof{grid-template-columns:.75fr 1.25fr;align-items:center;gap:44px;display:grid}.diagram{border:1px solid var(--line);background:var(--white);margin:0;overflow:hidden}.diagram img{width:100%;transition:transform .5s}.diagram:hover img{transform:scale(1.025)}.fieldStrip{background:var(--ink);grid-template-columns:repeat(3,1fr);gap:0;display:grid}.fieldStrip figure{min-height:430px;margin:0;position:relative;overflow:hidden}.fieldStrip img{object-fit:cover;filter:saturate(.88);width:100%;height:100%;min-height:430px;transition:transform .6s,filter .6s}.fieldStrip figure:hover img{filter:saturate();transform:scale(1.04)}.fieldStrip figcaption{color:var(--ink);background:#f6f2e9eb;padding:10px 12px;font-weight:800;position:absolute;bottom:22px;left:22px}.teamSection{padding-bottom:clamp(58px,8vw,96px)}.homeTeam{border-top:1px solid var(--line)}.teamSection .sectionHeader .eyebrow,.teamApproach .eyebrow{text-transform:none;font-family:Instrument Serif,Georgia,serif;font-size:clamp(1.8rem,3vw,3.2rem);font-weight:400;line-height:1}.teamHeaderLink{transition:color .18s,transform .18s;display:inline-flex}.teamHeaderLink:hover{color:var(--ink);transform:translate(4px)}.teamGrid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.teamPortrait{background:var(--ink);flex-direction:column;min-height:clamp(420px,48vw,640px);margin:0;display:flex;position:relative;overflow:hidden}.teamPortrait img{object-fit:cover;object-position:center 22%;filter:saturate(.94)contrast(1.02);flex:1;width:100%;min-height:clamp(420px,48vw,640px);transition:transform .6s,filter .6s}.teamPortrait figcaption{background:var(--ink);color:var(--white);padding:16px 18px 18px;font-size:clamp(1rem,1.3vw,1.15rem);font-weight:800;line-height:1.2}.teamPortrait:hover img{filter:saturate(1.04)contrast(1.02);transform:scale(1.035)}.contact{background:var(--ink);color:var(--white);grid-template-columns:1.2fr .8fr;align-items:center;gap:48px;padding:clamp(72px,10vw,130px) max(20px,50vw - 590px);display:grid}.contact h2{margin-bottom:0}.contact .eyebrow{text-transform:none;margin-bottom:24px;font-family:Instrument Serif,Georgia,serif;font-size:clamp(1.8rem,3vw,3.2rem);font-weight:400;line-height:1}.contactPanel{color:#ffffffc7;gap:22px;font-size:1.2rem;display:grid}.contactActions{flex-wrap:wrap;gap:12px;display:flex}.contactActions .button.secondary{background:0 0}.contactPanel p{margin:0;line-height:1.5}.contactEmail{color:var(--white);text-underline-offset:.18em;text-decoration-color:#ffffff73}.contactEmail:hover{color:var(--orange);text-decoration-color:currentColor}@keyframes contentIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes slowLift{to{transform:scale(1)}}@keyframes serviceDetailIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:820px){.hero{min-height:84svh}.nav{align-items:center;padding:14px 20px}.brand{width:208px;padding:0}.navLinks{display:none}.mobileMenu{display:block}h1{font-size:clamp(3.2rem,16vw,5.8rem)}.intro,.sectionHeader,.aboutSummary,.split,.proof,.contact,.serviceGrid,.fieldStrip,.teamGrid{grid-template-columns:1fr}.service,.service+.service{border-left:0;min-height:auto;padding:28px 0}.fieldStrip figure,.fieldStrip img,.teamPortrait,.teamPortrait img{min-height:320px}.teamHeroImage{object-position:56% 20%}.timeline li{grid-template-columns:1fr;gap:6px}.timeline p{font-size:1.08rem}.serviceRow summary{grid-template-columns:minmax(0,1fr) auto;gap:10px}.serviceRow summary:after{grid-area:1/2/span 2;justify-self:end}.serviceDetail{grid-template-columns:1fr;gap:14px;padding-left:0}.serviceDetail a{white-space:normal}}
