/* Stable first paint and quieter desktop proportions. */
html{background:var(--paper);scroll-behavior:auto;scrollbar-gutter:stable}
html.preview-embed{scrollbar-gutter:auto}
html[data-copy=pending] body{visibility:hidden}
@media(min-width:1001px){
  html{scroll-padding-top:82px}
  .site-header{height:66px;padding:8px 32px;border-bottom:1px solid var(--line)}
  .site-header .brand-icon{width:36px}.header-controls{gap:22px}.header-controls button{min-height:44px;padding:8px 0}.header-caption{font-size:9px;letter-spacing:.7px}
  .hero{padding-top:116px}.section{padding:70px 32px}.section-meta{margin-bottom:36px}
  .work-heading{align-items:center;gap:48px;margin-bottom:40px}.work h2{font-size:clamp(46px,4.2vw,68px);line-height:1.08;letter-spacing:-.045em}.work-heading p{font-size:15px;line-height:1.55;padding:0;max-width:300px}
  .project{padding:24px 0;grid-template-columns:50px 1fr 280px 45px}.project h3,.page-project-list .project h2{font-size:clamp(38px,3.5vw,56px);letter-spacing:-.045em}.project-arrow{font-size:29px}.project-type{font-size:13px;line-height:1.5}
  .studio h2{font-size:clamp(48px,4.7vw,76px);line-height:1.1;letter-spacing:-.045em}.studio-copy{margin-top:40px}.studio-copy p{font-size:19px}.approach h2{font-size:48px;letter-spacing:-.035em}.contact h2{font-size:clamp(64px,6.5vw,104px);letter-spacing:-.045em;line-height:1.05}.contact-title>span{font-size:120px}.contact-bottom{margin-top:40px}
  .page-main{padding-top:100px}.page-intro{padding:40px 0 44px}.page-intro h1{font-size:clamp(52px,5vw,80px);letter-spacing:-.045em;line-height:1.08}.page-intro .section-meta{margin-bottom:26px}.page-lead{font-size:18px;margin-top:24px}.editorial-split h2{font-size:44px}.editorial-split p{font-size:19px}.service-list h2{font-size:38px}.page-cta h2{font-size:36px}
}

/* Inline validation follows the monochrome form styling in either theme. */
.contact-page .inquiry-form .field-error{display:flex;align-items:flex-start;gap:6px;font-size:11px;font-weight:400;line-height:1.4;letter-spacing:0;color:var(--ink);padding:1px 0 0}
.contact-page .inquiry-form .field-error[hidden]{display:none}
.field-error-icon{display:inline-grid;place-items:center;border:1px solid currentColor;border-radius:50%;width:13px;height:13px;min-width:13px;font-size:9px;line-height:1;margin-top:1px}
html .contact-page .inquiry-form [aria-invalid=true]{border-color:var(--ink);box-shadow:inset 0 0 0 .5px var(--ink)}
html .contact-page .inquiry-form [aria-invalid=true]:focus{box-shadow:inset 0 0 0 .5px var(--ink),0 0 0 3px color-mix(in srgb,var(--ink) 6%,transparent)}
.form-validation-summary{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
/* An unmistakable writing surface, with soft in-field focus. */
.contact-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:7vw;max-width:1320px;margin:44px auto 80px;align-items:start}
.contact-intro{padding-top:14px}.contact-intro .section-meta{margin-bottom:28px}.contact-intro h1{font-size:clamp(42px,4.2vw,64px);letter-spacing:-.045em;line-height:1.12}.contact-lead{font-size:17px;line-height:1.6;margin-top:26px}.contact-aside{display:block;margin-top:48px}.contact-aside>div{margin-bottom:26px}.contact-aside a,.contact-aside p{font-size:16px}.contact-aside small{font-size:10px}
.contact-card{background:#f5f5f5;border:1px solid #dedede;border-radius:18px;padding:32px;min-width:0}
.form-heading{margin-bottom:28px}.form-heading h2{font-size:30px;font-weight:600;line-height:1.2;letter-spacing:-1px}.form-heading p{font-size:13px;margin-top:10px;color:var(--muted);line-height:1.5}
.inquiry-form label{gap:9px;margin-bottom:20px;font-size:12px;font-weight:600}.inquiry-form .form-row{gap:18px}
.inquiry-form input,.inquiry-form select,.inquiry-form textarea{background:#fff;border:1px solid #d9d9d9;border-radius:8px;padding:13px 14px;font-size:16px;font-weight:400;line-height:1.4;min-height:50px;outline:none;outline-offset:0;transition:border-color .15s,box-shadow .15s}
.inquiry-form textarea{min-height:128px;resize:vertical}.inquiry-form input::placeholder,.inquiry-form textarea::placeholder{color:#929292}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{outline:none;border-color:#777;box-shadow:0 0 0 3px #0000000c}.inquiry-form input:-webkit-autofill{-webkit-text-fill-color:var(--ink);box-shadow:0 0 0 1000px var(--paper) inset}
.form-note{font-size:11px;line-height:1.6;color:var(--muted);margin:2px 0 18px}.send-button{width:100%;border-radius:9px;padding:17px 20px;font-size:12px;min-height:56px}.send-button:disabled{cursor:wait;opacity:.65}.send-button[aria-busy=true]>span:last-child{display:block;width:19px;height:19px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:sending .8s linear infinite}.form-honeypot{display:none!important}
.form-status{font-size:15px;line-height:1.6;padding:20px;border:1px solid var(--line);border-radius:9px;margin-top:20px;outline:none}.form-status[data-state=success]{margin-top:0;padding:28px 20px}.form-status[data-state=error],.form-status[data-state=uncertain]{border-color:var(--ink)}.send-another{margin-top:20px}.form-privacy{font-size:10px;color:var(--muted);margin-top:20px;line-height:1.6}.form-privacy summary{cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:3px;width:fit-content}.form-privacy p{margin-top:10px;max-width:450px}.form-status[hidden],.send-another[hidden]{display:none}
html[data-theme=dark] .contact-card{background:#222;border-color:#3b3b3b}html[data-theme=dark] .inquiry-form input,html[data-theme=dark] .inquiry-form select,html[data-theme=dark] .inquiry-form textarea{background:#1a1a1a;border-color:#4a4a4a}html[data-theme=dark] .inquiry-form input:focus,html[data-theme=dark] .inquiry-form select:focus,html[data-theme=dark] .inquiry-form textarea:focus{border-color:#aaa;box-shadow:0 0 0 3px #ffffff0e}
.contact-mobile-details{display:none}
.service-field{margin-bottom:20px}.inquiry-form .service-field>label{margin-bottom:9px}.service-picker{position:relative}.service-picker select[hidden]{display:none}
.service-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:50px;padding:13px 15px;text-align:left;background:var(--paper);color:var(--ink);border:1px solid #d9d9d9;border-radius:8px;font-size:16px;line-height:1.4;font-weight:400;transition:border-color .15s,box-shadow .15s}
.service-trigger:focus-visible,.service-picker.is-open .service-trigger{outline:none;border-color:#777;box-shadow:0 0 0 3px #0000000c}.service-chevron{width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 3px 4px 0;flex-shrink:0;transition:transform .18s}.is-open .service-chevron{transform:rotate(225deg);margin-top:6px}
.service-options{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:30;overflow-y:auto;overscroll-behavior:contain;padding:6px;background:var(--paper);border:1px solid #d9d9d9;border-radius:13px;box-shadow:0 12px 35px #00000017,0 2px 7px #00000006;animation:select-appear .16s ease-out;scrollbar-width:thin}.service-options[hidden]{display:none}.opens-up .service-options{top:auto;bottom:calc(100% + 8px)}
.service-option{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:44px;padding:11px 12px;border-radius:8px;font-size:14px;font-weight:400;line-height:1.45;cursor:pointer;user-select:none}.service-option.is-active{background:#efefef}.service-option[aria-selected=true]{background:var(--ink);color:var(--paper)}.service-check{opacity:0;flex-shrink:0;font-size:14px}.service-option[aria-selected=true] .service-check{opacity:1}
html[data-theme=dark] .service-trigger{border-color:#4a4a4a}html[data-theme=dark] .service-trigger:focus-visible,html[data-theme=dark] .service-picker.is-open .service-trigger{border-color:#aaa;box-shadow:0 0 0 3px #ffffff0e}html[data-theme=dark] .service-options{background:#242424;border-color:#484848;box-shadow:0 12px 35px #0005}html[data-theme=dark] .service-option.is-active{background:#383838}html[data-theme=dark] .service-option[aria-selected=true]{background:var(--ink);color:var(--paper)}
@keyframes select-appear{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.service-field{margin-bottom:18px}.service-option{min-height:46px;font-size:13px}}
@media(max-width:600px){.contact-mobile-details{display:block;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.contact-mobile-details p{color:var(--muted);margin-top:8px}}
@keyframes sending{to{transform:rotate(360deg)}}
@media(max-width:1000px){.contact-hero{grid-template-columns:1fr;gap:32px;margin-top:32px}.contact-intro h1{font-size:50px}.contact-aside{display:flex;gap:35px;flex-wrap:wrap;margin-top:28px}.contact-aside>div{margin:0}.contact-lead{font-size:16px}.contact-card{padding:28px}}
@media(max-width:600px){.contact-hero{gap:28px;margin-top:28px;margin-bottom:45px}.contact-intro{padding-top:0}.contact-intro .section-meta{margin-bottom:20px}.contact-intro h1,html[lang=hy] .contact-intro h1{font-size:36px;letter-spacing:-1.2px;line-height:1.16}.contact-lead{font-size:14px;margin-top:18px}.contact-aside{display:none}.contact-card{padding:21px 17px;border-radius:13px}.form-heading{margin-bottom:23px}.form-heading h2{font-size:26px}html[lang=hy] .form-heading h2{font-size:22px;letter-spacing:-.5px}.form-heading p{font-size:12px}.inquiry-form .form-row{gap:0}.inquiry-form label{font-size:11px;margin-bottom:18px}.form-note{font-size:10px}.send-button{font-size:10px;min-height:54px}.form-status{font-size:13px}.form-privacy{font-size:9px}}
@media(prefers-reduced-motion:reduce){.send-button[aria-busy=true]>span:last-child{animation:none}}
