
:root{--bg:#F8F6F0;--bg-soft:#F2EEE6;--sand:#E8E0D3;--greige:#C9C1B5;--ink-deep:#3F3A33;--ink:#282824;--taupe:#81786B;--taupe-text:#6E665A;--brand:#4F74CF;--on-dark:#F2EEE6;--on-dark-muted:#C9C1B5;--serif:"Cormorant Garamond","EB Garamond",Garamond,"Times New Roman",serif;--sans:"Manrope","Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--s6:96px;--s7:144px;--maxw:1240px;--gutter:clamp(20px,5vw,64px);color-scheme:light}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{max-width:100%;height:auto;display:block}h1,h2,h3{margin:0;font-family:var(--serif);font-weight:400;color:var(--ink-deep);text-wrap:balance}p{margin:0}a:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:2px}.wrap{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}.label{font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--taupe-text)}
.bb-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:10;background:var(--bg);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:saturate(1.1) blur(6px);-webkit-backdrop-filter:saturate(1.1) blur(6px);border-bottom:1px solid transparent}.bb-header .wrap{height:80px;display:flex;align-items:center}.bb-header img{width:172px}.bb-hero .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:var(--s6);align-items:center;min-height:min(calc(86vh - 80px),860px);padding-block:var(--s5) var(--s6)}.bb-hero__text{display:grid;gap:var(--s4)}.bb-hero h1{font-size:clamp(40px,5.2vw,70px);line-height:1.04;letter-spacing:-.012em;font-weight:400}.bb-hero h1 em{font-style:italic;color:var(--ink-deep)}.bb-hero__lead{font-size:clamp(18px,1.5vw,20px);line-height:1.6;max-width:34em;color:var(--ink)}.bb-services{display:flex;flex-wrap:wrap;gap:6px 0;padding-top:var(--s3);border-top:1px solid var(--greige);font-size:14px;font-weight:500;letter-spacing:.02em;color:var(--ink-deep);list-style:none;margin:0;padding-left:0}.bb-services li:not(:last-child)::after{content:"·";margin-inline:12px;color:var(--taupe)}.bb-hero__figure{margin:0}.bb-hero__figure img{width:100%;aspect-ratio:4/5;object-fit:cover;background:var(--sand)}
.bb-intro{background:var(--bg-soft)}.bb-intro .wrap{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:var(--s6);padding-block:var(--s7);align-items:end}.bb-intro__head{display:grid;gap:var(--s3)}.bb-intro h2{font-size:clamp(34px,3.6vw,52px);line-height:1.08}.bb-intro__body{font-size:19px;max-width:30em;color:var(--ink)}.bb-capabilities .wrap{padding-block:var(--s7) var(--s6)}.bb-capabilities h2{font-size:clamp(32px,3.2vw,46px);line-height:1.1;max-width:16ch;margin-bottom:var(--s5)}.bb-cap-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s4);list-style:none;margin:0;padding:0}.bb-cap-list li{display:grid;gap:var(--s2);align-content:start;padding-top:var(--s3);border-top:1px solid var(--ink-deep)}.bb-cap-list h3{font-size:27px;line-height:1.15;font-weight:500}.bb-cap-list p{font-size:16px;line-height:1.6;color:var(--taupe-text);max-width:24em}.bb-image-break .wrap{padding-block:var(--s5) 0}.bb-image-break img{width:100%;aspect-ratio:16/7;object-fit:cover;background:var(--sand)}.bb-statement .wrap{padding-block:var(--s7)}.bb-statement h2{font-size:clamp(38px,5.4vw,76px);line-height:1.06;letter-spacing:-.01em;max-width:18ch;margin-inline:auto;text-align:center}.bb-statement h2 em{font-style:italic}
.bb-contact{border-top:1px solid var(--greige);scroll-margin-top:90px}.bb-contact .wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:var(--s5);padding-block:var(--s6) var(--s7);align-items:end}.bb-contact__head{display:grid;gap:var(--s2)}.bb-contact h2{font-size:clamp(34px,3.6vw,52px);line-height:1.08}.bb-contact p{color:var(--taupe-text)}.bb-mail{justify-self:start;display:inline-flex;align-items:baseline;gap:18px;font-family:var(--serif);font-size:clamp(30px,3.9vw,56px);line-height:1.15;color:var(--ink-deep);text-decoration:none;padding-bottom:8px;background:linear-gradient(currentColor,currentColor) left bottom/100% 1px no-repeat;overflow-wrap:anywhere;transition:color .25s ease,background-size .25s ease}.bb-mail span[aria-hidden]{font-family:var(--sans);font-size:.5em;transition:transform .25s ease}.bb-mail:hover{color:var(--brand)}.bb-mail:hover span[aria-hidden]{transform:translateX(6px)}.bb-footer{background:var(--ink-deep);color:var(--on-dark-muted)}.bb-footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s2) var(--s4);padding-block:var(--s4);font-size:14px}.bb-footer nav{display:flex;flex-wrap:wrap;gap:var(--s1) var(--s4)}.bb-footer a{color:var(--on-dark);text-decoration:none;border-bottom:1px solid rgba(242,238,230,.35);padding-block:8px}.bb-footer a:hover{border-bottom-color:var(--on-dark)}.bb-footer a:focus-visible{outline-color:var(--on-dark)}.skip-link{position:absolute;left:20px;top:-100px;background:var(--bg);color:var(--ink);padding:12px;z-index:20}.skip-link:focus{top:8px}
@media(max-width:1080px){.bb-cap-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s5) var(--s4)}.bb-hero .wrap{gap:var(--s5)}}
@media(max-width:767px){body{font-size:17px}.bb-header .wrap{height:60px}.bb-header img{width:140px}.bb-hero .wrap,.bb-intro .wrap,.bb-contact .wrap{grid-template-columns:minmax(0,1fr)}.bb-hero .wrap{min-height:0;padding-block:var(--s4) var(--s5);gap:var(--s4)}.bb-hero__text{gap:var(--s3)}.bb-hero h1{font-size:clamp(38px,10.5vw,46px)}.bb-services{max-width:22em}.bb-intro .wrap{padding-block:var(--s6);gap:var(--s3)}.bb-capabilities .wrap{padding-block:var(--s6) var(--s5)}.bb-capabilities h2{margin-bottom:var(--s4)}.bb-cap-list{grid-template-columns:minmax(0,1fr);gap:var(--s4)}.bb-image-break .wrap{padding-inline:0;padding-block:var(--s3) 0}.bb-image-break img{aspect-ratio:4/3}.bb-statement .wrap{padding-block:var(--s6)}.bb-statement h2{text-align:left;margin-inline:0}.bb-contact .wrap{padding-block:var(--s5) var(--s6);gap:var(--s3)}.bb-mail{padding-block:8px;min-height:48px}.bb-footer .wrap{flex-direction:column}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

