/* Falconeri: a retail story framed by the Campo identity, with authentic project imagery. */
.f21-case{--f21-space:clamp(78px,6vw,135px)}
.f21-case main h2{font-size:clamp(34px,2.65vw,58px);line-height:1.12;letter-spacing:-.048em;font-weight:500}
.f21-opening{padding-block:48px 25px}
.f21-opening-copy{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:end;margin-bottom:42px}
.f21-opening .eyebrow{color:#a7b1ff;margin-bottom:25px}
.f21-opening h1{font-size:clamp(45px,3.55vw,84px);line-height:1.07;font-weight:500;letter-spacing:-.06em;margin:0}
.f21-opening h1 em{color:#a7b1ff;font-style:normal}
.f21-intro{font-size:clamp(18px,1.2vw,24px);line-height:1.6;color:#d4d5dd}
.f21-image{margin:0;min-width:0}
.f21-image>a{position:relative;display:block;overflow:hidden;border-radius:12px;border:1px solid #ffffff20}
.f21-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.2,1)}
.f21-image>a:hover img{transform:scale(1.025)}
.f21-image figcaption{font-size:14px;color:#b8bbc4;line-height:1.5;margin-top:14px}
.f21-panorama>a{width:100%;aspect-ratio:2.7}
.f21-panorama img{object-position:center 49%}
.f21-case .m20-facts{margin-top:24px}
.f21-section{margin-top:var(--f21-space)}
.f21-context{display:grid;grid-template-columns:1fr 1.05fr;gap:10%;align-items:start}
.f21-copy p,.f21-section-heading>p,.f21-design>div>p:not(.eyebrow){color:#d4d5dd;font-size:clamp(17px,1.08vw,21px);line-height:1.7}
.f21-copy p+p{margin-top:22px}
.f21-section-heading{display:flex;gap:8%;align-items:end;justify-content:space-between;margin-bottom:45px}
.f21-section-heading>p{width:43%;max-width:660px}
.f21-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:26px;margin-bottom:50px}
.f21-steps article{position:relative;min-width:0;border-top:1px solid #ffffff36;padding:25px 12px 0 0;transition:border-color .25s}
.f21-steps article:hover{border-color:#d7ea40}
.f21-step-number{display:block;color:#a7b1ff;font-size:16px;font-weight:600;margin-bottom:22px}
.f21-steps h3{font-size:clamp(26px,1.75vw,36px);font-weight:500;letter-spacing:-.04em;margin-bottom:13px}
.f21-steps p{font-size:clamp(16px,1vw,20px);line-height:1.65;color:#d4d5dd}
.f21-scenes{display:grid;grid-template-columns:.82fr 1.18fr;gap:28px;align-items:start}
.f21-scenes .f21-image>a{aspect-ratio:1.58}
.f21-scenes .f21-image:nth-child(2){margin-top:80px}
.f21-design{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}
.f21-design h2{margin-bottom:30px}
.f21-platform{padding:clamp(30px,3vw,65px);position:relative;isolation:isolate;border-radius:14px;overflow:hidden;background:#a7b1ff url('../campo-ottica-blu-v18.webp') center/cover;color:#161616}
.f21-platform:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#f1f2ffed,#f1f2ffcc 60%,#f1f2ff70);z-index:-1}
.f21-platform .eyebrow{font-size:13px;letter-spacing:.09em;color:#161616;border-left:3px solid #d7ea40;padding-left:14px}
.f21-platform h3{font-size:clamp(28px,2.1vw,43px);line-height:1.16;font-weight:500;letter-spacing:-.045em;margin-block:26px}
.f21-design .f21-platform>p:not(.eyebrow){color:#30323b;font-size:clamp(16px,1.02vw,20px)}
.f21-retail{padding-block:45px 50px;border-block:1px solid #ffffff30}
.f21-cities{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:50px}
.f21-cities>div{padding-left:22px;border-left:1px solid #a7b1ff}
.f21-cities dt{font-size:clamp(27px,2vw,41px);letter-spacing:-.04em;font-weight:500}
.f21-cities dd{font-size:16px;color:#b8bbc4;margin-top:10px}
.f21-contact{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1.4fr 1fr;gap:8%;align-items:end;margin-top:var(--f21-space);padding:clamp(38px,4vw,80px);border-radius:16px;background:#26232b url('../campo-piani-ambra-v18.webp') center/cover}
.f21-contact:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#161616ed,#161616a0);z-index:-1}
.f21-contact .eyebrow{color:#a7b1ff}
.f21-contact h2{margin-block:24px}
.f21-contact p:not(.eyebrow){font-size:clamp(17px,1.06vw,21px);line-height:1.65;color:#e0e1e9;max-width:670px}
.f21-contact .line-cta{font-size:clamp(15px,1vw,19px);max-width:100%;color:#fff;border-color:#ffffff70;gap:20px}
.f21-contact .line-cta svg{width:44px;height:44px;padding:10px;background:#d7ea40;border-radius:50%;color:#161616;flex:none}
.f21-back{display:flex;justify-content:flex-end;padding-block:32px 0}
.f21-back a{display:flex;align-items:center;gap:24px;font-size:16px}
.f21-back svg{width:24px;height:24px;color:#a7b1ff}
@media(min-width:2000px){.f21-image figcaption{font-size:16px}.f21-cities dd{font-size:19px}.f21-back a{font-size:19px}.f21-platform .eyebrow{font-size:15px}.f21-step-number{font-size:18px}}
@media(max-width:1100px){.f21-opening-copy{grid-template-columns:1.3fr 1fr;gap:5%}.f21-opening h1{font-size:47px}.f21-opening .m20-jump{width:100%}.f21-context{gap:6%}.f21-scenes .f21-image:nth-child(2){margin-top:50px}.f21-design{gap:5%}.f21-contact{gap:5%;grid-template-columns:1.2fr 1fr}.f21-contact .line-cta{font-size:14px}}
@media(max-width:800px){.f21-opening-copy,.f21-context,.f21-design{grid-template-columns:1fr;gap:28px}.f21-opening{padding-top:32px}.f21-opening h1{font-size:clamp(40px,6.2vw,59px)}.f21-intro{font-size:18px;max-width:620px}.f21-opening .m20-jump{max-width:280px}.f21-panorama>a{aspect-ratio:1.8}.f21-section-heading{display:block;margin-bottom:30px}.f21-section-heading>p{width:auto;max-width:620px;margin-top:24px}.f21-steps{grid-template-columns:1fr 1fr;gap:35px 26px}.f21-scenes{gap:20px}.f21-scenes .f21-image:nth-child(2){margin-top:40px}.f21-cities{gap:20px}.f21-cities>div{padding-left:15px}.f21-cities dt{font-size:27px}.f21-cities dd{font-size:14px}.f21-contact{display:block}.f21-contact .line-cta{margin-top:30px;max-width:350px}.f21-platform{max-width:680px}.f21-back a{font-size:15px}}
@media(max-width:520px){.f21-case{--f21-space:68px}.f21-case main h2{font-size:33px}.f21-opening h1{font-size:40px;letter-spacing:-.057em}.f21-opening h1 br{display:none}.f21-opening h1 em{display:block;margin-top:7px}.f21-intro{font-size:17px}.f21-opening-copy{margin-bottom:28px}.f21-panorama>a{aspect-ratio:1.4}.f21-panorama img{object-position:57% center}.f21-image figcaption{font-size:12px}.f21-copy p,.f21-section-heading>p,.f21-design>div>p:not(.eyebrow){font-size:16px}.f21-steps{gap:30px 20px;margin-bottom:32px}.f21-step-number{font-size:14px;margin-bottom:13px}.f21-steps h3{font-size:25px}.f21-steps p{font-size:15px}.f21-scenes{grid-template-columns:1fr;gap:28px}.f21-scenes .f21-image:nth-child(2){margin-top:0}.f21-scenes .f21-image>a{aspect-ratio:1.6}.f21-platform{padding:28px}.f21-platform h3{font-size:30px}.f21-platform h3 br{display:none}.f21-retail{padding-block:35px}.f21-cities{grid-template-columns:1fr 1fr;gap:30px;margin-top:32px}.f21-cities dt{font-size:29px}.f21-contact{padding:33px 25px}.f21-contact h2 br{display:none}.f21-contact p:not(.eyebrow){font-size:16px}.f21-back{padding-top:28px}}
@media(prefers-reduced-motion:reduce){.f21-image img,.f21-steps article{transition:none}.f21-image>a:hover img{transform:none}}
