.dg{--brown:#3D2008;--amber:#D4820A;--gold:#F0A500;--forest:#1B3A2D;--green:#2D6A4F;--cream:#FAF6EE;--parch:#F2E8D5;--tan:#C9A96E;--sage:#52796F;--moss:#84A98C;--ink:#1C1208;--muted:#5A4020;--warm:#1a0d00;--night:#0d0800;font-family:'Lora',Georgia,serif;color:var(--ink);background:var(--cream);box-sizing:border-box;}
.dg *{box-sizing:border-box;margin:0;padding:0;}
.dg a{color:var(--green);}
.dg a:hover{text-decoration:underline;}

/* HERO */
.dg-hero{background:var(--warm);background-image:radial-gradient(ellipse at 30% 60%,rgba(80,30,0,.8) 0%,transparent 55%),radial-gradient(ellipse at 70% 20%,rgba(212,130,10,.15) 0%,transparent 48%),radial-gradient(ellipse at 50% 100%,rgba(20,8,0,.95) 0%,transparent 60%);padding:80px 24px 72px;text-align:center;position:relative;overflow:hidden;}
#dg-canvas{position:absolute;inset:0;width:100%;height:100%;}
.dg-hero-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 100%,rgba(20,8,0,.9) 0%,rgba(20,8,0,.55) 60%,transparent 100%);}
.dg-hero-inner{position:relative;z-index:2;max-width:760px;margin:0 auto;padding:0 24px;}
.dg-eyebrow{font-family:'Space Mono',monospace;font-size:.62rem;letter-spacing:.22em;text-transform:uppercase;color:var(--tan);border:1px solid rgba(201,169,110,.35);padding:5px 18px;border-radius:20px;display:inline-block;margin-bottom:20px;}
.dg-hero h1{font-family:'Playfair Display',serif;font-size:clamp(2.6rem,6.5vw,4.6rem);font-weight:900;line-height:1.04;color:#fff;margin-bottom:10px;text-shadow:0 2px 20px rgba(0,0,0,.6);}
.dg-hero h1 em{font-style:italic;color:var(--gold);display:block;font-size:.6em;}
.dg-hero-sub{font-size:1rem;line-height:1.7;color:rgba(250,246,238,.75);max-width:540px;margin:18px auto 0;}

/* STRIP */
.dg-strip{display:grid;grid-template-columns:repeat(5,1fr);background:var(--warm);}
@media(max-width:580px){.dg-strip{grid-template-columns:repeat(3,1fr);}}
.dg-stat{padding:14px 8px;text-align:center;border-right:1px solid rgba(201,169,110,.15);}
.dg-stat:last-child{border-right:none;}
.dg-stat-n{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:900;color:var(--gold);line-height:1;display:block;}
.dg-stat-l{font-family:'Space Mono',monospace;font-size:.5rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(201,169,110,.55);margin-top:4px;display:block;}

/* NAV */
.dg-nav{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;padding:20px 24px;background:var(--cream);border-bottom:2px solid var(--parch);}
.dg-nav a{font-family:'Space Mono',monospace;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;padding:6px 14px;border-radius:4px;border:1.5px solid var(--tan);color:var(--brown);text-decoration:none;transition:all .15s;}
.dg-nav a:hover{background:var(--brown);color:#fff;border-color:var(--brown);}

/* HONEST NOTE */
.dg-honest{background:var(--parch);border-left:4px solid var(--amber);border-radius:0 8px 8px 0;padding:16px 22px;margin:28px 0;display:flex;gap:12px;align-items:flex-start;}
.dg-honest p{font-size:.88rem;line-height:1.7;color:var(--muted);font-style:italic;}
.dg-honest strong{color:var(--brown);font-style:normal;}

/* SECTION */
.dg-section{padding:52px 24px;max-width:960px;margin:0 auto;}
.dg-bg{padding:52px 24px;}
.dg-bg--parch{background:var(--parch);border-top:3px solid var(--tan);border-bottom:3px solid var(--tan);}
.dg-bg--dark{background:var(--warm);}
.dg-bg--forest{background:var(--forest);}
.dg-inner{max-width:960px;margin:0 auto;}
.dg-label{font-family:'Space Mono',monospace;font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--green);display:block;margin-bottom:10px;}
.dg-label--amber{color:var(--amber);}
.dg-label--light{color:var(--moss);}
.dg-h2{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3.5vw,2.4rem);font-weight:900;color:var(--brown);line-height:1.1;margin-bottom:14px;}
.dg-h2 em{font-style:italic;color:var(--amber);}
.dg-h2--light{color:var(--gold);}
.dg-lead{font-size:.97rem;line-height:1.75;color:var(--muted);}
.dg-lead--light{color:rgba(250,246,238,.78);}

/* RESTAURANT CARDS */
.dg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin-top:24px;}
.dg-card{background:#fff;border-radius:12px;overflow:hidden;border:1.5px solid #EDE3CC;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;}
.dg-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,.09);}
.dg-card-band{height:5px;}
.dg-card-band--southern{background:linear-gradient(90deg,#5a2800,#a85000,#5a2800);}
.dg-card-band--mexican{background:linear-gradient(90deg,#1a5a00,#e6b800,#cc2200);}
.dg-card-band--pizza{background:linear-gradient(90deg,#8B1A1A,#D4820A,#8B1A1A);}
.dg-card-band--chinese{background:linear-gradient(90deg,#8B0000,#FFD700,#8B0000);}
.dg-card-band--bar{background:linear-gradient(90deg,#1B3A2D,#52796F,#1B3A2D);}
.dg-card-band--coffee{background:linear-gradient(90deg,#3D2008,#C9A96E,#3D2008);}
.dg-card-band--health{background:linear-gradient(90deg,#1B3A2D,#84A98C,#1B3A2D);}
.dg-card-top{padding:14px 18px 0;}
.dg-card-type{font-family:'Space Mono',monospace;font-size:.57rem;letter-spacing:.12em;text-transform:uppercase;color:var(--sage);display:flex;align-items:center;gap:6px;margin-bottom:4px;}
.dg-card-name{font-family:'Playfair Display',serif;font-size:1.08rem;font-weight:700;color:var(--brown);line-height:1.2;margin-bottom:3px;}
.dg-card-tagline{font-size:.78rem;color:var(--sage);font-style:italic;}
.dg-card-body{padding:12px 18px 18px;flex:1;display:flex;flex-direction:column;}
.dg-card-desc{font-size:.83rem;line-height:1.62;color:var(--muted);flex:1;}
.dg-card-meta{margin-top:12px;display:flex;flex-direction:column;gap:4px;border-top:1px dashed #EDE3CC;padding-top:12px;}
.dg-meta-row{display:flex;gap:8px;font-size:.77rem;align-items:baseline;}
.dg-meta-icon{flex-shrink:0;width:14px;}
.dg-meta-val{color:var(--brown);}
.dg-meta-val strong{color:var(--ink);}
.dg-card-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px;}
.dg-chip{font-family:'Space Mono',monospace;font-size:.54rem;background:var(--parch);border:1px solid var(--tan);color:var(--sage);padding:3px 8px;border-radius:20px;}
.dg-chip--pick{background:rgba(212,130,10,.1);border-color:rgba(212,130,10,.3);color:var(--amber);}
.dg-chip--new{background:rgba(45,106,79,.1);border-color:rgba(45,106,79,.3);color:var(--green);}

/* FEATURED — full width card */
.dg-featured{background:#fff;border-radius:12px;overflow:hidden;border:1.5px solid #EDE3CC;margin-bottom:18px;}
.dg-featured-inner{display:grid;grid-template-columns:5px 1fr;gap:0;}
.dg-featured-accent{background:linear-gradient(to bottom,var(--amber),var(--gold));}
.dg-featured-body{padding:20px 22px;}
.dg-featured-tag{font-family:'Space Mono',monospace;font-size:.57rem;letter-spacing:.14em;text-transform:uppercase;color:var(--amber);display:block;margin-bottom:4px;}
.dg-featured-name{font-family:'Playfair Display',serif;font-size:1.25rem;font-weight:900;color:var(--brown);margin-bottom:3px;}
.dg-featured-sub{font-size:.8rem;color:var(--sage);font-style:italic;margin-bottom:10px;}
.dg-featured-desc{font-size:.87rem;line-height:1.7;color:var(--muted);}
.dg-featured-footer{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:14px;padding-top:14px;border-top:1px dashed #EDE3CC;}
.dg-featured-meta{font-size:.78rem;color:var(--muted);}
.dg-featured-meta strong{color:var(--brown);}

/* FAST FOOD TABLE */
.dg-ff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;margin-top:20px;}
.dg-ff-card{background:#fff;border:1.5px solid #EDE3CC;border-radius:8px;padding:14px 16px;border-left:3px solid var(--tan);}
.dg-ff-name{font-family:'Playfair Display',serif;font-size:.95rem;font-weight:700;color:var(--brown);margin-bottom:3px;}
.dg-ff-detail{font-size:.76rem;color:var(--muted);line-height:1.5;}

/* SUGGEST */
.dg-suggest{background:var(--forest);border-radius:10px;padding:22px 24px;display:flex;gap:14px;align-items:flex-start;margin-top:32px;}
.dg-suggest h4{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--gold);margin-bottom:6px;}
.dg-suggest p{font-size:.85rem;line-height:1.65;color:rgba(250,246,238,.75);}
.dg-suggest-btn{display:inline-block;margin-top:12px;background:var(--gold);color:var(--brown);font-family:'Space Mono',monospace;font-size:.65rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:9px 18px;border-radius:4px;text-decoration:none;}

/* TIPS */
.dg-tips{background:var(--parch);border-radius:10px;padding:22px 24px;}
.dg-tips h4{font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--brown);margin-bottom:12px;}
.dg-tips ul{list-style:none;}
.dg-tips li{font-size:.84rem;color:var(--muted);padding:5px 0;border-bottom:1px dashed rgba(201,169,110,.3);line-height:1.55;display:flex;gap:8px;}
.dg-tips li:last-child{border-bottom:none;}
.dg-tips li::before{content:'→';color:var(--amber);font-size:.75rem;flex-shrink:0;margin-top:2px;}

/* CTA */
.dg-cta{background:linear-gradient(135deg,var(--brown),#120500);padding:52px 24px;text-align:center;position:relative;overflow:hidden;}
.dg-cta::before{content:'🍽️';position:absolute;font-size:14rem;opacity:.04;top:50%;left:50%;transform:translate(-50%,-50%);pointer-events:none;}
.dg-cta h2{font-family:'Playfair Display',serif;font-size:clamp(1.7rem,4vw,2.5rem);font-weight:900;color:var(--gold);margin-bottom:12px;position:relative;}
.dg-cta p{font-size:.97rem;color:rgba(250,246,238,.82);max-width:500px;margin:0 auto 24px;line-height:1.65;position:relative;}
.dg-cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;position:relative;}
.dg-btn{display:inline-block;padding:12px 24px;border-radius:5px;font-family:'Space Mono',monospace;font-size:.73rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;transition:transform .15s,box-shadow .15s;}
.dg-btn:hover{transform:translateY(-2px);box-shadow:0 5px 16px rgba(0,0,0,.35);text-decoration:none;}
.dg-btn-gold{background:var(--gold);color:var(--brown);}
.dg-btn-out{background:transparent;border:2px solid rgba(201,169,110,.5);color:var(--tan);}

/* SECTION DIVIDER */
.dg-divider{text-align:center;padding:8px 0;font-size:1rem;letter-spacing:10px;color:var(--tan);opacity:.4;}