:root{--ink:#17272d;--ink2:#304148;--body:#39474c;--muted:#6c797c;--muted2:#899294;--paper:#f5f4ef;--paper2:#eeede6;--white:#fffefa;--line:#e3e2da;--line2:#d4d4ca;--sage:#687d6b;--sage-dark:#49634f;--brass:#c5a16b;--serif:"Iowan Old Style","Baskerville","Palatino Linotype","Book Antiqua",Georgia,serif;--sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--max:1200px;--reading:780px;--shadow:0 5px 18px rgba(23,39,45,.045);--shadow2:0 16px 44px rgba(23,39,45,.09);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--body);background:var(--paper);font:16px/1.72 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg{max-width:100%}img{display:block;height:auto}a{color:var(--sage-dark);text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--ink)}button,input,textarea{font:inherit}:focus-visible{outline:3px solid rgba(197,161,107,.75);outline-offset:3px}::selection{background:#dce4d8;color:var(--ink)}.container{width:min(var(--max),calc(100% - 48px));margin:auto}.skip-link{position:absolute;left:16px;top:-60px;z-index:999;padding:10px 14px;color:#fff;background:var(--ink);border-radius:8px}.skip-link:focus{top:12px}
/* Header */
.site-header{position:sticky;top:0;z-index:100;background:rgba(248,247,242,.94);border-bottom:1px solid rgba(212,212,202,.75);backdrop-filter:blur(18px)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:inline-flex;align-items:center;gap:11px;color:var(--ink);text-decoration:none;flex:0 0 auto}.brand-mark{width:42px;height:42px}.brand-name{font:700 25px/1 var(--serif);letter-spacing:-.8px}.brand-name span{color:var(--sage)}.primary-nav{display:flex;align-items:center;gap:clamp(17px,2.5vw,34px);margin-left:auto}.primary-nav a{position:relative;display:inline-flex;align-items:center;min-height:42px;color:#59666a;text-decoration:none;font-size:13px;font-weight:650;white-space:nowrap}.primary-nav a:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:var(--brass);transform:scaleX(0);transform-origin:left;transition:transform .2s}.primary-nav a:hover,.primary-nav a[aria-current=page]{color:var(--ink)}.primary-nav a:hover:after,.primary-nav a[aria-current=page]:after{transform:scaleX(1)}.header-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 19px;color:var(--white);background:var(--ink);border:1px solid var(--ink);border-radius:999px;text-decoration:none;font-size:11px;font-weight:750;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}.header-cta:hover{color:#fff;background:var(--sage-dark);border-color:var(--sage-dark)}.menu-toggle{display:none;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--ink);cursor:pointer}.menu-toggle svg{width:19px;height:19px}
/* Type */
.eyebrow,.kicker{margin:0 0 14px;color:var(--sage-dark);font-size:10px;line-height:1.4;font-weight:800;letter-spacing:.19em;text-transform:uppercase}h1,h2,h3,h4{color:var(--ink);font-family:var(--serif);font-weight:600;line-height:1.17;letter-spacing:-.025em}h1{margin:0 0 22px;font-size:clamp(2.6rem,5.3vw,5.1rem)}h2{margin:0 0 16px;font-size:clamp(1.8rem,3vw,2.7rem)}h3{margin:0 0 10px;font-size:clamp(1.25rem,2vw,1.6rem)}p{margin:0 0 18px}.lead,.dek{color:#566469;font-family:var(--serif);font-size:clamp(1.16rem,1.8vw,1.42rem);line-height:1.58}.muted{color:var(--muted)}
/* Buttons */
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:49px;padding:0 22px;border:1px solid transparent;border-radius:999px;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{color:var(--white);background:var(--ink);border-color:var(--ink)}.button-primary:hover{color:#fff;background:var(--sage-dark);border-color:var(--sage-dark)}.button-secondary{color:var(--ink);background:transparent;border-color:#aab2ad}.button-secondary:hover{color:var(--ink);background:rgba(255,255,255,.6);border-color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--sage-dark);font-size:12px;font-weight:800;text-decoration:none}.text-link svg{width:16px;height:16px}
/* Home hero */
.home-hero{position:relative;overflow:hidden;padding:clamp(76px,10vw,138px) 0 clamp(72px,9vw,118px);background:var(--paper)}.home-hero:before{content:"";position:absolute;width:680px;height:680px;right:-185px;top:-295px;border:1px solid rgba(104,125,107,.18);border-radius:50%;box-shadow:0 0 0 42px rgba(104,125,107,.035),0 0 0 88px rgba(104,125,107,.025);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:center;gap:clamp(40px,7vw,100px)}.home-hero h1{max-width:760px;margin-bottom:24px}.home-hero h1 em{color:var(--sage-dark);font-style:normal}.hero-copy{max-width:660px;color:#5d6a6d;font-size:clamp(16px,1.5vw,18px);line-height:1.8}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}.hero-note{display:flex;align-items:center;gap:12px;margin-top:35px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.hero-note:before{content:"";width:32px;height:1px;background:var(--brass)}.hero-art{position:relative;min-height:400px;display:grid;place-items:center}.hero-art-frame{position:relative;width:min(100%,410px);aspect-ratio:.9;overflow:hidden;border-radius:190px 190px 22px 22px;background:#dfe3da;box-shadow:0 28px 72px rgba(23,39,45,.14)}.hero-art-frame img{width:100%;height:100%;object-fit:cover}.hero-art-frame:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(18,36,40,.3))}.hero-art-caption{position:absolute;z-index:2;right:-14px;bottom:30px;width:195px;padding:19px 20px;background:var(--white);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow2)}.hero-art-caption strong{display:block;color:var(--ink);font:600 17px/1.3 var(--serif)}.hero-art-caption span{display:block;margin-top:7px;color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
/* Sections/cards */
.section{padding:clamp(64px,8vw,100px) 0}.section-soft{background:#eeeee8}.section-dark{color:rgba(255,255,255,.76);background:var(--ink)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}.section-heading h2{max-width:650px;margin:0}.section-heading p{max-width:470px;margin:0;color:var(--muted);font-size:14px}.section-dark h2,.section-dark h3{color:var(--white)}.section-dark .eyebrow{color:#e5d2ad}.section-dark .section-heading p{color:#b5c0bd}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.article-card{min-width:0;overflow:hidden;display:flex;flex-direction:column;color:inherit;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s,border-color .25s}.article-card:hover{color:inherit;transform:translateY(-5px);border-color:#c8cec5;box-shadow:var(--shadow2)}.card-image{position:relative;overflow:hidden;aspect-ratio:1.58;background:#e7e8e1}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.article-card:hover .card-image img{transform:scale(1.045)}.card-body{display:flex;flex:1;flex-direction:column;align-items:flex-start;padding:22px 23px 24px}.card-category{margin:0 0 11px;color:var(--sage-dark);font-size:9px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.article-card h3{margin-bottom:10px;font-size:clamp(1.23rem,1.65vw,1.48rem);line-height:1.27}.article-card p{margin:0 0 18px;color:var(--muted);font-size:13px;line-height:1.65}.card-meta{display:flex;align-items:center;gap:9px;margin-top:auto;color:var(--muted2);font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.card-arrow{margin-left:auto;color:var(--brass);font-size:18px}
/* Pillars/feature */
.pillar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pillar-card{position:relative;min-height:250px;display:flex;flex-direction:column;align-items:flex-start;padding:30px;overflow:hidden;color:inherit;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;box-shadow:var(--shadow);transition:transform .25s,box-shadow .25s}.pillar-card:hover{color:inherit;transform:translateY(-4px);box-shadow:var(--shadow2)}.pillar-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:27px;color:var(--sage-dark);background:#edf0e9;border-radius:50%}.pillar-icon svg{width:21px;height:21px}.pillar-card h3{margin-bottom:11px;font-size:24px}.pillar-card p{max-width:340px;margin:0 0 22px;color:var(--muted);font-size:13px;line-height:1.7}.pillar-card .text-link{margin-top:auto}.pillar-number{position:absolute;top:23px;right:25px;color:#c4c9c0;font:16px var(--serif)}.featured-panel{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);overflow:hidden;background:var(--white);border:1px solid var(--line);border-radius:26px;box-shadow:var(--shadow)}.featured-image{min-height:410px;background:#e3e6df}.featured-image img{width:100%;height:100%;object-fit:cover}.featured-content{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(28px,5vw,62px)}.featured-content h2{margin-bottom:18px;font-size:clamp(2rem,3.3vw,3.1rem)}.featured-content p{max-width:490px;margin-bottom:28px;color:var(--muted)}
/* Landing pages */
.page-hero{padding:clamp(58px,8vw,94px) 0 48px;border-bottom:1px solid var(--line)}.page-hero-inner{max-width:850px}.page-hero h1{margin-bottom:17px;font-size:clamp(2.5rem,5vw,4.3rem)}.page-hero .lead{max-width:800px;margin:0}.page-main{padding:46px 0 100px}.page-main .prose{max-width:900px;margin:auto}.category-intro{max-width:760px;margin-bottom:38px;color:var(--muted);font-size:15px}.category-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.category-tile{display:flex;flex-direction:column;min-height:165px;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);text-decoration:none;box-shadow:var(--shadow);transition:transform .2s,border-color .2s}.category-tile:hover{transform:translateY(-3px);border-color:#bcc7bb}.category-tile span{margin-bottom:14px;color:var(--sage-dark);font-size:9px;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.category-tile strong{color:var(--ink);font:600 22px/1.25 var(--serif)}.category-tile small{margin-top:auto;padding-top:14px;color:var(--muted);font-size:12px}
/* Article */
.article-main{padding:35px 0 100px}.breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:30px;color:var(--muted2);font-size:10px;font-weight:700;letter-spacing:.04em}.breadcrumbs a{color:var(--muted);text-decoration:none}.breadcrumbs a:hover{color:var(--sage-dark)}.breadcrumbs .separator{color:#b4b9b3}.article-prose{max-width:var(--reading);margin:auto}.article-prose>article{color:var(--body)}.article-prose article>header,.article-prose .article-head{margin-bottom:30px}.article-prose article>header .eyebrow,.article-prose .article-head .eyebrow,.article-prose .category{margin-bottom:15px}.article-prose article h1,.article-prose>article>h1{margin:0 0 19px;font-size:clamp(2.45rem,5vw,4.2rem);line-height:1.08}.article-prose .dek{max-width:760px;margin-bottom:20px}.article-prose .byline,.article-prose .article-detail-meta{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:0 0 25px;padding:0 0 19px;color:var(--muted);border-bottom:1px solid var(--line);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.article-prose .reading-note,.article-prose .article-methodology{margin:24px 0 30px;padding:19px 22px;color:#52605e;background:#eceedf;border-left:3px solid var(--sage);border-radius:0 10px 10px 0;font-size:13px;line-height:1.7}.article-prose .content,.article-prose .article-content{font-size:16px;line-height:1.82}.article-prose p{margin:0 0 21px}.article-prose h2{margin:48px 0 17px;padding-top:22px;border-top:1px solid var(--line);font-size:clamp(1.75rem,3vw,2.35rem);scroll-margin-top:105px}.article-prose h3{margin:30px 0 11px;font-size:1.4rem;scroll-margin-top:105px}.article-prose h4{margin:24px 0 10px;font-size:1.12rem}.article-prose ul,.article-prose ol{margin:0 0 24px;padding-left:25px}.article-prose li{margin:0 0 9px;padding-left:4px}.article-prose blockquote{margin:28px 0;padding:20px 24px;color:#52605e;background:#eeeee8;border-left:3px solid var(--brass);font:19px/1.6 var(--serif)}.article-prose img{max-width:100%;height:auto;margin:24px auto;border-radius:12px}.article-prose figure{margin:30px 0}.article-prose figcaption{margin-top:9px;color:var(--muted);font-size:11px;text-align:center}.article-prose hr{margin:38px 0;border:0;border-top:1px solid var(--line2)}.article-prose .toc{margin:30px 0;padding:23px 26px;background:var(--white);border:1px solid var(--line);border-radius:14px}.article-prose .toc>strong{display:block;margin-bottom:10px;color:var(--ink);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.article-prose .toc ol{margin:0}.table-scroll{max-width:100%;overflow-x:auto;margin:25px 0 30px;border:1px solid var(--line);border-radius:12px;background:var(--white);-webkit-overflow-scrolling:touch}.article-prose table{width:100%;min-width:620px;border-collapse:collapse;font-size:13px;line-height:1.55}.article-prose th{color:#fff;background:var(--ink);font-size:11px;font-weight:750;text-align:left}.article-prose th,.article-prose td{padding:13px 15px;border-bottom:1px solid var(--line);vertical-align:top}.article-prose tr:last-child td{border-bottom:0}.article-prose tr:nth-child(even) td{background:#f7f7f2}.article-prose .product-card{margin:28px 0;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.article-prose .product-header{display:grid;grid-template-columns:150px minmax(0,1fr);align-items:start;gap:22px}.article-prose .product-header img,.article-prose .product-card img{width:150px;height:150px;object-fit:contain;padding:8px;background:#fff;border:1px solid var(--line);border-radius:11px}.article-prose .product-card h3{margin-top:0}.article-prose .product-card .specs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:17px 0}.article-prose .product-card .specs div{padding:9px 11px;color:#59676a;background:#f1f2ec;border-radius:8px;font-size:12px}.article-prose .product-card .pros-cons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin:18px 0;font-size:13px}.article-prose .product-card .pros,.article-prose .product-card .cons{padding:15px;border-radius:10px;background:#f4f5ef}.article-prose .product-card .cons{background:#f6f0ed}.article-prose .product-card .cta,.article-prose .pick-cta{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 17px;color:#fff;background:var(--ink);border-radius:999px;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:.05em}.article-prose .product-card .cta:hover,.article-prose .pick-cta:hover{color:#fff;background:var(--sage-dark)}.article-prose .verdict{margin-top:17px;padding:15px 17px;color:#52605e;background:#eef0e8;border-left:3px solid var(--sage);border-radius:0 9px 9px 0;font-size:13px}.article-prose .faq{padding:16px 0;border-bottom:1px solid var(--line)}.article-prose .faq summary{color:var(--ink);font-weight:750;cursor:pointer}.article-prose .faq p{margin:12px 0 0}.article-prose .related{margin:44px 0 0;padding:24px 26px;background:#eeeee8;border-radius:14px}.article-prose .related h2{margin-top:0;padding-top:0;border:0}.article-prose .related ul{margin-bottom:12px}.article-disclosure{max-width:var(--reading);margin:35px auto 0;padding:18px 21px;color:#59676a;background:#eeeee8;border:1px solid var(--line);border-radius:12px;font-size:12px}.article-disclosure strong{color:var(--ink)}
/* Editorial pages and forms */
.prose{color:var(--body);font-size:15px;line-height:1.8}.prose>h1{margin-bottom:22px;font-size:clamp(2.5rem,5vw,4rem)}.prose h2{margin-top:43px;padding-top:20px;border-top:1px solid var(--line);font-size:2rem}.prose h3{margin-top:26px;font-size:1.35rem}.prose .lead{max-width:820px}.prose .editorial-callout{margin:28px 0;padding:21px 24px;color:#4f5e5d;background:#eceedf;border-left:3px solid var(--sage);border-radius:0 12px 12px 0}.prose .value-grid,.prose .method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin:26px 0}.prose .value-card{padding:23px;background:var(--white);border:1px solid var(--line);border-radius:14px}.prose .value-card h3{margin:0 0 10px}.prose .value-card p{margin-bottom:12px;color:var(--muted);font-size:13px}.prose .value-card a{font-size:12px;font-weight:750;text-decoration:none}.prose .editorial-list li{margin-bottom:14px}.form-card{max-width:650px;margin:30px 0;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.form-card label,.contact-form label{display:block;margin-bottom:9px;color:var(--ink);font-size:12px;font-weight:750}.form-row{display:flex;gap:10px}.form-row input,.contact-form input,.contact-form textarea{width:100%;min-height:48px;padding:12px 14px;color:var(--ink);background:#fbfbf7;border:1px solid var(--line2);border-radius:8px;outline:none}.form-row input:focus,.contact-form input:focus,.contact-form textarea:focus{border-color:var(--sage);box-shadow:0 0 0 3px rgba(104,125,107,.13)}.form-note{margin:13px 0 0;color:var(--muted);font-size:11px;line-height:1.6}.contact-form{max-width:650px;margin:28px 0;padding:27px;background:var(--white);border:1px solid var(--line);border-radius:16px}.contact-form input,.contact-form textarea{display:block;margin:7px 0 18px}.contact-form textarea{min-height:150px;resize:vertical}.contact-form button{min-height:46px;padding:0 22px;color:#fff;background:var(--ink);border:0;border-radius:999px;font-size:12px;font-weight:750;cursor:pointer}.contact-form button:hover{background:var(--sage-dark)}.contact-form .legal-note{margin:4px 0 17px;color:var(--muted);font-size:11px}
/* Newsletter/footer */
.newsletter-band{padding:70px 0;color:rgba(255,255,255,.78);background:var(--ink)}.newsletter-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.8fr);align-items:center;gap:45px}.newsletter-band h2{margin-bottom:12px;color:var(--white);font-size:clamp(2rem,3.5vw,3rem)}.newsletter-band p{max-width:540px;margin:0;color:#b7c1be;font-size:14px}.newsletter-band .form-card{margin:0;padding:22px;color:var(--body)}.site-footer{padding:68px 0 25px;color:#b7c1be;background:#13252b}.footer-grid{display:grid;grid-template-columns:1.55fr repeat(3,minmax(0,1fr));gap:42px;padding-bottom:47px}.footer-brand .brand{margin-bottom:18px;color:#fff}.footer-brand .brand-name{color:#fff}.footer-brand p{max-width:300px;color:#9eaeaa;font-size:12px;line-height:1.75}.footer-col h2{margin:4px 0 17px;color:#fff;font:800 10px/1.4 var(--sans);letter-spacing:.16em;text-transform:uppercase}.footer-col ul{margin:0;padding:0;list-style:none}.footer-col li{margin:0 0 11px}.footer-col a{color:#aebbb7;font-size:12px;text-decoration:none}.footer-col a:hover,.footer-bottom a:hover{color:#fff}.footer-bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:15px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);color:#849590;font-size:10px}.footer-bottom-links{display:flex;flex-wrap:wrap;gap:18px}.footer-bottom a{color:#aebbb7;text-decoration:none}
/* 404 */
.not-found{min-height:60vh;display:grid;place-items:center;padding:70px 24px;text-align:center}.not-found-inner{max-width:600px}.not-found .error-code{color:var(--brass);font:88px/1 var(--serif)}.not-found h1{margin:15px 0;font-size:clamp(2.4rem,5vw,4rem)}.not-found p{color:var(--muted)}
@media(max-width:980px){.header-inner{gap:18px}.primary-nav{gap:16px}.primary-nav a{font-size:12px}.header-cta{padding-inline:15px}.hero-grid{gap:40px}.hero-art{min-height:350px}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:760px){.container{width:min(var(--max),calc(100% - 36px))}.header-inner{min-height:72px}.brand-mark{width:38px;height:38px}.brand-name{font-size:23px}.menu-toggle{display:grid;place-items:center;margin-left:auto}.primary-nav{position:absolute;top:calc(100% + 1px);left:0;right:0;display:none;align-items:stretch;gap:0;padding:9px 22px 18px;background:rgba(248,247,242,.99);border-bottom:1px solid var(--line);box-shadow:var(--shadow2)}.primary-nav.is-open{display:flex;flex-direction:column}.primary-nav a{min-height:47px;border-bottom:1px solid var(--line)}.primary-nav a:after{display:none}.header-cta{display:none}.hero-grid{grid-template-columns:1fr}.home-hero{padding-top:68px}.home-hero h1{max-width:620px;font-size:clamp(2.65rem,11vw,4.3rem)}.hero-art{min-height:320px;margin-top:4px}.hero-art-frame{width:min(78%,360px);aspect-ratio:1.05;border-radius:160px 160px 18px 18px}.hero-art-caption{right:0;bottom:15px;width:170px}.card-grid,.pillar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-panel{grid-template-columns:1fr}.featured-image{min-height:290px;max-height:390px}.featured-content{padding:30px}.newsletter-inner{grid-template-columns:1fr;gap:25px}.newsletter-band .form-card{max-width:100%}.category-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){body{font-size:15px}.container{width:calc(100% - 32px)}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%}.hero-note{font-size:9px}.section{padding:57px 0}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.card-grid,.pillar-grid,.category-tiles{grid-template-columns:1fr}.pillar-card{min-height:220px}.article-card h3{font-size:1.35rem}.featured-image{min-height:235px}.featured-content{padding:25px 22px 28px}.page-hero{padding:52px 0 34px}.page-hero h1{font-size:2.65rem}.page-main{padding:32px 0 70px}.article-main{padding:25px 0 70px}.article-prose article h1,.article-prose>article>h1{font-size:2.45rem}.article-prose .content,.article-prose .article-content{font-size:15px}.article-prose .product-header{grid-template-columns:92px minmax(0,1fr);gap:13px}.article-prose .product-header img,.article-prose .product-card img{width:92px;height:92px}.article-prose .product-card{padding:17px}.article-prose .product-card .specs,.article-prose .product-card .pros-cons{grid-template-columns:1fr}.prose .value-grid,.prose .method-grid{grid-template-columns:1fr}.form-row{flex-direction:column}.form-card,.contact-form{padding:20px}.footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 20px}.footer-brand{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
/* Legacy article content components retained inside the new shared editorial system */
.article-prose .article-detail{color:var(--body)}
.article-prose .article-detail-img{margin:26px 0 30px;padding:18px;background:var(--white);border:1px solid var(--line);border-radius:16px}
.article-prose .article-detail-img img{width:100%;max-height:420px;object-fit:contain;margin:0}
.article-prose .category,.article-prose .tag{color:var(--sage-dark);font-size:10px;font-weight:850;letter-spacing:.14em;text-transform:uppercase}
.article-prose .btn,.article-prose .cta-btn,.article-prose .product-cta{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 17px;color:#fff!important;background:var(--ink);border:0;border-radius:999px;text-decoration:none;font-size:10px;font-weight:800;letter-spacing:.045em}
.article-prose .btn:hover,.article-prose .cta-btn:hover,.article-prose .product-cta:hover{background:var(--sage-dark)}
.article-prose .related-guides{margin:38px 0;padding:22px 24px;background:#eeeee8;border-radius:14px}
.article-prose .related-guides h2{margin-top:0;padding-top:0;border:0}
.article-prose .article-section-divider,.article-prose .product-section-divider{margin:42px 0;border:0;border-top:1px solid var(--line2)}
.article-prose .table-caption{margin:10px 0;color:var(--muted);font-size:12px}
.article-prose .pros-cons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:18px 0}
.article-prose .pros,.article-prose .cons{padding:15px;background:#f0f3ec;border-radius:10px;font-size:13px}
.article-prose .cons{background:#f6f0ed}
.article-prose .product-detail-card{margin:20px 0;padding:20px;background:var(--white);border:1px solid var(--line);border-radius:14px}
.article-prose .product-detail-summary{margin-top:12px;padding:13px;background:#f1f2ec;border-radius:9px;font-size:12px}
.article-prose .product-detail-summary p{margin:6px 0}
.article-prose .price{color:var(--sage-dark);font-weight:800}
.article-prose .mistake,.article-prose .practice-card,.article-prose .topic-card{margin:18px 0;padding:22px;background:var(--white);border:1px solid var(--line);border-radius:14px}
.article-prose .mistake h2,.article-prose .topic-card h2,.article-prose .practice-card h2{margin-top:0;padding-top:0;border:0}
.article-prose .num{display:inline-grid;place-items:center;width:34px;height:34px;margin-right:8px;color:var(--sage-dark);background:#edf0e9;border-radius:50%;font-weight:800}
.article-prose .checklist,.article-prose .download-checklist{padding:20px 24px;background:#eff1ea;border-radius:12px}
.article-prose .pick-grid,.article-prose .product-grid,.article-prose .topic-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}
.article-prose .pick,.article-prose .product,.article-prose .topic-card{padding:18px;background:var(--white);border:1px solid var(--line);border-radius:14px}
.article-prose .pick-image img,.article-prose .product-image-link img,.article-prose .product-img-link img,.article-prose .img-link img{width:100%;max-height:280px;object-fit:contain;margin:0 auto 15px;background:#fff}
.article-prose .pick h3,.article-prose .product h3{margin-top:10px}
.article-prose .pick-cta{margin-top:12px}
.article-prose .product-meta,.article-prose .fit{color:var(--muted);font-size:12px}
.article-prose .product--landscape,.article-prose .product--portrait{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(0,1.3fr);gap:18px;align-items:start;margin:20px 0;padding:20px;background:var(--white);border:1px solid var(--line);border-radius:14px}
.article-prose .product--portrait{grid-template-columns:1fr}
.article-prose .product--landscape figure,.article-prose .product--portrait figure{margin:0}
.article-prose .product--landscape figure img,.article-prose .product--portrait figure img{max-height:240px;object-fit:contain;margin:0 auto}
.article-prose .product-copy p{font-size:14px}
.article-prose .difficulty{display:inline-block;margin-left:8px;padding:4px 8px;color:var(--sage-dark);background:#edf0e9;border-radius:999px;font:700 9px var(--sans);letter-spacing:.05em;text-transform:uppercase}
.article-prose .source-list{font-size:13px}
.article-prose .pullquote,.article-prose .book-feature{margin:24px 0;padding:22px;background:#eeeee8;border-radius:14px}
.article-prose .book-feature{display:grid;grid-template-columns:110px minmax(0,1fr);gap:20px;align-items:start}
.article-prose .book-feature img{width:110px;margin:0}
/* Category hub cards */
.prose .category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}
.prose .category-card{display:block;padding:19px;background:var(--white);border:1px solid var(--line);border-radius:13px;text-decoration:none}
.prose .category-card span{color:var(--sage-dark);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.prose .category-card h2{margin:8px 0;font-size:21px}
.prose .category-card p{margin:0;color:var(--muted);font-size:12px}
.prose .guide-list{margin:40px 0}
.prose .guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.prose .guide-card{display:flex;gap:18px;padding:19px;background:var(--white);border:1px solid var(--line);border-radius:13px}
.prose .guide-card h3{font-size:19px}
.prose .guide-card p{font-size:12px;color:var(--muted)}
.prose .guide-card .tag{margin-bottom:8px}
.prose .read-link{font-size:11px;font-weight:800;text-decoration:none}
.prose .principles,.prose .principle{margin:30px 0;padding:22px 24px;background:#eceedf;border-left:3px solid var(--sage);border-radius:0 12px 12px 0}
.prose .resource-extension{margin-top:45px;padding-top:12px;border-top:1px solid var(--line2)}
@media(max-width:760px){.prose .category-grid,.prose .guide-grid,.article-prose .pick-grid,.article-prose .product-grid,.article-prose .topic-grid{grid-template-columns:1fr}.article-prose .product--landscape{grid-template-columns:1fr}.article-prose .book-feature{grid-template-columns:80px minmax(0,1fr)}.article-prose .book-feature img{width:80px}}
/* Explicit nav spacing keeps the desktop header consistent across browser engines. */
.primary-nav{gap:0}
.primary-nav a+a{margin-left:clamp(17px,2.5vw,34px)}
.card-meta{margin-top:16px}


/* ------------------------------------------------------------------
   TestedWise visual refinement — editorial alignment & image integrity
   ------------------------------------------------------------------ */
:root {
  --ink: #17272d;
  --ink2: #2d4145;
  --body: #39474a;
  --muted: #68777a;
  --muted2: #8a9695;
  --paper: #f7f6f1;
  --paper2: #eeede6;
  --white: #fffefa;
  --line: #e4e2d9;
  --line2: #d5d4ca;
  --sage: #6e806e;
  --sage-dark: #455e4c;
  --brass: #c5a16b;
  --max: 1160px;
  --reading: 790px;
  --radius: 16px;
  --shadow: 0 4px 16px rgba(23,39,45,.035);
  --shadow2: 0 14px 34px rgba(23,39,45,.075);
}

.container { width: min(var(--max), calc(100% - 56px)); }
body { background: var(--paper); line-height: 1.7; }
.site-header { background: rgba(250,249,245,.96); border-bottom-color: rgba(213,212,202,.78); }
.header-inner { min-height: 78px; gap: clamp(18px,2.4vw,32px); }
.brand { gap: 10px; }
.brand-mark { width: 40px; height: 40px; border-radius: 10px; box-shadow: 0 2px 8px rgba(23,39,45,.12); }
.brand-name { font-size: 24px; letter-spacing: -.045em; }
.primary-nav { gap: clamp(15px,2vw,27px); }
.primary-nav a { font-size: 12px; letter-spacing: .01em; }
.primary-nav a+a { margin-left: 0; }
.header-cta { min-height: 40px; padding-inline: 17px; font-size: 10px; }

.home-hero { padding: clamp(66px,7.5vw,104px) 0 clamp(68px,8vw,104px); }
.home-hero:before { width: 560px; height: 560px; right: -210px; top: -260px; opacity: .7; }
.hero-grid { grid-template-columns: minmax(0,1.12fr) minmax(320px,.88fr); gap: clamp(40px,6vw,82px); }
.home-hero h1 { max-width: 700px; font-size: clamp(2.8rem,5vw,4.7rem); line-height: 1.04; }
.hero-copy { max-width: 620px; font-size: clamp(15px,1.35vw,17px); }
.hero-art { min-height: 360px; }
.hero-art-frame { width: min(100%,410px); aspect-ratio: 1 / 1; border-radius: 22px; background: #ecece5; box-shadow: 0 18px 52px rgba(23,39,45,.10); }
.hero-art-frame img { object-fit: contain; padding: 24px; }
.hero-art-frame:after { display: none; }
.hero-art-caption { right: -8px; bottom: 14px; width: 205px; padding: 16px 18px; }
.hero-art-caption strong { font-size: 16px; }

.section { padding: clamp(66px,7vw,88px) 0; }
.section-heading { align-items: flex-start; margin-bottom: 28px; }
.section-heading h2 { max-width: 620px; }
.section-heading p { max-width: 420px; line-height: 1.7; }
.card-grid { gap: 20px; align-items: stretch; }
.article-card { height: 100%; border-radius: 15px; box-shadow: 0 2px 10px rgba(23,39,45,.025); }
.article-card:hover { transform: translateY(-3px); }
.card-image { aspect-ratio: 1.55; background: #f0efe9; }
.card-image img { object-fit: contain; padding: 18px; background: #f0efe9; }
.card-body { padding: 20px 21px 21px; }
.article-card h3 { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; min-height: 3.7em; }
.article-card p { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; min-height: 5.8em; }
.card-meta { width: 100%; gap: 7px; }
.pillar-grid { gap: 16px; align-items: stretch; }
.pillar-card { min-height: 238px; padding: 27px; border-radius: 15px; }
.pillar-card p { max-width: 320px; }
.featured-panel { border-radius: 19px; box-shadow: 0 4px 18px rgba(23,39,45,.045); }
.featured-image { min-height: 380px; display: grid; place-items: center; background: #efeee8; }
.featured-image img { width: 100%; height: 100%; max-height: 460px; object-fit: contain; padding: 26px; }
.featured-content { padding: clamp(28px,4vw,50px); }

.page-hero { padding: clamp(54px,7vw,78px) 0 38px; }
.page-hero-inner { max-width: 900px; }
.page-hero h1 { max-width: 850px; }
.page-hero .lead { max-width: 760px; }
.category-tiles { gap: 15px; align-items: stretch; }
.category-tile { min-height: 172px; padding: 22px 23px; border-radius: 14px; }
.page-main { padding-top: 38px; }
.breadcrumbs { margin-bottom: 25px; }
.article-main { padding-top: 29px; }
.article-prose { max-width: var(--reading); }
.article-prose .content, .article-prose .article-content { font-size: 16px; line-height: 1.82; }
.article-prose h2 { margin-top: 43px; padding-top: 18px; }
.article-prose figure { max-width: 100%; }
.article-prose figure img { width: auto; max-width: 100%; height: auto; object-fit: contain; }

/* Product cards: image first, copy second, with the image's natural ratio. */
.article-prose .product-card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 20px;
  margin: 26px 0;
  padding: clamp(20px,3vw,28px);
  border: 1px solid var(--line);
  border-radius: 16px;
  box-shadow: 0 3px 14px rgba(23,39,45,.035);
}
.article-prose .product-header {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 21px;
}
.article-prose .product-header > a.product-link:first-child {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 220px;
  padding: 18px;
  overflow: hidden;
  background: #f4f3ed;
  border: 1px solid #ebe9e0;
  border-radius: 13px;
}
.article-prose .product-header img,
.article-prose .product-card > img {
  display: block;
  width: auto !important;
  height: auto !important;
  max-width: 100%;
  max-height: 300px;
  margin: 0 auto;
  padding: 0;
  object-fit: contain;
  background: transparent;
  border: 0;
  border-radius: 0;
}
.article-prose .product-header > div { min-width: 0; width: 100%; }
.article-prose .product-header h3 { margin: 0 0 9px; font-size: clamp(1.45rem,2.4vw,1.9rem); }
.article-prose .product-card .price { margin: 0 0 12px; color: var(--sage-dark); font-size: 15px; font-weight: 800; }
.article-prose .product-card .specs { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 9px; margin: 0; }
.article-prose .product-card .specs div { padding: 11px 13px; background: #f3f3ed; border: 1px solid #ecebe3; border-radius: 9px; }
.article-prose .product-card .pros-cons { gap: 12px; margin: 0; align-items: stretch; }
.article-prose .product-card .pros,
.article-prose .product-card .cons { padding: 16px 17px; line-height: 1.7; }
.article-prose .product-card .cta { align-self: flex-start; min-height: 43px; }
.article-prose .product-card .verdict { margin-top: 0; }

/* Wide SVGs, portrait products and square images all keep their own ratio. */
.article-prose .product--landscape,
.article-prose .product--portrait {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 18px;
  margin: 22px 0;
  padding: clamp(18px,2.8vw,25px);
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 15px;
}
.article-prose .product--landscape figure,
.article-prose .product--portrait figure {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 190px;
  margin: 0;
  padding: 18px;
  background: #f4f3ed;
  border: 1px solid #ebe9e0;
  border-radius: 12px;
}
.article-prose .product--landscape figure img,
.article-prose .product--portrait figure img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 290px;
  margin: 0 auto;
  object-fit: contain;
}
.article-prose .product-copy { width: 100%; min-width: 0; }
.article-prose .product-copy h3 { margin-top: 0; }
.article-prose .pick-grid,
.article-prose .product-grid,
.article-prose .topic-grid { align-items: stretch; gap: 16px; }
.article-prose .pick,
.article-prose .product,
.article-prose .topic-card { height: 100%; display: flex; flex-direction: column; align-items: flex-start; }
.article-prose .pick-image img,
.article-prose .product-image-link img,
.article-prose .product-img-link img,
.article-prose .img-link img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 280px;
  object-fit: contain;
  margin: 0 auto 15px;
  padding: 10px;
  background: #f4f3ed;
  border-radius: 10px;
}

/* Newsletter and contact forms: clear, inline feedback without leaving the site. */
.form-card { border-radius: 15px; box-shadow: 0 4px 18px rgba(23,39,45,.045); }
.form-row { align-items: stretch; }
.form-row input { min-width: 0; }
.form-row .button { flex: 0 0 auto; }
.form-status {
  margin: 14px 0 0;
  padding: 12px 14px;
  border: 1px solid transparent;
  border-radius: 9px;
  font-size: 13px;
  line-height: 1.55;
}
.form-status[hidden] { display: none !important; }
.form-status.is-success { color: #315b40; background: #edf4ed; border-color: #d3e3d4; }
.form-status.is-error { color: #8a3f32; background: #fbefeb; border-color: #efd5ce; }
.form-card button:disabled, .contact-form button:disabled { opacity: .65; cursor: wait; }
.newsletter-band .form-status.is-success { color: #dcebdd; background: rgba(67,104,75,.3); border-color: rgba(192,220,192,.25); }
.newsletter-band .form-status.is-error { color: #ffe0d7; background: rgba(132,61,47,.28); border-color: rgba(255,220,210,.25); }
.contact-form .form-status { margin-top: 16px; }

/* Consistent footer rhythm and focus states. */
.site-footer { padding-top: 60px; }
.footer-grid { gap: clamp(22px,3vw,38px); }
.footer-col li { margin-bottom: 10px; }
:where(a,button,input,textarea,summary):focus-visible { outline-color: rgba(197,161,107,.9); outline-offset: 3px; }

@media (max-width: 980px) {
  .container { width: min(var(--max),calc(100% - 42px)); }
  .header-inner { gap: 16px; }
  .primary-nav { gap: 14px; }
  .primary-nav a { font-size: 11px; }
  .brand-name { font-size: 22px; }
  .brand-mark { width: 37px; height: 37px; }
  .header-cta { padding-inline: 13px; }
  .hero-grid { grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr); }
}
@media (max-width: 760px) {
  .container { width: min(var(--max),calc(100% - 36px)); }
  .header-inner { min-height: 72px; }
  .primary-nav { gap: 0; }
  .primary-nav a { font-size: 13px; }
  .hero-grid { grid-template-columns: 1fr; gap: 26px; }
  .home-hero { padding-top: 58px; }
  .hero-art { min-height: 0; padding: 0 8px 26px; }
  .hero-art-frame { width: min(100%,430px); aspect-ratio: 1.18; }
  .hero-art-frame img { padding: 20px; }
  .hero-art-caption { right: 0; bottom: 0; }
  .card-grid, .pillar-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .featured-panel { grid-template-columns: 1fr; }
  .featured-image { min-height: 280px; max-height: 350px; }
  .featured-image img { max-height: 350px; }
  .section-heading { flex-direction: column; gap: 10px; }
  .newsletter-inner { grid-template-columns: 1fr; gap: 24px; }
  .newsletter-band .form-card { max-width: 100%; }
  .article-prose .product-card .specs { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 520px) {
  .container { width: calc(100% - 32px); }
  .brand-name { font-size: 22px; }
  .brand-mark { width: 36px; height: 36px; }
  .home-hero h1 { font-size: clamp(2.55rem,11vw,3.55rem); }
  .hero-art-frame { aspect-ratio: 1.05; }
  .hero-art-caption { width: 190px; }
  .card-grid, .pillar-grid, .category-tiles { grid-template-columns: 1fr; }
  .article-card h3, .article-card p { min-height: 0; }
  .featured-image { min-height: 230px; }
  .article-prose .product-card { padding: 17px; }
  .article-prose .product-header > a.product-link:first-child { min-height: 185px; }
  .article-prose .product-header img, .article-prose .product-card > img { max-height: 250px; }
  .article-prose .product-card .specs, .article-prose .product-card .pros-cons { grid-template-columns: 1fr; }
  .article-prose .product--landscape figure, .article-prose .product--portrait figure { min-height: 160px; padding: 13px; }
  .article-prose .product--landscape figure img, .article-prose .product--portrait figure img { max-height: 240px; }
  .form-row { flex-direction: column; }
  .form-row .button { width: 100%; }
}

/* Tablet breakpoint: prevent the full navigation and two-column hero from compressing. */
@media (max-width: 900px) {
  .header-inner { position: relative; }
  .menu-toggle { display: grid; place-items: center; margin-left: auto; }
  .header-cta { display: none; }
  .primary-nav {
    position: absolute;
    top: calc(100% + 1px);
    left: 0;
    right: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    margin: 0;
    padding: 10px 22px 18px;
    background: rgba(250,249,245,.99);
    border: 1px solid var(--line);
    border-top: 0;
    border-radius: 0 0 14px 14px;
    box-shadow: var(--shadow2);
  }
  .primary-nav.is-open { display: flex; }
  .primary-nav a { min-height: 48px; font-size: 13px; border-bottom: 1px solid var(--line); }
  .primary-nav a:last-child { border-bottom: 0; }
  .primary-nav a:after { display: none; }
  .hero-grid { grid-template-columns: 1fr; gap: 28px; }
  .hero-copy { max-width: 760px; }
  .hero-art { min-height: 0; padding: 0 8px 24px; }
  .hero-art-frame { width: min(100%,440px); aspect-ratio: 1.2; }
  .hero-art-caption { right: 0; bottom: 0; }
  .card-grid, .pillar-grid, .category-tiles { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

/* Primary landing-page intros: match the full-width rhythm of the other section headings.
   Supporting copy is left-aligned within its own column, not pushed to the page edge. */
.section-heading--stacked {
  display: flex;
  width: 100%;
  max-width: none;
  align-items: flex-end;
  justify-content: space-between;
  gap: clamp(28px, 4vw, 56px);
  margin: 0 0 30px;
  text-align: left;
}
.section-heading--stacked > div {
  flex: 1 1 0;
  min-width: 0;
  max-width: 650px;
}
.section-heading--stacked h2 { max-width: 650px; }
.section-heading--stacked > p {
  flex: 0 1 470px;
  max-width: 470px;
  margin: 0;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.7;
  text-align: left;
}
@media (max-width: 760px) {
  .section-heading--stacked {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
  }
  .section-heading--stacked > div,
  .section-heading--stacked > p {
    width: 100%;
    max-width: 100%;
  }
}

.article-prose .product-card .img-link,
.article-prose .product-card .product-img-link,
.article-prose .product-review-image{display:block;width:100%;max-width:620px;margin:0 auto 18px;text-align:center;}
.article-prose .product-card .img-link img,
.article-prose .product-card .product-img-link img,
.article-prose .product-review-image img{display:block;width:auto;max-width:100%;height:auto;max-height:360px;object-fit:contain;margin:0 auto;padding:0;background:transparent;border:0;border-radius:10px;}
.article-prose .product-review-card{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:30px 0;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);}
.article-prose .product-review-copy h3{margin:0 0 8px;}
.article-prose .product-review-copy .product-kicker{margin:0 0 12px;color:var(--sage-dark);font-size:12px;font-weight:750;}
.article-prose .product-review-copy ul{margin-bottom:16px;}
.article-prose .editorial-callout{margin:24px 0;padding:18px 21px;color:#4f5e5d;background:#eceedf;border-left:3px solid var(--sage);border-radius:0 10px 10px 0;font-size:14px;line-height:1.7;}
.article-prose .article-sources{margin:42px 0 24px;padding:23px 25px;background:#f3f3ed;border:1px solid var(--line);border-radius:14px;}
.article-prose .article-sources h2{margin:0 0 12px;padding:0;border:0;font-size:1.35rem;}
.article-prose .article-sources ul{margin:0;padding-left:20px;}
.article-prose .article-sources li{margin-bottom:7px;font-size:13px;}
.article-prose .last-reviewed{margin:26px 0 0;color:var(--muted2);font-size:10px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;}
.article-prose .brand-relationship-disclosure{margin:12px 0 0;padding-top:12px;border-top:1px solid rgba(70,90,84,.15);font-size:12px;}
@media(max-width:760px){.article-prose .product-review-card{padding:18px}.article-prose .product-review-image img{max-height:290px}}

/* Keep all landing-page copy left-aligned within the shared container. */
.page-hero-inner .eyebrow,
.page-hero-inner h1,
.page-hero-inner .lead,
.section-heading--stacked,
.section-heading--stacked > div,
.section-heading--stacked > p,
.category-intro { text-align: left; }
/* Product images retain natural proportions; no fixed square crop. */
.article-prose .product-header { grid-template-columns:minmax(0,220px) minmax(0,1fr); }
.article-prose .product-header img,.article-prose .product-card img { width:100%; max-width:220px; height:auto; max-height:300px; object-fit:contain; padding:10px; }
@media(max-width:640px){.article-prose .product-header{grid-template-columns:1fr}.article-prose .product-header img,.article-prose .product-card img{max-width:100%;max-height:260px;margin:0 auto 16px}}

/* Fitness tracker comparison: product-led editorial layout */
.article-prose .fitness-comparison-article .article-content { max-width: 100%; }
.fitness-comparison-article .fitness-editorial-note {
  margin: 26px 0 34px; padding: 20px 23px; background: #eeefe8;
  border: 1px solid #dfe2d8; border-left: 3px solid var(--sage);
  border-radius: 0 13px 13px 0; color: #52605e; font-size: 13px; line-height: 1.75;
}
.fitness-comparison-article .fitness-editorial-note strong { display:block; margin-bottom:6px; color:var(--ink); font-size:11px; letter-spacing:.1em; text-transform:uppercase; }
.fitness-comparison-article .fitness-editorial-note p { margin:0; }
.fitness-comparison-article .fitness-quick-take { margin: 38px 0 44px; padding: 28px; background: #fffefa; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow); }
.fitness-comparison-article .fitness-quick-take .eyebrow { margin-bottom:9px; }
.fitness-comparison-article .fitness-quick-take h2 { margin:0 0 21px; padding:0; border:0; }
.fitness-comparison-article .fitness-pick-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.fitness-comparison-article .fitness-pick { display:flex; flex-direction:column; gap:6px; min-width:0; padding:17px 18px; background:#f4f4ee; border:1px solid #e7e7df; border-radius:12px; }
.fitness-comparison-article .fitness-pick-label { color:var(--sage-dark); font-size:9px; font-weight:850; letter-spacing:.13em; text-transform:uppercase; }
.fitness-comparison-article .fitness-pick strong { color:var(--ink); font:600 19px/1.25 var(--serif); }
.fitness-comparison-article .fitness-pick span:last-child { color:var(--muted); font-size:12px; line-height:1.6; }
.fitness-comparison-article .fitness-table-wrap { margin:24px 0 10px; }
.fitness-comparison-article .fitness-comparison-table { min-width:760px; }
.fitness-comparison-article .fitness-comparison-table td:first-child { min-width:160px; }
.fitness-comparison-article .fitness-table-note { margin:0 0 38px; color:var(--muted); font-size:11px; line-height:1.65; }
.fitness-comparison-article .fitness-product { margin:30px 0 44px; padding:clamp(20px,3.5vw,34px); background:var(--white); border:1px solid var(--line); border-radius:19px; box-shadow:var(--shadow); }
.fitness-comparison-article .fitness-product-topline { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:9px; }
.fitness-comparison-article .fitness-number { display:inline-grid; width:30px; height:30px; place-items:center; color:#fff; background:var(--ink); border-radius:50%; font:700 11px/1 var(--sans); }
.fitness-comparison-article .fitness-product-verdict { color:var(--sage-dark); font-size:9px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.fitness-comparison-article .fitness-product h3 { margin:0 0 8px; font-size:clamp(1.8rem,3vw,2.35rem); }
.fitness-comparison-article .fitness-product-deck { max-width:690px; margin:0 0 22px; color:var(--muted); font:italic 17px/1.6 var(--serif); }
.fitness-comparison-article .fitness-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; margin:20px 0 22px; }
.fitness-comparison-article .fitness-gallery figure { display:flex; flex-direction:column; justify-content:flex-start; min-width:0; margin:0; padding:12px; background:#f6f6f1; border:1px solid #e8e8e0; border-radius:13px; }
.fitness-comparison-article .fitness-gallery img { width:100%; height:clamp(220px,27vw,330px); margin:0; object-fit:contain; object-position:center; border-radius:7px; }
.fitness-comparison-article .fitness-gallery figcaption { margin:10px 2px 1px; color:var(--muted); font-size:10px; line-height:1.5; text-align:left; }
.fitness-comparison-article .fitness-price-line { display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:10px; margin:18px 0 17px; padding:13px 16px; background:#f0f2ec; border-radius:10px; }
.fitness-comparison-article .fitness-price-line span { color:var(--muted); font-size:10px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.fitness-comparison-article .fitness-price-line strong { color:var(--ink); font:600 23px/1.1 var(--serif); }
.fitness-comparison-article .fitness-facts-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; margin:22px 0; }
.fitness-comparison-article .fitness-facts-grid div { min-width:0; padding:12px 13px; background:#f5f5f0; border:1px solid #e9e9e2; border-radius:9px; }
.fitness-comparison-article .fitness-facts-grid span { display:block; margin-bottom:5px; color:var(--muted2); font-size:9px; font-weight:850; letter-spacing:.1em; text-transform:uppercase; }
.fitness-comparison-article .fitness-facts-grid strong { display:block; color:var(--ink2); font-size:12px; line-height:1.45; }
.fitness-comparison-article .fitness-pros-cons { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:23px 0; }
.fitness-comparison-article .fitness-pros-cons > div { padding:17px 18px; border-radius:11px; }
.fitness-comparison-article .fitness-pros { background:#eef2eb; }
.fitness-comparison-article .fitness-cons { background:#f5f0eb; }
.fitness-comparison-article .fitness-pros-cons strong { display:block; margin-bottom:9px; color:var(--ink); font-size:11px; letter-spacing:.04em; }
.fitness-comparison-article .fitness-pros-cons ul { margin:0; padding-left:18px; font-size:12px; line-height:1.65; }
.fitness-comparison-article .fitness-pros-cons li { margin-bottom:6px; padding-left:1px; }
.fitness-comparison-article .fitness-cta { display:inline-flex; align-items:center; justify-content:center; gap:10px; min-height:44px; margin-top:5px; padding:0 19px; color:#fff; background:var(--ink); border-radius:999px; text-decoration:none; font-size:10px; font-weight:850; letter-spacing:.06em; text-transform:uppercase; transition:background .2s,transform .2s; }
.fitness-comparison-article .fitness-cta:hover { color:#fff; background:var(--sage-dark); transform:translateY(-1px); }
.fitness-comparison-article .fitness-decision-list { margin:22px 0 30px; padding:21px 23px; background:#f0f2ec; border-radius:13px; }
.fitness-comparison-article .fitness-decision-list p { margin:0; padding:12px 0; border-bottom:1px solid rgba(85,103,91,.15); font-size:14px; }
.fitness-comparison-article .fitness-decision-list p:first-child { padding-top:0; }
.fitness-comparison-article .fitness-decision-list p:last-child { padding-bottom:0; border-bottom:0; }
.fitness-comparison-article .fitness-decision-list strong { color:var(--ink); }
.fitness-comparison-article .fitness-faq details { padding:16px 0; border-bottom:1px solid var(--line); }
.fitness-comparison-article .fitness-faq summary { color:var(--ink); font-weight:750; cursor:pointer; }
.fitness-comparison-article .fitness-faq details p { margin:11px 0 0; color:var(--body); font-size:14px; }
.fitness-comparison-article .fitness-final-verdict { margin:38px 0 25px; padding:26px 28px; background:#17272d; border-radius:16px; color:#dce2df; }
.fitness-comparison-article .fitness-final-verdict .eyebrow { color:#d7bd91; }
.fitness-comparison-article .fitness-final-verdict h2 { margin:0 0 14px; padding:0; color:#fffefa; border:0; }
.fitness-comparison-article .fitness-final-verdict p:last-child { margin-bottom:0; }
@media(max-width:760px){
  .fitness-comparison-article .fitness-quick-take { padding:21px; }
  .fitness-comparison-article .fitness-product { padding:20px; }
  .fitness-comparison-article .fitness-gallery img { height:clamp(180px,40vw,260px); }
  .fitness-comparison-article .fitness-facts-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:520px){
  .fitness-comparison-article .fitness-pick-grid,
  .fitness-comparison-article .fitness-gallery,
  .fitness-comparison-article .fitness-pros-cons { grid-template-columns:1fr; }
  .fitness-comparison-article .fitness-gallery img { height:auto; max-height:360px; }
  .fitness-comparison-article .fitness-final-verdict { padding:21px; }
  .fitness-comparison-article .fitness-facts-grid { gap:7px; }
}


/* Product image pairs for detailed comparison guides */
.article-prose .product-image-gallery{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);
  gap:12px;
  width:100%;
  max-width:760px;
  margin:0 auto 20px;
  align-items:center;
}
.article-prose .product-image-gallery figure{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  min-height:190px;
  margin:0;
  padding:12px;
  overflow:hidden;
  background:#f7f8f5;
  border:1px solid var(--line);
  border-radius:12px;
}
.article-prose .product-image-gallery img{
  display:block;
  width:auto;
  max-width:100%;
  height:auto;
  max-height:280px;
  object-fit:contain;
  margin:0 auto;
  border:0;
  border-radius:6px;
}
@media(max-width:640px){
  .article-prose .product-image-gallery{grid-template-columns:1fr 1fr;gap:8px;}
  .article-prose .product-image-gallery figure{min-height:130px;padding:7px;}
  .article-prose .product-image-gallery img{max-height:190px;}
}


/* 2.3.5 toaster article galleries */
.article-prose .product-image-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;max-width:720px;margin:0 auto 18px;align-items:stretch}
.article-prose .product-image-pair figure{min-width:0;margin:0;padding:10px;background:#f7f7f2;border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;justify-content:space-between}
.article-prose .product-image-pair img{display:block;width:100%;height:190px;max-height:190px;object-fit:contain;margin:0 auto;border:0;border-radius:8px;background:#fff}
.article-prose .product-image-pair figcaption{margin-top:8px;color:var(--muted);font-size:11px;line-height:1.45;text-align:center}
@media(min-width:820px){
  .article-prose .toaster-comparison-article .product-review-card{grid-template-columns:minmax(260px,.9fr) minmax(0,1.3fr);align-items:start;gap:24px}
  .article-prose .toaster-comparison-article .product-review-image{grid-column:1;margin:0;max-width:none}
  .article-prose .toaster-comparison-article .product-review-copy{grid-column:2;min-width:0}
}
@media(max-width:560px){
  .article-prose .toaster-comparison-article .product-review-card{padding:15px;gap:14px}
  .article-prose .product-image-pair{gap:7px}
  .article-prose .product-image-pair figure{padding:6px}
  .article-prose .product-image-pair img{height:135px;max-height:135px}
  .article-prose .product-image-pair figcaption{font-size:10px}
}


/* 2.3.6 mower and tumbler article layouts */
@media(min-width:820px){
  .article-prose .lawn-mower-guide .product-review-card,
  .article-prose .bottle-comparison-guide .product-review-card{
    grid-template-columns:minmax(260px,.9fr) minmax(0,1.3fr);
    align-items:start;
    gap:24px;
  }
  .article-prose .lawn-mower-guide .product-review-image,
  .article-prose .bottle-comparison-guide .product-review-image{
    grid-column:1;
    margin:0;
    max-width:none;
  }
  .article-prose .lawn-mower-guide .product-review-copy,
  .article-prose .bottle-comparison-guide .product-review-copy{
    grid-column:2;
    min-width:0;
  }
}
@media(max-width:560px){
  .article-prose .lawn-mower-guide .product-review-card,
  .article-prose .bottle-comparison-guide .product-review-card{
    padding:15px;
    gap:14px;
  }
}


/* 2.3.7 — responsive product galleries for the three refreshed Tech & Gadgets guides */
@media(min-width:820px){
  .article-prose .airpods-comparison-guide .product-review-card,
  .article-prose .wireless-mouse-comparison-guide .product-review-card,
  .article-prose .mouse-jiggler-comparison-guide .product-review-card{
    grid-template-columns:minmax(240px,.88fr) minmax(0,1.22fr);
    align-items:start;
    gap:22px;
  }
  .article-prose .airpods-comparison-guide .product-review-image,
  .article-prose .wireless-mouse-comparison-guide .product-review-image,
  .article-prose .mouse-jiggler-comparison-guide .product-review-image{
    grid-column:1;
    margin:0;
    max-width:none;
  }
  .article-prose .airpods-comparison-guide .product-review-copy,
  .article-prose .wireless-mouse-comparison-guide .product-review-copy,
  .article-prose .mouse-jiggler-comparison-guide .product-review-copy{
    grid-column:2;
    min-width:0;
  }
}
@media(max-width:560px){
  .article-prose .airpods-comparison-guide .product-review-card,
  .article-prose .wireless-mouse-comparison-guide .product-review-card,
  .article-prose .mouse-jiggler-comparison-guide .product-review-card{
    padding:15px;
    gap:14px;
  }
}


/* 2.3.8 — paperback feature and hiking product cards */
.article-prose .kindness-book-guide .book-feature{
  grid-template-columns:minmax(112px,145px) minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.article-prose .kindness-book-guide .book-feature img{
  width:100%;
  max-width:145px;
  height:auto;
  border-radius:7px;
  box-shadow:0 5px 16px rgba(20,30,30,.12);
}
.article-prose .kindness-book-guide .book-spec-list{
  margin:12px 0 16px;
  padding-left:18px;
}
.article-prose .kindness-book-guide .book-spec-list li{
  margin:4px 0;
  font-size:13px;
}
.article-prose .kindness-book-guide .book-note{
  margin:10px 0;
  color:var(--muted);
  font-size:12px;
  line-height:1.6;
}
@media(min-width:820px){
  .article-prose .beginner-hiking-guide .product-review-card{
    grid-template-columns:minmax(220px,.78fr) minmax(0,1.22fr);
    align-items:start;
    gap:24px;
  }
  .article-prose .beginner-hiking-guide .product-review-image{
    grid-column:1;
    margin:0;
    max-width:none;
  }
  .article-prose .beginner-hiking-guide .product-review-image img{
    width:100%;
    max-height:380px;
    object-fit:contain;
  }
  .article-prose .beginner-hiking-guide .product-review-copy{
    grid-column:2;
    min-width:0;
  }
}
@media(max-width:560px){
  .article-prose .kindness-book-guide .book-feature{
    grid-template-columns:82px minmax(0,1fr);
    gap:13px;
    padding:16px;
  }
  .article-prose .kindness-book-guide .book-feature img{
    width:82px;
  }
  .article-prose .beginner-hiking-guide .product-review-card{
    padding:16px;
    gap:14px;
  }
  .article-prose .beginner-hiking-guide .product-review-image img{
    max-height:260px;
  }
}


/* 2.3.9 — Creative Assets & Templates editorial layouts */
.article-prose .creative-assets-article .lead{font-size:1.16rem;line-height:1.78;color:var(--ink);}
.article-prose .creative-assets-article .editorial-callout{margin:24px 0;padding:17px 20px;color:#52605e;background:#eef0e8;border-left:3px solid var(--sage);border-radius:0 10px 10px 0;font-size:13px;line-height:1.75;}
.article-prose .creative-assets-article .product-review-card{grid-template-columns:minmax(190px,.72fr) minmax(0,1.28fr);align-items:start;gap:24px;padding:22px;margin:27px 0;}
.article-prose .creative-assets-article .product-review-image{grid-column:1;margin:0;max-width:none;display:flex;align-items:flex-start;justify-content:center;}
.article-prose .creative-assets-article .product-review-image img{width:100%;max-width:310px;max-height:310px;object-fit:contain;margin:0;padding:0;border:0;background:transparent;border-radius:10px;}
.article-prose .creative-assets-article .product-review-copy{grid-column:2;min-width:0;}
.article-prose .creative-assets-article .product-review-copy h3{margin-top:0;}
.article-prose .creative-assets-article .product-kicker{margin:0 0 8px;color:var(--sage-dark);font-size:10px;font-weight:800;letter-spacing:.09em;text-transform:uppercase;}
.article-prose .creative-assets-article .asset-hero{margin:25px 0 30px;padding:18px;background:#f4f4ef;border:1px solid var(--line);border-radius:15px;text-align:center;}
.article-prose .creative-assets-article .asset-hero img{display:block;width:auto;max-width:100%;max-height:430px;object-fit:contain;margin:0 auto;border-radius:8px;}
.article-prose .creative-assets-article .asset-hero figcaption{max-width:680px;margin:10px auto 0;color:var(--muted);font-size:11px;line-height:1.6;}
.article-prose .creative-assets-article .faq{padding:17px 0;border-bottom:1px solid var(--line);}
.article-prose .creative-assets-article .faq h3{margin:0 0 8px;font-size:1.08rem;}
.article-prose .creative-assets-article .faq p{margin:0;}
.article-prose .creative-assets-article .table-scroll{margin:25px 0 32px;}
.article-prose .creative-assets-article .related-guides{margin-top:42px;}
@media(max-width:760px){
 .article-prose .creative-assets-article .product-review-card{grid-template-columns:minmax(0,1fr);gap:14px;padding:17px;}
 .article-prose .creative-assets-article .product-review-image{grid-column:1;}
 .article-prose .creative-assets-article .product-review-image img{max-height:270px;}
 .article-prose .creative-assets-article .product-review-copy{grid-column:1;}
 .article-prose .creative-assets-article .asset-hero{padding:12px;}
}

/* 2.3.9 — project mockup gallery */

.article-prose .creative-assets-article .asset-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 30px;}
.article-prose .creative-assets-article .asset-image-grid figure{margin:0;padding:14px;background:#f4f4ef;border:1px solid var(--line);border-radius:12px;}
.article-prose .creative-assets-article .asset-image-grid img{display:block;width:100%;height:220px;object-fit:contain;margin:0 auto;border-radius:8px;}
.article-prose .creative-assets-article .asset-image-grid figcaption{margin-top:9px;color:var(--muted);font-size:11px;line-height:1.55;text-align:left;}
@media(max-width:560px){.article-prose .creative-assets-article .asset-image-grid{grid-template-columns:1fr;gap:12px}.article-prose .creative-assets-article .asset-image-grid img{height:200px}}


/* 2.4.0 — transparent product packshots */
.article-prose img.product-cutout,
.hero-art img.product-cutout {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  object-fit: contain;
  filter: drop-shadow(0 10px 13px rgba(25, 39, 35, .14));
}
.article-prose .product-card img.product-cutout,
.article-prose .product-header img.product-cutout,
.article-prose .pick-image img.product-cutout,
.article-prose .product-image-link img.product-cutout,
.article-prose .product-img-link img.product-cutout,
.article-prose .img-link img.product-cutout,
.article-prose .product-image-gallery img.product-cutout,
.article-prose .product-image-pair img.product-cutout,
.article-prose .product-review-image img.product-cutout,
.fitness-comparison-article .fitness-gallery img.product-cutout {
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}


.card-image img.product-cutout {
  object-fit: contain;
  padding: 18px;
  background: transparent !important;
  filter: drop-shadow(0 9px 12px rgba(25, 39, 35, .13));
}
.featured-image img.product-cutout {
  object-fit: contain;
  padding: clamp(18px, 4vw, 42px);
  background: transparent !important;
  filter: drop-shadow(0 12px 16px rgba(25, 39, 35, .14));
}

.article-prose .product-image-pair figure:only-child{grid-column:1/-1;max-width:360px;margin:0 auto}
.article-prose .product-image-pair figure:only-child img{height:220px;max-height:220px;background:transparent}
@media(max-width:760px){.article-prose .product-image-pair figure:only-child img{height:170px;max-height:170px}}

/* 2.4.4 — small-apartment home gym guide */
.apartment-gym-article .gym-hero-figure {
  margin: 25px 0 34px;
  padding: 12px;
  background: #f1f1eb;
  border: 1px solid var(--line);
  border-radius: 17px;
}
.apartment-gym-article .gym-hero-figure img {
  display: block;
  width: 100%;
  height: auto;
  margin: 0;
  border-radius: 10px;
}
.apartment-gym-article .gym-hero-figure figcaption {
  margin: 10px 5px 2px;
  text-align: left;
}
.apartment-gym-article .gym-quick-take {
  margin: 30px 0 36px;
  padding: clamp(21px,3.4vw,30px);
  background: #fffefa;
  border: 1px solid var(--line);
  border-radius: 17px;
  box-shadow: var(--shadow);
}
.apartment-gym-article .gym-quick-take > .eyebrow {
  margin: 0 0 8px;
  color: var(--sage-dark);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.apartment-gym-article .gym-quick-take h2 {
  margin: 0 0 19px;
  padding: 0;
  border: 0;
}
.apartment-gym-article .gym-quick-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 11px;
}
.apartment-gym-article .gym-quick-grid > div {
  min-width: 0;
  padding: 16px 16px 13px;
  background: #f3f4ee;
  border: 1px solid #e6e8df;
  border-radius: 11px;
}
.apartment-gym-article .gym-quick-label,
.apartment-gym-article .gym-tier-kicker {
  display: block;
  margin-bottom: 7px;
  color: var(--sage-dark);
  font-size: 9px;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.apartment-gym-article .gym-quick-grid strong {
  display: block;
  margin-bottom: 7px;
  color: var(--ink);
  font: 600 27px/1.1 var(--serif);
}
.apartment-gym-article .gym-quick-grid p {
  margin: 0;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}
.apartment-gym-article .gym-quick-caution {
  margin: 17px 0 0;
  padding: 13px 15px;
  color: #65554a;
  background: #f5f0eb;
  border-left: 3px solid #b88a66;
  border-radius: 0 8px 8px 0;
  font-size: 12px;
  line-height: 1.65;
}
.apartment-gym-article .gym-toc {
  margin: 30px 0 35px;
  padding: 21px 24px;
  background: #f4f4ee;
  border: 1px solid var(--line);
  border-radius: 13px;
}
.apartment-gym-article .gym-toc > strong {
  display: block;
  margin-bottom: 10px;
  color: var(--ink);
  font-size: 10px;
  font-weight: 850;
  letter-spacing: .13em;
  text-transform: uppercase;
}
.apartment-gym-article .gym-toc ol {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 7px 24px;
  margin: 0;
  padding-left: 20px;
  font-size: 13px;
}
.apartment-gym-article .gym-toc li { margin: 0; padding-left: 2px; }
.apartment-gym-article .gym-toc a { color: var(--sage-dark); text-decoration: none; }
.apartment-gym-article .gym-toc a:hover { text-decoration: underline; }
.apartment-gym-article .gym-movement-table table { min-width: 700px; }
.apartment-gym-article .gym-tier-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 13px;
  margin: 25px 0 17px;
  align-items: stretch;
}
.apartment-gym-article .gym-tier {
  min-width: 0;
  display: flex;
  flex-direction: column;
  padding: 20px 19px 18px;
  background: #fffefa;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: 0 3px 12px rgba(23,39,45,.035);
}
.apartment-gym-article .gym-tier-featured {
  background: #f1f3ed;
  border-color: #d7ded2;
}
.apartment-gym-article .gym-tier h3 {
  margin: 0 0 9px;
  font: 600 21px/1.22 var(--serif);
}
.apartment-gym-article .gym-tier-price {
  margin: 0 0 13px;
  color: var(--ink);
  font: 600 31px/1.1 var(--serif);
}
.apartment-gym-article .gym-tier ul {
  margin: 0 0 12px;
  padding-left: 18px;
  color: var(--body);
  font-size: 12px;
  line-height: 1.6;
}
.apartment-gym-article .gym-tier li { margin-bottom: 5px; }
.apartment-gym-article .gym-tier p {
  margin: 0 0 12px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.65;
}
.apartment-gym-article .gym-tier .gym-tier-fit { margin-top: auto; padding-top: 11px; border-top: 1px solid rgba(85,103,91,.15); color: var(--body); }
.apartment-gym-article .gym-price-note {
  margin: 10px 0 28px;
  color: var(--muted2);
  font-size: 11px;
  line-height: 1.65;
}
.apartment-gym-article .gym-product-summary { min-width: 760px; }
.apartment-gym-article .gym-product-card {
  display: grid;
  grid-template-columns: minmax(190px,.72fr) minmax(0,1.55fr);
  gap: clamp(19px,3vw,30px);
  margin: 29px 0 36px;
  padding: clamp(18px,3vw,27px);
  background: #fffefa;
  border: 1px solid var(--line);
  border-radius: 17px;
  box-shadow: var(--shadow);
  scroll-margin-top: 100px;
}
.apartment-gym-article .gym-product-media {
  align-self: start;
  min-width: 0;
  min-height: 230px;
  display: grid;
  place-items: center;
  padding: 14px;
  background: #f3f3ed;
  border: 1px solid #e8e8e0;
  border-radius: 13px;
}
.apartment-gym-article .gym-product-media img {
  display: block;
  width: 100%;
  max-width: 310px;
  max-height: 300px;
  height: auto;
  margin: 0;
  padding: 5px;
  object-fit: contain;
  background: transparent;
  border: 0;
  border-radius: 0;
  filter: drop-shadow(0 9px 12px rgba(25,39,35,.12));
}
.apartment-gym-article .gym-product-copy { min-width: 0; }
.apartment-gym-article .gym-product-copy h3 {
  margin: 0 0 9px;
  font: 600 clamp(1.55rem,2.3vw,2rem)/1.2 var(--serif);
}
.apartment-gym-article .gym-product-copy .fitness-product-topline { margin: 0 0 11px; }
.apartment-gym-article .gym-price-line {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px 14px;
  margin: 0 0 16px;
  padding: 10px 13px;
  background: #f0f2ec;
  border-radius: 9px;
}
.apartment-gym-article .gym-price-line strong {
  color: var(--ink);
  font: 600 23px/1.1 var(--serif);
}
.apartment-gym-article .gym-price-line span {
  color: var(--muted);
  font-size: 10px;
  font-weight: 750;
}
.apartment-gym-article .gym-product-copy > p {
  font-size: 14px;
  line-height: 1.78;
}
.apartment-gym-article .gym-facts-grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 8px;
  margin: 18px 0;
}
.apartment-gym-article .gym-facts-grid > div {
  min-width: 0;
  padding: 10px 11px;
  background: #f5f5f0;
  border: 1px solid #e9e9e2;
  border-radius: 8px;
}
.apartment-gym-article .gym-facts-grid span {
  display: block;
  margin-bottom: 5px;
  color: var(--muted2);
  font-size: 8px;
  font-weight: 850;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.apartment-gym-article .gym-facts-grid strong {
  display: block;
  color: var(--ink2);
  font-size: 11px;
  line-height: 1.45;
}
.apartment-gym-article .gym-pros-cons {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 10px;
  margin: 17px 0;
}
.apartment-gym-article .gym-pros-cons > div { padding: 14px 15px; border-radius: 9px; }
.apartment-gym-article .gym-pros { background: #eef2eb; }
.apartment-gym-article .gym-cons { background: #f5f0eb; }
.apartment-gym-article .gym-pros-cons strong {
  display: block;
  margin-bottom: 7px;
  color: var(--ink);
  font-size: 10px;
  letter-spacing: .04em;
}
.apartment-gym-article .gym-pros-cons ul {
  margin: 0;
  padding-left: 17px;
  font-size: 11px;
  line-height: 1.6;
}
.apartment-gym-article .gym-pros-cons li { margin-bottom: 5px; }
.apartment-gym-article .gym-workout-card {
  margin: 22px 0;
  padding: 20px 21px 7px;
  background: #fffefa;
  border: 1px solid var(--line);
  border-radius: 13px;
}
.apartment-gym-article .gym-workout-card h3 { margin: 0 0 12px; font: 600 21px/1.25 var(--serif); }
.apartment-gym-article .gym-workout-card table { min-width: 570px; }
.apartment-gym-article .gym-safety-list {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 11px;
  margin: 22px 0 30px;
}
.apartment-gym-article .gym-safety-list > div {
  padding: 16px 17px;
  background: #f4f4ee;
  border: 1px solid var(--line);
  border-radius: 11px;
}
.apartment-gym-article .gym-safety-list strong { display: block; margin-bottom: 7px; color: var(--ink); font-size: 13px; }
.apartment-gym-article .gym-safety-list p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.65; }
.apartment-gym-article .gym-faq details { padding: 16px 0; border-bottom: 1px solid var(--line); }
.apartment-gym-article .gym-faq summary { color: var(--ink); font-weight: 750; cursor: pointer; }
.apartment-gym-article .gym-faq details p { margin: 10px 0 0; font-size: 14px; }
.apartment-gym-article .gym-final-verdict {
  margin: 38px 0 25px;
  padding: 25px 27px;
  color: #dce2df;
  background: #17272d;
  border-radius: 15px;
}
.apartment-gym-article .gym-final-verdict .eyebrow { margin-bottom: 8px; color: #d7bd91; font-size: 9px; font-weight: 850; letter-spacing: .13em; text-transform: uppercase; }
.apartment-gym-article .gym-final-verdict h2 { margin: 0 0 13px; padding: 0; color: #fffefa; border: 0; }
.apartment-gym-article .gym-final-verdict p { color: #dce2df; }
.apartment-gym-article .gym-final-verdict p:last-child { margin-bottom: 0; }
@media(max-width:900px){
  .apartment-gym-article .gym-tier-grid { grid-template-columns: 1fr; }
  .apartment-gym-article .gym-product-card { grid-template-columns: minmax(160px,.6fr) minmax(0,1.4fr); }
}
@media(max-width:760px){
  .apartment-gym-article .gym-quick-grid { grid-template-columns: 1fr; }
  .apartment-gym-article .gym-product-card { grid-template-columns: 1fr; }
  .apartment-gym-article .gym-product-media { min-height: 190px; }
  .apartment-gym-article .gym-product-media img { max-height: 250px; }
  .apartment-gym-article .gym-facts-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:520px){
  .apartment-gym-article .gym-toc ol { grid-template-columns: 1fr; }
  .apartment-gym-article .gym-pros-cons,
  .apartment-gym-article .gym-safety-list { grid-template-columns: 1fr; }
  .apartment-gym-article .gym-product-card { padding: 16px; }
  .apartment-gym-article .gym-final-verdict { padding: 21px; }
}

/* 2.4.5 — car-camping article presentation */
.article-prose .article-hero{margin:26px 0 32px;}
.article-prose .article-hero img{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover;margin:0;border-radius:16px;}
.article-prose .article-hero figcaption{margin:10px 4px 0;color:var(--muted);font-size:11px;line-height:1.6;text-align:left;}
.article-prose .article-toc{margin:28px 0 34px;padding:22px 25px;background:#f5f5ef;border:1px solid var(--line);border-radius:14px;}
.article-prose .article-toc>strong{display:block;margin-bottom:10px;color:var(--ink);font-family:var(--serif);font-size:19px;}
.article-prose .article-toc ol{margin:0;padding-left:22px;columns:2;column-gap:36px;}
.article-prose .article-toc li{break-inside:avoid;margin:0 0 7px;font-size:13px;}
.article-prose .article-toc a{color:var(--sage-dark);text-decoration:none;}
.article-prose .article-toc a:hover{text-decoration:underline;}
@media(max-width:640px){.article-prose .article-toc{padding:18px}.article-prose .article-toc ol{columns:1;}}
