/*
Theme Name: ABG Cafe
Author: ABG Cafe
Description: Editable WordPress theme for ABG Cafe — Jajan, Ngopi, Makan. Includes editable homepage, Menu, Promo, Articles and Media Library integration.
Version: 3.3.0
License: GPL-2.0-or-later
Text Domain: abg-cafe
*/

:root{--navy:#031d46;--cyan:#02c5c4;--orange:#f96104;--yellow:#fac206;--cream:#fffdf8;--text:#14213d;--muted:#667085;--white:#fff;--radius:22px;--shadow:0 12px 35px rgba(3,29,70,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:var(--cream);font-family:"Nunito","Trebuchet MS",Arial,sans-serif;line-height:1.65}img{max-width:100%;height:auto}a{color:var(--navy);text-decoration:none}a:hover{color:var(--orange)}.container{width:min(1120px,calc(100% - 40px));margin:auto}
.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;z-index:9999;background:#fff;padding:10px 14px}
.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(3,29,70,.08)}
.header-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:900}.brand img{width:58px;height:58px;object-fit:contain;border-radius:50%}.brand-name{font-size:1.15rem;color:var(--navy)}.brand-name span{display:block;font-size:.72rem;color:var(--orange);letter-spacing:.08em;text-transform:uppercase}
.main-nav ul{list-style:none;display:flex;gap:24px;margin:0;padding:0}.main-nav a{font-weight:800;font-size:.95rem}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:12px 20px;font-weight:900;cursor:pointer;transition:.2s}
.header-cta{background:var(--orange);color:#fff}.header-cta:hover{background:var(--navy);color:#fff;transform:translateY(-1px)}
.hero{position:relative;overflow:hidden;padding:76px 0 72px;background:radial-gradient(circle at 8% 20%,rgba(2,197,196,.18),transparent 28%),radial-gradient(circle at 92% 18%,rgba(250,194,6,.20),transparent 27%),linear-gradient(135deg,#fff 0%,#fffaf0 100%)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:56px}.badge{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid rgba(3,29,70,.09);box-shadow:var(--shadow);border-radius:999px;padding:8px 14px;color:var(--navy);font-weight:900;font-size:.82rem}.badge:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--cyan)}
.hero h1{color:var(--navy);font-size:clamp(2.8rem,6vw,5.5rem);line-height:.98;margin:20px 0 18px;letter-spacing:-.045em}.hero p{max-width:620px;font-size:1.15rem;color:#4d5b73;margin:0 0 28px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button-primary{background:var(--navy);color:#fff}.button-primary:hover{background:var(--orange);color:#fff;transform:translateY(-2px)}.button-secondary{background:#fff;color:var(--navy);border:2px solid var(--navy)}.button-secondary:hover{background:var(--cyan);color:var(--navy);border-color:var(--cyan)}
.hero-logo-wrap{display:flex;justify-content:center;position:relative}.hero-logo{width:min(390px,80vw);border-radius:50%;box-shadow:0 25px 60px rgba(3,29,70,.16);border:10px solid #fff}.blob{position:absolute;border-radius:50%;z-index:-1}.blob.one{width:100px;height:100px;background:var(--cyan);left:2%;top:10%}.blob.two{width:80px;height:80px;background:var(--yellow);right:2%;bottom:8%}
.section{padding:78px 0}.section.alt{background:#fff}.section-head{text-align:center;max-width:720px;margin:0 auto 38px}.kicker{color:var(--orange);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;font-weight:1000}.section h2{margin:8px 0 10px;color:var(--navy);font-size:clamp(2rem,4vw,3.2rem);line-height:1.05}.section-head p{color:var(--muted);margin:0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border-radius:var(--radius);padding:28px;box-shadow:var(--shadow);border:1px solid rgba(3,29,70,.06)}.card-icon{width:62px;height:62px;display:grid;place-items:center;border-radius:18px;font-size:1.8rem;margin-bottom:18px}.card:nth-child(1) .card-icon{background:rgba(2,197,196,.20)}.card:nth-child(2) .card-icon{background:rgba(249,97,4,.18)}.card:nth-child(3) .card-icon{background:rgba(250,194,6,.24)}.card h3{margin:0 0 8px;color:var(--navy);font-size:1.35rem}.card p{margin:0;color:var(--muted)}
.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.menu-item{overflow:hidden;background:#fff;border-radius:20px;box-shadow:var(--shadow)}.menu-image{aspect-ratio:4/3;display:grid;place-items:center;background:#eef7f6;overflow:hidden}.menu-image img{width:100%;height:100%;object-fit:cover}.menu-placeholder{font-size:3rem}.menu-content{padding:20px}.menu-content h3{margin:0 0 5px;color:var(--navy)}.menu-content p{margin:0;color:var(--muted);font-size:.94rem}.price{margin-top:12px;font-weight:1000;color:var(--orange)}
.promo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.promo-card{background:var(--navy);color:#fff;border-radius:26px;overflow:hidden}.promo-card img{width:100%;aspect-ratio:16/8;object-fit:cover}.promo-body{padding:28px}.promo-body h3{margin:0 0 8px;color:#fff}.promo-body p{color:rgba(255,255,255,.78)}.promo-body .button{background:var(--yellow);color:var(--navy)}
.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.info-box{background:#fff;border-radius:24px;padding:32px;box-shadow:var(--shadow)}.info-list{list-style:none;padding:0;margin:22px 0 0}.info-list li{padding:12px 0;border-bottom:1px solid #edf0f5}.info-list strong{display:block;color:var(--navy)}
.map-placeholder{min-height:320px;border-radius:24px;display:grid;place-items:center;background:repeating-linear-gradient(45deg,#eef7f6,#eef7f6 12px,#f8fbfb 12px,#f8fbfb 24px);border:2px dashed rgba(3,29,70,.12);text-align:center;padding:30px}.map-placeholder span{font-weight:900;color:var(--navy)}
.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.article-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.article-thumb{aspect-ratio:16/10;overflow:hidden;background:#eef7f6}.article-thumb img{width:100%;height:100%;object-fit:cover}.article-body{padding:20px}.article-body h3{margin:0 0 7px;color:var(--navy)}.article-body p{margin:0;color:var(--muted)}
.site-footer{background:#071c3e;color:rgba(255,255,255,.78);padding:48px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:35px}.site-footer h3{color:#fff;margin-top:0}.site-footer a{color:rgba(255,255,255,.82)}.site-footer a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:35px;padding-top:20px;font-size:.88rem}
.entry-content{width:min(820px,calc(100% - 40px));margin:60px auto}.entry-content h1,.entry-content h2,.entry-content h3{color:var(--navy)}.entry-content img{border-radius:18px}
.archive-wrap{padding:70px 0}.archive-title{color:var(--navy);font-size:3rem}.single-thumb{border-radius:24px;margin-bottom:24px}
@media(max-width:900px){.main-nav{display:none}.hero-grid,.location-grid{grid-template-columns:1fr}.hero-logo-wrap{order:-1}.cards,.menu-grid,.article-grid,.promo-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}}
@media(max-width:560px){.container{width:min(100% - 28px,1120px)}.header-cta{padding:10px 14px;font-size:.85rem}.brand img{width:50px;height:50px}.hero h1{font-size:3rem}}

.store-badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:rgba(2,197,196,.14);color:var(--navy);font-size:.78rem;font-weight:900;margin-bottom:10px}

.abg-breadcrumbs{width:min(1120px,calc(100% - 40px));margin:28px auto 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:.88rem;color:var(--muted)}
.abg-breadcrumbs span{color:#9aa4b2}.abg-breadcrumbs strong{color:var(--navy)}
.archive-hero{padding:60px 0 25px;background:linear-gradient(135deg,#fff,#fffaf0)}
.archive-hero h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1;color:var(--navy);margin:8px 0}
.archive-hero p{max-width:700px;color:var(--muted)}
.detail-price{font-size:1.35rem;font-weight:1000;color:var(--orange);margin:16px 0}
.detail-card{background:#fff;border-radius:28px;box-shadow:var(--shadow);padding:30px}
.detail-image{border-radius:22px;overflow:hidden;margin-bottom:26px}
.detail-image img{width:100%;max-height:560px;object-fit:cover}
.tax-filter{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}
.tax-filter a{background:#fff;border:1px solid rgba(3,29,70,.10);padding:8px 14px;border-radius:999px;font-weight:800}
.tax-filter a:hover{background:var(--cyan);color:var(--navy);border-color:var(--cyan)}

/* ABG Cafe v3.3 footer redesign */
.site-footer{background:var(--navy);color:rgba(255,255,255,.78);padding:58px 0 24px}.site-footer .container{width:min(1120px,calc(100% - 40px));margin:auto}.footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1.25fr 1fr;gap:42px}.site-footer h3{color:#fff;margin:0 0 14px;font-size:1.08rem}.site-footer p{margin:0}.footer-brand-col{padding-right:10px}.footer-logo-row{display:flex;align-items:center;gap:14px}.footer-logo{width:58px;height:58px;border-radius:50%;object-fit:contain;background:#fff;padding:2px}.footer-tagline{line-height:1.5}.footer-tagline span{color:var(--yellow);font-weight:800}.footer-copy{margin-top:18px!important;color:rgba(255,255,255,.65);font-size:.92rem;max-width:280px}.footer-hours,.footer-address{color:rgba(255,255,255,.78);line-height:1.8}.footer-contact{display:block;color:rgba(255,255,255,.86)!important;margin-top:9px;font-size:.92rem}.footer-map-link{display:inline-flex;align-items:center;gap:7px;color:#fff!important;margin-top:14px;font-weight:800;font-size:.9rem}.footer-map-link:hover{color:var(--yellow)!important}.footer-location-icon{font-size:1.2rem;line-height:1}.social-icons{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px}.social-icon{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.10);color:#fff!important;border:1px solid rgba(255,255,255,.16);transition:transform .2s ease,background .2s ease,color .2s ease}.social-icon svg{width:21px;height:21px;display:block}.social-icon:hover{transform:translateY(-3px);background:var(--orange);color:#fff!important}.social-hint{margin-top:14px!important;color:rgba(255,255,255,.6);font-size:.82rem;line-height:1.5}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:42px;padding-top:20px;font-size:.86rem;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.62)}
@media(max-width:1050px){.footer-grid{grid-template-columns:1.2fr 1fr 1.2fr;gap:30px}.footer-social-col{grid-column:1/-1}.social-icons{margin-top:8px}}
@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-social-col{grid-column:auto}.footer-bottom{flex-direction:column;gap:5px}}
@media(max-width:560px){.site-footer{padding:44px 0 20px}.site-footer .container{width:min(100% - 28px,1120px)}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-social-col{grid-column:auto}.footer-bottom{margin-top:32px}}
