@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');

:root{
  --ink:#171513; --cream:#f3eee5; --paper:#fbfaf7; --burgundy:#6b2029;
  --muted:#746f68; --line:rgba(23,21,19,.14);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",Arial,sans-serif}
a{color:inherit;text-decoration:none}
.site-header{height:82px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:rgba(251,250,247,.92);backdrop-filter:blur(10px);position:sticky;top:0;z-index:10}
.brand{display:flex;align-items:center}
.brand-logo{width:62px;height:62px;object-fit:contain;border-radius:50%}
.nav{display:flex;gap:34px;font-size:13px;text-transform:uppercase;letter-spacing:.12em}
.nav a{opacity:.7}.nav a:hover{opacity:1}
.lang{border:1px solid var(--ink);background:transparent;padding:8px 12px;border-radius:999px;font:inherit;font-size:12px;cursor:pointer}
.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:1.05fr .95fr;overflow:hidden;background:var(--cream)}
.hero-copy{padding:10vh 6vw 9vh 10vw;display:flex;flex-direction:column;justify-content:center}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:700;margin:0 0 24px;color:var(--burgundy)}
h1,h2{font-family:"Playfair Display",Georgia,serif;font-weight:500;line-height:.98;margin:0}
h1{font-size:clamp(60px,8vw,116px);max-width:800px;letter-spacing:-.04em}
.hero-text{max-width:540px;color:var(--muted);font-size:18px;line-height:1.7;margin:30px 0}
.actions{display:flex;gap:12px;flex-wrap:wrap}
.btn{padding:14px 22px;border-radius:999px;font-size:13px;font-weight:700}
.btn-dark{background:var(--ink);color:white}.btn-ghost{border:1px solid var(--ink)}
.hero-art{position:relative;min-height:620px;background:#1c1816;overflow:hidden}
.hero-photo{background:#1c1816}
.hero-photo img{width:100%;height:100%;min-height:620px;display:block;object-fit:cover;object-position:center center}
.ring{position:absolute;border:1px solid rgba(255,255,255,.15);border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%)}
.ring-a{width:70%;aspect-ratio:1}.ring-b{width:48%;aspect-ratio:1}
.cup{position:absolute;left:50%;top:50%;width:260px;height:180px;transform:translate(-50%,-42%);background:#e9e0d3;border-radius:20px 20px 70px 70px;box-shadow:0 35px 70px rgba(0,0,0,.35)}
.coffee{position:absolute;left:14px;right:14px;top:12px;height:56px;background:#351b13;border-radius:50%}
.handle{position:absolute;right:-58px;top:35px;width:90px;height:90px;border:20px solid #e9e0d3;border-left:0;border-radius:0 60px 60px 0}
.bean{position:absolute;width:44px;height:28px;background:#5c2a20;border-radius:55% 45% 55% 45%;transform:rotate(-35deg)}
.bean:after{content:"";position:absolute;left:21px;top:3px;width:2px;height:22px;background:rgba(255,255,255,.2);transform:rotate(20deg)}
.bean-1{top:18%;left:17%}.bean-2{bottom:17%;right:16%;transform:rotate(22deg) scale(.8)}.bean-3{top:26%;right:18%;transform:rotate(70deg) scale(.55)}
.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw;padding:130px 10vw}
h2{font-size:clamp(42px,5vw,72px);letter-spacing:-.035em}
.lead{font-size:20px;line-height:1.75;color:var(--muted);max-width:650px;margin:35px 0 0}
.coffee-section{padding:110px 6vw;background:#171513;color:#fff}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:55px}
.section-head h2{max-width:700px}.section-head>p{max-width:330px;color:#b8b0a8;line-height:1.6}
.section-head .eyebrow{color:#c58d76}
.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product-card{background:#24201d;min-height:560px;display:flex;flex-direction:column}
.product-visual{height:360px;background:#5f1f29;display:grid;place-items:center;overflow:hidden}
.product-visual.light{background:#e7dfd2}.product-visual.dark{background:#292724}
.bag{width:150px;height:220px;border-radius:5px 5px 12px 12px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;box-shadow:0 25px 45px rgba(0,0,0,.25);transform:rotate(-2deg)}
.bag span{font-family:"Playfair Display",Georgia,serif;font-size:34px}.bag small{font-size:9px;letter-spacing:.25em}
.bag-burgundy{background:#741f2c;color:#f4eadc}.bag-cream{background:#f3eadc;color:#1d1815}.bag-black{background:#121110;color:#f3eadc}
.product-info{padding:28px 30px 34px}.product-info span{font-size:11px;color:#b8b0a8;letter-spacing:.2em}.product-info h3{font-family:"Playfair Display",Georgia,serif;font-size:30px;font-weight:500;margin:12px 0}.product-info p{color:#aaa39c;line-height:1.6;margin:0}
.statement{padding:140px 10vw;background:var(--cream)}
.statement-inner{max-width:950px}.statement h2{max-width:900px}.statement p:last-child{max-width:680px;color:var(--muted);font-size:18px;line-height:1.7}
.contact{padding:120px 10vw;display:grid;grid-template-columns:1fr 1fr;gap:10vw}
.contact p:not(.eyebrow){color:var(--muted);font-size:18px;line-height:1.7;max-width:520px}
.contact-box{border-top:1px solid var(--line)}
.contact-box div{padding:22px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px}.contact-box span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.14em}.contact-box strong{font-weight:500;text-align:right}
footer{padding:30px 5vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:12px}.footer-brand{display:flex;align-items:center}
.footer-brand img{width:58px;height:58px;object-fit:contain;border-radius:50%}
@media(max-width:850px){
  .site-header{padding:0 5vw}.nav{display:none}
  .hero{grid-template-columns:1fr}.hero-copy{padding:90px 7vw}.hero-art{min-height:430px}.hero-photo img{min-height:430px}
  .intro,.contact{grid-template-columns:1fr;padding:90px 7vw;gap:40px}
  .section-head{display:block}.section-head>p{margin-top:20px}
  .product-grid{grid-template-columns:1fr}
  .product-card{min-height:auto}.product-visual{height:300px}
  footer{display:block}footer p{margin-top:12px}
}

.brand-intro{display:flex;align-items:end;justify-content:space-between;gap:30px;margin:10px 0 36px;padding-top:18px;border-top:1px solid rgba(255,255,255,.15)}
.brand-intro-name{font-family:"Playfair Display",Georgia,serif;font-size:34px;letter-spacing:.03em}.brand-intro-name span{font-family:"DM Sans",Arial,sans-serif;font-size:11px;letter-spacing:.3em;margin-left:8px;color:#b8b0a8}
.brand-intro p{margin:0;color:#aaa39c}
.product-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.real-product{background:#24201d;min-width:0;overflow:hidden}
.real-image{height:300px;background:#f7f5f1;display:grid;place-items:center;padding:22px}
.real-image img{width:100%;height:100%;object-fit:contain;display:block}
.real-copy{padding:22px 20px 24px}.real-copy span{font-size:9px;letter-spacing:.18em;color:#b8b0a8}.real-copy h3{font-family:"Playfair Display",Georgia,serif;font-size:24px;font-weight:500;margin:9px 0}.real-copy p{font-size:12px;line-height:1.5;color:#aaa39c;margin:0}
.portfolio-note{margin-top:28px;padding:22px 24px;border:1px solid rgba(255,255,255,.14);display:flex;gap:15px;flex-wrap:wrap;color:#aaa39c;font-size:13px;line-height:1.6}.portfolio-note strong{color:#fff}
@media(max-width:1100px){.product-gallery{grid-template-columns:repeat(3,1fr)}}
@media(max-width:750px){.product-gallery{grid-template-columns:repeat(2,1fr)}.real-image{height:250px}.brand-intro{display:block}.brand-intro p{margin-top:8px}}
@media(max-width:480px){.product-gallery{grid-template-columns:1fr}.real-image{height:330px}}


.partner-brands{margin-top:110px;padding-top:90px;border-top:1px solid rgba(255,255,255,.14)}
.brand-section-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:45px}
.brand-section-head h2{max-width:760px}
.brand-showcase{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.brand-panel{background:#f6f2eb;color:#171513;padding:28px;min-height:500px;display:flex;flex-direction:column}
.brand-panel-title{display:flex;align-items:baseline;justify-content:space-between;gap:15px;border-bottom:1px solid rgba(23,21,19,.14);padding-bottom:16px}
.brand-panel-title span{font-size:28px;font-weight:800;letter-spacing:.02em}
.brand-panel-title small{font-size:9px;letter-spacing:.16em;color:#746f68;text-align:right}
.brand-products{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;align-items:center;flex:1;padding:28px 5px}
.brand-products.brand-products-2{grid-template-columns:repeat(2,1fr)}
.brand-products img{width:100%;height:235px;object-fit:contain;display:block;mix-blend-mode:multiply}
.brand-panel h3{font-family:"Playfair Display",Georgia,serif;font-size:27px;font-weight:500;margin:0;padding-top:18px;border-top:1px solid rgba(23,21,19,.14)}
.lavazza-panel .brand-panel-title span{color:#17365f}
.illy-panel .brand-panel-title span{color:#d22d2d}
.hausbrandt-panel .brand-panel-title span{color:#9b7a46}
.tasty-panel .brand-panel-title span{color:#4b2b20}
.bianchi-panel .brand-panel-title span{color:#111;letter-spacing:.12em}
.bianchi-panel{grid-column:1 / -1}
.bianchi-panel .brand-products{grid-template-columns:repeat(6,1fr)}
@media(max-width:900px){.brand-showcase{grid-template-columns:1fr}.bianchi-panel{grid-column:auto}.bianchi-panel .brand-products{grid-template-columns:repeat(3,1fr)}.brand-section-head{display:block}.brand-section-head h2{margin-top:15px}.brand-products img{height:210px}}
@media(max-width:560px){.brand-panel{padding:20px}.brand-panel-title{display:block}.brand-panel-title small{display:block;margin-top:6px;text-align:left}.brand-products{grid-template-columns:repeat(2,1fr)}.brand-products img{height:190px}}

.product-categories{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 34px;padding-bottom:26px;border-bottom:1px solid rgba(255,255,255,.14)}
.category-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:12px 18px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#d6d0c9;font-size:12px;line-height:1.35;text-align:center;transition:.2s ease}
.category-btn:hover{border-color:#fff;color:#fff}
.category-btn.active{background:#fff;color:#171513;border-color:#fff}
.real-product[hidden]{display:none}
.additional-products{margin-top:16px}
@media(max-width:750px){.product-categories{flex-wrap:nowrap;overflow-x:auto;padding-bottom:18px;scrollbar-width:none}.product-categories::-webkit-scrollbar{display:none}.category-btn{flex:0 0 auto;max-width:300px}}
.active-nav{color:#b88b48!important}

.email-link{cursor:pointer;text-decoration:none}.email-link:hover{text-decoration:underline}
