:root{
  --bg:#09080c;
  --panel:#111017;
  --panel-2:#17141f;
  --panel-3:#1d1721;
  --text:#f8f4ef;
  --muted:#b8b2ae;
  --line:rgba(255,255,255,.08);
  --accent:#f08135;
  --accent-soft:#ffd7b7;
  --gold:#d6c66a;
  --radius-xl:34px;
  --radius-lg:28px;
  --radius-md:20px;
  --container:min(1180px, calc(100vw - 28px));
  --transition:320ms cubic-bezier(.2,.7,.2,1);
  --shadow:0 24px 80px rgba(0,0,0,.35);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',system-ui,sans-serif;
  color:var(--text);
  background:
    radial-gradient(circle at 10% 5%, rgba(240,129,53,.11), transparent 22%),
    radial-gradient(circle at 90% 15%, rgba(214,198,106,.09), transparent 24%),
    radial-gradient(circle at 50% 30%, rgba(255,141,74,.08), transparent 32%),
    linear-gradient(180deg, #06050a 0%, #0e0c13 100%);
  overflow-x:hidden;
}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button{font:inherit;border:0;background:none;cursor:pointer}
.container{width:var(--container);margin:0 auto}

.bg-orb{
  position:fixed; border-radius:50%; filter:blur(80px); pointer-events:none; z-index:0; opacity:.45;
}
.orb-1{width:260px;height:260px;background:rgba(240,129,53,.14);left:-70px;top:14vh}
.orb-2{width:220px;height:220px;background:rgba(214,198,106,.12);right:-50px;top:45vh}
.grain{
  position:fixed; inset:0; pointer-events:none; z-index:0; opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='2'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.75'/%3E%3C/svg%3E");
}

.header{
  position:fixed; top:12px; left:0; right:0; z-index:40;
}
.header-shell{
  width:var(--container); margin:0 auto; padding:12px 14px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
  border:1px solid var(--line); border-radius:999px;
  background:rgba(11,10,14,.62); backdrop-filter:blur(16px); box-shadow:0 14px 40px rgba(0,0,0,.22);
}
.brand{display:flex; align-items:center; gap:12px; min-width:0}
.brand-logo,.footer-brand img{
  width:58px; height:58px; object-fit:cover; border-radius:50%;
  background:rgba(255,255,255,.95); padding:4px;
  box-shadow:0 10px 24px rgba(0,0,0,.24);
  border:1px solid rgba(255,255,255,.2);
}
.brand-copy{display:flex; flex-direction:column; line-height:1}
.brand-copy strong{letter-spacing:.14em; font-size:.95rem}
.brand-copy span{font-size:.72rem; text-transform:uppercase; letter-spacing:.15em; color:var(--muted); margin-top:5px}

.nav{display:flex; gap:8px; align-items:center}
.nav a{
  padding:10px 14px; border-radius:999px; color:#f4f0eb; transition:var(--transition);
}
.nav a:hover{background:rgba(255,255,255,.07); transform:translateY(-1px)}
.menu-toggle{display:none; width:46px; height:46px; border-radius:50%; border:1px solid var(--line)}
.menu-toggle span{display:block; width:18px; height:2px; background:#fff; margin:4px auto; transition:var(--transition)}

.hero{
  position:relative; min-height:100svh; overflow:hidden;
}
.hero-slider,.hero-slide{position:absolute; inset:0}
.hero-slide{
  opacity:0; visibility:hidden; transition:opacity .9s ease, visibility .9s ease;
}
.hero-slide.is-active{opacity:1; visibility:visible}
.hero-slide > img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transform:scale(1.06); transition:transform 5.8s ease;
}
.hero-slide.is-active > img{transform:scale(1)}
.hero-overlay{
  position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(8,8,10,.38) 0%, rgba(8,8,10,.42) 28%, rgba(8,8,10,.72) 72%, rgba(8,8,10,.94) 100%),
    linear-gradient(90deg, rgba(8,8,10,.82) 0%, rgba(8,8,10,.32) 46%, rgba(8,8,10,.74) 100%);
}
.hero-content{
  position:relative; z-index:2; min-height:100svh; display:grid; grid-template-columns:1.1fr .9fr; gap:28px;
  align-items:center; padding-top:110px; padding-bottom:110px;
}
.hero-content.single{grid-template-columns:1fr}
.hero-copy{max-width:760px}
.eyebrow,.section-tag{
  display:inline-flex; align-items:center; gap:10px; color:var(--accent-soft);
  text-transform:uppercase; letter-spacing:.22em; font-size:.8rem; margin-bottom:18px;
}
.eyebrow::before,.section-tag::before{
  content:""; width:38px; height:1px; background:linear-gradient(90deg, var(--accent), transparent);
}
.eyebrow.small{font-size:.72rem; margin-bottom:10px}
.hero h1,.section-head h2,.intro-card h2,.about-box h2,.contact-card h2{
  font-family:'Playfair Display', serif; line-height:.94; letter-spacing:-.04em;
}
.hero h1{
  font-size:clamp(3rem, 7vw, 6.3rem); max-width:12ch;
}
.hero h1 span{color:var(--accent)}
.hero-copy p{
  margin-top:22px; max-width:60ch; color:#efe3da; line-height:1.82; font-size:1.06rem;
}
.hero-actions{display:flex; flex-wrap:wrap; gap:14px; margin-top:30px}
.btn{
  min-height:56px; padding:0 22px; border-radius:999px; display:inline-flex; align-items:center; justify-content:center;
  transition:var(--transition);
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  background:linear-gradient(135deg, var(--accent) 0%, #ffb278 100%); color:#1c120d; font-weight:800; box-shadow:0 18px 40px rgba(240,129,53,.22);
}
.btn-secondary{
  border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.04);
}

.glass{
  background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.05));
  backdrop-filter:blur(18px); border:1px solid rgba(255,255,255,.12); box-shadow:var(--shadow);
}
.hero-welcome{
  max-width:390px; justify-self:end; border-radius:30px; padding:28px; display:grid; gap:18px;
}
.hero-logo{
  width:116px; height:116px; object-fit:cover; border-radius:50%; padding:6px;
  background:rgba(255,255,255,.96); border:1px solid rgba(255,255,255,.22);
  box-shadow:0 18px 40px rgba(0,0,0,.22);
}
.hero-welcome h2{font-family:'Playfair Display', serif; font-size:2rem}
.hero-welcome p{color:#ebdfd7; line-height:1.75}

.hero-ui{
  position:relative; z-index:3; min-height:100svh; display:flex; align-items:flex-end; justify-content:space-between; padding-bottom:48px;
}
.hero-dots{display:flex; gap:10px}
.dot{
  width:12px; height:12px; border-radius:999px; background:rgba(255,255,255,.22); border:1px solid rgba(255,255,255,.14); transition:var(--transition);
}
.dot.active{width:34px; background:var(--accent)}
.hero-arrows{display:flex; gap:12px}
.arrow{
  width:52px; height:52px; border-radius:50%; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.12); color:#fff; font-size:1.9rem; transition:var(--transition); backdrop-filter:blur(16px);
}
.arrow:hover{transform:translateY(-2px) scale(1.03); background:rgba(255,255,255,.2)}

.intro,.about-layout,.contact-layout{
  position:relative; z-index:2;
}
.intro{
  margin-top:28px; display:grid; grid-template-columns:1.15fr .85fr; gap:18px;
}
.intro-card,.products-shell,.news-card,.about-photo,.pill,.about-box,.contact-card,.map-wrap{
  box-shadow:var(--shadow);
}
.intro-card{
  border-radius:30px; padding:30px; background:
    linear-gradient(135deg, rgba(29,23,33,.96), rgba(10,8,14,.92)),
    linear-gradient(180deg, rgba(18,16,24,.96), rgba(14,12,18,.9)); border:1px solid rgba(255,255,255,.12);
}
.intro-card h2{font-size:clamp(2.1rem, 4.5vw, 3.8rem); margin-bottom:14px}
.intro-card p{color:var(--muted); line-height:1.8}
.intro-lead{
  position:relative; overflow:hidden;
}
.intro-lead::after{
  content:""; position:absolute; inset:auto -10% -30% auto; width:220px; height:220px; border-radius:50%;
  background:radial-gradient(circle, rgba(240,129,53,.26), transparent 60%);
}
.info-pills{display:grid; grid-template-columns:repeat(2,1fr); gap:18px}
.pill{
  border-radius:24px; padding:24px; display:grid; align-content:center; min-height:150px;
  background:linear-gradient(180deg, rgba(255,255,255,.11), rgba(255,255,255,.04));
}
.pill strong{font-size:1.2rem; margin-bottom:8px}
.pill span{color:var(--muted); line-height:1.6}

.section{position:relative; z-index:2; padding:120px 0}
.section-head{max-width:760px; margin-bottom:28px}
.section-head h2{font-size:clamp(2.1rem, 4.8vw, 4.4rem); margin-bottom:12px}
.section-head p{color:var(--muted); line-height:1.8}

.categories{
  display:flex; flex-wrap:wrap; gap:12px; margin-bottom:24px;
}
.category{
  padding:14px 18px; border-radius:999px; color:#efe8e0; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.04); transition:var(--transition)
}
.category:hover,.category.active{
  background:rgba(240,129,53,.16); border-color:rgba(240,129,53,.36); transform:translateY(-1px)
}
.products-shell{
  border-radius:32px; padding:26px; background:
    linear-gradient(180deg, rgba(255,255,255,.07), rgba(255,255,255,.03)),
    radial-gradient(circle at top right, rgba(240,129,53,.08), transparent 22%);
  border:1px solid var(--line)
}
.products-head{
  display:grid; grid-template-columns:.85fr 1fr; gap:20px; align-items:end; padding-bottom:22px; border-bottom:1px solid var(--line)
}
.products-head h3{font-size:1.7rem}
.products-head p{color:var(--muted); line-height:1.75}
.products-grid{
  padding-top:24px; display:grid; grid-template-columns:repeat(3,1fr); gap:20px
}
.product-card{
  border-radius:24px; overflow:hidden; background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.03)); border:1px solid rgba(255,255,255,.08); transition:var(--transition)
}
.product-card:hover{transform:translateY(-8px); border-color:rgba(214,198,106,.35); box-shadow:0 28px 70px rgba(0,0,0,.28)}
.product-image{aspect-ratio:4/3; overflow:hidden}
.product-image img{width:100%; height:100%; object-fit:cover; transition:transform .7s ease}
.product-card:hover .product-image img{transform:scale(1.08)}
.product-body{padding:18px 18px 20px}
.product-top{display:flex; justify-content:space-between; align-items:center; gap:10px; margin-bottom:10px}
.chip{padding:8px 12px; border-radius:999px; background:rgba(240,129,53,.15); color:var(--accent-soft); font-size:.76rem; text-transform:uppercase; letter-spacing:.14em}
.product-card h4{font-size:1.14rem; margin-bottom:10px}
.product-card p{color:var(--muted); line-height:1.7}
.inline-link{display:inline-flex; align-items:center; gap:8px; margin-top:14px; color:#f4dfcb; font-weight:600}
.inline-link::after{content:"→"; transition:var(--transition)}
.product-card:hover .inline-link::after{transform:translateX(4px)}

.news-section{
  background:linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.04)); border-top:1px solid var(--line); border-bottom:1px solid var(--line)
}
.news-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:20px
}
.news-card{
  border-radius:28px; padding:28px; background:linear-gradient(180deg, rgba(18,16,24,.95), rgba(14,12,18,.88)); border:1px solid var(--line); transition:var(--transition)
}
.news-card:hover{transform:translateY(-6px)}
.news-card-image{padding:0; overflow:hidden}
.news-card-image img{
  width:100%; height:220px; object-fit:cover; border-bottom:1px solid var(--line);
}
.news-copy{padding:24px 24px 26px}
.news-date{display:inline-block; color:var(--accent-soft); text-transform:uppercase; letter-spacing:.18em; font-size:.76rem; margin-bottom:16px}
.news-card h3{font-size:1.25rem; margin-bottom:12px}
.news-card p{color:var(--muted); line-height:1.75}

.about-layout{
  display:grid; grid-template-columns:.95fr 1.05fr; gap:26px; align-items:start
}
.about-box{
  border-radius:32px; padding:32px
}
.about-box h2{font-size:clamp(2.1rem, 4.5vw, 4rem); margin-bottom:14px}
.about-box p{color:var(--muted); line-height:1.85}
.about-box p + p{margin-top:14px}
.about-gallery{
  display:grid; grid-template-columns:1fr 1fr; gap:18px
}
.about-photo{
  border-radius:26px; overflow:hidden; border:1px solid rgba(255,255,255,.08)
}
.about-photo img{width:100%; height:100%; object-fit:cover; transition:transform .8s ease}
.about-photo:hover img{transform:scale(1.06)}
.about-photo.tall{grid-column:span 2; aspect-ratio:16/9}
.about-photo:not(.tall){aspect-ratio:1/1}

.contact-layout{
  display:grid; grid-template-columns:.85fr 1.15fr; gap:24px; align-items:center
}
.contact-card{
  border-radius:32px; padding:30px
}
.contact-card h2{font-size:clamp(2rem, 4vw, 3.5rem); margin-bottom:14px}
.contact-list{
  display:grid; gap:18px; margin-top:20px
}
.contact-list strong{display:block; margin-bottom:8px}
.contact-list p,.contact-list a{color:var(--muted); line-height:1.7}
.socials{display:flex; flex-wrap:wrap; gap:14px}
.socials a{
  padding:10px 14px; border-radius:999px; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.08)
}
.edit-note{display:block; margin-top:18px; color:#d7cfc9}
.map-wrap{
  border-radius:32px; overflow:hidden; border:1px solid rgba(255,255,255,.08)
}
.map-wrap iframe{width:100%; height:500px; border:0; display:block}

.footer{
  position:relative; z-index:2; padding:26px 0 40px; border-top:1px solid var(--line)
}
.footer-shell{
  display:flex; justify-content:space-between; align-items:center; gap:16px; color:var(--muted)
}
.footer-brand{display:flex; align-items:center; gap:12px}
.footer-brand strong{display:block; letter-spacing:.15em}
.footer-brand span{font-size:.74rem; text-transform:uppercase; letter-spacing:.15em; color:var(--muted)}

.reveal{opacity:0; transform:translateY(32px) scale(.985); transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal.in-view{opacity:1; transform:translateY(0) scale(1)}
.delay-1{transition-delay:.12s}
.delay-2{transition-delay:.22s}

@media (max-width: 1080px){
  .hero-content,.intro,.products-head,.about-layout,.contact-layout{grid-template-columns:1fr}
  .hero-welcome{justify-self:start}
  .info-pills,.products-grid,.news-grid{grid-template-columns:repeat(2,1fr)}
}

@media (max-width: 820px){
  .header-shell{width:calc(100vw - 16px); padding:10px 12px; border-radius:26px}
  .menu-toggle{display:block}
  .nav{
    position:absolute; top:calc(100% + 10px); left:0; right:0; display:grid; gap:8px;
    padding:12px; border:1px solid var(--line); border-radius:24px; background:rgba(11,10,14,.96);
    opacity:0; pointer-events:none; transform:translateY(-8px); transition:var(--transition)
  }
  .header.nav-open .nav{opacity:1; pointer-events:auto; transform:translateY(0)}
  .nav a{background:rgba(255,255,255,.04)}
  .brand-copy span{display:none}
  .hero-content{padding-top:118px; padding-bottom:130px}
  .hero-ui{padding-bottom:86px}
  .intro{margin-top:18px}
  .info-pills,.products-grid,.news-grid,.about-gallery{grid-template-columns:1fr}
  .products-head{gap:12px}
  .about-photo.tall{grid-column:auto}
  .map-wrap iframe{height:380px}
  .footer-shell{flex-direction:column; text-align:center}
  .news-card-image img{height:200px}
}

@media (max-width: 560px){
  .container{width:min(100vw - 18px, 1180px)}
  .hero h1{font-size:clamp(2.5rem, 12vw, 4rem)}
  .hero-actions{flex-direction:column}
  .btn{width:100%}
  .hero-arrows{gap:8px}
  .arrow{width:46px; height:46px}
  .pill,.intro-card,.products-shell,.news-card,.about-box,.contact-card,.map-wrap,.about-photo{border-radius:24px}
  .news-copy{padding:20px}
}
