@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800&display=swap');

:root {
  --black:#050505;
  --panel:#0b0b0b;
  --panel2:#101010;
  --red:#ed1717;
  --red2:#ff2525;
  --white:#f5f5f5;
  --gray:#a6a6a6;
  --line:#242424;
}

* { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; }
body { background:var(--black); color:var(--white); font-family:Montserrat,Arial,sans-serif; line-height:1.6; }
a { color:inherit; text-decoration:none; }
.container { width:min(1180px,calc(100% - 40px)); margin:auto; }

.header {
  position:absolute; top:0; left:0; width:100%; z-index:20;
  background:rgba(0,0,0,.78); border-bottom:1px solid #1c1c1c;
}
.nav { height:104px; display:flex; align-items:center; gap:35px; }
.brand { width:180px; flex-shrink:0; display:flex; align-items:center; }
.brand img { width:135px; height:135px; object-fit:contain; filter:drop-shadow(0 0 7px rgba(237,23,23,.15)); }
nav { display:flex; align-items:center; justify-content:center; gap:30px; flex:1; }
nav a { font-size:12px; font-weight:600; letter-spacing:.02em; color:#ddd; position:relative; padding:40px 0; }
nav a:hover, nav a.active { color:var(--red); }
nav a.active:after { content:""; position:absolute; left:0; right:0; bottom:25px; height:2px; background:var(--red); }
.outline-btn,.red-btn {
  display:inline-block; padding:14px 24px; border:1px solid var(--red);
  font-size:12px; font-weight:700; letter-spacing:.04em; transition:.2s;
}
.outline-btn { color:var(--red); background:transparent; }
.outline-btn:hover { background:var(--red); color:white; }
.red-btn { background:var(--red); color:#fff; }
.red-btn:hover { background:var(--red2); transform:translateY(-1px); }

.hero {
  min-height:760px; padding-top:120px; position:relative; overflow:hidden;
  background:
    radial-gradient(circle at 75% 50%, rgba(237,23,23,.12), transparent 25%),
    linear-gradient(100deg,#030303 0%,#080808 55%,#0d0505 100%);
}
.hero:after {
  content:""; position:absolute; width:700px;height:700px;right:-300px;top:80px;
  border-radius:50%; background:rgba(237,23,23,.035); filter:blur(30px);
}
.hero-grid { min-height:640px; display:grid; grid-template-columns:48% 52%; align-items:center; }
.kicker { font-size:11px; letter-spacing:.19em; font-weight:700; color:#c9c9c9; margin-bottom:18px; }
.kicker.red { color:var(--red); }
.hero h1 { font-size:clamp(42px,5vw,76px); line-height:1.03; letter-spacing:-.045em; font-weight:700; }
.hero h1 span, h2 span { color:var(--red); }
.lead { max-width:570px; color:#bdbdbd; margin:27px 0 35px; font-size:16px; }
.buttons { display:flex; gap:15px; flex-wrap:wrap; }

.hero-art { height:550px; position:relative; }
.globe {
  position:absolute; width:410px;height:410px;left:70px;top:55px;border:1px solid #292929;
  border-radius:50%; opacity:.75;
  background:radial-gradient(circle at 50% 45%,rgba(237,23,23,.07),transparent 60%);
}
.globe:before,.globe:after { content:""; position:absolute; inset:25px; border:1px solid #202020; border-radius:50%; }
.globe:after { inset:100px 0; border-radius:50%; }
.globe-line { position:absolute; left:25px; right:25px; border-top:1px solid #242424; border-radius:50%; }
.l1{top:100px}.l2{top:205px}.l3{top:310px}
.route { position:absolute; height:1px; background:var(--red); transform-origin:left; box-shadow:0 0 8px rgba(237,23,23,.7); opacity:.85; }
.r1{width:300px;left:70px;top:290px;transform:rotate(-22deg)}
.r2{width:250px;left:200px;top:280px;transform:rotate(12deg)}
.r3{width:280px;left:170px;top:355px;transform:rotate(-40deg)}
.dot { position:absolute;width:7px;height:7px;background:var(--red);border-radius:50%;box-shadow:0 0 12px var(--red); }
.d1{left:65px;top:335px}.d2{left:365px;top:205px}.d3{left:270px;top:350px}.d4{left:490px;top:300px}
.product-stack { position:absolute; right:5px; bottom:35px; display:flex; align-items:flex-end; gap:8px; }
.fake-product { width:95px; border:1px solid #333; background:linear-gradient(145deg,#242424,#090909); box-shadow:0 12px 30px #000; display:flex; align-items:center; justify-content:center; text-align:center; font-weight:800; letter-spacing:.08em; color:#ddd; }
.pasta{height:260px}.sauce{height:205px;background:linear-gradient(145deg,#4d1717,#120606)}.coffee{height:225px}.sweets{height:185px;background:linear-gradient(145deg,#352000,#0b0802)}

.values { background:#090909; border-top:1px solid #1d1d1d; border-bottom:1px solid #1d1d1d; }
.values-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.value { padding:30px 22px; display:flex; gap:17px; border-right:1px solid #292929; }
.value:first-child{padding-left:0}.value:last-child{border-right:0}
.icon { color:var(--red); font-size:34px; line-height:1; }
.value h3 { font-size:12px; margin-bottom:7px; }
.value p { font-size:12px; color:#999; }

.section { padding:110px 0; }
.about { background:#050505; }
.two-col { display:grid; grid-template-columns:1fr 1fr; gap:90px; align-items:start; }
h2 { font-size:clamp(34px,4vw,54px); line-height:1.08; letter-spacing:-.04em; }
.copy { color:#a9a9a9; font-size:15px; }
.copy p { margin-bottom:18px; }

.products { background:#080808; }
.section-title { text-align:center; margin-bottom:50px; }
.section-title h2 { font-size:40px; }
.section-title > p:last-child { color:#888; margin-top:12px; font-size:14px; }

.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.card {
  min-height:280px; padding:28px; border:1px solid #2b2b2b; position:relative; overflow:hidden;
  display:flex; flex-direction:column; justify-content:space-between;
  background:linear-gradient(135deg,#17110e,#070707);
}
.card:after { content:""; position:absolute; width:220px;height:220px;border-radius:50%;right:-100px;bottom:-100px;border:1px solid rgba(237,23,23,.25); }
.card.italy{background:linear-gradient(135deg,#1a0b09,#090909)}
.card.latin{background:linear-gradient(135deg,#1a1208,#090909)}
.card.mediterranean{background:linear-gradient(135deg,#0b1615,#090909)}
.country { color:var(--red); font-size:11px; font-weight:700; letter-spacing:.15em; }
.card h3 { font-size:30px; margin:8px 0; }
.card p:not(.country) { color:#999; font-size:13px; max-width:300px; }
.card a { color:var(--red); font-size:12px; font-weight:700; position:relative; z-index:2; }

.retailers { background:#0b0b0b; border-top:1px solid #1b1b1b; }
.checks { margin-top:25px; border-top:1px solid #252525; }
.checks p { padding:15px 0; border-bottom:1px solid #252525; color:#ddd; }

.cta { padding:90px 0; text-align:center; background:linear-gradient(110deg,#8e0808,#e31717); }
.cta .kicker{color:#ffd4d4}.cta h2{font-size:52px;margin-bottom:30px}.cta .red-btn{background:#050505;border-color:#050505}

.contact { background:#f2f2f2; color:#080808; }
.contact .copy{color:#666}.contact .kicker{color:var(--red)}
form { display:grid; gap:15px; }
label { font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.06em; }
input,textarea { width:100%; margin-top:7px; background:white; border:1px solid #ccc; padding:13px; font:inherit; outline:none; }
input:focus,textarea:focus{border-color:var(--red)}
form button { width:max-content; cursor:pointer; font-family:inherit; }

footer { background:#030303; padding:30px 0; border-top:1px solid #1d1d1d; }
.footer { display:flex; justify-content:space-between; align-items:center; gap:20px; }
.footer img { width:130px;height:90px;object-fit:contain; }
.footer p { color:#666; font-size:11px; }

@media(max-width:900px){
  .nav{height:90px}.brand{width:125px}.brand img{width:105px;height:105px}
  nav{display:none}.nav .outline-btn{margin-left:auto}
  .hero{padding-top:110px}.hero-grid{grid-template-columns:1fr;min-height:auto;padding:70px 0}
  .hero-art{height:390px;margin-top:20px}.globe{width:300px;height:300px;left:15%;top:10px}.product-stack{right:0;bottom:0}.fake-product{width:72px}
  .pasta{height:190px}.sauce{height:155px}.coffee{height:170px}.sweets{height:140px}
  .values-grid{grid-template-columns:1fr 1fr}.value{border-bottom:1px solid #292929}
  .two-col{grid-template-columns:1fr;gap:40px}.cards{grid-template-columns:1fr}
}
@media(max-width:560px){
  .container{width:min(100% - 28px,1180px)}
  .hero h1{font-size:43px}.hero-art{height:330px}.globe{width:250px;height:250px}
  .product-stack{transform:scale(.8);transform-origin:right bottom}
  .values-grid{grid-template-columns:1fr}.value{border-right:0}
  .section{padding:75px 0}.cta h2{font-size:38px}
}
