/* Familiar R3: production integration, without the review viewport or shell. */
:root{--gutter:22px;--sticky-height:0px}
.site-wrap{padding-inline:var(--gutter);padding-bottom:var(--sticky-height)}
.site-header{min-height:86px;padding-block:16px;gap:16px;flex-wrap:wrap}
.wordmark{flex-shrink:0;width:152px;max-width:100%;min-width:129px}
.wordmark img{filter:none}
.wordmark picture{display:block;width:100%}
:is(.wordmark,.inline-wordmark) .logo-reversed{display:none}
:root[data-theme=dark] :is(.wordmark,.inline-wordmark) .logo-positive{display:none}
:root[data-theme=dark] :is(.wordmark,.inline-wordmark) .logo-reversed{display:block}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) :is(.wordmark,.inline-wordmark) .logo-positive{display:none}:root:not([data-theme=light]) :is(.wordmark,.inline-wordmark) .logo-reversed{display:block}}
.inline-wordmark{display:inline-block;vertical-align:middle;width:4.61074em;flex-shrink:0}
.inline-wordmark img{display:block;width:100%;height:auto;filter:none}
.footer-summary>.inline-wordmark{width:96px;vertical-align:baseline}
/* Preserve the header's 54px layout slot and real 44px buttons; paint only a
   compact 28px capsule and 22px selected segment within those hit targets. */
.language-switch{position:relative;border-color:transparent;background:transparent;box-shadow:none;overflow:visible}
.language-switch::before{content:"";box-sizing:border-box;position:absolute;inset-inline:-1px;top:50%;height:28px;transform:translateY(-50%);border:1px solid var(--frame-border);border-radius:inherit;background:var(--control);box-shadow:inset 0 1px 0 var(--gloss);pointer-events:none;z-index:-1}
.language-switch :is(button,a){position:relative;isolation:isolate;border-radius:0;padding-block:0;background:transparent;box-shadow:none}
.language-switch :is(button,a)::before{content:"";position:absolute;inset-inline:0;top:50%;height:22px;transform:translateY(-50%);border-radius:999px;pointer-events:none;z-index:-1;transition:background .18s,box-shadow .18s}
.language-switch :is(button,a)[aria-current=true]{background:transparent;box-shadow:none}
.language-switch :is(button,a)[aria-current=true]::before{background:var(--selected);box-shadow:0 1px 3px #29252114,0 0 0 1px #29252106}
.language-switch :is(button,a):active{background:transparent}
.language-switch :is(button,a):active::before{background:var(--control-hover)}
@media(prefers-contrast:more){.language-switch::before{border-color:var(--muted)}}
@media(forced-colors:active){.language-switch::before{border-color:ButtonText;box-shadow:none}.language-switch :is(button,a)[aria-current=true]::before{outline:1px solid ButtonText;box-shadow:none}}
.reference-layout{gap:28px;padding-block:30px 38px}
.eyebrow{font-weight:500;letter-spacing:.13em;font-size:.78125rem}
h1{letter-spacing:-.028em;line-height:1.13;margin-bottom:18px;max-width:100%}
.intro{line-height:1.45;max-width:39ch}
.resource-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px;padding:4px;margin:22px 0 18px;background:var(--control);border-radius:32px;max-width:460px}
.resource-selector button{appearance:none;background:transparent;border:0;border-radius:28px;color:var(--muted);padding:10px 12px;min-height:54px;font-size:.875rem;line-height:1.25;font-weight:500;overflow-wrap:normal;word-break:normal;hyphens:none}
.resource-selector button[aria-pressed=true]{background:var(--selected);color:var(--selected-ink);box-shadow:0 1px 3px #301b1110}
.resource-selector button:disabled{opacity:.6;cursor:default}
.resource-selector button:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.download-resource{margin-top:0}
.resource-count{font-size:.8125rem;color:var(--muted);line-height:1.5;margin:0 0 6px}
.resource-details{margin-bottom:20px;gap:7px}
.resource-actions{gap:15px}
.resource-actions .primary{border-radius:28px;min-height:50px;padding:12px 19px}
.resource-actions .view-link{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.revision{margin-top:12px}
.preview-panel.presentation-proposal{padding:0;background:none;border:0;border-radius:0;width:100%;max-width:560px;margin:0 auto}
.preview-heading{margin-bottom:12px}
.presentation-proposal .entry-sample{background:var(--surface);border:0;border-radius:20px;padding:22px 20px}
.presentation-proposal .entry-sample h3{font-size:1.125rem;line-height:1.3;font-weight:500;margin:0 0 18px}
.sample-origin{margin:0 0 6px;color:var(--muted);font-size:.8125rem;line-height:1.4}
.presentation-proposal .sample-fields{border-top:1px solid var(--line);padding-top:18px;gap:14px}
.presentation-proposal .sample-fields dt{font-size:.75rem}
.presentation-proposal .sample-fields .sample-reference{font-size:1.5rem;line-height:1.3}
.presentation-proposal .sample-hook{font-family:var(--serif);font-size:1.1875rem}
.presentation-proposal .sample-catechism dd{font-size:.9375rem;font-weight:500}
.presentation-proposal .sample-caveat{font-size:.8125rem;border:0;padding-top:0;margin-top:16px}
.presentation-proposal .sheet-overview{gap:13px}
.presentation-proposal .side-label{font-size:.8125rem;line-height:1.4}
.page-preview{box-shadow:none}
.sacred-art{margin:0 calc(-1 * var(--gutter)) 38px;text-align:center}
.painting-stage{width:100%;overflow:hidden;aspect-ratio:2593/4000}
.painting-stage img{width:100%;height:auto;transform-origin:center top}
.motion-ready .painting-stage img{transform:scale(var(--art-scale,1))}
.sacred-art figcaption{font-size:.75rem;line-height:1.5;color:var(--muted);padding:14px var(--gutter) 0;margin:0}
.sacred-art figcaption a{text-underline-offset:3px}
.card-notice{margin:0 0 20px;padding:12px 0;display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:8px;border-bottom:1px solid var(--line)}
.card-notice[hidden]{display:none}
.card-notice strong{font-size:.875rem;font-weight:600;color:var(--red)}
.card-notice p{font-size:.8125rem;line-height:1.5;margin:4px 0 0;color:var(--muted)}
.notice-dismiss{width:44px;min-height:44px;align-self:start;border:0;background:none;color:var(--muted);border-radius:8px;font-size:1.4rem;line-height:1}
.sticky-actions{position:fixed;bottom:0;left:0;right:0;z-index:8;background:var(--paper);padding-bottom:env(safe-area-inset-bottom,0px)}
.sticky-actions[hidden],.viewer-open .sticky-actions{display:none}
.sticky-inner{max-width:1280px;margin:auto;padding:11px var(--gutter) 13px;position:relative}
.sticky-inner::before{content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--line)}
.sticky-actions .resource-actions{justify-content:center}
.sticky-actions .primary,.sticky-actions .view-link{min-height:44px;font-size:.875rem;padding-block:10px}
html{scroll-padding-bottom:calc(var(--sticky-height) + 16px)}
a,button,select,summary,[tabindex]{scroll-margin-bottom:calc(var(--sticky-height) + 16px)}
.pdf-language-links{display:grid;gap:4px;margin-top:12px}
.pdf-language-links>div{display:flex;gap:8px 18px;flex-wrap:wrap}
.pdf-language-links strong{width:100%;font-weight:500;font-size:.8125rem;color:var(--muted)}
@media(max-width:360px){:root{--gutter:18px}.wordmark{width:129px}.resource-selector button{font-size:.8125rem;padding:9px 8px}.resource-actions{gap:5px}.resource-actions .primary{padding-inline:16px;font-size:.875rem}.resource-actions .view-link{font-size:.875rem}}
@media(min-width:500px) and (max-width:56em){.download-panel,.preview-panel,.catechism-note{width:100%;max-width:560px;margin-inline:auto}.sacred-art{max-width:560px;margin-inline:auto}}
@media(min-width:820px){:root{--gutter:42px}.site-header{min-height:96px;padding-block:20px}.wordmark{width:201px;max-width:none}}
@media(min-width:56.001em){.reference-layout{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:24px 38px;padding-block:44px 38px;min-height:calc(100svh - 96px)}h1{font-size:clamp(2.5rem,4.5vw,3.5625rem);line-height:1.1;margin-bottom:22px}.intro{font-size:1.125rem;max-width:36ch}.resource-selector{margin-top:25px;margin-bottom:19px}.sacred-art{max-width:520px;margin:0 auto 38px}.sticky-actions .resource-actions{justify-content:flex-start}}
@media(prefers-reduced-motion:reduce){.motion-ready .painting-stage img{transform:none!important}}
@media(max-height:360px){.sticky-actions{display:none!important}.site-wrap{padding-bottom:0}}
