/*
Theme Name: Turbobao
Theme URI: https://turbobao.com
Description: Clean custom theme for Turbobao – Taiwanese Streetfood. Replaces Enfold 3.8.4.
Author: Turbobao
Version: 1.0
*/

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:#1a1a1a;line-height:1.7;background:#fff;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none;transition:color .2s}
a:hover{color:#e63946}
ul{padding-left:1.25rem;margin-bottom:1rem}
h1,h2,h3,h4{line-height:1.2;font-weight:700;letter-spacing:-.01em;margin-bottom:1rem;color:#111}
h1{font-size:2.75rem}
h2{font-size:2rem}
h3{font-size:1.375rem;margin-top:1.5rem}
p{margin-bottom:1rem}
strong{font-weight:600}

.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}

/* ---- Header ---- */
.site-header{padding:1rem 0;background:#fff;position:sticky;top:0;z-index:100;border-bottom:1px solid #eee}
.site-header .container{display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}
.site-logo img{max-height:54px;width:auto}
.site-nav ul{list-style:none;display:flex;gap:1.75rem;margin:0;padding:0;flex-wrap:wrap}
.site-nav a{padding:.5rem 0;font-weight:500;font-size:.95rem;text-transform:uppercase;letter-spacing:.05em;color:#1a1a1a}
.site-nav .current-menu-item a{color:#e63946}

/* ---- Hero Slideshow ---- */
.hero{position:relative;height:85vh;min-height:500px;max-height:800px;overflow:hidden;background:#000}
.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.2s ease-in-out;background-size:cover;background-position:center}
.hero-slide.active{opacity:1}
.hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.15)}

/* ---- Sections ---- */
.page-section{padding:5rem 0}
.page-section.alt{background:#f8f8f8}
.page-section.dark{background:#1a1a1a;color:#fff}
.page-section.dark h2,.page-section.dark h3{color:#fff}
.section-center{text-align:center}

/* ---- Grids ---- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2.5rem}
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.grid-3 img,.grid-2 img{border-radius:3px;width:100%;aspect-ratio:4/3;object-fit:cover}
.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}
.gallery-grid img{width:100%;height:240px;object-fit:cover;border-radius:3px}

/* ---- Buttons ---- */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;background:#1a1a1a;color:#fff;border-radius:3px;font-weight:500;margin:.25rem .5rem .25rem 0;font-size:.95rem;transition:background .2s,transform .1s}
.btn:hover{background:#e63946;color:#fff;transform:translateY(-1px)}
.btn-icon{font-size:1.1em}

/* ---- Full-width parallax image ---- */
.fullwidth-image{height:450px;background-size:cover;background-position:center;background-attachment:fixed}

/* ---- Map ---- */
.map-wrap{aspect-ratio:15/8;width:100%;overflow:hidden;border-radius:3px}
.map-wrap iframe{width:100%;height:100%;border:0;display:block}
.map-caption{text-align:center;margin-top:1rem;font-weight:500}

/* ---- Page content (for non-homepage pages like Impressum) ---- */
.page-content{padding:4rem 0;max-width:800px;margin:0 auto}
.page-content h1{margin-bottom:2rem}

/* ---- Footer ---- */
.site-footer{padding:2.5rem 0;background:#111;color:#aaa;text-align:center;font-size:.9rem}
.site-footer a{color:#fff}

/* ---- Responsive ---- */
@media(max-width:900px){
  .grid-3{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .site-header .container{flex-direction:column;gap:1rem}
  .site-nav ul{gap:1rem;justify-content:center}
  h1{font-size:2rem}
  h2{font-size:1.5rem}
  .hero{height:60vh}
  .grid-3{grid-template-columns:1fr;gap:1rem}
  .grid-2{grid-template-columns:1fr;gap:2rem}
  .fullwidth-image{background-attachment:scroll;height:300px}
  .page-section{padding:3rem 0}
}
