/* User-requested refinement: timebar, reading panels and contrasting glass. */
:root{--timeline-margin:clamp(18px,6vw,96px);--glass-on-light:var(--brand-surface-light);--glass-on-dark:var(--brand-surface-dark)}
.site-header,.site-header.solid,.site-header.light,.site-header.solid.light{left:var(--timeline-margin);right:var(--timeline-margin);display:block;padding:14px 24px;min-height:90px;color:var(--brand-white);background:var(--glass-on-light)}
.site-header.over-dark{background:var(--glass-on-dark);color:var(--brand-white)}
.site-header:not(.over-dark){color:var(--brand-white)}
.site-header .header-timeline{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));width:100%;gap:0}
.site-header .header-timeline a,.site-header .header-timeline a:nth-child(n){font-size:clamp(12px,1.05vw,15px);line-height:1.25;min-height:60px;padding:0 5px 18px;letter-spacing:0}
.site-header .timeline-label{max-width:170px;min-height:38px;display:flex;align-items:center;justify-content:center;letter-spacing:0;text-shadow:none}
.site-header .timeline-home .brand-logo,.site-header:not(.over-dark) .brand-logo{width:38px;height:38px;filter:brightness(0) invert(1)}
.timeline-line{bottom:4px}.timeline-dot{bottom:0}
.journey-note{top:calc(var(--panel-top) + 24px);bottom:auto;left:52%;max-width:min(460px,calc(100% - 2 * var(--timeline-margin)));padding:24px 30px;background:var(--glass-on-light);border-color:color-mix(in srgb, var(--brand-white) 27.059%, transparent);box-shadow:var(--glass-shadow)}
.journey-note.on-dark{background:var(--glass-on-dark)}
.journey-note.location-note{width:max-content}
.journey-note.location-note strong{font-size:clamp(25px,2.8vw,38px);font-weight:500;line-height:1.15}
.journey-note svg{width:30px;height:34px}
.journey-note.project-note strong{font-size:clamp(19px,1.8vw,26px);font-weight:500}
.journey-note.project-note p+p{font-size:16px;line-height:1.6}
.world-transition .journey-pin{overflow:hidden}
.exterior-window{position:absolute;inset:var(--panel-top) 0 var(--panel-bottom);width:100%;overflow:hidden;z-index:3;opacity:0;visibility:hidden}
.exterior-track{display:flex;width:max-content;height:100%;gap:32px;padding:0 var(--timeline-margin);will-change:transform}
.exterior-meter{position:absolute;bottom:20px;left:var(--timeline-margin);right:var(--timeline-margin);margin:0;z-index:4;opacity:0}
.exterior-track .byat-panel,.byat-track .byat-panel{display:grid!important;grid-template-columns:minmax(0,.85fr) minmax(0,1.45fr);align-items:stretch;gap:var(--ds-box-spacing-base-12);padding:var(--ds-box-spacing-base-17);width:calc(var(--viewport-width,100vw) - 2 * var(--timeline-margin));height:100%;border-radius:calc(var(--brand-radius) * 1.0833333333333333);background:var(--glass-on-dark);border:var(--brand-border-width) solid var(--glass-border);box-shadow:var(--glass-shadow);overflow:hidden}
.byat-track{padding-inline:var(--timeline-margin)!important}
.byat-panel .byat-copy{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:var(--ds-box-spacing-base-6);grid-column:1;grid-row:1;order:0;padding:var(--ds-box-spacing-base-3);margin:0;min-width:0;max-height:100%;border:0;border-radius:0;box-shadow:none;background:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow-y:auto}
.byat-panel .byat-copy h2{font-size:var(--ds-heading-size-base-11);line-height:var(--ds-heading-line-base-5);}
.byat-panel .byat-copy p{font-size:var(--ds-body-size-base-7);line-height:var(--ds-body-line-base-2);margin:0}
.byat-panel .byat-copy .render-kicker{font-size:var(--ds-caption-size-base-2);letter-spacing:var(--ds-caption-tracking-base-1);line-height:var(--ds-caption-line-base-2);}
.byat-panel figure{grid-column:2;grid-row:1;order:1;min-height:0;height:100%;width:100%;margin:0;display:flex;align-items:center;justify-content:center;background:none;border-radius:calc(var(--brand-radius) * 0.5833333333333334);overflow:hidden}
.byat-panel figure img{width:100%;height:100%;object-fit:contain}
.exterior-window.over-image .byat-panel{background:var(--glass-on-light)}
#casa .byat-panel{background:var(--glass-on-light)}
.byat-meter{margin-inline:var(--timeline-margin)}
.interior-motion{opacity:1;filter:brightness(.85)}
.approach-copy h3{font-family:inherit;font-size:var(--ds-heading-size-base-12);line-height:var(--ds-heading-line-base-6);margin-bottom:22px;letter-spacing:var(--ds-heading-tracking-base-1);}
.approach-copy h2{margin-bottom:22px}
.approach-copy .body-copy{max-width:none}
.approach-pin{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr)}
#approccio .approach-pin{padding-top:var(--panel-top)}
.butera-track .project-board{gap:0}
.butera-track .project-board img{height:var(--board-height)}
.contact-pin{padding-top:var(--panel-top);padding-bottom:180px}
.contact-copy{width:100%}
.contact-paths{grid-template-columns:1fr 1fr;gap:var(--ds-box-spacing-base-18);margin-top:32px}
.contact-path{padding:var(--ds-box-spacing-base-19);display:flex;flex-direction:column;align-items:flex-start;border-radius:var(--brand-radius);background:var(--glass-on-dark);color:var(--brand-white)}
.contact .contact-paths .eyebrow{font-size:var(--ds-caption-size-base-2);letter-spacing:var(--ds-caption-tracking-base-2);margin:0 0 20px;color:inherit}
.contact-paths h3{margin-bottom:20px}
.contact-paths p{margin-bottom:26px;color:var(--brand-paper)}
.contact-paths .contact-cta{display:flex;justify-content:space-between;align-items:center;gap:var(--ds-box-spacing-base-20);width:100%;margin-top:auto;padding:var(--ds-box-spacing-base-21);border-bottom:var(--brand-border-width) solid color-mix(in srgb, var(--brand-white) 39.608%, transparent);font-size:15px;line-height:1.5}
.contact-cta span{font-size:22px}
.contact-cta:hover,.contact-cta:focus-visible{color:var(--bronze)}
.contact-manifesto{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;margin-top:64px}
.contact-manifesto blockquote{margin:0}
.contact-manifesto blockquote p{font-size:clamp(30px,4.5vw,60px);line-height:1.1;letter-spacing:-.04em}
.contact-manifesto cite{display:block;font-size:14px;line-height:1.5;font-style:normal;margin-top:20px}
.contact-manifesto img{width:100%;height:auto;max-height:360px;object-fit:contain;background:transparent}
.static-journey .world-transition{height:auto!important}
.static-journey .world-transition .journey-pin{position:relative;height:auto;display:block;padding:var(--panel-top) 0 var(--panel-bottom)}
.static-journey .world-copy{margin:0 var(--page-margin) 48px;width:auto;max-width:680px}
.static-journey .world-visual{display:none}
.static-journey .exterior-window{position:relative;inset:auto;visibility:visible!important;opacity:1!important;overflow-x:auto;height:calc(100svh - var(--panel-top) - var(--panel-bottom));min-height:460px}
.static-journey .exterior-track{transform:none!important}
.static-journey .exterior-meter{display:none}
@media(max-width:899px){
 :root{--timeline-margin:16px;--panel-top:154px}
 .site-header,.site-header.solid,.site-header.light,.site-header.solid.light{top:12px;padding:12px 6px;min-height:104px;border-radius:calc(var(--brand-radius) * 0.8333333333333334)}
 .site-header .header-timeline a,.site-header .header-timeline a:nth-child(n){font-size:11px;line-height:1.25;min-height:78px;padding:0 3px 20px;letter-spacing:0}
 .site-header .timeline-label{max-width:100%;min-height:54px;overflow-wrap:normal;letter-spacing:0;line-height:1.25}
 .site-header .timeline-home .brand-logo{width:30px;height:30px}
 .journey-note{left:var(--timeline-margin);right:var(--timeline-margin);top:calc(var(--panel-top) + 12px);width:auto;max-width:none;padding:20px 24px}
 .journey-note.location-note{width:max-content;max-width:calc(100% - 2 * var(--timeline-margin))}
 .journey-note.project-note p+p{font-size:14px}
 .exterior-track .byat-panel,.byat-track .byat-panel{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);padding:var(--ds-box-spacing-mobile-4);gap:var(--ds-box-spacing-mobile-50);}
 .byat-panel .byat-copy{gap:var(--ds-box-spacing-mobile-10);justify-content:flex-start}
 .byat-panel .byat-copy h2{font-size:var(--ds-heading-size-mobile-21);}
 .byat-panel .byat-copy p{font-size:var(--ds-body-size-mobile-2);line-height:var(--ds-body-line-mobile-12);}
 .contact-paths{grid-template-columns:1fr}
 .contact-manifesto{gap:20px;margin-top:48px}
 .contact-pin{padding-bottom:250px}
}
@media(max-width:480px){
 :root{--timeline-margin:8px}
 .site-header,.site-header.solid,.site-header.light,.site-header.solid.light{padding-inline:4px}
 .site-header .header-timeline a,.site-header .header-timeline a:nth-child(n){font-size:10px;padding-inline:1px}
 .site-header .header-timeline .timeline-label{letter-spacing:-.015em}
 .exterior-track .byat-panel,.byat-track .byat-panel{padding:var(--ds-box-spacing-mobile-51);gap:var(--ds-box-spacing-mobile-52);grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .byat-panel .byat-copy h2{font-size:var(--ds-heading-size-mobile-22);}
 .byat-panel .byat-copy .render-kicker{font-size:var(--ds-caption-size-mobile-10);}
 .contact-manifesto{grid-template-columns:1fr}
 .contact-manifesto img{max-height:260px}
}
