:root{--color-primary:#c8102e;--color-accent:#ffc72c;--color-red:#d22630;--color-dark:#1c1c1c;--color-cream:#fdf8f3;--color-white:#fff;--color-text:#1f1c1a;--color-muted:#6b6258;--color-border:#e8ddd5;--color-gray:#f5f0eb;--color-light-red:#fff5f5;--color-light-grn:#fdf0f1;--color-gold:#c9a84c;--font-display:"Montserrat", system-ui, sans-serif;--font-body:"Montserrat", system-ui, sans-serif;--radius-sm:5px;--radius-md:10px;--radius-lg:18px;--shadow-sm:0 1px 4px #00000017;--shadow-md:0 4px 20px #0000001c;--shadow-lg:0 8px 40px #00000026;--maxw:1200px}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--color-cream);color:var(--color-text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.75}img{max-width:100%;display:block}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}h1,h2,h3,h4,h5{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.02em;color:var(--color-dark);margin:0 0 14px;font-weight:800;line-height:1.15}h1{letter-spacing:.005em;font-size:clamp(28px,4.4vw,46px)}h2{font-size:clamp(23px,3vw,33px)}h3{letter-spacing:.03em;font-size:clamp(19px,2.2vw,23px)}h4{letter-spacing:.05em;font-size:17px}p{margin:0 0 18px}ul,ol{margin:0 0 18px;padding-left:22px}li{margin-bottom:9px}strong{font-weight:700}.container{max-width:var(--maxw);margin:0 auto;padding:0 22px}.section{padding:58px 0}.section-alt{background:var(--color-white)}.top-bar{background:var(--color-dark);color:#cfc8c0;padding:8px 0;font-size:12.5px}.top-bar .container{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.top-bar a{color:#cfc8c0}.top-bar a:hover{color:var(--color-accent)}.tb-legal{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.tb-legal .indep{color:#fff;letter-spacing:.2px;font-weight:700}.tb-legal a{text-decoration:none}.tb-legal a:hover{color:#fff;text-decoration:underline}.tb-contact a{text-decoration:none}.tb-contact a:hover{color:var(--color-accent);text-decoration:underline}@media (max-width:560px){.tb-legal{gap:12px;font-size:12px}.tb-contact{font-size:12px}}.header{z-index:100;background:var(--color-white);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:0}.header .container{justify-content:space-between;align-items:center;gap:18px;min-height:70px;display:flex}.logo{align-items:center;gap:11px;display:flex;text-decoration:none!important}.logo-icon{flex:none;display:flex}.logo-text{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--color-dark);font-size:19px;font-weight:800;line-height:1.1}.logo-text span{color:var(--color-primary)}.nav-toggle{border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;color:var(--color-dark);background:0 0;padding:7px 11px;font-size:19px;display:none}.nav-menu{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.nav-menu>li{margin:0;position:relative}.nav-menu>li>a{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text);border-radius:var(--radius-sm);padding:10px 12px;font-size:13.5px;font-weight:700;display:block}.nav-menu>li>a:hover,.nav-menu>li>a.active{background:var(--color-light-grn);color:var(--color-primary);text-decoration:none}.dropdown-menu{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:246px;box-shadow:var(--shadow-md);z-index:120;margin:0;padding:8px;list-style:none;display:none;position:absolute;top:100%;left:0}.nav-menu li:hover>.dropdown-menu,.nav-menu li:focus-within>.dropdown-menu{display:block}.dropdown-menu li{margin:0}.dropdown-menu a{color:var(--color-text);border-radius:var(--radius-sm);padding:9px 12px;font-size:14px;font-weight:600;display:block}.dropdown-menu a:hover{background:var(--color-light-grn);color:var(--color-primary);text-decoration:none}.dropdown-menu .dd-head{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);padding:9px 12px 4px;font-size:11px;font-weight:800}.btn{background:var(--color-primary);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;border-radius:var(--radius-sm);cursor:pointer;border:none;align-items:center;gap:8px;padding:12px 22px;font-size:13.5px;font-weight:800;transition:transform .12s,background .12s;display:inline-flex;color:var(--color-white)!important;text-decoration:none!important}.btn:hover{background:#a50d26;transform:translateY(-1px)}.btn-accent{background:var(--color-accent);color:var(--color-dark)!important}.btn-accent:hover{background:#f0b81c}.btn-ghost{border:2px solid var(--color-primary);background:0 0;padding:10px 20px;color:var(--color-primary)!important}.btn-ghost:hover{background:var(--color-light-grn)}.btn-sm{padding:8px 15px;font-size:12px}.badge{background:var(--color-light-grn);color:var(--color-primary);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.07em;border-radius:100px;padding:5px 11px;font-size:11.5px;font-weight:800;display:inline-block}.badge-gold{color:#8a6a00;background:#ffc72c38}.badge-dark{color:#fff;background:#ffffff24}.badge-red{background:var(--color-light-red);color:var(--color-red)}.badge-row{flex-wrap:wrap;gap:9px;margin-bottom:16px;display:flex}.breadcrumb{color:var(--color-muted);padding:15px 0;font-size:13px}.breadcrumb ol{flex-wrap:wrap;gap:7px;margin:0;padding:0;list-style:none;display:flex}.breadcrumb li{align-items:center;gap:7px;margin:0;display:flex}.breadcrumb li+li:before{content:"›";color:var(--color-border)}.breadcrumb a{color:var(--color-muted)}.breadcrumb a:hover{color:var(--color-primary)}.breadcrumb [aria-current]{color:var(--color-text);font-weight:600}.hero-v2{background:linear-gradient(165deg,#3a0d12 0%,var(--color-dark) 58%);color:#fff;padding:62px 0 66px}.hero-v2 h1{color:#fff;max-width:16ch;font-size:clamp(30px,5.4vw,56px)}.hero-v2 h1 span{color:var(--color-accent)}.hero-p{color:#d8d2cb;max-width:74ch;font-size:17px}.hero-problem{border-left:4px solid var(--color-accent);border-radius:0 var(--radius-md) var(--radius-md) 0;color:#efe9e2;background:#ffc72c1a;max-width:74ch;margin:0 0 18px;padding:17px 21px}.hero-problem strong{color:var(--color-accent)}.hero-relate{color:#bdb6ae;max-width:74ch;font-style:italic}.hero-search{gap:10px;max-width:620px;margin:26px 0 16px;display:flex}.hero-search input{font-family:var(--font-body);border-radius:var(--radius-sm);color:var(--color-text);background:#fff;border:2px solid #0000;flex:1;padding:14px 17px;font-size:15px}.hero-search input:focus{border-color:var(--color-accent);outline:none}.hero-tags{flex-wrap:wrap;gap:9px;margin-bottom:30px;display:flex}.hero-tag{color:#e6e0d9;cursor:pointer;font-size:13px;font-weight:600;font-family:var(--font-body);background:#ffffff1a;border:1px solid #ffffff2e;border-radius:100px;padding:7px 14px;transition:background .12s}.hero-tag:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.hero-stats-row{border-top:1px solid #ffffff21;flex-wrap:wrap;gap:34px;padding-top:26px;display:flex}.hero-stat .n{font-family:var(--font-display);color:var(--color-accent);font-size:33px;font-weight:800;line-height:1}.hero-stat .l{text-transform:uppercase;letter-spacing:.09em;color:#a9a29a;margin-top:6px;font-size:12.5px}.hero-page{background:linear-gradient(165deg,#3a0d12 0%,var(--color-dark) 62%);color:#fff;padding:44px 0 48px}.hero-page h1{color:#fff}.hero-page p{color:#cfc8c0;max-width:76ch;margin-bottom:0}.section-heading{margin-bottom:28px}.section-heading .eyebrow,.eyebrow{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.14em;color:var(--color-primary);margin-bottom:7px;font-size:11.5px;font-weight:800}.section-heading p{color:var(--color-muted);max-width:76ch;margin-bottom:0}.cat-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.cat-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:transform .15s,box-shadow .15s;overflow:hidden}.cat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.cat-card-img{background:var(--color-gray);height:165px;overflow:hidden}.cat-card-img img{object-fit:cover;width:100%;height:100%}.cat-card-body{padding:17px 19px 21px}.cat-card-body h3{margin-bottom:7px;font-size:18px}.cat-card-body p{color:var(--color-muted);margin-bottom:12px;font-size:14px}.items-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.item-card{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden}.item-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.item-card-img{background:var(--color-gray);height:190px;overflow:hidden}.item-card-img img{object-fit:cover;width:100%;height:100%}.item-card-body{flex-direction:column;flex:1;padding:16px 18px 20px;display:flex}.item-card-body h3{margin-bottom:5px;font-size:17px}.item-card .sub{text-transform:uppercase;letter-spacing:.07em;color:var(--color-primary);margin-bottom:9px;font-size:12px;font-weight:700}.item-card p{color:var(--color-muted);margin-bottom:13px;font-size:14px}.item-card .meta{justify-content:space-between;align-items:center;margin-top:auto;font-size:13px;font-weight:700;display:flex}.menu-row{border-bottom:1px dashed var(--color-border);justify-content:space-between;align-items:baseline;gap:14px;padding:13px 0;display:flex}.menu-row:last-child{border-bottom:none}.menu-row .mr-name{font-weight:700}.menu-row .mr-desc{color:var(--color-muted);margin-top:3px;font-size:13.5px;font-weight:400;display:block}.menu-row .mr-cal{white-space:nowrap;color:var(--color-muted);font-size:13.5px;font-weight:600}.size-table{border-collapse:collapse;background:var(--color-white);width:100%;margin:0 0 24px;font-size:14.5px}.size-table caption{text-align:left;color:var(--color-muted);padding-bottom:9px;font-size:13px}.size-table th,.size-table td{border:1px solid var(--color-border);text-align:left;padding:11px 14px}.size-table thead th{background:var(--color-dark);color:#fff;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:800}.size-table tbody tr:nth-child(2n){background:var(--color-gray)}.size-table td.num{text-align:right;font-variant-numeric:tabular-nums}.table-scroll{-webkit-overflow-scrolling:touch;margin-bottom:24px;overflow-x:auto}.notice{border-radius:var(--radius-md);border-left:4px solid var(--color-accent);background:#ffc72c21;margin:0 0 24px;padding:17px 21px;font-size:15px}.notice strong{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.05em;margin-bottom:5px;font-size:13px;display:block}.notice-red{border-left-color:var(--color-red);background:var(--color-light-red)}.notice-green{border-left-color:var(--color-primary);background:var(--color-light-grn)}.content-wrap{grid-template-columns:1fr 330px;align-items:start;gap:44px;padding:44px 0 58px;display:grid}.article-body{min-width:0}.article-body h2{margin-top:38px;padding-top:4px}.article-body h2:first-child{margin-top:0}.article-body h3{margin-top:26px}.sidebar{position:sticky;top:92px}.side-box{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:20px;padding:20px}.side-box h4{letter-spacing:.09em;color:var(--color-muted);margin-bottom:13px;font-size:13px}.side-box ul{margin:0;padding:0;list-style:none}.side-box li{border-bottom:1px solid var(--color-border);margin-bottom:0}.side-box li:last-child{border-bottom:none}.side-box li a,.side-box li .row{color:var(--color-text);justify-content:space-between;gap:10px;padding:9px 0;font-size:14.5px;font-weight:600;display:flex}.side-box li a:hover{color:var(--color-primary);text-decoration:none}.side-box li .v{color:var(--color-muted);white-space:nowrap;font-size:13px;font-weight:600}.side-box-dark{background:var(--color-dark);border-color:var(--color-dark)}.side-box-dark h4,.side-box-dark li a,.side-box-dark li .row{color:#e6e0d9}.side-box-dark li{border-color:#ffffff1c}.side-box-dark li a:hover{color:var(--color-accent)}.faq-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:11px;overflow:hidden}.faq-q{text-align:left;cursor:pointer;width:100%;font-family:var(--font-body);color:var(--color-dark);background:0 0;border:none;padding:17px 50px 17px 19px;font-size:16px;font-weight:700;position:relative}.faq-q:after{content:"+";color:var(--color-primary);font-size:22px;font-weight:400;transition:transform .2s;position:absolute;top:50%;right:19px;transform:translateY(-50%)}.faq-q[aria-expanded=true]:after{content:"−"}.faq-q:hover{background:var(--color-light-grn)}.faq-a{max-height:0;transition:max-height .28s;overflow:hidden}.faq-a-inner{color:var(--color-muted);padding:0 19px 18px;font-size:15.5px}.faq-a-inner p:last-child{margin-bottom:0}.reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(16px)}.reveal.visible{opacity:1;transform:none}.footer{background:var(--color-dark);color:#a9a29a;padding:52px 0 26px;font-size:14.5px}.footer h4{color:#fff;letter-spacing:.1em;margin-bottom:14px;font-size:12.5px}.footer a{color:#a9a29a}.footer a:hover{color:var(--color-accent)}.footer-grid{border-bottom:1px solid #ffffff1c;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px;padding-bottom:34px;display:grid}.footer-grid ul{margin:0;padding:0;list-style:none}.footer-grid li{margin-bottom:8px}.footer-bottom{color:#7e7770;padding-top:22px;font-size:13px}.footer-bottom p{margin-bottom:9px}.text-muted{color:var(--color-muted)}.mb-0{margin-bottom:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.emoji-fallback{background:linear-gradient(140deg,var(--color-light-grn),var(--color-gray));justify-content:center;align-items:center;width:100%;height:100%;font-size:54px;display:flex}.allergy-band{border-top:3px solid var(--color-accent);border-bottom:3px solid var(--color-accent);background:#ffc72c29;padding:26px 0}.allergy-band .inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;display:flex}.allergy-band .copy{max-width:74ch}.allergy-band h3{margin-bottom:6px}.allergy-band p{margin-bottom:0;font-size:15px}.search-group{margin-bottom:34px}.feature-split{grid-template-columns:1fr 1.4fr;align-items:center;gap:34px;display:grid}.feature-split .img{border-radius:var(--radius-lg);background:var(--color-gray);height:280px;overflow:hidden}.feature-split .img img{object-fit:cover;width:100%;height:100%}.tip-card h3{font-size:17px}.tip-card p{color:var(--color-muted);margin-bottom:0;font-size:15px}.review-card .quote{margin:12px 0 10px;font-size:15px}.review-card .who{color:var(--color-muted);margin-bottom:0;font-size:13px;font-weight:700}.tool-emoji{margin-bottom:8px!important;font-size:34px!important}.dark-links{background:var(--color-dark);padding:52px 0}.dark-links h2{color:#fff;margin-bottom:22px}.dark-links a{border-radius:var(--radius-md);color:#e6e0d9;background:#ffffff12;padding:14px 18px;font-size:15px;font-weight:700;display:block}.dark-links a:hover{color:#fff;background:#ffffff1f;text-decoration:none}.side-img{border-radius:var(--radius-md);background:var(--color-gray);height:150px;margin-bottom:14px;overflow:hidden}.side-img img{object-fit:cover;width:100%;height:100%}.side-note{color:var(--color-muted);font-size:14px}tr.row-current{background:var(--color-light-grn)!important}.nf-controls{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.nf-controls input,.nf-controls select{border:2px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-body);background:#fff;padding:12px 15px;font-size:15px}.nf-controls input{flex:1;min-width:200px}.sortable th{cursor:pointer;-webkit-user-select:none;user-select:none}.print-bar{flex-wrap:wrap;gap:10px;margin:26px 0 8px;display:flex}.print-head{text-align:center;margin:20px 0 26px}.print-foot{color:var(--color-muted);margin-top:24px;font-size:12.5px}@media print{.top-bar,.header,.footer,.sidebar,.no-print,.breadcrumb{display:none!important}body{background:#fff;font-size:12px}.content-wrap{grid-template-columns:1fr!important;padding:0!important}.size-table{page-break-inside:avoid}a[href]:after{content:""}}@media (max-width:900px){.nav-toggle{display:block}.nav-menu{background:var(--color-white);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);flex-direction:column;align-items:stretch;gap:0;max-height:76vh;padding:10px;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.nav-menu.open{display:flex}.dropdown-menu{box-shadow:none;background:0 0;border:none;min-width:0;padding:0 0 8px 12px;display:block;position:static}.cat-grid,.items-grid{grid-template-columns:repeat(2,1fr)!important}.feature-split{grid-template-columns:1fr!important}.content-wrap{gap:32px;grid-template-columns:1fr!important}.content-wrap .sidebar{position:static!important}.menu-row{flex-wrap:wrap}.hero-page h1{font-size:clamp(22px,5.5vw,42px)!important}.footer-grid{grid-template-columns:1fr 1fr;gap:28px}}@media (max-width:600px){body{font-size:16px}.cat-grid{grid-template-columns:1fr!important}.cat-card-img{height:140px!important}.hero-search{flex-direction:column}.hero-search .btn{justify-content:center}.section-heading h2{font-size:clamp(20px,6vw,30px)!important}.section{padding:42px 0}.hero-stats-row{gap:24px}.footer-grid{grid-template-columns:1fr}}@media (max-width:420px){.container{padding:0 12px!important}.items-grid{grid-template-columns:1fr!important}.size-table th,.size-table td{padding:8px 10px!important;font-size:12px!important}.btn{justify-content:center;width:100%}.logo-text{font-size:16px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.reveal{opacity:1;transform:none}}.cat-card-img,.item-card-img,.side-img,.feature-split .img,.item-block-img{background:#fff}.cat-card-img img,.item-card-img img,.side-img img,.feature-split .img img,.item-block-img img{object-fit:contain}.item-card-img img,.cat-card-img img{padding:6px}.item-block{border-top:1px solid var(--color-border);grid-template-columns:200px 1fr;align-items:start;gap:22px;padding:22px 0;scroll-margin-top:96px;display:grid}.item-block:first-of-type{border-top:0}.item-block-img{border-radius:var(--radius-md);border:1px solid var(--color-border);height:140px;overflow:hidden}.item-block-img img{width:100%;height:100%}.item-block h3{margin-bottom:8px}.item-block .facts{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.item-block .facts .badge{font-size:12px}.item-block p{margin-bottom:10px}@media (max-width:640px){.item-block{grid-template-columns:1fr}.item-block-img{height:180px}}.mb-wrap{grid-template-columns:1fr 320px;align-items:start;gap:26px;display:grid}.mb-list{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;max-height:560px;overflow:auto}.mb-list .mb-group{background:var(--color-gray);text-transform:uppercase;letter-spacing:.06em;padding:10px 16px;font-size:13px;font-weight:800;position:sticky;top:0}.mb-row{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;padding:9px 16px;font-size:15px;display:flex}.mb-row .mb-meta{color:var(--color-muted);white-space:nowrap;font-size:13px}.mb-row button{border:2px solid var(--color-primary);color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;width:34px;height:30px;font-weight:800;font-family:var(--font-body);background:#fff}.mb-row button:hover{background:var(--color-primary);color:#fff}.mb-tray{position:sticky;top:96px}.mb-tray ul{margin:0 0 12px;padding:0;list-style:none}.mb-tray li{border-bottom:1px dashed var(--color-border);justify-content:space-between;gap:8px;margin:0;padding:6px 0;font-size:14px;display:flex}.mb-tray li button{color:var(--color-red);cursor:pointer;background:0 0;border:0;font-weight:700}.mb-total{grid-template-columns:repeat(3,1fr);gap:8px;margin:10px 0;display:grid}.mb-total div{background:var(--color-dark);color:#fff;border-radius:var(--radius-sm);text-align:center;padding:10px 8px}.mb-total .n{color:var(--color-accent);font-size:18px;font-weight:800}.mb-total .l{text-transform:uppercase;letter-spacing:.08em;color:#cfc8c0;font-size:11px}@media (max-width:860px){.mb-wrap{grid-template-columns:1fr}.mb-tray{position:static}}.date-line{color:#cfc8c0;letter-spacing:.02em;font-size:13.5px;margin:14px 0 0!important}.hero-v2 .date-line{margin-top:18px!important}
