:root{--paper:#f1eee7;--paper2:#e4dfd5;--ink:#171b1a;--ink2:#232a28;--red:#d4192f;--red2:#b80f24;--sage:#9aa59f;--line:rgba(23,27,26,.18);--white:#fff;--serif:"Iowan Old Style","Baskerville","Times New Roman",serif;--sans:Inter,Avenir,"Helvetica Neue",Arial,sans-serif;--wrap:1320px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}img{display:block;max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid #ff9aaa;outline-offset:4px}.wrap{width:min(calc(100% - 80px),var(--wrap));margin-inline:auto}.skip-link{position:fixed;z-index:999;left:20px;top:12px;transform:translateY(-160%);padding:10px 18px;background:#fff;font-weight:700}.skip-link:focus{transform:none}
.header{position:fixed;z-index:80;inset:0 0 auto;display:grid;grid-template-columns:270px minmax(210px,.65fr) 1fr auto;align-items:center;min-height:92px;padding:0 34px;color:#fff;border-bottom:1px solid rgba(255,255,255,.22);transition:.35s ease}.header.is-scrolled{min-height:76px;background:rgba(241,238,231,.96);color:var(--ink);border-color:var(--line);box-shadow:0 14px 38px rgba(0,0,0,.07);backdrop-filter:blur(15px)}.header__brand{display:block;width:230px;background:#fff;padding:6px 10px}.header__brand img{width:100%;height:auto}.header__fair{display:flex;align-items:center;gap:11px;font-size:.64rem;letter-spacing:.07em;text-transform:uppercase}.header__fair span{width:8px;height:8px;background:var(--red);border-radius:50%;box-shadow:0 0 0 5px rgba(212,25,47,.2)}.header__fair em{font-style:normal;opacity:.62}.header__nav{display:flex;justify-content:flex-end;gap:32px;padding-right:34px}.header__nav a{font-size:.68rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.header__nav a:hover{color:var(--red)}.header__contact{display:flex;align-items:center;gap:32px;min-height:48px;padding:0 20px;background:var(--red);font-size:.67rem;font-weight:800;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}.header__contact:hover{background:var(--red2)}.header__menu{display:none;background:transparent;border:0;color:currentColor}
.kicker,.section-index{margin:0;font-size:.64rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.kicker{display:flex;align-items:center;gap:16px}.kicker span{display:grid;place-items:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.45);border-radius:50%}.section-index{color:#7c8580}.section-index--light{color:rgba(255,255,255,.58)}.overline{margin:0 0 22px;font-size:.74rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.arrow-link{display:inline-flex;align-items:center;gap:42px;padding-bottom:6px;border-bottom:1px solid currentColor;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.arrow-link span{font-size:1.05rem;transition:transform .2s}.arrow-link:hover span{transform:translate(4px,-4px)}.arrow-link--light{color:#fff}
.hero{position:relative;display:grid;grid-template-columns:43% 57%;min-height:820px;height:100svh;max-height:1040px;background:var(--ink);color:#fff;overflow:hidden}.hero__copy{position:relative;z-index:2;display:flex;flex-direction:column;justify-content:center;padding:150px 4vw 80px 6.5vw;background:var(--ink)}.hero__copy::after{content:"";position:absolute;right:-1px;top:0;width:1px;height:100%;background:rgba(255,255,255,.17)}.hero h1{margin:58px 0 45px;font-size:clamp(4rem,6.5vw,7.8rem);font-weight:500;letter-spacing:-.064em;line-height:.8}.hero h1 em,.manifesto h2 em,.section-head h2 em,.case h2 em,.portfolio h2 em,.fair h2 em,.contact h2 em{font-family:var(--serif);font-weight:400}.hero h1 em{display:inline-block;color:#ffeff1}.hero__statement{max-width:520px;padding-left:25%;border-left:1px solid rgba(255,255,255,.2)}.hero__statement p{margin:0 0 28px;color:rgba(255,255,255,.68);font-size:1rem}.hero__visual{position:relative;overflow:hidden}.hero__visual>img{width:100%;height:100%;object-fit:cover}.hero__visual-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,27,26,.22),transparent 40%),linear-gradient(0deg,rgba(0,0,0,.5),transparent 48%)}.hero__signature{position:absolute;right:-.08em;top:12%;color:rgba(255,255,255,.13);font-family:var(--serif);font-size:30vw;line-height:.8}.hero__caption{position:absolute;left:35px;bottom:32px;margin:0;font-size:.62rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.hero__fair-card{position:absolute;right:0;bottom:0;width:min(310px,42%);padding:29px 30px;background:var(--red);color:#fff;text-decoration:none}.hero__fair-card small,.hero__fair-card span{display:block;font-size:.6rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.hero__fair-card strong{display:block;margin:13px 0 24px;font-family:var(--serif);font-size:2.7rem;font-weight:400;line-height:.82}.hero__fair-card span{text-align:right}.hero__rail{position:absolute;z-index:4;left:0;bottom:0;display:flex;align-items:center;gap:15px;padding:20px 30px;transform:rotate(-90deg) translateY(100%);transform-origin:left bottom;font-size:.58rem;letter-spacing:.12em;text-transform:uppercase}.hero__rail i{width:60px;height:1px;background:rgba(255,255,255,.4)}
.manifesto{padding:155px 0 0;background:var(--paper)}.manifesto__grid{display:grid;grid-template-columns:180px 1fr;gap:70px}.manifesto__content{max-width:1040px}.manifesto h2{max-width:1050px;margin:0;font-size:clamp(3.5rem,6.2vw,7rem);font-weight:520;letter-spacing:-.058em;line-height:.98}.manifesto h2 em{color:var(--red)}.manifesto__body{display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:760px;margin:64px 0 110px auto}.manifesto__body p{margin:0;color:#626b67}.manifesto__body p:first-child{color:var(--ink);font-size:1.12rem;font-weight:600}.marquee{overflow:hidden;padding:21px 0;background:var(--red);color:#fff;white-space:nowrap}.marquee div{width:max-content;font-size:.72rem;font-weight:800;letter-spacing:.16em;animation:marquee 28s linear infinite}.marquee span{padding:0 30px}@keyframes marquee{to{transform:translateX(-50%)}}
.atelier{padding:145px 0;background:#fff}.section-head{display:grid;grid-template-columns:170px 1fr .55fr;gap:70px;align-items:end;margin-bottom:76px}.section-head h2{margin:0;font-size:clamp(3rem,5.5vw,6.3rem);font-weight:520;letter-spacing:-.055em;line-height:.92}.section-head>p:last-child{margin:0;color:#6d7672}.expertise{display:grid;grid-template-columns:.42fr 1fr;min-height:680px;background:var(--ink)}.expertise__nav{display:flex;flex-direction:column}.expertise__nav button{flex:1;display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:15px;padding:26px 30px;color:rgba(255,255,255,.55);background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.12);text-align:left;font-size:1rem;cursor:pointer;transition:.25s}.expertise__nav button span{font-size:.6rem;letter-spacing:.12em}.expertise__nav button i{font-style:normal;opacity:0;transform:translate(-5px,5px);transition:.25s}.expertise__nav button:hover,.expertise__nav button.is-active{color:#fff;background:var(--red)}.expertise__nav button.is-active i,.expertise__nav button:hover i{opacity:1;transform:none}.expertise__stage{position:relative;overflow:hidden}.expertise__stage>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transform:scale(1.035);transition:opacity .55s,transform .8s}.expertise__stage>img.is-active{opacity:1;transform:scale(1)}.expertise__stage::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(15,19,18,.83),transparent 64%)}.expertise__description{position:absolute;z-index:2;left:45px;right:45px;bottom:42px;color:#fff}.expertise__description span{font-size:.6rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.expertise__description h3{margin:8px 0;font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.04em}.expertise__description p{max-width:660px;margin:0;color:rgba(255,255,255,.72)}
.case{display:grid;grid-template-columns:57% 43%;min-height:780px;background:var(--ink);color:#fff}.case__image{position:relative;min-height:700px}.case__image img{width:100%;height:100%;object-fit:cover}.case__image>div{position:absolute;inset:0;background:linear-gradient(90deg,transparent 60%,rgba(23,27,26,.7)),linear-gradient(0deg,rgba(0,0,0,.28),transparent 50%)}.case__content{display:flex;flex-direction:column;justify-content:center;padding:100px 6vw}.case__content .overline{margin-top:60px;color:#ffb5bd}.case h2{margin:0 0 32px;font-size:clamp(3.1rem,5vw,5.8rem);font-weight:500;letter-spacing:-.058em;line-height:.9}.case__content>p:not(.section-index):not(.overline){max-width:540px;color:rgba(255,255,255,.65)}.case__facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:42px 0}.case__facts div{padding-top:18px;border-top:1px solid rgba(255,255,255,.22)}.case__facts strong,.case__facts span{display:block}.case__facts strong{font-family:var(--serif);font-size:1.8rem;font-weight:400}.case__facts span{color:rgba(255,255,255,.53);font-size:.62rem;text-transform:uppercase;letter-spacing:.09em}
.process{padding:145px 0;background:var(--paper)}.section-head--compact{grid-template-columns:170px 1fr;margin-bottom:62px}.process__list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process__list li{display:grid;grid-template-columns:80px 1fr auto;align-items:center;gap:30px;padding:33px 0;border-bottom:1px solid var(--line);transition:.25s}.process__list li:hover{padding-left:20px;background:rgba(255,255,255,.35)}.process__list>li>span{color:var(--red);font-size:.65rem;font-weight:800;letter-spacing:.12em}.process__list div{display:grid;grid-template-columns:.75fr 1fr;align-items:baseline;gap:50px}.process__list h3{margin:0;font-size:1.35rem}.process__list p{margin:0;color:#727a77}.process__list i{font-style:normal;font-size:1.4rem;color:var(--red)}
.portfolio{position:relative;padding:130px 0 160px;background:#fff;overflow:hidden}.portfolio__title{width:min(calc(100% - 80px),var(--wrap));margin:0 auto 60px}.portfolio__title span{font-size:.64rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.portfolio__title h2{margin:17px 0 0;font-size:clamp(3.6rem,6vw,7rem);font-weight:520;letter-spacing:-.06em;line-height:.88}.portfolio__grid{width:min(1500px,94%);margin:auto;display:grid;grid-template-columns:1.15fr .85fr;grid-template-rows:370px 450px;gap:22px}.portfolio__item{position:relative;margin:0;overflow:hidden}.portfolio__item--a{grid-row:1/3}.portfolio__item img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.portfolio__item:hover img{transform:scale(1.035)}.portfolio__item figcaption{position:absolute;left:0;bottom:0;padding:13px 17px;background:var(--paper);font-size:.65rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.portfolio__item figcaption span{margin-right:25px;color:var(--red)}
.fair{position:relative;padding:150px 0;background:var(--red);color:#fff;overflow:hidden}.fair__watermark{position:absolute;left:-.03em;bottom:-.17em;color:rgba(255,255,255,.075);font-size:16vw;font-weight:900;line-height:1;letter-spacing:-.07em}.fair__grid{position:relative;display:grid;grid-template-columns:1fr .85fr;gap:10vw;align-items:center}.fair__copy .overline{margin-top:55px}.fair h2{margin:0 0 28px;font-size:clamp(4rem,7vw,8rem);font-weight:500;letter-spacing:-.065em;line-height:.82}.fair__copy>p:not(.section-index):not(.overline){max-width:600px;color:rgba(255,255,255,.73)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:45px;min-height:56px;padding:14px 22px;border:1px solid var(--red);background:var(--red);color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase;cursor:pointer;transition:.2s}.button:hover{background:var(--red2);transform:translateY(-2px)}.button--paper{margin-top:28px;background:var(--paper);border-color:var(--paper);color:var(--ink)}.button--paper:hover{background:var(--ink);border-color:var(--ink);color:#fff}.ticket{position:relative;padding:34px 38px;background:var(--paper);color:var(--ink);box-shadow:22px 22px 0 rgba(23,27,26,.16);transform:rotate(1.4deg)}.ticket::before,.ticket::after{content:"";position:absolute;top:54%;width:34px;height:34px;border-radius:50%;background:var(--red)}.ticket::before{left:-17px}.ticket::after{right:-17px}.ticket__top{display:flex;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid var(--ink);font-size:.64rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.ticket__date{display:flex;align-items:center;gap:15px;padding:27px 0}.ticket__date strong{font-family:var(--serif);font-size:5rem;font-weight:400;line-height:.8}.ticket__date i{width:26px;height:2px;background:var(--red)}.ticket__date span{margin-left:auto;font-size:.7rem;font-weight:800;line-height:1.35;text-transform:uppercase}.ticket__place{display:flex;justify-content:space-between;align-items:end;padding:20px 0;border-top:1px dashed rgba(23,27,26,.34)}.ticket__place span{font-size:.68rem;text-transform:uppercase}.ticket__place strong{font-family:var(--serif);font-size:2.1rem;font-weight:400}.ticket__stand{display:grid;grid-template-columns:1fr auto 1fr auto;align-items:end;gap:10px;padding:20px 0;border-top:1px dashed rgba(23,27,26,.34)}.ticket__stand span{font-size:.62rem;text-transform:uppercase}.ticket__stand strong{color:var(--red);font-family:var(--serif);font-size:2.5rem;font-weight:400;line-height:.8}.ticket__hours{display:flex;justify-content:space-between;padding:19px 0;border-top:1px dashed rgba(23,27,26,.34);font-size:.63rem;font-weight:700}.ticket__hours p{margin:0}.ticket>a{display:flex;justify-content:space-between;padding-top:18px;border-top:1px solid var(--ink);font-size:.65rem;font-weight:800;letter-spacing:.09em;text-decoration:none;text-transform:uppercase}
.contact{padding:150px 0;background:var(--paper)}.contact__head{display:grid;grid-template-columns:180px 1fr;gap:70px;margin-bottom:80px}.contact__head h2{margin:0;font-size:clamp(4rem,7vw,8.2rem);font-weight:520;letter-spacing:-.067em;line-height:.84}.contact__head h2 em{color:var(--red)}.contact__grid{display:grid;grid-template-columns:.4fr 1fr;gap:7vw;align-items:start}.person{position:sticky;top:115px}.person__monogram{display:grid;place-items:center;width:100px;height:100px;margin-bottom:34px;border-radius:50%;background:var(--ink);color:#fff;font-family:var(--serif);font-size:2rem}.person .overline{margin-bottom:10px;color:var(--red)}.person h3{margin:0;font-size:2.1rem}.person>span{color:#747c79;font-size:.78rem}.person>p:not(.overline){margin:25px 0;color:#69716e}.person>a{display:flex;justify-content:space-between;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--red);font-weight:800;text-decoration:none}.person>a i{font-style:normal}.person dl{margin-top:42px}.person dl div{display:flex;justify-content:space-between;gap:20px;padding:8px 0}.person dt{color:#858d89;font-size:.64rem;text-transform:uppercase}.person dd{margin:0;font-size:.74rem;font-weight:700;text-align:right}.form-shell{padding:55px 60px;background:#fff;box-shadow:0 30px 90px rgba(29,36,33,.1)}.form-shell__intro{display:grid;grid-template-columns:.7fr 1fr;gap:40px;padding-bottom:34px;border-bottom:1px solid var(--line)}.form-shell__intro span{font-family:var(--serif);font-size:2.1rem}.form-shell__intro p{margin:0;color:#69716e}.form-shell form{display:grid;grid-template-columns:repeat(2,1fr);gap:28px 24px;margin-top:42px}.field{display:flex;flex-direction:column;gap:7px}.field--wide{grid-column:1/-1}.field label{font-size:.64rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.field input:not([type=checkbox]),.field select,.field textarea{width:100%;min-height:51px;padding:10px 1px;border:0;border-bottom:1px solid rgba(23,27,26,.36);border-radius:0;background:transparent;color:var(--ink);outline:none}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--red);box-shadow:0 1px 0 var(--red)}.field textarea::placeholder{color:#969d9a;font-size:.8rem}.privacy-check{display:grid;grid-template-columns:21px 1fr;gap:11px}.privacy-check input{width:19px;height:19px;margin:2px 0 0;accent-color:var(--red)}.privacy-check label{font-size:.72rem}.privacy-check a{color:var(--red);font-weight:800}.submit-row{display:flex;align-items:center;gap:24px}.submit-row small{max-width:250px;color:#858d89;font-size:.65rem}.honey{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.form-success{margin:28px 0;padding:22px;border-left:4px solid #2d7c55;background:#e9f4ed}.form-success p{margin:2px 0 0;color:#436150}
.footer{padding:75px 0 30px;background:var(--ink);color:#fff}.footer__top{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:70px;padding-bottom:48px;border-bottom:1px solid rgba(255,255,255,.15)}.footer__top img{width:245px;padding:7px 10px;background:#fff}.footer__top p{margin:0;color:rgba(255,255,255,.55)}.footer__top>a{font-size:.65rem;font-weight:800;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.footer__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:80px;padding:45px 0}.footer__grid span{display:block;margin-bottom:11px;color:rgba(255,255,255,.4);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase}.footer__grid p,.footer__grid a{display:block;margin:0;color:rgba(255,255,255,.7);font-size:.8rem;font-style:normal;text-decoration:none}.footer__grid a:hover{color:#fff}.footer__bottom{display:flex;justify-content:space-between;padding-top:22px;border-top:1px solid rgba(255,255,255,.12);color:rgba(255,255,255,.35);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase}.footer__bottom i{display:inline-block;width:8px;height:8px;margin-left:9px;background:linear-gradient(90deg,#17984c 0 33%,#fff 33% 66%,#d51f32 66%)}.mobile-bar{display:none}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.is-visible{opacity:1;transform:none}
@media(max-width:1120px){.header{grid-template-columns:230px 1fr auto;padding-inline:24px}.header__fair{display:none}.header__nav{gap:22px}.hero{grid-template-columns:48% 52%}.hero__copy{padding-left:7vw}.hero__statement{padding-left:15%}.section-head{grid-template-columns:120px 1fr}.section-head>p:last-child{grid-column:2}.expertise{grid-template-columns:.5fr 1fr}.case{grid-template-columns:52% 48%}.contact__grid{grid-template-columns:.48fr 1fr}.form-shell{padding:45px}}
@media(max-width:960px){.wrap{width:min(calc(100% - 44px),var(--wrap))}.header{grid-template-columns:1fr auto auto;min-height:78px}.header.is-scrolled{min-height:70px}.header__brand{width:190px}.header__nav{position:fixed;inset:78px 0 auto;height:calc(100svh - 78px);display:flex;flex-direction:column;justify-content:center;align-items:center;gap:28px;padding:40px;background:var(--paper);color:var(--ink);visibility:hidden;transform:translateX(100%);transition:.35s}.header__nav.is-open{visibility:visible;transform:none}.header__nav a{font-family:var(--serif);font-size:2.6rem;font-weight:400;letter-spacing:-.03em;text-transform:none}.header__contact{margin-left:auto}.header__menu{display:grid;grid-template-columns:auto 24px;gap:4px 12px;align-items:center;margin-left:12px;padding:10px;cursor:pointer}.header__menu span{grid-row:1/3;font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.header__menu i{display:block;width:24px;height:2px;background:currentColor;transition:.25s}.header__menu[aria-expanded=true] i:first-of-type{transform:translateY(3px) rotate(45deg)}.header__menu[aria-expanded=true] i:last-of-type{transform:translateY(-3px) rotate(-45deg)}.hero{grid-template-columns:1fr;min-height:980px;height:auto}.hero__copy{min-height:650px;padding:150px 9vw 80px}.hero__visual{min-height:500px}.hero h1{font-size:clamp(4.7rem,12vw,7.2rem)}.hero__statement{max-width:600px;padding-left:22%}.hero__fair-card{width:300px}.hero__rail{display:none}.manifesto__grid,.contact__head{grid-template-columns:100px 1fr;gap:30px}.manifesto__body{margin-left:0}.section-head{grid-template-columns:100px 1fr;gap:30px}.expertise{grid-template-columns:1fr}.expertise__nav{display:grid;grid-template-columns:repeat(2,1fr)}.expertise__nav button{min-height:95px}.expertise__stage{min-height:590px}.case{grid-template-columns:1fr}.case__image{min-height:620px}.case__content{padding:90px 8vw}.portfolio__grid{grid-template-rows:330px 390px}.fair__grid{grid-template-columns:1fr;gap:70px}.ticket{max-width:650px}.contact__grid{grid-template-columns:1fr}.person{position:static;display:grid;grid-template-columns:100px 1fr;column-gap:28px}.person__monogram{grid-row:1/6}.person dl{grid-column:1/-1}.form-shell{padding:55px}.footer__top{grid-template-columns:1fr auto}.footer__top p{display:none}}
@media(max-width:680px){html{scroll-padding-top:72px}body{padding-bottom:60px}.wrap{width:min(calc(100% - 30px),var(--wrap))}.header{min-height:70px;padding-inline:14px}.header__brand{width:158px;padding:4px 7px}.header__contact{display:none}.header__nav{inset:70px 0 auto;height:calc(100svh - 70px)}.hero{min-height:0}.hero__copy{min-height:660px;padding:125px 24px 65px}.hero .kicker{margin-left:8px}.hero h1{margin:58px 0 40px;font-size:clamp(4rem,20vw,5.8rem);line-height:.8}.hero__statement{padding-left:0;border:0}.hero__statement p{font-size:.93rem}.hero__visual{min-height:520px}.hero__visual>img{object-position:58% center}.hero__signature{font-size:72vw}.hero__caption{left:18px;bottom:18px;max-width:150px}.hero__fair-card{width:205px;padding:22px 20px}.hero__fair-card strong{font-size:2.1rem}.manifesto{padding-top:90px}.manifesto__grid,.contact__head{display:block}.section-index{margin-bottom:35px}.manifesto h2{font-size:clamp(3rem,14vw,4.5rem)}.manifesto__body{grid-template-columns:1fr;gap:24px;margin:45px 0 75px}.marquee{padding:17px 0}.atelier,.process,.contact{padding:90px 0}.section-head,.section-head--compact{display:block;margin-bottom:45px}.section-head h2{font-size:clamp(3rem,14vw,4.5rem)}.section-head>p:last-child{margin-top:25px}.expertise{margin-inline:-15px}.expertise__nav{grid-template-columns:1fr 1fr}.expertise__nav button{grid-template-columns:26px 1fr;padding:18px 13px;font-size:.72rem}.expertise__nav button i{display:none}.expertise__stage{min-height:510px}.expertise__description{left:22px;right:22px;bottom:23px}.expertise__description h3{font-size:2.2rem}.expertise__description p{font-size:.8rem}.case__image{min-height:500px}.case__content{padding:70px 22px}.case__content .overline{margin-top:35px}.case h2{font-size:3.4rem}.case__facts{gap:10px}.case__facts strong{font-size:1.5rem}.case__facts span{font-size:.51rem}.process__list li{grid-template-columns:40px 1fr auto;gap:10px}.process__list div{grid-template-columns:1fr;gap:3px}.process__list p{font-size:.8rem}.portfolio{padding:88px 0}.portfolio__title{width:calc(100% - 30px);margin-bottom:40px}.portfolio__title h2{font-size:3.9rem}.portfolio__grid{display:flex;width:auto;margin-left:15px;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding-right:15px}.portfolio__item,.portfolio__item--a{min-width:86%;height:480px;scroll-snap-align:start}.fair{padding:90px 0}.fair h2{font-size:4.5rem}.ticket{padding:26px 25px;box-shadow:10px 10px 0 rgba(23,27,26,.15)}.ticket__date strong{font-size:3.9rem}.ticket__stand{grid-template-columns:1fr auto}.ticket__stand span:nth-of-type(2){margin-left:0}.ticket__hours{font-size:.54rem}.contact__head h2{font-size:4.1rem}.contact__grid{gap:60px}.person{display:block}.person__monogram{width:78px;height:78px}.form-shell{margin-inline:-15px;padding:35px 20px}.form-shell__intro{grid-template-columns:1fr;gap:12px}.form-shell form{grid-template-columns:1fr}.field--wide{grid-column:auto}.submit-row{align-items:flex-start;flex-direction:column}.footer{padding-top:55px}.footer__top{grid-template-columns:1fr auto;gap:20px}.footer__top img{width:175px}.footer__grid{grid-template-columns:1fr;gap:28px}.footer__bottom{align-items:flex-start;flex-direction:column}.mobile-bar{position:fixed;z-index:90;inset:auto 0 0;display:grid;grid-template-columns:.8fr 1.2fr;min-height:60px;box-shadow:0 -10px 30px rgba(0,0,0,.14)}.mobile-bar a{display:grid;place-items:center;background:var(--ink);color:#fff;font-size:.62rem;font-weight:800;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.mobile-bar a:last-child{background:var(--red)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition-duration:.01ms!important}.reveal{opacity:1;transform:none}}

/* Visual journey — dal progetto alla consegna */
.journey{padding:150px 0;background:#111514;color:#fff;overflow:hidden}.journey__head{display:grid;grid-template-columns:170px 1fr .55fr;gap:70px;align-items:end;margin-bottom:76px}.journey__head .overline{margin-bottom:24px;color:#ff9ba7}.journey__head h2{margin:0;font-size:clamp(3.4rem,5.8vw,6.7rem);font-weight:520;letter-spacing:-.06em;line-height:.88}.journey__head h2 em{color:#ffeff1;font-family:var(--serif);font-weight:400}.journey__head>p:last-child{margin:0;color:rgba(255,255,255,.58)}.journey__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.journey-card{position:relative;margin:0;background:#1a1f1d;border:1px solid rgba(255,255,255,.11);overflow:hidden}.journey-card--wide,.journey-card--delivery{grid-column:1/-1}.journey-card__media{position:relative;aspect-ratio:4/5;background:#090b0a;overflow:hidden}.journey-card--wide .journey-card__media{aspect-ratio:16/8.2}.journey-card--delivery .journey-card__media{aspect-ratio:16/7.2}.journey-card__media img,.journey-card__media video{display:block;width:100%;height:100%;object-fit:cover}.journey-card__media--plan{background:#f2efe8}.journey-card__media--plan img{box-sizing:border-box;object-fit:contain;object-position:center;padding:18px;filter:contrast(1.03)}.journey-card__media--cinema video{object-position:center}.journey-card--delivery .journey-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,13,12,.46),transparent 45%)}.journey-card__copy{display:grid;grid-template-columns:64px 1fr;gap:25px;padding:28px 30px 32px}.journey-card__copy>span{color:var(--red);font-size:.65rem;font-weight:800;letter-spacing:.14em}.journey-card__copy h3{margin:0 0 8px;font-size:1.45rem;letter-spacing:-.02em}.journey-card__copy p{max-width:680px;margin:0;color:rgba(255,255,255,.58);font-size:.86rem}.journey-card__toggle{position:absolute;right:20px;bottom:20px;z-index:3;display:grid;place-items:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.48);border-radius:50%;background:rgba(15,19,18,.68);color:#fff;cursor:pointer;backdrop-filter:blur(9px);transition:.2s}.journey-card__toggle:hover{background:var(--red);border-color:var(--red);transform:scale(1.05)}.journey-card__toggle span{font-size:.82rem;transform:translateX(1px)}.journey-card__toggle.is-playing span{transform:none}.journey-card::after{content:"";position:absolute;left:0;top:0;width:0;height:3px;background:var(--red);transition:width .65s ease}.journey-card:hover::after{width:100%}

@media(max-width:1120px){.journey__head{grid-template-columns:120px 1fr}.journey__head>p:last-child{grid-column:2}.journey-card--wide .journey-card__media{aspect-ratio:16/9}}
@media(max-width:680px){.journey{padding:90px 0}.journey__head{display:block;margin-bottom:45px}.journey__head h2{font-size:clamp(3rem,14vw,4.5rem)}.journey__head>p:last-child{margin-top:28px}.journey__grid{display:flex;width:auto;margin-right:-15px;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;padding:0 15px 18px 0}.journey-card,.journey-card--wide,.journey-card--delivery{flex:0 0 86%;scroll-snap-align:start}.journey-card__media,.journey-card--wide .journey-card__media,.journey-card--delivery .journey-card__media{aspect-ratio:4/5}.journey-card__media--plan img{object-position:center;padding:8px}.journey-card--delivery .journey-card__media{aspect-ratio:4/5}.journey-card__copy{grid-template-columns:38px 1fr;gap:10px;padding:22px 20px 25px}.journey-card__copy h3{font-size:1.25rem}.journey-card__copy p{font-size:.78rem}.journey-card__toggle{right:15px;bottom:15px;width:46px;height:46px}}

/* PharmExpo accreditation CTA */
.fair__actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:30px}.fair__actions .button{margin-top:0}.button--accreditation{border-color:rgba(255,255,255,.62);background:transparent;color:#fff}.button--accreditation:hover{border-color:#fff;background:#fff;color:var(--red)}.fair__copy>p.fair__accreditation-note:not(.section-index):not(.overline){max-width:640px;margin:17px 0 0;color:rgba(255,255,255,.68);font-size:.76rem}.fair__accreditation-note strong{color:#fff}

@media(max-width:680px){.fair__actions{align-items:stretch;flex-direction:column}.fair__actions .button{width:100%}.fair__copy>p.fair__accreditation-note:not(.section-index):not(.overline){font-size:.7rem;line-height:1.55}}

/* Inaugurazione — conclusione del percorso */
.journey-card--opening{grid-column:1/-1}.journey-card--opening .journey-card__media{aspect-ratio:16/7.2}.journey-card--opening .journey-card__media img{object-position:center 72%;filter:saturate(.92) contrast(1.04)}.journey-card--opening .journey-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,13,12,.5),transparent 48%)}
@media(max-width:680px){.journey-card--opening{flex:0 0 86%;scroll-snap-align:start}.journey-card--opening .journey-card__media{aspect-ratio:4/5}.journey-card--opening .journey-card__media img{object-position:center}}
