/* All route families share the approved Companion visual system. */
.template-site{--reading:740px;--hero-inset:48px}.template-site h1{font-size:clamp(38px,4vw,61px);line-height:1.07;overflow-wrap:break-word}.v-crumbs{display:flex;align-items:center;gap:12px;font-size:11px;padding:13px 0 23px;color:var(--muted)}.v-crumbs a:hover{text-decoration:underline}.v-hero{background:var(--blue);border-radius:30px;overflow:hidden;margin-bottom:0}.v-hero-copy{padding:45px var(--hero-inset)}.v-hero h1{max-width:950px}.v-hero-copy>p{max-width:750px;margin-top:23px;font-size:17px}.v-has-photo{display:grid;grid-template-columns:1.4fr .8fr;align-items:stretch}.v-hero-photo{width:100%;height:100%;min-height:320px;max-height:560px;object-fit:cover}.template-product .v-hero{background:var(--lime-soft)}.template-product .v-hero-photo{object-fit:contain;background:#fafbf7;padding:35px}.template-author .v-hero-photo{object-position:center 23%}.template-author .v-hero{grid-template-columns:1.4fr .65fr}.template-author .v-hero-photo{max-height:440px}.template-legal .v-hero,.template-scoring .v-hero{background:var(--gray)}.template-plus .v-hero{background:var(--lime)}.template-about .v-hero{background:var(--peach)}.v-score{display:flex;gap:18px;align-items:center;margin-top:30px}.v-score>span{background:white;border-radius:18px;padding:14px 19px;font-size:34px;font-weight:700;white-space:nowrap;letter-spacing:-.05em}.v-score>div{font-size:13px;font-weight:600;line-height:1.5}.v-score a{display:block;font-size:11px;font-weight:400;text-decoration:underline;text-underline-offset:4px;margin-top:7px}.v-answer{background:#ffffffbd;border:1px solid #ffffff;border-radius:17px;padding:22px;margin-top:25px;max-width:730px}.v-answer>b{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.v-answer p{font-size:15px;line-height:1.65;color:var(--ink)}.v-reading-layout{display:grid;grid-template-columns:minmax(0,740px) minmax(220px,285px);gap:70px;justify-content:space-between;padding-top:55px;padding-bottom:65px}.v-prose{min-width:0;font-size:17px;line-height:1.75;color:var(--ink);overflow-wrap:break-word}.v-prose p{font-size:17px;line-height:1.8;color:#455760;margin:19px 0}.v-prose :is(h2:not([data-original-heading]),[data-original-heading="h2"]){font-size:32px;line-height:1.17;margin:42px 0 20px;letter-spacing:-.045em;scroll-margin-top:30px}.v-prose :is(h3:not([data-original-heading]),[data-original-heading="h3"]){font-size:24px;line-height:1.25;margin:32px 0 15px;letter-spacing:-.035em}.v-prose :is(h4:not([data-original-heading]),[data-original-heading="h4"]){font-size:20px;margin:22px 0 14px;line-height:1.3}.v-prose ul,.v-prose ol{padding-left:25px;margin:20px 0}.v-prose li{margin:10px 0;padding-left:5px}.v-prose strong,.v-prose b{font-weight:700}.v-prose a:not(.button):not(.v-card-read):not(.v-card-picture){text-decoration:underline;text-underline-offset:4px;color:#26516a}.v-prose .v-inline-image{max-width:100%;height:auto;border-radius:18px;margin:25px auto;max-height:490px;object-fit:contain}.v-prose blockquote{margin:28px 0;padding:24px 28px;background:var(--peach);border-radius:18px;border-left:3px solid #dcae8c}.v-prose table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}.v-prose th,.v-prose td{padding:15px;border:1px solid var(--line);vertical-align:top;min-width:100px}.v-prose th{background:var(--blue);text-align:left}.v-table-scroll{overflow-x:auto;max-width:100%;margin:25px 0;border-radius:12px}.v-prose video{max-width:100%;height:auto}.v-prose-block{margin-bottom:25px}.v-intro{font-size:18px;line-height:1.8;color:var(--muted);margin-bottom:26px}.v-byline{display:flex;flex-wrap:wrap;align-items:center;gap:12px;font-size:11px;color:var(--muted);padding:18px 0;margin:16px 0;border-block:1px solid var(--line)}.v-byline>div{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.v-byline .v-inline-image{width:35px;height:35px;object-fit:cover;border-radius:50%;margin:0}.v-byline a{font-size:12px}.v-prose .v-question{padding-top:22px;border-top:1px solid var(--line)}.v-sidebar{min-width:0;align-self:start;position:sticky;top:25px}.v-toc{background:var(--gray);padding:25px;border-radius:20px;max-height:43vh;overflow-y:auto}.v-toc .eyebrow{font-size:10px;margin-bottom:15px}.v-toc a{display:block;font-size:12px;line-height:1.5;padding:9px 0;border-bottom:1px solid #19273312}.v-toc a:hover{color:#365f77;text-decoration:underline}.v-sidebar-cta{margin-top:22px;border-radius:22px;padding:24px}.v-sidebar-cta>img{width:115px;max-height:80px;object-fit:contain;border-radius:12px;margin-bottom:17px}.v-sidebar-cta h2{font-size:26px;line-height:1.15;letter-spacing:-.04em}.v-sidebar-cta p{font-size:13px;line-height:1.6;margin:15px 0}.v-sidebar-cta .button{font-size:12px;gap:15px;min-height:46px;padding:12px 18px;width:100%}.v-sidebar-cta small{display:block;font-size:10px;margin-top:13px}.v-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.v-card{background:var(--gray);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;min-width:0;text-align:left;color:var(--ink)}.v-card-picture{display:block;background:#eef3ea;overflow:hidden;aspect-ratio:1.65}.v-card-picture>img{width:100%;height:100%;object-fit:cover;transition:transform .25s}.v-card-picture:hover>img{transform:scale(1.035)}.v-card:nth-child(3n+2){background:#f2f8fb}.v-card:nth-child(3n){background:#faf1e9}.v-card-copy{padding:24px;display:flex;flex-direction:column;flex:1}.v-card-copy h2,.v-prose .v-card-copy h2{font-size:23px;line-height:1.2;margin:0 0 16px;letter-spacing:-.035em}.v-card h2 a,.v-prose .v-card h2 a{color:var(--ink)!important;text-decoration:none!important}.v-card-copy p,.v-prose .v-card-copy p{font-size:14px;line-height:1.65;margin:0 0 20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.v-card-read{font-size:12px;line-height:1.5;margin-top:auto;font-weight:600}.v-card-read:hover{text-decoration:underline}.card-placeholder{height:100%;display:grid;place-items:center;font-size:50px;color:#6b8261}.v-reading-layout .v-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.v-reading-layout .v-card h2{font-size:20px}.v-reading-layout .v-card-copy{padding:20px}.v-prose>.v-card{max-width:500px;margin:25px 0}.v-list-section{padding-top:40px;padding-bottom:65px}.v-search-bar{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px 25px;margin-bottom:32px}.v-search-bar label{grid-column:1/-1;font-size:12px;font-weight:600}.v-search-bar input{width:100%;max-width:600px;background:#f7f8f5;color:var(--ink);border:1px solid #dce2d7;border-radius:100px;padding:17px 22px;font:inherit;min-height:54px;font-size:15px}.v-search-bar p{font-size:12px}.v-empty{padding:50px 20px;text-align:center;background:var(--gray);border-radius:20px}.v-card[hidden],.v-empty[hidden]{display:none!important}.v-page-content{padding-top:50px;padding-bottom:65px;max-width:1120px}.v-page-content .v-prose-block{max-width:850px;margin-inline:auto}.v-feature-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(180px,.6fr);align-items:center;gap:70px;margin:35px 0;padding:35px;background:var(--gray);border-radius:25px}.v-feature-row:nth-of-type(even){background:var(--peach)}.v-feature-row:nth-of-type(3n){background:var(--blue)}.v-feature-row .v-feature-shot{margin:0}.v-feature-row .v-inline-image{margin:0;max-height:420px}.v-feature-row h2{margin-top:0}.v-feature-row li{font-size:15px}.v-feature-row p{font-size:16px}.template-plus .v-page-content>div>div{margin-bottom:30px}.template-plus .v-page-content .v-inline-image{max-height:360px;max-width:260px}.template-plus .v-page-content .v-prose-block{background:var(--gray);padding:30px;border-radius:25px}.template-team .v-page-content .v-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.template-team .v-card-picture{aspect-ratio:1.45;padding:25px;background:var(--blue)}.template-team .v-card-picture>img{object-fit:contain;border-radius:15px}.template-team .v-card-copy p{-webkit-line-clamp:6}.template-author .v-reading-layout .v-inline-image{max-width:250px}.template-product .v-card-picture img{object-fit:contain;padding:20px;background:#fff}.v-bottom-cta{border-radius:28px;padding:43px 48px;display:flex;align-items:center;justify-content:space-between;gap:55px}.v-bottom-cta h2{font-size:38px;max-width:600px}.v-bottom-cta p{font-size:15px;max-width:600px;margin-top:18px}.v-bottom-cta>div:last-child{flex:none}.v-bottom-cta small{display:block;font-size:11px;margin-top:13px}.v-download-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-top:40px;padding-bottom:60px}.v-download-layout>div:first-child{border-radius:28px;max-height:600px;overflow:hidden;display:flex;justify-content:center;padding:35px 30px}.v-download-layout img{width:240px;height:auto;transform:rotate(-7deg);object-fit:contain}.v-download-layout h2{font-size:44px}.v-download-layout p{margin-top:20px}.v-error{position:relative;border-radius:30px;padding:65px;min-height:450px;overflow:hidden}.v-error h1{max-width:700px}.v-error p{margin:25px 0}.v-error .button{position:relative;z-index:1}.v-error img{position:absolute;right:20px;bottom:0;width:240px}.template-home .v-hero h1{font-size:clamp(45px,5vw,70px)}.template-home .v-page-content>.v-inline-image{max-height:400px}.template-gallery{background:#fafbf8}.v-gallery-hero{padding:50px;border-radius:30px;margin:20px 0 35px}.v-gallery-hero h1{font-size:60px}.v-gallery-hero p{max-width:660px;margin:25px 0;font-size:17px}.v-gallery-hero .underline-link{margin-left:25px}.v-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-bottom:50px;align-items:start}.v-template-card{border:1px solid var(--line);border-radius:24px;padding:28px;background:white;min-width:0}.v-template-card:nth-child(4n+2){background:var(--lime-soft)}.v-template-card:nth-child(4n+3){background:var(--peach)}.v-template-card .eyebrow{font-size:9px}.v-template-card h2{font-size:29px;line-height:1.15}.v-template-card p{font-size:13px;line-height:1.5;margin:18px 0;min-height:40px}.v-template-card>.button{font-size:12px;min-height:46px;padding:14px 17px}.v-template-card details{margin-top:20px;font-size:12px;border-top:1px solid #19273320;padding-top:18px}.v-template-card summary{cursor:pointer;line-height:1.5}.v-template-card details>a{display:block;padding:10px 0;font-size:12px;line-height:1.5;border-bottom:1px solid #19273315}.v-template-card details>a>span{font-size:9px;margin-left:5px}.v-template-card details>a:hover{text-decoration:underline}.template-site .inline-download{margin:12px 0;font-size:13px;line-height:1.3;text-decoration:none!important;overflow-wrap:normal}
@media(max-width:1100px){.v-reading-layout{gap:35px;grid-template-columns:minmax(0,1fr) 250px}.template-site{--hero-inset:35px}.v-hero-copy{padding:35px var(--hero-inset)}.v-hero h1{font-size:44px}.v-has-photo{grid-template-columns:1.4fr 1fr}.v-feature-row{gap:35px;padding:28px}.v-grid{gap:17px}.v-card-copy{padding:20px}.v-card h2{font-size:21px}.v-bottom-cta{padding:35px}.v-bottom-cta h2{font-size:33px}.v-template-card{padding:23px}.v-template-card h2{font-size:25px}.v-download-layout{gap:45px}}
@media(max-width:900px){.v-reading-layout{grid-template-columns:minmax(0,1fr);max-width:780px;gap:35px}.v-sidebar{position:static;display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.v-sidebar-cta{margin:0}.v-toc{max-height:400px}.v-has-photo{grid-template-columns:1.3fr .8fr}.v-hero h1{font-size:37px}.v-hero-copy{padding:30px}.v-hero-photo{min-height:260px}.v-answer{padding:17px}.v-answer p{font-size:13px}.v-card h2{font-size:19px}.v-card-copy p{font-size:13px}.v-bottom-cta{gap:30px}.v-bottom-cta h2{font-size:31px}.v-bottom-cta .button{font-size:12px;gap:15px}.v-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.template-team .v-page-content .v-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v-page-content{padding-top:35px}.v-download-layout h2{font-size:35px}.v-gallery-hero h1{font-size:51px}}
@media(max-width:600px){.v-crumbs{padding:12px 0 19px;font-size:10px}.v-hero{border-radius:24px}.v-hero-copy{padding:29px 25px}.v-hero h1{font-size:clamp(31px,8.2vw,43px);line-height:1.1}.v-has-photo,.template-author .v-hero{grid-template-columns:1fr}.v-hero-photo{max-height:280px;min-height:200px;aspect-ratio:1.5}.template-product .v-hero-photo{max-height:290px;padding:25px;object-fit:contain}.template-author .v-hero-photo{max-height:320px;object-fit:contain;background:var(--lime-soft);padding:22px}.v-hero-copy>p{font-size:15px}.v-answer{margin-top:22px;padding:18px}.v-answer p{font-size:14px}.v-score{gap:14px;margin-top:23px}.v-score>span{font-size:30px;padding:12px 16px}.v-reading-layout{padding-top:34px;padding-bottom:40px}.v-prose{font-size:16px;line-height:1.75}.v-prose p{font-size:16px;line-height:1.8}.v-prose :is(h2:not([data-original-heading]),[data-original-heading="h2"]){font-size:28px;margin-top:33px}.v-prose :is(h3:not([data-original-heading]),[data-original-heading="h3"]){font-size:23px}.v-prose :is(h4:not([data-original-heading]),[data-original-heading="h4"]){font-size:19px}.v-prose .v-inline-image{max-height:350px;margin:22px auto}.v-byline{font-size:10px;gap:10px}.v-byline .v-inline-image{margin:0}.v-prose li{font-size:16px}.v-intro{font-size:16px}.v-sidebar{display:block}.v-sidebar-cta{margin-top:20px}.v-sidebar-cta h2{font-size:29px}.v-sidebar-cta>img{float:right;margin:0 0 15px 15px;width:105px}.v-sidebar-cta .button{max-width:240px}.v-toc{padding:23px;max-height:300px}.v-grid,.v-reading-layout .v-grid,.template-team .v-page-content .v-grid{grid-template-columns:1fr;gap:20px}.v-card h2,.v-reading-layout .v-card h2{font-size:25px}.v-card-copy{padding:24px}.v-card-copy p,.v-prose .v-card-copy p{font-size:15px}.v-card-picture{aspect-ratio:1.75}.v-list-section{padding-top:30px;padding-bottom:40px}.v-search-bar{grid-template-columns:1fr;gap:10px;margin-bottom:25px}.v-search-bar input{font-size:14px}.v-search-bar p{font-size:11px}.v-page-content{padding-top:30px;padding-bottom:45px}.v-feature-row{grid-template-columns:1fr;padding:25px;gap:15px}.v-feature-row .v-feature-shot{max-width:230px;margin:15px auto 0}.v-feature-row h2{margin-top:0;font-size:29px}.v-feature-row .v-inline-image{max-height:380px}.v-bottom-cta{display:block;padding:32px 26px;border-radius:24px}.v-bottom-cta h2{font-size:35px}.v-bottom-cta p{font-size:15px}.v-bottom-cta>div:last-child{margin-top:25px}.v-bottom-cta .button{font-size:13px}.v-download-layout{grid-template-columns:1fr;gap:35px;padding-top:25px}.v-download-layout>div:first-child{max-height:400px;padding:25px}.v-download-layout img{width:180px}.v-download-layout h2{font-size:37px}.v-error{padding:33px 27px;min-height:580px}.v-error h1{font-size:42px}.v-error img{width:220px}.v-gallery-hero{padding:30px 25px;margin:10px 0 25px;border-radius:24px}.v-gallery-hero h1{font-size:43px}.v-gallery-hero p{font-size:15px}.v-gallery-hero .underline-link{display:table;margin:20px 0 0;font-size:12px}.v-template-grid{grid-template-columns:1fr;gap:18px}.v-template-card{padding:26px}.v-template-card h2{font-size:32px}.v-template-card p{font-size:14px;min-height:0}.v-template-card details{font-size:13px}.v-template-card details>a{font-size:13px}.template-home .v-hero h1{font-size:43px}}
@media(prefers-reduced-motion:reduce){.v-card-picture>img{transition:none}}
.v-plus-intro{max-width:900px;margin:0 auto 40px;text-align:center}.v-plus-intro>p{max-width:650px;margin:0 auto 25px}.template-plus .v-plus-intro>.v-inline-image{max-width:600px;max-height:350px;width:100%;object-fit:contain;margin:25px auto}.v-plus-intro>a{display:inline-block;margin:10px 15px;font-size:14px}.v-plus-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.v-plus-card{padding:30px;background:var(--gray);border-radius:24px;min-width:0}.v-plus-card:nth-child(3n+2){background:var(--blue)}.v-plus-card:nth-child(3n){background:var(--peach)}.v-plus-card h2{font-size:29px;margin-top:0}.v-plus-card p{font-size:15px}.v-feature-row:not(:has(.v-feature-shot)){grid-template-columns:1fr}.v-prose .v-grid .v-grid{display:contents}
@media(max-width:600px){.v-plus-grid{grid-template-columns:1fr}.v-plus-card{padding:26px}.v-plus-card h2{font-size:28px}.v-plus-intro{text-align:left}.v-plus-intro>a{margin-left:0;font-size:13px}.template-home .site-hero .bento-copy h1{font-size:clamp(40px,10.8vw,55px)}}
/* Source category controls and consolidated article attribution. */
.v-category-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 20px}.v-category-filters button{border:1px solid #d8e0d2;border-radius:100px;background:#fff;color:var(--ink);padding:12px 18px;min-height:44px;line-height:1.4;font-size:13px;font-weight:600;transition:background .15s}.v-category-filters button:hover{background:var(--lime-soft)}.v-category-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.v-filter-count{font-size:12px;color:var(--muted);margin-bottom:25px}.v-author-line{display:flex;align-items:center;gap:15px;padding:0 0 24px;margin:0 0 28px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.55}.v-author-avatar{width:52px;height:52px;object-fit:cover;object-position:50% 25%;border-radius:50%;flex:none}.v-author-details{min-width:0}.v-author-details>div:first-child{display:flex;gap:6px;flex-wrap:wrap;align-items:baseline}.v-author-details a[rel=author]{font-weight:600}.v-author-label{color:var(--muted);font-size:12px}.v-author-meta{display:flex;flex-wrap:wrap;gap:8px 15px;align-items:center;margin-top:6px;font-size:11px;color:var(--muted)}.v-author-checked{display:inline-flex;align-items:center;gap:5px}.v-author-checked::before{content:'✓';display:inline-grid;place-items:center;background:#e3f5cf;color:#34551f;border-radius:50%;width:17px;height:17px;font-weight:700}.v-author-category{font-size:11px}.v-author-line+.v-prose-block{margin-top:0}
@media(max-width:600px){.v-category-filters{gap:8px}.v-category-filters button{font-size:12px;padding:10px 14px;min-height:42px}.v-author-line{gap:12px;padding-bottom:22px}.v-author-avatar{width:45px;height:45px}.v-author-meta{font-size:10px;gap:7px 12px}.v-author-label{font-size:11px}}
.template-site.topic-diabetes .v-hero{background:#dbf1ff}.template-site.topic-nutrition .v-hero{background:#ffe5d5}.template-site.topic-products .v-hero{background:#e6f591}.template-site.topic-blog .v-hero,.template-site.template-scoring .v-hero{background:#eee5fa}
/* Same mint as the .nav-our-philosophy pill: a section's hero and its menu chip must match. */
.topic-our-philosophy .v-hero{background:#ddf3e6}.template-site.template-scoring .v-hero{background:#fff0bd}

/* Compact reading rhythm; source spacer breaks are removed by the renderer. */
.v-prose,.v-prose p,.v-intro{line-height:1.6}
.v-prose p{margin:12px 0}
.v-prose :is(h2:not([data-original-heading]),[data-original-heading="h2"]){margin:32px 0 14px}
.v-prose :is(h3:not([data-original-heading]),[data-original-heading="h3"]){margin:26px 0 12px}
.v-prose ul,.v-prose ol{margin:12px 0;padding-left:24px}
.v-prose li{margin:6px 0;padding-left:4px}
.v-prose li>p{margin:6px 0}
.v-prose li>ul,.v-prose li>ol{margin:8px 0 12px}
.v-prose-block{margin-bottom:18px}

/* Author introductions and compact, real contact links. */
.template-author .v-hero-photo{object-fit:contain;background:#f4f7f3;padding:24px;max-height:430px}
.v-author-socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.v-author-socials a{display:inline-flex;align-items:center;gap:8px;border-radius:100px;background:#ffffffbb;padding:11px 15px;min-height:44px;font-size:13px;font-weight:600;line-height:1.2}
.v-author-socials a:hover{background:#fff}
.v-author-socials img,.v-author-socials svg{width:18px;height:18px;object-fit:contain;flex:none}
.v-author-socials svg{fill:none;stroke:currentColor;stroke-width:1.6}
.v-sidebar{top:var(--header-offset)}
.v-sidebar-cta:first-child{margin-top:0}
.v-prose :is(h2:not([data-original-heading]),[data-original-heading="h2"]),.v-prose :is(h3:not([data-original-heading]),[data-original-heading="h3"]){scroll-margin-top:var(--header-offset)}
@media(max-width:900px){.v-sidebar{position:static}}

/* Keep the approved typography while repairing semantic heading levels. */
.v-prose [data-original-heading="h5"]{font-size:.83em;margin-block:1.67em}
.v-prose [data-original-heading="h6"]{font-size:.67em;margin-block:2.33em}
.v-editorial-note{padding:18px 22px;border-left:3px solid #91b5c8;background:#f3f8fb;margin-bottom:24px}
.v-prose .v-editorial-note p{margin:0;font-size:15px}
.v-topic-links{display:flex;flex-wrap:wrap;gap:12px 22px;margin:22px 0;font-size:14px}
.v-topic-links a{text-decoration:underline;text-underline-offset:3px}

/* The contextual call to action inside an article: it names the subject of the page, so it sits in
   the reading column right after the intro rather than at the bottom where nobody reaches it. */
.v-inline-cta{background:var(--lime-soft);border-radius:22px;padding:24px 26px;margin:30px 0}
.v-inline-cta .eyebrow{margin-bottom:10px}
.v-inline-cta p{font-size:15px;line-height:1.6;margin:0 0 18px;color:var(--ink)}
.v-inline-cta .button{min-height:48px;padding:14px 20px;gap:18px}
@media (max-width:600px){.v-inline-cta{padding:20px;border-radius:18px;margin:24px 0}
.v-inline-cta p{font-size:14px}
.v-inline-cta .button{width:100%}}

/* Draft pillar pages: a hero, an intro column and grouped card lists. */
.v-pillar-intro{margin-bottom:10px}
.v-pillar-intro p{max-width:760px}
.v-pillar-intro p{margin-bottom:14px}
.v-pillar-group{padding-top:26px;padding-bottom:10px}
.v-pillar-group h2{font-size:30px;margin-bottom:18px}
/* .wrap already sets the side gutter: overriding margin-left killed it on phones. */
.v-pillar-lead{max-width:760px;margin-bottom:18px}
/* .v-inline-cta sets margin:30px 0, which cancels the auto side margins of .wrap. */
.v-inline-cta.wrap{margin-inline:auto}

/* Consent banner: iubenda paints the colours from its own config, we give it the card shape the
   rest of the site uses. Selectors are iubenda's, so keep them in sync if the widget is upgraded. */
#iubenda-cs-banner .iubenda-cs-container{max-width:760px;margin:0 auto 18px;border-radius:24px;
  box-shadow:0 18px 60px #19273326;border:1px solid var(--line);overflow:hidden}
#iubenda-cs-banner .iubenda-cs-content{padding:22px 24px;font-family:Arial,Helvetica,sans-serif}
#iubenda-cs-banner .iubenda-banner-content p{line-height:1.6}
#iubenda-cs-banner .iubenda-cs-opt-group button,#iubenda-cs-banner .iubenda-cs-accept-btn,
#iubenda-cs-banner .iubenda-cs-reject-btn,#iubenda-cs-banner .iubenda-cs-customize-btn{
  border-radius:100px;padding:12px 20px;font-weight:700;font-size:13px;border:0}
@media (max-width:600px){#iubenda-cs-banner .iubenda-cs-container{margin:0 8px 8px;border-radius:20px}
  #iubenda-cs-banner .iubenda-cs-content{padding:18px}}
.story-copy .button{margin-top:6px}
.story-note{display:block;margin-top:12px}

/* Food-guide hubs inside the blog. They left the header on 2026-09-24 and keep the colours of
   their former menu chips (.nav-diabetes and friends, design.css), which are also their hero
   colours: the same section reads the same everywhere. Sizes follow the accessibility floors. */
.v-section-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:20px}
.v-section-links>span{font-size:15px;font-weight:600;color:var(--muted)}
.v-section-links a{display:inline-flex;align-items:center;min-height:44px;padding:11px 16px;border-radius:13px;font-size:17px;font-weight:600;line-height:1.4;letter-spacing:-.02em}
.v-section-links a:hover{box-shadow:inset 0 0 0 2px #19273325}
.v-section-links a[aria-current=page]{box-shadow:inset 0 0 0 2px currentColor}
@media(max-width:600px){.v-section-links{gap:8px;padding-top:14px}.v-section-links>span{width:100%;margin-bottom:2px}.v-section-links a{font-size:16px;padding:10px 14px;min-height:42px}}

/* Related sections, closing a list or an article. It had no styling at all and read as loose text
   between the count and the first card; it now closes the list, where a reader is looking for
   somewhere to go next. Sizes follow the accessibility floors. */
.v-topic-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:38px;padding-top:24px;border-top:1px solid var(--line)}
.v-topic-links>b{width:100%;font-size:15px;font-weight:700;color:var(--muted)}
.v-topic-links a{font-size:17px;font-weight:600;line-height:1.4;padding:10px 15px;border-radius:12px;background:var(--gray);color:var(--ink);text-decoration:none}
.v-topic-links a:hover{box-shadow:inset 0 0 0 2px #19273325}
.v-prose .v-topic-links a{text-decoration:none;color:var(--ink)}
@media(max-width:600px){.v-topic-links{gap:8px 10px;margin-top:30px}.v-topic-links a{font-size:16px;padding:9px 13px}}
@media(min-width:901px){.v-reading-layout>article{padding-left:var(--hero-inset)}}
