/* Craft House — an editorial system of linen, walnut, and warm stone. */
:root {
    --chi-paper:#f5f2ec;
    --chi-cream:#ebe5da;
    --chi-ink:#312f29;
    --chi-muted:#6e6a60;
    --chi-walnut:#292e29;
    --chi-accent:#7f4938;
    --chi-line:#d3cec3;
    --chi-serif:"Cormorant Garamond",Georgia,serif;
    --chi-sans:"Manrope",Arial,sans-serif
}
*,*::before,*::after {
    box-sizing:border-box
}
html {
    scroll-behavior:smooth;
    scroll-padding-top:100px
}
body {
    margin:0;
    background:var(--chi-paper);
    color:var(--chi-ink);
    font:400 14px/1.85 var(--chi-sans);
    -webkit-font-smoothing:antialiased
}
body.chi-menu-open,body.chi-gallery-open {
    overflow:hidden
}
img {
    display:block;
    width:100%;
    max-width:100%;
    height:auto
}
a {
    color:inherit;
    text-decoration:none
}
button {
    font:inherit;
    cursor:pointer
}
button,a {
    -webkit-tap-highlight-color:transparent
}
button:focus-visible,a:focus-visible {
    outline:2px solid var(--chi-accent);
    outline-offset:6px
}
::selection {
    background:#d7bdae;
    color:var(--chi-ink)
}
h1,h2,h3,p {
    margin:0
}
h1,h2,h3 {
    font-weight:400
}
h2 {
    font:400 clamp(42px,5vw,76px)/1.02 var(--chi-serif);
    letter-spacing:-.045em
}
h2 em {
    font-weight:400
}
em {
    font-family:var(--chi-serif)
}
.chi-shell {
    width:calc(100% - 40px);
    max-width:1320px;
    margin-inline:auto
}
.chi-section {
    padding-block:80px
}
.chi-label {
    font:600 9px/1.6 var(--chi-sans);
    letter-spacing:.19em;
    text-transform:uppercase
}
.chi-small {
    font-size:11px;
    color:var(--chi-muted)
}
.chi-dot {
    display:inline-block;
    width:6px;
    height:6px;
    margin-right:11px;
    margin-bottom:1px;
    border-radius:50%;
    background:currentColor
}
.chi-text-link {
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    min-height:44px;
    border-bottom:1px solid #9b968b;
    font:600 10px/1.4 var(--chi-sans);
    letter-spacing:.12em;
    text-transform:uppercase
}
.chi-text-link span {
    font-size:19px;
    transition:transform .25s
}
.chi-text-link:hover span {
    transform:translate(3px,-3px)
}
.chi-text-link--light {
    border-color:#899085
}
.chi-button {
    display:inline-flex;
    align-items:center;
    justify-content:space-between;
    gap:35px;
    min-height:58px;
    padding:18px 24px;
    background:var(--chi-paper);
    color:var(--chi-ink);
    font-size:10px;
    font-weight:600;
    letter-spacing:.12em;
    text-transform:uppercase;
    transition:background .25s,transform .25s
}
.chi-button span {
    font-size:21px;
    line-height:1
}
.chi-button:hover {
    background:#fff;
    transform:translateY(-3px)
}
.chi-skip-link {
    position:fixed;
    z-index:1000;
    left:15px;
    top:10px;
    padding:10px 20px;
    background:var(--chi-paper);
    transform:translateY(-150%)
}
.chi-skip-link:focus {
    transform:translateY(0)
}
/* The header remains quiet; the imagery does the talking. */
.chi-header {
    position:sticky;
    top:0;
    z-index:50;
    background:var(--chi-paper);
    border-bottom:1px solid transparent;
    transition:border-color .25s
}
.chi-header.is-scrolled {
    border-color:var(--chi-line)
}
.chi-header__inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:82px
}
.chi-brand {
    display:inline-flex;
    align-items:center;
    gap:13px;
    line-height:1
}
.chi-brand__mark {
    display:grid;
    place-items:center;
    width:39px;
    height:43px;
    border:1px solid currentColor;
    font:400 24px/.8 var(--chi-serif);
    letter-spacing:-.1em;
    padding-right:2px
}
.chi-brand__name {
    font:500 19px/1 var(--chi-serif);
    letter-spacing:.035em;
    text-transform:uppercase
}
.chi-brand small {
    display:block;
    margin-top:7px;
    text-align:center;
    font:500 7px/1 var(--chi-sans);
    letter-spacing:.47em;
    padding-left:.4em
}
.chi-nav {
    display:flex;
    align-items:center;
    gap:35px
}
.chi-nav>a {
    padding:12px 0;
    font-size:10px;
    letter-spacing:.1em;
    font-weight:600;
    text-transform:uppercase
}
.chi-nav>a:not(.chi-nav__cta) {
    position:relative
}
.chi-nav>a:not(.chi-nav__cta)::after {
    content:"";
    position:absolute;
    bottom:8px;
    left:0;
    width:100%;
    height:1px;
    background:currentColor;
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .25s
}
.chi-nav>a:hover::after {
    transform:scaleX(1)
}
.chi-nav .chi-nav__cta {
    display:flex;
    gap:35px;
    align-items:center;
    padding:9px 20px;
    border:1px solid var(--chi-line);
    transition:background .25s,color .25s
}
.chi-nav__cta span {
    font-size:20px
}
.chi-nav__cta:hover {
    background:var(--chi-ink);
    color:var(--chi-paper)
}
.chi-menu {
    display:none;
    border:0;
    background:none;
    width:44px;
    height:44px;
    padding:10px 5px;
    color:inherit
}
.chi-menu span {
    display:block;
    height:1px;
    background:currentColor;
    margin:8px 0;
    transition:transform .25s
}
/* Large-scale photography, with the original studio message. */
.chi-hero {
    position:relative;
    min-height:640px;
    height:calc(100svh - 82px);
    max-height:940px;
    color:#fff;
    isolation:isolate;
    background:#514b40
}
.chi-hero__image {
    position:absolute;
    inset:0;
    z-index:-2;
    overflow:hidden
}
.chi-hero__image img {
    height:100%;
    object-fit:cover;
    object-position:50% 52%;
    animation:chi-image-enter 1.5s ease-out both
}
.chi-hero::after {
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:linear-gradient(0deg,rgba(18,22,18,.8),rgba(18,22,18,.19) 65%,rgba(18,22,18,.1)),linear-gradient(90deg,rgba(18,22,18,.2),transparent)
}
.chi-hero__inner {
    height:100%;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding-block:60px 76px
}
.chi-hero__eyebrow {
    display:flex;
    align-items:center;
    gap:13px;
    margin-bottom:25px;
    font-size:9px;
    letter-spacing:.18em
}
.chi-hero__eyebrow>span {
    height:1px;
    width:30px;
    background:currentColor
}
.chi-hero h1 {
    font:400 clamp(58px,8.5vw,130px)/.94 var(--chi-serif);
    letter-spacing:-.045em;
    max-width:1180px;
    animation:chi-text-enter .9s .15s both
}
.chi-hero h1 em {
    font-weight:400;
    color:#eee5d5
}
.chi-hero__bottom {
    display:flex;
    justify-content:space-between;
    align-items:flex-end;
    margin-top:30px
}
.chi-hero__bottom>p {
    font-size:12px;
    line-height:1.9;
    color:#eeeae3
}
.chi-circle-link {
    display:flex;
    align-items:center;
    justify-content:center;
    gap:15px;
    width:115px;
    height:115px;
    border:1px solid #d5d2c6;
    border-radius:50%;
    font-size:9px;
    line-height:1.8;
    letter-spacing:.1em;
    text-transform:uppercase;
    transition:background .3s,color .3s,transform .3s
}
.chi-circle-link>span:last-child {
    font-size:27px
}
.chi-circle-link:hover {
    background:var(--chi-paper);
    color:var(--chi-ink);
    transform:rotate(-5deg)
}
.chi-hero__scroll {
    position:absolute;
    bottom:23px;
    left:50%;
    transform:translateX(-50%);
    display:flex;
    align-items:center;
    gap:15px;
    font-size:8px;
    letter-spacing:.13em;
    text-transform:uppercase;
    white-space:nowrap;
    min-height:30px
}
.chi-hero__scroll>span:last-child {
    font-size:20px
}
.chi-hero-caption {
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding-block:21px;
    border-bottom:1px solid var(--chi-line);
    font-size:9px;
    letter-spacing:.09em
}
.chi-hero-caption>span:last-child {
    display:flex;
    align-items:center;
    gap:15px
}
.chi-hero-caption i {
    width:30px;
    height:1px;
    background:var(--chi-line)
}
/* The introduction and three studio disciplines. */
.chi-intro>.chi-shell>.chi-label {
    margin-bottom:32px;
    color:var(--chi-accent)
}
.chi-intro__grid {
    display:grid;
    grid-template-columns:1fr;
    gap:32px
}
.chi-intro__copy {
    max-width:405px
}
.chi-intro__copy p {
    color:var(--chi-muted);
    font-size:13px
}
.chi-intro__copy p+p {
    margin-top:18px
}
.chi-intro__copy .chi-text-link {
    margin-top:22px
}
.chi-desktop-break {
    display:none
}
.chi-services {
    padding-bottom:85px
}
.chi-section-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin-bottom:30px
}
.chi-services .chi-section-top {
    border-top:1px solid var(--chi-line);
    padding-top:25px
}
.chi-services__grid {
    display:grid;
    grid-template-columns:1fr;
    gap:45px
}
.chi-service__image {
    position:relative;
    display:block;
    overflow:hidden;
    aspect-ratio:1.05;
    background:var(--chi-cream)
}
.chi-service__image img {
    height:100%;
    object-fit:cover;
    transition:transform .8s cubic-bezier(.2,.65,.3,1)
}
.chi-service__image:hover img {
    transform:scale(1.045)
}
.chi-image-arrow {
    position:absolute;
    right:15px;
    bottom:15px;
    display:grid;
    place-items:center;
    width:44px;
    height:44px;
    background:var(--chi-paper);
    color:var(--chi-ink);
    font:400 22px/1 var(--chi-sans);
    border-radius:50%;
    transition:transform .3s,background .3s
}
.chi-service__image:hover .chi-image-arrow {
    transform:rotate(45deg);
    background:#fff
}
.chi-service__heading {
    display:flex;
    align-items:center;
    gap:15px;
    padding-top:20px
}
.chi-service__heading>.chi-label {
    color:var(--chi-accent)
}
.chi-service h3 {
    font:400 35px/1.1 var(--chi-serif);
    letter-spacing:-.03em
}
.chi-service__tagline {
    font-size:12px;
    margin-top:12px
}
.chi-service__copy {
    font-size:12px;
    color:var(--chi-muted);
    margin-top:6px;
    max-width:350px
}
/* Staggered portfolio: deliberately editorial rather than a card wall. */
.chi-work {
    background:var(--chi-walnut);
    color:var(--chi-paper)
}
.chi-work__header {
    display:flex;
    flex-direction:column;
    gap:30px;
    margin-bottom:45px
}
.chi-work__header .chi-label {
    color:#d6c4ae;
    margin-bottom:23px
}
.chi-work__header h2 {
    font-size:clamp(55px,6.4vw,96px)
}
.chi-work__header>div:last-child>p {
    color:#c2c6bc;
    font-size:12px;
    margin-bottom:16px
}
.chi-projects {
    display:grid;
    grid-template-columns:1fr;
    gap:45px
}
.chi-project__image {
    display:block;
    position:relative;
    aspect-ratio:1.25;
    overflow:hidden;
    background:#45493f
}
.chi-project__image img {
    height:100%;
    object-fit:cover;
    transition:transform .9s cubic-bezier(.2,.65,.3,1)
}
.chi-project__image:hover img {
    transform:scale(1.04)
}
.chi-project__view {
    position:absolute;
    left:20px;
    bottom:26px;
    font-size:9px;
    letter-spacing:.12em;
    text-transform:uppercase;
    color:#fff;
    text-shadow:0 1px 12px #000;
    opacity:0;
    transition:opacity .3s
}
.chi-project__image:hover .chi-project__view,.chi-project__image:focus-visible .chi-project__view {
    opacity:1
}
.chi-project__meta {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-top:21px
}
.chi-project__meta h3 {
    font:400 32px/1.1 var(--chi-serif)
}
.chi-project__meta p {
    color:#c2c6bc;
    font-size:10px;
    margin-top:6px
}
.chi-project__meta>.chi-label {
    color:#c2c6bc
}
.chi-work__foot {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:15px;
    margin-top:50px;
    padding-top:25px;
    border-top:1px solid #555c50
}
.chi-work__foot>span {
    font:italic 22px/1.3 var(--chi-serif);
    color:#d6c4ae
}
/* Founder portrait and warm, personal editorial. */
.chi-founder__grid {
    display:grid;
    gap:55px
}
.chi-founder__visual {
    position:relative;
    padding-right:15px
}
.chi-founder__portrait {
    overflow:hidden;
    aspect-ratio:.92
}
.chi-founder__portrait img {
    height:100%;
    object-fit:cover;
    object-position:50% 35%
}
.chi-founder__caption {
    display:flex;
    justify-content:space-between;
    gap:15px;
    align-items:center;
    border-bottom:1px solid var(--chi-line);
    padding-block:18px
}
.chi-founder__caption>span:last-child {
    font-size:9px;
    color:var(--chi-muted)
}
.chi-founder__seal {
    position:absolute;
    right:-3px;
    bottom:80px;
    width:113px;
    height:113px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    transform:rotate(8deg);
    border:1px solid #ccc3b2;
    outline:6px solid var(--chi-paper);
    border-radius:50%;
    background:var(--chi-paper);
    font:400 22px/.95 var(--chi-serif)
}
.chi-founder__seal em {
    font-size:25px
}
.chi-founder__content>.chi-label {
    color:var(--chi-accent);
    margin-bottom:25px
}
.chi-founder__content h2 {
    font-size:clamp(48px,4.7vw,70px)
}
.chi-founder__lead {
    font:400 24px/1.35 var(--chi-serif);
    margin-block:28px 18px;
    max-width:400px
}
.chi-founder__content>p:not(.chi-label):not(.chi-founder__lead) {
    font-size:12px;
    color:var(--chi-muted);
    margin-top:17px;
    max-width:430px
}
.chi-founder__content .chi-text-link {
    margin-top:25px
}
.chi-founder__signature {
    display:block;
    margin-top:17px;
    font:italic 42px/1 var(--chi-serif);
    color:var(--chi-accent)
}
/* A genuine client voice, preserved from the original homepage. */
.chi-testimonial {
    background:var(--chi-cream);
    padding-block:75px
}
.chi-testimonial__inner {
    position:relative;
    text-align:center;
    max-width:1000px
}
.chi-testimonial__inner>.chi-label:first-child {
    color:var(--chi-accent)
}
.chi-quote-mark {
    display:block;
    font:400 95px/.8 var(--chi-serif);
    color:#9d876e;
    margin-top:35px;
    height:45px
}
.chi-testimonial blockquote {
    margin:0
}
.chi-testimonial blockquote p {
    font:400 clamp(30px,3.5vw,50px)/1.16 var(--chi-serif);
    letter-spacing:-.02em
}
.chi-testimonial__detail {
    max-width:620px;
    font-size:11px;
    color:#635e55;
    margin:25px auto 24px
}
.chi-testimonial__credit {
    font-size:8px
}
.chi-testimonial__line {
    display:block;
    width:45px;
    height:1px;
    background:#9d876e;
    margin:25px auto 0
}
.chi-process__grid {
    display:grid;
    gap:40px
}
.chi-process__grid>div>.chi-label {
    color:var(--chi-accent);
    margin-bottom:25px
}
.chi-process .chi-text-link {
    margin-top:26px
}
.chi-process__steps {
    list-style:none;
    padding:0;
    margin:0
}
.chi-process__steps li {
    display:flex;
    gap:20px;
    border-top:1px solid var(--chi-line);
    padding-block:24px
}
.chi-process__steps li:last-child {
    border-bottom:1px solid var(--chi-line)
}
.chi-process__steps li>span {
    font-size:10px;
    color:var(--chi-accent);
    padding-top:7px
}
.chi-process__steps h3 {
    font:400 27px/1.2 var(--chi-serif);
    letter-spacing:-.02em
}
.chi-process__steps p {
    font-size:12px;
    color:var(--chi-muted);
    margin-top:8px;
    max-width:390px
}
/* Final invitation and a visual notebook. */
.chi-contact {
    display:grid;
    background:var(--chi-walnut);
    color:var(--chi-paper)
}
.chi-contact__image {
    min-height:320px;
    overflow:hidden
}
.chi-contact__image img {
    height:100%;
    object-fit:cover
}
.chi-contact__content {
    padding:55px 25px
}
.chi-contact__content>.chi-label {
    margin-bottom:25px;
    color:#d6c4ae;
    font-size:8px
}
.chi-contact h2 {
    font-size:clamp(58px,5.8vw,89px);
    line-height:.95
}
.chi-contact__content>p:not(.chi-label) {
    font-size:12px;
    color:#d1d3cb;
    margin-block:27px
}
.chi-contact__content .chi-button {
    margin-top:2px
}
.chi-contact__note {
    display:block;
    font:italic 21px/1.3 var(--chi-serif);
    color:#d6c4ae;
    margin-top:30px
}
.chi-journal {
    padding-block:70px
}
.chi-journal .chi-section-top {
    flex-wrap:wrap;
    align-items:flex-end
}
.chi-journal h2 {
    font-size:42px;
    margin-top:10px
}
.chi-journal .chi-label {
    font-size:8px;
    color:var(--chi-accent)
}
.chi-journal .chi-text-link {
    font-size:8px;
    gap:20px
}
.chi-journal__grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px
}
.chi-journal__image {
    position:relative;
    aspect-ratio:1;
    overflow:hidden;
    background:var(--chi-cream)
}
.chi-journal__image img {
    height:100%;
    object-fit:cover;
    transition:transform .7s
}
.chi-journal__image:hover img {
    transform:scale(1.06)
}
.chi-journal__image .chi-image-arrow {
    width:32px;
    height:32px;
    right:10px;
    bottom:10px;
    font-size:18px;
    opacity:0
}
.chi-journal__image:hover .chi-image-arrow,.chi-journal__image:focus-visible .chi-image-arrow {
    opacity:1
}
/* A typographic sign-off. */
.chi-footer {
    padding-top:55px;
    background:#e7e2d8;
    border-top:1px solid var(--chi-line)
}
.chi-footer__top {
    display:grid;
    gap:40px
}
.chi-footer__top>div>p {
    font:italic 21px/1.4 var(--chi-serif);
    color:var(--chi-muted);
    margin-top:20px
}
.chi-footer__links {
    display:grid;
    grid-template-columns:1fr 1.5fr;
    gap:25px
}
.chi-footer__links>div {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:8px
}
.chi-footer__links .chi-label {
    font-size:8px;
    color:var(--chi-accent);
    margin-bottom:8px
}
.chi-footer__links a,.chi-footer__location {
    font-size:11px
}
.chi-footer__links a {
    min-height:32px;
    display:flex;
    align-items:center
}
.chi-footer__links a:hover {
    text-decoration:underline;
    text-underline-offset:5px
}
.chi-footer__location {
    color:var(--chi-muted)
}
.chi-footer__wordmark {
    font:400 clamp(55px,17.2vw,256px)/1 var(--chi-serif);
    letter-spacing:-.065em;
    white-space:nowrap;
    text-align:center;
    padding-block:45px 30px;
    border-bottom:1px solid #c7c1b5
}
.chi-footer__bottom {
    display:flex;
    flex-direction:column;
    gap:12px;
    padding-block:23px;
    color:#625d53;
    font-size:8px;
    letter-spacing:.06em
}
.chi-footer__bottom>a {
    min-height:30px;
    align-self:flex-start
}
/* Browser-native, keyboard-friendly image gallery. */
.chi-gallery {
    position:fixed;
    inset:0;
    width:100%;
    height:100%;
    max-width:none;
    max-height:none;
    margin:0;
    border:0;
    padding:20px;
    background:#20241f;
    color:#fff
}
.chi-gallery[open] {
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:15px
}
.chi-gallery::backdrop {
    background:#20241f
}
.chi-gallery__bar {
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px
}
.chi-gallery__bar h2 {
    font-size:28px;
    letter-spacing:-.02em
}
.chi-gallery button {
    border:1px solid #6d7567;
    min-height:44px;
    padding:8px 12px;
    background:transparent;
    color:inherit;
    font-size:10px;
    letter-spacing:.05em
}
.chi-gallery button:hover {
    background:#454d40
}
.chi-gallery button:focus-visible {
    outline-color:#e3d0b5
}
.chi-gallery__bar button>span {
    font-size:22px;
    margin-left:15px;
    vertical-align:middle
}
.chi-gallery__image {
    height:0;
    min-height:0;
    flex:1;
    object-fit:contain;
    width:100%
}
.chi-gallery__controls {
    width:min(100%,500px);
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:15px
}
.chi-gallery__controls>span {
    font-size:11px
}
/* Reveal effects progressively enhance a page that is visible without JavaScript. */
.chi-motion .chi-reveal {
    opacity:0;
    transform:translateY(22px);
    transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.3,1)
}
.chi-motion .chi-reveal.is-visible {
    opacity:1;
    transform:none
}
@keyframes chi-image-enter {
    from {
        transform:scale(1.035)
    }
    to {
        transform:scale(1)
    }
}
@keyframes chi-text-enter {
    from {
        opacity:0;
        transform:translateY(20px)
    }
    to {
        opacity:1;
        transform:none
    }
}
@media(min-width:640px) {
    .chi-shell {
        width:calc(100% - 72px)
    }
    .chi-label {
        font-size:10px
    }
    .chi-services__grid {
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:22px
    }
    .chi-service__image {
        aspect-ratio:.78
    }
    .chi-service h3 {
        font-size:31px
    }
    .chi-service__heading {
        gap:10px
    }
    .chi-service__tagline {
        font-size:11px
    }
    .chi-service__copy {
        font-size:11px
    }
    .chi-founder__grid {
        grid-template-columns:1fr 1fr;
        gap:45px;
        align-items:center
    }
    .chi-founder__seal {
        right:-10px
    }
    .chi-founder__caption {
        align-items:flex-start;
        flex-direction:column;
        gap:4px
    }
    .chi-journal__grid {
        grid-template-columns:repeat(4,minmax(0,1fr));
        gap:18px
    }
    .chi-footer__top {
        grid-template-columns:1fr 1.1fr;
        gap:50px
    }
    .chi-footer__links {
        grid-template-columns:1fr 1.5fr
    }
    .chi-footer__bottom {
        flex-direction:row;
        justify-content:space-between;
        align-items:center;
        gap:20px
    }
    .chi-footer__bottom>a {
        align-self:auto
    }
    .chi-contact {
        grid-template-columns:1fr 1fr
    }
    .chi-contact__image {
        min-height:620px
    }
    .chi-contact__content {
        padding:70px 35px;
        align-self:center
    }
}
@media(min-width:1000px) {
    .chi-shell {
        width:calc(100% - 120px)
    }
    .chi-header__inner {
        min-height:98px
    }
    .chi-brand__name {
        font-size:23px
    }
    .chi-brand__mark {
        width:45px;
        height:48px;
        font-size:29px
    }
    .chi-brand {
        gap:16px
    }
    .chi-brand small {
        font-size:8px
    }
    .chi-nav {
        gap:40px
    }
    .chi-nav>a {
        font-size:10px
    }
    .chi-nav .chi-nav__cta {
        margin-left:20px;
        padding-inline:24px;
        gap:45px
    }
    .chi-section {
        padding-block:120px
    }
    .chi-hero {
        height:calc(100svh - 98px);
        min-height:700px
    }
    .chi-hero__inner {
        padding-block:70px 100px
    }
    .chi-hero__bottom {
        margin-top:30px
    }
    .chi-hero__bottom>p {
        font-size:12px
    }
    .chi-circle-link {
        width:125px;
        height:125px;
        position:absolute;
        right:0;
        bottom:90px
    }
    .chi-hero__inner {
        position:relative
    }
    .chi-hero-caption {
        font-size:9px;
        padding-block:25px
    }
    .chi-intro__grid {
        grid-template-columns:1.5fr 1fr;
        gap:100px;
        align-items:end
    }
    .chi-intro__copy {
        padding-bottom:7px
    }
    .chi-intro__copy p {
        font-size:13px
    }
    .chi-intro>.chi-shell>.chi-label {
        margin-bottom:35px
    }
    .chi-desktop-break {
        display:block
    }
    .chi-services {
        padding-bottom:120px
    }
    .chi-services .chi-section-top {
        margin-bottom:36px
    }
    .chi-services__grid {
        gap:36px
    }
    .chi-service__image {
        aspect-ratio:.86
    }
    .chi-service h3 {
        font-size:40px
    }
    .chi-service__heading {
        gap:20px;
        padding-top:24px
    }
    .chi-service__tagline {
        font-size:12px;
        margin-top:14px
    }
    .chi-service__copy {
        font-size:12px
    }
    .chi-work__header {
        flex-direction:row;
        justify-content:space-between;
        align-items:flex-end;
        margin-bottom:70px
    }
    .chi-work__header>div:last-child {
        padding-bottom:7px
    }
    .chi-work__header>div:last-child>p {
        font-size:13px
    }
    .chi-projects {
        grid-template-columns:1.35fr 1fr;
        gap:65px;
        align-items:start
    }
    .chi-project--wide .chi-project__image {
        aspect-ratio:1.16
    }
    .chi-project--offset {
        padding-top:150px
    }
    .chi-project--offset .chi-project__image {
        aspect-ratio:.82
    }
    .chi-project__meta h3 {
        font-size:36px
    }
    .chi-work__foot {
        flex-direction:row;
        align-items:center;
        justify-content:space-between;
        margin-top:75px
    }
    .chi-work__foot>span {
        font-size:25px
    }
    .chi-founder__grid {
        grid-template-columns:1fr 1fr;
        gap:120px
    }
    .chi-founder__visual {
        padding-right:0
    }
    .chi-founder__seal {
        right:-47px;
        bottom:90px;
        width:130px;
        height:130px;
        font-size:24px
    }
    .chi-founder__seal em {
        font-size:29px
    }
    .chi-founder__caption {
        flex-direction:row;
        align-items:center
    }
    .chi-founder__content>p:not(.chi-label):not(.chi-founder__lead) {
        font-size:13px
    }
    .chi-founder__lead {
        font-size:27px
    }
    .chi-testimonial {
        padding-block:100px
    }
    .chi-testimonial__detail {
        font-size:12px;
        max-width:670px
    }
    .chi-process__grid {
        grid-template-columns:1.1fr 1fr;
        gap:100px;
        align-items:center
    }
    .chi-process h2 {
        font-size:clamp(48px,4.5vw,65px)
    }
    .chi-process__steps li {
        gap:30px;
        padding-block:28px
    }
    .chi-process__steps p {
        font-size:12px
    }
    .chi-process__steps h3 {
        font-size:30px
    }
    .chi-contact {
        grid-template-columns:1fr 1fr;
        min-height:740px
    }
    .chi-contact__content {
        padding:80px min(7vw,110px)
    }
    .chi-contact__content>.chi-label {
        font-size:9px;
        margin-bottom:35px
    }
    .chi-contact__content>p:not(.chi-label) {
        font-size:12px;
        margin-block:30px
    }
    .chi-contact__note {
        margin-top:35px
    }
    .chi-contact__image {
        min-height:740px
    }
    .chi-journal {
        padding-block:90px
    }
    .chi-journal .chi-section-top {
        margin-bottom:32px
    }
    .chi-journal h2 {
        font-size:54px
    }
    .chi-journal .chi-text-link {
        font-size:9px
    }
    .chi-journal__grid {
        gap:22px
    }
    .chi-footer {
        padding-top:70px
    }
    .chi-footer__links {
        max-width:480px;
        margin-left:auto;
        width:100%;
        gap:60px
    }
    .chi-footer__wordmark {
        padding-block:60px 35px
    }
    .chi-footer__bottom {
        padding-block:25px;
        font-size:8px
    }
}
@media(max-width:999px) {
    .chi-menu {
        display:block;
        position:relative;
        z-index:52
    }
    .chi-nav {
        position:fixed;
        z-index:51;
        inset:0;
        flex-direction:column;
        align-items:flex-start;
        justify-content:center;
        padding:90px 30px 40px;
        gap:20px;
        background:var(--chi-paper);
        opacity:0;
        visibility:hidden;
        transition:opacity .3s,visibility .3s
    }
    .chi-nav>a:not(.chi-nav__cta) {
        font:400 45px/1.2 var(--chi-serif);
        letter-spacing:-.03em;
        text-transform:none
    }
    .chi-nav .chi-nav__cta {
        margin-top:15px
    }
    .chi-menu-open .chi-nav {
        opacity:1;
        visibility:visible
    }
    .chi-menu-open .chi-menu span:first-child {
        transform:translateY(4.5px) rotate(45deg)
    }
    .chi-menu-open .chi-menu span:last-child {
        transform:translateY(-4.5px) rotate(-45deg)
    }
}
@media(max-width:639px) {
    html {
        scroll-padding-top:83px
    }
    .chi-shell {
        width:calc(100% - 40px)
    }
    .chi-hero {
        min-height:690px;
        max-height:900px
    }
    .chi-hero__inner {
        padding-bottom:90px
    }
    .chi-hero__eyebrow {
        font-size:8px;
        max-width:280px;
        line-height:1.8;
        margin-bottom:25px;
        gap:10px
    }
    .chi-hero__eyebrow>span {
        width:20px;
        flex-shrink:0
    }
    .chi-hero h1 {
        font-size:clamp(49px,14vw,85px);
        line-height:.98;
        letter-spacing:-.05em
    }
    .chi-hero__bottom {
        align-items:center;
        gap:15px;
        margin-top:27px
    }
    .chi-hero__bottom>p {
        font-size:10px;
        max-width:210px
    }
    .chi-circle-link {
        width:85px;
        height:85px;
        flex-shrink:0;
        gap:8px;
        font-size:7px
    }
    .chi-circle-link>span:last-child {
        font-size:23px
    }
    .chi-hero__scroll {
        font-size:7px;
        gap:10px
    }
    .chi-hero-caption {
        font-size:8px;
        line-height:1.7;
        gap:30px
    }
    .chi-hero-caption>span {
        max-width:50%
    }
    .chi-hero-caption>span:last-child {
        display:block;
        text-align:right
    }
    .chi-hero-caption i {
        display:none
    }
    .chi-hero__image img {
        object-position:50% center
    }
    .chi-intro h2 {
        font-size:clamp(41px,10.8vw,62px)
    }
    .chi-section-top .chi-small {
        font-size:10px;
        max-width:150px;
        text-align:right
    }
    .chi-founder__content>p:not(.chi-label):not(.chi-founder__lead) {
        font-size:13px
    }
    .chi-founder__portrait {
        aspect-ratio:.94
    }
    .chi-founder__caption .chi-label {
        font-size:8px
    }
    .chi-founder__caption>span:last-child {
        font-size:8px
    }
    .chi-process h2 {
        font-size:clamp(42px,11vw,58px)
    }
    .chi-contact__image {
        height:340px
    }
    .chi-contact__image img {
        object-position:center 45%
    }
    .chi-contact__content {
        padding-block:60px
    }
    .chi-contact h2 {
        font-size:clamp(57px,15.6vw,85px)
    }
    .chi-journal h2 {
        font-size:39px
    }
    .chi-footer__wordmark {
        font-size:17vw
    }
    .chi-gallery__bar h2 {
        font-size:25px
    }
    .chi-gallery {
        padding:15px
    }
    .chi-testimonial__inner {
        width:calc(100% - 50px)
    }
}
@media(prefers-reduced-motion:reduce) {
    html {
        scroll-behavior:auto
    }
    *,*::before,*::after {
        animation:none!important;
        transition:none!important
    }
    .chi-motion .chi-reveal {
        opacity:1;
        transform:none
    }
}
/* Foxhall expands the collection with a complete property story. */
.chi-project--panorama {
    grid-column:1/-1
}
.chi-project--panorama>.chi-project__image {
    aspect-ratio:1.25
}
.chi-project--panorama>.chi-project__image img {
    object-position:center
}
.chi-project__details {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:25px
}
.chi-project__details>a {
    position:relative;
    display:block;
    aspect-ratio:.85;
    overflow:hidden
}
.chi-project__details img {
    height:100%;
    object-fit:cover;
    transition:transform .7s
}
.chi-project__details a:hover img {
    transform:scale(1.04)
}
.chi-project__details .chi-image-arrow {
    width:28px;
    height:28px;
    right:8px;
    bottom:8px;
    font-size:17px
}
.chi-project__story {
    margin-top:20px
}
.admin-bar .chi-header {
    top:32px
}
@media(min-width:1000px) {
    .chi-project--panorama {
        margin-top:5px
    }
    .chi-project--panorama>.chi-project__image {
        aspect-ratio:2.1
    }
    .chi-project__details {
        gap:22px;
        margin-top:35px
    }
    .chi-project__details>a {
        aspect-ratio:1.5
    }
    .chi-project__details .chi-image-arrow {
        width:40px;
        height:40px;
        right:15px;
        bottom:15px;
        font-size:21px
    }
}
@media(max-width:782px) {
    .admin-bar .chi-header {
        top:46px
    }
}
@media(max-width:999px) {
    html:not(.chi-ready) .chi-header__inner {
        flex-wrap:wrap;
        padding-block:18px;
        gap:20px
    }
    html:not(.chi-ready) .chi-nav {
        position:static;
        opacity:1;
        visibility:visible;
        flex-direction:row;
        flex-wrap:wrap;
        padding:0;
        gap:10px 20px;
        width:100%
    }
    html:not(.chi-ready) .chi-nav>a:not(.chi-nav__cta) {
        font:600 10px/1.5 var(--chi-sans);
        letter-spacing:.1em;
        text-transform:uppercase
    }
    html:not(.chi-ready) .chi-nav .chi-nav__cta {
        margin:0
    }
    html:not(.chi-ready) .chi-menu {
        display:none
    }
}
/* Readable supporting copy and comfortable tap targets on small screens. */
.chi-gallery:not([open]) {
    display:none;
}
@media (max-width:639px) {
    .chi-hero__bottom > p {
        font-size:12px;
    }
    .chi-intro__copy p, .chi-service__copy {
        font-size:14px;
    }
    .chi-service__tagline, .chi-process__steps p, .chi-contact__content > p:not(.chi-label) {
        font-size:13px;
    }
    .chi-footer__links a {
        min-height:44px;
        font-size:12px;
    }
}
