@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&family=Fraunces:opsz,wght@9..144,600;9..144,700&display=swap";*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--cream);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}button,select,textarea{font:inherit}button,a,select,textarea{-webkit-tap-highlight-color:transparent}:is(a:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible){outline:3px solid var(--berry);outline-offset:5px}button{cursor:pointer}h1,h2,h3,p,figure{margin:0}h1,h2{letter-spacing:-.055em;font-family:Fraunces,Georgia,serif;font-weight:700;line-height:.93}h1{font-size:clamp(4.8rem,10vw,10.5rem)}h2{font-size:clamp(3.2rem,6vw,7rem)}h3{font-size:1.2rem;line-height:1.2}img{object-fit:cover;width:100%;height:100%;display:block}.site{background:var(--cream);min-height:100vh;overflow:hidden}header{z-index:5;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:28px;padding:22px 5%;display:flex;position:relative}.brand{letter-spacing:-.07em;white-space:pre-line;color:var(--berry-dark);font-family:Fraunces,Georgia,serif;font-size:1.75rem;font-weight:700;line-height:.8}nav{gap:30px;font-size:.9rem;font-weight:700;display:flex}nav a:hover{color:var(--berry)}.navcta{align-items:center;gap:20px;font-size:.9rem;font-weight:700;display:inline-flex}.navcta span{background:var(--berry);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;display:grid}.skip{color:#000;z-index:99;background:#fff;padding:15px;position:fixed;top:-100px;left:20px}.skip:focus{top:10px}.hero{background:var(--lemon);grid-template-columns:1fr .9fr;align-items:center;gap:3%;min-height:730px;padding:5.5vw 5% 6vw;display:grid;position:relative}.hero:before{content:"gelato";color:#fff8;letter-spacing:-.1em;pointer-events:none;font-family:Fraunces,Georgia,serif;font-size:22vw;font-weight:700;line-height:.7;position:absolute;top:2vw;right:-2vw;transform:rotate(-8deg)}.hero-copy{z-index:1;max-width:800px;position:relative}.eyebrow{color:var(--berry-dark);letter-spacing:.16em;text-transform:uppercase;margin-bottom:24px;font-size:.78rem;font-weight:700}.intro{max-width:520px;margin:30px 0 34px;font-size:1.15rem;line-height:1.55}.button{border:2px solid var(--berry-dark);background:var(--berry);color:#fff;border-radius:50px;justify-content:space-between;align-items:center;gap:35px;min-height:56px;padding:16px 20px;font-weight:700;transition:transform .2s,background .2s;display:inline-flex}.button:hover{background:var(--berry-dark);transform:translateY(-4px)rotate(-1deg)}.button span{font-size:1.35rem;line-height:1}.location{margin-top:24px;font-size:.85rem;font-weight:700}.hero-image{z-index:1;border:12px solid var(--paper);height:610px;box-shadow:18px 18px 0 var(--berry-dark);background:var(--paper);border-radius:48% 48% 22px 22px;margin-right:2vw;position:relative;overflow:hidden;transform:rotate(3deg)}.hero-image:before{content:"fatto fresco";z-index:2;background:var(--berry);color:#fff;border-radius:0 20px 20px 0;padding:9px 20px;font-size:.8rem;font-weight:700;position:absolute;top:22px;left:-18px;transform:rotate(-8deg)}.hero-image:after{content:"";background:linear-gradient(#0000,#321c2999);position:absolute;inset:55% 0 0}.hero-image figcaption{z-index:3;color:#fff;letter-spacing:.09em;text-transform:uppercase;font-size:.85rem;font-weight:700;position:absolute;bottom:26px;left:28px}.hero-image small{letter-spacing:0;text-transform:none;margin-top:6px;font-size:.72rem;font-weight:400;display:block}.ticker{background:var(--berry-dark);color:#fff;letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;justify-content:space-around;gap:25px;padding:18px 5%;font-size:.82rem;font-weight:700;display:flex}.ticker span{align-items:center;gap:30px;display:flex}.ticker b{color:var(--lemon);font-size:1.2rem}.section-title{max-width:850px;margin-bottom:62px}.items{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.items article{border:2px solid var(--ink);background:var(--pistachio);border-radius:30px 30px 90px;min-height:270px;padding:34px 28px;transition:transform .2s;position:relative}.items article:nth-child(2){background:var(--berry);color:#fff;transform:translateY(35px)}.items article:nth-child(3){background:var(--lemon);border-radius:90px 30px 30px}.items article:hover{transform:translateY(-7px)rotate(-1deg)}.items article:nth-child(2):hover{transform:translateY(28px)rotate(1deg)}.num{color:var(--berry-dark);margin-bottom:45px;font-family:Fraunces,Georgia,serif;font-size:2.8rem;line-height:1;display:block}.items p{max-width:300px;margin-top:15px}.contact{background:var(--berry-dark);color:var(--cream);grid-template-columns:1fr 1fr;gap:10%;padding:100px 7%;display:grid}.contact-intro{max-width:390px;margin:28px 0}.textlink{color:inherit;background:0 0;border:0;border-bottom:1px solid;gap:25px;padding:10px 0;font-weight:700;display:inline-flex}.contact form{border:3px solid var(--ink);background:var(--cream);color:var(--ink);box-shadow:12px 12px 0 var(--lemon);border-radius:30px;padding:36px}.contact form h3{font-family:Fraunces,Georgia,serif;font-size:2rem}.form-note{margin:13px 0 22px;font-size:.82rem;line-height:1.5}label{margin:18px 0 8px;font-size:.9rem;font-weight:700;display:block}select,textarea{border:2px solid var(--line);background:var(--paper);width:100%;color:var(--ink);border-radius:12px;padding:13px}textarea{resize:vertical;min-height:120px}form .button{width:100%;margin-top:20px}.result{margin-top:25px;font-size:.9rem}.result pre{white-space:pre-wrap;overflow-wrap:anywhere;border-top:1px solid var(--line);font:inherit;margin-top:14px;padding-top:14px}.visit{background:var(--pistachio);grid-template-columns:1fr 1fr;gap:10%;padding:95px 7%;display:grid}.visit address{margin-bottom:24px;font-family:Fraunces,Georgia,serif;font-size:1.65rem;font-style:normal;line-height:1.15}.visit p:last-child{max-width:380px;margin-top:20px;font-size:.85rem}footer{background:var(--paper);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:30px;padding:30px 5%;display:flex}footer p,footer>a:last-child{max-width:480px;font-size:.8rem}@media (min-width:1600px){header,.hero,.discover,.contact,.visit,footer{padding-left:max(7%,50vw - 725px);padding-right:max(7%,50vw - 725px)}}@media (max-width:850px){h1{font-size:clamp(4rem,13vw,7rem)}.hero{grid-template-columns:1fr;min-height:0;padding:55px 6% 75px}.hero-image{max-width:620px;height:500px;margin:15px auto 0}.hero:before{font-size:30vw;top:35%}.items{grid-template-columns:1fr}.items article:nth-child(2){transform:none}.items article:nth-child(2):hover{transform:translateY(-7px)rotate(1deg)}.contact,.visit{grid-template-columns:1fr;gap:48px;padding:75px 6%}}@media (max-width:600px){header{padding:18px 6%}nav{display:none}.navcta{font-size:.8rem}.navcta span{width:30px;height:30px}.brand{font-size:1.4rem}.hero{padding-top:42px}.intro{font-size:1rem}.hero-image{height:430px;box-shadow:10px 10px 0 var(--berry-dark);border-width:8px}.discover{padding:75px 6%}.section-title{margin-bottom:38px}.items article{min-height:0;padding:28px}.num{margin-bottom:25px}.contact form{box-shadow:7px 7px 0 var(--lemon);padding:25px}footer{flex-wrap:wrap;align-items:flex-start;padding:28px 6%}footer p{order:3;width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}[data-slot=native-select-wrapper]{width:100%;position:relative}[data-slot=native-select-icon]{display:none}:root{--cream:#fff8e9;--paper:#fffdf7;--ink:#241b27;--berry:#ef5d3e;--berry-dark:#8c2b31;--pistachio:#a9d7bd;--lemon:#f8ce4d;--line:#241b27}body{background:var(--cream);font-family:DM Sans,Arial,sans-serif}.site{background:var(--cream);color:var(--ink)}header{background:var(--paper);border-bottom:3px solid var(--ink);padding:15px 4%}.brand{color:var(--berry-dark);text-transform:uppercase;font-family:Fraunces,Georgia,serif;font-size:2rem;line-height:.75}nav{text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}nav a{border-radius:20px;padding:8px 12px}nav a:hover{background:var(--lemon);color:var(--ink)}.navcta{background:var(--berry);color:#fff;text-transform:uppercase;border-radius:24px;padding:9px 15px;font-size:.75rem}.navcta span{color:#fff;background:0 0;width:auto;height:auto}.hero{background:var(--ink);min-height:790px;padding:0;display:block;position:relative;overflow:hidden}.hero:before{content:"VULCI";z-index:2;color:#fff;letter-spacing:-.11em;opacity:.95;font-family:Fraunces,Georgia,serif;font-size:clamp(5rem,13vw,13rem);line-height:.7;top:35px;left:4%;right:auto;transform:none}.hero-copy{z-index:3;background:var(--cream);border:4px solid var(--ink);max-width:720px;box-shadow:12px 12px 0 var(--berry);border-radius:25px;padding:30px 35px;position:absolute;bottom:8%;left:7%}.hero-copy .eyebrow{color:var(--berry-dark);margin-bottom:18px}.hero h1{color:var(--berry-dark);font-size:clamp(4.2rem,8vw,8.5rem);line-height:.82}.intro{max-width:470px;margin:22px 0;font-size:1rem}.location{margin-top:18px}.hero-image{width:100%;height:100%;box-shadow:none;border:0;border-radius:0;margin:0;position:absolute;inset:0;transform:none}.hero-image img{object-position:center 62%;filter:saturate(1.08)}.hero-image:after{background:linear-gradient(90deg,#241b2788 0%,#241b2730 50%,#241b2710 100%);inset:0}.hero-image:before{background:var(--lemon);color:var(--ink);border:3px solid var(--ink);border-radius:50%;padding:12px 18px;font-family:Fraunces,Georgia,serif;font-size:1rem;inset:auto 5% 9% auto;transform:rotate(8deg)}.hero-image figcaption{display:none}.button{border:3px solid var(--ink);background:var(--berry);box-shadow:4px 4px 0 var(--ink);text-transform:uppercase;letter-spacing:.04em;border-radius:12px;font-size:.82rem}.button:hover{background:var(--lemon);color:var(--ink);box-shadow:1px 1px 0 var(--ink);transform:translate(2px,2px)}.ticker{background:var(--lemon);color:var(--ink);border-block:3px solid var(--ink);padding:15px 4%;font-size:.78rem}.ticker span{gap:20px}.ticker b{color:var(--berry-dark)}.proof{background:var(--pistachio);border-bottom:3px solid var(--ink);grid-template-columns:210px 1fr auto;padding:22px 6%}.proof-rating strong{font-family:Fraunces,Georgia,serif;font-size:1.8rem}.proof-rating span{color:var(--berry-dark)}.proof-list span{border:2px solid var(--ink);background:var(--cream);font-size:.72rem}.proof>a{color:var(--ink);text-transform:uppercase;font-size:.78rem}.discover{background:var(--cream);padding:90px 7%}.section-title{max-width:950px}.section-title .eyebrow{color:var(--berry-dark)}.items{gap:20px}.items article,.items article:nth-child(2),.items article:nth-child(3){border:3px solid var(--ink);background:var(--paper);min-height:290px;color:var(--ink);box-shadow:7px 7px 0 var(--ink);border-radius:18px;padding:30px;transform:none}.items article:nth-child(2){background:var(--berry);color:#fff}.items article:nth-child(3){background:var(--pistachio)}.items article:hover,.items article:nth-child(2):hover{box-shadow:10px 12px 0 var(--ink);transform:translateY(-7px)rotate(-1deg)}.num{color:var(--berry-dark);margin-bottom:48px;font-family:Fraunces,Georgia,serif;font-size:2.3rem}.items article:nth-child(2) .num{color:var(--lemon)}.contact{background:var(--berry-dark);color:var(--cream);padding:95px 7%}.contact .eyebrow{color:var(--lemon)}.contact form{border:3px solid var(--ink);background:var(--paper);box-shadow:10px 10px 0 var(--lemon);border-radius:18px}.contact form h3{color:var(--berry-dark)}select,textarea{border:2px solid var(--ink);border-radius:10px}.contact .button{width:auto}.visit{background:var(--pistachio);border-top:3px solid var(--ink);padding:90px 7%}.visit h2{color:var(--berry-dark)}.visit address{font-family:Fraunces,Georgia,serif}.phone{color:var(--berry-dark);text-underline-offset:4px;text-decoration:underline}footer{background:var(--paper);border-top:3px solid var(--ink)}@media (max-width:850px){.hero{min-height:760px}.hero-copy{padding:24px;bottom:5%;left:5%;right:5%}.hero:before{font-size:25vw;top:28px;left:5%}.hero-image:before{bottom:38%;right:5%}.proof{grid-template-columns:1fr;gap:16px}.contact .button{width:100%}}@media (max-width:600px){header{padding:14px 5%}.brand{font-size:1.55rem}.hero{min-height:720px}.hero-copy{padding:22px 20px;bottom:5%;left:5%;right:5%}.hero h1{font-size:clamp(3.3rem,15vw,5.2rem)}.hero-image img{object-position:58% center}.hero-image:after{background:linear-gradient(#241b2722 20%,#241b27aa 100%)}.hero-image:before{font-size:.8rem;bottom:45%;right:4%}.discover{padding:70px 6%}.items article,.items article:nth-child(2),.items article:nth-child(3){min-height:0}.contact,.visit{padding:70px 6%}}.gallery{background:var(--berry);color:#fff;grid-template-columns:.8fr 1.2fr;align-items:center;gap:7%;padding:100px 7%;display:grid}.gallery .eyebrow{color:var(--lemon)}.gallery-copy h2{font-size:clamp(3rem,5vw,6rem)}.gallery-copy>p:last-child{max-width:400px;margin-top:28px;font-size:1rem}.gallery-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.gallery-grid figure{border:3px solid var(--ink);background:var(--cream);height:380px;box-shadow:8px 8px 0 var(--ink);position:relative;overflow:hidden}.gallery-grid figure:nth-child(2){margin-top:55px}.gallery-grid img{object-fit:cover}.gallery-grid figcaption{background:var(--lemon);color:var(--ink);border:2px solid var(--ink);text-transform:uppercase;padding:7px 11px;font-size:.72rem;font-weight:700;position:absolute;bottom:14px;left:14px}@media (max-width:850px){.gallery{grid-template-columns:1fr;gap:40px;padding:75px 6%}.gallery-grid figure{height:300px}.gallery-grid figure:nth-child(2){margin-top:25px}}@media (max-width:600px){header{gap:10px;min-height:68px;padding:10px 5%}.brand{font-size:1.25rem;line-height:.78}.navcta{white-space:nowrap;padding:8px 12px;font-size:.65rem}.hero{min-height:650px}.hero:before{display:none}.hero-copy{box-shadow:6px 6px 0 var(--berry);padding:17px 16px;inset:92px 5% auto}.hero .button{min-height:45px;padding:10px 14px;font-size:.68rem}.hero .location{margin-top:10px;font-size:.68rem}.hero-image:before{display:none}.hero-image:after{background:linear-gradient(#241b2715 25%,#241b27aa 100%)}.hero{background:var(--ink);flex-direction:column;min-height:0;padding:0 0 34px;display:flex}.hero-image{width:100%;height:360px;box-shadow:none;border:0;border-radius:0;order:1;margin:0;position:relative;inset:auto;transform:none}.hero-image img{object-position:58% center}.hero-copy{background:var(--cream);border:3px solid var(--ink);width:auto;height:auto;min-height:0;box-shadow:7px 7px 0 var(--berry);border-radius:20px;order:2;margin:-42px 5% 0;padding:22px 18px;position:relative;inset:auto}.hero h1{font-size:clamp(3.1rem,14vw,4.3rem);line-height:.84}.hero-copy .eyebrow{margin-bottom:14px;font-size:.66rem}.hero .intro{margin:16px 0;font-size:.92rem;line-height:1.4}.hero .button{justify-content:space-between;width:100%}.hero .location{margin-top:13px}}@media (min-width:851px){.hero h1{font-size:clamp(4.5rem,7vw,7.4rem)}.hero-copy{max-width:650px;padding:26px 30px}}@media (max-width:600px){header{min-height:78px}.hero{min-height:680px}.hero:before{font-size:19vw;top:18px;left:5%}.hero-copy{box-shadow:7px 7px 0 var(--berry);border-width:3px;max-height:none;padding:18px 17px;bottom:28px}.hero h1{font-size:clamp(3rem,13vw,4.35rem);line-height:.86}.hero-copy .eyebrow{margin-bottom:13px;font-size:.68rem}.hero .intro{margin:15px 0;font-size:.91rem;line-height:1.4}.hero .button{min-height:48px;padding:12px 16px;font-size:.72rem}.hero .location{margin-top:12px;font-size:.72rem}.hero-image:before{padding:8px 12px;bottom:40%}.navcta{padding:8px 11px;font-size:.68rem}.navcta span{display:none}}.proof{background:var(--paper);border-bottom:1px solid var(--line);grid-template-columns:240px 1fr auto;align-items:center;gap:35px;padding:28px 7%;display:grid}.proof-rating{grid-template-columns:auto auto;align-items:center;column-gap:12px;display:grid}.proof-rating strong{font-family:Fraunces,Georgia,serif;font-size:2.1rem;line-height:1}.proof-rating span{color:var(--berry);letter-spacing:2px}.proof-rating small{grid-column:1/-1;margin-top:3px;font-size:.76rem}.proof-list{flex-wrap:wrap;gap:10px;display:flex}.proof-list span{border:1px solid var(--line);border-radius:50px;padding:8px 12px;font-size:.78rem;font-weight:700}.proof>a{color:var(--berry-dark);text-underline-offset:4px;font-size:.85rem;font-weight:700;text-decoration:underline}.phone{color:var(--berry-dark);margin-top:20px;font-weight:700;display:block}@media (max-width:850px){.proof{grid-template-columns:1fr;gap:18px;padding:28px 6%}.proof>a{justify-self:start}}
