/* The two corners of the mark are the house framing device. Signal belongs
   to the studio's signature, actions, and focus—not to client artwork. */
:root{--brand-signature-size:clamp(40px,12.4vw,210px);--brand-frame:22px;--brand-stroke:4px;--brand-mark-size:clamp(120px,20vw,290px)}
.header .brand-symbol{width:36px;height:36px}.header .wordmark{font-size:27px;gap:12px}.header-cta{white-space:nowrap;border-inline-start:0;background:var(--signal);color:var(--ink);padding:10px 17px;border-radius:var(--control-radius);font-weight:700;gap:27px}.header-cta span{color:var(--ink)}.header-cta:hover{background:var(--paper)}.header nav a[aria-current=page]:after{transform:scaleX(1)}
.hero-top .status-dot,.contact-top .status-dot{width:10px;height:10px;border-radius:0;background:transparent;border:3px solid var(--signal);border-inline-end-color:transparent;transform:rotate(-45deg)}
.hero-aside{position:relative;padding-inline-start:22px;border-inline-start:2px solid var(--signal)}
.brand-statement{position:relative;overflow:hidden;background:var(--signal);color:var(--ink);margin:0 var(--gutter) 0;padding:42px 48px;display:grid;grid-template-columns:1.5fr 1fr;align-items:center;gap:50px}.brand-statement-copy>span{font:11px var(--mono);letter-spacing:.06em}.brand-statement h2{font-size:clamp(42px,5.4vw,82px);line-height:1.04;letter-spacing:-.055em;margin-block:30px 24px}.brand-statement p{font-size:14px;max-width:380px;line-height:1.8}.brand-statement-visual{position:relative;justify-self:center;display:grid;place-items:center;width:var(--brand-mark-size);height:var(--brand-mark-size)}.brand-statement-visual svg{height:100%;width:100%;color:var(--ink)}.brand-statement .text-link{font-size:11px;margin-block-start:26px}.brand-statement-visual:after{content:'FORM + MATTER';position:absolute;inset-block-end:-17px;font:9px var(--mono);letter-spacing:.15em}
.home-work-card,.portfolio-entry>a{position:relative}.home-work-card:before,.home-work-card:after,.portfolio-entry>a:before,.portfolio-entry>a:after{content:'';position:absolute;width:var(--brand-frame);height:var(--brand-frame);z-index:2;pointer-events:none;opacity:0;transition:opacity var(--fast);border-color:var(--signal);border-style:solid}.home-work-card:before,.portfolio-entry>a:before{inset-inline-start:10px;inset-block-start:10px;border-width:var(--brand-stroke) 0 0 var(--brand-stroke)}.home-work-card:after,.portfolio-entry>a:after{inset-inline-end:10px;inset-block-start:calc(350px - var(--brand-frame) - 10px);border-width:0 var(--brand-stroke) var(--brand-stroke) 0}.portfolio-entry>a:after{inset-block-start:10px;border-width:var(--brand-stroke) var(--brand-stroke) 0 0}.home-work-card:hover:before,.home-work-card:hover:after,.home-work-card:focus-visible:before,.home-work-card:focus-visible:after,.portfolio-entry>a:hover:before,.portfolio-entry>a:hover:after,.portfolio-entry>a:focus-visible:before,.portfolio-entry>a:focus-visible:after{opacity:1}
.page-intro,.portfolio-intro,.case-header{position:relative}.page-intro:after,.portfolio-intro:after{content:'';position:absolute;width:32px;height:32px;inset-inline-end:var(--gutter);inset-block-start:54px;border-block-start:6px solid var(--ink);border-inline-end:6px solid var(--ink)}.page-intro.dark:after{border-color:var(--signal)}.page-intro:not(.dark) .section-label,.portfolio-intro .section-label{padding-inline-start:15px;border-inline-start:4px solid var(--ink)}
.studio-poster{background:var(--signal);color:var(--ink)}.studio-poster svg{transform:none}.studio-poster p{font-weight:600}.page-cta{position:relative}.page-cta:before{content:'';width:18px;height:18px;border-block-start:4px solid var(--ink);border-inline-start:4px solid var(--ink);position:absolute;inset-inline-start:var(--gutter);inset-block-start:24px}.page-cta>div{padding-block-start:10px}
.expanded-footer{background:var(--ink);color:var(--paper);padding-block:45px 25px;gap:34px}.expanded-footer .brand-symbol{color:var(--signal);width:30px;height:30px}.expanded-footer .footer-main p{color:var(--light-muted)}.expanded-footer .footer-links{color:var(--paper)}.expanded-footer .footer-links a:hover{color:var(--signal)}.expanded-footer .footer-meta{border-color:var(--dark-line);color:var(--light-muted)}.expanded-footer .footer-signature{display:block;grid-column:1/-1;padding-block:25px 10px;overflow:hidden;line-height:.95;letter-spacing:-.085em;font-size:var(--brand-signature-size);font-weight:800;color:var(--signal);white-space:nowrap}.expanded-footer .footer-signature span{display:block}.expanded-footer .footer-links a:last-child{color:var(--signal)}.expanded-footer .footer-meta a:hover{color:var(--signal)}
@media(min-width:1800px){:root{--brand-signature-size:210px}}
@media(max-width:1100px){.header .wordmark{font-size:24px}.header .brand-symbol{width:30px;height:30px}.brand-statement{padding:35px}.brand-statement h2{font-size:54px}}
@media(max-width:800px){.hero-aside{padding-inline-start:18px}.brand-statement{gap:25px;padding:32px}.brand-statement h2{font-size:44px}.home-work-card:after{inset-block-start:calc(300px - var(--brand-frame) - 10px)}}
@media(max-width:600px){.header .wordmark{font-size:20px;gap:8px}.header .brand-symbol{width:27px;height:27px}.header-cta{padding:8px 11px;font-size:var(--text-xs);gap:9px}.header-cta span{font-size:18px}.header{gap:8px}.menu-toggle{width:30px;padding:4px}.hero-aside{padding-inline-start:16px}.brand-statement{grid-template-columns:1fr;padding:28px;gap:30px}.brand-statement-copy>span{font-size:9px}.brand-statement h2{font-size:42px;margin-block:22px 20px}.brand-statement p{font-size:12px}.brand-statement-visual{justify-self:end;width:115px;height:115px;margin-block-end:15px}.brand-statement-visual:after{font-size:7px}.brand-statement .text-link{margin-block-start:22px}.page-intro:after,.portfolio-intro:after{width:20px;height:20px;border-width:4px;inset-block-start:30px}.page-intro .section-label,.portfolio-intro .section-label{max-width:85%}.expanded-footer .footer-signature{padding-block:15px 0}.expanded-footer .footer-meta{font-size:9px}.expanded-footer .footer-links{font-size:12px}}
@media(min-width:1101px){.hero-aside{max-width:355px;min-width:320px}}
.hero-top .status-dot,.contact-top .status-dot{width:14px;height:14px;background:var(--signal);border:0;transform:none;mask:url('assets/symbol.svg') center/contain no-repeat}
.expanded-footer .footer-links a{font-size:14px}.expanded-footer .footer-meta a{font-size:var(--text-xs)}.expanded-footer .footer-meta>a:last-child{font-size:22px}

@media(max-width:600px){.header .menu-toggle{width:44px;min-height:44px;padding:10px;flex-shrink:0}.header .wordmark{font-size:19px}.header{padding-block:16px}.expanded-footer .footer-meta{font-size:var(--text-xs)}.expanded-footer .footer-meta a{min-height:44px;display:inline-flex;align-items:center}.expanded-footer .footer-links a{min-height:32px;display:inline-flex;align-items:center}}
@media(max-width:360px){.header .wordmark{font-size:17px}.header .brand-symbol{width:24px;height:24px}.header-cta{font-size:9px;padding:9px;gap:5px}}
