:root{
  --ink:#17352f;--ink-2:#29483f;--paper:#f5f0e7;--paper-2:#ebe2d4;--white:#fffdf8;--clay:#a9664f;--brass:#b39264;--sage:#aeb9aa;--line:rgba(23,53,47,.16);--shadow:0 30px 70px rgba(28,42,37,.14);--serif:Georgia,'Times New Roman',serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--shell:min(1240px,calc(100% - 64px));
}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}html.menu-open,body.menu-open{overflow:hidden;height:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}.skip-link{position:fixed;z-index:9999;top:10px;left:10px;background:var(--ink);color:white;padding:12px 18px;transform:translateY(-160%)}.skip-link:focus{transform:none}.shell{width:var(--shell);margin-inline:auto;min-width:0}.section{padding:120px 0}.compact-top{padding-top:32px}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:700}.eyebrow:before{content:'';width:32px;height:1px;background:currentColor;opacity:.65}.eyebrow.light{color:#d8c9ae}.section-number{font-size:.8rem;letter-spacing:.15em}.button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 25px;border:1px solid var(--ink);background:var(--ink);color:var(--white);font-weight:700;letter-spacing:.02em;transition:.25s ease}.button:hover{background:var(--ink-2);transform:translateY(-2px)}.button-small{min-height:44px;padding:0 18px;font-size:.82rem}.text-link{display:inline-flex;align-items:center;gap:10px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:3px}.round-link{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.round-link svg,.site-header svg,.mobile-action-bar svg,.contact-stack svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}.delay-1{transition-delay:.1s}.delay-2{transition-delay:.18s}
.site-header{position:fixed;z-index:100;top:0;left:0;width:100%;background:rgba(245,240,231,.82);border-bottom:1px solid rgba(23,53,47,.08);backdrop-filter:blur(18px)}.nav-shell{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border:1px solid var(--ink);border-radius:50%;font-family:var(--serif);font-size:1.45rem}.brand-copy{display:grid;line-height:1.05}.brand-copy b{font-family:var(--serif);font-size:1.12rem;letter-spacing:.08em}.brand-copy small{font-size:.51rem;letter-spacing:.15em;margin-top:5px}.desktop-nav{display:flex;gap:28px;font-size:.84rem;font-weight:650}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--ink);transition:.25s}.desktop-nav a:hover:after{right:0}.nav-actions{display:flex;align-items:center;gap:12px}.menu-toggle,.menu-close{display:none;border:0;background:none;width:48px;height:48px;place-items:center}.mobile-menu{position:fixed;z-index:140;inset:0;background:linear-gradient(145deg,#17352f,#22483f);color:white;padding:calc(22px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom));display:flex;flex-direction:column;opacity:0;visibility:hidden;pointer-events:none;transition:.3s}.mobile-menu.open{opacity:1;visibility:visible;pointer-events:auto}.mobile-menu-top{display:flex;justify-content:space-between;align-items:center}.mobile-menu-label{font-size:.72rem;letter-spacing:.17em;text-transform:uppercase}.mobile-menu nav{display:grid;margin:auto 0;gap:14px}.mobile-menu nav a{font-family:var(--serif);font-size:clamp(2rem,7vw,3.8rem);line-height:1.08}.mobile-menu-foot{display:flex;justify-content:space-between;gap:20px;font-size:.8rem;color:#d7e1dc}.site-footer{background:#102b25;color:#e9e0d2;padding:84px 0 32px}.footer-grid{display:grid;grid-template-columns:1.8fr repeat(3,1fr);gap:70px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.footer-grid p{max-width:420px;color:#afc1b9}.footer-grid h3{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:#bba886}.footer-grid a,.footer-grid span{font-size:.9rem}.footer-brand{font-family:var(--serif);font-size:2.1rem}.footer-base{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.13);margin-top:60px;padding-top:24px;font-size:.72rem;color:#91a79e}.mobile-action-bar{display:none}
.hero{padding-top:150px;min-height:100vh;background:radial-gradient(circle at 80% 16%,rgba(191,165,129,.35),transparent 32%),linear-gradient(180deg,#f7f2e9,#eee6d9)}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:74px;align-items:center}.hero-copy h1,.page-hero h1,.project-detail-hero h1,.kitchen-hero h1,.studio-hero h1,.consultation-hero h1{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:.97}.hero-copy h1{font-size:clamp(4.1rem,7.2vw,7.4rem);max-width:700px;margin:28px 0}.hero-lede{font-size:1.18rem;max-width:640px;color:#4e655e}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:34px}.trust-strip{display:flex;gap:28px;margin-top:48px;padding-top:25px;border-top:1px solid var(--line)}.trust-strip div{display:grid}.trust-strip strong{font-family:var(--serif);font-size:1.5rem;font-weight:400}.trust-strip span{font-size:.69rem;text-transform:uppercase;letter-spacing:.08em;color:#60736d}.hero-note{display:flex;justify-content:flex-end;gap:34px;margin-top:28px;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.room-stage{position:relative;min-height:610px;perspective:1100px;isolation:isolate}.room-glow{position:absolute;inset:8% 8% 3%;background:radial-gradient(circle,#fff8e9 0,rgba(255,248,233,.2) 45%,transparent 72%);filter:blur(20px)}.room-3d{position:absolute;inset:7% 2% 14%;transform-style:preserve-3d;transform:rotateX(2deg) rotateY(-7deg);animation:roomFloat 9s ease-in-out infinite}.room-wall{position:absolute;background:var(--wall);box-shadow:inset 0 0 80px rgba(36,45,41,.08)}.room-wall-back{inset:0 8% 12% 8%;transform:translateZ(-40px)}.room-wall-left{left:0;top:4%;bottom:12%;width:16%;transform-origin:left;transform:rotateY(68deg);background:color-mix(in srgb,var(--wall),#90765c 14%)}.room-wall-right{right:0;top:4%;bottom:12%;width:16%;transform-origin:right;transform:rotateY(-68deg);background:color-mix(in srgb,var(--wall),#fff 14%)}.room-floor{position:absolute;left:7%;right:7%;bottom:0;height:34%;background:linear-gradient(120deg,#b79771,#d3b895);transform:rotateX(68deg);transform-origin:bottom}.art-frame{position:absolute;left:16%;top:13%;width:27%;height:30%;border:7px solid rgba(62,51,41,.55);background:#ded6c5;padding:8px}.art-frame span{display:block;width:100%;height:100%;background:linear-gradient(135deg,#7a8b82 0 45%,#c49f77 45% 70%,#f2e8d7 70%)}.sconce{position:absolute;top:23%;width:8px;height:54px;background:#9d7c54}.sconce:after{content:'';position:absolute;width:55px;height:55px;border-radius:50%;background:radial-gradient(circle,#ffe8b8,rgba(255,232,184,.1) 55%,transparent 70%);left:50%;top:-18px;transform:translateX(-50%)}.sconce-a{right:22%}.sconce-b{right:12%}.sofa{position:absolute;left:17%;bottom:16%;width:50%;height:25%;transform:translateZ(40px)}.sofa-back,.sofa-seat{position:absolute;background:#e8ddcd;border-radius:18px}.sofa-back{left:5%;right:5%;top:0;height:62%;box-shadow:0 18px 36px rgba(43,44,38,.15)}.sofa-seat{left:0;right:0;bottom:0;height:45%}.cushion{position:absolute;width:25%;height:42%;top:14%;border-radius:10px;background:var(--cabinet);box-shadow:0 8px 18px rgba(20,34,29,.16)}.c1{left:10%;transform:rotate(-4deg)}.c2{left:39%;background:#b36f55;transform:rotate(3deg)}.console{position:absolute;right:14%;bottom:18%;width:19%;height:26%;transform:translateZ(28px)}.console-top{height:7%;background:#302f2b}.console-body{height:93%;background:var(--cabinet)}.table{position:absolute;left:42%;bottom:8%;width:33%;height:18%;transform:translateZ(85px)}.table-top{height:23%;border-radius:50%;background:#d7c1a2;box-shadow:0 18px 30px rgba(38,43,37,.18)}.table-leg{width:14%;height:80%;background:#463e35;margin:auto;clip-path:polygon(33% 0,67% 0,100% 100%,0 100%)}.plant{position:absolute;right:3%;bottom:15%;width:15%;height:42%;transform:translateZ(35px)}.plant b{position:absolute;bottom:0;left:30%;width:46%;height:32%;background:#8f765d;clip-path:polygon(10% 0,90% 0,75% 100%,25% 100%)}.plant i{position:absolute;bottom:25%;left:49%;width:28%;height:57%;border-radius:100% 0 100% 0;background:#365e51;transform-origin:bottom}.plant i:nth-child(1){transform:rotate(-37deg)}.plant i:nth-child(2){transform:rotate(2deg);height:70%}.plant i:nth-child(3){transform:rotate(39deg)}.room-caption{position:absolute;right:0;bottom:0;display:grid;text-align:right}.room-caption span{font-size:.63rem;text-transform:uppercase;letter-spacing:.14em}.room-caption strong{font-family:var(--serif);font-size:1.1rem;font-weight:400}.philosophy{background:var(--white)}.split-heading{display:grid;grid-template-columns:80px 1.4fr .7fr;gap:60px;align-items:start}.split-heading h2,.section-head h2,.material-grid h2,.dark-grid h2,.cta-card h2,.story-grid h2,.estimate-grid h2{font-family:var(--serif);font-weight:400;line-height:1.05;letter-spacing:-.035em}.split-heading h2{font-size:clamp(2.8rem,5vw,5rem);margin:0}.split-heading p{margin:8px 0 0;color:#556a63}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:44px}.section-head h2{font-size:clamp(2.8rem,4.6vw,4.6rem);margin:16px 0 0}.projects-preview{background:#eee6d8}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:54px 26px}.featured-grid .project-card:first-child{grid-row:span 2}.project-card{min-width:0;transition:transform .25s ease}.project-visual{position:relative;overflow:hidden;background:#ddd;aspect-ratio:1.32}.project-visual.large{aspect-ratio:1.7}.project-visual svg{display:block;width:100%;height:100%;transition:transform .7s ease}.project-card:hover .project-visual svg{transform:scale(1.025)}.project-index{position:absolute;top:16px;right:16px;background:rgba(255,253,248,.9);padding:7px 10px;font-size:.66rem;letter-spacing:.12em}.project-meta{display:flex;justify-content:space-between;gap:20px;margin-top:18px}.project-meta span{font-size:.69rem;text-transform:uppercase;letter-spacing:.11em}.project-meta h3{font-family:var(--serif);font-size:1.8rem;font-weight:400;margin:4px 0 0}.project-card p{color:#5b6e68;max-width:580px}.material-lab{background:#14362f;color:#eef1e9}.material-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:center}.material-grid h2{font-size:clamp(3rem,5vw,5rem);margin:20px 0}.material-grid p{color:#bdcdc7}.swatch-group{margin-top:30px}.swatch-group>span{display:block;font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:10px}.swatches{display:flex;gap:12px}.swatches button{width:46px;height:46px;border-radius:50%;border:2px solid transparent;background:var(--swatch);box-shadow:0 0 0 1px rgba(255,255,255,.35);cursor:pointer}.swatches button.active{border-color:white}.material-preview .room-stage{min-height:560px}.services-preview{background:var(--white)}.service-list{border-top:1px solid var(--line)}.service-row{display:grid;grid-template-columns:70px 1fr 1.2fr 50px;gap:30px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}.service-row h3{font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:0}.service-row p{margin:0;color:#5a6d67}.testimonial-section{background:#c8b28e}.testimonial-wrap{max-width:900px;text-align:center}.quote-mark{font-family:var(--serif);font-size:5rem;line-height:.5}.testimonial-wrap blockquote{font-family:var(--serif);font-size:clamp(2.1rem,4vw,4rem);line-height:1.15;margin:20px 0 32px}.testimonial-wrap div{display:grid}.testimonial-wrap div span{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.cta-section{background:var(--paper)}.cta-card{background:#a9644f;color:#fff8ed;padding:70px;display:grid;grid-template-columns:1.4fr .6fr;gap:70px;align-items:end}.cta-card h2{font-size:clamp(3rem,5vw,5.4rem);margin:16px 0}.cta-card p{max-width:700px;color:#f0dcd4}.cta-card .button{background:#fff8ed;color:#793f30;border-color:#fff8ed}.cta-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px}
.page-hero,.project-detail-hero,.consultation-hero{padding-top:170px;background:linear-gradient(180deg,#eee5d8,#f5f0e7)}.page-hero .shell{max-width:1050px;margin-left:calc((100% - min(1240px,calc(100% - 64px)))/2)}.page-hero h1,.project-detail-hero h1,.consultation-hero h1{font-size:clamp(4rem,8vw,8rem);max-width:1100px;margin:25px 0}.page-hero p{max-width:720px;font-size:1.18rem;color:#576a64}.filter-bar{display:flex;gap:10px;overflow:auto;padding-bottom:16px}.filter-bar button{white-space:nowrap;border:1px solid var(--line);background:transparent;min-height:46px;padding:0 19px;cursor:pointer}.filter-bar button.active{background:var(--ink);color:white}.all-projects{margin-top:35px}.project-detail-hero .shell:first-child{max-width:1100px}.project-facts{display:flex;gap:45px;margin-top:35px}.project-facts span{display:grid}.project-facts b{font-size:.67rem;text-transform:uppercase;letter-spacing:.12em}.detail-visual{margin-top:60px}.story-grid{display:grid;grid-template-columns:80px 1.2fr .7fr;gap:55px}.story-grid h2{font-size:clamp(2.8rem,4.4vw,4.6rem);margin:0}.story-grid p{color:#596d66}.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:22px}.gallery-panel:first-child{grid-row:span 2}.gallery-panel .project-visual{height:100%;aspect-ratio:auto;min-height:360px}.detail-notes{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.detail-notes article{padding-top:22px;border-top:1px solid var(--line)}.detail-notes h3{font-family:var(--serif);font-size:2rem;font-weight:400}.service-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.service-card{background:var(--white);padding:48px}.service-card>span{font-size:.75rem}.service-card h2{font-family:var(--serif);font-weight:400;font-size:2.6rem;margin:30px 0 14px}.service-card p{color:#5a6d67}.service-card ul{padding-left:18px}.dark-panel{background:#12322b;color:#edf0e8}.dark-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.dark-grid h2{font-size:clamp(3rem,5vw,5rem);margin:20px 0}.dark-grid p{color:#b7c9c2}.scope-list,.kitchen-checklist{display:grid}.scope-list span{display:grid;grid-template-columns:55px 1fr;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.15)}.scope-list b{color:#c6a879}.kitchen-hero{padding-top:155px;background:linear-gradient(135deg,#e9dfcf,#c6b397)}.kitchen-hero-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}.kitchen-hero h1{font-size:clamp(4rem,7vw,7.2rem);margin:24px 0}.kitchen-hero p{font-size:1.15rem;max-width:630px}.kitchen-model{min-height:620px;position:relative;perspective:1000px}.kitchen-wall{position:absolute;inset:8% 3% 14%;background:#eee5d8;box-shadow:var(--shadow);transform:rotateY(-5deg)}.kitchen-units{position:absolute;left:11%;right:15%;bottom:20%;height:35%;display:flex;gap:4px;transform:translateZ(30px) rotateY(-5deg)}.kitchen-units i{flex:1;background:#3d5149;border-top:12px solid #cfb99a}.kitchen-units i:first-child{flex:.65}.kitchen-island{position:absolute;right:2%;bottom:9%;width:50%;height:24%;background:#7b5b48;transform:translateZ(75px) rotateY(-5deg)}.kitchen-island b{position:absolute;left:-4%;right:-4%;top:-8%;height:15%;background:#d8c8ad}.kitchen-light{position:absolute;top:10%;width:7px;height:42%;background:#8d7151}.kitchen-light:after{content:'';position:absolute;bottom:0;left:50%;width:60px;height:35px;transform:translateX(-50%);background:#b3956e;clip-path:polygon(25% 0,75% 0,100% 100%,0 100%)}.kitchen-light.l1{left:48%}.kitchen-light.l2{left:66%}.layout-options{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.layout-options button{border:1px solid var(--line);background:var(--white);padding:28px;text-align:left;cursor:pointer}.layout-options button.active{background:var(--ink);color:white}.layout-icon{display:block;position:relative;height:90px;border:1px solid currentColor;margin-bottom:24px}.layout-icon i{position:absolute;background:currentColor;opacity:.65}.layout-icon i:nth-child(1){left:12%;right:12%;top:16%;height:15%}.layout-icon i:nth-child(2){left:12%;bottom:16%;width:15%;height:48%}.layout-icon i:nth-child(3){right:12%;bottom:16%;width:15%;height:34%}.layout-0 i:nth-child(2),.layout-0 i:nth-child(3){display:none}.layout-2 i:nth-child(2){height:65%}.layout-2 i:nth-child(3){height:65%}.layout-3 i:nth-child(2){bottom:10%;left:32%;right:32%;width:auto;height:16%}.layout-options b,.layout-options small{display:block}.layout-options b{font-family:var(--serif);font-size:1.5rem}.layout-result{margin-top:22px;padding:28px 32px;background:#d8c8ad;display:grid;grid-template-columns:.4fr 1fr;gap:30px}.kitchen-checklist span{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.15)}.process-timeline{max-width:1000px}.process-step{display:grid;grid-template-columns:100px 1fr;padding:38px 0;border-bottom:1px solid var(--line)}.process-step h2{font-family:var(--serif);font-size:3rem;font-weight:400;margin:0}.process-step p{margin:5px 0;color:#5b6d67}.estimate-panel{background:#d8c7aa}.estimate-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.estimate-grid h2{font-size:clamp(3rem,5vw,5rem)}.estimate-list{display:grid}.estimate-list span{display:grid;grid-template-columns:120px 1fr;padding:18px 0;border-bottom:1px solid rgba(23,53,47,.2)}.studio-hero{padding-top:160px;background:#1a3d35;color:#eef0e8}.studio-grid{display:grid;grid-template-columns:1fr .75fr;gap:100px;align-items:center}.studio-hero h1{font-size:clamp(4rem,7vw,7.2rem);margin:25px 0}.studio-hero p{color:#bbcbc5;font-size:1.15rem}.studio-portrait{height:590px;position:relative;overflow:hidden;background:#c7b292}.portrait-shape{position:absolute;border-radius:50%}.p1{width:230px;height:330px;background:#bd775e;left:22%;top:12%;transform:rotate(-18deg)}.p2{width:250px;height:360px;background:#2b5147;right:4%;bottom:-8%;transform:rotate(16deg)}.portrait-line{position:absolute;inset:16%;border:1px solid rgba(255,255,255,.55);border-radius:50% 45% 52% 40%}.studio-portrait span{position:absolute;left:28px;bottom:26px;font-family:var(--serif);font-size:1.4rem}.values-grid,.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.values-grid article{padding:36px 0;border-top:1px solid var(--line)}.values-grid h2{font-family:var(--serif);font-size:2.25rem;font-weight:400}.team-section{background:var(--white)}.team-card{text-align:center}.team-avatar{aspect-ratio:.82;display:grid;place-items:center;margin-bottom:22px;overflow:hidden}.team-avatar span{font-family:var(--serif);font-size:4rem;color:rgba(255,255,255,.8)}.avatar-0{background:linear-gradient(145deg,#a96b56,#d2b99a)}.avatar-1{background:linear-gradient(145deg,#173b34,#82968c)}.avatar-2{background:linear-gradient(145deg,#c2a476,#78614a)}.team-card h3{font-family:var(--serif);font-size:1.7rem;font-weight:400;margin:0}.team-card p{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.journal-card{background:var(--white);padding-bottom:34px}.journal-card>.eyebrow,.journal-card h2,.journal-card p,.journal-card>.text-link{margin-left:28px;margin-right:28px}.journal-card h2{font-family:var(--serif);font-size:2rem;line-height:1.15;font-weight:400}.journal-art{height:300px;margin-bottom:28px;display:grid;place-items:center}.journal-art span{font-family:var(--serif);font-size:5rem}.art-0{background:linear-gradient(135deg,#c9b28d,#ede5d5)}.art-1{background:linear-gradient(135deg,#315248,#a8b8ad)}.art-2{background:linear-gradient(135deg,#ac6d55,#dfc4a7)}.consultation-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}.consultation-hero h1{font-size:clamp(4rem,7vw,7rem)}.contact-stack{display:grid;gap:14px;margin-top:38px}.contact-stack>a,.contact-stack>span{display:flex;align-items:center;gap:14px;padding:16px 0;border-bottom:1px solid var(--line)}.contact-stack span span,.contact-stack a span{display:grid}.contact-stack small{color:#62746e}.wa-dot{display:grid!important;place-items:center;width:22px;height:22px;background:#238c59;color:white;border-radius:50%;font-size:.7rem;font-weight:800}.consultation-form{background:var(--white);padding:48px;box-shadow:var(--shadow);scroll-margin-top:110px}.form-progress{display:flex;align-items:center;margin-bottom:38px}.form-progress span{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center}.form-progress span.active{background:var(--ink);color:white}.form-progress i{height:1px;background:var(--line);flex:1}.form-kicker{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em}.consultation-form h2{font-family:var(--serif);font-size:2.5rem;font-weight:400}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.choice-grid label input{position:absolute;opacity:0}.choice-grid label span{display:flex;align-items:center;min-height:62px;padding:0 16px;border:1px solid var(--line);cursor:pointer}.choice-grid input:checked+span{background:var(--ink);color:white}.field{display:grid;gap:7px;margin-top:20px}.field span{font-size:.75rem;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:52px;border:1px solid var(--line);background:#fbf8f2;padding:13px 14px;border-radius:0;color:var(--ink)}.field textarea{min-height:115px;resize:vertical}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 16px}.field.full{grid-column:1/-1}.form-nav{display:flex;justify-content:space-between;align-items:center;margin-top:28px}.text-button{border:0;background:none;text-decoration:underline;cursor:pointer}.consent{display:flex;align-items:flex-start;gap:10px;margin-top:20px;font-size:.82rem}.honeypot{position:absolute!important;left:-9999px!important}.form-success{text-align:center;padding:70px 10px}.success-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 22px;border-radius:50%;background:#dce8df;color:#1f5c43;font-size:2rem}
@keyframes roomFloat{50%{transform:rotateX(3deg) rotateY(-4deg) translateY(-7px)}}
@media(max-width:1050px){:root{--shell:min(100% - 40px,960px)}.desktop-nav{display:none}.menu-toggle{display:grid}.nav-actions .button{display:none}.hero-grid,.material-grid,.kitchen-hero-grid,.studio-grid,.consultation-grid{grid-template-columns:1fr}.hero-copy h1{font-size:clamp(3.9rem,11vw,6.3rem)}.hero-room{margin-top:-25px}.room-stage{min-height:560px}.split-heading,.story-grid{grid-template-columns:60px 1fr}.split-heading p,.story-grid>div:last-child{grid-column:2}.footer-grid{grid-template-columns:1.5fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/-1}.cta-card{grid-template-columns:1fr}.service-row{grid-template-columns:55px 1fr 1.3fr 44px}.dark-grid{grid-template-columns:1fr}.kitchen-model{min-height:560px}.layout-options{grid-template-columns:repeat(2,1fr)}.studio-portrait{height:520px}.consultation-grid{gap:45px}}
@media(max-width:720px){:root{--shell:100%}.shell{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right))}.section{padding:82px 0}.site-header .shell{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.nav-shell{height:68px}.brand-copy small{display:none}.hero{padding-top:112px;min-height:auto}.hero-grid{gap:20px}.hero-copy h1{font-size:clamp(3.35rem,16.4vw,5.2rem);margin:22px 0}.hero-lede{font-size:1.05rem}.hero-actions{align-items:stretch;flex-direction:column;gap:16px}.hero-actions .button{width:100%}.trust-strip{gap:16px;justify-content:space-between}.trust-strip strong{font-size:1.25rem}.trust-strip span{font-size:.58rem}.hero-room{margin:0 -10px}.room-stage{min-height:470px}.room-caption{right:10px}.hero-note{justify-content:flex-start;overflow:auto;gap:20px;padding-bottom:10px}.hero-note span{white-space:nowrap}.split-heading{grid-template-columns:1fr;gap:20px}.split-heading p,.story-grid>div:last-child{grid-column:auto}.split-heading h2{font-size:3.15rem}.section-head{align-items:flex-start;gap:20px}.section-head h2{font-size:3.1rem}.project-grid{grid-template-columns:1fr;gap:40px}.featured-grid .project-card:first-child{grid-row:auto}.project-meta h3{font-size:1.55rem}.material-grid{gap:30px}.material-grid h2{font-size:3.1rem}.material-preview{margin:0 -12px}.material-preview .room-stage{min-height:450px}.service-row{grid-template-columns:40px 1fr 44px;padding:22px 0}.service-row p{grid-column:2/4}.testimonial-wrap blockquote{font-size:2.3rem}.cta-card{padding:38px 24px;gap:34px}.cta-card h2{font-size:3.1rem}.page-hero,.project-detail-hero,.consultation-hero{padding-top:125px}.page-hero .shell{margin:0;width:100%;max-width:none}.page-hero h1,.project-detail-hero h1,.consultation-hero h1{font-size:clamp(3.25rem,15vw,4.8rem)}.page-hero p{font-size:1rem}.filter-bar{padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));width:100%}.all-projects{margin-top:18px}.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.project-facts span{font-size:.76rem}.detail-visual{padding:0;margin-top:35px}.project-visual.large{aspect-ratio:1.15}.story-grid{grid-template-columns:1fr;gap:22px}.story-grid h2{font-size:3rem}.gallery-grid{grid-template-columns:1fr}.gallery-panel:first-child{grid-row:auto}.gallery-panel .project-visual{min-height:280px}.detail-notes,.values-grid,.team-grid,.journal-grid{grid-template-columns:1fr}.service-cards{grid-template-columns:1fr}.service-card{padding:34px 24px}.service-card h2{font-size:2.2rem}.dark-grid{gap:30px}.dark-grid h2{font-size:3.1rem}.kitchen-hero{padding-top:115px}.kitchen-hero h1{font-size:clamp(3.35rem,15vw,4.9rem)}.kitchen-model{min-height:430px}.layout-options{display:flex;overflow:auto;padding-bottom:14px}.layout-options button{min-width:235px}.layout-result{grid-template-columns:1fr}.process-step{grid-template-columns:50px 1fr}.process-step h2{font-size:2.3rem}.estimate-grid{grid-template-columns:1fr;gap:25px}.estimate-list span{grid-template-columns:1fr}.studio-hero{padding-top:120px}.studio-hero h1{font-size:3.5rem}.studio-portrait{height:430px}.journal-art{height:240px}.consultation-form{padding:28px 18px;margin:0 -2px}.choice-grid,.form-grid{grid-template-columns:1fr}.choice-grid label span{min-height:58px}.field input,.field select,.field textarea{font-size:16px}.form-nav .button{min-width:150px}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-grid>div:last-child{grid-column:auto}.footer-base{flex-direction:column;gap:9px;padding-bottom:88px}.mobile-action-bar{position:fixed;z-index:90;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(3,1fr);background:#fffaf1;border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-action-bar a{min-height:62px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:.66rem;font-weight:700}.mobile-action-bar a:last-child{background:var(--ink);color:white}.menu-close{display:grid}.mobile-menu-foot{flex-direction:column}.swatches button{width:48px;height:48px}}
@media(max-width:360px){.hero-copy h1{font-size:3rem}.room-stage{min-height:420px}.trust-strip{gap:8px}.trust-strip span{font-size:.53rem}.project-facts{grid-template-columns:1fr}.studio-hero h1{font-size:3rem}.consultation-form h2{font-size:2.15rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

/* Photography-led portfolio upgrade */
picture{display:block;min-width:0}.hero-photo-frame,.project-visual,.gallery-photo,.kitchen-photo-wrap,.studio-photo,.journal-art{background:#d8cbbb}.hero-photo img,.project-picture img,.gallery-picture img,.kitchen-photo img,.studio-picture img,.journal-picture img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--image-position,50% 50%)}
.hero-photo-frame{position:relative;min-height:650px;overflow:hidden;box-shadow:0 36px 80px rgba(24,45,39,.2);transform:perspective(1200px) rotateY(-2.5deg) rotateX(1deg);transform-origin:center;isolation:isolate}.hero-photo{position:absolute;inset:0}.hero-photo-wash{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(18,38,33,.62) 100%),linear-gradient(90deg,rgba(255,248,238,.08),transparent 44%)}.hero-photo-caption{position:absolute;left:28px;bottom:28px;color:#fff;display:grid;gap:3px;z-index:2}.hero-photo-caption span{font-family:var(--serif);font-size:1.6rem}.hero-photo-caption small{font-size:.66rem;text-transform:uppercase;letter-spacing:.14em}.hero-photo-chip{position:absolute;right:22px;top:22px;max-width:230px;padding:15px 17px;background:rgba(255,251,244,.92);backdrop-filter:blur(14px);display:grid;gap:4px;z-index:2}.hero-photo-chip b{font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}.hero-photo-chip span{font-family:var(--serif);font-size:1.05rem;line-height:1.2}.image-placeholder-note{position:absolute;right:18px;bottom:16px;color:rgba(255,255,255,.72);font-size:.54rem;text-transform:uppercase;letter-spacing:.11em;z-index:2}.hero-room:hover .hero-photo-frame{transform:perspective(1200px) rotateY(0) rotateX(0) translateY(-4px)}.hero-photo-frame{transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.project-visual{isolation:isolate}.project-picture{position:absolute;inset:0}.project-picture img{transition:transform .8s cubic-bezier(.2,.65,.2,1),filter .5s ease}.project-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(16,37,32,.45));z-index:1;pointer-events:none}.project-index,.project-photo-type{z-index:2}.project-photo-type{position:absolute;left:16px;bottom:15px;color:#fff;font-size:.62rem;text-transform:uppercase;letter-spacing:.15em}.project-card:hover .project-picture img{transform:scale(1.045);filter:saturate(1.04) contrast(1.02)}
.gallery-photo{position:relative;height:100%;min-height:360px;overflow:hidden;isolation:isolate}.gallery-picture{position:absolute;inset:0}.gallery-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(14,34,29,.65));z-index:1}.gallery-photo>span{position:absolute;left:22px;right:22px;bottom:20px;z-index:2;color:#fff;display:flex;justify-content:space-between;align-items:end;gap:20px}.gallery-photo>span b{font-family:var(--serif);font-size:1.35rem;font-weight:400}.gallery-photo>span small{font-size:.58rem;text-transform:uppercase;letter-spacing:.13em}.gallery-photo-1 img{object-position:55% 56%}.gallery-photo-2 img{object-position:50% 42%}
.kitchen-photo-wrap{position:relative;min-height:640px;overflow:hidden;box-shadow:0 30px 70px rgba(16,42,35,.22);isolation:isolate}.kitchen-photo{position:absolute;inset:0}.kitchen-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,28,25,.04),rgba(15,28,25,.5));z-index:1}.kitchen-photo-stat{position:absolute;z-index:2;background:rgba(255,250,241,.93);backdrop-filter:blur(12px);padding:16px 18px;display:grid;gap:4px;max-width:230px}.kitchen-photo-stat b{font-size:.68rem;text-transform:uppercase;letter-spacing:.11em}.kitchen-photo-stat span{font-family:var(--serif);font-size:1.05rem}.kitchen-photo-stat.stat-a{left:20px;bottom:20px}.kitchen-photo-stat.stat-b{right:20px;top:20px}
.studio-photo{isolation:isolate}.studio-picture{position:absolute;inset:0}.studio-photo-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(13,34,28,.78));z-index:1}.studio-photo span{z-index:2;color:#fff}.journal-art{position:relative;overflow:hidden}.journal-picture{position:absolute;inset:0}.journal-picture img{transition:transform .7s ease}.journal-card:hover .journal-picture img{transform:scale(1.04)}.journal-art:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(16,37,32,.22))}
.photo-usage-note{font-size:.66rem;color:#64756f}

@media(max-width:1050px){.hero-photo-frame{min-height:620px;transform:none}.kitchen-photo-wrap{min-height:560px}}
@media(max-width:720px){.hero-room{margin:8px 0 0}.hero-photo-frame{min-height:540px;box-shadow:0 22px 48px rgba(24,45,39,.16)}.hero-photo-chip{top:14px;right:14px;max-width:190px;padding:12px 13px}.hero-photo-caption{left:18px;bottom:19px}.hero-photo-caption span{font-size:1.35rem}.image-placeholder-note{display:none}.project-visual,.project-visual.large{aspect-ratio:4/3}.project-photo-type{left:13px;bottom:12px}.gallery-photo{min-height:310px;aspect-ratio:4/3}.gallery-photo>span{left:16px;right:16px;bottom:15px}.gallery-photo>span small{display:none}.kitchen-photo-wrap{min-height:520px}.kitchen-photo-stat{max-width:190px;padding:13px 14px}.kitchen-photo-stat.stat-a{left:14px;bottom:14px}.kitchen-photo-stat.stat-b{right:14px;top:14px}.studio-photo{height:470px}.journal-art{height:290px}}
@media(max-width:380px){.hero-photo-frame{min-height:470px}.hero-photo-chip{max-width:168px}.hero-photo-chip span{font-size:.94rem}.kitchen-photo-wrap{min-height:460px}.kitchen-photo-stat.stat-b{display:none}.studio-photo{height:420px}}
@media(prefers-reduced-motion:reduce){.hero-photo-frame,.project-picture img,.journal-picture img{transition:none!important;transform:none!important}}

/* AERA interactive palette theatre — photography, motion, and decision support */
.material-lab-v2{background:#102f29;color:#f4f1e9;min-height:100vh}.material-lab-v2:before{content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to bottom,transparent,black 16%,black 84%,transparent);pointer-events:none}.palette-ambient{position:absolute;border-radius:50%;filter:blur(95px);opacity:.34;pointer-events:none}.palette-ambient-a{width:520px;height:520px;left:-210px;top:5%;background:#9e674d;animation:paletteDrift 12s ease-in-out infinite}.palette-ambient-b{width:620px;height:620px;right:-250px;bottom:-12%;background:#54766b;animation:paletteDrift 15s ease-in-out infinite reverse}.material-grid-v2{min-width:0}.palette-copy{min-width:0}.palette-copy h2{font-family:var(--serif);font-size:clamp(3.2rem,5.5vw,6.25rem);font-weight:400;letter-spacing:-.045em;line-height:.94;margin:24px 0 28px;max-width:680px}.palette-intro{font-size:1.06rem;line-height:1.75;color:#c5d3ce;max-width:650px}.palette-how{margin:34px 0;display:grid;border-top:1px solid rgba(255,255,255,.14)}.palette-how>div{display:grid;grid-template-columns:44px 1fr;gap:14px;align-items:start;padding:15px 0;border-bottom:1px solid rgba(255,255,255,.12)}.palette-how b{color:#d2ab7d;font-family:var(--serif);font-size:1.05rem;font-weight:400}.palette-how span{display:grid;gap:2px}.palette-how strong{font-size:.77rem;text-transform:uppercase;letter-spacing:.08em}.palette-how small{color:#9fb1ab;font-size:.76rem;line-height:1.45}.palette-directions{grid-template-columns:repeat(2,minmax(0,1fr))}.palette-direction{color:#eef2ed;cursor:pointer;min-width:0}.palette-direction:after{content:'';position:absolute;inset:auto 0 0;height:3px;background:var(--direction-accent,#c89c6a);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}.palette-direction.active{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.36);box-shadow:0 20px 42px rgba(0,0,0,.16)}.palette-direction.active:after{transform:scaleX(1)}.palette-button-top{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}.palette-button-top>span:nth-child(2){display:grid;min-width:0}.palette-button-top b{font-family:var(--serif);font-size:1.08rem;font-weight:400;line-height:1.15}.palette-button-top small{color:#9fb1ab;font-size:.59rem;text-transform:uppercase;letter-spacing:.09em;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-button-top em{font-style:normal;font-size:.62rem;color:#91a39d;align-self:start}.palette-dot{width:15px;height:15px;border-radius:50%;background:var(--dot);box-shadow:0 0 0 5px color-mix(in srgb,var(--dot),transparent 75%)}.palette-mini-swatches{display:flex;margin-top:15px;gap:4px}.palette-mini-swatches i{height:6px;flex:1;background:var(--mini);border-radius:999px}.palette-decision{margin-top:25px;padding:19px 21px;border-left:2px solid #c39a69;background:rgba(0,0,0,.13);display:grid;gap:5px}.palette-decision>span{font-size:.59rem;letter-spacing:.13em;text-transform:uppercase;color:#b8c8c2}.palette-decision strong{font-family:var(--serif);font-size:1.55rem;font-weight:400}.palette-decision p{margin:3px 0 0;color:#b7c7c1;font-size:.87rem;line-height:1.58}.material-preview-v2{min-width:0}.palette-experience{--tilt-x:0deg;--tilt-y:0deg;background:#e4d8c8;color:#17352f;transform:perspective(1400px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .3s ease;box-shadow:0 48px 110px rgba(0,0,0,.38)}.palette-stage{position:relative;aspect-ratio:1/1;overflow:hidden;isolation:isolate;background:#c9bbab}.palette-base-image,.palette-treated-image,.palette-picture,.palette-original{position:absolute;inset:0}.palette-original img,.palette-picture img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.palette-base-image{z-index:1}.palette-treated-image{z-index:2;clip-path:inset(0 0 0 var(--reveal));will-change:clip-path}.palette-picture{opacity:0;transform:scale(1.025);transition:opacity .9s cubic-bezier(.2,.7,.2,1),transform 1.2s cubic-bezier(.2,.7,.2,1)}.palette-picture.active{opacity:1;transform:scale(1)}.palette-cinematic-wash{position:absolute;z-index:3;inset:0;background:linear-gradient(180deg,rgba(6,26,22,.04),transparent 45%,rgba(7,23,20,.46)),linear-gradient(90deg,rgba(255,244,222,.1),transparent 34%);pointer-events:none}.palette-sun-sweep{position:absolute;z-index:4;inset:-30% -70%;background:linear-gradient(112deg,transparent 38%,rgba(255,241,202,.16) 47%,rgba(255,255,255,.28) 50%,rgba(255,238,196,.1) 53%,transparent 62%);transform:translateX(-45%);animation:sunSweep 7.5s ease-in-out infinite;pointer-events:none}.palette-view-label{position:absolute;z-index:7;top:20px;padding:9px 12px;background:rgba(255,251,244,.88);backdrop-filter:blur(14px);font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.12em;box-shadow:0 7px 24px rgba(0,0,0,.12)}.palette-view-label.original{left:20px}.palette-view-label.selected{right:20px;background:rgba(16,47,41,.9);color:white}.palette-compare-line{position:absolute;z-index:8;top:0;bottom:0;left:var(--reveal);width:2px;background:rgba(255,255,255,.96);box-shadow:0 0 0 1px rgba(20,54,47,.22),0 0 24px rgba(0,0,0,.22);pointer-events:none;transition:left .08s linear}.palette-compare-line span{position:absolute;left:50%;top:50%;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;transform:translate(-50%,-50%) rotate(180deg);background:#fffaf1;color:#17352f;box-shadow:0 12px 32px rgba(0,0,0,.24)}.palette-compare-line svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5}.palette-hotspot{position:absolute;z-index:6;display:flex;align-items:center;gap:8px;color:white;filter:drop-shadow(0 4px 10px rgba(0,0,0,.45));pointer-events:none}.palette-hotspot i{position:relative;width:12px;height:12px;border-radius:50%;background:#fff}.palette-hotspot i:after{content:'';position:absolute;inset:-7px;border:1px solid rgba(255,255,255,.7);border-radius:50%;animation:hotspotPulse 2.4s ease-out infinite}.palette-hotspot span{display:grid;padding:8px 10px;background:rgba(13,39,33,.78);backdrop-filter:blur(10px);max-width:175px}.palette-hotspot small{font-size:.47rem;text-transform:uppercase;letter-spacing:.13em;opacity:.74}.palette-hotspot b{font-family:var(--serif);font-size:.86rem;font-weight:400;line-height:1.2}.hotspot-wall{right:11%;top:26%}.hotspot-joinery{left:10%;top:9%}.hotspot-textile{right:19%;bottom:23%}.portfolio-visual-note{position:absolute;z-index:6;left:19px;bottom:17px;color:rgba(255,255,255,.72);font-size:.48rem;text-transform:uppercase;letter-spacing:.1em}.palette-slider-control{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:16px 20px;background:#f4eee5;border-bottom:1px solid rgba(23,53,47,.13)}.palette-slider-control span{font-size:.58rem;font-weight:800;text-transform:uppercase;letter-spacing:.11em}.palette-slider-control input{width:100%;height:30px;margin:0;background:transparent;cursor:ew-resize;accent-color:#17352f}.palette-slider-control input::-webkit-slider-runnable-track{height:3px;background:linear-gradient(90deg,#b9a995,#17352f)}.palette-slider-control input::-webkit-slider-thumb{-webkit-appearance:none;width:24px;height:24px;margin-top:-10px;border:6px solid #fffaf1;border-radius:50%;background:#17352f;box-shadow:0 4px 13px rgba(0,0,0,.26)}.palette-slider-control input::-moz-range-track{height:3px;background:linear-gradient(90deg,#b9a995,#17352f)}.palette-slider-control input::-moz-range-thumb{width:14px;height:14px;border:6px solid #fffaf1;border-radius:50%;background:#17352f;box-shadow:0 4px 13px rgba(0,0,0,.26)}.palette-material-bar{display:grid;grid-template-columns:repeat(3,1fr);background:#fffaf1}.palette-material-bar>div{padding:17px 18px;border-right:1px solid rgba(23,53,47,.12);display:grid;gap:4px;min-width:0}.palette-material-bar>div:last-child{border-right:0}.palette-material-bar span{font-size:.54rem;text-transform:uppercase;letter-spacing:.11em;color:#6f7e78}.palette-material-bar strong{font-family:var(--serif);font-size:.86rem;font-weight:400;line-height:1.28}.palette-stage.is-changing .palette-sun-sweep{animation:sunSweepFast 1.1s ease-out}.palette-stage.is-changing .palette-hotspot{animation:annotationLift .75s ease}.palette-direction:focus-visible{outline:2px solid #fff;outline-offset:4px}
@keyframes paletteDrift{50%{transform:translate3d(35px,-25px,0) scale(1.08)}}@keyframes sunSweep{0%,20%{transform:translateX(-48%)}70%,100%{transform:translateX(48%)}}@keyframes sunSweepFast{from{transform:translateX(-48%)}to{transform:translateX(48%)}}@keyframes hotspotPulse{0%{transform:scale(.65);opacity:1}80%,100%{transform:scale(1.65);opacity:0}}@keyframes annotationLift{0%{opacity:.35;transform:translateY(8px)}100%{opacity:1;transform:none}}
@media(max-width:1050px){.material-grid-v2{grid-template-columns:1fr}.material-preview-v2{position:static!important}.palette-copy{max-width:820px}.palette-experience{transform:none}.palette-stage{aspect-ratio:1.17}.palette-directions{grid-template-columns:repeat(4,minmax(210px,1fr));overflow-x:auto;padding:3px 2px 16px;scroll-snap-type:x proximity}.palette-direction{scroll-snap-align:start}}
@media(max-width:720px){.material-lab-v2{padding-top:88px}.material-lab-v2:before{background-size:48px 48px}.palette-copy h2{font-size:clamp(3.05rem,14vw,4.45rem);margin:20px 0 22px}.palette-intro{font-size:1rem}.palette-how{margin:27px 0}.palette-directions{display:flex;margin-right:-18px;padding-right:18px}.palette-direction{min-width:250px}.material-preview-v2{margin:4px -10px 0}.palette-experience{border-radius:22px}.palette-stage{aspect-ratio:4/5}.palette-original img,.palette-picture img{object-position:50% center}.palette-view-label{top:12px;padding:8px 9px;font-size:.49rem}.palette-view-label.original{left:12px}.palette-view-label.selected{right:12px;max-width:148px;text-align:right}.palette-hotspot{display:none}.palette-compare-line span{width:46px;height:46px}.portfolio-visual-note{left:12px;bottom:11px;font-size:.42rem}.palette-slider-control{padding:13px 14px;gap:10px}.palette-material-bar{grid-template-columns:1fr}.palette-material-bar>div{grid-template-columns:72px 1fr;align-items:center;padding:12px 15px;border-right:0;border-bottom:1px solid rgba(23,53,47,.1)}.palette-material-bar>div:last-child{border-bottom:0}.palette-material-bar strong{font-size:.9rem}.palette-ambient{opacity:.22}}
@media(max-width:380px){.palette-copy h2{font-size:2.85rem}.palette-direction{min-width:232px}.palette-stage{aspect-ratio:3/4}.palette-view-label.selected{max-width:126px}.palette-slider-control span{font-size:.51rem}}
@media(prefers-reduced-motion:reduce){.palette-ambient,.palette-sun-sweep,.palette-hotspot i:after{animation:none!important}.palette-picture,.palette-experience{transition:none!important}}


/* Precompiled Tailwind v4 utility layer for the material-lab component. */
/*! tailwindcss v4.1.10 | MIT License | https://tailwindcss.com */
@layer properties;
:root, :host {
  --tw-color-white: #fff;
  --tw-spacing: 0.25rem;
  --tw-default-transition-duration: 150ms;
  --tw-default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
.tw\:relative {
  position: relative;
}
.tw\:isolate {
  isolation: isolate;
}
.tw\:z-10 {
  z-index: 10;
}
.tw\:grid {
  display: grid;
}
.tw\:gap-3 {
  gap: calc(var(--tw-spacing) * 3);
}
.tw\:gap-10 {
  gap: calc(var(--tw-spacing) * 10);
}
.tw\:overflow-hidden {
  overflow: hidden;
}
.tw\:rounded-\[1\.35rem\] {
  border-radius: 1.35rem;
}
.tw\:rounded-\[2rem\] {
  border-radius: 2rem;
}
.tw\:border {
  border-style: var(--tw-border-style);
  border-width: 1px;
}
.tw\:border-white\/15 {
  border-color: var(--tw-color-white);
  @supports (color: color-mix(in lab, red, red)) {
    border-color: color-mix(in oklab, var(--tw-color-white) 15%, transparent);
  }
}
.tw\:bg-white\/\[0\.1\] {
  background-color: var(--tw-color-white);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--tw-color-white) 10%, transparent);
  }
}
.tw\:bg-white\/\[0\.06\] {
  background-color: var(--tw-color-white);
  @supports (color: color-mix(in lab, red, red)) {
    background-color: color-mix(in oklab, var(--tw-color-white) 6%, transparent);
  }
}
.tw\:p-4 {
  padding: calc(var(--tw-spacing) * 4);
}
.tw\:text-left {
  text-align: left;
}
.tw\:shadow-2xl {
  --tw-shadow: 0 25px 50px -12px var(--tw-shadow-color, rgb(0 0 0 / 0.25));
  box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.tw\:transition {
  transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
  transition-timing-function: var(--tw-ease, var(--tw-default-transition-timing-function));
  transition-duration: var(--tw-duration, var(--tw-default-transition-duration));
}
.tw\:duration-500 {
  --tw-duration: 500ms;
  transition-duration: 500ms;
}
.tw\:hover\:-translate-y-1 {
  &:hover {
    @media (hover: hover) {
      --tw-translate-y: calc(var(--tw-spacing) * -1);
      translate: var(--tw-translate-x) var(--tw-translate-y);
    }
  }
}
.tw\:hover\:bg-white\/\[0\.1\] {
  &:hover {
    @media (hover: hover) {
      background-color: var(--tw-color-white);
      @supports (color: color-mix(in lab, red, red)) {
        background-color: color-mix(in oklab, var(--tw-color-white) 10%, transparent);
      }
    }
  }
}
.tw\:lg\:sticky {
  @media (width >= 64rem) {
    position: sticky;
  }
}
.tw\:lg\:top-28 {
  @media (width >= 64rem) {
    top: calc(var(--tw-spacing) * 28);
  }
}
.tw\:lg\:grid-cols-\[0\.72fr_1\.28fr\] {
  @media (width >= 64rem) {
    grid-template-columns: 0.72fr 1.28fr;
  }
}
.tw\:lg\:items-center {
  @media (width >= 64rem) {
    align-items: center;
  }
}
@property --tw-border-style {
  syntax: "*";
  inherits: false;
  initial-value: solid;
}
@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}
@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}
@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}
@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0px;
}
@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}
@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}
@property --tw-duration {
  syntax: "*";
  inherits: false;
}
@property --tw-translate-x {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-y {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@property --tw-translate-z {
  syntax: "*";
  inherits: false;
  initial-value: 0;
}
@layer properties {
  @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
    *, ::before, ::after, ::backdrop {
      --tw-border-style: solid;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-duration: initial;
      --tw-translate-x: 0;
      --tw-translate-y: 0;
      --tw-translate-z: 0;
    }
  }
}


/* Palette controls: final responsive layout guardrails. These rules are placed
   after the precompiled Tailwind layer so tablet breakpoints cannot re-enable
   the two-column lab or stretch cards across one another. */
.palette-directions{
  width:100%;
  min-width:0;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  overflow:visible;
  isolation:isolate;
}
.palette-direction{
  width:100%;
  min-width:0;
  max-width:100%;
  margin:0;
  box-sizing:border-box;
}
@media (max-width:1120px){
  .material-grid-v2{grid-template-columns:minmax(0,1fr)!important;}
  .material-preview-v2{position:static!important;top:auto!important;}
  .palette-copy{max-width:none;}
  .palette-directions{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
    overflow:visible!important;
    padding:0!important;
    margin-right:0!important;
  }
  .palette-direction{
    width:100%!important;
    min-width:0!important;
    flex:none!important;
  }
}
@media (max-width:720px){
  .palette-directions{
    display:flex!important;
    gap:12px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:4px 18px 16px 1px!important;
    margin-right:-18px!important;
    scroll-snap-type:x mandatory;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
  }
  .palette-directions::-webkit-scrollbar{display:none;}
  .palette-direction{
    flex:0 0 min(82vw,290px)!important;
    width:auto!important;
    min-width:0!important;
    max-width:min(82vw,290px)!important;
    scroll-snap-align:start;
  }
}
