.nav{position:sticky;top:0;z-index:50;background:var(--color-plaster);border-bottom:1.5px solid var(--color-cement-light)}.nav__inner{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.nav__brand{font-family:var(--font-display);font-weight:900;font-size:1.4rem;letter-spacing:.03em;text-decoration:none;color:var(--color-ink)}.nav__links{display:flex;align-items:center;gap:28px}.nav__links a:not(.nav__cta){text-decoration:none;font-size:.92rem;font-weight:600;color:var(--color-ink-soft)}.nav__links a:not(.nav__cta):hover{color:var(--color-copper)}.nav__cta{padding:10px 20px;text-decoration:none}@media (max-width: 640px){.nav__links{gap:14px}.nav__links a:not(.nav__cta){display:none}}.hero{padding:72px 0 40px}.hero__inner{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}.hero__title{font-size:clamp(2.6rem,5.2vw,4.4rem);line-height:.98;margin:6px 0 22px}.hero__title-accent{color:var(--color-copper)}.hero__lead{max-width:46ch;font-size:1.08rem;margin-bottom:32px}.hero__actions{display:flex;gap:16px;flex-wrap:wrap}.hero__actions .btn-outline,.hero__actions .btn-primary{text-decoration:none}.hero__figure{position:relative;height:420px;background:linear-gradient(160deg,var(--color-steel) 0%,var(--color-ink) 100%);border-radius:4px;overflow:hidden}.hero__tape{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;justify-content:space-between;padding:24px 18px;font-family:var(--font-mono);color:#faf8f4bf;font-size:.85rem}.hero__tape span{border-top:1px solid rgba(250,248,244,.25);padding-top:4px}@media (max-width: 860px){.hero__inner{grid-template-columns:1fr}.hero__figure{height:220px;order:-1}}.about{padding:60px 0}.about__inner{display:grid;grid-template-columns:1fr 1fr;gap:56px}.about__title{font-size:clamp(2.2rem,4vw,3rem);margin-bottom:20px}.about__lead{margin-bottom:16px;font-size:1.05rem}.about__skills{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 40px;border-top:1.5px solid var(--color-cement-light)}.about__skill{padding:20px 0;border-bottom:1.5px solid var(--color-cement-light)}.about__skill h3{font-size:1.15rem;color:var(--color-copper);margin-bottom:6px}@media (max-width: 800px){.about__inner,.about__skills{grid-template-columns:1fr}}.before-after{position:relative;aspect-ratio:4 / 3;overflow:hidden;border-radius:3px;background:var(--color-cement-light);cursor:ew-resize}.before-after--single{cursor:default}.before-after__img{width:100%;height:100%;object-fit:cover;-webkit-user-select:none;user-select:none}.before-after__base,.before-after__before{position:absolute;top:0;right:0;bottom:0;left:0}.before-after__range{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;margin:0;cursor:ew-resize}.before-after__handle{position:absolute;top:0;bottom:0;width:2px;background:var(--color-white);pointer-events:none;transform:translate(-1px)}.before-after__handle:after{content:"⟷";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--color-white);color:var(--color-ink);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;box-shadow:0 2px 6px #00000040}.before-after__tag{position:absolute;bottom:10px;font-family:var(--font-mono);font-size:.7rem;letter-spacing:.05em;background:#221f1ab8;color:var(--color-white);padding:3px 8px;border-radius:2px;pointer-events:none}.before-after__tag--before{left:10px}.before-after__tag--after{right:10px}.showroom{padding:60px 0}.showroom__title{font-size:clamp(2.2rem,4vw,3rem);margin-bottom:12px}.showroom__lead{max-width:50ch;margin-bottom:28px}.showroom__filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:34px}.showroom__filter{padding:8px 16px;border-radius:20px;border:1.5px solid var(--color-cement-light);background:transparent;font-size:.85rem;font-weight:600;color:var(--color-ink-soft)}.showroom__filter.is-active{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-white)}.showroom__status{padding:40px 0;font-style:italic}.showroom__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.showroom__item figcaption{margin-top:12px}.showroom__item h3{font-size:1.05rem;text-transform:none;font-family:var(--font-body);font-weight:700;margin-bottom:4px}.showroom__location{font-family:var(--font-mono);font-size:.78rem;color:var(--color-copper);margin-bottom:4px}@media (max-width: 900px){.showroom__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.showroom__grid{grid-template-columns:1fr}}.form-section{padding:60px 0}.form-section__inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}.form-section__title{font-size:clamp(2rem,3.6vw,2.8rem);margin-bottom:14px}.form-section__lead{max-width:42ch}.form-section--alt{background:var(--color-plaster-deep)}.form{display:flex;flex-direction:column;gap:18px;background:var(--color-white);padding:32px;border-radius:4px;border:1.5px solid var(--color-cement-light)}.form .btn{align-self:flex-start;border:none}.form-success{background:var(--color-white);border:1.5px solid var(--color-copper);border-radius:4px;padding:40px}.form-success h3{color:var(--color-copper-dark);margin-bottom:8px;text-transform:none;font-family:var(--font-body)}.form-error{color:var(--color-copper-dark);font-size:.9rem}@media (max-width: 860px){.form-section__inner{grid-template-columns:1fr}}.footer{background:var(--color-ink);color:var(--color-plaster);padding:40px 0}.footer__inner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.footer__brand{font-family:var(--font-display);font-weight:900;font-size:1.1rem}.footer p{color:var(--color-cement-light);font-size:.85rem;margin-top:4px}.footer__contacts{display:flex;gap:20px;font-family:var(--font-mono);font-size:.85rem}.footer__contacts a{text-decoration:none;color:var(--color-plaster)}.footer__contacts a:hover{color:var(--color-copper)}.admin-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 120px);padding:40px 20px;background:radial-gradient(circle at 10% 20%,#0f1a2e,#090e17 90%);color:#f7fafc}.admin-card{width:100%;max-width:480px;background:#1a243899;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000004d;text-align:center}.admin-logo h2{font-size:1.8rem;font-weight:700;background:linear-gradient(135deg,#63b3ed,#3182ce);-webkit-background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:5px}.admin-logo p{color:#a0aec0;font-size:.95rem;margin-bottom:30px}.admin-intro{color:#cbd5e0;font-size:.95rem;line-height:1.6;margin-bottom:30px}.admin-error-box{background:#e53e3e26;border-left:4px solid #e53e3e;color:#feb2b2;padding:12px;border-radius:6px;margin-bottom:25px;font-size:.9rem;text-align:left}.admin-input-group{margin-bottom:20px}.admin-code-input{width:200px;height:60px;font-size:2.2rem;text-align:center;letter-spacing:6px;border:2px solid rgba(255,255,255,.15);border-radius:12px;background:#0a0f1ccc;color:#fff;font-weight:700;transition:all .3s ease}.admin-code-input:focus{border-color:#3182ce;box-shadow:0 0 10px #3182ce66;outline:none}.admin-timer{font-size:.95rem;color:#a0aec0;margin-bottom:30px}.timer-active{color:#e53e3e}.timer-expired{color:#e53e3e;font-weight:700}.admin-btn{width:100%;padding:14px 24px;font-size:1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-primary{background:#3182ce;color:#fff}.admin-btn-primary:hover:not(:disabled){background:#2b6cb0;transform:translateY(-2px)}.admin-btn-success{background:#38a169;color:#fff}.admin-btn-success:hover:not(:disabled){background:#2f855a;transform:translateY(-2px)}.admin-btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.1)}.admin-btn-secondary:hover{background:#ffffff26}.admin-btn-link{background:none;border:none;color:#a0aec0;font-size:.9rem;margin-top:15px;cursor:pointer;text-decoration:underline}.admin-btn-link:hover{color:#fff}.dashboard-container{width:100%;max-width:1200px;margin:0 auto;padding:40px 20px;background:#0b1329;color:#fff;min-height:100vh}.dashboard-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:20px;margin-bottom:30px}.dashboard-title h1{font-size:2rem;font-weight:700;color:#63b3ed}.dashboard-title p{color:#a0aec0;font-size:.9rem}.logout-btn{padding:8px 16px;background:#e53e3e26;color:#feb2b2;border:1px solid rgba(229,62,62,.3);border-radius:8px;cursor:pointer;font-weight:500;transition:all .2s ease}.logout-btn:hover{background:#e53e3e;color:#fff}.dashboard-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:30px}@media (max-width: 968px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-section{background:#1a243880;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:25px}.dashboard-section h2{font-size:1.3rem;color:#cbd5e0;margin-bottom:20px;border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:10px}.date-selector-row{display:flex;align-items:center;gap:15px;margin-bottom:20px}.date-selector-row label{font-size:.95rem;color:#cbd5e0}.date-input{background:#0a0f1ccc;border:1px solid rgba(255,255,255,.15);color:#fff;padding:8px 12px;border-radius:8px;font-size:.95rem}.date-input:focus{outline:none;border-color:#3182ce}.admin-slots-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px}.admin-slot-card{padding:15px;border-radius:12px;background:#0a0f1c80;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;justify-content:space-between;align-items:center;gap:10px;transition:all .2s ease}.admin-slot-card.taken{border-color:#3182ce66;background:#3182ce14}.admin-slot-card.blocked{border-color:#e53e3e66;background:#e53e3e14}.admin-slot-card.free{border-color:#48bb7866;background:#48bb7814}.slot-time{font-weight:700;font-size:1.1rem}.slot-status-label{font-size:.8rem;padding:2px 8px;border-radius:20px;font-weight:500}.slot-status-label.free-label{background:#48bb7833;color:#48bb78}.slot-status-label.blocked-label{background:#e53e3e33;color:#f56565}.slot-status-label.taken-label{background:#3182ce33;color:#4299e1}.slot-details{font-size:.85rem;color:#a0aec0;text-align:center}.slot-btn{padding:6px 12px;font-size:.8rem;font-weight:600;border-radius:6px;border:none;cursor:pointer;transition:all .2s ease;width:100%}.block-btn{background:#e53e3e;color:#fff}.block-btn:hover{background:#c53030}.unblock-btn{background:#a0aec0;color:#1a202c}.unblock-btn:hover{background:#cbd5e0}.appointments-list{display:flex;flex-direction:column;gap:15px;max-height:calc(100vh - 250px);overflow-y:auto;padding-right:5px}.appointment-card{background:#0a0f1c66;border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:20px;position:relative;transition:all .2s ease}.appointment-card:hover{border-color:#ffffff26;background:#0a0f1c99}.appointment-card.status-nuovo{border-left:4px solid #dd6b20}.appointment-card.status-confermato{border-left:4px solid #38a169}.appointment-card.status-rifiutato{border-left:4px solid #e53e3e}.appointment-card.status-bloccato{opacity:.5}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.client-name{font-weight:600;font-size:1.1rem;margin:0}.appointment-status{font-size:.75rem;font-weight:600;text-transform:uppercase;padding:2px 8px;border-radius:4px}.status-nuovo .appointment-status{background:#dd6b2033;color:#dd6b20}.status-confermato .appointment-status{background:#38a16933;color:#38a169}.status-rifiutato .appointment-status{background:#e53e3e33;color:#e53e3e}.card-body p{margin:0 0 6px;font-size:.9rem;color:#cbd5e0}.card-body p strong{color:#fff}.card-actions{display:flex;gap:10px;margin-top:15px}.action-btn{flex:1;padding:8px;font-size:.85rem;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.confirm-btn{background:#38a169;color:#fff}.confirm-btn:hover{background:#2f855a}.reject-btn{background:#e53e3e;color:#fff}.reject-btn:hover{background:#c53030}.empty-message{color:#a0aec0;font-size:.95rem;text-align:center;padding:40px 0}:root{--color-plaster: #ede7dc;--color-plaster-deep: #e2dbcb;--color-white: #faf8f4;--color-ink: #221f1a;--color-ink-soft: #4a453c;--color-cement: #8a8478;--color-cement-light: #c9c3b6;--color-copper: #a8531f;--color-copper-dark: #7e3d14;--color-steel: #4b5a63;--font-display: "Big Shoulders Display", sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "IBM Plex Mono", monospace;--container-w: min(1180px, 92vw)}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{margin:0;background:var(--color-plaster);color:var(--color-ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:700;letter-spacing:.01em;margin:0;text-transform:uppercase}p{margin:0;line-height:1.6;color:var(--color-ink-soft)}a{color:inherit}button{font-family:var(--font-body);cursor:pointer}img{max-width:100%;display:block}.container{width:var(--container-w);margin-inline:auto}:focus-visible{outline:3px solid var(--color-copper);outline-offset:3px}.ruler-divider{position:relative;height:44px;width:100%;overflow:hidden;background:var(--color-plaster-deep)}.ruler-divider__track{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;background-image:repeating-linear-gradient(90deg,var(--color-cement) 0px,var(--color-cement) 1px,transparent 1px,transparent 10px);background-position:bottom;background-size:10px 14px;background-repeat:repeat-x;opacity:.55}.ruler-divider__label{position:relative;z-index:1;font-family:var(--font-mono);font-size:.75rem;color:var(--color-copper-dark);background:var(--color-plaster-deep);padding:4px 14px;margin:0 auto;border:1px solid var(--color-cement-light);border-radius:2px;transform:translateY(-8px);white-space:nowrap}.section-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:.8rem;color:var(--color-copper);letter-spacing:.08em;margin-bottom:14px}.section-eyebrow:before{content:"";width:22px;height:1px;background:var(--color-copper)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;border-radius:3px;font-weight:600;font-size:.95rem;border:2px solid transparent;transition:transform .15s ease,background .15s ease,color .15s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--color-copper);color:var(--color-white)}.btn-primary:hover{background:var(--color-copper-dark)}.btn-outline{border-color:var(--color-ink);color:var(--color-ink);background:transparent}.btn-outline:hover{background:var(--color-ink);color:var(--color-white)}.field{display:flex;flex-direction:column;gap:6px}.field label{font-family:var(--font-mono);font-size:.78rem;color:var(--color-ink-soft);text-transform:uppercase;letter-spacing:.04em}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:1rem;padding:12px 14px;border:1.5px solid var(--color-cement-light);border-radius:3px;background:var(--color-white);color:var(--color-ink)}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-copper)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media (max-width: 720px){.form-grid{grid-template-columns:1fr}}
