/* ========================================================================
   LABORATORIO MATILDA — Pagine interne (Riparazioni, Brand, Laboratorio, Contatti)
   Stile portato dalla demo (Fuba) e adattato: MONOCROMO nero/grigio + Azeret Mono.
   Tutto scoped sotto .matilda-page per non toccare tema/home.
   ======================================================================== */

.matilda-page{
  --mp-bg:#faf8f5; --mp-ink:#191A18; --mp-muted:#A79C93; --mp-grey:#5A5450;
  --mp-cream:#FAF5DE; --mp-line:#D0CAC3; --mp-soft:#777;
  font-family:'Work Sans',-apple-system,sans-serif;
  font-size:18px; line-height:1.8; color:var(--mp-ink);
}
.matilda-page *,.matilda-page *::before,.matilda-page *::after{box-sizing:border-box;}
.matilda-page img{max-width:100%;display:block;}
.matilda-page a{color:inherit;}

/* ── Tipografia ── */
.matilda-page .pixel,.matilda-page .mono{font-family:'Azeret Mono',ui-monospace,monospace;}
.matilda-page h1,.matilda-page h2,.matilda-page h3,.matilda-page h4{font-weight:600;}
.matilda-page .label{
  font-family:'Azeret Mono',monospace; font-size:.82rem; letter-spacing:3px;
  text-transform:uppercase; color:var(--mp-muted); margin-bottom:1.2rem;
}
.matilda-page .heading{
  font-family:'Azeret Mono',ui-monospace,monospace;
  font-size:clamp(1.4rem,3vw,2.1rem); line-height:1.4; letter-spacing:.5px;
  margin-bottom:1.6rem; color:var(--mp-ink); font-weight:600;
}
.matilda-page .lead{font-size:1.3rem; color:var(--mp-grey); line-height:1.9; max-width:680px;}
.matilda-page .body-text{font-size:1.18rem; color:#4A4A47; line-height:1.85; max-width:700px;}
.matilda-page .body-text + .body-text{margin-top:1.4rem;}

/* ── Layout ── */
.matilda-page .container{max-width:1000px; margin:0 auto; padding:0 1.5rem;}
.matilda-page .container-wide{max-width:1200px; margin:0 auto; padding:0 1.5rem;}
.matilda-page section{padding:5.5rem 0;}
.matilda-page .page-header{padding-top:3rem; padding-bottom:2rem;}
.matilda-page .line{width:44px; height:1px; background:var(--mp-muted); margin:2rem 0;}
.matilda-page .spacer{height:4rem;} .matilda-page .spacer-sm{height:2rem;}

/* ── Grids ── */
.matilda-page .grid-2{display:grid; grid-template-columns:1fr 1fr; gap:4.5rem; align-items:center;}
.matilda-page .grid-3{display:grid; grid-template-columns:repeat(3,1fr); gap:2.5rem;}

/* ── Sfondi full-bleed (rompono il container) ── */
.matilda-page .bg-warm,.matilda-page .dark-section{
  width:100vw; position:relative; left:50%; right:50%; margin-left:-50vw; margin-right:-50vw;
}
.matilda-page .bg-warm{background:var(--mp-cream);}
.matilda-page .dark-section{background:var(--mp-ink); color:var(--mp-cream);}
.matilda-page .bg-warm > .container,.matilda-page .bg-warm > .container-wide,
.matilda-page .dark-section > .container{max-width:1000px;}

/* ── Placeholder immagini ── */
.matilda-page .img-ph{
  background:#ece5da; display:flex; align-items:center; justify-content:center;
  font-family:'Azeret Mono',monospace; font-size:.8rem; color:#b8a88e; letter-spacing:1.5px;
  text-transform:uppercase; text-align:center; line-height:1.9; aspect-ratio:4/3; padding:1rem;
}

/* ── Quote / brand list ── */
.matilda-page .quote{font-size:1.4rem; font-style:italic; color:#4A4A47; line-height:1.9; max-width:600px; padding-left:1.4rem; border-left:2px solid var(--mp-muted);}
.matilda-page .quote-author{margin-top:1rem; font-size:1rem; color:var(--mp-muted); font-style:normal; letter-spacing:.5px;}
.matilda-page .brands{font-size:1.16rem; color:var(--mp-muted); line-height:2.4; letter-spacing:.3px;}
.matilda-page .brands a{text-decoration:none; transition:color .25s;}
.matilda-page .brands a:hover{color:var(--mp-ink);}

/* ── CTA button ── */
.matilda-page .hero-cta{
  display:inline-block; margin-top:1rem; padding:1rem 2.4rem;
  border:1px solid var(--mp-ink); color:var(--mp-ink);
  font-family:'Azeret Mono',monospace; font-size:.95rem; letter-spacing:2px;
  text-transform:uppercase; text-decoration:none; transition:all .3s;
}
.matilda-page .hero-cta:hover{background:var(--mp-ink); color:#fff;}
.matilda-page .dark-section .hero-cta{border-color:var(--mp-cream); color:var(--mp-cream);}
.matilda-page .dark-section .hero-cta:hover{background:var(--mp-cream); color:var(--mp-ink);}

/* ── Tabs (listino) ── */
.matilda-page .tabs{display:flex; flex-wrap:wrap; gap:0; border-bottom:1px solid rgba(0,0,0,.12); margin-bottom:2.5rem;}
.matilda-page .tab-btn{
  padding:1rem 1.8rem; background:none; border:none;
  font-family:'Azeret Mono',monospace; font-size:1rem; letter-spacing:.5px;
  color:var(--mp-muted); cursor:pointer; border-bottom:2px solid transparent; transition:all .25s;
}
.matilda-page .tab-btn:hover{color:var(--mp-grey);}
.matilda-page .tab-btn.active{color:var(--mp-ink); border-bottom-color:var(--mp-ink);}
.matilda-page .tab-panel{display:none;}
.matilda-page .tab-panel.active{display:block; animation:mpFade .3s ease;}
@keyframes mpFade{from{opacity:0;transform:translateY(6px);}to{opacity:1;transform:translateY(0);}}
.matilda-page .sub-tabs{display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:2rem;}
.matilda-page .sub-btn{
  padding:.45rem 1.1rem; background:none; border:1px solid var(--mp-line); color:var(--mp-muted);
  font-family:'Azeret Mono',monospace; font-size:.92rem; cursor:pointer; transition:all .25s;
}
.matilda-page .sub-btn:hover{border-color:var(--mp-grey); color:var(--mp-grey);}
.matilda-page .sub-btn.active{border-color:var(--mp-ink); color:var(--mp-ink); background:rgba(25,26,24,.05);}
.matilda-page .sub-panel{display:none;}
.matilda-page .sub-panel.active{display:block; animation:mpFade .25s ease;}

/* ── Price table ── */
.matilda-page .price-table{width:100%; border-collapse:collapse;}
.matilda-page .price-table th{
  text-align:left; padding:.6rem 0; font-family:'Azeret Mono',monospace;
  font-size:.85rem; letter-spacing:1px; text-transform:uppercase;
  color:var(--mp-muted); font-weight:400; border-bottom:1px solid rgba(0,0,0,.1);
}
.matilda-page .price-table td{padding:.85rem 0; font-size:1.12rem; border-bottom:1px solid rgba(0,0,0,.06); vertical-align:top; color:var(--mp-ink);}
.matilda-page .pv{display:flex; flex-wrap:wrap; gap:.3rem 1.4rem;}
.matilda-page .pv span{white-space:nowrap;}
.matilda-page .pv .m{color:var(--mp-grey); font-size:1.02rem;}
.matilda-page .pv .v{font-weight:600; color:var(--mp-ink); font-family:'Azeret Mono',monospace;}
.matilda-page .ps{font-weight:600; color:var(--mp-ink); font-family:'Azeret Mono',monospace;}
.matilda-page .brand-note{font-size:.95rem; color:var(--mp-muted); margin-top:.3rem;}
.matilda-page .price-brand-header td{
  padding:1.8rem 0 .5rem; font-family:'Azeret Mono',monospace; font-size:.85rem; letter-spacing:2px;
  text-transform:uppercase; color:var(--mp-ink); font-weight:600; border-bottom:1px solid rgba(0,0,0,.08);
}
.matilda-page .listino-note{margin-top:3rem; padding-top:2rem; border-top:1px solid rgba(0,0,0,.08); font-size:1.05rem; color:var(--mp-grey); line-height:1.9;}
.matilda-page .listino-note a{border-bottom:1px solid var(--mp-line); text-decoration:none; transition:all .25s;}
.matilda-page .listino-note a:hover{border-color:var(--mp-ink);}

/* ── Gallery (operazioni) ── */
.matilda-page .gallery-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:6px;}
.matilda-page .gallery-item{aspect-ratio:1; overflow:hidden; position:relative;}
.matilda-page .gallery-item .img-ph{width:100%; height:100%; aspect-ratio:auto;}
.matilda-page .gallery-item .caption{
  position:absolute; bottom:0; left:0; right:0; padding:1.1rem; background:var(--mp-cream);
  font-size:.95rem; color:var(--mp-ink); line-height:1.6; transform:translateY(100%); transition:transform .3s;
}
.matilda-page .gallery-item:hover .caption{transform:translateY(0);}

/* ── Contatti ── */
.matilda-page .contact-block{margin-bottom:2.2rem;}
.matilda-page .contact-label{font-family:'Azeret Mono',monospace; font-size:.78rem; letter-spacing:2.5px; text-transform:uppercase; color:var(--mp-muted); margin-bottom:.5rem;}
.matilda-page .contact-value{font-size:1.25rem; color:var(--mp-ink); line-height:1.8;}
.matilda-page .contact-value a{text-decoration:none; border-bottom:1px solid rgba(0,0,0,.15); transition:all .25s;}
.matilda-page .contact-value a:hover{border-color:var(--mp-ink);}
.matilda-page .form-field{
  width:100%; padding:1rem 0; background:none; border:none; border-bottom:1px solid rgba(0,0,0,.15);
  font-family:'Work Sans',sans-serif; font-size:1.15rem; color:var(--mp-ink); outline:none;
  margin-bottom:.5rem; transition:border-color .25s;
}
.matilda-page .form-field:focus{border-bottom-color:var(--mp-ink);}
.matilda-page .form-field::placeholder{color:var(--mp-line);}
.matilda-page textarea.form-field{resize:vertical; min-height:120px; line-height:1.7;}
.matilda-page .form-submit{
  display:inline-block; margin-top:1.6rem; padding:1rem 2.4rem; background:none;
  border:1px solid var(--mp-ink); color:var(--mp-ink); font-family:'Azeret Mono',monospace;
  font-size:.95rem; letter-spacing:2px; text-transform:uppercase; cursor:pointer; transition:all .3s;
}
.matilda-page .form-submit:hover{background:var(--mp-ink); color:#fff;}
.matilda-page .map-box{margin-top:1rem; aspect-ratio:21/9; overflow:hidden;}
.matilda-page .map-box iframe{width:100%; height:100%; border:0; filter:grayscale(1) contrast(.95);}

/* ── Video Vimeo (placeholder + embed) ── */
.matilda-page .video-grid{display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; margin-top:2.5rem;}
.matilda-page .video-embed{position:relative; aspect-ratio:16/9; background:#ece5da; overflow:hidden;}
.matilda-page .video-embed iframe{position:absolute; inset:0; width:100%; height:100%; border:0;}
.matilda-page .video-ph{display:flex; flex-direction:column; align-items:center; justify-content:center; height:100%; gap:.6rem; font-family:'Azeret Mono',monospace; font-size:.82rem; letter-spacing:1.5px; text-transform:uppercase; color:#a8957a; text-align:center; padding:1rem;}
.matilda-page .video-cap{font-size:1rem; color:var(--mp-grey); margin-top:.7rem; font-family:'Azeret Mono',monospace; letter-spacing:.5px;}

/* ── Brand page (testo-centrico, senza foto) ── */
.matilda-page .brand-row{max-width:760px;}
.matilda-page .brand-row .line{margin-left:0;}
.matilda-page .price-inline{font-family:'Azeret Mono',monospace; font-size:1rem; color:var(--mp-muted); margin-top:.6rem;}
.matilda-page .brand-index{font-family:'Azeret Mono',monospace; font-size:1.05rem; color:var(--mp-muted); line-height:2.4; letter-spacing:.3px;}
.matilda-page .brand-index a{text-decoration:none; transition:color .25s;}
.matilda-page .brand-index a:hover{color:var(--mp-ink);}

/* ── Responsive ── */
@media (max-width:768px){
  .matilda-page .grid-2,.matilda-page .grid-3{grid-template-columns:1fr; gap:2.5rem;}
  .matilda-page .gallery-grid{grid-template-columns:repeat(2,1fr);}
  .matilda-page .video-grid{grid-template-columns:1fr;}
  .matilda-page section{padding:3.5rem 0;}
  .matilda-page .tabs{flex-wrap:wrap;}
}
