:root{font-family:"Helvetica Neue Condensed","Abadi MT Condensed","Arial Narrow","Helvetica Neue",Arial,sans-serif;color:#002245;background:#ffffff;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:inherit}button,a{outline-offset:4px}.draft{background:#dbe8ef;text-align:center;font-size:.85rem;padding:.55rem 1rem;color:#002245}header{display:flex;align-items:center;justify-content:space-between;padding:1.3rem max(5vw,1rem);background:#ffffff}.brand{text-decoration:none;font-size:1.75rem;font-weight:800;letter-spacing:-.06em}.brand span{color:#635131}.brand small{display:block;font-size:.7rem;letter-spacing:.02em;font-weight:500}nav{display:flex;gap:2rem}nav a{text-decoration:none;font-size:.9rem}.hero{min-height:650px;display:grid;grid-template-columns:1.2fr .8fr;background:#002245;color:white}.hero-copy{padding:clamp(4rem,8vw,9rem) max(5vw,1rem)}.eyebrow{font-size:.78rem;letter-spacing:.16em;font-weight:750;color:#635131}.hero h1{font-size:clamp(2.7rem,5.3vw,5.8rem);line-height:1.04;letter-spacing:-.055em;margin:1.4rem 0 2rem;max-width:950px}.hero h1 em{font-style:normal;color:#9ec4dc}.lead{font-size:1.25rem;line-height:1.55;max-width:680px;color:#e1eaed}.button{display:inline-block;background:#b7d0df;color:#002245;text-decoration:none;font-weight:750;padding:1rem 1.5rem;border-radius:3px;margin-top:1.7rem}.button:hover{background:#dbe8ef}.note{font-size:.84rem;opacity:.75;margin-top:1.2rem}.hero-art{background:linear-gradient(145deg,#4a8ab1,#002245);padding:6vw;display:flex;align-items:center}.frame{border:1px solid #93b1b7;width:100%;height:min(480px,65vh);padding:2rem;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(3deg)}.art-kicker,.art-bottom{font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;color:#c6d9dc}.frame strong{font-size:clamp(2rem,3vw,3.8rem);line-height:1.13;letter-spacing:-.04em}.art-line{height:2px;background:#b7d0df;width:65%}.intro,.areas,.process,.contact{padding:clamp(4rem,8vw,8rem) max(5vw,1rem)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.intro h2,.areas h2,.contact h2{font-size:clamp(2.5rem,4vw,4.6rem);line-height:1.1;letter-spacing:-.05em;margin:1rem 0}.intro p:not(.eyebrow),.contact>p:not(.eyebrow){font-size:1.22rem;line-height:1.65}.areas{background:#e7f0f5}.areas h2{max-width:850px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:3rem}.cards article{background:white;padding:2.2rem;min-height:310px}.cards span{color:#635131;font-weight:700}.cards h3,.steps h3{font-size:1.55rem;margin:2rem 0 .8rem}.cards p,.steps p{line-height:1.6;color:#3f5962}.fine{font-size:.84rem;margin-top:2rem}.process{background:#fff}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:4rem;margin-top:3rem}.steps b{border:1px solid #635131;border-radius:50%;display:grid;place-items:center;width:3rem;height:3rem;color:#635131}.contact{background:#002245;color:white;max-width:none}.contact h2{max-width:900px}.contact>p:not(.eyebrow){max-width:690px;color:#dce9ec}.contact-pending{border-left:3px solid #b7d0df;padding:.7rem 1rem;margin-top:2rem;color:#dce9ec}footer{display:grid;grid-template-columns:1fr 2fr 1.5fr;gap:3rem;background:#002245;color:#c9d8dd;padding:4rem max(5vw,1rem);font-size:.85rem;line-height:1.6}footer strong{color:white}footer a:hover{text-decoration:none}.legal{max-width:900px;margin:auto;padding:4rem 1.25rem 7rem}.legal h1{font-size:clamp(2.5rem,5vw,4rem)}.legal h2{margin-top:2.5rem}.legal p,.legal li{line-height:1.7}.legal .alert{background:#e7f0f5;padding:1.5rem;border-left:3px solid #b7d0df}@media(max-width:800px){header{align-items:flex-start;gap:1rem;flex-direction:column}nav{gap:1rem;flex-wrap:wrap}.hero{grid-template-columns:1fr}.hero-copy{padding:4rem 1.25rem}.hero-art{min-height:360px;padding:3rem}.frame{height:280px}.intro,.cards,.steps,footer{grid-template-columns:1fr}.intro{gap:1rem}.cards article{min-height:unset}.steps{gap:2rem}}

.brand{display:block;letter-spacing:normal}.brand img{display:block;width:220px;height:auto}.brand small{font-size:.875rem;margin-top:.5rem;color:#635131}.hero .eyebrow,.contact .eyebrow{color:#b7d0df}.eyebrow{font-size:.875rem}.note,.fine,footer{font-size:.875rem}.hero-art{background:#4a8ab1}.frame{transform:none;border-color:#dbe8ef}.art-kicker,.art-bottom{font-size:.875rem;color:white}.frame strong{color:white}.cards article{border-top:3px solid #635131}.button{color:#002245} .legal .alert{border-color:#635131} @media(max-width:800px){.brand img{width:190px}}

.hero{grid-template-columns:1.15fr .85fr;background:#002245}.hero-copy{padding:5rem max(5vw,1.25rem);position:relative;z-index:1}.hero h1{font-size:clamp(2.7rem,4.6vw,5rem);letter-spacing:-.035em;line-height:1.1}.hero-art{position:relative;isolation:isolate;align-items:flex-end;justify-content:center;padding:3rem 1rem 0;min-height:640px;overflow:hidden;background:#002245}.hero-art:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#002245 0%,rgba(0,34,69,.25) 50%),url('/assets/architettura.jpeg') center/cover}.portrait{width:100%;max-width:530px;height:620px;object-fit:contain;object-position:center bottom;display:block}.portrait-caption{position:absolute;bottom:1.7rem;right:1.5rem;background:#002245;padding:1rem 1.5rem;border-left:3px solid #b7d0df}.portrait-caption strong{display:block;font-size:1.35rem}.portrait-caption span{font-size:.875rem;color:#b7d0df}.contact-actions{display:flex;gap:2rem;align-items:center;flex-wrap:wrap}.contact-phone{margin-top:1.7rem;font-size:1.2rem}.contact-address{font-size:1rem!important;margin-top:2rem}@media(max-width:800px){.hero{grid-template-columns:1fr}.hero-copy{padding:3rem 1.25rem 2rem}.hero-art{min-height:460px;padding-top:1rem}.portrait{height:460px;max-width:390px}.portrait-caption{right:1rem;bottom:1rem}.hero h1{font-size:2.7rem}}

.contact-form{max-width:820px;background:white;color:#002245;padding:2rem;margin:2rem 0}.contact-form h3{font-size:1.8rem;margin:0 0 1rem}.contact-form fieldset{border:0;padding:0;margin:0;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:block;font-size:1rem;margin-bottom:1rem}.contact-form input,.contact-form select,.contact-form textarea{display:block;width:100%;font:inherit;color:#002245;background:#f4f8fa;border:1px solid #8198aa;border-radius:3px;padding:.8rem;margin-top:.4rem}.contact-form textarea{resize:vertical}.contact-form .privacy-check{display:flex;gap:.75rem;align-items:flex-start;line-height:1.5}.privacy-check input{width:1.2rem;flex-shrink:0}.form-note{font-size:.875rem;line-height:1.5}.form-status{padding:1rem;background:#e7f0f5;line-height:1.5}.contact-form button{border:0;font:inherit;cursor:pointer}.contact-form fieldset:disabled{opacity:.65}.contact-form button:disabled{cursor:not-allowed}@media(max-width:600px){.form-grid{grid-template-columns:1fr}.contact-form{padding:1.25rem}}

/* Continuous editorial layout */
.landing{background:#fff}.landing header{max-width:1400px;margin:auto;padding:1.25rem 5vw}.landing .hero{position:relative;isolation:isolate;max-width:1400px;margin:auto;min-height:650px;background:transparent;color:#002245;grid-template-columns:1.1fr .9fr;overflow:hidden}.landing .hero:before{content:"";position:absolute;inset:0 0 0 56%;z-index:-2;background:linear-gradient(0deg,#fff 0%,rgba(255,255,255,.05) 60%),url('/assets/architettura.jpeg') center/cover;border-radius:160px 0 0 0}.landing .hero-copy{padding:5rem 3rem 5rem 5vw}.landing .hero h1{font-size:clamp(2.8rem,4.5vw,4.8rem);max-width:780px;letter-spacing:-.045em;line-height:1.08}.landing .hero h1 em{color:#4a8ab1}.landing .hero .eyebrow{color:#635131}.landing .lead{color:#40566a;font-size:1.15rem;max-width:560px;line-height:1.7}.landing .button{background:#002245;color:white;border-radius:40px;padding:1rem 1.6rem;transition:background .2s,transform .2s}.landing .button:hover{background:#355e7b;transform:translateY(-2px)}.landing .note{color:#635131}.landing .hero-art{background:transparent;overflow:visible;min-height:650px;padding:2rem 0 0;align-items:flex-end}.landing .hero-art:before{display:none}.landing .portrait{height:610px;max-width:490px}.landing .portrait-caption{bottom:2rem;right:1.5rem;border:0;background:white;color:#002245;border-radius:0;padding:1rem 1.5rem;box-shadow:0 8px 35px #00224512}.landing .portrait-caption span{color:#635131}.landing .intro,.landing .areas,.landing .process,.landing .contact{max-width:1240px;margin:auto;padding:5rem 4vw;background:transparent}.landing .intro{padding-top:5rem;padding-bottom:3rem;gap:5vw;grid-template-columns:.9fr 1.1fr}.landing h2{font-size:clamp(2.3rem,3.6vw,3.8rem);line-height:1.12;letter-spacing:-.04em}.landing .intro p:not(.eyebrow){font-size:1.1rem;color:#40566a;line-height:1.8}.landing .areas{padding-top:4rem}.landing .areas h2{max-width:720px}.landing .cards{display:block;margin-top:3rem}.landing .cards article{display:grid;grid-template-columns:60px 1fr 1.2fr;gap:2rem;align-items:start;background:transparent;border:0;border-top:1px solid #d9e3ea;min-height:0;padding:2rem 0}.landing .cards span{font-size:1rem;color:#4a8ab1;padding-top:.3rem}.landing .cards h3{font-size:1.8rem;font-weight:500;line-height:1.25;margin:0;max-width:300px}.landing .cards p{margin:0;font-size:1.1rem;line-height:1.7}.landing .fine{color:#637583;line-height:1.6;max-width:650px}.landing .process{display:grid;grid-template-columns:1fr 1fr;gap:5vw;padding-top:3rem}.landing .steps{display:block;margin:0}.landing .steps>div{position:relative;padding:0 0 2.2rem 3.5rem}.landing .steps>div:before{content:"";position:absolute;left:1rem;top:2.2rem;bottom:.5rem;width:1px;background:#d9e3ea}.landing .steps>div:last-child:before{display:none}.landing .steps b{position:absolute;left:0;top:0;width:2rem;height:2rem;border-color:#bdd2e1;font-size:.875rem;color:#635131}.landing .steps h3{margin:0 0 .5rem;font-size:1.4rem}.landing .steps p{margin:0;line-height:1.7}.landing .contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:5vw;align-items:start;padding-top:5rem;padding-bottom:6rem;color:#002245;border-top:1px solid #d9e3ea}.landing .contact .eyebrow{color:#635131}.landing .contact h2{margin:1rem 0 1.5rem}.landing .contact-copy>p:not(.eyebrow){color:#40566a;font-size:1.1rem;line-height:1.8}.landing .contact-actions{display:block}.landing .contact-phone{display:block;margin:1.5rem 0}.landing .contact-form{margin:0;padding:2rem;background:#f2f7fa;border-radius:20px;max-width:none}.landing .contact-form h3{font-size:1.4rem}.landing .contact-form input,.landing .contact-form select,.landing .contact-form textarea{background:white;border-color:#c4d3dd;border-radius:8px}.landing .form-status{background:#e2ecf3;border-radius:8px;font-size:.95rem}.landing footer{padding:3rem 5vw}.landing section{scroll-margin-top:2rem}
@media(max-width:800px){.landing .hero{grid-template-columns:1fr;min-height:0}.landing .hero:before{inset:48% 0 0 12%;border-radius:100px 0 0 0}.landing .hero-copy{padding:3rem 1.25rem 1rem}.landing .hero h1{font-size:clamp(2.5rem,8vw,3.6rem)}.landing .hero-art{min-height:440px;padding:0}.landing .portrait{height:440px;max-width:350px}.landing .portrait-caption{bottom:1rem;right:1rem}.landing .intro,.landing .process,.landing .contact{grid-template-columns:1fr;gap:2rem}.landing .intro,.landing .areas,.landing .process,.landing .contact{padding:3rem 1.25rem}.landing .cards article{grid-template-columns:35px 1fr;gap:1rem;padding:1.6rem 0}.landing .cards p{grid-column:2}.landing .cards h3{font-size:1.5rem;max-width:none}.landing .contact-form{padding:1.25rem}.landing .contact{margin:0 0 1rem}.landing .hero .button{margin-top:1rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.landing .button{transition:none}.landing .button:hover{transform:none}}
