.bologna-route{background:var(--white);overflow:clip}.route-manifesto{background:var(--white);color:var(--ink)}.route-manifesto :where(h1,h2,h3){text-transform:uppercase;margin:0}.route-manifesto :where(h1,h2)>span{display:block}.route-eyebrow,.route-section-index,.route-principle-number{color:var(--red);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:clamp(.72rem,.12vw + .65rem,.82rem);font-weight:900;line-height:1.3}.route-visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.route-hero{min-height:min(54rem, calc(100svh - var(--header-height)));border-bottom:1px solid var(--line);background:var(--white);align-items:center;display:flex}.route-hero-frame{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:clamp(1.5rem,2.2vw,2.75rem);padding-block:clamp(5rem,8vw,9rem);display:grid}.route-hero-copy{z-index:1;grid-column:1/9}.route-hero-copy .route-eyebrow{margin-bottom:clamp(1.75rem,2.4vw,2.75rem)}.route-hero h1{letter-spacing:-.068em;white-space:nowrap;margin-left:-.055em;font-size:clamp(4.75rem,7.7vw,9.5rem);line-height:.82}.route-hero h1 span:last-child{color:var(--red)}.route-hero-subtitle{letter-spacing:-.018em;margin:clamp(2rem,3vw,3.25rem) 0 0;font-size:clamp(1.08rem,1.25vw,1.55rem);font-weight:900;line-height:1.12}.route-hero-intro{max-width:40rem;color:var(--muted);text-wrap:pretty;margin:1rem 0 0;font-size:clamp(1rem,.32vw + .82rem,1.25rem);line-height:1.55}.route-hero-geometry{grid-column:9/13;justify-content:flex-end;justify-self:end;align-items:center;width:min(100%,28rem);height:clamp(20rem,28vw,34rem);display:flex}.route-hero-direction{width:min(100%,26rem);color:var(--red);transform-origin:50%;animation:9s cubic-bezier(.22,1,.36,1) infinite route-direction-reflect;display:block}.route-hero-direction svg{fill:currentColor;width:100%;height:auto;display:block}.route-manifesto-section{background:var(--mist);padding-block:clamp(6.5rem,10vw,12rem)}.route-manifesto-frame,.route-sign-frame,.route-identity-frame{grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,3vw,4rem);display:grid}.route-manifesto-frame>header{grid-column:1/8}.route-manifesto-frame .route-section-index{margin-bottom:clamp(1.5rem,2vw,2.25rem)}.route-manifesto h2{letter-spacing:-.06em;font-size:clamp(3.8rem,6.35vw,7.8rem);line-height:.86}.route-manifesto-copy{letter-spacing:-.018em;text-wrap:pretty;grid-column:8/13;align-self:end;max-width:39rem;margin:0;font-size:clamp(1.25rem,.7vw + .8rem,1.75rem);line-height:1.48}.route-architecture{grid-column:1/13;margin:clamp(4rem,7vw,8rem) 0 0}.route-architecture img{aspect-ratio:16/8.1;object-fit:cover;object-position:50% 50%;width:100%}.route-architecture figcaption{color:var(--muted);letter-spacing:.11em;margin-top:.85rem;font-size:.68rem;font-weight:900;line-height:1.3}.route-sign-section{border-bottom:1px solid var(--line);background:var(--white);padding-block:clamp(6.5rem,10vw,12rem)}.route-sign-editorial{flex-direction:column;grid-column:1/7;justify-content:space-between;min-height:clamp(36rem,48vw,52rem);display:flex}.route-sign-editorial h2{font-size:clamp(3rem,3.9vw,4.75rem)}.route-sign-editorial>header .route-eyebrow{margin-bottom:clamp(1.5rem,2vw,2.25rem)}.route-sign-copy{max-width:31rem;margin-top:clamp(7rem,12vw,13rem)}.route-sign-copy>p:first-child{text-wrap:pretty;margin:0;font-size:clamp(1.15rem,.5vw + .85rem,1.48rem);line-height:1.55}.route-sign-note{border-top:1px solid var(--line);max-width:36rem;color:var(--muted);text-wrap:pretty;margin:1.6rem 0 0;padding-top:1.2rem;font-size:clamp(.82rem,.12vw + .76rem,.92rem);line-height:1.5}.route-sign-device{grid-column:7/13;grid-template-columns:minmax(0,1fr) clamp(7rem,10vw,10.5rem) minmax(0,1.12fr);align-items:center;gap:clamp(1rem,1.8vw,2rem);min-height:clamp(36rem,48vw,52rem);display:grid}.route-sign-place{min-width:0;margin:0}.route-sign-place strong,.route-sign-place span{text-transform:uppercase;display:block}.route-sign-place strong{letter-spacing:-.06em;white-space:nowrap;font-size:clamp(2.15rem,2.65vw,3.75rem);font-weight:900;line-height:.86}.route-sign-place span{color:var(--muted);letter-spacing:.1em;margin-top:1rem;font-size:clamp(.78rem,.12vw + .72rem,.86rem);font-weight:900;line-height:1.35}.route-sign-place-destination{text-align:right}.route-sign-place-destination strong{color:var(--red)}.route-sign-place-destination span{max-width:17rem;margin-left:auto}.route-sign-structures{justify-content:center;align-items:center;width:100%;height:clamp(17rem,27vw,29rem);display:flex}.route-sign-direction{width:100%;color:var(--red);transform-origin:50%;animation:9s cubic-bezier(.22,1,.36,1) infinite route-direction-reflect;display:block}.route-sign-direction svg{fill:currentColor;width:100%;height:auto;display:block}@keyframes route-direction-reflect{0%,34%{opacity:1;transform:translate(0)scaleX(1)}44%{opacity:.58;transform:translate(1%)scaleX(.08)}54%,78%{opacity:1;transform:translate(0)scaleX(-1)}88%{opacity:.58;transform:translate(-1%)scaleX(-.08)}98%,to{opacity:1;transform:translate(0)scaleX(1)}}.route-principles{background:var(--mist);padding-block:clamp(5.5rem,8vw,9rem)}.route-principles ol{margin:0;padding:0;list-style:none}.route-principles li{border-top:1px solid var(--ink);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:clamp(1.25rem,2.2vw,2.75rem);padding-block:clamp(2.5rem,4vw,4.5rem);display:grid}.route-principles li:last-child{border-bottom:1px solid var(--ink)}.route-principle-number{grid-column:1/2;padding-top:.45rem}.route-principles h3{letter-spacing:-.05em;text-wrap:balance;grid-column:2/8;max-width:15ch;font-size:clamp(2.1rem,3.2vw,4rem);line-height:.92}.route-principles li>p:last-child{max-width:37rem;color:var(--muted);text-wrap:pretty;grid-column:8/13;margin:0;font-size:clamp(1rem,.25vw + .86rem,1.18rem);line-height:1.55}.route-identity{background:var(--white);padding-block:clamp(6.5rem,10vw,11rem)}.route-identity-frame>header{grid-column:1/8}.route-identity-frame .route-section-index{margin-bottom:clamp(1.5rem,2vw,2.25rem)}.route-identity h2{font-size:clamp(3.5rem,5.5vw,6.8rem)}.route-identity-copy{grid-column:8/13;align-self:end}.route-identity-copy p{text-wrap:pretty;margin:0;font-size:clamp(1.08rem,.38vw + .86rem,1.35rem);line-height:1.58}.route-identity-copy p+p{border-top:1px solid var(--line);color:var(--muted);margin-top:1.5rem;padding-top:1.5rem}.route-closing{background:var(--red);color:var(--white);padding-block:clamp(6rem,9vw,10rem)}.route-closing-frame{grid-template-columns:repeat(12,minmax(0,1fr));align-items:end;gap:clamp(2rem,3vw,4rem);display:grid}.route-closing h2{letter-spacing:-.06em;grid-column:1/8;font-size:clamp(4rem,6.8vw,8.25rem);line-height:.84}.route-closing-frame>div{grid-column:8/13}.route-closing-frame>div>p{text-wrap:pretty;max-width:32rem;margin:0 0 2rem;font-size:clamp(1.18rem,.45vw + .88rem,1.5rem);line-height:1.48}.route-closing-cta{background:var(--white);min-height:4rem;color:var(--red);letter-spacing:.05em;justify-content:center;align-items:center;gap:.8rem;padding:1rem clamp(1.6rem,2.2vw,2.5rem);font-size:clamp(.82rem,.15vw + .72rem,.92rem);font-weight:900;line-height:1.2;text-decoration:none;display:inline-flex}.route-closing-cta:is(:hover,:focus-visible){background:var(--ink);color:var(--white)}.route-closing-mark{color:currentColor;width:1.2rem;transition:transform .22s cubic-bezier(.22,1,.36,1);display:inline-flex}.route-closing-mark svg{fill:currentColor;width:100%;height:auto;display:block}.route-closing-cta:is(:hover,:focus-visible) .route-closing-mark{transform:translate(3px)}@media (width<=64rem){.route-hero{min-height:0}.route-hero-copy{grid-column:1/9}.route-hero h1{font-size:clamp(4.25rem,8.2vw,6.5rem)}.route-manifesto-frame>header,.route-identity-frame>header{grid-column:1/13}.route-manifesto-copy,.route-identity-copy{grid-column:6/13;margin-top:1rem}.route-principles h3{grid-column:2/7}.route-principles li>p:last-child{grid-column:7/13}}@media (width<=48rem){.route-hero-frame,.route-manifesto-frame,.route-sign-frame,.route-identity-frame,.route-closing-frame{grid-template-columns:minmax(0,1fr);gap:2.5rem}.route-hero-frame{padding-block:4.5rem 5.5rem}.route-hero-copy,.route-hero-geometry,.route-manifesto-frame>header,.route-manifesto-copy,.route-architecture,.route-sign-editorial,.route-sign-device,.route-identity-frame>header,.route-identity-copy,.route-closing h2,.route-closing-frame>div{grid-column:1}.route-hero h1{font-size:clamp(3.2rem,13.8vw,5rem)}.route-hero-geometry{justify-self:end;width:min(52vw,14rem);height:auto;padding-block:1rem}.route-manifesto-section,.route-sign-section,.route-identity{padding-block:5.5rem}.route-manifesto h2,.route-identity h2{font-size:clamp(3rem,12vw,4.9rem)}.route-manifesto-copy,.route-sign-copy,.route-identity-copy{margin-top:0}.route-architecture{margin-top:1.5rem}.route-architecture img{aspect-ratio:4/3}.route-sign-editorial{gap:clamp(3.5rem,12vw,5.5rem);min-height:0}.route-sign-editorial h2{font-size:clamp(2.9rem,11.5vw,4.75rem)}.route-sign-device{grid-template-rows:auto 11rem auto;grid-template-columns:1fr;align-items:start;gap:2.75rem;min-height:0;padding-block:2rem}.route-sign-place strong{font-size:clamp(3rem,12vw,4.5rem)}.route-sign-place-destination{text-align:right}.route-sign-structures{place-self:center;width:min(48vw,10rem);height:auto}.route-principles{padding-block:4rem}.route-principles li{grid-template-columns:auto minmax(0,1fr);gap:1.2rem;padding-block:2.5rem}.route-principle-number{grid-column:1}.route-principles h3,.route-principles li>p:last-child{grid-column:2}.route-principles h3{max-width:18ch;font-size:clamp(2rem,8.6vw,3.25rem)}.route-principles li>p:last-child{margin-top:.35rem}.route-closing{padding-block:5.5rem}.route-closing h2{font-size:clamp(3.45rem,14vw,5.25rem)}}@media (width<=35rem){.route-hero h1{font-size:clamp(2.6rem,12.8vw,4.1rem)}.route-hero-subtitle{font-size:1rem}.route-manifesto h2,.route-identity h2{font-size:clamp(2.75rem,12vw,3.8rem)}.route-identity h2{font-size:clamp(2rem,10vw,3.8rem)}.route-sign-place strong{font-size:clamp(2.7rem,13vw,3.7rem)}.route-sign-structures{width:9.5rem}.route-closing-cta{width:100%}}@media (prefers-reduced-motion:reduce){.route-hero-direction,.route-sign-direction{opacity:1;animation:none;transform:none}.route-closing-mark{transition:none}}
