:root{font-family:Inter,Arial,sans-serif;color:#202322;background:#f7f5ef;font-synthesis:none;text-rendering:optimizeLegibility;scroll-behavior:smooth}
*{box-sizing:border-box}body{margin:0;line-height:1.55}a{color:inherit}img,video{display:block;max-width:100%}.wrap{width:min(1120px,calc(100% - 40px));margin-inline:auto}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px max(24px,calc((100vw - 1120px)/2));background:#f7f5ef}.brand{display:flex;align-items:center;gap:12px;text-decoration:none}.brand img{width:44px;height:44px;object-fit:contain}.brand strong{display:block;letter-spacing:.13em;font-size:12px}.brand small{display:block;color:#68706d;font-size:12px}.nav{display:flex;gap:22px;font-size:13px}.nav a{text-decoration:none}.nav a:hover,.text-link:hover{text-decoration:underline}
.hero{position:relative;min-height:600px;display:grid;align-items:end;color:#fff;background:#26302d;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,24,22,.78),rgba(15,24,22,.24) 70%),linear-gradient(0deg,rgba(10,15,14,.4),transparent 45%)}.hero-copy{position:relative;z-index:1;width:min(1120px,calc(100% - 40px));margin:0 auto;padding:90px 0 82px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700}.hero h1{font-family:Georgia,serif;font-size:clamp(48px,8vw,88px);font-weight:400;line-height:.98;max-width:760px;margin:20px 0}.hero h1 em,h2 em{font-weight:400}.lead{font-size:19px;max-width:590px;color:#f2f1ec}.hero .eyebrow{color:#e8d5b0}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 20px;border:1px solid currentColor;border-radius:2px;text-decoration:none;font-size:14px;font-weight:700}.button.light{color:#fff}.button.dark{background:#26302d;color:#fff;border-color:#26302d}.button:hover{transform:translateY(-1px)}
.status{padding:14px 20px;text-align:center;background:#ebe6d8;color:#48524e;font-size:12px;letter-spacing:.05em}.section{padding:88px 0}.section h2{font:400 clamp(34px,5vw,54px)/1.05 Georgia,serif;margin:12px 0 20px}.section p{max-width:750px}.eyebrow{color:#788076}.intro{max-width:850px}.intro .lead{color:#454d49;font-size:20px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.card{background:#fff;padding:26px;border-top:3px solid var(--accent,#a56d4b);min-height:200px}.card h3{font:400 24px Georgia,serif;margin:4px 0 12px}.card p{margin:0;color:#535b57;font-size:15px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}.gallery figure{margin:0}.gallery img{width:100%;height:260px;object-fit:cover}.gallery figcaption{font-size:12px;color:#626a65;padding-top:8px}.feature{background:#ece9e0}.video-box{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}.video-box video{width:100%;background:#111;aspect-ratio:16/9}.video-box h2{margin-top:0}.video-box .video-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.note{font-size:13px;color:#69716d}.network{background:#27312e;color:#f8f6f0}.network .eyebrow{color:#d7c49d}.network h2{color:#fff}.network p{color:#e2e4df}.network-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.network .button{color:#fff}.network .button:first-child{background:#f7f5ef;color:#27312e}.footer{padding:30px 0 38px;font-size:12px;color:#626a65}.footer-row{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid #d9d8d1;padding-top:20px}.footer a{color:#394943}.footer p{margin:0}.project-line{margin:24px 0;padding:18px 20px;border-left:3px solid var(--accent,#a56d4b);background:#fff;color:#4b5550}
@media(max-width:760px){.topbar{padding:12px 18px}.nav{display:none}.hero{min-height:540px}.hero-copy{padding:70px 0 58px}.grid{grid-template-columns:1fr}.gallery{grid-template-columns:1fr 1fr}.gallery figure:last-child:nth-child(odd){grid-column:1/-1}.gallery img{height:210px}.video-box{grid-template-columns:1fr;gap:24px}.section{padding:64px 0}.footer-row{align-items:flex-start;flex-direction:column}}
.hero-tagline{font:italic 22px Georgia,serif;color:#f2dbad;margin:0 0 14px;max-width:650px}.slide-reel{padding-top:54px;padding-bottom:22px}.slide-reel h2{font-size:clamp(30px,4vw,44px);margin:10px 0 24px}.slide-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 14px;overscroll-behavior-inline:contain}.slide-track figure{flex:0 0 min(70vw,680px);margin:0;scroll-snap-align:start;background:#e9e5da}.slide-track img{width:100%;aspect-ratio:16/9;object-fit:cover}.slide-track figcaption{padding:10px 14px 12px;font:17px Georgia,serif;color:#45514b}.linked-services{background:#ebe7dc;padding-top:68px;padding-bottom:68px}.linked-services h2{margin-bottom:28px}.service-feature{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(300px,1.1fr);gap:30px;align-items:center;background:#f8f6f0;padding:20px}.service-images{display:grid;grid-template-columns:1fr 1fr;gap:10px}.service-images img{width:100%;aspect-ratio:16/11;object-fit:cover}.service-feature h3,.service-card h3{font:400 25px/1.15 Georgia,serif;margin:0 0 12px}.service-feature p,.service-card p{color:#535b57}.text-link{font-weight:700;text-underline-offset:4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{background:#f8f6f0;overflow:hidden}.service-card>img{width:100%;aspect-ratio:16/10;object-fit:cover}.service-card>div{padding:20px}.service-card h3{font-size:22px}.service-card p{font-size:15px;margin:0 0 12px}.linked-services>.wrap>.note,.linked-services .note{margin-top:22px}
@media(max-width:760px){.slide-reel{padding-top:40px}.slide-track figure{flex-basis:86vw}.service-feature,.service-grid{grid-template-columns:1fr}.service-images img{aspect-ratio:16/10}.service-feature{padding:16px;gap:18px}.hero-tagline{font-size:19px}}

/* Marchio ombrello comune e identità cromatica della singola dimora. */
.topbar{background:#26364a;color:#f8f5eb}.brand .fenice-wordmark{width:190px;height:auto;object-fit:contain}.brand strong{color:var(--accent,#c5a246)}.brand small{color:#e4e5e2}.nav a{color:#f8f5eb}.nav a:hover{color:var(--accent,#c5a246)}
@media(max-width:760px){.topbar{flex-wrap:wrap}.brand .fenice-wordmark{width:154px}.nav{display:flex;order:2;width:100%;gap:16px;overflow-x:auto;white-space:nowrap;font-size:12px;padding:4px 0 2px}.nav a{flex:0 0 auto}}

/* Fascia allineata alla casetta e marchio quadrato, 10/11/2026. */
.footer-seal{display:block;flex:0 0 106px}.footer-seal img{display:block;width:106px;height:106px;border-radius:8px}.footer-row{gap:28px;flex-wrap:wrap}@media(max-width:720px){.footer-seal{margin:0 auto 26px;width:92px}.footer-seal img{width:92px;height:92px}}

.topbar{background:#171717;color:#fff}.topbar .nav a{color:#fff}.brand-logo{display:block;width:380px;height:auto;max-width:100%}.candidate-invite{text-align:center}.candidate-invite .lead{max-width:800px;margin:25px auto}.candidate-invite .button{margin-top:18px}@media(max-width:1050px){.brand-logo{width:340px}.topbar{flex-wrap:wrap}}@media(max-width:720px){.brand-logo{width:min(400px,calc(100vw - 40px))}}

/* Il vecchio selettore .brand img non deve ridurre il marchio completo. */
.topbar .brand .brand-logo{display:block;width:380px;height:auto;max-width:100%;object-fit:contain}
@media(max-width:1050px){.topbar .brand .brand-logo{width:340px}}
@media(max-width:720px){.topbar .brand .brand-logo{width:min(400px,calc(100vw - 40px))}}

/* Residenti: fotografia e invito, con un solo ordine di lettura. */
.candidate-invite{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,5vw,64px);align-items:center;text-align:left}.candidate-invite .lead{margin:18px 0;color:#454d49;font-size:20px;line-height:1.55}.resident-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center;border-radius:3px}.resident-copy p{max-width:620px}.gallery img{height:auto;aspect-ratio:16/10}.slide-track img{display:block}.hero>img{object-position:center}
@media(max-width:760px){.candidate-invite{grid-template-columns:1fr}.resident-photo img{aspect-ratio:3/2}.resident-copy h2{font-size:40px}.gallery{grid-template-columns:1fr}.gallery img{aspect-ratio:16/9}}

.resident-photo{align-self:start;position:sticky;top:130px}.candidate-invite{align-items:start}.network-residents{background:#ebe7dc}.network-residents>.wrap>.lead{color:#454d49;font-size:20px;line-height:1.55}.resident-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:32px}.resident-benefits article{border-top:1px solid #b9aa87;padding-top:20px}.resident-benefits span{font-size:12px;letter-spacing:.12em;color:#756644}.resident-benefits h3{font:400 28px/1.2 Georgia,serif}.resident-benefits a{font-weight:700;text-underline-offset:4px}.candidate-invite h2{font-size:clamp(46px,6vw,72px)}@media(max-width:760px){.resident-photo{position:static}.resident-benefits{grid-template-columns:1fr;gap:22px}}

/* Larger shared video presentation across the residence sites */
.video-box{grid-template-columns:1fr}
.video-box video{width:100%;max-height:86svh;aspect-ratio:16/9}

.language-switch{display:flex;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}.language-switch a{display:flex;align-items:center;gap:6px;padding:7px 8px;color:inherit;text-decoration:none;border-bottom:2px solid transparent;font-size:14px;font-weight:600;letter-spacing:.04em}.language-switch a[aria-current=page]{border-bottom-color:currentColor}.language-switch .flag{font-size:24px;line-height:1}.language-switch span:last-child{font-size:13px}
@media(max-width:1050px){.language-switch{justify-content:center;width:100%}}
@media(max-width:760px){.language-switch{width:auto;margin-left:auto}.language-switch .flag{font-size:23px}.language-switch a{padding:7px 5px}}

.language-switch{display:flex;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}.language-switch a{display:flex;align-items:center;gap:6px;padding:7px 8px;color:inherit;text-decoration:none;border-bottom:2px solid transparent;font-size:14px;font-weight:600;letter-spacing:.04em}.language-switch a[aria-current=page]{border-bottom-color:currentColor}.language-switch .flag{font-size:24px;line-height:1}.language-switch span:last-child{font-size:13px}
@media(max-width:1050px){.language-switch{justify-content:center;width:100%}}
@media(max-width:760px){.language-switch{width:auto;margin-left:auto}.language-switch .flag{font-size:23px}.language-switch a{padding:7px 5px}}

.language-switch{display:flex;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}.language-switch a{display:flex;align-items:center;gap:6px;padding:7px 8px;color:inherit;text-decoration:none;border-bottom:2px solid transparent;font-size:14px;font-weight:600;letter-spacing:.04em}.language-switch a[aria-current=page]{border-bottom-color:currentColor}.language-switch .flag{font-size:24px;line-height:1}.language-switch span:last-child{font-size:13px}
@media(max-width:1050px){.language-switch{justify-content:center;width:100%}}
@media(max-width:760px){.language-switch{width:auto;margin-left:auto}.language-switch .flag{font-size:23px}.language-switch a{padding:7px 5px}}

.language-switch{display:flex;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}.language-switch a{display:flex;align-items:center;gap:6px;padding:7px 8px;color:inherit;text-decoration:none;border-bottom:2px solid transparent;font-size:14px;font-weight:600;letter-spacing:.04em}.language-switch a[aria-current=page]{border-bottom-color:currentColor}.language-switch .flag{font-size:24px;line-height:1}.language-switch span:last-child{font-size:13px}
@media(max-width:1050px){.language-switch{justify-content:center;width:100%}}
@media(max-width:760px){.language-switch{width:auto;margin-left:auto}.language-switch .flag{font-size:23px}.language-switch a{padding:7px 5px}}

.language-switch{display:flex;align-items:center;gap:12px;flex:0 0 auto;white-space:nowrap}.language-switch a{display:flex;align-items:center;gap:6px;padding:7px 8px;color:inherit;text-decoration:none;border-bottom:2px solid transparent;font-size:14px;font-weight:600;letter-spacing:.04em}.language-switch a[aria-current=page]{border-bottom-color:currentColor}.language-switch .flag{font-size:24px;line-height:1}.language-switch span:last-child{font-size:13px}
@media(max-width:1050px){.language-switch{justify-content:center;width:100%}}
@media(max-width:760px){.language-switch{width:auto;margin-left:auto}.language-switch .flag{font-size:23px}.language-switch a{padding:7px 5px}}
