@import "https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-canvas:#fbf7ef;--color-canvas-rgb:251, 247, 239;--color-ink:#17130f;--color-muted:#71695e;--color-rule:#ddd5c8;--color-rule-dark:#181511;--color-soft:#efe8db;--color-accent:#8a7e6f;--color-error:#a23d2d;--font-display:"Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;--font-body:"Pretendard Variable", "Pretendard", -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", system-ui, sans-serif;--font-mono:"SFMono-Regular", "Roboto Mono", "Menlo", "Pretendard Variable", "Pretendard", monospace;--page-x:clamp(10px, 2vw, 28px);--header-height:66px;--container:min(100% - var(--page-x) * 2, 1384px);--ease:cubic-bezier(.23, 1, .32, 1);--header-logo-duration:.62s;--header-line-delay:.66s;--header-line-duration:.72s;--content-delay:.12s;--content-fast-delay:80ms;--header-intro-content-delay:1.46s;--paint-wall-texture:url(/assets/textures/painted-plaster-wall.jpg);--paint-noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='360' height='360' viewBox='0 0 360 360'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.72' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='matrix' values='.22 0 0 0 0 .22 0 0 0 0 .2 0 0 0 0 0 0 0 .35 0'/%3E%3C/filter%3E%3Crect width='360' height='360' filter='url(%23n)' opacity='.44'/%3E%3C/svg%3E");--paint-texture:linear-gradient(90deg, #fffcf6d1, #fbf6ecc7 48%, #fffcf6d6), var(--paint-wall-texture), radial-gradient(ellipse at 18% 14%, #fffef9ad 0%, #fffdf73d 28%, transparent 58%), radial-gradient(ellipse at 82% 74%, #bbab8e12 0%, #bbab8e06 34%, transparent 66%), var(--paint-noise), linear-gradient(135deg, #fffbf4 0%, #f8f1e4 44%, #fcf8f0 100%);--paint-texture-size:100% 100%, cover, 100% 100%, 100% 100%, 460px 460px, 100% 100%;--paint-texture-position:center, center, center, center, center, center;--paint-texture-repeat:no-repeat, no-repeat, no-repeat, no-repeat, repeat, no-repeat}body[data-theme=cappuccino].theme-cappuccino{--color-bg-base:#fffffc;--color-accent-soft:#d6b588;--color-accent-mid:#705e46;--color-accent-strong:#422701;--color-canvas:var(--color-bg-base);--color-canvas-rgb:255,255,252;--color-ink:#21170d;--color-muted:#705e46;--color-rule:#705e463d;--color-rule-dark:#42270199;--color-accent:var(--color-accent-soft);--color-error:#8d3d2d;--paint-texture:linear-gradient(90deg,#fffffce0,#fffffcc2 48%,#fffffce6),var(--paint-wall-texture),linear-gradient(180deg,#ffffff2e,#fffffc3d),var(--paint-noise),linear-gradient(135deg,#fffffc,#fffef8)}.theme-cappuccino ::selection{background:var(--color-accent-strong);color:#f7efe2}.theme-cappuccino .plan-line{border-top-color:var(--color-accent-strong);border-bottom-color:#d6b588bd}.theme-cappuccino .btn:hover,.theme-cappuccino .btn-primary,.theme-cappuccino .contact-slide:hover .contact-slide-cta{background:var(--color-accent-strong);border-color:var(--color-accent-strong);color:#f8efe2}.theme-cappuccino .btn-primary:hover{border-color:var(--color-accent-strong);color:var(--color-accent-strong);background:#d6b5883d}.theme-cappuccino .archive-filter :is(a,button){color:#4227019e}.theme-cappuccino .archive-filter :is(a:hover,button:hover,a[aria-current=page],button[aria-pressed=true]),.theme-cappuccino .filter-button:is(:hover,[aria-pressed=true]){color:var(--color-accent-strong)}.theme-cappuccino :is(.archive-filter a,.archive-filter button,.filter-button):before{background:#705e4670}.theme-cappuccino :is(.archive-filter a[aria-current=page],.archive-filter button[aria-pressed=true],.filter-button[aria-pressed=true]):before{background:var(--color-accent-soft)}.theme-cappuccino :is(input,textarea):focus-visible{border-bottom-color:var(--color-accent-strong);box-shadow:0 1px 0 var(--color-accent-strong)}.theme-cappuccino .field-message textarea{background:#d6b5881a;border-color:#42270170}.theme-cappuccino .field-message textarea:focus-visible{border-color:var(--color-accent-strong);box-shadow:inset 0 0 0 1px var(--color-accent-strong)}.theme-cappuccino .check-option input{border-color:#42270194}.theme-cappuccino .check-option input:before{background:var(--color-accent-strong)}.theme-cappuccino .horizontal-archive .archive-filter{background-color:#fffffcf7;border-top:1px solid #705e4629;box-shadow:0 -12px 34px #42270109}*{box-sizing:border-box}html{scroll-behavior:smooth}html:has(.viewport-fit-page){overscroll-behavior:none;scroll-behavior:auto;height:100dvh;overflow:hidden}body:has(.viewport-fit-page){height:100dvh;overflow:hidden}body{background-color:var(--color-canvas);background-image:var(--paint-texture);background-size:var(--paint-texture-size);background-position:var(--paint-texture-position);background-repeat:var(--paint-texture-repeat);background-blend-mode:normal,normal,normal,soft-light,soft-light,normal;color:var(--color-ink);font-family:var(--font-body);letter-spacing:-.018em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-feature-settings:"kern" 1;background-attachment:fixed;margin:0;line-height:1.6}.home-viewport-page{--content-delay:var(--content-fast-delay)}body[data-header-intro=active] .home-viewport-page{--content-delay:var(--header-intro-content-delay)}.site-header,.form-dialog-panel,.menu-background,.horizontal-archive .archive-filter,.detail-bottom-bar,.viewport-fit-page .horizontal-archive .archive-filter,.viewport-fit-page .detail-bottom-bar{background-image:var(--paint-texture);background-size:var(--paint-texture-size);background-position:var(--paint-texture-position);background-repeat:var(--paint-texture-repeat)}.site-header,.horizontal-archive .archive-filter,.detail-bottom-bar,.viewport-fit-page .horizontal-archive .archive-filter,.viewport-fit-page .detail-bottom-bar{background-blend-mode:normal,normal,normal,soft-light,soft-light,normal}img,svg{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}:focus-visible{outline:2px solid var(--color-ink);outline-offset:4px}::selection{color:#fff;background:#111}.skip-link{z-index:100;left:var(--page-x);background:var(--color-ink);color:#fff;font-family:var(--font-mono);text-transform:uppercase;padding:.55rem .75rem;font-size:.72rem;position:absolute;top:-4rem}.skip-link:focus{top:var(--page-x)}.site-header{z-index:50;background-color:rgba(var(--color-canvas-rgb),.76);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:sticky;top:0}.header-inner{width:calc(100% - var(--page-x) * 2);border-bottom:1px solid #0000;grid-template-columns:auto 1fr auto auto;align-items:center;gap:18px;min-height:66px;margin:0 auto;display:grid}.brand{align-items:flex-start;width:clamp(150px,13.4vw,190px);min-width:clamp(150px,13.4vw,190px);height:52px;display:inline-flex;overflow:visible}.brand-logo img{object-fit:contain;object-position:left center;width:125%;max-width:none;height:auto;display:block;transform:translate(-11.4%,-26%)}.plan-line{border-top:10px solid var(--color-rule-dark);border-bottom:10px solid var(--color-rule);opacity:.9;height:18px}.nav{align-items:center;gap:clamp(1.2rem,2.6vw,3.2rem);display:flex}.nav a,.menu-button,.archive-filter button,.filter-button{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink);font-size:.82rem}.nav a,.menu-panel a{transition:color .28s var(--ease-menu),transform .24s var(--ease-menu)}.nav a:hover,.nav a:focus-visible,.menu-panel a:hover,.menu-panel a:focus-visible{color:var(--color-accent-strong)}.nav a[aria-current=page]{text-underline-offset:5px;text-decoration:underline;text-decoration-thickness:1px}.menu-button{display:none!important}.btn{border:1px solid var(--color-ink);min-height:38px;color:var(--color-ink);cursor:pointer;font-family:var(--font-body);letter-spacing:-.01em;text-transform:none;transition:background .18s var(--ease), color .18s var(--ease);background:0 0;justify-content:center;align-items:center;padding:.55rem .78rem;font-size:.78rem;display:inline-flex}.btn:hover,.btn-primary{background:var(--color-ink);color:#fff}.btn-primary:hover{color:var(--color-ink);background:0 0}.btn-ghost{border-color:var(--color-rule);color:var(--color-muted)}main{overflow:hidden}.viewport-fit-page{height:calc(100dvh - var(--header-height));max-height:calc(100dvh - var(--header-height));overscroll-behavior:none;overflow:hidden}.viewport-fit-page main{height:100%;overflow:hidden}.container,.container-wide{width:var(--container);margin:0 auto}.section-tight{padding:clamp(3.4rem,6vw,6rem) 0}.eyebrow,.project-meta{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--color-muted);font-size:.78rem}h1,h2,h3,p,figure{margin-top:0}p{word-break:keep-all;margin-bottom:1rem;line-height:1.68}.muted{color:var(--color-muted)}.display,.page-title{font-family:var(--font-display);letter-spacing:-.058em;color:var(--color-ink);text-wrap:balance;word-break:keep-all;font-weight:560}.display{text-transform:uppercase;font-size:clamp(4.6rem,9.7vw,10rem);line-height:.92}.page-title{text-transform:uppercase;margin-bottom:clamp(2rem,4vw,4rem);font-size:clamp(4.5rem,10vw,11.5rem);line-height:.92}.hero{align-items:stretch;min-height:calc(100svh - 66px);padding:20px 0 18px;display:grid}.archive-filter{flex-wrap:wrap;align-self:end;gap:clamp(1.8rem,4vw,4rem);padding-bottom:0;display:flex}.archive-filter a,.archive-filter button,.filter-button{cursor:pointer;color:var(--color-ink);background:0 0;border:0;padding:0 0 .16rem}.archive-filter button,.filter-button{font-family:var(--font-body);letter-spacing:.02em}.archive-filter a[aria-current=page],.archive-filter button[aria-pressed=true],.filter-button[aria-pressed=true]{text-underline-offset:8px;text-decoration:underline;text-decoration-thickness:1px}.page-hero{padding:clamp(5rem,8vw,8.5rem) 0 clamp(2rem,5vw,4rem)}.page-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(280px,.72fr);align-items:end;gap:clamp(2rem,6vw,7rem);display:grid}.page-hero-grid-single{grid-template-columns:minmax(0,1fr)}.project-grid{border-top:1px solid var(--color-rule-dark);gap:0;display:grid}.project-card{border-bottom:1px solid var(--color-rule);transition:opacity .18s var(--ease);background:0 0;grid-template-columns:minmax(180px,22vw) minmax(0,1fr) auto;align-items:end;gap:clamp(1.2rem,3vw,3.8rem);padding:clamp(1rem,2vw,1.7rem) 0;display:grid}.project-card:hover{opacity:.74}.project-card img{aspect-ratio:1.25;object-fit:cover;background:var(--color-soft);width:100%}.project-card-body{display:contents}.project-meta{flex-direction:column;align-self:start;gap:.3rem;min-width:116px;display:flex}.project-card h2,.project-card h3{font-family:var(--font-display);letter-spacing:-.042em;text-wrap:balance;word-break:keep-all;margin:0;font-size:clamp(2.2rem,5.3vw,6.4rem);font-weight:560;line-height:1.04}.project-card p{max-width:360px;color:var(--color-muted);margin:.7rem 0 0;line-height:1.68}.project-card[hidden]{display:none}.filter-bar{flex-wrap:wrap;gap:clamp(1.2rem,4vw,4rem);margin:0 0 clamp(2.5rem,5vw,5rem);display:flex}.filter-status{color:var(--color-muted);margin:-2rem 0 2rem;font-size:.92rem}.empty-state{border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);color:var(--color-muted);margin:2rem 0 0;padding:1rem 0}.cta-row{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.contact-viewport-main{height:calc(100svh - var(--header-height));min-height:0;overflow:visible}.contact-viewport{grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:center;gap:clamp(2.6rem,4.6vw,5rem);width:min(86vw,1320px);height:100%;margin:0 auto;padding:clamp(18px,3svh,32px) 0 clamp(16px,2.6svh,26px);display:grid}.contact-intro{align-content:center;gap:clamp(1.2rem,3svh,2.1rem);min-width:0;display:grid}.contact-section-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-muted);margin-bottom:.56rem;font-size:.72rem;display:block}.contact-title{white-space:nowrap;font-family:var(--font-display);letter-spacing:-.058em;word-break:keep-all;text-wrap:balance;margin:0;font-size:clamp(3.15rem,5.45vw,6.35rem);line-height:.96}.contact-lead{max-width:420px;color:var(--color-muted);word-break:keep-all;margin:clamp(1.25rem,2.55svh,1.9rem) 0 0;font-size:clamp(.86rem,.98vw,1rem);line-height:1.7}.contact-intro-line{background:var(--color-rule-dark);opacity:0;transform-origin:50%;width:100%;height:1px;animation:contact-line-grow .72s var(--ease-menu) calc(var(--content-delay) + .2s) both;display:block;transform:scaleX(0)}.contact-info-rail{display:grid}.contact-info-row{border-bottom:1px solid var(--color-rule);grid-template-columns:82px minmax(0,1fr);align-items:baseline;gap:.9rem;padding:.58rem 0;display:grid}.contact-info-row span:first-child,.contact-form-head .eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);font-size:.66rem}.contact-info-row span:last-child{word-break:keep-all;font-size:.86rem;line-height:1.48}.form{border-top:1px solid var(--color-rule-dark);gap:.78rem;padding-top:.92rem;display:grid}.contact-form{background:linear-gradient(90deg, rgba(var(--color-canvas-rgb), .22), rgba(var(--color-canvas-rgb), .02));align-self:center}.contact-form-head{align-items:start;gap:.28rem;padding-bottom:.04rem;display:grid}.contact-form-head p{max-width:520px;margin:0;font-size:.82rem;line-height:1.58}.form-honeypot{opacity:0;pointer-events:none;clip-path:inset(50%);block-size:1px;inline-size:1px;position:absolute}.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.26rem,.58svh,.48rem) clamp(.75rem,1.4vw,1.1rem);display:grid}.field{gap:.24rem;min-width:0;display:grid}.field-wide,.referral-field{grid-column:1/-1}.referral-field{border:0;gap:.24rem;margin:0;padding:0;display:grid}.field label,.referral-field legend{font-family:var(--font-body);letter-spacing:-.01em;text-transform:none;font-size:.76rem;font-weight:600;line-height:1.42}.field small{color:var(--color-muted)}.referral-field legend{padding:0}.referral-options{flex-wrap:wrap;align-items:center;gap:.28rem clamp(.72rem,1.2vw,1rem);margin-top:.02rem;margin-bottom:.28rem;padding:0;display:flex;transform:translateY(.28rem)}.check-option{color:var(--color-muted);white-space:nowrap;cursor:pointer;align-items:center;gap:.3rem;font-size:.74rem;line-height:1.25;display:inline-flex}.check-option input{appearance:none;border:1px solid var(--color-rule-dark);background:0 0;border-radius:0;flex:none;place-content:center;width:.74rem;height:.74rem;margin:0;padding:0;display:inline-grid}.check-option input:before{content:"";background:var(--color-ink);width:.36rem;height:.36rem;transition:transform .58s var(--ease-menu);transform:scale(0)}.check-option input:checked:before{transform:scale(1)}.check-option:has(input:checked){color:var(--color-ink)}.referral-field[aria-invalid=true] .error{color:var(--color-error)}input,select,textarea{border:0;border-bottom:1px solid var(--color-rule-dark);width:100%;color:var(--color-ink);font:inherit;background:0 0;border-radius:0;padding:.54rem 0 .5rem;font-size:.88rem;line-height:1.42}input:focus-visible,select:focus-visible,textarea:focus-visible{border-bottom-color:var(--color-ink);box-shadow:0 1px 0 var(--color-ink);outline:0}input[type=file]{border-bottom-color:var(--color-rule);color:var(--color-muted);font-size:.78rem}input[type=file]::file-selector-button{border:1px solid var(--color-rule-dark);color:var(--color-ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;background:0 0;margin-right:.75rem;padding:.32rem .58rem;font-size:.64rem}input[type=file]::file-selector-button:hover{background:var(--color-accent-strong);color:var(--color-canvas)}textarea{resize:vertical;height:2.18rem;min-height:0;max-height:7rem;line-height:1.52;overflow-y:auto}.field-message textarea{border:1px solid var(--color-rule-dark);height:calc(4.05em + 1.1rem);min-height:calc(4.05em + 1.1rem);max-height:calc(4.05em + 1.1rem);box-shadow:none;resize:none;scrollbar-width:thin;background:rgba(var(--color-canvas-rgb), .18);border-radius:2px;padding:.55rem .68rem;overflow-y:auto}.field-message textarea:focus-visible{border-color:var(--color-ink);box-shadow:inset 0 0 0 1px var(--color-ink)}.error{min-height:.58rem;color:var(--color-error);font-size:.66rem}.consent{color:var(--color-muted);align-items:flex-start;gap:.55rem;font-size:.78rem;line-height:1.4;display:flex}.consent input{width:auto;margin-top:.22rem}.privacy-note{max-width:620px;color:var(--color-muted);margin:-.38rem 0 0;font-size:.66rem;line-height:1.62}.form-status{border-top:1px solid var(--color-rule);border-bottom:1px solid var(--color-rule);color:var(--color-muted);padding:.52rem 0;font-size:.8rem;display:none}.form-status.is-visible{display:block}.contact-viewport .btn:disabled{opacity:.55;cursor:wait}.contact-viewport .btn{white-space:nowrap;min-height:34px;padding:.5rem .86rem;font-size:.7rem}.contact-viewport .cta-row{margin-top:-.08rem}.contact-section-label,.contact-title,.contact-lead,.contact-info-row,.contact-form{opacity:0;animation:content-enter .68s var(--ease-menu) var(--content-delay) both;transform:translateY(12px)}.contact-title{animation-delay:calc(var(--content-delay) + 70ms)}.contact-lead{animation-delay:calc(var(--content-delay) + .14s)}.contact-info-row:first-child{animation-delay:calc(var(--content-delay) + .22s)}.contact-info-row:nth-child(2){animation-delay:calc(var(--content-delay) + .28s)}.contact-info-row:nth-child(3){animation-delay:calc(var(--content-delay) + .34s)}.contact-info-row:nth-child(4){animation-delay:calc(var(--content-delay) + .4s)}.contact-form{animation-delay:calc(var(--content-delay) + .18s);transform:translate(18px)}.form-dialog{z-index:1600;padding:var(--page-x);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#42270124;place-items:center;display:grid;position:fixed;inset:0}.form-dialog[hidden]{display:none}.form-dialog-panel{border:1px solid var(--color-rule-dark);background-color:rgba(var(--color-canvas-rgb), .97);width:min(100%,460px);animation:dialog-enter .34s var(--ease-menu) both;padding:clamp(1.05rem,3vw,1.65rem);transform:translateY(8px);box-shadow:0 20px 60px #4227011a}.form-dialog-panel .eyebrow{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--color-muted);margin:0 0 .72rem;font-size:.64rem}.form-dialog-panel h2{font-family:var(--font-display);letter-spacing:-.045em;margin:0;font-size:clamp(1.55rem,3.8vw,2.35rem);line-height:1.05}.form-dialog-panel p:not(.eyebrow){color:var(--color-muted);word-break:keep-all;margin:.9rem 0 0;font-size:.9rem;line-height:1.55}.form-dialog-actions{justify-content:flex-end;gap:.5rem;margin-top:1.2rem;display:flex}.contact-result-main{height:calc(100svh - var(--header-height));overflow:visible}.contact-result{align-content:center;gap:clamp(1rem,3svh,2rem);width:min(82vw,960px);height:100%;margin:0 auto;padding:clamp(18px,4svh,44px) 0;display:grid}.result-copy-block,.result-summary,.result-actions,.result-line{opacity:0;animation:content-enter .68s var(--ease-menu) var(--content-delay) both;transform:translateY(12px)}.result-title{font-family:var(--font-display);letter-spacing:-.056em;word-break:keep-all;text-wrap:balance;margin:0;font-size:clamp(2.7rem,6vw,6.4rem);line-height:1}.result-lead{max-width:560px;color:var(--color-muted);margin:clamp(1rem,2svh,1.5rem) 0 0;font-size:clamp(.9rem,1vw,1.05rem);line-height:1.72}.result-line{background:var(--color-rule-dark);transform-origin:0;width:100%;height:1px;animation-name:contact-line-grow;animation-delay:calc(var(--content-delay) + .18s);display:block;transform:scaleX(0)}.result-summary{border-top:1px solid var(--color-rule-dark);animation-delay:calc(var(--content-delay) + .26s);display:grid}.result-row{border-bottom:1px solid var(--color-rule);grid-template-columns:minmax(82px,120px) minmax(0,1fr);gap:1rem;padding:.7rem 0;display:grid}.result-row span:first-child{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);font-size:.68rem}.result-row span:last-child{color:var(--color-ink);font-size:.9rem;line-height:1.55}.result-actions{animation-delay:calc(var(--content-delay) + .34s);flex-wrap:wrap;gap:.6rem;display:flex}.about-viewport-main{height:calc(100svh - var(--header-height));min-height:0;overflow:visible}.about-viewport{width:min(calc(100% - var(--page-x) * 2), 87vw, 1320px);grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;column-gap:clamp(22px,2vw,34px);height:100%;margin:0 auto;padding:clamp(22px,4.2svh,48px) 0 clamp(18px,3.8svh,40px);display:grid;overflow:visible}.about-info-panel,.about-copy,.about-contact-panel,.about-map-panel{min-width:0}.about-info-panel{grid-column:1/span 5;align-content:start;align-self:center;gap:clamp(.95rem,2.15svh,1.55rem);max-width:480px;display:grid}.about-copy{align-content:start;gap:clamp(.9rem,1.8svh,1.25rem);display:grid}.about-copy-heading,.about-copy-body{min-width:0}.about-copy-body{border-top:1px solid var(--color-rule-dark);gap:clamp(.64rem,1.25svh,.88rem);padding-top:clamp(.9rem,1.9svh,1.3rem);display:grid}.about-section-label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--color-muted);margin-bottom:clamp(.42rem,1svh,.66rem);font-size:.7rem;display:block}.about-title{font-family:var(--font-display);letter-spacing:-.056em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:clamp(3.18rem,4.35vw,4.75rem);font-weight:560;line-height:.98}.about-lead,.about-note{max-width:520px;color:var(--color-muted);word-break:keep-all;margin:0}.about-lead{font-size:clamp(.92rem,1vw,1.02rem);line-height:1.68}.about-note{font-size:.8rem;line-height:1.62}.about-contact-panel{gap:clamp(.82rem,1.8svh,1.2rem);display:grid}.about-contact-list{border-top:1px solid var(--color-rule-dark);display:grid}.about-contact-item{border-bottom:1px solid var(--color-rule);grid-template-columns:74px minmax(0,1fr);align-items:baseline;gap:.9rem;padding:.58rem 0;display:grid}.about-contact-item>span:first-child,.about-map-button,.store-map-fallback a{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--color-muted);font-size:.66rem}.about-contact-value{word-break:keep-all;cursor:default;font-size:.86rem;line-height:1.48;display:inline-block}.about-map-button:hover{color:var(--color-ink)}.about-map-actions{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.about-map-button{border:1px solid var(--color-rule-dark);min-height:32px;color:var(--color-ink);background:rgba(var(--color-canvas-rgb), .26);justify-content:center;align-items:center;padding:.42rem .68rem;display:inline-flex}.about-map-button:hover{background:#d6b5882e}.about-map-panel{grid-column:6/-1;align-self:center;height:clamp(380px,47svh,500px);min-height:0}.store-map{border-top:1px solid var(--color-rule-dark);border-bottom:1px solid var(--color-rule);background:linear-gradient(135deg,#fffffcc7,#d6b58826), var(--paint-texture);background-size:100% 100%, var(--paint-texture-size);background-position:center, var(--paint-texture-position);background-repeat:no-repeat, var(--paint-texture-repeat);width:100%;height:100%;position:relative;overflow:visible}.store-map-canvas{width:100%;height:100%;min-height:100%}.store-map-fallback{background:linear-gradient(140deg,#fffffcc2,#d6b58829),repeating-linear-gradient(90deg,#705e4612 0 1px,#0000 1px 64px),repeating-linear-gradient(0deg,#705e460b 0 1px,#0000 1px 64px);align-content:end;gap:.66rem;padding:clamp(1rem,2vw,1.45rem);display:grid;position:absolute;inset:0}.store-map.is-ready .store-map-fallback{opacity:0;pointer-events:none}.store-map-fallback p{max-width:280px;color:var(--color-muted);margin:0;font-size:.82rem;line-height:1.6}.store-map-fallback a{border-bottom:1px solid;justify-self:start}.about-viewport-page .about-section-label,.about-viewport-page .about-title,.about-viewport-page .about-copy-body,.about-viewport-page .about-contact-item,.about-viewport-page .about-map-actions,.about-viewport-page .about-map-panel{opacity:0;animation:about-enter .68s var(--ease-menu) both;transform:translateY(10px)}.about-viewport-page .about-section-label{animation-delay:var(--content-delay)}.about-viewport-page .about-title{animation-delay:calc(var(--content-delay) + 70ms)}.about-viewport-page .about-copy-body{animation-delay:calc(var(--content-delay) + .15s)}.about-viewport-page .about-contact-item:first-child{animation-delay:calc(var(--content-delay) + .23s)}.about-viewport-page .about-contact-item:nth-child(2){animation-delay:calc(var(--content-delay) + .29s)}.about-viewport-page .about-contact-item:nth-child(3){animation-delay:calc(var(--content-delay) + .35s)}.about-viewport-page .about-map-actions{animation-delay:calc(var(--content-delay) + .42s)}.about-viewport-page .about-map-panel{animation-delay:calc(var(--content-delay) + .22s);transform:translate(16px)}.project-detail-page{height:calc(100svh - var(--header-height));min-height:0;overflow:visible}.reference-project-detail{--detail-info-width:clamp(680px,50vw,960px);--detail-title-size:clamp(4.2rem,6.1vw,7.3rem);--detail-track-gap:clamp(18px,2.1vw,30px);--detail-bottom-height:70px;--detail-panel-t:.62s var(--ease-menu);--detail-title-drift:0px;--detail-title-y:clamp(180px,25.5svh,300px);height:100%;min-height:0;position:relative;overflow:hidden}.detail-track{top:22px;left:calc(var(--detail-info-width) + var(--detail-track-gap));right:0;bottom:var(--detail-bottom-height);width:auto;height:auto;padding:0 var(--page-x) 14px 0;scroll-behavior:auto;scroll-snap-type:none;overscroll-behavior-x:contain;overscroll-behavior-y:none;contain:layout paint;scrollbar-width:thin;scrollbar-color:var(--color-rule-dark) transparent;transition:left var(--detail-panel-t);will-change:auto;align-items:stretch;gap:30px;display:flex;position:absolute;overflow:auto hidden;transform:none!important}.detail-track::-webkit-scrollbar{height:8px}.detail-track::-webkit-scrollbar-track{background:0 0}.detail-track::-webkit-scrollbar-thumb{background:#42270194;border-radius:999px}.detail-track::-webkit-scrollbar-thumb:hover{background:var(--color-accent-strong)}.detail-panel{scroll-snap-align:start;flex:0 0 45vw;min-width:45vw;height:100%;margin:0}.detail-title-panel{z-index:5;top:22px;left:0;bottom:var(--detail-bottom-height);width:var(--detail-info-width);clip-path:none;min-width:0;height:auto;transition:width var(--detail-panel-t);background:0 0;padding:0;display:block;position:absolute;overflow:visible}.detail-title-content{left:var(--detail-content-large-left,var(--page-x));width:var(--detail-content-large-width,min(760px,calc(var(--detail-info-width) - var(--page-x)*2)));transform-origin:50%;max-height:calc(100% - 12px);transition:left var(--detail-panel-t),top var(--detail-panel-t),width var(--detail-panel-t),transform var(--detail-panel-t),gap var(--detail-panel-t);gap:clamp(.72rem,1.7svh,1.18rem);display:grid;position:absolute;top:50%;transform:translateY(-50%)}.detail-mini-nav{width:100%;font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;transform:translate3d(var(--detail-title-drift),0,0);transition:transform var(--detail-panel-t),gap var(--detail-panel-t);justify-content:flex-start;align-items:center;gap:clamp(1rem,2vw,2.2rem);font-size:.82rem;display:flex}.detail-mini-nav a{color:var(--color-ink);cursor:pointer;font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;background:0 0;border:0;padding:0;font-size:.82rem}.detail-title-lockup{text-align:left;width:100%;min-width:0;transform:translate3d(var(--detail-title-drift),0,0);transform-origin:0 0;transition:transform var(--detail-panel-t)}.detail-display{font-family:var(--font-display);font-size:var(--detail-title-size);letter-spacing:-.058em;text-transform:uppercase;overflow-wrap:normal;word-break:keep-all;text-wrap:balance;margin:0 0 .9rem;font-weight:560;line-height:.95}.detail-inline-info{width:min(100%,760px);transition:gap var(--detail-panel-t),width var(--detail-panel-t);justify-self:center;justify-items:start;gap:.78rem;display:grid}.detail-code{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:gap var(--detail-panel-t);justify-content:flex-start;align-items:baseline;gap:1.15rem;margin:0;font-size:.9rem;display:flex}.detail-code span+span{color:var(--color-muted);font-family:var(--font-body);letter-spacing:-.01em;font-size:.86rem}.detail-summary{max-width:min(100%,660px);color:var(--color-muted);text-align:left;word-break:keep-all;margin:0;font-size:.95rem;line-height:1.78}.detail-inline-meta{border-top:1px solid var(--color-rule-dark);text-align:left;width:100%;transition:gap var(--detail-panel-t),padding-top var(--detail-panel-t),border-color var(--detail-panel-t);grid-template-columns:repeat(4,minmax(0,1fr));gap:.58rem;margin:.18rem 0 0;padding-top:.82rem;display:grid}.detail-inline-meta div{gap:.22rem;min-width:0;display:grid}.detail-inline-meta dt,.detail-inline-meta dd{margin:0}.detail-inline-meta dt{font-family:var(--font-mono);letter-spacing:.13em;text-transform:uppercase;color:var(--color-muted);font-size:.66rem}.detail-inline-meta dd{word-break:keep-all;font-size:.86rem;line-height:1.5}.detail-thumbs{width:var(--detail-content-compact-width,520px);max-width:min(100%,var(--detail-content-compact-width,520px));transition:width var(--detail-panel-t),max-width var(--detail-panel-t),gap var(--detail-panel-t),margin var(--detail-panel-t);grid-template-columns:repeat(5,minmax(0,1fr));justify-self:start;gap:.3rem;margin:clamp(.42rem,1svh,.72rem) 0 0;display:grid}.detail-thumb{aspect-ratio:4/3;border:1px solid var(--color-rule);opacity:.56;cursor:pointer;transition:opacity .22s var(--ease-menu),border-color .22s;background:0 0;padding:0;overflow:hidden}.detail-thumb img{object-fit:cover;width:100%;height:100%;display:block}.detail-thumb:is(:hover,:focus-visible,.is-active),.detail-thumb[aria-current=true]{opacity:1;border-color:var(--color-accent-strong)}.detail-thumb:focus-visible{outline:1px solid var(--color-accent-strong);outline-offset:2px}.is-detail-compact .detail-title-content{left:var(--detail-content-compact-left,var(--page-x));width:var(--detail-content-compact-width,min(600px,calc(var(--detail-info-width) - var(--page-x) - 24px)));transform-origin:0 0;gap:.7rem;top:0;transform:translate(0,0)}.is-detail-compact .detail-inline-info{gap:.62rem;width:min(100%,600px)}.is-detail-compact .detail-code{gap:.9rem}.is-detail-compact .detail-inline-meta{border-top-color:var(--color-rule);gap:.46rem .68rem;margin-top:.1rem;padding-top:.48rem}.is-detail-compact .detail-thumbs{margin-top:clamp(.36rem,.82svh,.58rem)}.viewport-fit-page .is-detail-compact .detail-inline-meta{grid-template-columns:repeat(4,minmax(0,1fr))}.detail-image-panel{background:var(--color-soft);overflow:hidden}.detail-image-panel img{object-fit:cover;width:100%;height:100%;transition:transform 1.6s var(--ease-image),opacity .8s var(--ease-menu);transform:scale(1.01)}.detail-image-panel:hover img{transition-duration:2.4s;transform:scale(1.035)}.detail-image-panel figcaption{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.detail-bottom-bar{left:var(--page-x);right:var(--page-x);height:70px;font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;background-color:rgba(var(--color-canvas-rgb),.76);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;font-size:.92rem;display:grid;position:absolute;bottom:0}.detail-counter{text-align:center;font-variant-numeric:tabular-nums;white-space:nowrap;justify-content:center;justify-self:end;align-items:baseline;column-gap:.08ch;min-width:6.2rem;display:inline-flex;transform:translate(0,0)}.detail-counter-label{margin-right:.34ch}.detail-counter-total{margin-left:.08ch}.detail-counter-current{text-align:right;opacity:1;min-width:1ch;transition:opacity .2s var(--ease-menu),transform .2s var(--ease-menu);display:inline-block;transform:translate(0,0)}.detail-counter-current.is-changing{opacity:0;transform:translateY(-8px)}.detail-counter-current.did-change{animation:counter-enter .34s var(--ease-menu) both}@media (max-width:1023px){:root{--page-x:18px}.header-inner{grid-template-columns:auto 1fr auto;min-height:58px}.brand{width:clamp(128px,20vw,158px);min-width:clamp(128px,20vw,158px);height:44px}.plan-line{border-top-width:8px;border-bottom-width:8px;height:12px}.nav{inset:58px var(--page-x) auto;flex-direction:column;align-items:flex-start;gap:.75rem;padding:.6rem 0;display:none;position:fixed}.nav.is-open{display:flex}.menu-button{min-height:34px;padding:.45rem .66rem;display:inline-flex!important}.archive-filter{order:1;gap:1.2rem;margin-top:clamp(2.8rem,11vw,5.4rem)}.page-hero-grid{grid-template-columns:1fr}.contact-viewport{width:calc(100% - var(--page-x) * 2);grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:clamp(1.2rem,3vw,2rem);padding:clamp(12px,2.2svh,20px) 0}.contact-title{font-size:clamp(2.48rem,6.4vw,3.95rem)}.contact-lead{margin-top:clamp(.95rem,2svh,1.25rem);font-size:.78rem;line-height:1.56}.contact-info-row{grid-template-columns:74px minmax(0,1fr);padding:.42rem 0}.contact-info-row span:last-child{font-size:.78rem}.contact-form{gap:.42rem;padding-top:.58rem}.contact-form-head{grid-template-columns:1fr;gap:.24rem}.contact-form-head p{text-align:left;justify-self:start;font-size:.72rem;line-height:1.48}.contact-form-grid{gap:.22rem .62rem}.field label,.referral-field legend{font-size:.68rem}.referral-field{gap:.2rem}.referral-options{gap:.24rem .62rem;margin-top:0;margin-bottom:.22rem;padding:0;transform:translateY(.22rem)}.check-option{gap:.24rem;font-size:.66rem}.check-option input{width:.66rem;height:.66rem}input,select,textarea{padding:.38rem 0 .34rem;font-size:.78rem}textarea{height:1.72rem}.field-message textarea{height:calc(3.96em + .92rem);min-height:calc(3.96em + .92rem);max-height:calc(3.96em + .92rem);padding:.46rem .54rem}.consent{font-size:.68rem;line-height:1.42}.privacy-note{margin-top:-.3rem;font-size:.6rem;line-height:1.48}.contact-viewport .btn{min-height:30px;padding:.38rem .64rem}.contact-result{width:calc(100% - var(--page-x) * 2)}.result-title{font-size:clamp(2.3rem,7vw,4.4rem)}.about-viewport{width:calc(100% - var(--page-x) * 2);grid-template-columns:repeat(8,minmax(0,1fr));column-gap:clamp(.9rem,2.4vw,1.45rem);padding:clamp(14px,3svh,28px) 0}.about-info-panel{grid-column:1/span 4;gap:clamp(.85rem,2svh,1.3rem);max-width:none}.about-copy{gap:.85rem}.about-copy-body{padding-top:clamp(.72rem,2svh,1.1rem)}.about-map-panel{grid-column:5/-1;height:min(56svh,520px);min-height:0}.about-title{font-size:clamp(2.8rem,6vw,3.95rem)}.about-lead{font-size:.84rem;line-height:1.46}.about-note{font-size:.74rem;line-height:1.42}.about-contact-panel{gap:.72rem}.about-contact-item{grid-template-columns:68px minmax(0,1fr);padding:.47rem 0}.about-map-button{min-height:30px;padding:.38rem .58rem}.project-card{grid-template-columns:minmax(140px,34vw) 1fr;align-items:start}.project-meta{flex-direction:row;grid-column:2;justify-content:space-between}.project-card h2,.project-card h3,.project-card p{grid-column:2}.project-card p{max-width:none}}@media (max-width:640px){:root{--page-x:10px}.header-inner{gap:10px}.brand{width:112px;min-width:112px;height:38px}.plan-line{min-width:98px}.display{font-size:clamp(3.8rem,14vw,5.2rem)}.page-title{font-size:clamp(3.9rem,18vw,6rem)}.archive-filter{flex-wrap:nowrap;gap:1.05rem;padding-bottom:.35rem;display:flex;overflow-x:auto}.archive-filter button{flex:none}.project-grid{border-top-color:var(--color-rule)}.project-card{grid-template-columns:1fr;gap:.85rem;padding:1.35rem 0}.project-card img,.project-meta,.project-card h2,.project-card h3,.project-card p{grid-column:auto}.project-card img{aspect-ratio:1/1.1}.project-meta{flex-direction:row}.filter-bar{grid-template-columns:1fr;gap:.55rem;display:grid}.contact-viewport{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;align-items:start;gap:.45rem;padding:6px 0 8px}.contact-intro{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:end;gap:.8rem}.contact-section-label{margin-bottom:.28rem;font-size:.58rem}.contact-title{font-size:clamp(2rem,9.8vw,2.9rem)}.contact-lead{margin-top:.66rem;font-size:.63rem;line-height:1.42}.contact-info-row{grid-template-columns:62px minmax(0,1fr);gap:.42rem;padding:.24rem 0}.contact-info-row span:first-child,.contact-form-head .eyebrow{letter-spacing:.1em;font-size:.54rem}.contact-info-row span:last-child{font-size:.63rem;line-height:1.32}.contact-form{align-self:stretch;gap:.28rem;padding-top:.38rem}.contact-form-head p{font-size:.6rem;line-height:1.38}.contact-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.16rem .48rem}.field{gap:.1rem}.field label,.referral-field legend{font-size:.58rem}.referral-field{gap:.14rem}.referral-options{gap:.18rem .42rem;margin-top:0;margin-bottom:.2rem;padding:0;transform:translateY(.22rem)}.check-option{gap:.18rem;font-size:.56rem}.check-option input{width:.58rem;height:.58rem}.check-option input:before{width:.28rem;height:.28rem}input,select,textarea{padding:.23rem 0 .2rem;font-size:.68rem}input[type=file]::file-selector-button{margin-right:.42rem;padding:.18rem .34rem;font-size:.5rem}textarea{height:1.34rem}.field-message textarea{height:calc(3.72em + .62rem);min-height:calc(3.72em + .62rem);max-height:calc(3.72em + .62rem);padding:.3rem .42rem}.error{min-height:.42rem;font-size:.56rem}.consent{gap:.36rem;font-size:.58rem;line-height:1.3}.consent input{margin-top:.08rem}.privacy-note{margin-top:-.22rem;font-size:.52rem;line-height:1.34}.form-status{padding:.3rem 0;font-size:.62rem}.form-dialog{padding:calc(var(--page-x) * 1.5)}.form-dialog-panel{padding:.92rem}.form-dialog-actions{justify-content:stretch}.contact-viewport .cta-row{flex-wrap:nowrap;gap:.38rem;margin-top:-.12rem}.contact-viewport .btn{min-height:27px;padding:.28rem .42rem;font-size:.56rem}.contact-result{width:calc(100% - var(--page-x) * 2);gap:.85rem}.result-title{font-size:clamp(2rem,10vw,3rem)}.result-lead{font-size:.72rem;line-height:1.5}.result-row{grid-template-columns:1fr;gap:.2rem;padding:.45rem 0}.result-row span:first-child{font-size:.54rem}.result-row span:last-child{font-size:.72rem}.about-viewport{grid-template-rows:auto minmax(205px,1fr);grid-template-columns:1fr;align-content:start;gap:.58rem;padding:7px 0 9px}.about-info-panel{grid-column:auto;gap:.48rem;max-width:none}.about-copy{gap:.45rem}.about-copy-body{border-top-color:var(--color-rule);gap:.32rem;padding-top:.46rem}.about-section-label{margin-bottom:.24rem;font-size:.55rem}.about-title{font-size:clamp(1.9rem,9.2vw,2.65rem);line-height:.96}.about-lead{font-size:.7rem;line-height:1.48}.about-note{font-size:.62rem;line-height:1.42}.about-contact-panel{gap:.34rem}.about-contact-item{grid-template-columns:56px minmax(0,1fr);gap:.5rem;padding:.23rem 0}.about-contact-item>span:first-child,.about-map-button,.store-map-fallback a{letter-spacing:.1em;font-size:.52rem}.about-contact-value{font-size:.68rem;line-height:1.34}.about-map-actions{gap:.36rem}.about-map-button{min-height:26px;padding:.3rem .46rem}.about-map-panel{grid-column:auto;align-self:start;height:clamp(205px,30svh,245px);min-height:205px}.store-map-fallback{gap:.32rem;padding:.62rem}.store-map-fallback p{font-size:.64rem;line-height:1.4}.cta-row .btn{width:100%}}:root{--ease-menu:cubic-bezier(.86, 0, .07, 1);--ease-image:cubic-bezier(.17, .84, .44, 1);--ease-filter:cubic-bezier(.32, .94, .6, 1)}.site-header{z-index:1200}.site-header .header-inner{grid-template-columns:auto minmax(40px,1fr) auto;overflow:visible}.site-header .brand{overflow:visible}.site-header .brand-logo{opacity:1;animation:none;transform:translate(0,0)}.site-header .plan-line{transform-origin:0;opacity:.92;animation:none;transform:translate(0,0)scaleX(1)}.site-header.is-home-entry .brand-logo{animation:logo-enter-x var(--header-logo-duration) var(--ease-menu) both}.site-header.is-home-entry .plan-line{animation:rule-grow var(--header-line-duration) var(--ease-menu) var(--header-line-delay) both}.menu-button,.menu-button.btn,.site-header .menu-button{text-align:center;width:auto;min-width:64px;height:30px;min-height:30px;color:var(--color-ink);font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;opacity:1;transition:color .24s var(--ease-menu), box-shadow .24s var(--ease-menu);background:0 0;border:0;place-items:center;padding:0;font-size:.84rem;animation:none;position:relative;overflow:visible;display:inline-grid!important}.site-header.is-home-entry .menu-button{opacity:0;animation:header-control-enter .42s var(--ease-menu) calc(var(--content-delay) - .14s) both}.menu-button:is(:hover,:focus-visible){color:var(--color-accent-strong);background:0 0;outline:none}.menu-button:focus-visible{box-shadow:0 0 0 1px var(--color-accent-strong)}.menu-button:is(:hover,:focus-visible) .menu-label{transform:scale(1.045)}body.theme-cappuccino .site-header .menu-button:is(:hover,:focus-visible){color:var(--color-accent-strong);background:0 0;border-color:#0000}.menu-label{transform-origin:50%;transition:opacity .28s var(--ease-menu), color .24s var(--ease-menu), transform .24s var(--ease-menu);will-change:opacity, transform;color:currentColor;grid-area:1/1;line-height:1;display:inline-block;transform:none}.menu-label-close,body.is-menu-open .menu-label-open{opacity:0}body.is-menu-open .menu-label-close{opacity:1}body.is-menu-open{overflow:hidden}.nav.menu-overlay{opacity:0;pointer-events:none;width:100vw;max-width:100%;height:calc(100svh - 66px);transition:opacity .46s var(--ease-menu);z-index:1190;background:0 0;border:0;padding:0;display:block;position:fixed;inset:66px 0 auto;transform:none}.nav.menu-overlay.is-open{opacity:1;pointer-events:auto;transform:none}.menu-background{background-color:rgba(var(--color-canvas-rgb), .985);z-index:1;position:absolute;inset:0}.menu-panel{z-index:2;height:100%;padding:10px var(--page-x) 80px;-webkit-overflow-scrolling:touch;opacity:0;transition:opacity .46s var(--ease-menu) 80ms;position:relative;overflow:auto;transform:none}.nav.menu-overlay.is-open .menu-panel{opacity:1;transform:translate(0,0)}.menu-panel ul{margin:0;padding:0 0 8px;list-style:none;position:relative}.menu-panel ul:not(:first-child){padding-top:16px}.menu-panel ul:not(:last-child){border-bottom:20px solid #d6b58857}.menu-panel li:not(:last-child){border-bottom:1px solid var(--color-rule-dark)}.menu-panel h4{font-family:var(--font-display);letter-spacing:-.052em;text-transform:uppercase;margin:0 0 8px;font-size:clamp(3rem,8vw,6.4rem);font-weight:500;line-height:.98}.menu-panel a{width:fit-content;max-width:100%;font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--color-ink);transform-origin:50%;align-items:center;padding:14px 0;font-size:.98rem;display:inline-flex;transform:scale(1)}.menu-panel a:is(:hover,:focus-visible){transform:scale(1.035)}.horizontal-archive{height:calc(100svh - 66px);min-height:760px;padding:0;position:relative;overflow:visible}.horizontal-shell{width:100vw;height:100%;position:relative}.archive-track{will-change:auto;align-items:stretch;width:auto;height:calc(100% - 190px);display:flex;position:absolute;top:88px;left:0;transform:translate(0,0)}.archive-slide{flex:0 0 58vw;justify-content:flex-start;align-items:flex-start;gap:clamp(12px,1.35vw,20px);min-width:58vw;max-width:58vw;height:100%;padding:0 clamp(16px,2vw,30px) 0 0;display:flex;position:relative}.archive-slide[hidden]{display:none}.viewport-fit-page .archive-slide[hidden],.viewport-fit-page .archive-slide.is-filter-hidden,.archive-slide.is-filter-hidden{display:none!important}.intro-slide{flex-basis:42vw;justify-content:center;align-items:center;min-width:42vw;max-width:42vw;padding:0 0 0 30px}.intro-slide .display{text-align:center;max-width:560px;margin:0;font-size:clamp(5rem,7.2vw,7.35rem);line-height:.94;transform:none}.intro-slide .display span{opacity:0;animation:title-rise .72s var(--ease-menu) var(--content-delay) both;display:block;transform:translateY(22px)}.intro-slide .display span:nth-child(2){animation-delay:calc(var(--content-delay) + 80ms)}.slide-info{text-align:right;font-family:var(--font-mono);letter-spacing:.09em;text-transform:uppercase;color:var(--color-ink);transition:opacity .3s var(--ease-image), transform .3s var(--ease-image);flex:0 0 clamp(108px,8.4vw,126px);padding:2px clamp(8px,.9vw,14px) 0 20px;font-size:.98rem;line-height:1.55}.slide-info strong,.slide-info span{font-weight:400;display:block}.slide-info span{color:var(--color-muted)}.slide-image{background:var(--color-soft);backface-visibility:hidden;flex:auto;width:auto;min-width:0;max-width:44vw;height:100%;margin:0;overflow:visible;transform:perspective(1000px)}.slide-image img{object-fit:cover;transform-origin:50%;width:100%;height:100%;transition:transform 1s var(--ease-image), opacity .6s var(--ease-menu);will-change:transform;transform:scale(1.01)}.project-slide:hover .slide-image img{transition-duration:2.6s;transform:scale(1.04)}.project-slide:hover .slide-info{opacity:.68;transform:translateY(5px)}.contact-slide{min-width:42vw;max-width:42vw;color:var(--color-ink);flex:0 0 42vw;justify-content:center;align-items:center;padding:0 0 0 30px;text-decoration:none}.contact-slide-inner{border-top:1px solid var(--color-rule-dark);border-bottom:1px solid var(--color-rule);width:min(100%,420px);transition:transform .5s var(--ease-menu);gap:clamp(.82rem,1.7svh,1.12rem);padding:clamp(1.35rem,4svh,2.8rem) 0;display:grid}.contact-slide h2{max-width:9.8em;font-family:var(--font-display);letter-spacing:-.055em;margin:0;font-size:clamp(2.15rem,3.45vw,3.85rem);font-weight:500;line-height:1.02}.contact-slide p{max-width:330px;color:var(--color-muted);margin:0;font-size:clamp(.9rem,.95vw,1rem);line-height:1.75}.contact-slide-cta{border:1px solid var(--color-rule-dark);width:fit-content;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;transition:background .34s var(--ease-menu), color .34s var(--ease-menu), border-color .34s var(--ease-menu);margin-top:.25rem;padding:.78rem 1rem .72rem;font-size:.78rem}.contact-slide:hover .contact-slide-inner{transform:translate(4px)}.contact-slide:hover .contact-slide-cta{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-canvas)}.horizontal-archive .archive-filter{z-index:10;background-color:rgba(var(--color-canvas-rgb),.76);justify-content:center;align-items:center;gap:clamp(2rem,4vw,4rem);width:100%;height:102px;padding:0;display:flex;position:absolute;bottom:0;left:0}.archive-filter a,.archive-filter button,.filter-button{position:relative}.archive-filter a:before,.archive-filter button:before,.filter-button:before{content:"";transform-origin:100%;height:1px;transition:transform .52s var(--ease-filter);background:currentColor;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(0)}.archive-filter a:hover:before,.archive-filter button:hover:before,.filter-button:hover:before,.archive-filter a[aria-current=page]:before,.archive-filter button[aria-pressed=true]:before,.filter-button[aria-pressed=true]:before{transform-origin:0;transform:scaleX(1)}.archive-filter a[aria-current=page],.archive-filter button[aria-pressed=true],.filter-button[aria-pressed=true]{text-decoration:none}.reveal{opacity:0;transition:opacity .68s var(--ease-menu), transform .68s var(--ease-menu);transform:translateY(18px)}.reveal.is-visible{opacity:1;transition-delay:var(--content-delay);transform:translate(0,0)}.archive-slide.project-slide,.contact-slide,.archive-filter,.filter-bar,.filter-status,.detail-bottom-bar{opacity:0;animation:content-enter .68s var(--ease-menu) var(--content-delay) both;transform:translateY(14px)}.archive-slide.project-slide:nth-child(3),.filter-status{animation-delay:calc(var(--content-delay) + 80ms)}.archive-slide.project-slide:nth-child(4),.detail-bottom-bar{animation-delay:calc(var(--content-delay) + .14s)}.archive-slide.project-slide:nth-child(5){animation-delay:calc(var(--content-delay) + .2s)}.contact-slide{animation-delay:calc(var(--content-delay) + .26s)}.archive-slide.is-filter-entering{animation:filter-slide-enter .42s var(--ease-menu) both;animation-delay:calc(var(--filter-stagger,0) * 10ms)}.horizontal-archive .archive-slide.project-slide.is-filter-entering{animation-delay:calc(var(--filter-stagger,0) * 10ms)}.archive-slide.project-slide.is-filter-entering .slide-info>*,.intro-slide.is-filter-entering .display span{animation:filter-intro-enter .38s var(--ease-menu) both;animation-delay:calc(var(--filter-stagger,0) * 10ms + 6ms)}.archive-slide.project-slide.is-filter-entering .slide-info>:nth-child(2),.intro-slide.is-filter-entering .display span:nth-child(2){animation-delay:calc(var(--filter-stagger,0) * 10ms + 14ms)}.archive-slide.project-slide.is-filter-entering .slide-info>:nth-child(3){animation-delay:calc(var(--filter-stagger,0) * 10ms + 20ms)}.archive-slide.project-slide.is-filter-entering .slide-image{animation:filter-image-enter .42s var(--ease-menu) both;animation-delay:calc(var(--filter-stagger,0) * 10ms + 6ms)}html.is-history-restored .reveal.is-visible{transition-delay:0s}html.is-history-restored .site-header.is-home-entry .brand-logo,html.is-history-restored .site-header.is-home-entry .menu-button,html.is-history-restored .home-viewport-page .archive-slide.project-slide,html.is-history-restored .home-viewport-page .contact-slide,html.is-history-restored .home-viewport-page .archive-filter{opacity:1;animation:none;transform:none}html.is-history-restored .site-header.is-home-entry .plan-line{opacity:.92;animation:none;transform:translate(0,0)scaleX(1)}html.is-history-restored .home-viewport-page .intro-slide .display span{opacity:1;animation:none;transform:none}.project-card img{transition:transform 1s var(--ease-image);transform:scale(1.01)}.project-card:hover img{transition-duration:2.2s;transform:scale(1.035)}@keyframes logo-enter-x{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0,0)}}@keyframes header-control-enter{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0,0)}}@keyframes rule-grow{0%{opacity:.35;transform:translateY(4px)scaleX(0)}to{opacity:.92;transform:translate(0,0)scaleX(1)}}@keyframes title-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translate(0,0)}}@keyframes content-enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translate(0,0)}}@keyframes filter-slide-enter{0%{opacity:0;clip-path:inset(0 4% 0 0);transform:translate(8px)}to{opacity:1;clip-path:inset(0);transform:translate(0,0)}}@keyframes filter-intro-enter{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translate(0,0)}}@keyframes filter-image-enter{0%{opacity:.42;clip-path:inset(0 4% 0 0);transform:translate(7px)}to{opacity:1;clip-path:inset(0);transform:translate(0,0)}}@keyframes contact-line-grow{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes dialog-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translate(0,0)}}@keyframes about-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translate(0,0)}}@keyframes counter-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translate(0,0)}}@media (min-width:1024px){.intro-slide .display{transform:translate(64px)}}@media (max-width:1023px){.nav.menu-overlay{border:0;height:calc(100svh - 58px);padding:0;display:block;position:fixed;inset:58px 0 auto}.nav.menu-overlay.is-open{display:block}.horizontal-archive{height:auto;min-height:0;padding:36px 0 0;overflow:visible}.horizontal-shell{width:var(--container);height:auto;margin:0 auto;display:grid}.archive-track{display:contents;transform:none!important}.intro-slide{order:1;width:100%;min-width:0;max-width:none;min-height:310px;padding:0}.intro-slide .display{font-size:clamp(4.4rem,12vw,6rem)}.horizontal-archive .archive-filter{background:0 0;order:2;justify-content:flex-start;gap:1.2rem;width:100%;height:auto;margin:1.1rem 0 1.6rem;position:relative;bottom:auto;left:auto;overflow-x:auto}.horizontal-archive .archive-filter:before{content:"FILTER:";font-family:var(--font-mono);letter-spacing:.13em;color:var(--color-muted);flex:none}.archive-slide.project-slide,.contact-slide{order:3;gap:.9rem;width:100%;min-width:0;max-width:none;height:auto;margin-bottom:clamp(2rem,5vw,3.4rem);padding:0;display:grid}.slide-image{aspect-ratio:4/5;order:1;width:100%;height:auto}.slide-info{text-align:left;flex:none;order:2;justify-content:space-between;gap:1rem;padding:0;font-size:.84rem;display:flex}.contact-slide{border-top:1px solid var(--color-rule-dark);order:4;padding-top:1rem}.contact-slide-inner{border-top:0;width:100%;padding:1.25rem 0}.contact-slide h2{font-size:clamp(2.2rem,8vw,3.7rem)}.reference-project-detail{height:auto;min-height:0;padding:36px 0 0;overflow:visible}.detail-track{height:auto;width:var(--container);gap:clamp(1.5rem,4vw,2.5rem);margin:0 auto;display:grid;position:relative;top:auto;left:auto;transform:none!important}.detail-panel,.detail-title-panel{width:100%;min-width:0;height:auto;padding:0}.detail-title-panel{min-height:340px}.detail-title-lockup{text-align:center;justify-self:center;transform:none}.detail-display{font-size:clamp(4rem,12vw,6.4rem)}.detail-image-panel{aspect-ratio:4/5}.detail-bottom-bar{z-index:20;left:var(--page-x);right:var(--page-x);background-color:rgba(var(--color-canvas-rgb),.76);width:auto;margin:0;position:fixed;bottom:0}.project-detail-page{padding-bottom:70px}}@media (min-width:641px) and (max-width:1023px){.archive-slide.project-slide{width:auto}.horizontal-shell{grid-template-columns:1fr 1fr;column-gap:clamp(2rem,5vw,2.5rem);display:grid}}@media (max-width:640px){.menu-panel{padding:10px var(--page-x) 70px}.menu-panel h4{font-size:3.7rem;line-height:.95}.menu-panel a{font-size:.9rem}.intro-slide{min-height:285px}.intro-slide .display{font-size:clamp(3.8rem,15vw,5.2rem)}.slide-image{aspect-ratio:1/1.08}.detail-mini-nav{justify-content:space-between}.detail-title-panel{min-height:300px}.detail-display{font-size:clamp(3.2rem,14vw,5rem)}.detail-bottom-bar{grid-template-columns:1fr auto;height:58px;font-size:.72rem}.detail-bottom-bar span:nth-child(2){display:none}}body:has(.viewport-fit-page) .site-header{position:relative}.viewport-fit-page .horizontal-archive,.viewport-fit-page .reference-project-detail{height:100%;min-height:0;padding:0;overflow:hidden}.viewport-fit-page .reference-project-detail{--detail-info-width:clamp(680px, 50vw, 960px);--detail-title-size:clamp(4rem, 6vw, 7.2rem);--detail-track-gap:clamp(18px, 2.1vw, 30px);--detail-bottom-height:70px}.viewport-fit-page .horizontal-shell{--home-track-top:clamp(14px, 3.2dvh, 64px);--home-filter-h:clamp(56px, 8dvh, 86px);width:100vw;height:100%;margin:0;display:block;position:relative}.viewport-fit-page .archive-track{top:var(--home-track-top);height:calc(100% - var(--home-track-top) - var(--home-filter-h));scroll-behavior:auto;overscroll-behavior-x:contain;overscroll-behavior-y:none;scrollbar-width:none;will-change:auto;align-items:stretch;display:flex;position:absolute;left:0;right:0;overflow:auto hidden;transform:none!important}.viewport-fit-page .archive-track::-webkit-scrollbar{display:none}.viewport-fit-page .archive-slide{height:100%;margin:0;display:flex}.viewport-fit-page .horizontal-archive .archive-filter{z-index:10;width:100%;height:var(--home-filter-h);white-space:nowrap;background-color:rgba(var(--color-canvas-rgb),.76);flex-wrap:nowrap;justify-content:center;align-items:center;display:flex;position:absolute;bottom:0;left:0;overflow:auto hidden}@media (max-width:1023px){:root{--header-height:58px}.viewport-fit-page .reference-project-detail{--detail-info-width:clamp(340px, 50vw, 520px);--detail-title-size:clamp(2.65rem, 6.2vw, 4.4rem);--detail-track-gap:18px;--detail-bottom-height:58px}.viewport-fit-page .horizontal-shell{--home-track-top:clamp(20px, 4dvh, 48px);--home-filter-h:clamp(58px, 8dvh, 76px)}.viewport-fit-page .archive-slide.project-slide{flex:0 0 82vw;justify-content:flex-start;align-items:flex-start;gap:10px;min-width:82vw;max-width:82vw;padding:0 18px 0 0;display:flex}.viewport-fit-page .contact-slide{min-width:72vw;max-width:72vw;padding:0 0 0 var(--page-x);flex:0 0 72vw;justify-content:center;align-items:center;display:flex}.viewport-fit-page .intro-slide{min-width:72vw;max-width:72vw;min-height:0;padding:0 0 0 var(--page-x);flex:0 0 72vw;justify-content:center;align-items:center}.viewport-fit-page .intro-slide .display{font-size:clamp(4.3rem,12vw,6rem);transform:none}.viewport-fit-page .slide-info{text-align:right;flex:0 0 104px;order:0;padding:2px 4px 0 0;font-size:.82rem;display:block}.viewport-fit-page .slide-image{aspect-ratio:auto;flex:auto;order:0;width:auto;min-width:0;max-width:none;height:100%}.viewport-fit-page .horizontal-archive .archive-filter{padding:0 var(--page-x);justify-content:flex-start;gap:1.2rem;margin:0}.viewport-fit-page .reference-project-detail{padding:0}.viewport-fit-page .detail-track{top:20px;left:calc(var(--detail-info-width) + var(--detail-track-gap));right:0;bottom:var(--detail-bottom-height);width:auto;height:auto;padding:0 var(--page-x) 12px 0;scroll-behavior:auto;scroll-snap-type:none;overscroll-behavior-x:contain;overscroll-behavior-y:none;will-change:auto;gap:18px;margin:0;display:flex;position:absolute;overflow:auto hidden;transform:none!important}.viewport-fit-page .detail-panel{width:auto;height:100%;min-height:0}.viewport-fit-page .detail-title-panel{top:20px;bottom:var(--detail-bottom-height);width:var(--detail-info-width);min-width:0;height:auto;padding:0 18px 0 var(--page-x)}.viewport-fit-page .detail-title-content{width:var(--detail-content-large-width,min(100%, calc(var(--detail-info-width) - var(--page-x) - 18px)))}.viewport-fit-page .is-detail-compact .detail-title-content{width:var(--detail-content-compact-width,min(100%, calc(var(--detail-info-width) - var(--page-x) - 18px)))}.viewport-fit-page .detail-mini-nav,.viewport-fit-page .detail-title-lockup{width:100%;transform:translate3d(var(--detail-title-drift), 0, 0)}.viewport-fit-page .detail-display{font-size:var(--detail-title-size)}.viewport-fit-page .detail-inline-info{margin:0}.viewport-fit-page .detail-thumbs,.viewport-fit-page .is-detail-compact .detail-thumbs{grid-template-columns:repeat(4,minmax(0,1fr))}.viewport-fit-page .detail-code{justify-content:flex-start}.viewport-fit-page .detail-image-panel{aspect-ratio:auto;flex:0 0 62vw;min-width:62vw}.viewport-fit-page .detail-bottom-bar{left:var(--page-x);right:var(--page-x);width:auto;height:var(--detail-bottom-height);background-color:rgba(var(--color-canvas-rgb),.76);margin:0;position:absolute;bottom:0}.viewport-fit-page.project-detail-page,.viewport-fit-page .project-detail-page{padding-bottom:0}}@media (max-width:640px){.viewport-fit-page .reference-project-detail{--detail-info-width:clamp(150px, 48vw, 210px);--detail-title-size:clamp(1.92rem, 8.2vw, 2.72rem);--detail-track-gap:12px;--detail-bottom-height:52px}.viewport-fit-page .horizontal-shell{--home-track-top:34px;--home-filter-h:62px}.viewport-fit-page .archive-slide.project-slide{flex-basis:92vw;min-width:92vw;max-width:92vw;padding-right:10px}.viewport-fit-page .contact-slide{min-width:84vw;max-width:84vw;padding:0 0 0 var(--page-x);flex-basis:84vw}.viewport-fit-page .contact-slide h2{font-size:clamp(1.75rem,7.2vw,2.58rem)}.viewport-fit-page .contact-slide p{font-size:.78rem;line-height:1.58}.viewport-fit-page .intro-slide{flex-basis:84vw;min-width:84vw;max-width:84vw}.viewport-fit-page .intro-slide .display{font-size:clamp(3.25rem,13vw,4.85rem)}.viewport-fit-page .slide-info{flex-basis:76px;padding-right:2px;font-size:.68rem;line-height:1.42}.viewport-fit-page .slide-image{width:auto}.viewport-fit-page .horizontal-archive .archive-filter{gap:1.05rem;font-size:.72rem}.viewport-fit-page .detail-track{top:16px;bottom:var(--detail-bottom-height);gap:12px;padding-bottom:10px}.viewport-fit-page .detail-title-panel{top:16px;bottom:var(--detail-bottom-height);width:var(--detail-info-width);min-width:0;padding-right:10px}.viewport-fit-page .detail-title-content{width:var(--detail-content-large-width,min(100%, calc(var(--detail-info-width) - var(--page-x) - 10px)))}.viewport-fit-page .is-detail-compact .detail-title-content{width:var(--detail-content-compact-width,min(100%, calc(var(--detail-info-width) - var(--page-x) - 10px)))}.viewport-fit-page .detail-display{font-size:var(--detail-title-size);margin-bottom:.65rem}.viewport-fit-page .detail-inline-info{gap:.52rem}.viewport-fit-page .detail-code{gap:.7rem;font-size:.75rem}.viewport-fit-page .detail-summary{font-size:.76rem;line-height:1.5}.viewport-fit-page .detail-inline-meta{grid-template-columns:1fr;gap:.45rem;padding-top:.55rem}.viewport-fit-page .detail-inline-meta dt{font-size:.55rem}.viewport-fit-page .detail-inline-meta dd{font-size:.66rem}.viewport-fit-page .detail-image-panel{flex-basis:78vw;min-width:78vw}.viewport-fit-page .detail-bottom-bar{height:var(--detail-bottom-height);grid-template-columns:minmax(0,1fr) auto;font-size:.62rem}.viewport-fit-page .detail-bottom-bar span:nth-child(2){display:inline-flex}.viewport-fit-page .detail-counter{min-width:4.6rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.site-header .brand-logo,.site-header .menu-button,.intro-slide .display span,.archive-slide.project-slide,.contact-slide,.archive-filter,.filter-bar,.filter-status,.detail-bottom-bar,.contact-section-label,.contact-title,.contact-lead,.contact-info-row,.contact-form,.result-copy-block,.result-summary,.result-actions,.about-viewport-page .about-section-label,.about-viewport-page .about-title,.about-viewport-page .about-copy-body,.about-viewport-page .about-contact-item,.about-viewport-page .about-map-actions,.about-map-panel{opacity:1!important;transform:none!important}.site-header .plan-line,.contact-intro-line,.result-line{opacity:1!important;transform:scaleX(1)!important}}

.admin-page{--admin-bg:#fbfaf6;--admin-shell-bg:#f7f3ec;--admin-sidebar-bg:#fffdf8;--admin-card-bg:#fffffcf5;--admin-card-muted:#f5f1ea;--admin-input-bg:#fffefb;--admin-line:#705e462e;--admin-line-strong:#705e4647;--admin-text:#21170d;--admin-muted:#69635b;--admin-accent:#422701;--admin-accent-mid:#705e46;--admin-accent-soft:#f0e5d5;--t:var(--admin-text);--m:var(--admin-muted);--b:var(--admin-line-strong);--a:var(--admin-accent);--c:var(--admin-accent-mid);--s:var(--admin-accent-soft);--g:var(--admin-bg);--q:var(--admin-card-muted);--w:var(--admin-card-bg);--l:var(--admin-line);--x:var(--admin-card-muted);--y:var(--admin-accent-soft);min-height:100dvh;color:var(--t);background:0 0}.admin-shell{min-height:100dvh}.admin-shell--auth{place-items:center;padding:clamp(28px,4vw,56px);display:grid}.admin-shell--workspace{background:linear-gradient(135deg,var(--admin-shell-bg),var(--admin-bg));grid-template-columns:292px minmax(0,1fr);padding:0;display:grid}.admin-main{min-width:0;padding:22px clamp(22px,3vw,40px) 42px}.admin-sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.admin-card{border:1px solid var(--l);background:var(--w);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px;padding:clamp(18px,2vw,26px);box-shadow:0 10px 28px #21170d09}.admin-login{width:min(100%,460px)}.admin-sidebar{border-right:1px solid var(--b);background:var(--admin-sidebar-bg);grid-template-rows:auto 1fr auto;gap:24px;height:100dvh;padding:22px 16px;display:grid;position:sticky;top:0}.admin-sidebar__brand{min-height:72px;color:inherit;border-bottom:1px solid var(--l);justify-content:center;align-items:center;padding:8px 10px 20px;text-decoration:none;display:flex}.admin-sidebar__brand img{object-fit:contain;width:clamp(48px,4.2vw,64px);height:auto;max-height:64px;display:block}.admin-sidebar__nav,.admin-sidebar__group{align-content:start;gap:8px;display:grid}.admin-sidebar__group{gap:7px}.admin-sidebar__group+.admin-sidebar__group{margin-top:18px}.admin-sidebar__group p,.admin-kicker,.admin-section__eyebrow{letter-spacing:.17em;text-transform:uppercase;color:var(--m);margin:0 0 6px;font-size:.69rem}.admin-sidebar__link{min-height:38px;color:var(--m);border:1px solid #0000;border-radius:14px;align-items:center;gap:10px;padding:9px 10px;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s,transform .2s;display:flex;position:relative}.admin-sidebar__mark{opacity:.42;border:1px solid;border-radius:999px;width:7px;height:7px}.admin-sidebar__link:hover,.admin-sidebar__link.is-active{color:var(--a);border-color:var(--b);background:var(--y)}.admin-sidebar__link:hover{transform:translate(2px)}.admin-sidebar__link.is-active .admin-sidebar__mark{opacity:1;background:currentColor}.admin-sidebar__footer{border:1px solid var(--l);background:var(--x);border-radius:16px;gap:10px;padding:14px 12px;display:grid}.admin-sidebar__status{color:var(--m);align-items:center;gap:8px;font-size:.82rem;display:inline-flex}.admin-sidebar__status i{background:var(--c);opacity:.74;border-radius:999px;width:8px;height:8px}.admin-sidebar__footer p{color:var(--m);margin:0;font-size:.78rem;line-height:1.45}.admin-sidebar__logout{appearance:none;width:fit-content;color:var(--m);font:inherit;cursor:pointer;text-underline-offset:4px;background:0 0;border:0;padding:0;text-decoration:underline}.admin-actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.admin-shell__top{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:clamp(22px,4vw,48px);margin:34px 0 22px;display:grid}.admin-title{letter-spacing:-.05em;margin:0;font-size:clamp(2rem,3.6vw,3.35rem);font-weight:500;line-height:1.03}.admin-lead{max-width:760px;color:var(--m);margin:13px 0 0;line-height:1.75}.admin-warning{border-left:2px solid var(--a);background:var(--y);color:var(--t);border-radius:14px;margin:0 0 18px;padding:13px 16px}.admin-grid,.admin-kpi-grid,.admin-dashboard-grid{gap:18px;display:grid}.admin-dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start}.admin-grid-full{grid-column:1/-1}.admin-span-main{grid-column:span 8}.admin-span-side{grid-column:span 4}.admin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-panel{align-content:start;gap:18px;display:grid}.admin-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-grid--two{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-stat{grid-template-rows:auto auto auto;align-content:start;gap:8px;min-height:124px;display:grid}.admin-stat strong{letter-spacing:-.05em;font-size:clamp(2rem,3.05vw,3rem);font-weight:500;line-height:.92;display:block}.admin-stat span{color:var(--m);line-height:1.45;display:block}.admin-stat__label{letter-spacing:.14em;text-transform:uppercase;color:var(--m);font-size:.7rem}.admin-stat__head{justify-content:space-between;align-items:center;gap:10px;display:flex!important}.admin-stat__head i{background:var(--q);width:20px;height:20px;color:var(--m);border-radius:999px;place-items:center;font-size:.72rem;font-style:normal;display:grid}.admin-stat em{background:var(--y);color:var(--a);border-radius:999px;margin-right:6px;padding:3px 7px;font-style:normal;display:inline-flex}.admin-stat--action{color:inherit;text-decoration:none;transition:border-color .2s,background-color .2s,transform .2s}.admin-stat--action:hover{border-color:var(--a);background:var(--x);transform:translateY(-2px)}.admin-section__head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:2px;display:flex}.admin-section h2,.admin-panel h2{letter-spacing:-.025em;margin:0;font-size:clamp(1.06rem,1.55vw,1.42rem);font-weight:500}.admin-overview-panel{min-height:0}.admin-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px;display:grid}.admin-chart-panel{gap:12px;display:grid}.admin-bar-list{gap:10px;display:grid}.admin-bar-row{color:inherit;grid-template-columns:96px minmax(0,1fr) 28px;align-items:center;gap:12px;text-decoration:none;display:grid}.admin-bar-row span{color:var(--m);font-size:.88rem}.admin-bar-row strong{text-align:right;font-weight:500}.admin-bar-track{background:var(--l);border-radius:999px;height:9px;overflow:hidden}.admin-bar-track i{border-radius:inherit;background:linear-gradient(90deg,var(--y),var(--c));min-width:5px;max-width:100%;height:100%;display:block}.admin-button,.admin-link,.admin-form button{appearance:none;border:1px solid var(--b);background:var(--admin-input-bg);color:var(--t);font:inherit;cursor:pointer;border-radius:10px;padding:10px 14px;line-height:1;text-decoration:none;transition:color .2s,background-color .2s,border-color .2s,transform .2s}.admin-button:hover,.admin-link:hover,.admin-form button:hover{color:var(--a);border-color:var(--c);background:var(--y);transform:translateY(-1px)}.admin-button:focus-visible,.admin-link:focus-visible,.admin-form button:focus-visible,.admin-field input:focus-visible,.admin-field textarea:focus-visible,.admin-field select:focus-visible,.admin-sidebar__link:focus-visible,.admin-sidebar__brand:focus-visible,.admin-sidebar__logout:focus-visible{outline:2px solid var(--a);outline-offset:3px}.admin-button--primary,.admin-form button[type=submit]{background:var(--a);border-color:var(--a);color:var(--g)}.admin-button--quiet{color:var(--m);background:0 0}.admin-button--danger{color:#7a2418;border-color:#7a241859}.admin-actions--compact{gap:7px}.admin-table{border-collapse:collapse;width:100%;font-size:.92rem}.admin-table th,.admin-table td{border-bottom:1px solid var(--b);text-align:left;vertical-align:middle;padding:14px 12px}.admin-table th{color:var(--m);letter-spacing:.11em;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:500}.admin-table tr{transition:background-color .2s}.admin-table tbody tr:hover{background:var(--y)}.admin-table small{color:var(--m);line-height:1.6}.admin-table--editorial{min-width:880px}.admin-recent-table{min-width:0}.admin-thumb{aspect-ratio:4/3;object-fit:cover;border:1px solid var(--b);background:var(--q);border-radius:14px;width:72px;display:block}.admin-thumb--empty{color:var(--m);text-transform:uppercase;letter-spacing:.08em;place-items:center;font-size:.66rem;display:grid}.admin-status{border:1px solid var(--b);color:var(--m);background:var(--admin-input-bg);border-radius:999px;justify-content:center;align-items:center;padding:5px 10px;font-size:.72rem;line-height:1;display:inline-flex}.admin-status--published{color:var(--a);border-color:var(--a)}.admin-status--draft{color:#756753;border-color:#75675357}.admin-form{gap:18px;display:grid}.admin-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 18px;display:grid}.admin-field{gap:8px;display:grid}.admin-field--full{grid-column:1/-1}.admin-field input,.admin-field textarea,.admin-field select{border:1px solid var(--l);background:var(--admin-input-bg);width:100%;color:inherit;font:inherit;border-radius:12px;padding:10px 12px}.admin-field textarea{resize:vertical;min-height:96px}.admin-field input:focus,.admin-field textarea:focus,.admin-field select:focus{border-color:var(--a);box-shadow:0 0 0 3px color-mix(in srgb,var(--a) 12%,transparent);outline:0}.admin-message{min-height:1.4em;color:var(--m)}.admin-message[role=alert]{color:#7a2418}.admin-filter{flex-wrap:wrap;align-items:end;gap:12px;margin-bottom:18px;display:flex}.admin-filter .admin-field{min-width:160px}.admin-image-grid{grid-template-columns:repeat(auto-fit,minmax(126px,1fr));gap:12px;display:grid}.admin-image-card{border:1px solid var(--b);background:var(--x);border-radius:18px;gap:8px;padding:10px;display:grid}.admin-image-card img{aspect-ratio:4/3;object-fit:cover;border-radius:12px;width:100%;display:block}.admin-image-card.is-cover{border-color:var(--a)}.admin-queue-list,.admin-check-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.admin-queue-item{border-bottom:1px solid var(--color-border,#705e4633);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;padding:14px 0;display:grid}.admin-queue-item:last-child{border-bottom:0;padding-bottom:0}.admin-queue-item>div{gap:5px;display:grid}.admin-queue-item span{letter-spacing:.08em;text-transform:uppercase;width:fit-content;color:var(--m);font-size:.7rem}.admin-queue-item strong{font-weight:500}.admin-queue-item p{color:var(--m);margin:0;line-height:1.55}.admin-queue-item small{color:var(--m)}.admin-queue-item--high span{color:#7a2418}.admin-quality-score{letter-spacing:-.04em;font-size:clamp(1.55rem,2vw,2.25rem);font-weight:500}.admin-quality-meter{background:var(--l);border-radius:999px;height:8px;overflow:hidden}.admin-quality-meter span{border-radius:inherit;background:linear-gradient(90deg,var(--c),var(--a));height:100%;display:block}.admin-check-list li{border-bottom:1px solid var(--color-border,#705e462e);color:var(--m);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.admin-check-list li:last-child{border-bottom:0}.admin-check-list strong{color:var(--t);font-weight:500}.admin-empty{border:1px dashed var(--b);background:var(--x);border-radius:18px;place-items:start;gap:10px;padding:24px;display:grid}.admin-empty p{color:var(--m);margin:0;line-height:1.7}.admin-empty--compact{padding:18px}@media (max-width:1240px){.admin-shell--workspace{grid-template-columns:238px minmax(0,1fr)}}@media (max-width:940px){.admin-shell--workspace{display:block}.admin-main{padding:18px}.admin-sidebar{border-right:0;border-bottom:1px solid var(--b);grid-template-rows:auto auto;gap:16px;height:auto;padding:16px 18px;position:static}.admin-sidebar__nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.admin-sidebar__footer{display:none}.admin-shell__top,.admin-grid,.admin-grid--two,.admin-form__grid,.admin-chart-grid{grid-template-columns:1fr}.admin-table{display:block;overflow-x:auto}.admin-stat{min-height:122px}}@media (max-width:560px){.admin-shell--auth{padding:18px}.admin-sidebar__nav{grid-template-columns:1fr}.admin-button,.admin-link,.admin-form button{width:fit-content}.admin-queue-item,.admin-bar-row{grid-template-columns:1fr}.admin-title{font-size:clamp(2rem,12vw,3rem)}}.admin-dashboard-grid .admin-card{min-width:0}.admin-overview-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.admin-overview-metrics>div{border:1px solid var(--l);background:var(--x);border-radius:14px;gap:3px;padding:12px;display:grid}.admin-overview-metrics span,.admin-overview-metrics small{color:var(--m);letter-spacing:.08em;text-transform:uppercase;font-size:.66rem}.admin-overview-metrics strong{font-size:clamp(1.35rem,2vw,2.1rem);font-weight:500;line-height:1}.admin-project-cell{align-items:center;gap:10px;min-width:0;display:flex}.admin-project-cell span{gap:3px;min-width:0;display:grid}.admin-project-cell strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-quick-list{gap:10px;display:grid}.admin-quick-list a{border:1px solid var(--b);background:var(--x);color:inherit;border-radius:14px;gap:3px;padding:13px 14px;text-decoration:none;transition:border-color .2s,background-color .2s,transform .2s;display:grid}.admin-quick-list a:hover{border-color:var(--a);background:var(--y);transform:translateY(-1px)}.admin-quick-list span{letter-spacing:.1em;text-transform:uppercase;color:var(--m);font-size:.68rem}.admin-quick-list strong{color:var(--t);font-weight:500}.admin-fit{height:100dvh;min-height:100dvh;overflow:hidden}.admin-fit .admin-main{grid-template-rows:auto minmax(0,1fr);gap:clamp(10px,1.35dvh,16px);height:100dvh;min-height:0;padding:clamp(12px,1.7dvh,18px) clamp(16px,2vw,28px);display:grid;position:relative;overflow:hidden}.admin-fit .admin-sidebar{height:100dvh;overflow:hidden}.admin-fit .admin-shell__top{gap:18px;margin:0}.admin-fit .admin-title{font-size:clamp(1.55rem,2.2vw,2.35rem)}.admin-fit .admin-lead{margin:6px 0 0;font-size:clamp(.78rem,.82vw,.92rem);line-height:1.45}.admin-fit .admin-warning{z-index:3;max-width:420px;margin:0;padding:8px 12px;font-size:.78rem;position:absolute;top:18px;right:20px}.admin-fit .admin-dashboard-grid{--dash-gap:clamp(10px,1.25dvh,16px);gap:var(--dash-gap);grid-template-rows:minmax(76px,.42fr) minmax(0,1.25fr) minmax(0,1.25fr);grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch;height:100%;min-height:0}.admin-fit .admin-dashboard-grid>*{height:100%;min-height:0}.admin-fit .admin-card{border-radius:14px;padding:clamp(10px,1.35dvh,16px)}.admin-fit .admin-panel{gap:clamp(7px,1dvh,11px);overflow:hidden}.admin-fit .admin-section__head{gap:10px;margin:0}.admin-fit .admin-section__eyebrow{margin-bottom:3px;font-size:.62rem}.admin-fit .admin-panel h2{font-size:clamp(.94rem,1.05vw,1.18rem)}.admin-fit .admin-kpi-grid{gap:var(--dash-gap);grid-template-columns:repeat(4,minmax(0,1fr))}.admin-fit .admin-stat{grid-template-rows:auto auto auto;align-content:start;gap:4px;min-height:0}.admin-fit .admin-stat strong{font-size:clamp(1.45rem,2.15vw,2.35rem)}.admin-fit .admin-stat span{font-size:.72rem;line-height:1.28}.admin-fit .admin-stat__head i{width:18px;height:18px}.admin-fit .admin-stat em{padding:2px 6px}.admin-fit .admin-overview-metrics{gap:8px}.admin-fit .admin-overview-metrics>div{padding:9px}.admin-fit .admin-chart-grid{gap:12px}.admin-fit .admin-chart-panel,.admin-fit .admin-bar-list{gap:7px}.admin-fit .admin-bar-row{grid-template-columns:86px minmax(0,1fr) 24px;gap:8px}.admin-fit .admin-bar-row span{font-size:.78rem}.admin-fit .admin-queue-list{gap:0;overflow:hidden}.admin-fit .admin-queue-item{gap:10px;padding:8px 0}.admin-fit .admin-queue-item>div{gap:2px}.admin-fit .admin-queue-item p{font-size:.76rem;line-height:1.35}.admin-fit .admin-queue-item small{display:none}.admin-fit .admin-link{padding:8px 10px;font-size:.78rem}.admin-fit .admin-recent-table th,.admin-fit .admin-recent-table td{padding:7px 8px}.admin-fit .admin-recent-table{font-size:.82rem}.admin-fit .admin-thumb{border-radius:11px;width:clamp(42px,4.8dvh,54px)}.admin-fit .admin-status{padding:4px 8px;font-size:.68rem}.admin-fit .admin-quality-score{font-size:clamp(1.35rem,1.8vw,2rem)}.admin-fit .admin-check-list{gap:0}.admin-fit .admin-check-list li{padding:6px 0;font-size:.78rem}.admin-fit .admin-quick-list--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-fit .admin-quick-list--compact a{padding:9px 10px}.admin-fit .admin-empty{gap:6px;padding:14px}@media (max-width:1320px){.admin-shell--workspace{grid-template-columns:238px minmax(0,1fr)}.admin-fit .admin-dashboard-grid{grid-template-rows:minmax(76px,.42fr) minmax(0,1.2fr) minmax(0,1.25fr);grid-template-columns:repeat(10,minmax(0,1fr))}.admin-fit .admin-span-main{grid-column:span 6}.admin-fit .admin-span-side{grid-column:span 4}.admin-fit .admin-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.admin-fit .admin-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:940px){.admin-fit{height:auto;min-height:100dvh;overflow:visible}.admin-fit .admin-main{height:auto;overflow:visible}.admin-fit .admin-dashboard-grid{grid-template-rows:none;grid-template-columns:1fr;height:auto}.admin-fit .admin-grid-full,.admin-fit .admin-span-main,.admin-fit .admin-span-side{grid-column:1/-1}.admin-fit .admin-kpi-grid,.admin-fit .admin-overview-metrics,.admin-fit .admin-chart-grid{grid-template-columns:1fr 1fr}.admin-fit .admin-panel{overflow:visible}}@media (max-width:560px){.admin-fit .admin-kpi-grid,.admin-fit .admin-overview-metrics,.admin-fit .admin-chart-grid,.admin-fit .admin-quick-list--compact{grid-template-columns:1fr}.admin-fit .admin-table{display:block;overflow-x:auto}.admin-fit .admin-recent-table{min-width:520px}}
