:root{--color-primary-50: #F7F1ED;--color-primary-100: #EDE0D9;--color-primary-200: #DCC6BA;--color-primary-300: #C5A596;--color-primary-400: #AE8B7C;--color-primary-500: #9C7B6E;--color-primary-600: #826355;--color-primary-700: #654C41;--color-primary-800: #47362E;--color-primary-900: #2B201B;--color-secondary-50: #F7F6F4;--color-secondary-100: #EBE8E4;--color-secondary-200: #D6D0C9;--color-secondary-300: #B8AFA4;--color-secondary-400: #95897C;--color-secondary-500: #756B5E;--color-secondary-600: #5C5448;--color-secondary-700: #443E35;--color-secondary-800: #2D2823;--color-secondary-900: #1A1714;--color-accent-light: #E3C9AE;--color-accent-base: #C9A77D;--color-accent-dark: #A3815C;--color-success-light: #E3EAE0;--color-success-base: #5C7A52;--color-success-dark: #44593C;--color-warning-light: #F2E6CE;--color-warning-base: #B08D45;--color-warning-dark: #8A6D37;--color-error-light: #EFDAD6;--color-error-base: #A14B3E;--color-error-dark: #7A3830;--color-info-light: #DEE3E6;--color-info-base: #5C7286;--color-info-dark: #44566B;--color-neutral-50: #F7F3EE;--color-neutral-100: #EFE8E0;--color-neutral-200: #DDD2C5;--color-neutral-300: #C2B3A1;--color-neutral-400: #9C8C7A;--color-neutral-500: #786A5B;--color-neutral-600: #5A4F43;--color-neutral-700: #423A30;--color-neutral-800: #2B251F;--color-neutral-900: #1B1714;--color-bg: var(--color-neutral-50);--color-surface: #FFFFFF;--color-surface-muted: var(--color-secondary-50);--color-border: var(--color-neutral-200);--color-text-primary: var(--color-neutral-900);--color-text-secondary: var(--color-neutral-600);--color-text-muted: var(--color-neutral-400);--color-text-inverse: var(--color-neutral-50);--color-link: var(--color-primary-600);--color-link-hover: var(--color-primary-700);--font-family-heading: "Cabinet Grotesk", -apple-system, sans-serif;--font-family-body: "General Sans", -apple-system, sans-serif;--font-size-h1: 3rem;--font-size-h2: 2.25rem;--font-size-h3: 1.6875rem;--font-size-h4: 1.25rem;--font-size-h5: 1.125rem;--font-size-h6: 1rem;--font-size-body-lg: 1.125rem;--font-size-body: 1rem;--font-size-body-sm: .875rem;--font-size-caption: .75rem;--font-size-label: .6875rem;--font-size-h1-fluid: clamp(1.75rem, 3.2vw + 1.2rem, 3rem);--font-size-h2-fluid: clamp(1.5rem, 2.4vw + 1rem, 2.25rem);--font-size-h3-fluid: clamp(1.25rem, 1.4vw + .9rem, 1.6875rem);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.1;--line-height-snug: 1.3;--line-height-normal: 1.5;--line-height-relaxed: 1.65;--line-height-loose: 1.75;--letter-spacing-heading: -.02em;--letter-spacing-body: 0;--letter-spacing-label: .06em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--space-12: 48px;--space-16: 64px;--space-20: 80px;--space-24: 96px;--space-section-sm: clamp(2rem, 3.5vw + .5rem, 3rem);--space-section-md: clamp(3rem, 5vw + 1rem, 5rem);--space-section-lg: clamp(3.5rem, 4.5vw + 2.5rem, 6rem);--radius-none: 0px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(27, 23, 20, .04);--shadow-sm: 0 1px 3px rgba(27, 23, 20, .08), 0 1px 2px rgba(27, 23, 20, .05);--shadow-md: 0 4px 8px -1px rgba(27, 23, 20, .08), 0 2px 4px -1px rgba(27, 23, 20, .05);--shadow-lg: 0 10px 20px -3px rgba(27, 23, 20, .1), 0 4px 6px -2px rgba(27, 23, 20, .05);--shadow-xl: 0 20px 28px -5px rgba(27, 23, 20, .12), 0 10px 10px -5px rgba(27, 23, 20, .04);--duration-instant: 0ms;--duration-fast: .1s;--duration-base: .2s;--duration-slow: .3s;--duration-slower: .5s;--easing-standard: cubic-bezier(.4, 0, .2, 1);--easing-enter: cubic-bezier(0, 0, .2, 1);--easing-exit: cubic-bezier(.4, 0, 1, 1);--easing-linear: linear;--z-base: 0;--z-raised: 10;--z-dropdown: 100;--z-sticky: 200;--z-overlay: 300;--z-modal: 400;--z-toast: 500;--z-tooltip: 600;--container-max: 1200px;--container-reading: 720px;--container-narrow: 960px}@layer base{*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-family-body);font-size:var(--font-size-body);line-height:var(--line-height-normal);color:var(--color-text-primary);background-color:var(--color-bg)}h1,h2,h3,h4,h5{font-family:var(--font-family-heading);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-tight);margin:0;color:var(--color-text-primary)}h6{font-family:var(--font-family-body);font-weight:var(--font-weight-semibold);margin:0}p{margin:0}a{color:var(--color-link);text-decoration:underline;text-decoration-color:var(--color-primary-200);text-decoration-thickness:1px}a:hover{color:var(--color-link-hover)}img,svg,video{display:block;max-width:100%}:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}}@layer components{.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--space-4)}@media(min-width:640px){.container{padding-inline:var(--space-6)}}@media(min-width:1024px){.container{padding-inline:var(--space-8)}}.container-narrow{max-width:var(--container-narrow);margin-inline:auto;padding-inline:var(--space-4)}.container-reading{max-width:var(--container-reading);margin-inline:auto;padding-inline:var(--space-4)}.py-section-sm{padding-block:var(--space-section-sm)}.py-section-md{padding-block:var(--space-section-md)}.py-section-lg{padding-block:var(--space-section-lg)}.layout-feature{display:grid;grid-template-columns:1fr;gap:var(--space-8);align-items:center}@media(min-width:1024px){.layout-feature{grid-template-columns:1fr 1fr;gap:var(--space-12)}}.layout-cards{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media(min-width:640px){.layout-cards{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.layout-cards{grid-template-columns:repeat(3,1fr)}}.layout-cards-2{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media(min-width:768px){.layout-cards-2{grid-template-columns:repeat(2,1fr)}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-family-body);font-weight:var(--font-weight-semibold);font-size:var(--font-size-body);border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background-color var(--duration-base) var(--easing-standard),border-color var(--duration-base) var(--easing-standard),color var(--duration-base) var(--easing-standard)}.btn-primary{background-color:var(--color-primary-600);color:#fff}.btn-primary:hover{background-color:var(--color-primary-700)}.btn-primary:active{background-color:var(--color-primary-800)}.btn-primary:focus-visible{outline:2px solid var(--color-primary-500);outline-offset:2px}.btn-primary:disabled{opacity:.4;cursor:not-allowed}.btn-secondary{background-color:transparent;color:var(--color-primary-600);border-color:var(--color-primary-300)}.btn-secondary:hover{background-color:var(--color-primary-50);border-color:var(--color-primary-500)}.btn-secondary:active{background-color:var(--color-primary-100)}.btn-ghost{background-color:transparent;color:var(--color-text-primary);padding-inline:var(--space-2);text-decoration:underline}.btn-ghost:hover{color:var(--color-primary-600)}.btn-cta{background-color:var(--color-accent-base);color:var(--color-neutral-900)}.btn-cta:hover{background-color:var(--color-accent-dark);color:#fff}.btn-cta:active{background-color:var(--color-accent-dark)}.btn-sm{padding:var(--space-2) var(--space-4);font-size:var(--font-size-body-sm)}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-body-lg)}.link-body{color:var(--color-link)}.link-subtle{color:var(--color-text-secondary);text-decoration-color:var(--color-neutral-300)}.link-inverse{color:var(--color-text-inverse);text-decoration-color:#fff6}.hub-hero{background:var(--color-surface-muted);padding-block:var(--space-section-lg)}.hub-hero h1{font-size:var(--font-size-h1-fluid);margin-top:var(--space-3)}.hub-lead{font-size:var(--font-size-body-lg);color:var(--color-text-secondary);margin-top:var(--space-5)}.label{font-size:var(--font-size-label);font-weight:var(--font-weight-medium);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;color:var(--color-primary-600)}.card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-base) var(--easing-standard)}.card:hover{box-shadow:var(--shadow-md)}.card img{aspect-ratio:16 / 9;object-fit:cover;transition:transform var(--duration-slow) var(--easing-standard)}.card:hover img{transform:scale(1.02)}.card-body{padding:var(--space-6)}.card-body h3{font-size:var(--font-size-h4);margin-top:var(--space-2)}.card-body h3 a{color:var(--color-text-primary);text-decoration:none}.card-body h3 a:hover{color:var(--color-primary-600)}.card-excerpt{color:var(--color-text-secondary);font-size:var(--font-size-body-sm);margin-top:var(--space-2)}.affiliate-disclosure{background:var(--color-surface-muted);border-radius:var(--radius-md);padding:var(--space-4) var(--space-6);font-size:var(--font-size-body-sm);color:var(--color-text-secondary)}.affiliate-disclosure a{color:var(--color-text-secondary);text-decoration-color:var(--color-neutral-300)}.rating-stars{color:var(--color-accent-dark);font-weight:var(--font-weight-semibold);font-size:var(--font-size-body-sm)}.rating-badge-status{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--color-success-light);color:var(--color-success-dark);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}.before-after{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);position:relative}.before-after-split{display:grid;grid-template-columns:1fr 1fr}.before-after img{aspect-ratio:4 / 3;object-fit:cover}.before-after-label{position:absolute;background:var(--color-neutral-800);color:#fff;font-size:var(--font-size-caption);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full)}.alert{display:flex;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-radius:var(--radius-md);font-size:var(--font-size-body-sm)}.alert-info{background:var(--color-info-light);color:var(--color-info-dark)}.alert-success{background:var(--color-success-light);color:var(--color-success-dark)}.alert-warning{background:var(--color-warning-light);color:var(--color-warning-dark)}.alert-error{background:var(--color-error-light);color:var(--color-error-dark)}.comparison-table{width:100%;border-collapse:collapse}.comparison-table th{background:var(--color-secondary-100);font-size:var(--font-size-label);letter-spacing:var(--letter-spacing-label);text-transform:uppercase;text-align:left;padding:var(--space-4)}.comparison-table td{padding:var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:middle}.comparison-table tr:nth-child(2n) td{background:var(--color-surface-muted)}.comparison-table tr.is-editors-pick td{background:var(--color-primary-50)}.pick-badge{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);background:var(--color-primary-100);color:var(--color-primary-700);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium)}@media(max-width:767px){.comparison-table,.comparison-table thead,.comparison-table tbody,.comparison-table tr,.comparison-table td{display:block}.comparison-table thead{display:none}.comparison-table tr{margin-bottom:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4)}.comparison-table td{display:flex;justify-content:space-between;align-items:center;border:none;padding:var(--space-2) 0;gap:var(--space-4)}.comparison-table td:before{content:attr(data-label);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}}}
