
:root {
    --cnam-red: #c1002a;
    --cnam-red-dark: #9a0022;
    --cnam-red-light: #e8003a;
    --cnam-dark: #1a1a1a;
    --cnam-gray: #f7f7f8;
    --cnam-border: #e5e5e5;
    --cnam-text: #333;
    --cnam-text-light: #666;
}
html, body { height: 100%; width: 100%; font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; color: var(--cnam-text); margin: 0; }
body { display: flex; flex-direction: column; min-height: 100vh; }
.page-content { flex: 1; padding-top: 70px; background: var(--cnam-gray); }

/* Navbar */
.top-nav { position: fixed; top: 0; left: 0; right: 0; z-index: 1000; background: #fff; border-bottom: 3px solid var(--cnam-red); box-shadow: 0 1px 6px rgba(0,0,0,0.06); height: 70px; }
.top-nav-inner { display: flex; align-items: center; height: 70px; gap: 0; }
.top-nav-logo { margin-right: 25px; flex-shrink: 0; }
.top-nav-logo img, .top-nav-logo svg { height: 36px; }
.top-nav-links { display: flex; gap: 4px; flex-shrink: 0; }
.top-nav-links a { color: var(--cnam-text); text-decoration: none; font-weight: 500; font-size: 14px; padding: 8px 16px; border-radius: 3px; transition: color 0.15s; }
.top-nav-links a:hover { color: var(--cnam-red); }
.top-nav-links a.active { color: var(--cnam-red); }
.top-nav-right { margin-left: auto; flex-shrink: 0; display: flex; align-items: center; gap: 12px; }
.top-nav-cta { background: var(--cnam-red); color: #fff !important; text-decoration: none; border-radius: 3px; padding: 9px 22px; font-size: 13px; font-weight: 500; white-space: nowrap; transition: background 0.15s; }
.top-nav-cta:hover { background: var(--cnam-red-dark); }
.credit-nav { color: var(--cnam-red); font-weight: 600; font-size: 14px; white-space: nowrap; }

/* Hero */
.hero-section { background: var(--cnam-red); color: #fff; padding: 70px 0; text-align: center; }
.hero-section h1 { font-size: 34px; font-weight: 700; letter-spacing: -0.3px; margin-bottom: 12px; }
.hero-section p { font-size: 17px; opacity: 0.92; max-width: 560px; margin: 0 auto 25px; }
.hero-section .btn-hero { background: #fff; color: var(--cnam-red); border: none; padding: 12px 30px; border-radius: 3px; font-weight: 600; font-size: 15px; transition: background 0.15s; }
.hero-section .btn-hero:hover { background: var(--cnam-gray); color: var(--cnam-red-dark); }

/* Page header */
.page-header-section { background: var(--cnam-red); color: #fff; padding: 35px 0 30px; margin-bottom: 30px; }
.page-header-section h1 { font-size: 26px; font-weight: 600; margin: 0 0 6px; }

/* Product cards */
.product-card { background: #fff; border: 1px solid var(--cnam-border); border-top: 3px solid var(--cnam-red); border-radius: 2px; padding: 25px; margin-bottom: 20px; transition: box-shadow 0.2s, transform 0.2s; }
.product-card:hover { box-shadow: 0 6px 20px rgba(0,0,0,0.07); transform: translateY(-2px); }
.product-card .product-name { font-size: 16px; font-weight: 600; margin-bottom: 8px; color: var(--cnam-text); }
.product-card .product-price { font-size: 22px; font-weight: 700; color: var(--cnam-red); }
.product-card .product-desc { color: var(--cnam-text-light); margin: 10px 0; font-size: 13px; line-height: 1.5; }

/* Buttons */
.btn-shop { background: var(--cnam-red); color: #fff; border: none; padding: 10px 25px; border-radius: 3px; font-weight: 600; cursor: pointer; transition: background 0.15s; }
.btn-shop:hover { background: var(--cnam-red-dark); color: #fff; }
.btn-nacm { background: var(--cnam-dark); color: #fff; border: none; border-radius: 3px; font-weight: 500; }
.btn-nacm:hover { background: #2d2d44; color: #fff; }

/* Cards & badges */
.credit-badge { display: inline-block; background: var(--cnam-red); color: #fff; padding: 5px 15px; border-radius: 20px; font-weight: 700; font-size: 16px; }
.card-info { background: #fff; border: 1px solid var(--cnam-border); border-radius: 4px; padding: 25px; margin-bottom: 20px; }
.alert-flag { background: #fce4e8; border: 1px solid #f0b3bc; color: var(--cnam-red-dark); padding: 20px; border-radius: 4px; font-family: monospace; font-size: 16px; text-align: center; }
.login-box { max-width: 450px; margin: 0 auto; }
.inventory-item { display: inline-block; background: var(--cnam-dark); color: #fff; padding: 5px 12px; border-radius: 15px; margin: 3px; font-size: 13px; }

/* Footer */
.footer-nacm { background: var(--cnam-dark); color: #999; padding: 35px 0; font-size: 13px; line-height: 1.8; }
.footer-nacm a { color: #bbb; text-decoration: none; }
.footer-nacm a:hover { color: #fff; }
.footer-nacm .footer-brand { color: #fff; font-weight: 600; font-size: 14px; margin-bottom: 6px; }
