html{scroll-behavior:smooth;scroll-padding-top:24px}body{background:var(--cap-paper);color:var(--cap-ink);font-family:var(--cap-sans);font-weight:400;line-height:1.65}h1,h2,h3,h4{font-family:var(--cap-serif);font-weight:400;line-height:1.1}h1{font-size:clamp(2.8rem,5vw,5.5rem);letter-spacing:-.035em}h2{font-size:clamp(2rem,3vw,3rem)}h3{font-size:1.8rem}a{color:inherit;text-underline-offset:6px}a:hover{color:var(--cap-pewter)}img{max-width:100%;display:block}.container{max-width:1280px}.section-space{padding:68px 0}.eyebrow,.text-link,.nav-link,.btn{font-size:.74rem;letter-spacing:.15em}.eyebrow{display:block;text-transform:uppercase}.nav-link{color:var(--cap-ink);text-transform:uppercase}.btn{padding:13px 22px;text-transform:uppercase}.btn span{margin-left:22px}.home-hero{min-height:490px;position:relative;display:flex;align-items:center;isolation:isolate}.hero-img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;z-index:-2}.home-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(246,240,225,.93),rgba(246,240,225,.7) 32%,transparent 65%);z-index:-1}.hero-content{padding-top:55px;padding-bottom:60px}.hero-copy{max-width:680px}.hero-copy p{max-width:540px;line-height:1.5;margin:25px 0}.work-section{background:var(--cap-charcoal);color:var(--cap-paper)}.section-heading{display:flex;gap:30px;align-items:center;margin-bottom:35px}.section-heading h2{margin:0;white-space:nowrap}.section-heading>span{height:1px;background:#717873;flex:1}.project-card img{width:100%;aspect-ratio:1.9;object-fit:cover;transition:filter .2s}.project-card .project-image{display:block;overflow:hidden}.project-card .project-image:hover img{filter:brightness(1.08)}.project-card h3{margin:17px 0 7px}.project-card h3 a{text-decoration:none}.project-card .eyebrow{color:#d1d4ca;font-size:.65rem}.project-card p{font-size:.93rem;color:#d8dbd3;margin:12px 0;max-width:470px}.text-link{display:inline-block;text-transform:uppercase}.work-section a:hover{color:white}.service{padding-left:28px;padding-right:28px}.service+.service{border-left:1px solid var(--cap-rule)}.service .eyebrow{color:var(--cap-pewter);margin-bottom:15px}.service h3{font-size:1.65rem}.service p{font-size:.92rem;margin-bottom:0}.photography{overflow:hidden}.photography .row img{width:100%;aspect-ratio:1.7;object-fit:cover}.photo-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:23px;padding-bottom:23px}.photo-caption>div{display:flex;gap:20px;align-items:center}.photo-caption h2{font-size:1.55rem;margin:0}.photo-caption span{font-size:.85rem}.contact-section{background:linear-gradient(90deg,#292d2bf5,#292d2bc9),url('../img/footer-coast.webp') center/cover;color:var(--cap-paper);padding:65px 0 20px}.contact-section p{color:#d4d7cf}.footer-line{margin-top:50px;padding-top:20px;border-top:1px solid #717873;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:#d1d4ca}.project-hero{width:100%;height:clamp(250px,32vw,510px);object-fit:cover}.back-link{display:inline-block;margin:28px 0;font-size:.85rem}.project-intro{padding:15px 0 45px}.project-intro h1{font-size:clamp(3rem,5vw,5.2rem);margin:16px 0 8px}.project-subtitle{font-family:var(--cap-serif);font-size:2rem}.project-overview{border-left:1px solid var(--cap-rule);padding-left:45px}.project-overview .lead{font-family:var(--cap-serif);font-size:1.85rem;line-height:1.35}.project-overview .eyebrow{font-size:.64rem;margin-top:25px;line-height:2}.goal{border-top:1px solid var(--cap-rule);padding-top:40px}.goal>p{max-width:740px}.detail-figure{margin-bottom:0}.image-expand{padding:0;border:0;display:block;background:none;width:100%;cursor:zoom-in}.detail-figure img{width:100%;aspect-ratio:1.9;object-fit:cover}.detail-figure h3{font-size:1.7rem;margin:17px 0 8px}.detail-figure p{font-size:.93rem;color:#555e58}.process{background:var(--cap-ivory);padding:55px 0}.process img{aspect-ratio:1.9;object-fit:cover;width:100%}.project-navigation{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--cap-rule);padding:25px 0 35px}.project-navigation a{font-size:.9rem}.asset-note{font-size:.75rem;color:var(--cap-pewter);margin-top:25px}.modal-content{background:var(--cap-paper);border-radius:0}.skip-link{position:absolute;top:-100px;left:10px;background:white;padding:12px;z-index:2000}.skip-link:focus{top:10px}a:focus-visible,button:focus-visible{outline:3px solid #a77c42;outline-offset:5px}.project-error{padding:100px 0}#imageModal .modal-body{background:var(--cap-charcoal)}@media(min-width:1500px){.home-hero{min-height:560px}}@media(max-width:767px){.brand>span{font-size:21px}.brand img{width:42px;height:40px}.brand small{font-size:7px}.navbar-collapse{padding-top:18px}.section-space{padding:45px 0}.home-hero{min-height:470px}.home-hero:after{background:linear-gradient(90deg,#f5f1e9ed,#f5f1e9aa 70%,#f5f1e950)}.hero-content{padding-top:45px;padding-bottom:45px}.hero-copy p{font-size:.95rem;max-width:320px}.section-heading{gap:15px}.section-heading h2{white-space:normal}.service+.service{border-left:0;border-top:1px solid var(--cap-rule);padding-top:25px}.photo-caption,.photo-caption>div{align-items:flex-start;flex-direction:column;gap:10px}.photography .row img{aspect-ratio:.85}.project-overview{border-left:0;padding-left:12px}.project-intro{padding-bottom:30px}.project-subtitle{font-size:1.7rem}.project-overview .lead{font-size:1.6rem}.footer-line{flex-direction:column;gap:6px}.project-navigation{flex-wrap:wrap}.contact-section{padding-top:45px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}/* Shared 16:9 thumbnails at every listing size. Supply 1600 × 900 artwork. */
.project-card img{aspect-ratio:16/9;object-fit:cover}
.archive-cta{text-align:center;margin-top:45px;padding-top:35px;border-top:1px solid #717873}
.archive-intro{padding-top:65px;padding-bottom:55px}.archive-intro h1{margin-top:15px}.archive-intro p{max-width:620px;margin:22px 0}.archive-status{color:#d1d4ca;font-size:.85rem;margin-bottom:32px}
#projectPagination{margin-top:45px}#projectPagination:empty{display:none}
.pagination{gap:6px}.pagination .page-link{background:transparent;border:1px solid #717873;color:var(--cap-paper);border-radius:0!important;padding:10px 16px}.pagination .page-item.active .page-link{background:var(--cap-paper);color:var(--cap-charcoal);border-color:var(--cap-paper)}.pagination .page-item.disabled .page-link{background:transparent;color:#a6aca5;border-color:#626a67}.pagination .page-link:hover{background:#414943;color:white}.pagination .page-link:focus{box-shadow:0 0 0 3px #b9b8a8}
@media(max-width:767px){.archive-intro{padding-top:40px;padding-bottom:35px}.pagination .page-link{padding:8px 11px}.archive-cta{margin-top:30px}}
