.blueprint-section{background-color:#424446;background-image:linear-gradient(rgba(206,219,217,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(206,219,217,.035) 1px,transparent 1px);background-size:30px 30px;color:#f3f1e8}
.blueprint-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7%}
.blueprint-grid .draft-label{color:#dedfdf;font-size:.56rem}
.blueprint-grid p:not(.draft-label){color:#e3e3e2;font-size:.96rem}
.blueprint-grid h2{font-size:clamp(2.7rem,4vw,4rem)}
.blueprint-drawing{color:#b2c6bd;width:100%;opacity:.8}
.blueprint-grid .btn{margin-top:20px}
@media(max-width:760px){.studio-intro-grid,.blueprint-grid,.about-original,.contact-original,.quote-request{grid-template-columns:1fr;gap:45px}
.blueprint-drawing{max-width:600px;margin:auto}}
.blueprint-section{ overflow: hidden; background-color: #424446; background-image: linear-gradient(rgba(236,238,239,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(236,238,239,.035) 1px,transparent 1px); padding: 64px 0; }
.blueprint-grid{ min-height: 580px; }
.blueprint-grid h2{ position: relative; z-index: 1; }
.blueprint-grid p:not(.draft-label){ color: #e3e3e2; }
.house-viewer{ min-width: 0; width: 100%; position: relative; }
.house-kicker{ font: 400 .6rem/1.5 var(--draft) !important; letter-spacing: .1em; text-align: center; color: #dedfdf; margin: 0; }
.house-canvas{ position: relative; width: 100%; height: clamp(420px,39vw,535px); cursor: grab; touch-action: pan-y; }
.house-canvas:active{ cursor: grabbing; }
.house-canvas [data-house-render],.house-fallback{ display: block; position: absolute; inset: 0; width: 100%; height: 100%; }
.house-canvas [data-house-render]{ background: transparent !important; }
.house-fallback{ object-fit: contain; }
.house-viewer[data-renderer="three-svg"] .house-fallback{ display: none; }
.house-viewer[data-renderer="fallback"] [data-house-render]{ display: none; }
.house-controls{ display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
.house-controls[hidden]{ display: none; }
.house-controls button{ min-width: 44px; min-height: 44px; border: 1px solid #939697; padding: 10px 12px; color: #f3f3f1; background: transparent; font: 400 .72rem/1.4 var(--sans); letter-spacing: .025em; cursor: pointer; transition: background .2s,border-color .2s; }
.house-controls button:hover,.house-controls button[aria-pressed="true"]{ background: #5a5d5f; border-color: #d0d2d2; }
.house-controls button:focus-visible,.house-canvas:focus-visible{ outline: 2px solid #f4f4f0; outline-offset: 4px; }
.house-controls [data-house-turn]{ font-size: 1.35rem; padding: 4px 10px; }
.blueprint-grid .house-caption{ text-align: center; font-size: .72rem; letter-spacing: .035em; color: #d0d2d2; margin: 18px 0 0; }
.blueprint-grid .draft-label{ color: #dedfdf; }
@media (max-width: 1180px){.blueprint-grid{ min-height: 480px; }}
@media (max-width: 760px){.house-viewer{ max-width: 680px; margin: 10px auto 0; }
.house-canvas{ height: clamp(340px,85vw,540px); }
.blueprint-grid{ min-height: 0; }
.house-kicker{ font-size: .52rem !important; }}
.arch-study{position:relative;overflow:hidden;background:#eeeae2;color:#292923;padding:clamp(72px,8vw,130px) 0;isolation:isolate}
.arch-study:before{content:"";position:absolute;inset:0;background-image:linear-gradient(#6a62561a 1px,transparent 1px),linear-gradient(90deg,#6a62561a 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(90deg,#0008,transparent 80%);pointer-events:none}
.arch-study>.wrap{position:relative}
.arch-study .draft-label,.arch-study .arch-kicker{font-family:var(--draft);letter-spacing:.17em;text-transform:uppercase;font-size:.62rem}
.arch-study h2{max-width:790px;font-size:clamp(2.8rem,6vw,6rem);line-height:1.03;margin:18px 0 18px}
.arch-study .arch-subtitle{max-width:68ch;font-size:1rem;line-height:1.8;color:#635f56;margin-bottom:40px}
.arch-study-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.arch-panel{border:1px solid #bdb5a6;background:#f7f4ed;position:relative;min-height:340px;padding:20px;overflow:hidden}
.arch-panel:nth-child(2){background:#dddbd3}
.arch-panel:nth-child(3){background:#343c3d;color:#f3efe8;border-color:#343c3d}
.arch-panel svg{width:100%;height:245px;display:block;overflow:visible}
.arch-panel .arch-meta{display:flex;justify-content:space-between;gap:14px;align-items:flex-end;border-top:1px solid currentColor;padding-top:13px;margin-top:8px}
.arch-panel .arch-meta strong{font-family:var(--draft);font-size:.61rem;text-transform:uppercase;letter-spacing:.045em;font-weight:400}
.arch-panel .arch-meta span{font-size:.68rem;opacity:.7;white-space:nowrap}
.arch-panel svg .fine{fill:none;stroke:currentColor;stroke-width:1.05;opacity:.56;stroke-linecap:round;stroke-linejoin:round}
.arch-panel svg .strong{fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.arch-panel svg .shade{fill:currentColor;opacity:.055}
.arch-panel .arch-number{position:absolute;right:19px;top:14px;font:400 .6rem var(--draft);opacity:.6}
.arch-study .arch-footnote{font-size:.7rem;color:#736e65;margin:22px 0 0}
.arch-study + .blueprint-section{border-top:1px solid #555}
.arch-accent{font-family:var(--draft)!important;font-weight:400!important;letter-spacing:.03em!important;text-transform:uppercase;line-height:1.45!important}
.home-page .blueprint-section .draft-label{font-family:var(--draft);letter-spacing:.18em}
@media(max-width:900px){.arch-study-grid{grid-template-columns:1fr}
.arch-panel{min-height:305px}
.arch-panel svg{height:210px}}
@media(prefers-reduced-motion:no-preference){.arch-panel svg{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.arch-panel:hover svg{transform:translateY(-6px) scale(1.035)}}
.arch-compare{ background:#f2f0eb; color:#282c2b; padding:clamp(72px,9vw,132px) 0 clamp(78px,9vw,130px); border-top:1px solid #d8d2c8; }

.arch-compare-heading{ display:flex; justify-content:space-between; align-items:flex-end; gap:clamp(28px,7vw,110px); margin-bottom:45px; }
.arch-compare-kicker{ margin:0 0 18px; color:#625c53; font:400 .66rem/1.6 var(--draft),Arial,sans-serif; letter-spacing:.15em; text-transform:uppercase; }
.arch-compare-heading h2{ max-width:13ch; margin:0; font:400 clamp(2.6rem,5.3vw,5.8rem)/1.04 var(--serif),Georgia,serif; letter-spacing:-.045em; }
.arch-compare-heading h2 em{ font-weight:300; }
.arch-compare-heading > p{ max-width:37ch; margin:0 0 .25rem; color:#615e57; font:400 clamp(.96rem,1.18vw,1.07rem)/1.8 var(--sans),Arial,sans-serif; }
.arch-compare-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:clamp(18px,2.2vw,32px); }
.arch-compare-card{ position:relative; min-width:0; }
.arch-compare-visual{ position:relative; overflow:hidden; isolation:isolate; aspect-ratio:3/2; background:#d9d4cb; }
.arch-compare-visual:focus-within{ outline:2px solid #846644; outline-offset:4px; }
.arch-compare-visual img{ position:absolute; inset:0; width:100%; height:100%; display:block; object-fit:cover; object-position:center; }
.arch-compare-visual .arch-color{ clip-path:inset(0 100% 0 0); transition:clip-path 850ms cubic-bezier(.25,.8,.2,1); }
@media (hover:hover) and (pointer:fine){.arch-compare-card:hover .arch-color, .arch-compare-card:focus-within .arch-color{ clip-path:inset(0 0 0 0); }}
.arch-compare-card.is-revealed .arch-color{ clip-path:inset(0 0 0 0); }
.arch-compare-visual::after{ content:''; position:absolute; inset:58% 0 0; background:linear-gradient(0deg,#121712a8,transparent); pointer-events:none; z-index:1; }
.arch-compare-stage{ position:absolute; top:22px; left:22px; right:22px; z-index:3; display:flex; justify-content:space-between; align-items:center; gap:16px; pointer-events:none; }
.arch-compare-stage span{ color:#22251f; background:#f7f4eee9; padding:9px 13px; text-transform:uppercase; font:400 .58rem/1.3 var(--draft); letter-spacing:.13em; backdrop-filter:blur(5px); }
.arch-compare-stage .arch-current:before{ content:'01 / PENCIL STUDY'; }
@media (hover:hover) and (pointer:fine){.arch-compare-card:hover .arch-current:before,.arch-compare-card:focus-within .arch-current:before{ content:'02 / FINAL REVEAL'; }}
.arch-compare-card.is-revealed .arch-current:before{ content:'02 / FINAL REVEAL'; }
.arch-reveal-toggle{ position:absolute; z-index:5; right:20px; bottom:20px; display:inline-flex; align-items:center; justify-content:center; gap:11px; min-height:46px; padding:11px 15px; background:#f8f6ef; color:#222820; border:1px solid #f8f6ef; border-radius:0; font:400 .6rem/1.3 var(--draft),Arial,sans-serif; text-transform:uppercase; letter-spacing:.05em; cursor:pointer; transition:background .2s,color .2s; }
.arch-reveal-toggle:hover,.arch-reveal-toggle:focus-visible{ background:#272d2e; border-color:#272d2e; color:white; }
.arch-reveal-toggle:focus-visible{ outline:2px solid #fff; outline-offset:3px; }
.arch-reveal-toggle .arch-reveal-icon{ font:400 1.05rem/1 Georgia,serif; }
.arch-compare-caption{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding:21px 0 0; }
.arch-compare-caption h3{ margin:0; font:400 clamp(1.55rem,2.3vw,2.25rem)/1.2 var(--serif),Georgia,serif; letter-spacing:-.018em; }
.arch-compare-caption span{ color:#736b60; font:400 .59rem/1.6 var(--draft),Arial,sans-serif; letter-spacing:.09em; text-transform:uppercase; white-space:nowrap; }
.arch-compare-explainer{ margin:28px 0 0; max-width:95ch; color:#6b665d; font:400 .78rem/1.7 var(--sans),Arial,sans-serif; }
@media (max-width:760px){.arch-compare-heading{ display:block; margin-bottom:28px; }
.arch-compare-heading > p{ margin-top:22px; max-width:50ch; }
.arch-compare-grid{ grid-template-columns:1fr; gap:36px; }
.arch-compare-stage{ top:12px; left:12px; right:12px; }
.arch-compare-stage span{ font-size:.49rem; padding:9px; }
.arch-reveal-toggle{ right:12px; bottom:12px; font-size:.54rem; min-height:44px; }
.arch-compare-caption h3{ font-size:1.7rem; }}
@media (prefers-reduced-motion:reduce){.arch-compare-visual .arch-color{ transition:none; }}
.arch-touch-instruction{ display:none; }
@media (hover:hover) and (pointer:fine){.arch-compare-card:hover .arch-reveal-toggle [data-toggle-label]{font-size:0}
.arch-compare-card:hover .arch-reveal-toggle [data-toggle-label]::after{content:'Color revealed';font-size:.6rem}}
@media (max-width:760px){.arch-pointer-instruction{display:none}
.arch-touch-instruction{display:inline}
.arch-compare-caption{flex-direction:column;align-items:flex-start;gap:6px}
.arch-compare-caption span{font-size:.57rem}}
.house-fallback .mf0{fill:none;stroke:rgb(255,255,255);stroke-opacity:0.18;stroke-width:1;stroke-linecap:round}.house-fallback .mf1{fill:none;stroke:rgb(230,232,231);stroke-opacity:0.26;stroke-width:1;stroke-linecap:round}.house-fallback .mf2{fill:rgb(65,77,85)}.house-fallback .mf3{fill:rgb(46,56,63)}.house-fallback .mf4{fill:rgb(57,68,74)}.house-fallback .mf5{fill:rgb(81,96,76)}.house-fallback .mf6{fill:rgb(58,71,56)}.house-fallback .mf7{fill:rgb(71,85,67)}.house-fallback .mf8{fill:rgb(180,185,186)}.house-fallback .mf9{fill:rgb(160,164,165)}.house-fallback .mf10{fill:rgb(133,139,142)}.house-fallback .mf11{fill:rgb(63,84,73)}.house-fallback .mf12{fill:rgb(44,62,54)}.house-fallback .mf13{fill:rgb(55,74,64)}.house-fallback .mf14{fill:rgb(129,108,87)}.house-fallback .mf15{fill:rgb(94,80,64)}.house-fallback .mf16{fill:rgb(114,96,76)}.house-fallback .mf17{fill:rgb(34,107,125)}.house-fallback .mf18{fill:rgb(29,95,111)}.house-fallback .mf19{fill:rgb(22,79,94)}.house-fallback .mf20{fill:rgb(154,203,208);fill-opacity:0.22}.house-fallback .mf21{fill:rgb(220,216,209)}.house-fallback .mf22{fill:rgb(163,163,160)}.house-fallback .mf23{fill:rgb(195,192,186)}.house-fallback .mf24{fill:rgb(206,203,198)}.house-fallback .mf25{fill:rgb(212,208,202)}.house-fallback .mf26{fill:rgb(118,100,79)}.house-fallback .mf27{fill:rgb(102,86,69)}.house-fallback .mf28{fill:rgb(40,55,48)}.house-fallback .mf29{fill:rgb(46,64,56)}.house-fallback .mf30{fill:rgb(43,60,53)}.house-fallback .mf31{fill:rgb(64,85,74)}.house-fallback .mf32{fill:rgb(57,77,66)}.house-fallback .mf33{fill:rgb(45,62,55)}.house-fallback .mf34{fill:rgb(65,87,75)}.house-fallback .mf35{fill:rgb(51,70,60)}.house-fallback .mf36{fill:rgb(57,76,66)}.house-fallback .mf37{fill:rgb(103,87,69)}.house-fallback .mf38{fill:rgb(118,99,79)}.house-fallback .mf39{fill:rgb(226,225,220)}.house-fallback .mf40{fill:rgb(185,186,185)}.house-fallback .mf41{fill:rgb(246,243,237)}.house-fallback .mf42{fill:rgb(175,176,174)}.house-fallback .mf43{fill:rgb(221,219,214)}.house-fallback .mf44{fill:rgb(163,164,162)}.house-fallback .mf45{fill:rgb(248,245,239)}.house-fallback .mf46{fill:rgb(182,183,181)}.house-fallback .mf47{fill:rgb(202,200,196)}.house-fallback .mf48{fill:rgb(224,222,218)}.house-fallback .mf49{fill:rgb(255,209,154)}.house-fallback .mf50{fill:rgb(127,109,91)}.house-fallback .mf51{fill:rgb(143,123,103)}.house-fallback .mf52{fill:rgb(23,31,36)}.house-fallback .mf53{fill:rgb(30,38,43)}.house-fallback .mf54{fill:rgb(36,44,50)}.house-fallback .mf55{fill:rgb(107,92,77)}.house-fallback .mf56{fill:rgb(137,162,174);fill-opacity:0.2}.house-fallback .mf57{fill:rgb(113,137,150);fill-opacity:0.2}.house-fallback .mf58{fill:rgb(170,176,180)}.house-fallback .mf59{fill:rgb(230,234,235)}.house-fallback .mf60{fill:rgb(204,208,209)}