
.thanksgiving-page { --tg-wine:#531616; --tg-cream:#faf4e9; --tg-gold:#e1b650; color:#432e25; font-family:Inter,Arial,sans-serif; }
.thanksgiving-page * { box-sizing:border-box; }
.tg-wrap { width:min(1120px,calc(100% - 48px)); margin:auto; }
.thanksgiving-page h1,.thanksgiving-page h2,.thanksgiving-page h3 { color:var(--tg-wine); margin:0; }
.thanksgiving-page h1,.thanksgiving-page h2 { font-family:"Playfair Display",Georgia,serif; }
.thanksgiving-page h1 { font-size:clamp(2.6rem,4.5vw,4.5rem); line-height:1.1; letter-spacing:-.035em; }
.thanksgiving-page h1 em { font-weight:400; color:#8c4928; }
.thanksgiving-page h2 { font-size:clamp(2rem,3vw,3rem); line-height:1.18; }
.thanksgiving-page h3 { font-size:1.15rem; line-height:1.4; }
.thanksgiving-page p { line-height:1.7; margin:16px 0; }
.tg-eyebrow { font-size:.75rem; letter-spacing:.14em; text-transform:uppercase; font-weight:700; color:#82552f; }
.tg-hero { padding:64px 0; background:radial-gradient(ellipse at top left,#f6dfb6,transparent 65%),var(--tg-cream); }
.tg-hero-grid { display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:64px; }
.tg-intro { font-size:1.25rem; font-weight:600; }
.tg-offer { display:flex; gap:18px; align-items:center; border-top:1px solid #dec9af; margin:24px 0; padding-top:24px; }
.tg-offer strong { font-size:3rem; line-height:1; color:var(--tg-wine); letter-spacing:-.04em; }
.tg-offer span { line-height:1.6; font-size:.9rem; }
.tg-button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:14px 22px; border-radius:5px; background:var(--tg-wine); color:#fff; font-size:.95rem; font-weight:700; text-decoration:none; text-align:center; }
.tg-button:hover { background:#762626; color:#fff; }
.thanksgiving-page a:focus-visible { outline:3px solid #a76b18; outline-offset:4px; }
.tg-call-note,.tg-small { font-size:.85rem; }
.tg-text-link { color:var(--tg-wine); font-weight:600; text-underline-offset:5px; }
.tg-flyer { display:block; transform:rotate(1deg); }
.tg-flyer img { display:block; width:100%; height:auto; border-radius:12px; box-shadow:0 20px 50px #4c211c26; }
.tg-pickup-band { background:var(--tg-wine); color:#fff; padding:22px 0; }
.tg-pickup-band .tg-wrap { display:flex; justify-content:center; align-items:center; gap:25px; flex-wrap:wrap; }
.tg-pickup-band span { font-size:.9rem; }
.tg-section { padding:76px 0; scroll-margin-top:110px; }
.tg-menu { background:#fff; }
.tg-menu-grid,.tg-details-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start; }
.tg-menu-list { background:var(--tg-cream); border-top:4px solid #b16b31; padding:30px; }
.tg-menu-list h3 { font-family:"Playfair Display",Georgia,serif; font-size:1.8rem; }
.tg-menu-list p { margin:5px 0 20px; }
.tg-menu-list ul { display:grid; grid-template-columns:1fr 1fr; gap:12px 24px; padding:20px 0 20px 18px; border-top:1px solid #e3d5c0; margin:0; }
.tg-menu-list .tg-menu-foot { margin:10px 0 0; font-weight:700; color:var(--tg-wine); font-size:.9rem; }
.tg-how { background:var(--tg-cream); border-block:1px solid #e8dac5; }
.tg-steps { display:grid; grid-template-columns:repeat(3,1fr); gap:36px; padding:0; margin:35px 0 0; list-style:none; }
.tg-steps li { border-top:1px solid #d6c2a7; padding-top:20px; }
.tg-steps li > span { display:block; font-size:.8rem; font-weight:700; color:#936335; margin-bottom:16px; }
.tg-steps a { color:var(--tg-wine); }
.tg-details { background:#fff; }
.tg-details address { font-style:normal; line-height:1.8; margin:20px 0; }
.tg-notes { border-left:3px solid #c38c40; padding-left:28px; }
.tg-notes ul { padding-left:18px; line-height:1.7; margin-bottom:0; }
.tg-notes li+li { margin-top:10px; }
.tg-final { background:var(--tg-wine); color:#fff; text-align:center; padding:65px 0; }
.tg-final h2 { color:#fff; }
.tg-final .tg-eyebrow { color:#f1cd81; }
.tg-final .tg-button { background:var(--tg-gold); color:#321a10; }
.tg-mobile-call { display:none; }
@media(max-width:800px) {
 .tg-hero-grid { gap:32px; }
 .tg-menu-grid,.tg-details-grid { gap:32px; }
 .tg-steps { gap:20px; }
}
@media(max-width:640px) {
 .tg-wrap { width:calc(100% - 36px); }
 .tg-hero { padding:32px 0 40px; }
 .tg-hero-grid,.tg-menu-grid,.tg-details-grid,.tg-steps { grid-template-columns:1fr; }
 .tg-flyer { max-width:380px; margin:12px auto 0; transform:none; }
 .tg-hero-copy > .tg-button { width:100%; }
 .tg-pickup-band .tg-wrap { flex-direction:column; gap:6px; text-align:center; }
 .tg-section { padding:44px 0; }
 .tg-menu-list { padding:24px; }
 .tg-steps { gap:16px; margin-top:24px; }
 .tg-steps li > span { margin-bottom:8px; }
 .tg-notes { padding-left:20px; }
 .tg-final { padding:44px 0; }
 .tg-mobile-call { position:fixed; bottom:0; left:0; right:0; z-index:90; display:flex; justify-content:space-between; gap:12px; align-items:center; background:#fff; border-top:1px solid #dec9af; padding:10px 18px calc(10px + env(safe-area-inset-bottom)); box-shadow:0 -4px 16px #321a1012; }
 .tg-mobile-call > span { font-size:.9rem; }
 .tg-mobile-call .tg-button { min-height:44px; padding:10px 18px; }
 body:has(.thanksgiving-page) { padding-bottom:85px; }
}
@media(prefers-reduced-motion:reduce) { .thanksgiving-page * { scroll-behavior:auto; } }
