/* Gluten-free information: uses the existing Umbrella type and colour system. */
.gluten-page { --gluten-border:rgba(23,74,91,.24); --gluten-action:#c81240; }
.gluten-page main a:focus-visible,.gluten-page main summary:focus-visible { outline:3px solid currentColor; outline-offset:5px; }
.gluten-cover { min-height:auto; padding:124px 0 72px; }
.gluten-cover .page-cover-inner::after { content:none; }
.gluten-breadcrumb { display:flex; gap:12px; margin-bottom:48px; color:#fff; font-size:.88rem; }
.gluten-breadcrumb a { color:inherit; text-underline-offset:4px; }
.gluten-cover h1 { max-width:100%; font-size:clamp(3.25rem,8.5vw,7.5rem); line-height:.94; letter-spacing:-.055em; overflow-wrap:normal; }
.gluten-cover .cover-actions { position:relative; z-index:1; }
.gluten-cover .gluten-primary { background:var(--gluten-action); color:#fff; text-align:center; }
.gluten-cover .gluten-primary:hover { background:#a50f35; }
.gluten-cover .outline-pill:hover { background:rgba(255,255,255,.12); }
.gluten-intro,.gluten-practices,.gluten-faq,.gluten-locations { padding:clamp(56px,7vw,96px) 0; }
.gluten-intro-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.85fr); gap:clamp(28px,6vw,88px); align-items:start; }
.gluten-page h2 { margin:0; color:var(--petrol); font-size:clamp(2.3rem,4.6vw,4.25rem); line-height:1.02; letter-spacing:-.045em; text-transform:uppercase; text-wrap:balance; }
.gluten-page h3 { margin:0; font-size:1.4rem; line-height:1.2; letter-spacing:-.025em; }
.gluten-page main p { line-height:1.65; }
.gluten-intro-grid>div>p:last-child,.gluten-heading>p:last-child { color:#454b4e; }
.gluten-page main .gluten-text-link { display:inline-block; padding:10px 0; color:var(--petrol); font-weight:800; text-decoration:underline; text-underline-offset:4px; }
.gluten-practices { background:#fff; }
.gluten-heading { max-width:750px; margin-bottom:36px; }
.gluten-practice-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0; border-top:1px solid var(--gluten-border); }
.gluten-practice-grid article { padding:32px 36px 32px 0; border-bottom:1px solid var(--gluten-border); }
.gluten-practice-grid article:nth-child(even) { padding-left:36px; border-left:1px solid var(--gluten-border); }
.gluten-number { display:block; margin-bottom:28px; color:var(--gluten-action); font-size:.85rem; font-weight:800; letter-spacing:.08em; }
.gluten-practice-grid h3 { color:var(--petrol); }
.gluten-practice-grid p { max-width:490px; margin:16px 0 0; color:#454b4e; }
.gluten-faq-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:clamp(28px,6vw,88px); align-items:start; }
.gluten-faq-grid .gluten-heading { margin-bottom:0; }
.gluten-questions { border-top:1px solid var(--petrol); }
.gluten-questions details { border-bottom:1px solid var(--gluten-border); }
.gluten-questions summary { position:relative; display:block; min-height:60px; padding:22px 34px 22px 0; color:var(--petrol); font-size:1.05rem; font-weight:800; line-height:1.5; cursor:pointer; list-style:none; }
.gluten-questions summary::-webkit-details-marker { display:none; }
.gluten-questions summary::after { content:'+'; position:absolute; right:3px; top:20px; font-size:1.35rem; font-weight:400; }
.gluten-questions details[open] summary::after { content:'−'; }
.gluten-questions summary:hover { text-decoration:underline; text-underline-offset:4px; }
.gluten-questions details>div { padding:0 20px 24px 0; }
.gluten-questions p { margin:0; color:#454b4e; }
.gluten-locations { background:var(--petrol-deep); color:#fff; }
.gluten-locations h2 { color:#fff; }
.gluten-locations .clean-eyebrow { color:#fff; }
.gluten-locations>div>p:not(.clean-eyebrow) { max-width:760px; }
.gluten-place-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:32px; border-top:1px solid rgba(255,255,255,.35); }
.gluten-place-links a { display:flex; gap:16px; align-items:center; justify-content:space-between; min-height:80px; padding:20px 18px 20px 0; color:#fff; font-size:1.05rem; font-weight:800; text-decoration:none; border-bottom:1px solid rgba(255,255,255,.35); }
.gluten-place-links a:hover { text-decoration:underline; text-underline-offset:4px; }
.gluten-locations .gluten-review { margin:36px 0 0; color:#d8e1e4; font-size:.85rem; }
@media(max-width:860px) { .gluten-intro-grid,.gluten-faq-grid { grid-template-columns:1fr; }.gluten-place-links { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .gluten-cover { padding:110px 0 48px; }.gluten-breadcrumb { margin-bottom:34px; }.gluten-cover h1 { font-size:clamp(2.9rem,11.5vw,4rem); letter-spacing:-.045em; }.gluten-cover .cover-actions>* { padding-inline:16px; font-size:.9rem; }.gluten-practice-grid { grid-template-columns:1fr; }.gluten-practice-grid article,.gluten-practice-grid article:nth-child(even) { padding:28px 0; border-left:0; }.gluten-number { margin-bottom:18px; }.gluten-place-links { grid-template-columns:1fr; }.gluten-place-links a { min-height:64px; padding-right:0; } }
@media(prefers-reduced-motion:reduce) { .gluten-page { scroll-behavior:auto; }.gluten-page *, .gluten-page *::before, .gluten-page *::after { scroll-behavior:auto; transition:none; animation:none; } }
/* Maintain readable eyebrow contrast on the dark cover. */
.gluten-cover .clean-eyebrow { color:#ff91ac; }

/* Copy and interaction review: local to the gluten information page. */
.gluten-skip { position:fixed; z-index:1000; top:10px; left:16px; display:flex; align-items:center; min-height:48px; padding:12px 20px; background:#fff; color:#0f3440; font-weight:800; transform:translateY(-150%); }
.gluten-skip:focus { transform:translateY(0); }
.gluten-page :is(a,button,summary):focus-visible { outline:3px solid currentColor; outline-offset:5px; }
.gluten-page :is(main[id],h1[id],h2[id],h3[id],summary) { scroll-margin-top:104px; }
.gluten-page .nav a:focus-visible { outline:3px solid #fff; }
.gluten-breadcrumb { align-items:center; margin-bottom:32px; }
.gluten-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; }
.gluten-page .gluten-intro .clean-eyebrow { color:var(--gluten-action); }
.gluten-place-links a { text-decoration:underline; text-underline-offset:5px; }
@media(max-width:680px) {
  .gluten-practice-grid { grid-template-columns:1fr; }
  .gluten-practice-grid article,.gluten-practice-grid article:nth-child(even) { padding:28px 0; border-left:0; }
  .gluten-number { margin-bottom:16px; }
  .gluten-breadcrumb { margin-bottom:24px; }
}

.gluten-practices .clean-eyebrow { color:var(--gluten-action); }
.gluten-page > .nav .header-cta { background:var(--gluten-action); }

/* The removed allergen aside leaves a single introductory column. */
.gluten-intro-grid { display:block; }
.gluten-intro-grid>div { max-width:760px; }

.gluten-text-link { min-height:44px; }
.gluten-text-link:hover { text-decoration-thickness:2px; }
