/*
Theme Name: Invitochef
Theme URI: https://invitochef.com
Author: Yotei Group
Author URI: https://yoteigroup.com
Description: Invitochef - Niseko Private Chef Platform. Luxury dark theme with gold accents.
Version: 1.0
License: Private
Text Domain: invitochef
*/

/* ============================================
   INVITOCHEF WORDPRESS THEME
   Designed for invitochef.com
   Operated by Yotei Group Co., Ltd.
   ============================================ */

*{margin:0;padding:0;box-sizing:border-box}
:root{
  --gold:#C9A84C;
  --gold-light:#E8D5A3;
  --dark:#0D0D0D;
  --dark2:#1A1A1A;
  --dark3:#252525;
  --cream:#F5F0E8;
  --cream2:#EDE8DC;
  --white:#FFFFFF;
  --text-muted:#888;
}
html{scroll-behavior:smooth}
body{background:var(--dark);color:var(--cream);font-family:'Montserrat',sans-serif;font-weight:300;overflow-x:hidden}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:24px 48px;display:flex;justify-content:space-between;align-items:center;background:linear-gradient(to bottom,rgba(13,13,13,0.95),transparent)}
.nav-logo{font-family:'Cormorant Garamond',serif;font-size:28px;font-weight:300;letter-spacing:4px;color:var(--gold);text-transform:uppercase;text-decoration:none}
.nav-logo span{font-style:italic;color:var(--cream)}
.nav-links{display:flex;gap:36px;list-style:none}
.nav-links a{color:var(--cream);text-decoration:none;font-size:11px;letter-spacing:3px;text-transform:uppercase;opacity:0.7;transition:opacity 0.3s}
.nav-links a:hover{opacity:1;color:var(--gold)}
.nav-cta{background:transparent;border:1px solid var(--gold);color:var(--gold);padding:10px 24px;font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:all 0.3s;text-decoration:none;display:inline-block}
.nav-cta:hover{background:var(--gold);color:var(--dark)}

/* HERO */
.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#0D0D0D}
.hero-bg{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 50%,rgba(201,168,76,0.08) 0%,transparent 60%)}
.hero-lines{position:absolute;inset:0;opacity:0.04}
.hero-lines::before{content:'';position:absolute;top:0;left:50%;width:1px;height:100%;background:var(--gold)}
.hero-lines::after{content:'';position:absolute;top:50%;left:0;width:100%;height:1px;background:var(--gold)}
.hero-content{text-align:center;z-index:1;max-width:900px;padding:0 24px}
.hero-tag{font-size:10px;letter-spacing:6px;text-transform:uppercase;color:var(--gold);margin-bottom:32px;display:block;animation:fadeUp 0.8s 0.2s ease both}
.hero-title{font-family:'Cormorant Garamond',serif;font-size:clamp(52px,8vw,96px);font-weight:300;line-height:1.05;color:var(--cream);margin-bottom:24px;animation:fadeUp 0.8s 0.4s ease both}
.hero-title em{font-style:italic;color:var(--gold)}
.hero-subtitle{font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--text-muted);margin-bottom:48px;animation:fadeUp 0.8s 0.6s ease both}
.hero-desc{font-size:15px;line-height:1.9;color:rgba(245,240,232,0.65);max-width:560px;margin:0 auto 56px;animation:fadeUp 0.8s 0.8s ease both}
.hero-btns{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;animation:fadeUp 0.8s 1s ease both}
.btn-primary{background:var(--gold);color:var(--dark);padding:16px 40px;font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;border:none;cursor:pointer;transition:all 0.3s;font-weight:500;text-decoration:none;display:inline-block}
.btn-primary:hover{background:var(--gold-light);transform:translateY(-2px);color:var(--dark)}
.btn-secondary{background:transparent;color:var(--cream);padding:16px 40px;font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;border:1px solid rgba(245,240,232,0.3);cursor:pointer;transition:all 0.3s;text-decoration:none;display:inline-block}
.btn-secondary:hover{border-color:var(--gold);color:var(--gold)}
.scroll-hint{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0.4}
.scroll-hint span{font-size:9px;letter-spacing:4px;text-transform:uppercase}
.scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,var(--gold),transparent);animation:scrollPulse 2s ease infinite}

/* LANG BAR */
.lang-bar{background:var(--dark2);border-top:1px solid rgba(201,168,76,0.15);border-bottom:1px solid rgba(201,168,76,0.15);padding:12px 48px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.lang-bar span{font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--text-muted)}
.lang-btn{background:none;border:none;color:var(--text-muted);font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:2px;cursor:pointer;padding:4px 12px;transition:all 0.2s;text-transform:uppercase;border-bottom:1px solid transparent}
.lang-btn.active,.lang-btn:hover{color:var(--gold);border-bottom:1px solid var(--gold)}

/* SECTIONS */
.section{padding:120px 48px}
.section-tag{font-size:9px;letter-spacing:6px;text-transform:uppercase;color:var(--gold);margin-bottom:20px;display:block}
.section-title{font-family:'Cormorant Garamond',serif;font-size:clamp(36px,5vw,58px);font-weight:300;line-height:1.1;margin-bottom:20px}
.section-title em{font-style:italic;color:var(--gold)}
.section-line{width:60px;height:1px;background:var(--gold);margin-bottom:56px;opacity:0.5}

/* HOW IT WORKS STEPS */
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2px;margin-top:64px}
.step{background:var(--dark2);padding:48px 36px;position:relative;transition:background 0.3s}
.step:hover{background:var(--dark3)}
.step-num{font-family:'Cormorant Garamond',serif;font-size:72px;font-weight:300;color:rgba(201,168,76,0.12);position:absolute;top:24px;right:28px;line-height:1}
.step-icon{width:48px;height:48px;border:1px solid rgba(201,168,76,0.3);display:flex;align-items:center;justify-content:center;margin-bottom:28px;font-size:20px}
.step h3{font-family:'Cormorant Garamond',serif;font-size:22px;font-weight:400;margin-bottom:12px;color:var(--cream)}
.step p{font-size:13px;line-height:1.8;color:rgba(245,240,232,0.55)}

/* CHEFS */
.chefs-section{background:var(--dark2);padding:120px 48px}
.chefs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2px;margin-top:64px}
.chef-card{background:var(--dark3);overflow:hidden;cursor:pointer;transition:transform 0.3s;position:relative}
.chef-card:hover{transform:translateY(-4px)}
.chef-card:hover .chef-overlay{opacity:1}
.chef-img{width:100%;height:280px;object-fit:cover;display:block;filter:grayscale(30%)}
.chef-img-placeholder{width:100%;height:280px;background:linear-gradient(135deg,#1a1a1a,#252525);display:flex;align-items:center;justify-content:center;font-size:56px;position:relative}
.chef-img-placeholder::after{content:'';position:absolute;inset:0;background:linear-gradient(to bottom,transparent 40%,rgba(13,13,13,0.8))}
.chef-overlay{position:absolute;inset:0;background:rgba(201,168,76,0.08);opacity:0;transition:opacity 0.3s;pointer-events:none}
.chef-info{padding:28px}
.chef-cuisine{font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.chef-name{font-family:'Cormorant Garamond',serif;font-size:26px;font-weight:400;margin-bottom:8px}
.chef-desc{font-size:12px;line-height:1.7;color:rgba(245,240,232,0.55);margin-bottom:20px}
.chef-meta{display:flex;justify-content:space-between;align-items:center}
.chef-price{font-size:13px;color:var(--gold)}
.chef-price span{font-size:10px;letter-spacing:1px;color:var(--text-muted)}
.star{color:var(--gold);font-size:11px}
.chef-btn{width:100%;background:transparent;border:1px solid rgba(201,168,76,0.3);color:var(--gold);padding:14px;font-family:'Montserrat',sans-serif;font-size:10px;letter-spacing:3px;text-transform:uppercase;cursor:pointer;transition:all 0.3s;margin-top:20px}
.chef-btn:hover{background:var(--gold);color:var(--dark)}
.coming-soon-badge{position:absolute;top:16px;right:16px;background:rgba(201,168,76,0.15);border:1px solid rgba(201,168,76,0.3);color:var(--gold);font-size:8px;letter-spacing:3px;text-transform:uppercase;padding:6px 12px;z-index:2}

/* STATS */
.stats-bar{background:var(--dark2);border-top:1px solid rgba(201,168,76,0.1);border-bottom:1px solid rgba(201,168,76,0.1);padding:60px 48px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:2px}
.stat{text-align:center;padding:32px}
.stat-num{font-family:'Cormorant Garamond',serif;font-size:52px;font-weight:300;color:var(--gold);line-height:1;display:block}
.stat-label{font-size:10px;letter-spacing:3px;text-transform:uppercase;color:rgba(245,240,232,0.4);margin-top:8px;display:block}

/* JOIN SECTION */
.join-section{padding:120px 48px;background:var(--dark);display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.join-benefits{display:flex;flex-direction:column;gap:28px;margin-top:48px}
.benefit{display:flex;gap:20px;align-items:flex-start}
.benefit-icon{width:40px;height:40px;border:1px solid rgba(201,168,76,0.2);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:16px}
.benefit h4{font-family:'Cormorant Garamond',serif;font-size:18px;font-weight:400;margin-bottom:4px}
.benefit p{font-size:12px;line-height:1.7;color:rgba(245,240,232,0.5)}

/* FORM */
.join-form{background:var(--dark2);padding:48px;border:1px solid rgba(201,168,76,0.1)}
.join-form h3{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;margin-bottom:8px}
.join-form p{font-size:12px;color:var(--text-muted);margin-bottom:36px;line-height:1.7}
.form-group{margin-bottom:20px}
.form-group label{display:block;font-size:9px;letter-spacing:3px;text-transform:uppercase;color:var(--gold);margin-bottom:8px}
.form-group input,.form-group select,.form-group textarea{width:100%;background:rgba(255,255,255,0.04);border:1px solid rgba(201,168,76,0.15);color:var(--cream);padding:14px 16px;font-family:'Montserrat',sans-serif;font-size:13px;outline:none;transition:border-color 0.3s}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--gold)}
.form-group select option{background:var(--dark2)}
.form-group textarea{height:100px;resize:none}
.form-submit{width:100%;background:var(--gold);color:var(--dark);padding:16px;font-family:'Montserrat',sans-serif;font-size:11px;letter-spacing:3px;text-transform:uppercase;border:none;cursor:pointer;font-weight:500;transition:background 0.3s;margin-top:8px}
.form-submit:hover{background:var(--gold-light)}

/* FOOTER */
footer{background:var(--dark);border-top:1px solid rgba(201,168,76,0.1);padding:64px 48px 40px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:64px;margin-bottom:48px}
.footer-brand{font-family:'Cormorant Garamond',serif;font-size:32px;font-weight:300;letter-spacing:3px;color:var(--gold);margin-bottom:16px;text-decoration:none;display:block}
.footer-brand span{font-style:italic;color:var(--cream)}
.footer-desc{font-size:12px;line-height:1.8;color:rgba(245,240,232,0.4);max-width:280px}
.footer-col h4{font-size:9px;letter-spacing:4px;text-transform:uppercase;color:var(--gold);margin-bottom:20px}
.footer-col a{display:block;font-size:12px;color:rgba(245,240,232,0.4);text-decoration:none;margin-bottom:10px;transition:color 0.2s}
.footer-col a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(201,168,76,0.08);padding-top:28px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.footer-bottom p{font-size:10px;letter-spacing:2px;color:rgba(245,240,232,0.25);text-transform:uppercase}

/* WHATSAPP FLOAT */
.wa-float{position:fixed;bottom:32px;right:32px;z-index:999;background:#25D366;width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px rgba(37,211,102,0.3);cursor:pointer;transition:transform 0.3s;text-decoration:none}
.wa-float:hover{transform:scale(1.1)}
.wa-float svg{width:28px;height:28px;fill:white}

/* ANIMATIONS */
@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
@keyframes scrollPulse{0%,100%{opacity:0.4}50%{opacity:1}}

/* RESPONSIVE */
@media(max-width:768px){
  nav{padding:20px 24px}
  .nav-links{display:none}
  .section,.chefs-section{padding:80px 24px}
  .join-section{grid-template-columns:1fr;padding:80px 24px;gap:48px}
  .footer-grid{grid-template-columns:1fr;gap:40px}
  .footer-bottom{flex-direction:column;text-align:center}
  .lang-bar{padding:12px 24px}
  .stats-bar{padding:40px 24px}
  .hero-btns{flex-direction:column;align-items:center}
}
