/* Route composition only. Identity, typography foundation, glass, downloads,
   dialog, focus, footer and motion inherit the canonical homepage stylesheet. */

.resource-page main{line-height:1.6}.resource-page main p{color:var(--text-secondary)}
.resource-page a{text-underline-offset:4px}.resource-page input{font:inherit;color:inherit}
.resource-page [hidden]{display:none!important}.resource-page :is(button,input,summary,a){touch-action:manipulation}
.resource-nav{display:flex;flex-wrap:wrap;gap:0 24px;max-width:var(--measure);margin:96px auto 0;padding:0 24px}
.resource-nav a{display:flex;align-items:center;min-height:44px;font-size:15px;text-decoration:none;color:var(--text-secondary)}
.resource-nav a[aria-current]{color:var(--ink);text-decoration:underline;text-decoration-thickness:2px}
.resource-page main{max-width:var(--measure);margin:0 auto;padding:0 24px 100px;outline:none}
.resource-hero{margin:24px 0 48px;padding:clamp(32px,5vw,64px) var(--space);border-radius:var(--radius);background:radial-gradient(ellipse at 85% 10%,#e0daf7,transparent 65%),linear-gradient(135deg,var(--field),#f6f7fa);overflow-wrap:anywhere}
.resource-page :where(main) h1{font-size:clamp(40px,5.3vw,76px);line-height:1.05;max-width:960px;font-weight:600;letter-spacing:-.04em}
.resource-page :where(main) h2{font-size:32px;line-height:1.15}.resource-page :where(main) h3{font-size:25px;line-height:1.2}
.resource-hero>p{max-width:740px;margin-top:22px;font-size:21px;line-height:1.5}
.resource-hero :is(.back-link,.breadcrumb){font-size:15px;margin-bottom:26px;display:flex;align-items:center;flex-wrap:wrap;gap:14px;min-height:44px}
.resource-hero .eyebrow{font-size:15px;margin:0 0 16px}.resource-hero .source-note{font-size:15px;max-width:720px}
.resource-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.article-card{display:flex;flex-direction:column;min-width:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;background:white;transition:box-shadow .2s,border-color .2s}
:is(.article-card,.food-card):hover{border-color:#aeb7c8;box-shadow:0 12px 32px #2021260d}
.article-card :is(picture,img){display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center}
.article-copy{padding:24px;flex:1}.article-meta{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;color:var(--text-secondary);font-size:13px;margin-bottom:18px}
.article-meta>span:first-child{background:var(--field);border-radius:999px;padding:4px 10px}
.article-card h2{font-size:25px;line-height:1.2;margin-bottom:14px}.article-card p{font-size:16px;line-height:1.5}
.source-follow{margin-bottom:32px;padding:24px 28px;background:var(--surface);border-radius:24px;font-size:16px}.source-follow :is(h2,h3){font-size:23px}.source-follow p{margin:8px 0}.text-link{display:inline-flex;align-items:center;min-height:44px}
.resource-cta{margin-top:64px;padding:var(--space);border-radius:var(--radius);background:linear-gradient(120deg,var(--field),#e8e4f5)}
.resource-cta :is(h2,.cta-title){font-size:36px;line-height:1.15;letter-spacing:-.035em;color:var(--ink);font-weight:500}.resource-cta p{margin:16px 0;max-width:700px}.resource-cta>.store-links{margin-top:24px;justify-content:flex-start;flex-wrap:wrap}.resource-cta>svg{width:32px;height:32px}
.category-links ul{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0 0 48px}.category-links a{display:flex;align-items:center;min-height:44px;padding:9px 16px;background:var(--field);border-radius:999px;font-size:14px;text-decoration:none}
.food-directory label{display:block;font-size:25px;font-weight:500;margin-bottom:14px}.food-directory input{display:block;width:100%;padding:16px 20px;border:1px solid #929ba9;border-radius:20px;background:#fff;min-height:56px}.food-directory>p{font-size:15px;margin:16px 0 24px}
.food-grid{list-style:none;padding:0;margin:0;gap:16px}.food-grid li{min-width:0}.food-card{display:flex;flex-direction:column;min-height:100%;padding:26px;border:1px solid var(--line);border-radius:24px;text-decoration:none;background:var(--surface)}.food-card h2{font-size:23px;line-height:1.25;margin-bottom:20px}.food-card p{margin-top:auto}.food-card small{color:var(--text-secondary);font-size:13px;margin-top:8px}
.policy-links{margin-top:28px;font-size:16px}.policy-body{max-width:740px;margin:0 auto}.policy-body>div{margin:44px 0}.policy-body h2{margin-bottom:18px}.policy-body p{margin:16px 0;line-height:1.8}
.support-title{display:flex;justify-content:space-between;gap:28px;align-items:center;flex-wrap:wrap}.language-picker{display:flex;flex-wrap:wrap;gap:4px;max-width:384px}.language-picker button{width:44px;height:44px;background:#fff9;border:1px solid transparent;border-radius:50%;font-size:23px}.language-picker button[aria-pressed=true]{border-color:var(--ink);background:#fff}
.support-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 32px}.support-section>div:first-child{display:flex;align-items:center;gap:14px;margin-bottom:24px}.support-section h2{font-size:28px}.support-section details{border:1px solid var(--line);border-radius:20px;background:var(--surface);padding:0 20px;margin-top:10px}
.resource-page summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;min-height:64px;list-style:none;line-height:1.4;font-size:18px;font-weight:500;cursor:pointer}.resource-page summary::-webkit-details-marker{display:none}.resource-page summary>span:last-child{flex-shrink:0;display:grid;place-items:center;font-size:11px;color:var(--text-secondary)}.resource-page details[open] summary>span:last-child{transform:rotate(180deg)}.resource-page details>div{padding:0 0 24px}.resource-page details p{font-size:17px;line-height:1.65;margin:0}
.support-contact{display:grid;grid-template-columns:32px minmax(0,700px);column-gap:16px;align-items:start}
.support-contact>div{grid-column:1;grid-row:1;display:flex;align-items:center;min-height:40px}
.support-contact>h2{grid-column:2;grid-row:1;margin:0;align-self:center}
.support-contact>p:first-of-type{grid-column:2;margin:8px 0 0}
.support-contact>a{grid-column:2;overflow-wrap:anywhere;max-width:100%;width:fit-content;display:inline-flex;align-items:center;min-height:44px;margin-top:14px;font-size:18px;font-weight:500}
.support-contact>p:last-of-type{grid-column:2;max-width:640px;margin:14px 0 0;font-size:14px;line-height:1.55;color:var(--text-secondary)}
.support-signoff{font-size:14px;margin-top:28px}.support-icon{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.6}
/* Captured article, food, category and legal documents retain original semantic DOM. */
.document-main{font-size:18px;line-height:1.75;overflow-wrap:anywhere}.document-main> :not(.resource-hero){max-width:800px;margin-inline:auto}.document-main :is(p,ul,ol,dl,blockquote,table){margin-block:22px}.document-main :is(h2,h3,h4){margin-top:42px;margin-bottom:18px}.document-main :is(section,article,aside){min-width:0}.document-main img{max-width:100%;border-radius:24px}.document-main>img,.document-main>picture{margin-block:32px}.document-main :is(th,td){text-align:left;padding:12px;border-bottom:1px solid var(--line)}.document-main table{display:block;overflow-x:auto;max-width:100%;border-collapse:collapse}.document-main blockquote,.document-main aside{padding:24px;border-radius:24px;background:var(--surface)}.document-main svg{width:24px;height:24px}.document-main .store-links svg{width:24px;height:24px}.document-main .store-links{flex-wrap:wrap;justify-content:flex-start;margin-block:24px}.document-main :is(a,button){min-height:44px}.document-main nav{display:flex;gap:12px;flex-wrap:wrap;font-size:15px}.document-main li+li{margin-top:8px}.document-main .resource-hero :is(h1,p){margin-block:0}.document-main .resource-hero h1+p{margin-top:22px}
@media(max-width:1023px){.resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-sections{gap:36px 24px}.support-section h2{font-size:25px}}
@media(max-width:639px){.resource-page main{font-size:17px}.resource-nav{margin-top:84px;padding:0 20px;gap:0 18px}.resource-nav a{font-size:13px}.resource-page main{padding:0 16px 64px}.resource-hero{padding:32px 24px;margin-top:16px;margin-bottom:32px;border-radius:24px}.resource-hero>p{font-size:18px}.resource-grid{grid-template-columns:1fr;gap:20px}.article-copy{padding:24px}.source-follow{padding:24px}.resource-cta{padding:28px 24px;margin-top:40px}.resource-cta :is(h2,.cta-title){font-size:30px}.category-links ul{gap:8px;margin-bottom:32px}.category-links a{font-size:13px;padding:10px 14px}.food-card{padding:24px}.food-directory label{font-size:23px}.food-directory input{font-size:16px}.policy-body{padding:0 8px}.policy-body h2{font-size:28px}.support-sections{grid-template-columns:1fr;gap:36px}.support-title{gap:20px}.language-picker{gap:3px}.support-contact{grid-template-columns:28px minmax(0,1fr);column-gap:12px}.support-contact>div{min-height:36px}.support-contact>a{font-size:17px}.document-main{font-size:17px}.document-main h2{font-size:28px}.document-main h3{font-size:23px}}
.document-main .food-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.document-main .food-fields label{display:block;font-size:15px;margin-bottom:8px}.portion-control{font:inherit;width:100%;min-height:48px;padding:10px;border:1px solid #929ba9;border-radius:16px;background:#fff;color:var(--ink)}.document-main .food-macros{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.document-main dd{margin-left:0}.document-main .food-macros>div{background:#fff;padding:16px;border-radius:20px}.document-main .food-card{margin-block:24px}.document-main .food-energy strong{font-size:36px}.document-main .food-note,.document-main .food-kicker{font-size:14px}.document-main .food-grid .food-card{margin-block:0}.document-main .food-grid h2{margin-top:0}.document-main .food-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:639px){.document-main .food-fields,.document-main .food-grid{grid-template-columns:1fr}}
/* Homepage summaries use a circular trailing control; resource question text is flexible. */
.resource-page summary>span:first-child{width:auto;height:auto;min-width:0;flex:1;border:0;border-radius:0;text-align:left;line-height:1.4;font-weight:500}
/* Captured article metadata shares the index chip rhythm without altering its text. */
.document-main .resource-hero>div:has(>span){display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;font-size:13px;color:var(--text-secondary);margin:16px 0 20px}
.document-main .resource-hero>div>span:first-child{padding:4px 10px;background:#ffffffb3;border-radius:999px}
