:root{--ink:var(--brand-plum);--paper:var(--brand-paper);--bronze:var(--brand-primary);--muted:var(--brand-muted);--line:color-mix(in srgb, var(--brand-paper) 20%, transparent);--gutter:5vw;color-scheme:dark;font-family:Manrope,Arial,sans-serif;font-size:16px;background:var(--ink);color:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--bronze);outline-offset:6px}::selection{background:var(--brand-primary);color:var(--ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}h2{font-size:clamp(3.4rem,5.7vw,7rem);line-height:.95;letter-spacing:-.045em}em{font-weight:400;color:var(--bronze)}img{display:block;width:100%;object-fit:cover}section{position:relative}button,a{touch-action:manipulation}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.17em;line-height:1.5;margin-bottom:2.1rem}.body-copy{font-size:1rem;line-height:1.85;max-width:26rem;color:var(--brand-muted)}.small-note{font-size:.875rem;line-height:1.8;color:var(--muted);margin-top:1.6rem}.pin{position:relative;padding:7rem var(--gutter);min-height:100svh}.skip-link{position:fixed;z-index:100;top:10px;left:10px;background:var(--paper);color:var(--ink);padding:15px;transform:translateY(-150%)}.skip-link:focus{transform:none}.site-header{position:fixed;top:0;left:0;width:100%;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:22px var(--gutter);gap:2rem;color:var(--paper);background:linear-gradient(color-mix(in srgb, var(--brand-plum) 65.882%, transparent),transparent);transition:color .3s,background .3s}.site-header.light{color:var(--ink);background:linear-gradient(color-mix(in srgb, var(--brand-paper) 96.078%, transparent),color-mix(in srgb, var(--brand-paper) 0%, transparent))}.wordmark{display:flex;gap:13px;align-items:center;font-size:.75rem;line-height:1.3;letter-spacing:.02em}.monogram{font:500 3rem/.8 'Cormorant Garamond',serif;letter-spacing:-.09em}.site-header nav{display:flex;gap:2.7rem;align-items:center;margin-left:auto;font-size:.875rem}.site-header nav a{position:relative;padding:10px 0}.site-header nav a:after{content:'';position:absolute;bottom:3px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.site-header nav a:hover:after{transform:scaleX(1)}.nav-contact span{padding-left:22px}.motion-toggle{display:flex;gap:9px;font-size:.75rem;align-items:center;border-left:var(--brand-border-width) solid currentColor;padding:8px 0 8px 25px;opacity:.8}.motion-toggle span{font-size:.75rem}.reading-progress{position:fixed;top:0;left:0;width:100%;height:2px;z-index:25}.reading-progress i{display:block;height:100%;background:var(--bronze);transform:scaleX(0);transform-origin:left}.film{display:none;position:fixed;inset:0;pointer-events:none;z-index:0}.film-frame{position:absolute;inset:0;overflow:hidden;background:var(--ink);will-change:transform,width,height}.film-shot,#journey-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;will-change:transform,opacity}.film-shot.is-visible{opacity:1}[data-shot=city]{object-position:55% center}[data-shot=house]{object-position:center 50%}[data-shot=spoon]{object-position:center}#journey-film{visibility:hidden}.film.video-ready #journey-film{visibility:visible;opacity:1}.film.video-ready .film-shot{visibility:hidden}.film-shade{position:absolute;inset:0;background:var(--brand-plum);opacity:.42}.film-border{position:absolute;inset:0;border:var(--brand-border-width) solid color-mix(in srgb, var(--brand-paper) 8.235%, transparent)}.hero{background:linear-gradient(90deg,color-mix(in srgb, var(--brand-plum) 50.196%, transparent),color-mix(in srgb, var(--brand-plum) 6.275%, transparent)),url('assets/01_Home_Hero/home-v13.webp') center/cover}.hero-pin{display:flex;flex-direction:column;justify-content:center;padding-top:9rem;padding-bottom:8rem}.hero-kicker{margin-bottom:3rem}h1{font-size:clamp(5rem,12vw,12.5rem);line-height:.82;letter-spacing:-.055em}h1 span{display:block}h1 span+span{margin-left:13vw;margin-top:12px}h1 em{color:var(--brand-primary)}.hero-note{display:flex;gap:25px;align-items:center;align-self:flex-end;margin:3rem 5vw 0 0;font-size:1rem;line-height:1.6}.fine-rule{display:block;width:65px;height:1px;background:var(--bronze)}.hero-bottom{position:absolute;bottom:2.3rem;left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;align-items:flex-end;font-size:.75rem;letter-spacing:.1em}.scroll-cue{display:flex;align-items:center;gap:18px;line-height:1.5}.scroll-stem{height:50px;width:1px;background:color-mix(in srgb, var(--brand-paper) 31.373%, transparent);position:relative;overflow:hidden}.scroll-stem:after{position:absolute;content:'';background:var(--paper);width:1px;height:25px;top:0;animation:stem 2.4s infinite}.hero-location{text-align:right;line-height:1.8}.hero-location span{letter-spacing:0;color:var(--brand-muted)}@keyframes stem{to{transform:translateY(65px)}}.vision{background:var(--ink)}.vision-pin{display:grid;grid-template-columns:1fr 1.6fr;gap:6vw;align-items:center}.vision-copy h2{margin-bottom:2rem}.diagram-composition{width:100%;min-width:0}.diagram-heading{display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.08em;padding-bottom:1.5rem;border-bottom:var(--brand-border-width) solid var(--line);color:var(--bronze)}.influence-diagram{width:100%;height:auto;display:block;margin-top:2.5rem;overflow:visible}.diagram-guides{stroke:color-mix(in srgb, var(--brand-paper) 12.549%, transparent);stroke-width:1;fill:none}.diagram-guides path:first-child{stroke-dasharray:3 7}.curve-base{stroke:var(--brand-primary);stroke-width:1.7;opacity:.48}.curve-lit{stroke:var(--paper);stroke-width:2.4}.curve-lit path{transition:opacity .35s}.diagram-area{fill:url(#field-fill)}.diagram-points{fill:var(--bronze)}.diagram-scan{stroke:color-mix(in srgb, var(--brand-paper) 33.333%, transparent);stroke-width:1}.diagram-cursor{fill:var(--paper);stroke:var(--ink);stroke-width:4}.diagram-labels{display:flex;justify-content:space-between;margin:0 2% 0 1%}.diagram-labels button{font-family:'Cormorant Garamond',serif;font-size:clamp(1.2rem,1.9vw,1.8rem);padding:0 8px 12px;position:relative;color:var(--muted)}.diagram-labels button small{font-family:Manrope,sans-serif;display:block;font-size:.75rem;margin-bottom:10px;color:var(--muted)}.diagram-labels button[aria-pressed=true]{color:var(--paper)}.diagram-labels button:after{content:'';position:absolute;width:25px;height:1px;background:var(--bronze);bottom:0;left:50%;transform:translateX(-50%) scaleX(0);transition:transform .3s}.diagram-labels button[aria-pressed=true]:after{transform:translateX(-50%) scaleX(1)}.diagram-footnote{font-family:'Cormorant Garamond',serif;font-size:1.45rem;font-style:italic;text-align:center;color:var(--bronze);margin-top:3rem}.chapter-pin{display:flex;align-items:center;gap:5vw;flex-wrap:wrap}.chapter-copy{width:40%;max-width:540px;position:relative;z-index:2}.chapter-copy h2{font-size:clamp(3.5rem,5.6vw,6.5rem);margin-bottom:1.8rem}.chapter-lead{font-family:'Cormorant Garamond',serif;font-size:1.8rem;line-height:1.1;margin:0 0 1.5rem}.project-link{display:flex;width:fit-content;gap:2rem;align-items:center;font-size:.875rem;margin-top:2rem;padding-bottom:12px;border-bottom:var(--brand-border-width) solid color-mix(in srgb, var(--brand-primary) 43.922%, transparent)}.project-link span{font-size:1.3rem;transition:transform .3s}.project-link:hover span{transform:translate(4px,-4px)}.project-meta{display:flex;flex-direction:column;gap:8px;margin-top:2.2rem;font-size:.75rem;letter-spacing:.07em;color:var(--muted)}.frame-caption{position:absolute;bottom:7vh;left:47vw;font-size:.75rem;letter-spacing:.09em;color:var(--muted)}.chapter-number{position:absolute;bottom:5vh;left:var(--gutter);font:400 5rem/1 'Cormorant Garamond',serif;color:color-mix(in srgb, var(--brand-primary) 25.098%, transparent)}.mobile-project-image{width:50%;height:70vh}.house-chapter .chapter-pin{flex-direction:row-reverse}.house-chapter .chapter-copy{margin-left:auto}.house-chapter .frame-caption{left:var(--gutter)}.house-chapter .chapter-number{left:auto;right:var(--gutter)}.interior-chapter{background:linear-gradient(0deg,color-mix(in srgb, var(--brand-plum) 73.725%, transparent),transparent),url('assets/05_BYAT_Interni%20luce%20e%20materia/interior-post/01.webp') center/cover}.interior-pin{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:12vh;gap:3vw}.interior-title h2{font-size:clamp(4rem,7.5vw,8rem)}.interior-title em{color:var(--brand-primary)}.interior-note{padding-bottom:.6rem;font-size:1rem;line-height:1.7}.interior-note>span{display:block;font-size:.75rem;letter-spacing:.1em;margin-top:1.8rem;color:var(--brand-muted)}.interior-note>a{display:block;font-size:.875rem;margin-top:16px;text-decoration:underline;text-underline-offset:6px}.interior-detail{position:absolute;top:30%;right:9%;display:flex;gap:16px;align-items:center;font-size:.75rem;letter-spacing:.1em}.detail-line{display:block;width:75px;height:1px;background:var(--paper)}.interior-pin>.mobile-project-image{display:none}.furniture,.approach{background:var(--paper);color:var(--ink);color-scheme:light}.furniture em,.approach em{color:var(--brand-primary)}.furniture-pin{padding-top:7rem;padding-bottom:2rem;overflow:hidden}.furniture-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:2rem;margin-bottom:2rem}.furniture-heading h2{font-size:clamp(2.8rem,4.5vw,5rem);line-height:.97}.furniture-heading .eyebrow{margin-bottom:1rem}.furniture-intro{font-size:.875rem;line-height:1.7;max-width:320px}.gallery-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:1.2rem}.gallery-controls button{border:var(--brand-border-width) solid color-mix(in srgb, var(--brand-plum) 31.373%, transparent);border-radius:50%;width:42px;height:42px;font-size:1.3rem;transition:background .3s,color .3s}.gallery-controls button:hover{background:var(--ink);color:var(--paper)}.gallery-controls button:disabled{opacity:.3;cursor:default}.gallery-count{font-size:.75rem;letter-spacing:.12em;margin-right:20px}.gallery-window{overflow-x:auto;scrollbar-width:thin;scroll-snap-type:x mandatory;scrollbar-color:var(--brand-primary) transparent;padding-bottom:10px}.gallery-track{display:flex;gap:25px;width:max-content}.furniture-card{width:28.5vw;min-width:300px;max-width:470px;flex-shrink:0;scroll-snap-align:start}.card-image{height:38vh;min-height:250px;position:relative;overflow:hidden;background:var(--brand-muted)}.card-image>img{height:100%;transition:transform .8s cubic-bezier(.2,.6,.2,1)}.furniture-card:hover .card-image>img{transform:scale(1.055)}.card-index{position:absolute;top:14px;left:14px;font-size:.75rem;letter-spacing:.05em;background:color-mix(in srgb, var(--brand-paper) 90.98%, transparent);padding:8px 10px}.card-open{position:absolute;bottom:14px;right:14px;background:var(--paper);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-size:1.3rem}.card-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:7px 15px;justify-content:space-between;margin-top:16px}.card-title h3{font-size:1.7rem;line-height:1.1}.card-title>span{font-size:.75rem;letter-spacing:.045em;color:var(--brand-plum)}.furniture-card>p{font-size:var(--ds-body-size-base-9);line-height:var(--ds-body-line-base-4);color:var(--brand-plum);margin-top:8px}.gallery-footer{display:flex;gap:3rem;align-items:center;margin-top:1.5rem;font-size:.75rem;letter-spacing:.06em;color:var(--brand-plum)}.gallery-progress{height:1px;background:color-mix(in srgb, var(--brand-plum) 18.824%, transparent);flex:1}.gallery-progress i{display:block;height:2px;background:var(--ink);width:100%;transform:scaleX(.25);transform-origin:left}.approach-pin{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.approach-image{height:68vh;position:relative;overflow:hidden}.approach-image img{height:100%;object-position:56% center}.approach-image>span{position:absolute;left:25px;bottom:25px;font-size:.75rem;letter-spacing:.1em;color:var(--paper);background:color-mix(in srgb, var(--brand-plum) 61.176%, transparent);padding:10px}.approach-copy h2{font-size:var(--ds-heading-size-base-15);margin-bottom:2rem}.approach .body-copy{color:var(--brand-plum);margin-top:1rem}.approach .project-link{border-color:color-mix(in srgb, var(--brand-plum) 31.373%, transparent)}.contact-pin{display:flex;align-items:center;padding-bottom:9rem;flex-wrap:wrap}.contact-copy{z-index:2;width:50%}.contact-copy h2{font-size:clamp(4rem,6.5vw,7.5rem);margin-bottom:2.4rem}.contact-email{display:flex;align-items:center;justify-content:space-between;max-width:360px;font-size:1rem;padding-bottom:15px;border-bottom:var(--brand-border-width) solid var(--bronze)}.contact-email span{font-size:1.5rem}.email-address{display:block;font-size:.875rem;margin-top:15px;color:var(--bronze)}.contact-copy>p:last-child{font-size:.875rem;line-height:1.7;margin-top:2rem;color:var(--muted)}.spoon-caption{position:absolute;right:var(--gutter);bottom:20vh;font-size:.75rem;letter-spacing:.07em;color:var(--muted)}footer{position:absolute;bottom:2rem;left:var(--gutter);right:var(--gutter);border-top:var(--brand-border-width) solid var(--line);padding-top:1.5rem;display:flex;gap:3rem;align-items:center;justify-content:space-between;font-size:.75rem}footer a:first-child{margin-right:auto}.contact .mobile-project-image{height:55vh}
/* Motion is progressive enhancement; content remains complete without JavaScript. */
@media(min-width:900px) and (min-height:700px){
.motion-enabled .film{display:block}.motion-enabled .film-section{background:none}.motion-enabled .pin{position:sticky;top:0;height:100svh;min-height:0}.motion-enabled .hero{height:145vh}.motion-enabled .vision{height:160vh}.motion-enabled .project-chapter{height:180vh}.motion-enabled .interior-chapter{height:170vh}.motion-enabled .approach{height:135vh}.motion-enabled .contact{height:145vh}.motion-enabled .mobile-project-image{display:none}.motion-enabled .house-chapter .chapter-copy{margin-right:0}.motion-enabled .chapter-copy{width:38%}.motion-enabled .gallery-window{overflow:hidden}.motion-enabled .gallery-track{will-change:transform}.motion-enabled .approach-image{clip-path:inset(var(--reveal,12%) 0 0 0)}.motion-enabled .approach-image img{transform:scale(var(--image-scale,1.08))}.motion-enabled .hero-pin h1{transform:translateY(var(--hero-shift,0px));opacity:var(--hero-opacity,1)}.motion-enabled .chapter-copy{transform:translateY(var(--copy-shift,0px))}.motion-enabled .interior-detail{transform:translateX(var(--detail-shift,0px))}.motion-enabled .contact-copy h2{transform:translateY(var(--contact-shift,0px))}
}
@media(min-width:900px) and (max-height:820px){.eyebrow{margin-bottom:1.3rem}.chapter-copy h2{font-size:4.7vw;margin-bottom:1.4rem}.chapter-lead{font-size:1.6rem;margin-bottom:1rem}.project-meta{margin-top:1.5rem}.furniture-pin{padding-top:6.5rem}.furniture-heading h2{font-size:3.6vw}.card-image{height:32vh;min-height:220px}.vision-copy h2{font-size:5vw}.approach-copy h2{font-size:var(--ds-heading-size-desktop-2);}.contact-copy h2{font-size:5.8vw}.contact-copy>p:last-child{margin-top:1rem}}
@media(max-width:1100px){.site-header nav{gap:1.4rem}.motion-toggle{padding-left:15px}.chapter-copy .body-copy{font-size:.95rem}.project-meta{font-size:.75rem}.furniture-intro{max-width:260px}.card-title{display:block}.card-title>span{display:block;margin-top:6px}.gallery-footer>span:last-child{display:none}}
@media(max-width:899px){:root{--gutter:7vw}html{scroll-padding-top:85px}.site-header{padding:20px var(--gutter);gap:15px}.wordmark{font-size:.7rem}.monogram{font-size:2.6rem}.site-header nav{gap:22px;margin-left:auto}.site-header nav a{font-size:.8rem}.site-header nav a:nth-child(2),.site-header nav a:nth-child(3){display:none}.nav-contact span{padding-left:6px}.motion-toggle{display:none}.pin{padding-top:7rem;padding-bottom:6rem;min-height:0}.hero-pin{min-height:100svh;justify-content:center;padding-top:10rem;padding-bottom:11rem}.hero-kicker{font-size:.7rem;margin-bottom:3rem}h1{font-size:clamp(4.6rem,14.2vw,8rem);line-height:.9}h1 span+span{margin-left:4vw}.hero-note{margin:3rem 0 0 auto}.hero-bottom{bottom:2.3rem}.hero-location{display:none}.vision-pin{display:block}.vision-copy h2{font-size:4.6rem}.vision-copy .body-copy{margin-top:2rem}.diagram-composition{margin-top:4rem}.influence-diagram{margin-top:2rem}.diagram-labels button{font-size:1.25rem;padding:0 0 12px}.diagram-heading{font-size:.7rem}.diagram-footnote{margin-top:2rem}.chapter-pin,.house-chapter .chapter-pin{display:flex;flex-direction:column;align-items:stretch;gap:3rem}.chapter-copy,.house-chapter .chapter-copy{width:100%;max-width:none;margin:0}.chapter-copy h2{font-size:clamp(3.5rem,10vw,5.5rem)}.chapter-copy .body-copy{font-size:1rem}.project-meta{margin-top:2rem}.mobile-project-image{width:100%;height:62vh;min-height:360px}.city-chapter .mobile-project-image{height:40vh;min-height:260px}.frame-caption,.house-chapter .frame-caption{position:static;order:3;margin-top:-1.5rem;font-size:.7rem}.chapter-number{display:none}.interior-pin{min-height:95svh;flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:2rem}.interior-title h2{font-size:clamp(3.6rem,11vw,6rem)}.interior-note{font-size:.95rem}.interior-detail{display:none}.furniture-pin{padding-bottom:4rem}.furniture-heading{display:block;margin-bottom:2rem}.furniture-heading h2{font-size:clamp(2.8rem,8vw,4.5rem)}.furniture-intro{display:flex;max-width:none;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.8rem}.furniture-intro>p{font-size:.8rem;max-width:55%}.gallery-controls{gap:8px;margin:0}.gallery-count{display:none}.gallery-window{margin-right:calc(-1 * var(--gutter));padding-right:var(--gutter)}.gallery-track{gap:20px;padding-right:var(--gutter)}.furniture-card{width:74vw;min-width:0}.card-image{height:47vh;min-height:300px}.card-title h3{font-size:1.8rem}.card-title>span{font-size:.75rem}.gallery-footer{gap:20px}.gallery-instruction{font-size:.65rem;max-width:70%;line-height:1.6}.approach-pin{display:flex;flex-direction:column;gap:3rem}.approach-image{width:100%;height:55vh}.approach-copy h2{font-size:var(--ds-heading-size-mobile-25);}.contact-pin{display:flex;flex-direction:column;align-items:stretch;padding-bottom:13rem;gap:2rem}.contact-copy{width:100%}.contact-copy h2{font-size:clamp(3.6rem,11vw,6rem)}.contact .mobile-project-image{width:100%;height:36vh;min-height:220px;order:2}.spoon-caption{position:static;font-size:.65rem;order:3;line-height:1.6}footer{display:grid;grid-template-columns:1fr auto;gap:20px;font-size:.75rem;bottom:2.5rem}footer a:first-child{margin:0}footer a:last-child{justify-self:end}.body-copy{max-width:36rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
.motion-reduced{scroll-behavior:auto}.motion-reduced *,.motion-reduced *:before,.motion-reduced *:after{animation:none!important;transition:none!important}
.motion-enabled{scroll-padding-top:0}.site-header.solid{background:linear-gradient(color-mix(in srgb, var(--brand-plum) 96.078%, transparent) 75%,color-mix(in srgb, var(--brand-plum) 0%, transparent))}.site-header.solid.light{background:linear-gradient(color-mix(in srgb, var(--brand-paper) 96.078%, transparent) 75%,color-mix(in srgb, var(--brand-paper) 0%, transparent))}
.film-frame[data-scene="spoon"]{background:transparent}.film-frame[data-scene="spoon"] .film-border{opacity:0}.film-shot[data-shot="spoon"]{mask-image:linear-gradient(90deg,transparent,var(--brand-ink) 10%,var(--brand-ink) 95%,transparent),linear-gradient(0deg,transparent,var(--brand-ink) 10%,var(--brand-ink) 90%,transparent);mask-composite:intersect}
@supports(animation-timeline:view()){
@media(max-width:899px) and (prefers-reduced-motion:no-preference){
html:not(.motion-reduced) .mobile-project-image,html:not(.motion-reduced) .approach-image{animation:material-reveal linear both;animation-timeline:view();animation-range:entry 0% entry 100%}
@keyframes material-reveal{from{opacity:.6;clip-path:inset(9% 0 0 0);transform:translateY(25px)}to{opacity:1;clip-path:inset(0);transform:translateY(0)}}
}}
@media(max-width:899px){.wordmark,.hero-kicker,.diagram-heading,.frame-caption,.house-chapter .frame-caption,.spoon-caption,.gallery-instruction{font-size:.75rem}.furniture-intro>p{font-size:.875rem}}
@media(max-width:1100px){.chapter-copy .body-copy{font-size:1rem}}
