*{box-sizing:border-box} :root{--paper:#f7f5f1;--ink:#101416;--dark:#1c272e;--line:#dedbd6}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Georgia,'Times New Roman',serif}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #a47935;outline-offset:5px}img{display:block;width:100%}h1,h2,h3,p,blockquote{margin:0;font-weight:400}h2{font-size:clamp(28px,2.95vw,43px)}.header,main{max-width:1600px;margin:auto}.header{min-height:clamp(82px,8.1vw,125px);display:flex;align-items:center;padding:12px 4%;gap:3%}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0;font-size:clamp(19px,2.1vw,29px);line-height:1.02}.brand strong,.hero-brand strong{font-weight:400}.mark{position:relative;display:block;width:75px;aspect-ratio:1;overflow:hidden;mix-blend-mode:multiply;flex-shrink:0}.mark img{position:absolute;width:264%;max-width:none;left:-61%;top:-16%}nav{display:flex;align-items:center;justify-content:center;gap:clamp(15px,2.6vw,38px);flex:1}nav a,nav button{font:12px Arial,sans-serif;text-transform:uppercase;white-space:nowrap;padding:9px 0;border:0;background:none}nav [aria-current]{border-bottom:1px solid; font-weight:600}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:14px 23px;background:var(--dark);color:white;font:12px/1.2 Arial,sans-serif;text-transform:uppercase;letter-spacing:1px;border:1px solid var(--dark);transition:background .2s}.button:hover{background:#35434b}.header-cta{white-space:nowrap;padding:17px 22px}.menu-toggle{display:none}.hero{position:relative;aspect-ratio:1024/538;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;right:0;width:72%;height:100%;object-fit:cover;object-position:50% 50%;z-index:-3}.hero-fade{position:absolute;inset:0;background:linear-gradient(90deg,var(--paper) 0%,var(--paper) 25%,rgba(247,245,241,.97) 28%,rgba(247,245,241,.05) 44%,transparent 60%);z-index:-2}.hero-copy{width:38%;padding:3.4% 0 2% 7.6%}.hero-brand{font-size:clamp(28px,3vw,45px);line-height:1.05}.hero-brand .mark{width:52%;margin:0 0 8px 1%}.rule{display:block;width:36px;height:1px;background:currentColor;margin:19px 0}.hero h1{font-size:clamp(34px,3.9vw,58px);line-height:.98}.hero-copy>p{font-size:clamp(14px,1.4vw,20px);line-height:1.2;margin:14px 0}.hero .button{padding:13px 22px;font-size:clamp(10px,1vw,14px)}.values{display:flex;gap:0;margin:23px -24px 0;font:clamp(10px,.98vw,14px) Arial,sans-serif;text-transform:uppercase;white-space:nowrap}.values span{padding:0 13px;border-right:1px solid}.values span:last-child{border:0}.hero-quote{position:absolute;right:3%;bottom:10%;color:white;text-align:right;font-size:clamp(16px,1.6vw,23px);font-style:italic;line-height:1.4;text-shadow:0 1px 6px #000}.hero-quote .rule{margin:0 0 14px auto}.hero:after{content:'';position:absolute;right:0;bottom:0;width:40%;height:45%;background:linear-gradient(0deg,#171a1e99,transparent);z-index:-1}.areas{display:grid;grid-template-columns:1.1fr 1fr .82fr 1fr 1.1fr;min-height:17.6vw;padding:24px 0 22px}.areas article{text-align:center;padding:0 12px;border-right:1px solid var(--line)}.areas article:last-child{border:0}.areas svg{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;margin-bottom:7px}.areas h3{font-size:clamp(16px,1.58vw,23px);line-height:1.2;min-height:2.4em}.areas p{font-size:clamp(14px,1.32vw,19px);line-height:1.25;color:#444;margin-top:10px}.studio-teaser{display:grid;grid-template-columns:37.5% 62.5%;min-height:23vw;background:var(--dark);color:#fff}.studio-teaser>div{padding:7% 9% 6% 17.5%}.studio-teaser p{font-size:clamp(16px,1.48vw,21px);line-height:1.4}.studio-teaser .rule{margin:14px 0 16px}.outline{background:transparent;border-color:#fff}.studio-teaser .button{margin-top:16px;min-width:165px}.studio-teaser>img{height:100%;max-height:370px;object-fit:cover;object-position:center 35%}.photo-strip{display:grid;grid-template-columns:1.07fr .93fr 1.13fr .89fr 1fr;gap:3px;padding:3px 0}.photo{border:0;padding:0;display:block;background:#e8e3dc;overflow:hidden}.photo-strip .photo{aspect-ratio:.96}.photo img{width:100%;height:100%;object-fit:cover}.photo:hover img{opacity:.92}.photo-strip .photo:nth-child(1) img{object-position:center 62%}.contacts{display:grid;grid-template-columns:33.75% 39.25% 27%;background:var(--dark);color:#fff;min-height:26.5vw}.contact-copy{padding:6% 10% 9% 17%}.contact-copy h2{font-size:clamp(26px,2.5vw,36px)}.contact-copy .rule{margin:13px 0 18px}address{font-style:normal;font-size:clamp(15px,1.4vw,20px);line-height:1.2}address p{display:flex;gap:20px;margin:0 0 13px}address p>span{font-family:Arial,sans-serif;font-size:21px;width:18px;flex-shrink:0}address a:hover{text-decoration:underline}.contact-copy .button{font-size:clamp(10px,1vw,14px);padding:12px 16px;white-space:nowrap}.exterior{height:100%;object-fit:cover;object-position:center}.contact-quote{padding:17% 12%;background:linear-gradient(115deg,#202e36,#172027);font-size:clamp(15px,1.35vw,20px)}.contact-quote blockquote{font-style:italic;font-size:clamp(17px,1.6vw,23px);line-height:1.45}.contact-quote .rule{margin:17px 0}.skip{position:absolute;top:-100px;left:10px;z-index:10;background:white;padding:12px}.skip:focus{top:10px}dialog{border:0;background:var(--paper);color:var(--ink);padding:40px;max-width:min(90vw,600px)}dialog::backdrop{background:#071017d9}.close{position:absolute;right:10px;top:8px;font:30px Arial;background:transparent;border:0;width:40px;height:40px}.close:hover{background:#ddd}dialog p{margin:20px 0;font-size:18px;line-height:1.5}#viewer{padding:48px 20px 16px;max-width:95vw;width:1000px;max-height:95dvh;background:var(--dark);color:white}#full-photo{height:calc(90dvh - 155px);object-fit:contain}#viewer p{text-align:center;margin:12px 0}.viewer-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;font:14px Arial}.viewer-controls button{border:1px solid #829099;background:none;color:white;padding:12px}.gallery-intro{display:grid;grid-template-columns:1fr 1fr;background:var(--dark);color:#fff}.gallery-intro>div{padding:12% 13%}.eyebrow{font:12px Arial;letter-spacing:2px;text-transform:uppercase;margin-bottom:24px}.gallery-intro h1{font-size:clamp(38px,4.8vw,68px);line-height:1.05}.gallery-intro p:not(.eyebrow){font-size:20px;line-height:1.6}.gallery-intro>img{height:100%;max-height:620px;object-fit:cover}.gallery{padding:60px 6%}.gallery-heading{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-bottom:30px}.gallery-heading p{font-size:16px;color:#555}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 24px}.gallery-grid figure{margin:0}.gallery-grid .photo{width:100%;aspect-ratio:4/5}.gallery-grid .photo img{object-fit:contain}.gallery-grid figcaption{font-size:18px;margin-top:12px}.gallery-grid figure.wide{grid-column:span 2}.gallery-grid figure.wide .photo{aspect-ratio:1.65}.gallery-back{padding:0 6% 55px}.noscript-note{padding:20px} @media(min-width:1600px){.areas{min-height:260px}.studio-teaser{min-height:365px}.contacts{min-height:420px}}@media(max-width:1150px){.header{gap:2%;padding-left:4%;padding-right:4%}.brand{font-size:21px}.brand .mark{width:65px}nav{gap:22px}nav a,nav button{font-size:10px}.header-cta{font-size:10px;padding:16px 20px}.hero-copy{padding-top:3.4%}.hero-brand .mark{width:155px}.hero-brand{font-size:32px}.hero .rule{margin:17px 0}.hero-copy>p{margin:13px 0}.values{margin-top:24px}.areas{padding-top:23px}.contact-copy{padding-left:16%}}@media(max-width:950px){.header{flex-wrap:wrap}.header-cta{display:none}.brand{margin-right:auto}nav{flex:0}.hero{min-height:520px;aspect-ratio:auto}.hero-copy{width:46%;padding-left:5%}.hero-brand .mark{width:135px}.hero-brand{font-size:29px}.hero h1{font-size:37px}.hero-copy>p{font-size:15px}.hero-quote{font-size:16px}.hero-fade{background:linear-gradient(90deg,var(--paper) 25%,#f7f5f1dd 34%,transparent 58%)}.values{margin-left:-8px}.values span{padding:0 8px}.areas{grid-template-columns:repeat(5,1fr)}.areas h3{font-size:16px}.areas p{font-size:14px}.areas br{display:none}.studio-teaser>div{padding:25px}.desktop-break{display:none}.contacts{grid-template-columns:40% 60%}.contact-copy{padding:28px}.contact-quote{display:none}.gallery-intro>div{padding:35px}.gallery-intro p:not(.eyebrow){font-size:18px}}@media(max-width:680px){.header{min-height:80px;padding:10px 20px;position:relative;z-index:5}.brand{font-size:20px}.brand .mark{width:56px}.menu-toggle{display:block;border:1px solid #ccc;background:none;padding:10px;font:14px Arial}.menu-toggle span{margin-left:8px}nav{display:none;flex-basis:100%;padding:20px 0 10px;align-items:stretch}nav.open{display:flex;flex-direction:column;gap:10px}nav a,nav button{font-size:14px;text-align:left;padding:10px;width:fit-content}.hero{min-height:0;display:flex;flex-direction:column;overflow:hidden}.hero-photo{position:relative;width:100%;height:280px;order:2;object-position:center}.hero-copy{width:100%;padding:30px 28px 25px;background:var(--paper)}.hero-brand{display:flex;align-items:center;gap:20px;font-size:30px}.hero-brand .mark{width:112px;margin:0}.hero-copy>.rule{margin:22px 0}.hero h1{font-size:46px;line-height:1.02}.hero-copy>p{font-size:18px;line-height:1.35;max-width:370px;margin:18px 0}.hero .button{font-size:12px;padding:15px 18px}.values{font-size:10px;margin:22px -9px 0}.hero-fade{display:none}.hero-quote{bottom:25px;right:20px;font-size:17px}.hero:after{height:190px;width:100%;z-index:0;pointer-events:none}.hero-quote{z-index:1}.areas{grid-template-columns:repeat(2,1fr);padding:20px 12px;gap:24px 0}.areas article{padding:8px 14px}.areas article:nth-child(even){border:0}.areas article:last-child{grid-column:1/-1;max-width:300px;justify-self:center}.areas h3{font-size:19px;min-height:0}.areas p{font-size:16px}.studio-teaser{grid-template-columns:1fr}.studio-teaser>div{padding:32px 28px}.studio-teaser h2{font-size:34px}.studio-teaser p{font-size:18px}.studio-teaser>img{height:270px;object-position:center 30%}.photo-strip{grid-template-columns:repeat(2,1fr)}.photo-strip .photo:last-child{grid-column:1/-1;aspect-ratio:1.6}.photo-strip .photo:last-child img{object-fit:contain}.contacts{grid-template-columns:1fr}.contact-copy{padding:32px 28px}.contact-copy h2{font-size:32px}address{font-size:18px}.contact-copy .button{font-size:12px}.exterior{height:300px}.contact-quote{display:block;padding:30px 28px}.contact-quote blockquote{font-size:21px}.contact-quote blockquote br{display:none}.gallery-intro{grid-template-columns:1fr}.gallery-intro>div{padding:35px 28px}.gallery-intro>img{height:300px}.gallery{padding:35px 20px}.gallery-heading{display:block}.gallery-heading p{margin-top:14px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:25px 15px}.gallery-grid figure.wide{grid-column:1/-1}.gallery-grid figcaption{font-size:16px}dialog{padding:45px 24px 25px}.viewer-controls{font-size:12px}.viewer-controls button{padding:10px 6px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Recapiti confermati dal titolare, 23 settembre 2026. */
address a{overflow-wrap:anywhere}address p{gap:12px}.pec-label{font-size:9px!important;line-height:24px}.contact-copy{padding-left:12%;padding-right:8%}.contact-copy address{font-size:clamp(13px,1.25vw,18px)}.legal-footer{max-width:1600px;margin:auto;padding:15px 25px;background:#141e24;color:#e3e4e5;text-align:center;font:12px/1.6 Arial,sans-serif}.gallery-intro p+p{margin-top:20px}@media(max-width:680px){.contact-copy{padding:32px 28px}.contact-copy address{font-size:16px}}
/* Le colonne possono restringersi senza creare scorrimento orizzontale. */
.areas article,.gallery-grid figure{min-width:0;overflow-wrap:break-word;hyphens:auto}
@media(max-width:680px){.areas,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:951px) and (max-width:1150px){.hero-brand .mark{width:145px}.hero-copy{padding-top:3%}.values{margin-top:20px}}

.studio-page .gallery-intro{grid-template-columns:1fr}.studio-page .gallery-intro>div{padding:55px 6%;max-width:1000px}.studio-page .contacts{grid-template-columns:1fr 1fr}.studio-page .contact-quote{padding:45px 12%}@media(max-width:950px){.studio-page .contacts{grid-template-columns:1fr}}

.privacy-page{max-width:960px;padding:48px 24px 64px}.privacy-page h1{font-size:clamp(32px,5vw,48px)}.privacy-page h2{font-size:26px;margin:34px 0 14px}.privacy-page p{font-size:18px;line-height:1.65;margin:16px 0;overflow-wrap:anywhere}.privacy-page a,.legal-footer a{text-decoration:underline;text-underline-offset:3px}
