.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gate-page{min-height:100dvh}.gate-shell{display:grid;grid-template-columns:minmax(380px,1fr) minmax(430px,1fr);min-height:100dvh}.gate-story{padding:52px clamp(32px,5vw,88px);background:var(--wash);position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start}.gate-story .brand img{width:210px}.gate-story-copy{position:relative;z-index:1;margin:70px 0 0;max-width:440px}.gate-story h1{font:650 clamp(40px,4.3vw,68px)/1.12 var(--heading-font);letter-spacing:-2px;color:var(--brand);margin:14px 0 24px}.gate-story-copy>p:last-child{font-size:18px;line-height:1.75;color:var(--muted);max-width:380px}.gate-art{width:calc(100% + 150px);max-width:none;margin:10px -75px -30px;height:clamp(180px,26vh,340px);object-fit:cover;object-position:center}.gate-hospital{position:relative;margin:40px 0 0;font-size:14px;font-weight:650;color:var(--brand);line-height:1.8}.gate-hospital span{font-size:13px;font-weight:450;color:var(--muted)}.gate-entry{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;background:var(--paper)}.access-form{width:min(100%,360px);text-align:center}.gate-eyebrow{font-size:14px;color:var(--secondary);font-weight:650}.access-form h2{font:650 36px/1.3 var(--heading-font);letter-spacing:-1px;color:var(--brand);margin:10px 0}.gate-instruction{font-size:16px;color:var(--muted);margin:0 0 24px}.pin-entry{position:relative;width:216px;height:54px;margin:auto}.pin-input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:text;z-index:1}.pin-entry:focus-within{outline:2px solid var(--secondary);outline-offset:6px;border-radius:8px}.pin-dots{display:flex;align-items:center;justify-content:center;gap:22px;height:100%;pointer-events:none}.pin-dots span{height:18px;width:18px;border-radius:50%;background:var(--line);border:2px solid var(--line);transition:background .12s ease}.pin-dots .filled{background:var(--brand);border-color:var(--brand)}.gate-error{font-size:14px;min-height:24px;color:#9A402E;margin:6px 0 16px;line-height:1.6}.keypad{display:grid;grid-template-columns:repeat(3,84px);justify-content:center;gap:16px 20px}.keypad button{height:84px;width:84px;border-radius:50%;border:1px solid var(--line);background:var(--surface);color:var(--brand);font-size:30px;font-weight:550;display:grid;place-items:center;transition:background .15s,transform .15s}.keypad button:hover{background:var(--wash);border-color:var(--secondary)}.keypad button:active{background:var(--wash);transform:scale(.95)}.keypad .key-action{font-size:14px;border-color:transparent;background:transparent;color:var(--muted)}.keypad .key-action svg{height:26px;width:26px}.gate-footnote{font-size:13px;line-height:1.75;color:var(--muted);margin:22px 0 0}.gate-mobile-brand{display:none}
.studio-header{max-width:1400px;margin:auto;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.studio-main{max-width:1400px;padding-top:54px}.studio-intro{max-width:780px;margin:0 0 44px}.studio-intro h1{font:650 46px/1.2 var(--heading-font);letter-spacing:-1.8px;color:var(--brand);margin:8px 0 18px}.studio-intro>p:not(.workspace-label){font-size:18px;line-height:1.8;color:var(--muted)}.studio-note{background:var(--wash);padding:16px 20px;border-radius:14px;font-size:15px;line-height:1.7;margin-top:24px}.brand-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}.brand-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:var(--surface);color:var(--ink)}.brand-sample{background:var(--paper);padding:28px;border-bottom:1px solid var(--line)}.sample-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.sample-top>span{font-size:12px;color:var(--muted)}.sample-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:center;margin:28px 0}.sample-greeting{color:var(--secondary);font-size:13px;font-weight:600;margin:0 0 8px}.sample-layout h2{font:650 31px/1.2 var(--heading-font);letter-spacing:-1px;color:var(--brand);margin:0 0 22px}.sample-art{width:100%;height:190px;object-fit:cover;border-radius:var(--radius)}.sample-call{display:flex;gap:10px;align-items:center;font-size:13px;background:var(--surface);padding:12px;border-radius:10px;border:1px solid var(--line)}.sample-call small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.sample-dot{width:10px;height:10px;border-radius:50%;background:var(--secondary);flex-shrink:0}.swatches{display:flex;align-items:center;gap:8px}.swatches>span:not(.font-sample){width:28px;height:28px;border-radius:50%;border:1px solid #00000015}.font-sample{font-size:12px;color:var(--muted);margin-left:auto}.brand-card-copy{padding:26px 28px}.brand-card-copy>h2{font:650 27px/1.3 var(--heading-font);color:var(--brand)}.brand-tag{font-size:13px;color:var(--secondary);font-weight:650;margin:8px 0 12px}.brand-card-copy>p:not(.brand-tag){font-size:15px;line-height:1.8;min-height:81px;color:var(--muted)}.brand-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0 16px}.asset-link{font-size:13px;text-underline-offset:4px;color:var(--muted)}
@media(max-width:900px){.gate-shell{grid-template-columns:1fr}.gate-story{display:none}.gate-entry{min-height:100dvh;padding:30px 24px}.gate-mobile-brand{display:block;margin-bottom:26px}.gate-mobile-brand img{width:165px;height:auto}.access-form h2{font-size:30px}.gate-eyebrow{display:none}.brand-gallery{grid-template-columns:1fr}.studio-main{padding-top:32px}.studio-intro h1{font-size:36px}.studio-header{padding:18px 20px}.studio-header .brand img{width:145px}.studio-header .secondary{font-size:13px}.studio-intro>p:not(.workspace-label){font-size:16px}}
@media(max-width:420px){.gate-entry{padding:22px}.gate-mobile-brand{margin-bottom:18px}.gate-instruction{font-size:15px;margin-bottom:18px}.keypad{grid-template-columns:repeat(3,76px);gap:12px 20px}.keypad button{width:76px;height:76px;font-size:29px}.gate-error{margin-bottom:12px}.gate-footnote{margin-top:16px}.access-form h2{font-size:30px}.brand-sample{padding:20px}.sample-layout{gap:12px}.sample-layout h2{font-size:26px}.sample-art{height:170px}.sample-call{font-size:12px;padding:9px}.brand-card-copy{padding:22px}.brand-actions .primary,.brand-actions .secondary{font-size:14px}.sample-top img{width:145px}}
@media(prefers-reduced-motion:reduce){.keypad button,.pin-dots span{transition:none}}
@media(max-width:900px) and (max-height:850px){.gate-entry{padding:18px 22px;justify-content:flex-start}.gate-mobile-brand{margin-bottom:12px}.gate-mobile-brand img{width:140px}.access-form h2{font-size:28px;margin:8px 0}.pin-entry{height:40px}.gate-error{min-height:22px;margin:4px 0 10px}.keypad{gap:10px 20px}.gate-footnote{margin-top:12px;font-size:12px}}

.gate-error[data-state="opening"]{color:var(--brand)}
