:root{--ink:#111;--paper:#f5f2e9;--white:#fff;--red:#ee4a2e;--muted:#696862;--line:#c9c5bc}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.skip{position:absolute;left:-999px;top:0;background:#fff;padding:12px;z-index:20}.skip:focus{left:12px}.site-header{height:86px;padding:14px clamp(22px,4vw,70px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--ink);position:relative;z-index:10}.brand{background:var(--ink);color:#fff;display:flex;flex-direction:column;font-weight:1000;font-stretch:condensed;line-height:.82;font-size:20px;letter-spacing:-.08em;padding:8px 11px 10px;transform:rotate(-1deg)}.site-header nav{display:flex;align-items:center;gap:clamp(20px,3vw,48px);font-weight:750;font-size:14px}.site-header nav a:not(.nav-contact):hover,.footer-links a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{background:var(--ink);color:white;padding:14px 19px;border:1px solid var(--ink)}.nav-contact:hover{background:var(--red);border-color:var(--red)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.13fr .87fr;min-height:680px;background:var(--ink);color:white}.hero-copy{padding:clamp(55px,6vw,105px) clamp(24px,5vw,88px) 70px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-number{font-size:13px;letter-spacing:.16em;font-weight:800;text-transform:uppercase;margin:0 0 25px}.eyebrow{color:#e9e5db}.dot{display:inline-block;width:9px;height:9px;background:var(--red);border-radius:50%;margin-right:11px}.hero h1{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(74px,8.2vw,154px);line-height:.83;letter-spacing:-.055em;font-weight:900;margin:18px 0 29px;white-space:nowrap}.hero h1 em{font-style:normal;color:var(--red)}.period{color:var(--red)}.hero-lead{font-size:clamp(21px,2.2vw,31px);font-weight:800;line-height:1.16;margin:0 0 18px}.hero-body{font-size:18px;line-height:1.5;color:#cbc9c3;max-width:480px;margin:0}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:45px}.button{display:inline-flex;gap:32px;align-items:center;justify-content:space-between;padding:17px 20px;font-size:15px;font-weight:800;min-width:190px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-light{background:var(--paper);color:var(--ink)}.button-light:hover{background:var(--red)}.text-link{font-size:15px;font-weight:800;border-bottom:1px solid currentColor;padding:13px 0}.text-link span{margin-left:12px}.hero-art{background:#e9e5db;color:var(--ink);display:flex;flex-direction:column;justify-content:space-between;border-left:1px solid #555;padding:29px clamp(25px,3.2vw,58px)}.art-caption,.art-foot{display:flex;justify-content:space-between;gap:15px;font-size:12px;font-weight:800;letter-spacing:.09em}.logo-window{height:340px;width:100%;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.logo-window img{width:145%;max-width:none;flex:none;mix-blend-mode:multiply}.art-foot{border-top:1px solid var(--ink);padding-top:16px}.marquee{overflow:hidden;background:var(--red);color:var(--ink);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);white-space:nowrap;font-family:Impact,'Arial Black',sans-serif;font-size:25px;letter-spacing:.02em;padding:17px 0}.marquee div{width:max-content;animation:move 32s linear infinite}.marquee b{font-family:Arial,sans-serif;margin:0 18px}@keyframes move{to{transform:translateX(-50%)}}.section{padding:clamp(80px,9vw,145px) clamp(24px,5vw,88px)}.section-intro{display:grid;grid-template-columns:1fr 2fr 1fr;align-items:end;gap:30px;margin-bottom:54px}.section-intro .section-number{align-self:start}.section h2{font-family:Impact,'Arial Black',sans-serif;text-transform:uppercase;font-size:clamp(52px,6.3vw,110px);line-height:.92;letter-spacing:-.035em;font-weight:900;margin:0}.section h2 span{color:var(--red)}.section-intro p:last-child,.services-heading>p:last-child,.approach-top>p{font-size:17px;line-height:1.45;max-width:280px;margin:0}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project{min-width:0}.project-visual{min-height:365px;padding:25px;display:flex;flex-direction:column;position:relative;overflow:hidden}.project-micro{font-weight:850;font-size:12px;letter-spacing:.14em}.project-visual strong{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(37px,3.5vw,65px);line-height:.95;letter-spacing:-.03em;margin:auto 0}.project-kent .project-visual{background:#343a36;color:#f4eee4}.project-line{height:10px;background:#baac88;width:75%;margin-bottom:15px}.project-prop .project-visual{background:#e6bf93;color:#372820}.project-prop strong{position:relative;z-index:1}.quill-mark{font-style:normal;position:absolute;font-size:270px;right:-60px;bottom:-92px;color:#a34c34;opacity:.55}.project-compass .project-visual{background:#b6c8bf;color:#123b38}.compass-mark{position:absolute;right:15px;bottom:0;font-size:210px;opacity:.35}.project-info{border-top:2px solid var(--ink);padding:20px 0;display:flex;flex-direction:column;justify-content:space-between;min-height:175px}.project-info h3{font-size:22px;letter-spacing:-.03em;margin:0 0 8px}.project-info p{font-size:15px;line-height:1.45;max-width:330px;margin:0;color:#42423e}.project-info>span{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:800;margin-top:16px}.work-note{font-size:13px;color:var(--muted);margin:18px 0 0}.services{background:#e9e5db;display:grid;grid-template-columns:.82fr 1.18fr;gap:8vw}.services-heading>p:last-child{margin-top:25px}.service{border-top:1px solid var(--ink);display:grid;grid-template-columns:50px 1fr 30px;gap:15px;padding:26px 0 28px}.service:last-child{border-bottom:1px solid var(--ink)}.service>span:first-child{font-size:13px;font-weight:850}.service h3{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(28px,3vw,47px);text-transform:uppercase;line-height:1;margin:0 0 10px}.service p{font-size:16px;line-height:1.45;max-width:500px;margin:0;color:#4b4b46}.service-symbol{font-size:26px;align-self:start}.approach{background:var(--paper)}.approach-top{display:flex;justify-content:space-between;align-items:end;gap:30px}.approach-top>p{max-width:330px}.steps{display:grid;grid-template-columns:repeat(3,1fr);margin-top:70px;border-top:2px solid var(--ink)}.steps>div{padding:25px 28px 0 0;margin-right:28px;border-right:1px solid var(--line)}.steps>div:last-child{border-right:0}.steps span{font-size:13px;font-weight:850;letter-spacing:.1em}.steps h3{font-family:Impact,'Arial Black',sans-serif;text-transform:uppercase;font-size:39px;margin:32px 0 10px}.steps p{font-size:16px;line-height:1.5;max-width:320px;margin:0}.contact{background:var(--red);padding:clamp(75px,9vw,135px) clamp(24px,5vw,88px);display:grid;grid-template-columns:1.5fr .5fr;gap:30px;align-items:end}.contact h2{font-family:Impact,'Arial Black',sans-serif;font-size:clamp(67px,8.6vw,154px);line-height:.84;letter-spacing:-.035em;margin:0;white-space:nowrap}.contact h2 i{font-style:normal;color:var(--paper)}.contact h2 span{color:var(--paper)}.contact-aside{padding-bottom:10px}.contact-aside p{font-size:19px;line-height:1.4;margin:0 0 25px}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:#353535}.contact-aside small{display:block;font-size:13px;margin-top:14px}footer{background:var(--ink);color:#fff;padding:60px clamp(24px,5vw,88px) 36px;display:grid;grid-template-columns:1.2fr 1fr .5fr;gap:30px}footer .footer-brand{font-family:Impact,'Arial Black',sans-serif;font-size:47px;line-height:.82;letter-spacing:-.025em;width:max-content}footer .footer-brand span{font:12px Arial,sans-serif;vertical-align:top;margin-left:4px}footer p{font-size:16px;margin:0 0 8px}footer p+ p{color:#aaa}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:15px;font-weight:800}footer small{grid-column:1/-1;border-top:1px solid #555;padding-top:30px;color:#aaa;font-size:13px}a:focus-visible,button:focus-visible{outline:3px solid #2855ff;outline-offset:4px}@media(max-width:1100px){.hero{grid-template-columns:1fr .8fr}.hero h1{font-size:clamp(64px,7.5vw,110px)}.section-intro{grid-template-columns:1fr 2fr}.section-intro p:last-child{grid-column:2}.project-visual strong{font-size:clamp(33px,3.4vw,50px)}.contact h2{font-size:clamp(65px,8vw,105px)}}@media(max-width:760px){.site-header{height:72px;padding:12px 22px}.brand{font-size:17px}.menu-toggle{display:block;background:transparent;border:0;font-weight:800;padding:12px;font-size:15px}.menu-toggle span{font-size:21px;margin-left:4px}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;background:var(--paper);border-bottom:1px solid var(--ink);padding:20px 22px 26px;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav a{padding:15px 0}.site-header nav .nav-contact{padding:15px;margin-top:10px;text-align:center}.hero{display:flex;flex-direction:column}.hero-copy{padding:68px 24px 58px}.hero h1{font-size:clamp(58px,13.6vw,104px);margin:20px 0 25px}.hero-body{font-size:17px}.hero-actions{gap:24px;flex-wrap:wrap}.hero-art{border-left:0;border-top:1px solid #555;min-height:360px;padding:23px}.logo-window{height:260px}.logo-window img{width:105%}.art-caption,.art-foot{font-size:10px}.section{padding:85px 24px}.section-intro{display:block;margin-bottom:38px}.section h2{font-size:clamp(55px,12vw,84px)}.section-intro p:last-child{margin-top:25px}.work-grid{grid-template-columns:1fr;gap:44px}.project-visual{min-height:350px}.project-visual strong{font-size:clamp(45px,10vw,72px)}.project-info{min-height:auto}.services{display:block}.services-heading{margin-bottom:40px}.service h3{font-size:36px}.approach-top{display:block}.approach-top>p{margin-top:28px}.steps{grid-template-columns:1fr;margin-top:42px}.steps>div{border-right:0;border-bottom:1px solid var(--line);padding:26px 0 32px;margin:0}.steps h3{margin:18px 0 8px}.contact{display:block;padding:85px 24px}.contact h2{font-size:clamp(59px,12vw,93px)}.contact-aside{margin-top:45px;max-width:430px}footer{grid-template-columns:1fr 1fr;padding:55px 24px 30px}footer .footer-brand{font-size:38px}footer>div:nth-child(2){grid-column:1/-1;grid-row:2}footer .footer-links{grid-column:2;grid-row:1}}@media(max-width:380px){.hero h1{font-size:12.7vw}.contact h2{font-size:11vw}.hero-actions{align-items:flex-start;flex-direction:column}.project-visual{min-height:300px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.button{transition:none}}

.contact-icon{width:115px;height:115px;object-fit:contain;display:block;margin:0 0 20px auto}
@media(max-width:760px){.contact-icon{margin:0 0 20px;width:100px;height:100px}}

/* Responsive refinement: show the entire mark and keep portfolio type clear. */
.hero-art{gap:28px}.logo-window{height:auto;min-height:0;overflow:visible;display:block;padding:16px 0}.logo-window img{width:100%;max-width:100%;height:auto;mix-blend-mode:normal}.project-visual strong{position:relative;z-index:1;overflow-wrap:normal}.project-prop .project-visual,.project-compass .project-visual{isolation:isolate}.marquee b{font-family:Arial,Helvetica,sans-serif;font-size:28px;vertical-align:middle;line-height:0}.quill-mark,.compass-mark{display:none}
@media(max-width:760px){.hero-art{min-height:0}.logo-window{height:auto;padding:12px 0}.logo-window img{width:100%;max-width:100%}.section h2{font-size:clamp(42px,10.7vw,72px);line-height:.98}.project-visual{min-height:290px;padding:22px}.project-visual strong{font-size:clamp(30px,8vw,52px);line-height:1.04;letter-spacing:-.015em}.project-info{padding-top:18px}.marquee{font-size:22px}.marquee b{font-size:23px;margin:0 12px}}

.project-preview{display:block;position:relative;aspect-ratio:1200/750;overflow:hidden;background:#ddd;border:1px solid var(--ink)}.project-preview img{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform .3s ease}.project-preview:hover img,.project-preview:focus-visible img{transform:scale(1.035)}.preview-link{position:absolute;right:0;bottom:0;background:var(--ink);color:#fff;padding:12px 15px;font-size:13px;font-weight:800;letter-spacing:.02em}.project-preview:hover .preview-link{background:var(--red);color:var(--ink)}@media(prefers-reduced-motion:reduce){.project-preview img{transition:none}.project-preview:hover img,.project-preview:focus-visible img{transform:none}}

/* Interior pages */
.page-hero{background:var(--ink);color:var(--paper);padding:clamp(70px,9vw,135px) clamp(24px,5vw,88px) clamp(76px,9vw,140px)}
.page-hero .section-number{color:var(--red)}
.page-hero h1{font-family:Impact,'Arial Black',sans-serif;text-transform:uppercase;font-size:clamp(55px,9vw,145px);line-height:.91;letter-spacing:-.035em;margin:0;max-width:1200px;overflow-wrap:break-word}
.page-hero h1 em{font-style:normal;color:var(--red)}
.page-hero>p:last-child{font-size:clamp(19px,2vw,25px);line-height:1.35;max-width:700px;margin:35px 0 0}
.page-section{padding:clamp(70px,8vw,120px) clamp(24px,5vw,88px)}
.page-section h2,.page-cta h2{font-family:Impact,'Arial Black',sans-serif;text-transform:uppercase;font-size:clamp(42px,5vw,80px);letter-spacing:-.025em;line-height:.96;margin:0 0 24px}
.page-section p,.page-section li{font-size:18px;line-height:1.55}
.page-section .section-number{font-size:13px}
.page-section.pale{background:#e9e5db}
.case-list{display:grid;gap:75px}
.case-row{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(30px,5vw,90px);align-items:center}
.case-row:nth-child(even) .case-image{order:2}
.case-image{display:block;overflow:hidden;border:1px solid var(--ink);aspect-ratio:1200/750;background:#ddd}
.case-image img,.detail-image img{width:100%;height:100%;object-fit:cover}
.case-copy p:not(.section-number){max-width:480px;margin:0 0 30px}
.under-link{font-weight:800;text-decoration:underline;text-underline-offset:6px;font-size:16px}
.under-link:hover{color:var(--red)}
.offer{display:grid;grid-template-columns:24% 1fr;gap:25px;border-top:2px solid var(--ink);padding:38px 0 55px}
.offer:last-child{border-bottom:2px solid var(--ink)}
.offer>span,.three b{font-size:14px;letter-spacing:.12em;font-weight:800}
.offer p{max-width:700px;margin:0 0 25px}
.offer ul,.detail-grid ul{padding-left:23px;margin:0;columns:2;column-gap:45px}
.offer li,.detail-grid li{break-inside:avoid;margin-bottom:9px}
.three{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px}
.three>div{border-top:2px solid var(--ink);padding-top:20px}
.three p{margin:15px 0 0}
.faq{max-width:850px;margin-top:40px}
.faq details{border-top:1px solid var(--ink);padding:23px 0}
.faq details:last-child{border-bottom:1px solid var(--ink)}
.faq summary{cursor:pointer;font-size:20px;font-weight:800;line-height:1.35;padding-right:30px}
.faq p{margin:18px 0 2px;max-width:700px}
.editorial{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.editorial p:first-child{margin-top:0}
.editorial .under-link{display:inline-block;margin-top:15px}
.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:8vw}
.contact-page ol{padding-left:25px;max-width:550px}
.contact-page li{margin:0 0 14px}
.contact-panel{background:var(--ink);color:var(--paper);padding:clamp(25px,4vw,55px);align-self:start;min-width:0}
.contact-panel .section-number{color:var(--red)}
.contact-email{display:block;font-family:Impact,'Arial Black',sans-serif;font-size:clamp(23px,3vw,47px);line-height:1.1;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:7px}
.contact-panel p:not(.section-number){font-size:16px;color:#d2cfc8;margin:27px 0}
.case-detail{max-width:1500px;margin:auto}
.detail-image{border:1px solid var(--ink);aspect-ratio:1200/750;overflow:hidden;background:#ddd;margin-bottom:75px}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:7vw;border-top:1px solid var(--ink);padding:38px 0}
.detail-grid p:last-child{margin:0;max-width:610px}
.detail-actions{border-top:1px solid var(--ink);padding-top:35px;display:flex;align-items:center;gap:35px;flex-wrap:wrap}
.page-cta{background:var(--red);padding:clamp(70px,8vw,120px) clamp(24px,5vw,88px)}
.page-cta h2{font-size:clamp(60px,8vw,125px)}
.page-cta p:not(.section-number){font-size:20px;line-height:1.4;max-width:510px;margin:0 0 30px}
.work-note a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.page-hero{padding:70px 24px 85px}.page-hero h1{font-size:clamp(50px,12vw,85px)}.page-hero>p:last-child{margin-top:26px}.page-section{padding:75px 24px}.case-row,.editorial,.contact-page,.detail-grid{grid-template-columns:1fr;gap:25px}.case-row:nth-child(even) .case-image{order:0}.case-list{gap:60px}.case-copy h2{font-size:50px}.offer{grid-template-columns:1fr;gap:20px}.offer ul,.detail-grid ul{columns:1}.three{grid-template-columns:1fr;gap:30px}.detail-image{margin-bottom:45px}.detail-grid{padding:30px 0}.detail-grid h2{margin-bottom:0}.contact-panel{padding:30px}.page-cta{padding:80px 24px}}

.contact-page>div:first-child>p:not(.section-number){max-width:620px}.contact-explore>p:not(.section-number){max-width:560px}.contact-explore .detail-actions{border-top:0;padding-top:0}.next-steps .three p{max-width:380px}

@media(min-width:761px){.work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 24px}}.case-status{background:#e9e5db;padding:20px 24px;margin:20px 0 35px}.case-status a{text-decoration:underline;text-underline-offset:3px}

/* Selected work preview refinements */
.project-preview,.case-image{position:relative;isolation:isolate}
.project-preview img,.case-image img{transition:transform .3s ease}
.project-preview:hover img,.project-preview:focus-visible img,.case-image:hover img,.case-image:focus-visible img{transform:scale(1.025)}
.preview-status{position:absolute;z-index:2;top:14px;left:14px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:9px 12px;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;box-shadow:3px 3px 0 var(--ink)}
.preview-link{z-index:2}
.case-row:nth-child(even){grid-template-columns:.75fr 1.25fr}
.case-image img{object-position:top center}
.project-info h3 a:hover,.project-info h3 a:focus-visible{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.case-row:nth-child(even){grid-template-columns:1fr}.preview-status{top:10px;left:10px;padding:7px 9px;font-size:11px}.project-preview,.case-image{aspect-ratio:1200/750}}
@media(prefers-reduced-motion:reduce){.case-image img{transition:none}.case-image:hover img,.case-image:focus-visible img{transform:none}}
