@charset "UTF-8";
.products .lines .line-range{padding:28px 30px 30px;border-top:3px solid #d7b47b;background:#291b0c66;color:#fff;box-shadow:none;text-shadow:0 1px 5px #20140680}
.products .lines .line-range:nth-child(2){border-top-color:#b5c794}
.products .lines .line-range h3{font:34px/1.25 'Shadows Into Light',cursive;color:#f1d6a7;margin:0 0 18px}
.products .lines .line-range:nth-child(2) h3{color:#d0dfb6}
.line-range ul{list-style:none;margin:0;padding:0;display:grid;gap:8px;font-size:15px;line-height:1.65}
@media(max-width:800px){.products .lines .line-range{padding:23px 25px}.products .lines .line-range h3{font-size:30px}.line-range ul{font-size:14px}}
.products .lines{background:transparent;padding:0;gap:20px;margin-top:28px;text-shadow:none;align-items:stretch}
.products .lines>p{position:relative;margin:0;padding:32px 34px 34px;background:#f7f3e9f5;color:#302a21;border-top:3px solid #b78b4d;font-size:15px;line-height:1.85;box-shadow:0 8px 24px #21170e12}
.products .lines>p:nth-child(2){border-top-color:#79855a}
.products .lines b{display:block;margin:0 0 16px;color:#79452c;font-size:34px;font-weight:400;line-height:1.25}
.products .lines>p:nth-child(2) b{color:#596642}
.products .lines b+br{display:none}
@media(max-width:800px){.products .lines{gap:14px;margin-top:22px}.products .lines>p{padding:25px 26px;font-size:14px}.products .lines b{font-size:30px;margin-bottom:12px}}
footer .footer-links{display:flex;align-items:center;gap:22px;flex:0 0 auto;position:static;padding:0;background:transparent;font:13px Arial,sans-serif}
footer .footer-links .cookie-settings{margin:0;padding:0;font:inherit;color:inherit;text-decoration:none;white-space:nowrap}
footer .footer-links a:hover,footer .footer-links button:hover{text-decoration:underline;text-underline-offset:4px}
footer .back-to-top{width:44px;height:44px;border:1px solid #b4a58e;border-radius:50%;display:grid;place-items:center;flex:0 0 44px;font:26px/1 Arial,sans-serif;transition:background .2s}
footer .back-to-top:hover{background:#e7d9bd}
@media(max-width:800px){footer .footer-links{display:flex;flex-direction:row;gap:18px;flex:1}footer .back-to-top{margin-left:auto}}
[hidden]{display:none!important}
.cookie-dialog{max-width:650px;width:calc(100% - 32px);max-height:85svh;overflow:auto;border:1px solid #b4a58e;background:#f7f3e9;color:#302a21;padding:30px;box-shadow:0 20px 80px #0004;font:15px/1.6 Arial,sans-serif}
.cookie-dialog::backdrop{background:#20180b66}.cookie-dialog h2{font-size:38px;margin:0 0 18px}.cookie-dialog a{text-decoration:underline}.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.cookie-actions button{flex:1;min-width:150px;background:#79452c;color:white;border:1px solid #79452c;padding:12px;font:inherit;cursor:pointer}.cookie-options{border-top:1px solid #b4a58e;margin-top:20px}.cookie-options label{display:flex;align-items:center;gap:12px;font-size:15px;margin:12px 0}.cookie-options input{width:19px;height:19px;margin:0;accent-color:#79452c}.cookie-settings{display:block;margin:0 auto 24px;border:0;background:transparent;text-decoration:underline;font:13px Arial;color:#79452c;cursor:pointer}.map-placeholder{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:30px}.map-placeholder>p:first-child{font:36px 'Shadows Into Light',cursive}.map-placeholder .button{font-size:13px}
@font-face{font-family:'Shadows Into Light';src:url('assets/shadows-into-light.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Vinelli Icons';src:url('assets/icons.woff') format('woff');font-style:normal;font-weight:400;font-display:block}
:root{--cream:#f7f3e9;--ink:#302a21;--brown:#79452c;--gold:#d7b47b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font-family:Arial,Helvetica,sans-serif;line-height:1.75}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}header{height:96px;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:sticky;top:0;z-index:10;border-bottom:1px solid #302a2118}.brand img{width:114px;max-height:72px;object-fit:contain}nav{display:flex;gap:34px;align-items:center;font-size:14px}nav a:hover,.privacy-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{border:1px solid #b4a58e;padding:10px 20px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.fixed{background-size:cover;background-position:center;background-attachment:fixed}.hero{min-height:calc(100svh - 96px);position:relative;display:grid;place-items:center;text-align:center;color:white;background-image:linear-gradient(0deg,#21170ec2,#21170e55),url('assets/hero.webp')}.hero-inner{padding:60px 24px 90px}.white-logo{width:230px;max-height:170px;object-fit:contain;margin:0 auto 28px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.1}h1{font-size:clamp(42px,5.5vw,84px);margin:0 0 22px;letter-spacing:-2px}.hero p{font-family:Georgia,serif;font-size:clamp(20px,2vw,28px);margin:0 0 36px}.button{background:var(--brown);color:white;padding:15px 25px;display:inline-flex;align-items:center;gap:38px;border:1px solid var(--brown);font:inherit;font-size:14px;cursor:pointer;transition:background .2s}.button:hover{background:#57321f}.button.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}.button.light:hover{background:var(--gold)}.scroll{position:absolute;bottom:24px;font-size:30px;border:1px solid #ffffff70;border-radius:50%;width:48px;height:48px;line-height:44px}.section{max-width:1300px;margin:auto;padding:100px 6%}.story{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:start}.story-photo{position:sticky;top:140px;margin-top:48px}.story-photo img{height:620px;width:100%;object-fit:cover}.story-photo span{position:absolute;bottom:-24px;right:-22px;background:var(--cream);padding:0 22px;font:90px "Shadows Into Light",cursive;color:var(--brown)}.eyebrow{text-transform:uppercase;letter-spacing:3px;font-size:11px;margin-bottom:18px;color:var(--brown)}h2{font-size:clamp(38px,4vw,58px);letter-spacing:-1.5px;margin:0 0 32px}h3{font-size:25px;margin:30px 0 12px}.story-text p{font-size:15px}.story-text br+br{display:none}.story-text>br{display:none}.story-text img{width:130px;margin:24px 0 12px}.story-text i{font-size:12px}.products{color:white;background-image:linear-gradient(#24180cdb,#24180ced),url('assets/forno.webp');text-align:center}.products .eyebrow{color:var(--gold)}.intro{max-width:870px;margin:0 auto 44px;font-size:15px}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.product{background:#fffdf8;padding:30px;display:grid;place-items:center;min-height:320px}.product img{height:260px;width:100%;object-fit:contain;transition:transform .3s}.product:hover img{transform:translateY(-5px)}.lines{display:grid;grid-template-columns:1fr 1fr;gap:50px;text-align:left;margin-top:38px;font-size:15px}.lines b{font:28px Georgia;color:var(--gold);display:inline-block;margin-bottom:12px}.contact-strip{background:#e7d9bd;display:flex;justify-content:center;gap:8%;padding:28px 5%;font-size:18px}.contact-strip span{margin-left:20px}.location{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.location p{font-size:15px}.location-photo img{width:100%;height:580px;object-fit:cover}.location .button{margin-top:20px}.contact-section{background:#eae3d5}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact-layout>div>p{font-size:15px;max-width:430px}form{display:flex;flex-direction:column;align-items:stretch}label{font-size:13px;margin:0 0 6px}input,textarea{width:100%;background:#faf7f0;border:1px solid #b5a992;padding:14px;font:inherit;margin:0 0 20px;border-radius:0;color:var(--ink)}textarea{resize:vertical}input:focus,textarea:focus{outline:2px solid var(--brown);outline-offset:2px}.privacy-link{font-size:11px;letter-spacing:1px;margin-bottom:18px}form .button{align-self:flex-start;min-width:160px;justify-content:space-between}#form-status{font-size:14px}.trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}footer{display:flex;align-items:center;gap:40px;padding:40px 5%;font-size:11px}footer img{width:90px}footer div{flex:1}footer>a:last-child{font-size:28px}.privacy{max-width:1000px}.privacy h1{font-size:40px}.privacy h2{font-size:28px;margin-top:40px}.privacy a{text-decoration:underline}:focus-visible{outline:3px solid #b66d37;outline-offset:5px}
@media(max-width:800px){header{height:80px}.brand img{width:90px;max-height:58px}.menu-toggle{display:block;background:none;border:1px solid #b4a58e;padding:10px;color:var(--ink)}nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);padding:24px;flex-direction:column;gap:20px}nav.open{display:flex}.hero{min-height:calc(100svh - 80px)}.section{padding:65px 7%}.story,.location,.contact-layout{grid-template-columns:1fr;gap:40px}.story-photo{position:relative;top:0;margin:0;order:2}.story-photo img{height:380px}.story-photo span{right:0;font-size:64px}.story-text{order:1}.product-grid{grid-template-columns:repeat(2,1fr);gap:10px}.product{padding:16px;min-height:210px}.product img{height:190px}.lines{grid-template-columns:1fr;gap:10px}.contact-strip{flex-direction:column;gap:12px;font-size:16px;align-items:center}.location-photo img{height:330px}.white-logo{width:190px}.location .button{font-size:12px}footer{flex-wrap:wrap;gap:20px}footer div{flex-basis:65%}.fixed{background-attachment:scroll}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fixed{background-attachment:scroll}*{transition:none!important}}

/* Elementi originali Vinelli: carattere manoscritto, sfondo e navigazione iniziale. */
.hero{background-image:linear-gradient(#21170e35,#21170e75),url('assets/grissini-hero.webp');min-height:900px;min-height:max(850px,calc(100svh - 96px))}
.hero-inner{width:100%;max-width:1320px;padding:55px 28px 80px}
.white-logo{width:clamp(300px,37vw,540px);max-height:250px;margin-bottom:42px}
.hero p{font-family:'Shadows Into Light',cursive;font-size:clamp(25px,2.5vw,38px);margin:26px auto 0;padding-top:24px;border-top:1px solid #ffffff80;max-width:750px}
h2,h3,.lines b{font-family:'Shadows Into Light',cursive;letter-spacing:0;font-weight:400}
.story-text h2{color:#a79a73}
.hero-shortcuts{position:static;display:grid;grid-template-columns:repeat(4,1fr);gap:38px;width:min(850px,100%);margin:58px auto 0;padding:0;background:transparent}
.hero-shortcuts a{display:flex;flex-direction:column;align-items:center;gap:14px;color:#fff;font-size:16px;line-height:1.4;font-weight:600;text-decoration:none;padding:10px 4px;transition:transform .2s}
.hero-shortcuts a:hover{transform:translateY(-5px)}
.hero-shortcuts img{height:68px;width:100px;object-fit:contain}
.original-icon{font-family:'Vinelli Icons';font-size:68px;font-style:normal;font-weight:400;line-height:1;height:68px;display:block}
.brand img{width:135px;max-height:78px}
.nav-contact{border:0;padding:0}.nav-contact span{display:none}
.hero{background-image:linear-gradient(#21170e0a,#21170e30),url('assets/grissini-hero.webp')}
.hero h1,.hero p,.hero-shortcuts a{text-shadow:0 2px 12px #24170a90}
.products{background-image:linear-gradient(#24180c38,#24180c55),url('assets/forno.webp')}
.products h2,.products .eyebrow,.products .intro,.lines{ text-shadow:0 2px 8px #201406}
.products .eyebrow,.lines b{color:#fff4da}
.lines{background:#291b0c80;padding:26px 30px;gap:40px}
.contact-icon{width:68px;height:68px;display:block}
.contact-strip{background:#fffdf8;gap:0;padding:34px 5%;min-height:220px;align-items:stretch}
.contact-strip a{position:relative;display:flex;justify-content:center;align-items:center;min-width:0;flex:1;padding:40px 12px;font-family:'Shadows Into Light',cursive;font-size:clamp(26px,3.1vw,45px);color:#51331f;isolation:isolate}
.contact-strip a svg{position:absolute;width:160px;height:160px;z-index:-1;color:#302a210c;left:50%;top:50%;transform:translate(-50%,-50%)}
.contact-strip a>span{font-family:Arial,sans-serif;font-size:18px;margin-left:14px}
.location-map{height:580px;min-width:0;background:#eae3d5;border:1px solid #d4cbb9}
.location-map iframe{display:block;width:100%;height:100%;border:0}
.privacy-consent{display:flex;align-items:flex-start;gap:10px;margin:0 0 24px;font-size:14px;line-height:1.6;cursor:pointer}
.privacy-consent input{width:18px;height:18px;flex:0 0 18px;margin:3px 0 0;accent-color:var(--brown);cursor:pointer}
.privacy-consent a{text-decoration:underline;text-underline-offset:3px}
header nav,header>a:not(.brand),.menu-toggle{font-family:'Shadows Into Light',cursive;font-size:24px}
.contact-photo{width:min(380px,100%);margin:35px auto 0;mix-blend-mode:multiply}
.privacy-intro{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center;margin-bottom:45px}
.privacy-intro h1{font-family:'Shadows Into Light',cursive;font-size:54px;letter-spacing:0;margin:0}
.privacy-intro img{width:100%;mix-blend-mode:multiply}
.image-reveal{opacity:0;transform:translateY(26px);transition:opacity .75s ease var(--reveal-delay,0ms),transform .75s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}
.image-reveal.is-visible{opacity:1;transform:translateY(0)}
@media(max-width:800px){header nav,.menu-toggle{font-size:22px}.privacy-intro{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.privacy-intro img{max-width:400px;margin:auto}.contact-photo{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.image-reveal{opacity:1;transform:none;transition:none}}
@media(max-width:800px){.contact-strip{gap:12px;padding:24px 4%}.contact-strip a{width:100%;padding:32px 0;font-size:clamp(23px,5.8vw,36px)}.contact-strip a svg{width:115px;height:115px}.contact-icon{width:54px;height:54px}.location-map{height:380px}.lines{padding:22px;gap:10px}}
@media(max-width:800px){.brand img{width:105px;max-height:63px}.hero{min-height:830px}.hero-inner{padding:40px 22px 65px}.white-logo{width:min(360px,85%);max-height:170px;margin-bottom:32px}.hero-shortcuts{grid-template-columns:repeat(2,1fr);gap:26px 14px;margin-top:38px}.hero-shortcuts a{font-size:14px}.hero-shortcuts img{height:54px;width:84px}.original-icon{font-size:54px;height:54px}.hero p{padding-top:22px}.hero h1{font-size:clamp(36px,7vw,58px);letter-spacing:-1px}}


/* Stabilita delle immagini con dimensioni intrinseche dichiarate. */
.brand img,.white-logo,footer img{height:auto}.contact-photo,.privacy-intro img{height:auto}
