/*!
Theme Name: duovision
Theme URI: http://underscores.me/
Author: Duovision
Author URI: https://www.duovision.it/
Description: Thems for duovision
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: duovision
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

*/body{font-weight:400;font-size:21px;line-height:1.4em;color:#000;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}header{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:1rem clamp(1.2rem,4vw,3rem);background:rgba(40,54,44,.92);color:var(--cream);backdrop-filter:blur(6px)}header .logo{font-family:"Fraunces",serif;font-size:1.3rem;font-weight:600;letter-spacing:.02em;text-decoration:none;color:inherit}header nav ul{display:flex;gap:1.6rem;list-style:none;font-size:.92rem}header nav ul a:hover{color:var(--copper-soft)}header .nav-cta{background:var(--copper);color:var(--cream);padding:.5rem 1.1rem;border-radius:2px;font-size:.85rem;font-weight:500}@media(max-width: 760px){header nav ul li:not(.nav-cta-item){display:none}}footer#contatti{background:var(--pine-deep);color:var(--cream);padding:clamp(3rem,8vw,5rem) clamp(1.2rem,4vw,3rem) 2rem}footer#contatti .footer-inner{max-width:1280px;margin:0 auto;text-align:center}footer#contatti .footer-inner .eyebrow{color:var(--copper-soft);margin-bottom:.8rem}footer#contatti .footer-inner h2{font-size:clamp(2rem,5vw,3.2rem);margin-bottom:1.5rem}footer#contatti .footer-cta{margin-bottom:3rem}footer#contatti .btn-primary{background:var(--copper);color:var(--cream);padding:.85rem 1.8rem;border-radius:2px;font-weight:500;font-size:.95rem;display:inline-block}footer#contatti .contact-row{display:flex;justify-content:center;gap:2.5rem;flex-wrap:wrap;font-size:.95rem;margin-bottom:3rem;color:#d7d2c3}footer#contatti .contact-row a:hover{color:var(--copper-soft)}footer#contatti .footer-bottom{border-top:1px solid rgba(246,241,231,.12);padding-top:1.5rem;font-family:"Space Mono",monospace;font-size:.75rem;color:#8b9387;display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}#error-404{background-color:var(--cream);text-align:center;min-height:100vh;padding:0 1.5rem}#error-404 h2{padding-top:20vh;font-size:180px;line-height:normal;font-weight:500}#error-404 h1{font-size:25px;font-style:italic;line-height:normal;font-weight:400}#error-404 h1 span{font-weight:bold;font-style:normal}#error-404 p{margin-top:2rem;font-size:25px;line-height:normal;font-weight:400}#error-404 h3{margin-top:15vh;font-size:32px;font-weight:bold;line-height:normal}#error-404 a{display:inline-block;margin-top:2rem;margin-bottom:5rem;font-size:18px;text-transform:uppercase;text-decoration:none;padding:.5rem 1.5rem;border:2px solid #000;line-height:normal}.error404 .header{position:absolute;top:0;left:0}@media screen and (max-width: 767px){#error-404 h2{font-size:80px}#error-404 h1{font-size:20px}#error-404 p{font-size:20px}#error-404 h3{font-size:22px}#error-404 a{font-size:16px;margin-top:1.5rem}}.btn-primary{background:var(--copper);color:var(--cream);padding:.85rem 1.8rem;border-radius:2px;font-weight:500;font-size:.95rem;display:inline-block}.btn-ghost{border:1px solid rgba(246,241,231,.5);color:var(--cream);padding:.85rem 1.8rem;border-radius:2px;font-weight:500;font-size:.95rem;display:inline-block}.hero{position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg, rgba(28, 38, 32, 0.25) 0%, rgba(20, 28, 24, 0.85) 100%),url("img/hero.jpg") center/cover no-repeat;color:var(--cream);padding:clamp(2rem,6vw,5rem);box-sizing:border-box}.hero .hero-content{max-width:780px;margin-bottom:4.5rem}.hero .eyebrow{color:var(--copper-soft);margin-bottom:1rem}.hero h1{font-size:clamp(3rem,9vw,6.5rem);line-height:1}.hero p{font-size:1.15rem;max-width:520px;margin:1.2rem 0 2rem;color:#eae6da}.hero .hero-ctas{display:flex;gap:1rem;flex-wrap:wrap}.ridge{display:block;width:100%;height:64px}.ridge-cream path{fill:var(--cream)}.ridge-marker{position:relative}.marker-label{position:absolute;top:-78px;right:8%;font-family:"Space Mono",monospace;font-size:.8rem;color:var(--copper-soft);text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}.marker-label .dot{width:8px;height:8px;border-radius:50%;background:var(--copper)}.story{padding:clamp(3rem,8vw,6rem) clamp(1.2rem,4vw,3rem);display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,5vw,5rem);align-items:center;max-width:1280px;margin:0 auto}.story img{width:100%;border-radius:2px;display:block}.story .eyebrow{color:var(--copper);margin-bottom:.8rem}.story h2{font-size:clamp(2rem,4vw,2.8rem);margin-bottom:1.2rem;color:var(--pine)}.story p{color:#4a4a43;margin-bottom:1rem}@media(max-width: 860px){.story{grid-template-columns:1fr}.story .img-wrap{order:-1}}.features{background:var(--cream-deep);padding:clamp(3rem,8vw,5rem) clamp(1.2rem,4vw,3rem)}.features .features-head{max-width:1280px;margin:0 auto 2.5rem}.features .features-head .eyebrow{color:var(--copper);margin-bottom:.8rem}.features .features-head h2{font-size:clamp(2rem,4vw,2.8rem);color:var(--pine)}.feature-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:repeat(4, 1fr);gap:1px;background:rgba(40,54,44,.12);border:1px solid rgba(40,54,44,.12)}.feature{background:var(--cream-deep);padding:2rem 1.6rem}.feature svg{width:28px;height:28px;stroke:var(--copper);fill:none;stroke-width:1.6;margin-bottom:1rem;display:block}.feature h3{font-size:1.05rem;color:var(--pine);margin-bottom:.4rem;font-weight:600}.feature p{font-size:.92rem;color:#5c5c53}@media(max-width: 900px){.feature-grid{grid-template-columns:repeat(2, 1fr)}}@media(max-width: 520px){.feature-grid{grid-template-columns:1fr}}.gallery{padding:clamp(3rem,8vw,5rem) clamp(1.2rem,4vw,3rem);max-width:1280px;margin:0 auto}.gallery .gallery-head{margin-bottom:2.5rem}.gallery .gallery-head .eyebrow{color:var(--copper);margin-bottom:.8rem}.gallery .gallery-head h2{font-size:clamp(2rem,4vw,2.8rem);color:var(--pine)}.gallery-grid{display:grid;grid-template-columns:repeat(4, 1fr);grid-auto-rows:200px;gap:.6rem}.gallery-grid img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;border-radius:2px;transition:transform .4s ease}.gallery-grid a{cursor:pointer;display:block;overflow:hidden}.gallery-grid a:hover img{transform:scale(1.03)}.gallery-grid a:nth-child(1){grid-column:span 2;grid-row:span 2}.gallery-grid a:nth-child(6){grid-column:span 2}@media(max-width: 760px){.gallery-grid{grid-template-columns:repeat(2, 1fr);grid-auto-rows:140px}.gallery-grid a:nth-child(1){grid-column:span 2;grid-row:span 1}}.lightbox{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;background:rgba(20,28,24,.94)}.lightbox.active{display:flex}.lightbox img{max-width:88vw;max-height:84vh;-o-object-fit:contain;object-fit:contain;border-radius:2px;width:auto;height:auto}.lightbox-close,.lightbox-prev,.lightbox-next{position:absolute;background:rgba(0,0,0,0);border:1px solid rgba(246,241,231,.4);color:var(--cream);width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.4rem;font-family:"Work Sans",sans-serif;cursor:pointer;line-height:1}.lightbox-close:hover,.lightbox-prev:hover,.lightbox-next:hover{border-color:var(--copper);color:var(--copper-soft)}.lightbox-close{top:1.5rem;right:1.5rem}.lightbox-prev{left:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-next{right:1.5rem;top:50%;transform:translateY(-50%)}.lightbox-counter{position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);font-family:"Space Mono",monospace;font-size:.8rem;color:var(--copper-soft)}@media(max-width: 600px){.lightbox-prev,.lightbox-next{width:40px;height:40px;font-size:1.2rem}.lightbox-close{width:40px;height:40px;top:1rem;right:1rem}.lightbox-prev{left:.5rem}.lightbox-next{right:.5rem}}.dintorni{background:var(--pine);color:var(--cream);padding:clamp(3rem,8vw,5rem) clamp(1.2rem,4vw,3rem);width:100%}.dintorni .dintorni-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,5vw,5rem);max-width:1280px;margin:0 auto;align-items:start}.dintorni .eyebrow{color:var(--copper-soft);margin-bottom:.8rem}.dintorni h2{font-size:clamp(2rem,4vw,2.8rem);margin-bottom:1.2rem}.dintorni p{color:#d7d2c3;margin-bottom:1rem}.dintorni ul{list-style:none;border-top:1px solid rgba(246,241,231,.15)}.dintorni li{display:flex;justify-content:space-between;padding:.9rem 0;border-bottom:1px solid rgba(246,241,231,.15);font-size:.95rem}.dintorni li span:last-child{font-family:"Space Mono",monospace;color:var(--copper-soft);font-size:.85rem}@media(max-width: 860px){.dintorni .dintorni-inner{grid-template-columns:1fr}}body.overlay-open{overflow:hidden}.closure-overlay{position:fixed;inset:0;z-index:999;display:flex;align-items:center;justify-content:center;text-align:center;padding:clamp(1.5rem,6vw,4rem);background:linear-gradient(180deg, rgba(28, 38, 32, 0.55) 0%, rgba(20, 28, 24, 0.9) 100%),url("img/hero.jpg") center/cover no-repeat;color:var(--cream)}.closure-overlay.closed{display:none}.closure-overlay .closure-content{max-width:560px}.closure-overlay .closure-content .eyebrow{color:var(--copper-soft);margin-bottom:1rem}.closure-overlay .closure-content h2{font-size:clamp(2.2rem,6vw,3.2rem);line-height:1.1;margin-bottom:1.2rem}.closure-overlay .closure-content p:not(.eyebrow){font-size:1.1rem;color:#eae6da}.closure-overlay .closure-close{position:absolute;top:clamp(1rem,4vw,2rem);right:clamp(1rem,4vw,2rem);width:2.5rem;height:2.5rem;border:1px solid rgba(246,241,231,.5);border-radius:50%;background:rgba(0,0,0,0);color:var(--cream);font-size:1.5rem;line-height:1;cursor:pointer}.closure-overlay .closure-close:hover{border-color:var(--copper-soft);color:var(--copper-soft)}:root{--cream: #F6F1E7;--cream-deep: #ECE2CE;--pine: #28362C;--pine-deep: #1B2620;--wood: #6E4A2E;--copper: #C1623A;--copper-soft: #E0A37B;--sage: #9CAF93;--ink: #2A2A26}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:"Work Sans",sans-serif;color:var(--ink);background:var(--cream);line-height:1.65;overflow-x:hidden}h1,h2,h3,h4,h5,h6,p{margin:0;padding:0}h1,h2,h3{font-family:"Fraunces",serif;font-weight:600;letter-spacing:-0.01em;line-height:1}.eyebrow{font-family:"Space Mono",monospace;font-size:.75rem;letter-spacing:.18em;text-transform:uppercase}a{color:inherit;text-decoration:none}img{width:100%;height:auto}