/*
Theme Name: NTD Coffee v7
Theme URI: https://ntd.coffee/
Author: Inovo Robotics / NTD Concept
Description: Premium black-gold NTD Coffee theme with real WordPress page/menu structure, editable homepage text/images, selectable drinks, working venue cards/pages for Restaurant, Hotel Lobby, Mall, Airport and High Street, newsletter subscribe, and Customizer image controls.
Version: 7.0.0
License: GPL-2.0-or-later
Text Domain: ntd-coffee
*/
:root{--black:#050505;--black-2:#0d0b08;--cream:#F2F0E4;--paper:#F6F1E7;--gold:#C8A15A;--gold-2:#8E6E34;--red:#DD3000;--mauve:#6A6C7E;--lavender:#B4A5FF;--charcoal:#453F47;--sand:#B99368}*{box-sizing:border-box}body{margin:0;background:var(--black);color:var(--cream);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 44px));margin:auto}.nav{position:fixed;z-index:50;top:0;left:0;right:0;height:72px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,72px);background:rgba(5,5,5,.84);backdrop-filter:blur(14px);border-bottom:1px solid rgba(200,161,90,.18)}.logo{font-family:Georgia,'Times New Roman',serif;font-size:31px;letter-spacing:.12em;line-height:.85}.logo span{display:block;font-family:Inter,sans-serif;font-size:9px;letter-spacing:.45em;color:var(--gold);margin-top:7px;text-transform:uppercase}.nav-links{display:flex;align-items:center;gap:30px;font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:rgba(242,240,228,.78)}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:.22s}.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(200,161,90,.58);background:rgba(200,161,90,.08);min-height:43px;padding:12px 22px;border-radius:0;color:var(--cream);text-transform:uppercase;letter-spacing:.12em;font-size:11px;transition:.2s}.btn:hover{background:rgba(200,161,90,.2);transform:translateY(-1px)}.btn.gold{background:linear-gradient(135deg,#d8b56a,#9b7535);color:#090807;border-color:#d8b56a}.btn.dark{background:#090807;color:var(--cream)}.hero{min-height:760px;padding-top:72px;display:grid;grid-template-columns:1fr 1.15fr;background:radial-gradient(circle at 18% 38%,rgba(180,165,255,.14),transparent 32%),linear-gradient(90deg,#050505 0%,#0b0a08 48%,#050505 100%);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,5,.45),transparent 40%),var(--hero-face) left center/46% auto no-repeat;opacity:.75}.hero-copy{position:relative;z-index:2;align-self:center;padding-left:clamp(22px,7vw,135px);max-width:640px}.hero-media{position:relative;z-index:2;display:flex;align-items:end;justify-content:center;padding:70px clamp(20px,5vw,70px) 0 0}.hero-unit{width:min(680px,100%);filter:drop-shadow(0 36px 70px rgba(0,0,0,.65))}.eyebrow{color:var(--gold);letter-spacing:.24em;text-transform:uppercase;font-size:11px;font-weight:600;margin-bottom:18px}.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(54px,6vw,86px);line-height:.95;margin:0 0 22px}.hero p{font-size:16px;color:rgba(242,240,228,.78);max-width:520px;margin:0 0 30px}.cta-row{display:flex;gap:16px;flex-wrap:wrap}.shelf{position:absolute;right:0;bottom:0;width:240px;height:100%;background:linear-gradient(90deg,transparent,rgba(0,0,0,.65));display:flex;align-items:center;justify-content:flex-end;padding-right:28px}.shelf-inner{border-left:1px solid rgba(200,161,90,.3);border-right:1px solid rgba(200,161,90,.14);height:72%;width:160px;background:rgba(242,240,228,.04);box-shadow:inset 0 0 35px rgba(200,161,90,.08);display:grid;align-content:center;gap:18px;padding:18px}.mini-cups{display:flex;gap:8px;justify-content:center}.mini-cup{width:25px;height:54px;border-radius:5px 5px 9px 9px;background:linear-gradient(160deg,#f5efe2,#211b18 45%,#b99368);border:1px solid rgba(242,240,228,.25)}.story{background:var(--paper);color:#17130f;padding:72px 0;position:relative;overflow:hidden}.story .wrap{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:34px}.story h2,.section-title{font-family:Georgia,'Times New Roman',serif;font-size:clamp(34px,4.8vw,58px);line-height:1;margin:0 0 18px;font-weight:400}.story p{color:rgba(5,5,5,.68);max-width:470px}.story-city{min-height:270px;background:linear-gradient(90deg,rgba(246,241,231,.1),rgba(246,241,231,.9)),var(--cup-collection) right center/contain no-repeat;display:flex;align-items:end;justify-content:center}section.dark{padding:82px 0;background:linear-gradient(180deg,#050505,#12100d)}.center{text-align:center}.center .section-title{max-width:850px;margin-left:auto;margin-right:auto}.sub{color:rgba(242,240,228,.66);max-width:760px;margin:0 auto 38px}.drink-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.drink{background:linear-gradient(180deg,rgba(242,240,228,.09),rgba(242,240,228,.035));border:1px solid rgba(200,161,90,.18);border-radius:10px;overflow:hidden;box-shadow:0 20px 45px rgba(0,0,0,.28)}.drink-photo{height:250px;background-size:cover;background-position:center;display:grid;place-items:center;position:relative;overflow:hidden}.drink-body{padding:20px 15px 24px;text-align:center}.drink h3{font-family:Georgia,serif;font-weight:400;font-size:20px;line-height:1.05;margin:0 0 8px}.drink p{font-size:13px;color:rgba(242,240,228,.62);margin:0}.divider{width:42px;height:1px;background:var(--red);margin:14px auto 0}.system{padding:82px 0;background:#080706}.system-grid{display:grid;grid-template-columns:.9fr 1fr .8fr;gap:34px;align-items:center}.system h2{font-family:Georgia,serif;font-size:44px;line-height:1.04;font-weight:400;margin:0 0 18px}.system p{color:rgba(242,240,228,.66)}.feature-icons{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:28px}.feature-mini{display:flex;gap:12px;align-items:flex-start}.feature-mini i{width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;display:inline-block;background:radial-gradient(circle,var(--gold),transparent 62%)}.feature-mini strong{display:block;font-size:13px;color:var(--gold);text-transform:uppercase;letter-spacing:.08em}.feature-mini span{font-size:12px;color:rgba(242,240,228,.62)}.system-shot{min-height:380px;background:var(--robot-system) center/contain no-repeat}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:12px}.gallery div{min-height:130px;border:1px solid rgba(200,161,90,.2);border-radius:8px;background:var(--closeup-robot) center/cover}.gallery div:nth-child(2){background-image:var(--closeup-coffee)}.gallery div:nth-child(3){background-image:var(--cup-collection)}.gallery div:nth-child(4){background-image:var(--concept-lobby)}.venues{padding:70px 0;background:var(--paper);color:#17130f}.venues .section-title{text-align:center}.venue-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.venue{border-radius:8px;overflow:hidden;background:#111;color:var(--cream);box-shadow:0 16px 38px rgba(0,0,0,.18)}.venue-img{height:135px;background:var(--concept-lobby) center/cover}.venue:nth-child(2) .venue-img{background-image:var(--concept-mall)}.venue:nth-child(3) .venue-img{background-image:var(--concept-restaurant)}.venue:nth-child(4) .venue-img{background-image:var(--concept-airport)}.venue:nth-child(5) .venue-img{background-image:var(--concept-highstreet)}.venue-body{padding:14px;text-align:center}.venue h3{margin:0 0 5px;font-family:Georgia,serif;font-weight:400}.venue p{margin:0;font-size:12px;color:rgba(242,240,228,.66)}.partner{padding:78px 0;background:linear-gradient(90deg,#050505 0%,#0a0807 58%,#050505);position:relative;overflow:hidden}.partner:before{content:"";position:absolute;inset:0;background:var(--hero-face) left bottom/33% auto no-repeat;opacity:.55}.partner .wrap{position:relative;display:grid;grid-template-columns:.9fr 1.1fr;gap:50px}.partner h2{font-family:Georgia,serif;font-weight:400;font-size:42px;line-height:1.05;margin:0 0 18px}.partner p{color:rgba(242,240,228,.68)}form{display:grid;grid-template-columns:1fr 1fr;gap:14px}input,select,textarea{width:100%;background:rgba(5,5,5,.65);border:1px solid rgba(200,161,90,.2);color:var(--cream);padding:15px 16px;font:inherit;border-radius:0}textarea{grid-column:1/-1;min-height:120px}form .btn{width:fit-content}.footer{padding:44px 0;background:#050505;border-top:1px solid rgba(200,161,90,.2)}.footer-grid{display:grid;grid-template-columns:1.2fr repeat(3,1fr) 1.2fr;gap:30px}.footer h4{color:var(--gold);letter-spacing:.16em;font-size:11px;text-transform:uppercase}.footer a,.footer p{display:block;color:rgba(242,240,228,.58);font-size:13px;margin:8px 0}.newsletter{display:flex}.newsletter input{min-width:0}.newsletter button{border:0;background:var(--gold);padding:0 18px}@media(max-width:1080px){.hero{grid-template-columns:1fr}.hero-media{padding:0 22px 40px}.shelf{display:none}.drink-grid{grid-template-columns:repeat(3,1fr)}.system-grid,.story .wrap,.partner .wrap{grid-template-columns:1fr}.venue-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.nav-links{display:none}}@media(max-width:650px){.hero h1{font-size:52px}.drink-grid,.venue-grid,form,.footer-grid{grid-template-columns:1fr}.hero-copy{padding:80px 22px 30px}.wrap{width:min(100% - 32px,1180px)}}

/* === V3 fixes: editable homepage, non-overlapping hero, selectable drinks === */
/*
Theme Name: NTD Coffee v7
*/
.hero{
  min-height:780px;
  grid-template-columns:minmax(360px,.9fr) minmax(520px,1.1fr);
  align-items:center;
  padding-top:96px;
}
.hero:before{
  background:linear-gradient(90deg,rgba(5,5,5,.82) 0%,rgba(5,5,5,.68) 24%,rgba(5,5,5,.22) 48%,transparent 72%),var(--hero-face) left center/44% auto no-repeat;
  opacity:.78;
}
.hero-copy{
  align-self:center;
  padding:clamp(24px,5vw,76px) 0 clamp(24px,5vw,76px) clamp(22px,7vw,135px);
  max-width:590px;
}
.hero-copy h1{
  max-width:560px;
  text-wrap:balance;
}
.hero-copy p{
  max-width:460px;
}
.hero .cta-row{
  margin-top:6px;
  position:relative;
  z-index:4;
}
.hero-media{
  align-self:end;
  padding:96px clamp(80px,9vw,140px) 0 10px;
  min-width:0;
}
.hero-unit{
  width:min(610px,100%);
}
.shelf{
  width:210px;
  pointer-events:none;
}

.drink-feature{
  display:grid;
  grid-template-columns:minmax(280px,.85fr) minmax(280px,1fr);
  gap:26px;
  align-items:stretch;
  margin:0 auto 34px;
  max-width:980px;
  text-align:left;
}
.drink-feature-image{
  min-height:340px;
  border:1px solid rgba(200,161,90,.28);
  border-radius:14px;
  background-size:cover;
  background-position:center;
  box-shadow:0 30px 70px rgba(0,0,0,.35);
}
.drink-feature-copy{
  border:1px solid rgba(200,161,90,.22);
  border-radius:14px;
  padding:34px;
  background:linear-gradient(145deg,rgba(242,240,228,.08),rgba(242,240,228,.025));
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.drink-feature-copy h3{
  font-family:Georgia,serif;
  font-size:clamp(34px,4vw,54px);
  line-height:1;
  font-weight:400;
  margin:0 0 14px;
}
.drink-feature-copy p{
  color:rgba(242,240,228,.68);
  font-size:17px;
  margin:0 0 24px;
  max-width:520px;
}
.drink-buttons .drink{
  display:block;
  width:100%;
  padding:0;
  color:var(--cream);
  cursor:pointer;
  text-align:inherit;
  font:inherit;
}
.drink-buttons .drink:hover,
.drink-buttons .drink.is-active{
  transform:translateY(-4px);
  border-color:rgba(200,161,90,.78);
  box-shadow:0 28px 60px rgba(0,0,0,.42),0 0 0 1px rgba(200,161,90,.22) inset;
}
.drink-buttons .drink:focus-visible{
  outline:2px solid var(--gold);
  outline-offset:4px;
}
.drink-title{
  display:block;
  font-family:Georgia,serif;
  font-weight:400;
  font-size:20px;
  line-height:1.05;
  margin:0 0 8px;
}
.drink-copy{
  display:block;
  font-size:13px;
  color:rgba(242,240,228,.62);
}
.drink-photo{
  display:block;
}

.admin-edit-note{
  max-width:980px;
  margin:30px auto 0;
  border:1px dashed rgba(200,161,90,.28);
  color:rgba(242,240,228,.58);
  font-size:13px;
  padding:14px 18px;
  border-radius:10px;
}

@media(max-width:1180px){
  .hero{grid-template-columns:1fr;min-height:auto;padding-top:96px;}
  .hero-copy{padding-right:22px;}
  .hero-media{padding:10px 22px 40px;justify-content:flex-start;}
  .hero-unit{width:min(560px,100%);}
}
@media(max-width:900px){
  .drink-feature{grid-template-columns:1fr;}
  .drink-feature-image{min-height:300px;}
}
@media(max-width:650px){
  .hero-copy{padding-top:70px;}
  .hero h1{font-size:48px;}
  .hero .cta-row .btn{width:100%;}
  .drink-feature-copy{padding:24px;}
}
.single-drink-page{padding-top:72px;background:linear-gradient(180deg,#050505,#12100d);min-height:70vh}.single-drink-hero{padding:90px 0}.single-drink-grid{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:center}.single-drink-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(48px,6vw,82px);line-height:1;margin:0 0 18px}.single-drink-hero p{color:rgba(242,240,228,.7);font-size:18px;max-width:560px}.single-drink-image{border:1px solid rgba(200,161,90,.25);border-radius:16px;overflow:hidden;min-height:360px;background:rgba(242,240,228,.06);display:grid;place-items:center}.single-drink-image img{width:100%;height:100%;object-fit:cover}.single-drink-content{padding-bottom:90px;color:rgba(242,240,228,.76)}@media(max-width:850px){.single-drink-grid{grid-template-columns:1fr}}


/* === V4 mobile/menu button fixes === */
.nav{
  gap:24px;
}
.nav-panel{
  display:flex;
  align-items:center;
  gap:30px;
  margin-left:auto;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:30px;
}
.nav-links .menu-item{
  list-style:none;
  margin:0;
  padding:0;
}
.nav-links .menu-item a{
  position:relative;
}
.menu-toggle{
  display:none;
  align-items:center;
  gap:10px;
  margin-left:auto;
  border:1px solid rgba(200,161,90,.58);
  background:rgba(200,161,90,.08);
  color:var(--cream);
  min-height:43px;
  padding:10px 14px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:11px;
  cursor:pointer;
  z-index:60;
}
.menu-toggle-lines{
  display:grid;
  gap:5px;
  width:18px;
}
.menu-toggle-lines span{
  display:block;
  height:1px;
  background:var(--gold);
  transition:transform .2s ease, opacity .2s ease;
}
.nav.is-open .menu-toggle-lines span:first-child{
  transform:translateY(3px) rotate(45deg);
}
.nav.is-open .menu-toggle-lines span:last-child{
  transform:translateY(-3px) rotate(-45deg);
}
body.nav-open{
  overflow:hidden;
}

@media(max-width:1080px){
  .nav{
    height:72px;
  }
  .menu-toggle{
    display:inline-flex;
  }
  .nav-panel{
    position:fixed;
    top:72px;
    left:0;
    right:0;
    display:grid;
    gap:22px;
    padding:26px 22px 30px;
    background:rgba(5,5,5,.97);
    border-bottom:1px solid rgba(200,161,90,.22);
    box-shadow:0 26px 70px rgba(0,0,0,.55);
    transform:translateY(-116%);
    opacity:0;
    pointer-events:none;
    transition:transform .24s ease, opacity .24s ease;
    margin-left:0;
  }
  .nav.is-open .nav-panel{
    transform:translateY(0);
    opacity:1;
    pointer-events:auto;
  }
  .nav .nav-links{
    display:grid !important;
    gap:0;
    width:100%;
    font-size:14px;
    letter-spacing:.14em;
  }
  .nav .nav-links a{
    display:block;
    padding:16px 0;
    border-bottom:1px solid rgba(242,240,228,.09);
  }
  .nav .nav-links a:after{
    display:none;
  }
  .nav-enquire{
    justify-self:start;
    min-width:180px;
  }
}

@media(max-width:650px){
  .menu-toggle-text{display:inline-block;}
  .nav{padding-left:18px;padding-right:18px;}
  .nav-panel{padding-left:18px;padding-right:18px;}
}

/* === V5 navigation, footer buttons, subscribe and page structure fixes === */
/* Theme version: NTD Coffee v5 */
.footer .menu-item{
  list-style:none;
  margin:0;
  padding:0;
}
.footer a{
  cursor:pointer;
  transition:color .18s ease, transform .18s ease;
}
.footer a:hover{
  color:var(--gold);
  transform:translateX(2px);
}
.legal-links{
  display:flex;
  gap:8px;
  align-items:center;
  margin-top:12px;
  color:rgba(242,240,228,.42);
}
.legal-links a,.legal-links span{
  font-size:12px;
  margin:0;
}
.newsletter{
  display:flex;
  align-items:stretch;
  gap:0;
}
.newsletter input[type="email"]{
  min-width:0;
  height:44px;
}
.newsletter button{
  border:0;
  background:var(--gold);
  color:#090807;
  min-width:52px;
  cursor:pointer;
  font-size:18px;
  transition:background .18s ease, transform .18s ease;
}
.newsletter button:hover{
  background:#d8b56a;
  transform:translateX(1px);
}
.form-message{
  border:1px solid rgba(200,161,90,.28);
  padding:9px 11px;
  margin:10px 0;
  font-size:13px;
}
.form-message.success{color:#d8b56a;}
.form-message.error{color:#ff9d85;}
.page-main{
  background:linear-gradient(180deg,#050505,#12100d);
  min-height:70vh;
  padding-top:72px;
}
.page-hero{
  padding:92px 0 42px;
  border-bottom:1px solid rgba(200,161,90,.18);
  background:radial-gradient(circle at 18% 30%,rgba(180,165,255,.14),transparent 36%),#050505;
}
.page-hero h1{
  font-family:Georgia,serif;
  font-weight:400;
  font-size:clamp(48px,7vw,90px);
  line-height:1;
  margin:0;
}
.page-content-section{
  padding:60px 0 100px;
}
.page-content{
  color:rgba(242,240,228,.78);
  font-size:18px;
  max-width:920px;
}
.page-content h2,.page-content h3{
  font-family:Georgia,serif;
  font-weight:400;
  color:var(--cream);
}
.page-content a{
  color:var(--gold);
  text-decoration:underline;
}
.page-featured-image{
  margin-bottom:34px;
  border:1px solid rgba(200,161,90,.22);
  border-radius:14px;
  overflow:hidden;
}
.hero-media:before{
  content:"";
  position:absolute;
  inset:70px 0 0 0;
  background:linear-gradient(90deg,transparent 65%,rgba(5,5,5,.88) 100%);
  pointer-events:none;
  z-index:-1;
}
@media(max-width:1080px){
  .footer .menu-item a{display:block;}
}


/* v7 venue and editable-content refinements */
.venue-intro{max-width:820px;margin:0 auto 28px;text-align:center;color:rgba(5,5,5,.65)}
.venue{display:block;text-decoration:none;transition:transform .22s ease, box-shadow .22s ease}
.venue:hover{transform:translateY(-4px);box-shadow:0 22px 48px rgba(0,0,0,.24)}
.venue-button{display:inline-flex;margin-top:12px;padding:8px 12px;border:1px solid rgba(200,161,90,.55);color:var(--gold);font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.editable-note{border:1px solid rgba(200,161,90,.25);background:rgba(200,161,90,.08);padding:16px 18px;margin:18px 0;color:rgba(242,240,228,.72)}
.content-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:30px}
.content-card{display:block;background:rgba(242,240,228,.045);border:1px solid rgba(200,161,90,.18);border-radius:12px;overflow:hidden;color:var(--cream);transition:.22s ease}
.content-card:hover{transform:translateY(-4px);background:rgba(242,240,228,.08)}
.content-card-image{height:230px;background:#17130f center/cover no-repeat}
.content-card-body{padding:22px}
.content-card-body h3{font-family:Georgia,serif;font-weight:400;font-size:28px;line-height:1.05;margin:0 0 10px}
.content-card-body p{color:rgba(242,240,228,.65);margin:0 0 14px}
.content-card-body .btn{margin-top:10px}
.single-venue-page .single-drink-hero{background:linear-gradient(135deg,#050505,#15110d)}
.admin-edit-hint{font-size:13px;color:rgba(242,240,228,.58);margin-top:16px}
@media(max-width:900px){.content-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.content-card-grid{grid-template-columns:1fr}.venue-intro{text-align:left}}
