/* MIBLU shared tokens and components. Original logo artwork remains untouched. */
:root{--graphite:#121416;--black:#0c0e10;--deep-blue:#14212a;--titanium:#bfc2c5;--glass:#e5e7e7;--white:#fafaf7;--ruiu-red:#7A1F1F;--bg:var(--graphite);--paper:var(--white);--muted:var(--titanium);--red:var(--ruiu-red);--line:#454c51;--radius:5px;--container:1720px;--s1:8px;--s2:16px;--s3:24px;--s4:40px;--s5:64px;--s6:104px;--type-micro:12px;--type-body:18px;--type-heading:clamp(40px,5vw,88px);--ratio-portrait:4/5;--ratio-landscape:5/4;--motion:220ms}
body{background:var(--graphite);color:var(--white)}.wrap{max-width:var(--container)}em{color:var(--titanium)}.masthead{height:166px}.masthead .brand{display:flex;flex-direction:column;align-items:center;width:152px;gap:12px}.masthead .brand img{width:108px}.brand-claim{font-size:9px;letter-spacing:.09em;line-height:1.4;white-space:nowrap;color:var(--white)}.brand-signature{font-size:var(--type-micro);letter-spacing:.19em;text-transform:uppercase;line-height:1.9;color:var(--titanium)}.chapter{font-size:var(--type-micro);letter-spacing:.16em}.chapter>span{color:var(--titanium);border-left:2px solid var(--ruiu-red);padding-left:10px}.red-dot{color:var(--ruiu-red)}.red-stroke,.hero .eyebrow>span,.desktop-nav a:after{background:var(--ruiu-red)}
.primary,.request-tile{position:relative;display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:58px;max-width:100%;padding:18px 26px;border:1px solid #bfc2c570;border-radius:var(--radius);background:var(--ruiu-red);color:var(--white);font-size:16px;font-weight:600;line-height:1.4;isolation:isolate;overflow:hidden;transition:border-color var(--motion),box-shadow var(--motion)}.primary:before,.request-tile:before{content:'';position:absolute;left:18px;right:calc(100% - 18px);bottom:7px;height:1px;background:var(--glass);transition:right var(--motion);z-index:-1}.primary:hover,.request-tile:hover{background:var(--ruiu-red);border-color:var(--glass);box-shadow:inset 0 0 0 1px #ffffff12}.primary:hover:before,.request-tile:hover:before{right:18px}.primary span,.request-tile span{display:inline-flex;align-items:center;justify-content:center;border-left:1px solid #ffffff55;padding-left:18px;font-size:23px;font-weight:400;transition:transform var(--motion)}.primary:hover span,.request-tile:hover span{transform:translate(2px,-2px)}.request-tile{margin-top:32px;min-height:64px;max-width:360px}.masthead .primary{border-radius:var(--radius);padding:16px 20px;min-height:54px}.text-action,.line-link{border-bottom:1px solid var(--titanium);padding-block:16px;min-height:54px;gap:28px;transition:border-color var(--motion)}.text-action:hover,.line-link:hover{border-color:var(--ruiu-red)}a:focus-visible,button:focus-visible{outline:2px solid var(--glass);outline-offset:5px}.solution-switch a{background:var(--deep-blue);border-color:var(--line);border-radius:var(--radius)}.solution-switch a:hover{background:var(--deep-blue);border-color:var(--titanium)}
.hero{height:calc(100svh - 166px)}.solutions-scene{grid-template-columns:1.05fr 1.1fr .85fr;gap:40px 5%}.shower-inset{grid-column:2;grid-row:2;max-width:430px;margin-top:0}.shower-copy{grid-row:2}.shower-sequence{grid-column:1/3;grid-row:3;display:grid;grid-template-columns:.75fr 1.25fr;gap:9%;align-items:start;margin-top:30px}.shower-detail{margin-top:60px}.shower-detail img{aspect-ratio:1;object-fit:cover;object-position:64% 12%;clip-path:inset(0)}.shower-detail{overflow:hidden}.shower-detail img{height:auto;aspect-ratio:1;object-fit:cover}.shower-context{max-width:400px;justify-self:end}.shower-context img{aspect-ratio:var(--ratio-portrait);object-fit:cover}.solution-switch{grid-row:1/4;align-self:start}.precision-scene{grid-template-columns:1fr 1.15fr;gap:8%}.precision-scene figure{max-width:none;padding-top:20px;width:100%}.precision-scene figure img{aspect-ratio:1374/1145;object-fit:contain}.project-pair{grid-template-columns:1.35fr .85fr;gap:55px 9%}.project-a{width:100%}.project-a figure img{aspect-ratio:4/5;object-fit:cover;object-position:center}.project-b{width:90%;justify-self:end;margin-top:160px}.project-signature{margin-top:24px;border-left:2px solid var(--ruiu-red);padding-left:16px}.project-intro .text-action{align-self:end}.trust-scene{background:radial-gradient(ellipse at 15% 50%,var(--deep-blue),transparent 68%)}.footer-bottom .office-address{line-height:1.8}.contact-pair a{max-width:100%}.process li>span{color:var(--titanium)}
@media(max-width:1100px){.masthead{height:145px;gap:20px}.masthead .brand{width:140px}.masthead .brand img{width:92px}.desktop-nav{gap:16px}.desktop-nav a{font-size:13px}.masthead .primary{font-size:13px;gap:16px}.solutions-scene{gap:30px 4%}}
@media(max-width:700px){.masthead{height:132px;gap:18px}.masthead .brand{width:130px;gap:8px}.masthead .brand img{width:76px}.brand-claim{font-size:8px;letter-spacing:.07em}.hero{height:calc(100svh - 132px)}.brand-signature{font-size:10px;letter-spacing:.13em}.chapter{font-size:10px}.solutions-scene{grid-template-columns:1fr;gap:30px}.shower-heading,.shower-copy,.shower-inset,.shower-sequence,.solution-switch{grid-column:1;grid-row:auto}.shower-inset{width:84%;max-width:400px;justify-self:end;padding:10px}.shower-sequence{grid-template-columns:1fr 1.15fr;gap:20px;margin-top:0}.shower-detail{margin-top:45px}.solution-switch{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:12px}.solution-switch a:first-child,.solution-switch a:last-child{margin:0}.solution-switch a{min-height:184px}.solution-switch span{font-size:23px}.precision-scene{grid-template-columns:1fr}.precision-scene figure{width:100%;padding-top:0}.project-pair{grid-template-columns:1fr;gap:36px}.project-intro,.project-a,.project-b{grid-column:1}.project-a{width:100%}.project-b{width:76%;margin-top:0}.project-pair h3{font-size:23px}.primary,.request-tile{gap:24px;padding:17px 22px}.masthead .header-cta{display:none}.project-signature{font-size:10px}.hero-meta>p:not(.image-credit){display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
.detail-window{aspect-ratio:1;overflow:hidden}.detail-window img{width:100%;height:100%;object-fit:cover;transform:scale(2.5);transform-origin:61% 19%}
/* Editorial V2 — material typography, consistent controls, curated image roles. */
:root{--deep-blue:#1b1c1d;--titanium:#c4c8cb;--line:#53585c}
h1{color:#e8eaeb;background:linear-gradient(112deg,#bbc1c6 4%,#fafafa 35%,#d3d7da 57%,#afb7bd 76%,#eef0f1 97%);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}h1 em,h1 .you,h1 .red-dot{color:inherit;-webkit-text-fill-color:inherit}h2,h2 em{color:#e0e3e5}.hero h1 .you{font-style:normal}.trust-scene{background:none}
.primary,.request-tile,.primary:hover,.request-tile:hover{background:#181a1c;border-color:#8c9399;color:#f5f5f3;box-shadow:none}.primary:before,.request-tile:before{background:var(--ruiu-red);height:2px;right:18px;transform:scaleX(.16);transform-origin:left;transition:transform var(--motion)}.primary:hover:before,.request-tile:hover:before{transform:scaleX(1)}.primary:hover,.request-tile:hover{border-color:#e0e3e5}.primary:hover span,.request-tile:hover span{transform:translateX(3px)}.text-action,.line-link{color:var(--white)}.text-action span,.line-link span{display:inline-block;transition:transform var(--motion)}.text-action:hover span,.line-link:hover span{transform:translateX(3px)}
.hero-photo img{object-position:54% 49%}.hero-photo{overflow:hidden}.hero-brand{display:none}.solutions-scene{grid-template-columns:1fr 1fr;column-gap:10%;row-gap:44px}.shower-heading{grid-column:1;grid-row:1}.shower-inset{grid-column:2;grid-row:1/3;width:100%;max-width:510px;justify-self:end;align-self:start}.shower-inset img{aspect-ratio:4/5;object-fit:cover;object-position:center 38%}.shower-copy{grid-column:1;grid-row:2;max-width:440px}.shower-teasers{grid-column:1/3;display:grid;grid-template-columns:1fr 1fr;gap:8%;max-width:850px;width:82%;margin:15px 0 0 8%}.visual-teaser{display:block;border-bottom:1px solid var(--titanium);padding-bottom:18px;min-width:0}.visual-teaser:nth-child(2){margin-top:70px}.teaser-image{overflow:hidden;background:#252729;aspect-ratio:4/3}.teaser-image img{width:100%;height:100%;object-fit:cover;object-position:center 45%;transition:transform 350ms}.walkin-teaser .teaser-image img{object-position:70% 38%;transform:scale(1.3)}.visual-teaser small{display:block;color:var(--titanium);font-size:11px;letter-spacing:.14em;margin:20px 0 9px}.visual-teaser>span{display:flex;justify-content:space-between;gap:12px;font-size:clamp(18px,1.8vw,25px);line-height:1.35}.visual-teaser b{font-weight:400;transition:transform var(--motion)}.visual-teaser:hover{border-color:var(--ruiu-red)}.visual-teaser:hover b{transform:translateX(3px)}.visual-teaser:not(.walkin-teaser):hover img{transform:scale(1.025)}.walkin-teaser:hover img{transform:scale(1.325)}.project-a,.project-b{border-bottom:1px solid var(--line);padding-bottom:22px}.project-a:hover,.project-b:hover{border-color:var(--ruiu-red)}.project-a>div:after,.project-b>div:after{content:'↗';display:block;font-size:28px;margin-top:15px;color:var(--titanium)}
.reference-index{display:grid;grid-template-columns:1fr 1fr;column-gap:7%;margin-bottom:100px}.reference-index a{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:22px 0;font-size:17px;line-height:1.5}.reference-index span{font-size:11px;color:var(--titanium)}.reference-index b{margin-left:auto;font-weight:400}.reference-index a:hover{border-color:var(--ruiu-red)}.reference-library article{padding:72px 0;border-top:1px solid var(--line);gap:8%;align-items:start}.reference-library article>figure{padding:14px;background:#dadbd7}.reference-library article>figure img{height:auto;aspect-ratio:auto;object-fit:contain}.reference-library article>figure figcaption{color:#343638}.reference-library .reference-name{font-size:clamp(32px,3.5vw,56px);line-height:1.12;margin:18px 0 30px}.reference-library h3{font-size:23px;line-height:1.4;font-weight:400;margin-bottom:24px;color:var(--titanium)}.reference-views{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:40px;width:85%;margin-left:auto}.reference-views figure:nth-child(2){margin-top:70px}.reference-views img{width:100%;height:auto}.canopy-study{overflow:hidden;aspect-ratio:5/4;background:#252729}.canopy-study img{width:100%;height:100%;object-fit:cover;object-position:50% 20%;transform:scale(1.15);transform-origin:center 20%}.story-grid .photo-mat img[data-asset-id="MIRROR_TOWEL_RAIL"]{height:auto;aspect-ratio:auto;object-fit:contain}
@media(max-width:700px){.solutions-scene{grid-template-columns:1fr;gap:30px}.shower-heading,.shower-copy,.shower-inset,.shower-teasers{grid-column:1;grid-row:auto}.shower-inset{width:86%;padding:10px}.shower-copy{max-width:none}.shower-teasers{width:100%;margin:10px 0 0;gap:20px}.visual-teaser:nth-child(2){margin-top:45px}.teaser-image{aspect-ratio:3/4}.visual-teaser>span{font-size:18px}.visual-teaser small{font-size:9px;letter-spacing:.07em}.reference-index{grid-template-columns:1fr;margin-bottom:45px}.reference-index a{font-size:16px;min-height:60px}.reference-library article{padding:36px 0;gap:24px}.reference-views{width:100%;gap:16px;margin-top:16px}.reference-views figure:nth-child(2){margin-top:35px}.reference-views figcaption{font-size:10px}.hero-photo img{object-position:53% 50%}.canopy-study{aspect-ratio:4/3}}
@media(forced-colors:active){h1{-webkit-text-fill-color:CanvasText;background:none;color:CanvasText}.primary,.request-tile{border:1px solid ButtonText}}
@media(prefers-reduced-motion:reduce){.visual-teaser img,.visual-teaser b,.primary span,.request-tile span,.text-action span{transition:none}}
@media(max-width:700px){.opening-scene .vertical-note{display:none}}

/* Feedback: overlap-free opening at intermediate widths, full shower geometry. */
.opening-foot{grid-column:1/-1;margin-top:40px;padding:0;max-width:550px}.opening-foot p{font-size:18px;line-height:1.6;color:var(--titanium)}
.parsol-feature .poster{aspect-ratio:auto}.parsol-feature .poster img{position:static;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;transform:none}
.walkin-teaser .teaser-image{aspect-ratio:3/4}.walkin-teaser .teaser-image img,.walkin-teaser:hover .teaser-image img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none}
@media(min-width:701px) and (max-width:1000px){.opening-title h2{font-size:clamp(54px,7.2vw,72px);white-space:normal}.opening-title p{margin-left:0}.mirror-anchor{width:100%}.opening-scene .vertical-note{display:none}}
@media(max-width:700px){.opening-foot{margin-top:0;max-width:100%;width:100%}.opening-foot p{font-size:17px}}
/* V2.1: one shared teaser rule; avoid sticky hover accents on touch. */
.visual-teaser,.visual-teaser:hover{border-bottom:1px solid var(--titanium)}
.visual-teaser:focus-visible,.visual-teaser:active{border-bottom-color:var(--ruiu-red);outline:2px solid var(--titanium);outline-offset:5px}
@media(hover:hover) and (pointer:fine){.visual-teaser:hover{border-bottom-color:var(--ruiu-red)}}
@media(hover:none){.visual-teaser:hover b{transform:none}.visual-teaser:not(.walkin-teaser):hover img{transform:none}}

/* Final: existing editorial rows without forced duplicate imagery. */
.feature-row:not(:has(figure)){grid-template-columns:1fr}.feature-row:not(:has(figure))>div{max-width:900px}.feature-row:not(:has(figure)) p{max-width:760px}
.reference-library article:not(:has(figure)){grid-template-columns:1fr}.reference-library article:not(:has(figure))>div{max-width:950px}.reference-library article p{max-width:760px}
.glass-opening:not(:has(figure)){grid-template-columns:1fr}.glass-opening:not(:has(figure))>div{max-width:1000px}.mirror-story:not(:has(figure)),.railing-story:not(:has(figure)){grid-template-columns:1fr}.room-solutions:not(:has(figure)){grid-template-columns:1fr 1fr}
.primary:before,.request-tile:before{transform:scaleX(0)}.primary:active:before,.primary:focus-visible:before,.request-tile:active:before,.request-tile:focus-visible:before{transform:scaleX(1)}
@media(max-width:700px){.room-solutions:not(:has(figure)){grid-template-columns:1fr}.footer-bottom .office-address{max-width:100%}}

.room-solutions img[data-asset-id="KITCHEN_DETAIL"]{aspect-ratio:auto 1400/1867}

/* Final high-end pass: established components, editorial hierarchy. */
.final-position{display:block;padding-bottom:70px}.final-position .opening-title{max-width:1000px}.final-position .opening-title h2{white-space:normal}.final-position .opening-title p{margin:40px 0 0;max-width:600px}.solution-editorial{padding-block:55px 100px}.solution-columns{display:grid;grid-template-columns:1fr 1fr;gap:0 8%;margin-top:35px}.solution-entry{display:grid;grid-template-columns:28px 1fr 24px;gap:15px;padding:32px 0;border-top:1px solid var(--line);align-items:start}.solution-entry h3{font-size:clamp(22px,2vw,32px);line-height:1.25;font-weight:400;margin:0 0 16px}.solution-entry p{font-size:17px;line-height:1.7;color:var(--titanium);margin:0}.solution-entry>span:last-child{font-size:25px;transition:transform .2s}.solution-entry:hover,.solution-entry:focus-visible{border-color:var(--ruiu-red)}.solution-entry:hover>span:last-child{transform:translate(2px,-2px)}
.final-selection .project-intro{grid-template-columns:1fr auto;align-items:end}.final-selection .project-intro p{max-width:650px;font-size:18px;line-height:1.6;margin-top:24px;color:var(--titanium)}.final-selection h2{font-size:clamp(38px,5vw,76px);line-height:1.08}.final-selection .project-a figure.canopy-final img{aspect-ratio:1.15;object-fit:cover;object-position:center 35%}.final-selection .project-b figure img{aspect-ratio:auto;height:auto;object-fit:contain}.final-selection h3{font-size:clamp(24px,2.5vw,38px);line-height:1.2}.final-selection .project-b{margin-top:140px}.owner-line{margin-top:32px;font-size:17px;color:var(--titanium)}.story-editorial{display:block;max-width:1050px}.story-editorial>div{max-width:800px}.story-editorial p{font-size:clamp(20px,2vw,27px);line-height:1.65}.founder-asset .owner-signature{width:219px;height:139px;object-fit:contain;max-width:100%}.founder-asset{background:transparent}.mirror-story>figure img{width:100%;height:auto;object-fit:contain}.feature-row>figure img{height:auto;aspect-ratio:auto;object-fit:contain}.before-after:not(:has(figure)){display:block;max-width:1100px}.before-after:not(:has(figure))>div{max-width:800px}.reference-name,.solution-entry h3{overflow-wrap:break-word} .room-solutions{gap:6%}.room-solutions h2{font-size:clamp(30px,3.2vw,54px)}
@media(max-width:700px){.final-position{padding-bottom:35px}.final-position .opening-title h2{font-size:clamp(40px,10.5vw,70px)}.solution-columns{grid-template-columns:1fr}.solution-editorial{padding-block:25px 65px}.solution-entry{gap:10px;padding:25px 0}.solution-entry p{font-size:16px}.final-selection .project-intro{display:block}.final-selection .project-intro .text-action{margin-top:24px}.final-selection .project-b{margin-top:0;width:88%}.final-selection .project-a figure.canopy-final img{aspect-ratio:1}.story-editorial p{font-size:20px}.room-solutions{gap:45px}.feature-row>figure{max-width:100%;width:100%}.owner-signature{margin:auto}.reference-library article>div{min-width:0}}
/* Separate adjacent actions so each touch target remains clear. */
.feature-row .text-action + .text-action{display:flex;width:fit-content;margin-top:18px}

/* Structural correction: offerings and executed projects are separate editorial layers. */
.glass-world{display:grid;grid-template-columns:.85fr 1.15fr;gap:10%;padding-block:80px 110px}.glass-world h2{font-size:clamp(40px,5vw,76px);line-height:1.1;margin-bottom:30px}.glass-world-intro>p:not(.chapter){max-width:380px;color:var(--titanium)}.glass-world-list{border-top:1px solid var(--line)}.glass-service{position:relative;display:block;padding:27px 35px 27px 0;border-bottom:1px solid var(--line)}.glass-service h3{font-size:26px;font-weight:400;line-height:1.3;margin:0 0 12px}.glass-service p{font-size:17px;line-height:1.65;color:var(--titanium);max-width:600px}.glass-service>span{position:absolute;right:0;top:27px;font-size:24px}.glass-service:hover,.glass-service:focus-visible{border-color:var(--ruiu-red)}.shower-service-links{margin-top:25px}.shower-service-links .text-action{display:flex;width:fit-content;max-width:100%;font-size:17px;line-height:1.5}.breadcrumb{display:flex;flex-wrap:wrap;gap:12px;padding-top:35px;color:var(--titanium);font-size:15px;line-height:1.5}.breadcrumb a{border-bottom:1px solid var(--line);padding:10px 0}.breadcrumb>span{padding:10px 0}.breadcrumb a:hover{border-color:var(--ruiu-red)}.glass-index{flex-wrap:wrap;gap:15px 35px}.glass-index a{white-space:normal;line-height:1.45;padding-block:15px}.glass-service-section h3{font-size:23px;line-height:1.5;font-weight:400;margin-bottom:24px}.glass-service-section .text-action{display:flex;width:fit-content}.final-selection .project-b figure img{aspect-ratio:auto;object-fit:contain}.owner-work{padding-block:30px 75px;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.owner-work figure{max-width:430px}.owner-work img{width:100%;height:auto}.owner-work h2{font-size:clamp(36px,4vw,64px);margin-bottom:25px}
@media(max-width:700px){.glass-world{grid-template-columns:1fr;gap:35px;padding-block:35px 70px}.glass-world h2{font-size:44px}.glass-service h3{font-size:24px}.glass-service p{font-size:17px}.breadcrumb{font-size:14px;gap:8px;padding-top:20px}.glass-index{grid-template-columns:1fr}.owner-work{grid-template-columns:1fr;gap:30px}.owner-work figure{max-width:88%;justify-self:end}.shower-service-links .text-action{font-size:16px}}

.owner-photo{max-width:440px}.owner-photo img{width:100%;height:auto}.founder-lock .owner-signature{width:165px;height:auto;margin:28px 0;display:block}.owner-photo figcaption{color:var(--titanium);font-size:14px;margin-top:14px}

/* Final approved corrections: complete canopy and natural owner-photo presentation. */
.final-selection .project-a figure.canopy-final img{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center}
.walkin-editorial{display:block}.walkin-editorial>div{max-width:740px}
.owner-photo img{filter:contrast(1.065) saturate(1.06) brightness(1.02)}
