*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Helvetica Neue',Arial,'Hiragino Kaku Gothic ProN',sans-serif;background:#111;color:#fff;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
ul{list-style:none}

/* ── Header ── */
.header{position:fixed;top:0;left:0;right:0;z-index:100;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;background:#111;border-bottom:1px solid rgba(255,255,255,.08)}
.site-name{font-size:15px;font-weight:500;letter-spacing:3px}
.site-name a{color:#fff}
.nav{display:flex;gap:28px}
.nav a{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);transition:color .3s;position:relative}
.nav a:hover,.nav a.active{color:#fff}
.nav a.active::after{content:'';position:absolute;bottom:-4px;left:0;right:0;height:1px;background:rgba(255,255,255,.5)}
.nav-dropdown{position:relative;display:flex;align-items:center}
.nav-dropdown-toggle{font-size:inherit;letter-spacing:inherit;text-transform:inherit;color:rgba(255,255,255,.6);transition:color .3s;cursor:pointer;position:relative}
.nav-dropdown-toggle:hover,.nav-dropdown-toggle.active{color:#fff}
.nav-dropdown-toggle.active{color:#fff}
.nav-dropdown-toggle::after{content:'';display:inline-block;width:0;height:0;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid currentColor;margin-left:6px;vertical-align:middle}
.nav-dropdown-menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:12px;background:#1a1a1a;border:1px solid rgba(255,255,255,.1);border-radius:4px;min-width:160px;padding:8px 0;z-index:200}
.nav-dropdown:hover .nav-dropdown-menu{display:block}
.nav-dropdown-menu a{display:block;padding:10px 20px;font-size:11px;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.6);transition:all .2s;white-space:nowrap}
.nav-dropdown-menu a:hover{color:#fff;background:rgba(255,255,255,.05)}
.nav-dropdown-menu a.active{color:#fff}
.menu-toggle{display:none;background:none;border:none;color:#fff;font-size:24px;cursor:pointer}

/* ── Hero ── */
.hero{position:relative;height:calc(100vh - 65px);margin-top:65px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.hero-slides{position:relative;width:90%;height:90%}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}
.hero-slide.active{opacity:1}
.hero-slide img{width:100%;height:100%;object-fit:cover}
.hero-slide .placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;letter-spacing:2px;color:rgba(255,255,255,.3)}
.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(17,17,17,.3) 0%,transparent 30%,transparent 70%,rgba(17,17,17,.5) 100%)}
.hero-controls{position:absolute;bottom:32px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:10}
.hero-dot{width:28px;height:2px;background:rgba(255,255,255,.3);border:none;cursor:pointer;transition:background .3s}
.hero-dot.active{background:#fff}
.hero-arrow{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:rgba(255,255,255,.4);font-size:28px;cursor:pointer;z-index:10;padding:16px;transition:color .3s}
.hero-arrow:hover{color:#fff}
.hero-arrow.prev{left:16px}
.hero-arrow.next{right:16px}

/* ── Section ── */
.section{padding:80px 40px}
.section-label{font-size:11px;letter-spacing:3px;text-transform:uppercase;color:rgba(255,255,255,.4);text-align:center;margin-bottom:40px}
.section-title{font-size:28px;font-weight:400;letter-spacing:2px;text-align:center;margin-bottom:48px}

/* ── Featured grid ── */
.featured-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:1200px;margin:0 auto}
.featured-item{position:relative;aspect-ratio:3/2;overflow:hidden;border-radius:4px;cursor:pointer}
.featured-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.featured-item:hover img{transform:scale(1.05)}
.featured-item .placeholder{width:100%;height:100%;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);display:flex;align-items:center;justify-content:center}
.featured-item .overlay{position:absolute;inset:0;background:rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center}
.featured-item .overlay span{font-size:13px;letter-spacing:3px;text-transform:uppercase;color:#fff}

/* ── Gallery ── */
.gallery-hero{height:50vh;margin-top:65px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}
.gallery-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.gallery-hero .placeholder{position:absolute;inset:0;background:linear-gradient(135deg,#2a3530,#111)}
.gallery-hero .overlay{position:absolute;inset:0;background:rgba(0,0,0,.4)}
.gallery-hero h1{position:relative;z-index:2;font-size:36px;font-weight:400;letter-spacing:6px;text-transform:uppercase}
.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:12px;max-width:1400px;margin:0 auto;padding:60px 40px}
.gallery-item{position:relative;overflow:hidden;cursor:pointer;aspect-ratio:3/2;border-radius:2px}
.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.gallery-item:hover img{transform:scale(1.03)}
.gallery-item .placeholder{width:100%;height:100%;background:linear-gradient(135deg,#252525,#1a1a1a);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.2);font-size:12px;letter-spacing:1px}
.gallery-item .caption{position:absolute;bottom:0;left:0;right:0;padding:16px 20px;background:linear-gradient(transparent,rgba(0,0,0,.6));opacity:0;transition:opacity .4s;font-size:13px;letter-spacing:1px}
.gallery-item:hover .caption{opacity:1}

/* ── Lightbox ── */
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);z-index:200;display:none;align-items:center;justify-content:center;cursor:zoom-out}
.lightbox.open{display:flex}
.lightbox img{max-width:90vw;max-height:90vh;object-fit:contain}
.lightbox-close{position:absolute;top:20px;right:24px;background:none;border:none;color:#fff;font-size:28px;cursor:pointer}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:rgba(255,255,255,.6);font-size:32px;cursor:pointer;padding:16px}
.lightbox-nav:hover{color:#fff}
.lightbox-nav.prev{left:16px}
.lightbox-nav.next{right:16px}

/* ── About ── */
.about-content{max-width:800px;margin:0 auto;display:grid;grid-template-columns:1fr 1.5fr;gap:48px;align-items:start}
.about-photo{aspect-ratio:3/4;border-radius:4px;overflow:hidden}
.about-photo img{width:100%;height:100%;object-fit:cover}
.about-photo .placeholder{width:100%;height:100%;background:linear-gradient(135deg,#2a2a2a,#1a1a1a);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,.2)}
.about-text h2{font-size:24px;font-weight:400;letter-spacing:2px;margin-bottom:24px}
.about-text p{font-size:15px;color:rgba(255,255,255,.7);margin-bottom:16px;line-height:1.9}

/* ── Service ── */
.service-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:1000px;margin:0 auto}
.service-grid--two{grid-template-columns:repeat(2,1fr)}
.service-card{border:1px solid rgba(255,255,255,.1);border-radius:6px;padding:36px 32px;transition:border-color .3s}
.service-card:hover{border-color:rgba(255,255,255,.25)}
.service-card h3{font-size:16px;font-weight:500;letter-spacing:2px;margin-bottom:16px}
.service-card .price{font-size:28px;font-weight:300;margin-bottom:20px;color:rgba(255,255,255,.9)}
.service-card .price small{font-size:13px;color:rgba(255,255,255,.4)}
.service-card ul{margin-bottom:24px}
.service-card li{font-size:14px;color:rgba(255,255,255,.6);padding:6px 0;border-bottom:1px solid rgba(255,255,255,.06)}
.service-card li::before{content:'\2014\00a0';color:rgba(255,255,255,.25)}

/* ── Products ── */
.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;max-width:1000px;margin:0 auto}
.product-card{border:1px solid rgba(255,255,255,.1);border-radius:6px;overflow:hidden;transition:border-color .3s}
.product-card:hover{border-color:rgba(255,255,255,.25)}
.product-image{position:relative;aspect-ratio:16/9;overflow:hidden}
.product-image img{width:100%;height:100%;object-fit:cover}
.product-image .placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center}
.product-badge{position:absolute;top:12px;left:12px;padding:4px 10px;font-size:10px;letter-spacing:2px;background:rgba(255,255,255,.12);backdrop-filter:blur(4px);border-radius:3px;color:rgba(255,255,255,.8)}
.product-info{padding:20px 24px}
.product-info h3{font-size:15px;font-weight:500;letter-spacing:1px;margin-bottom:10px}
.product-desc{font-size:13px;color:rgba(255,255,255,.5);line-height:1.7;margin-bottom:20px}
.product-footer{display:flex;justify-content:space-between;align-items:center}
.product-price{font-size:20px;font-weight:300}
.btn-stores{display:inline-block;padding:10px 20px;font-size:12px;letter-spacing:1px;border:1px solid rgba(255,255,255,.3);border-radius:4px;color:#fff;transition:all .3s;text-transform:uppercase}
.btn-stores:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}

/* ── Contact ── */
.contact-content{max-width:600px;margin:0 auto}
.contact-content p{text-align:center;color:rgba(255,255,255,.6);font-size:15px;margin-bottom:40px}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-size:12px;letter-spacing:1px;color:rgba(255,255,255,.5);margin-bottom:8px;text-transform:uppercase}
.form-group input,.form-group textarea,.form-group select{width:100%;padding:12px 16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:4px;color:#fff;font-size:15px;font-family:inherit;transition:border-color .3s}
.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:rgba(255,255,255,.35)}
.form-group textarea{height:140px;resize:vertical}
.form-group select option{background:#222;color:#fff}
.btn-submit{display:block;width:100%;padding:14px;background:transparent;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:13px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;border-radius:4px;transition:all .3s}
.btn-submit:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.5)}

/* ── Footer ── */
.footer{border-top:1px solid rgba(255,255,255,.08);padding:24px 40px;display:flex;justify-content:space-between;align-items:center}
.footer p{font-size:11px;color:rgba(255,255,255,.3);letter-spacing:1px}
.footer-social{display:flex;gap:16px}
.footer-social a{color:rgba(255,255,255,.3);font-size:18px;transition:color .3s}
.footer-social a:hover{color:#fff}

/* ── Page transition ── */
.page-content{animation:fadeIn .6s ease}
@keyframes fadeIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* ── Responsive ── */
@media(max-width:768px){
  .header{padding:16px 20px}
  .nav{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(17,17,17,.97);flex-direction:column;align-items:center;justify-content:center;gap:32px}
  .nav.open{display:flex}
  .nav a{font-size:14px}
  .nav-dropdown-toggle{font-size:14px}
  .nav-dropdown-menu{position:static;transform:none;background:transparent;border:none;margin-top:8px;padding:0;display:block}
  .nav-dropdown-menu a{padding:8px 0;text-align:center;font-size:13px}
  .menu-toggle{display:block;z-index:110}
  .hero{height:auto;min-height:50vh}
  .hero-slides{width:100%;height:auto;aspect-ratio:3/4}
  .hero-slide img{object-fit:contain}
  .hero-arrow{display:none}
  .section{padding:60px 20px}
  .featured-grid{grid-template-columns:1fr}
  .gallery-grid{grid-template-columns:1fr;padding:40px 16px}
  .gallery-hero h1{font-size:24px}
  .about-content{grid-template-columns:1fr;gap:32px}
  .service-grid{grid-template-columns:1fr}
  .service-grid--two{grid-template-columns:1fr}
  .product-grid{grid-template-columns:1fr}
  .footer{flex-direction:column;gap:12px;text-align:center}
}
