/*
Theme Name: Exito Client Theme - Warung Rasa Ibu
Theme URI: https://warungrasaibu.id
Author: Siti Marlina (delivered by Exito)
Author URI: https://warungrasaibu.id
Description: Lightweight, mobile-first theme built for Warung Rasa Ibu. Uses block editor content via the_content().
Version: 1.0.0
License: GPLv2 or later
Text Domain: exito-client-theme
*/

:root{
  --color-primary: #7B5E3A; /* warm brown */
  --color-secondary: #EDE6D1; /* pale beige */
  --color-accent: #B65C37; /* clay/orange */
  --color-bg: #FBF6EE; /* page background */
  --color-card: #F6EFE3; /* card background */
  --color-text: #3D2F20; /* dark text */
  --color-muted: #A89A88;
  --color-white: #FFFFFF;

  --font-heading: 'Lora', serif;
  --font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;

  --space-xs: 4px;
  --space-sm: 8px;
  --space-md: 16px;
  --space-lg: 24px;
  --space-xl: 32px;
  --container-padding-mobile: 16px;
  --container-padding-tablet: 28px;
  --container-padding-desktop: 48px;

  --card-radius: 16px;
  --button-radius: 12px;
  --button-height: 48px;
}

/* Reset and sensible defaults */
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:var(--font-body);
  color:var(--color-text);
  background:var(--color-bg);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height:1.45;
  font-size:16px;
}

a{color:var(--color-primary);text-decoration:none}
a:hover{color:var(--color-accent)}

/* Site chrome */
.site-header{
  background:linear-gradient(0deg, rgba(255,255,255,0.85), rgba(255,255,255,0.85));
  border-bottom:1px solid rgba(61,47,32,0.04);
  position:sticky;
  top:0;
  z-index:1200;
}
.site-header .container{
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:12px var(--container-padding-mobile);
}
.site-title{
  font-family:var(--font-heading);
  font-size:20px;color:var(--color-primary);
  margin:0;font-weight:700;letter-spacing:0.2px
}
.site-title a{color:inherit;text-decoration:none}

/* Primary navigation */
.main-nav{display:flex;align-items:center;gap:14px}
.main-nav ul{list-style:none;margin:0;padding:0;display:flex;gap:10px;align-items:center}
.main-nav a{display:inline-block;padding:8px 10px;color:var(--color-text);font-weight:600}

.nav-cta{
  display:inline-flex;align-items:center;justify-content:center;
  background:var(--color-accent);color:var(--color-white);
  border-radius:var(--button-radius);padding:10px 14px;box-shadow:0 6px 12px rgba(182,92,55,0.14);
  font-weight:700;text-transform:none
}

/* Mobile nav toggle */
.mobile-nav-toggle{display:none;background:none;border:0;padding:8px}
.mobile-nav-toggle svg{width:22px;height:22px}

/* Page container */
.container{max-width:1100px;margin:0 auto;padding:20px var(--container-padding-mobile)}
@media(min-width:768px){.container{padding:28px var(--container-padding-tablet)}}
@media(min-width:1024px){.container{padding:28px var(--container-padding-desktop)}}

/* Typography scales (mobile-first) */
h1{font-family:var(--font-heading);font-weight:700;font-size:36px;line-height:1.05;margin:0 0 12px;color:var(--color-primary)}
@media(min-width:768px){h1{font-size:48px}}
@media(min-width:1024px){h1{font-size:56px}}

h2{font-family:var(--font-heading);font-weight:600;font-size:22px;margin:0 0 12px;color:var(--color-primary)}
@media(min-width:768px){h2{font-size:28px}}
@media(min-width:1024px){h2{font-size:32px}}

h3{font-family:var(--font-heading);font-weight:600;font-size:18px;margin:0 0 8px;color:var(--color-primary)}

p{margin:0 0 14px;color:var(--color-text)}
.small{font-size:13px;color:var(--color-muted)}

/* Cards and grids used by block content */
.exito-section{background:transparent;padding:var(--space-md) 0}
.exito-grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:768px){.exito-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.exito-grid{grid-template-columns:repeat(3,1fr)}}

.exito-card{background:var(--color-card);padding:20px;border-radius:var(--card-radius);box-shadow:0 6px 18px rgba(45,36,28,0.06);}
.exito-card img{max-width:100%;border-radius:12px;display:block}

.exito-button{display:inline-block;background:var(--color-accent);color:var(--color-white);padding:12px 18px;border-radius:var(--button-radius);text-decoration:none;font-weight:700;box-shadow:0 6px 12px rgba(182,92,55,0.14)}
.exito-button.secondary{background:var(--color-white);color:var(--color-primary);border:1px solid rgba(123,94,58,0.12)}

/* Hero fallback styling when block content has hero markup */
.hero-visual{display:block;border-radius:16px;overflow:hidden;background:var(--color-card);padding:18px;margin-bottom:18px}
.hero-split{display:block}
@media(min-width:1024px){.hero-split{display:flex;align-items:center;gap:24px}}
.hero-copy{flex:1}
.hero-media{flex:1}

/* Horizontal scroll cards for menu_harian fallback */
.h-scroll{display:flex;overflow-x:auto;gap:14px;padding-bottom:8px}
.h-scroll .exito-card{min-width:260px;flex:0 0 80%}
@media(min-width:768px){.h-scroll .exito-card{flex:0 0 48%}}
@media(min-width:1024px){.h-scroll .exito-card{flex:0 0 30%}}

/* Footer layout */
.site-footer{background:var(--color-primary);color:var(--color-white);padding:28px 0;margin-top:32px}
.site-footer .container{display:grid;grid-template-columns:1fr;gap:16px}
.site-footer h4{margin:0 0 8px;color:var(--color-white);font-family:var(--font-heading)}
.site-footer a{color:var(--color-white)}
@media(min-width:768px){.site-footer .container{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.site-footer .container{grid-template-columns:repeat(4,1fr)}}

.footer-cta{display:inline-block;margin-top:8px;background:var(--color-accent);color:var(--color-white);padding:10px 12px;border-radius:10px}

/* Utility */
.text-center{text-align:center}
.muted{color:var(--color-muted)}

/* Accessibility: ensure CTAs tappable */
a,button{min-height:44px}

/* Gutenberg block content sensible fallbacks */
.wp-block-image img{max-width:100%;height:auto}
.wp-block-buttons .wp-block-button__link{background:var(--color-accent);color:var(--color-white);padding:10px 18px;border-radius:10px}

/* Small adjustments to lists and forms */
ul{margin:0 0 14px 1.2em}
input,select,textarea{padding:10px;border:1px solid rgba(61,47,32,0.06);border-radius:8px;font-family:var(--font-body);width:100%}

/* Make sure embedded maps fit */
.responsive-embed{position:relative;padding-bottom:56.25%;height:0;overflow:hidden}
.responsive-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%}
