*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:#111210;color:#eeeae3;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;width:100%}header{height:112px;padding:20px 6%;display:flex;justify-content:space-between;align-items:center;background:#000}header .logo{width:170px;height:80px;object-fit:cover}nav{display:flex;gap:34px;font-size:14px}nav a:hover{color:#c8ac88}a:focus-visible,input:focus-visible{outline:2px solid #d6b88f;outline-offset:6px}.skip{position:absolute;left:10px;top:-100px;z-index:10;background:#fff;color:#000}.skip:focus{top:10px}.hero{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:770px;max-height:1100px;height:calc(100svh - 112px)}.hero-copy{padding:65px 12%;display:flex;flex-direction:column;justify-content:center}.eyebrow{font-size:12px;letter-spacing:.2em;font-weight:400;color:#b7ae9e;margin:0 0 32px}h1,h2,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.07;letter-spacing:-.045em}h1{font-size:clamp(70px,7.8vw,132px);margin-bottom:32px}em{font-weight:400;color:#c6ad8b}h2{font-size:clamp(42px,4.7vw,78px);margin-bottom:30px}p{color:#b7b8b0;max-width:540px}.hero>img{height:100%;min-height:0;object-fit:cover;object-position:50% 54%}.hero-foot{font-size:11px;letter-spacing:.16em;margin-top:45px;color:#7e8078}.image-note{position:absolute;bottom:22px;right:28px;font-size:12px;text-shadow:0 1px 5px #000}.wrap{max-width:1500px;margin:auto;padding:110px 6%}.intro{display:grid;grid-template-columns:1fr 2fr;border-bottom:1px solid #34352e}.intro p:last-child{max-width:650px}.section-head{display:grid;grid-template-columns:1fr 1fr;align-items:start;margin-bottom:45px}.section-head h2{margin:0}.section-head>p:last-child:not(.eyebrow){grid-column:2;margin-top:30px}.duo{display:grid;grid-template-columns:1fr 1fr;gap:6%}figure{margin:0}.duo .offset{padding-top:0}.duo img{aspect-ratio:9/16;object-fit:cover}figcaption,.gallery-caption{font-size:13px;color:#9a9d92;margin-top:18px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:100px}.detail-grid img{aspect-ratio:9/16;object-fit:cover}.gallery-caption{text-align:center;max-width:none}.process{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;border-top:1px solid #34352e}.small{font-size:14px;color:#8d9185}.comparison{position:relative;aspect-ratio:9/16;overflow:hidden}.comparison>img{position:absolute;inset:0;height:100%;object-fit:cover}.wire{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.comparison input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.divider{position:absolute;left:var(--split);height:100%;border-left:1px solid #fff;pointer-events:none}.divider span{position:absolute;top:50%;left:-23px;border-radius:50%;width:46px;height:46px;background:#111a;border:1px solid white;text-align:center;line-height:43px;color:white}.comparison:focus-within{outline:2px solid #d6b88f;outline-offset:5px}.tag{position:absolute;top:16px;font-size:10px;letter-spacing:.1em;background:#111a;color:white;padding:5px 8px;pointer-events:none}.before{left:12px}.after{right:12px}.exterior{background:#191a17;padding-bottom:40px}.exterior .section-head{padding-bottom:30px;margin-bottom:0}.exterior figure{margin:0 6%}.exterior img{width:100%;max-height:850px;object-fit:contain}.contact{text-align:center;padding-top:145px;padding-bottom:140px}.contact p{margin-left:auto;margin-right:auto}.contact h2{font-size:clamp(49px,6vw,96px)}.button{display:inline-flex;gap:70px;align-items:center;background:#e5d9c5;color:#171915;padding:18px 28px;margin-top:22px;border:1px solid #e5d9c5;transition:background .2s}.button:hover{background:#fff}.email{display:block;font-size:14px;color:#a6a99d;margin-top:24px}footer{padding:30px 6%;border-top:1px solid #34352e;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#9b9f91}@media(max-width:700px){header{height:88px;padding:12px 6%}header .logo{width:115px;height:60px}nav{gap:16px;font-size:13px}.hero{height:auto;max-height:none;min-height:0;grid-template-columns:1fr}.hero-copy{padding:55px 7% 48px}.hero h1{font-size:76px;line-height:1}.hero h1 br:nth-child(2){display:none}.hero-foot{margin-top:10px}.hero>img{height:auto;aspect-ratio:9/13;object-fit:cover}.image-note{font-size:11px}.wrap{padding:70px 7%}.intro,.section-head,.process{grid-template-columns:1fr;gap:20px}.eyebrow{margin-bottom:20px}.section-head>p:last-child:not(.eyebrow){grid-column:1}.duo{gap:16px}.duo .offset{padding-top:0}figcaption{font-size:12px;line-height:1.5}.detail-grid{gap:10px;margin-top:55px;grid-template-columns:1fr 1fr}.detail-grid img:last-child{grid-column:1/3;width:65%;margin:20px auto 0}.process{gap:35px}.exterior .section-head{padding-bottom:35px}.contact{padding-top:90px;padding-bottom:90px}footer{flex-wrap:wrap}footer span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.header-links{display:flex;align-items:center;gap:40px}.languages{display:flex;align-items:center;gap:12px;font-size:14px;white-space:nowrap}.languages a{display:inline-flex;align-items:center;gap:6px;min-height:44px}.languages a[aria-current]{color:#e5d9c5}.languages>span{color:#65675e}.languages a span{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif;font-size:19px}@media(max-width:850px){.header-links{gap:22px}header nav{gap:18px}}@media(max-width:580px){header{height:auto;min-height:100px;flex-wrap:wrap;gap:5px}.header-links{display:contents}header> a{order:0}.languages{order:1;margin-left:auto}nav:is([aria-label="Main navigation"],[aria-label="Navigazione principale"]){order:2;flex-basis:100%;justify-content:flex-end;font-size:13px;padding-bottom:8px}.languages{gap:10px;font-size:14px}}
.languages .flag{width:22px;height:15px;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px #ffffff30}

/* Explicit hit areas and a visible native slider for touch and keyboard. */
.comparison{touch-action:pan-y;cursor:ew-resize;isolation:isolate}
.comparison>img{pointer-events:none;user-select:none;-webkit-user-drag:none}
.comparison .wire{z-index:1}.comparison .divider{z-index:2}.comparison .tag{z-index:3}
.comparison input{position:absolute;inset:auto 18px 20px;width:calc(100% - 36px);height:32px;opacity:1;z-index:5;cursor:ew-resize;accent-color:#bfa581;touch-action:none;background:transparent}
.languages a,.button,.email,


.languages a{min-width:64px;min-height:48px;justify-content:center;padding:5px 8px}.languages a .flag{pointer-events:none}.button{min-height:60px;cursor:pointer;isolation:isolate}.button span{pointer-events:none}

/* Preserve spaces and image proportions on small screens. */
img{height:auto}@media(max-width:700px){.hero h1{font-size:clamp(3.2rem,17vw,4.5rem);line-height:1.08;letter-spacing:-.035em}}

/* Explicit word spacing survives line wrapping and mobile font rendering. */
.hero h1 .title-line{display:block}.hero h1 .title-to{display:inline-block;margin-left:.08em;white-space:nowrap}

.hero-copy .portfolio-button{align-self:flex-start;gap:24px;margin-top:8px;max-width:100%;font-size:15px;letter-spacing:0;line-height:1.4}.portfolio-button span{flex-shrink:0}

.more-projects{text-align:center;padding:28px 7% 12px}.more-projects .button{max-width:100%;gap:28px;font-size:16px;line-height:1.4}

.services{border-bottom:1px solid #34352e}.services .section-head p:last-child{margin:24px 0 0}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 40px}.service{border-top:1px solid #424338;padding-top:24px}.service-number{display:block;color:#c6ad8b;font-size:12px;letter-spacing:.15em;margin-bottom:18px}.service h3{font-size:21px;font-weight:400;line-height:1.35;margin:0 0 16px}.service p{font-size:15px;line-height:1.7;margin:0}@media(max-width:1000px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}header .header-links{gap:18px}header nav{gap:16px}}@media(max-width:600px){.services-grid{grid-template-columns:1fr;gap:28px}.service h3{font-size:21px}nav:is([aria-label="Main navigation"],[aria-label="Navigazione principale"]){justify-content:space-between;gap:10px}.services .section-head{margin-bottom:30px}}

html[lang="it"] .hero h1{font-size:clamp(48px,5.6vw,96px)}html[lang="it"] .contact h2{font-size:clamp(38px,5vw,80px)}@media(max-width:700px){html[lang="it"] .hero h1{font-size:clamp(34px,10.5vw,54px)}html[lang="it"] .eyebrow{font-size:10px}}

.instagram-footer{display:flex;justify-content:center;padding:20px 0 0;background:transparent}.instagram-footer a{display:flex;align-items:center;justify-content:center;width:64px;height:64px;color:#7affff}.instagram-footer svg{display:block;width:48px;height:48px}.instagram-footer a:hover{opacity:.8}

/* Refined premium CTA buttons */
.button{
  background:rgba(10,10,9,.62);
  color:#f0e8dc;
  border:1px solid #d8bd96;
  padding:18px 28px;
  gap:34px;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:13px;
  font-weight:400;
  line-height:1.35;
  transition:background .22s ease,color .22s ease,border-color .22s ease,transform .22s ease;
}
.button:hover{
  background:#e5d9c5;
  color:#171915;
  border-color:#e5d9c5;
}
.button span{
  font-size:0;
  width:24px;
  height:14px;
  position:relative;
  flex:0 0 24px;
}
.button span::before{
  content:"";
  position:absolute;
  left:0;
  top:6px;
  width:22px;
  border-top:1.5px solid currentColor;
}
.button span::after{
  content:"";
  position:absolute;
  right:0;
  top:2px;
  width:8px;
  height:8px;
  border-top:1.5px solid currentColor;
  border-right:1.5px solid currentColor;
  transform:rotate(45deg);
}
.hero-copy .portfolio-button{gap:34px;letter-spacing:.16em;font-size:12px}
.more-projects .button{gap:34px;letter-spacing:.16em;font-size:12px}
@media(max-width:700px){
  .button{padding:16px 20px;gap:22px;letter-spacing:.12em;font-size:11px}
  .hero-copy .portfolio-button,.more-projects .button{gap:22px;letter-spacing:.12em;font-size:11px}
}

/* Interior section heading: compact editorial lockup aligned left */
#interiors>.section-head{display:block;max-width:760px;margin-bottom:58px}
#interiors>.section-head .eyebrow{margin-bottom:22px}
#interiors>.section-head h2{font-size:clamp(44px,4.4vw,70px);line-height:1.04;max-width:720px}
@media(max-width:700px){#interiors>.section-head{margin-bottom:38px}#interiors>.section-head h2{font-size:clamp(40px,12vw,58px)}}
