/* ====== Approved warm cream, common visitor shell ====== */
.visitor-site {
 --cream:#fdf6ef;
 --cream-2:#f6ecdf;
 --sand:#ead9c2;
 --inner-wash:#f4e6d2;
 --inner-panel:#fffdf9;
 --inner-border:#ded8ca;
 --inner-ink:#253f3b;
 --inner-soft:#506760;
 --inner-sage:#eef2e7;
 --inner-blue:#eef4f5;
 --inner-space:clamp(2.5rem,4.5vw,4.5rem);
 --inner-gap:clamp(1.25rem,3vw,3rem);
 --inner-radius:1.25rem;
 --inner-touch:48px;
 --inner-body:1.0625rem;
 --inner-h1:clamp(2.2rem,8cqi,3.5rem);
 --inner-h2:clamp(1.8rem,3.2vw,3rem);
 --inner-h3:1.2rem;
 --inner-caption:.8rem;
 --inner-label:.75rem;
 --inner-pad:1.5rem;
 --inner-small-pad:.75rem;
 --inner-border-width:1px;
 --inner-photo-width:4px;
 --inner-font:'Inter',system-ui,sans-serif;
 --inner-display:'Fraunces',Georgia,serif;
}
.visitor-site .nav { background:var(--cream); border-bottom:var(--inner-border-width) solid var(--inner-border); backdrop-filter:none; }
.visitor-site .nav-inner { max-width:1440px; }
.visitor-site .brand { color:var(--inner-ink); }
.visitor-site .sample-footer { background:linear-gradient(145deg,var(--cream),var(--inner-wash)); }
.visitor-site .inner-footer-mark { display:grid; justify-items:center; align-content:center; padding:var(--inner-pad); border:var(--inner-photo-width) double var(--terracotta-dark); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-site .inner-footer-mark img { width:100px; height:100px; }
.visitor-site .inner-footer-mark p { margin:var(--inner-small-pad) 0 0; font-family:var(--inner-display); font-size:var(--sample-type-30); line-height:1.2; text-align:center; }
.visitor-site .vp-home .hero,.visitor-site.vp-home .hero { background:linear-gradient(145deg,var(--cream),var(--inner-wash)); }
/* ====== Main visitor pages keep their content and inherit one design language ====== */
.visitor-inner { background:var(--cream); color:var(--inner-ink); font-family:var(--inner-font); font-size:var(--inner-body); }
.visitor-inner main { line-height:1.75; }
.visitor-inner main section { min-height:0; padding-block:var(--inner-space); }
.visitor-inner .container { max-width:1320px; width:100%; padding-inline:var(--sample-gutter); }
.visitor-inner main h1,.visitor-inner main h2,.visitor-inner main h3 { font-family:var(--inner-display); color:var(--inner-ink); text-wrap:balance; }
.visitor-inner main h1 { font-size:clamp(2.2rem,5vw,4rem); line-height:1.08; letter-spacing:-.035em; }
.visitor-inner main h2 { font-size:var(--inner-h2); max-width:none; line-height:1.15; }
.visitor-inner main h3 { font-size:var(--inner-h3); line-height:1.35; }
.visitor-inner main p { max-width:64ch; text-wrap:pretty; color:var(--inner-soft); }
.visitor-inner main .section-head { text-align:left; max-width:none; margin:0 0 var(--inner-gap); }
.visitor-inner main .eyebrow { display:inline-flex; font-family:var(--inner-font); background:transparent; border-radius:0; padding:0; font-size:var(--inner-label); letter-spacing:.09em; }
.visitor-inner main .bg-alt { background:var(--cream-2); }
.visitor-inner main a:not(.btn):not(.btn-primary):not(.btn-secondary):not(.btn-join) { color:var(--terracotta-dark) !important; }
.visitor-inner .btn,.visitor-inner a.btn-primary,.visitor-inner .btn-join { min-height:var(--inner-touch); display:inline-flex; align-items:center; justify-content:center; padding:var(--inner-small-pad) var(--inner-pad); font-size:var(--inner-body); border-radius:var(--sample-radius); line-height:1.4; box-shadow:none; }
.visitor-inner main .btn-primary,.visitor-inner .btn-join { background:var(--terracotta-dark); color:var(--cream) !important; }
.visitor-inner main .btn-secondary { color:var(--inner-ink); background:var(--inner-panel); border:var(--inner-border-width) solid var(--inner-ink); }
.visitor-inner main .btn-primary:hover,.visitor-inner .btn-join:hover { background:var(--inner-ink); }
.visitor-inner main .btn-secondary:hover { color:var(--cream); background:var(--inner-ink); }
/* ====== New inner page openings, full source photographs ====== */
.visitor-inner .inner-hero { background:linear-gradient(145deg,var(--cream),var(--inner-wash)); }
.visitor-inner .inner-hero-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:var(--inner-gap); align-items:center; }
.visitor-inner .inner-hero-copy { min-width:0; container-type:inline-size; }
.visitor-inner .inner-hero h1 { font-size:var(--inner-h1); max-width:none; margin-bottom:var(--inner-pad); }
.visitor-inner .inner-hero :is(.hero-sub,.subhead,.subhead p) { font-size:var(--inner-body); max-width:52ch; margin:0 0 var(--inner-pad); }
.visitor-inner .inner-hero-photo { margin:0; padding:var(--sample-frame-pad); border:var(--inner-photo-width) double var(--sample-frame-green); border-radius:var(--inner-radius); background:var(--inner-panel); overflow:hidden; width:100%; max-width:480px; justify-self:end; }
.visitor-inner .inner-hero-photo img { width:100%; height:auto; max-height:none; aspect-ratio:auto; object-fit:contain; border-radius:var(--sample-photo-inner-radius); }
.visitor-inner .inner-hero-photo figcaption { font-size:var(--inner-caption); color:var(--inner-soft); padding:var(--inner-small-pad); }
.visitor-inner .inner-hero :is(.hero-ctas,.cta-row,.inner-actions) { display:flex; flex-wrap:wrap; gap:var(--inner-small-pad); margin-top:var(--inner-pad); }
.visitor-inner main img:not(.brand-mark) { height:auto; max-height:none; aspect-ratio:auto; object-fit:contain; }
.visitor-inner .inner-care-illustration { display:flex; justify-content:space-around; align-items:center; gap:var(--inner-pad); padding:var(--inner-pad); border:var(--inner-border-width) dashed var(--sample-frame-green); border-radius:var(--inner-radius); color:var(--terracotta-dark); background:var(--inner-panel); }
.visitor-inner .inner-care-illustration span { font-family:var(--inner-display); font-size:var(--sample-type-28); line-height:1; }
/* ====== Clear content groups, cards, and realistic reading measures ====== */
.visitor-inner :is(.mission-grid,.diff-grid,.why-grid,.programs-grid,.req-grid,.vp-detail-grid,.track-grid,.steps-grid) { gap:var(--inner-pad); }
.visitor-inner :is(.mission-card,.diff-card,.why-card,.program-card,.req-card,.step-card,.track-card,.req,.disclosure-item) { padding:var(--inner-pad); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); box-shadow:none; }
.visitor-inner .vp-detail { border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); padding:var(--inner-pad); }
.visitor-inner .vp-detail p { font-size:var(--inner-body); }
.visitor-inner .vp-editorial { gap:var(--inner-pad); grid-template-columns:minmax(0,1fr); }
.visitor-inner .vp-section-intro { container-type:inline-size; max-width:none; }
.visitor-inner .vp-section-intro h2 { font-size:clamp(1.8rem,8cqi,3rem); }
.visitor-inner :is(.vp-cost-list,.vp-checklist) { max-width:none; }
.visitor-inner .vp-cost-list > div { background:var(--inner-panel); }
.visitor-inner .reqs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--inner-pad); }
.visitor-inner .req { margin:0; border-left:var(--inner-photo-width) solid var(--sample-frame-green); }
.visitor-inner .req.hard { border-left-color:var(--terracotta-dark); }
.visitor-inner .req h3 { font-family:var(--inner-font); font-size:var(--inner-body); }
.visitor-inner .hl { background:linear-gradient(transparent 65%,var(--sample-highlight-fill) 65%,var(--sample-highlight-fill) 95%,transparent 95%); }
.visitor-inner .day-list { display:grid; grid-template-columns:1fr 1fr; gap:var(--inner-small-pad); }
.visitor-inner .day-row { display:grid; grid-template-columns:5.5rem 1fr; gap:var(--inner-small-pad); padding:var(--inner-small-pad); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--sample-radius); background:var(--inner-panel); }
.visitor-inner .day-time { font-size:var(--inner-caption); color:var(--terracotta-dark); }
.visitor-inner .day-row p { margin:0; font-size:var(--inner-body); }
/* ====== Boxed process steps, preserving existing ordering and qualifications ====== */
.visitor-inner .vp-six-steps { grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--inner-pad); }
.visitor-inner .vp-six-steps li,.visitor-inner .step { position:relative; padding:var(--inner-pad); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner .vp-six-steps li:nth-child(even),.visitor-inner .step:nth-child(even) { background:var(--inner-sage); }
.visitor-inner .vp-six-steps li p { font-size:var(--inner-body); }
.visitor-inner .steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--inner-pad); counter-reset:inner-step; }
.visitor-inner .step { display:block; margin:0; counter-increment:inner-step; }
.visitor-inner .step::before { content:'0' counter(inner-step); display:block; font-family:var(--inner-display); font-size:var(--sample-type-28); color:var(--terracotta-dark); margin-bottom:var(--inner-small-pad); }
.visitor-inner .step-num { display:none; }
/* ====== Forms stay native, readable, and easy to use on phones ====== */
.visitor-inner :is(.form,.inquiry-form,.hero-form) { min-width:0; max-width:none; background:var(--inner-panel); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--inner-radius); padding:var(--inner-pad); box-shadow:none; }
.visitor-inner :is(.contact-grid,.book-grid) { display:grid; grid-template-columns:.85fr 1.15fr; gap:var(--inner-gap); align-items:start; }
.visitor-inner form label { font-family:var(--inner-font); font-size:var(--inner-body); color:var(--inner-ink); }
.visitor-inner form :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]),select,textarea) { width:100%; min-width:0; min-height:var(--inner-touch); box-sizing:border-box; font:inherit; font-size:1rem; background:var(--cream); color:var(--inner-ink); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--sample-radius); padding:var(--inner-small-pad); }
.visitor-inner form :is(input[type=checkbox],input[type=radio]) { width:1.2rem; height:1.2rem; accent-color:var(--terracotta-dark); }
.visitor-inner form button[type=submit] { width:100%; min-height:var(--inner-touch); }
.visitor-inner .hero-form { text-align:left; margin-block:var(--inner-pad); }
.visitor-inner .hero-form .row { display:block; margin-bottom:var(--inner-small-pad); }
.visitor-inner .hero-form label { display:block; margin-bottom:var(--sample-space-1); }
.visitor-inner :is(.form-note,.tiny) { text-align:left; color:var(--inner-soft); font-size:var(--inner-caption); }
/* ====== FAQ and resource groups ====== */
.visitor-inner :is(.faq,.faq-item,.vp-faq) { border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); padding:var(--inner-pad); margin-bottom:var(--inner-small-pad); }
.visitor-inner :is(.faq,.faq-item,.vp-faq) summary { color:var(--inner-ink); font-weight:600; min-height:var(--inner-touch); cursor:pointer; font-size:var(--inner-body); }
.visitor-inner .faq[open],.visitor-inner .vp-faq[open] { border-color:var(--sample-frame-green); }
.visitor-inner :is(.guide-list a,.r-link,.resource-card,.r-card) { min-height:var(--inner-touch); border-radius:var(--inner-radius); }
.visitor-inner main :is(.article,.post-content,.legal-content,.content,.policy) { max-width:800px; }
.visitor-inner table { display:block; max-width:100%; overflow-x:auto; }
.visitor-inner main :is(pre,code) { white-space:pre-wrap; overflow-wrap:anywhere; }
/* ====== Contextual phone inquiry shortcut ====== */
.visitor-inner .sticky-cta { display:none !important; }
.visitor-inner .inner-hero h1 .sample-highlight { text-wrap:balance; }
.inner-mobile-action { display:none; }
@media (max-width:700px) {
 .visitor-inner { font-size:1rem; padding-bottom:var(--sample-mobile-bottom-space); }
 .visitor-inner .container { padding-inline:var(--sample-mobile-gutter); }
 .visitor-inner .inner-hero-grid { grid-template-columns:1fr; gap:var(--inner-pad); }
 .visitor-inner .inner-hero-photo { justify-self:center; max-width:280px; }
 .visitor-inner .inner-hero-photo figcaption { padding:var(--inner-small-pad); font-size:var(--inner-caption); }
 .visitor-inner .inner-hero h1 { font-size:clamp(2rem,9cqi,2.8rem); }
 .visitor-inner .inner-hero :is(.hero-ctas,.cta-row,.inner-actions) { display:grid; }
 .visitor-inner .inner-hero .btn { width:100%; }
 .visitor-inner :is(.contact-grid,.book-grid,.vp-editorial,.mission-grid,.diff-grid,.why-grid,.programs-grid,.req-grid,.reqs,.track-grid,.steps-grid,.steps,.vp-six-steps,.day-list) { grid-template-columns:1fr; }
 .visitor-inner .row2,.visitor-inner .form-row,.visitor-inner .form .row2 { grid-template-columns:1fr; }
 .visitor-inner .track-quick { display:grid; grid-template-columns:1fr; max-width:none; }
 .visitor-inner main section { padding-block:var(--sample-mobile-section-space); }
 .visitor-inner .inner-hero { padding-block:var(--inner-pad); }
 .visitor-inner main h2 { font-size:clamp(1.75rem,7.5vw,2.3rem); }
 .visitor-inner .vp-section-intro h2 { font-size:clamp(1.75rem,8cqi,2.3rem); }
 .visitor-inner :is(.form,.inquiry-form) { padding:var(--inner-small-pad); }
 .visitor-inner form textarea { min-height:120px; }
 .inner-mobile-action { display:block; position:fixed; inset:auto 0 0; z-index:50; padding:var(--sample-mobile-inquiry-pad); padding-bottom:max(.65rem,env(safe-area-inset-bottom)); background:var(--cream); border-top:var(--inner-border-width) solid var(--inner-border); }
 .inner-mobile-action a { display:flex; justify-content:space-between; align-items:center; min-height:var(--inner-touch); background:var(--terracotta-dark); color:var(--cream); border-radius:var(--sample-radius); padding-inline:var(--inner-pad); font-weight:600; }
 .inner-inquiry-visible .inner-mobile-action,.inner-inquiry-focused .inner-mobile-action,.visitor-menu-open .inner-mobile-action { display:none; }
}
/* ====== Accessible feedback and motion preferences ====== */
.visitor-inner :is(.step,.vp-six-steps li,.program-card,.req,.mission-card) { transition:border-color var(--vr-motion),box-shadow var(--vr-motion),transform var(--vr-motion) var(--vr-ease); }
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .visitor-inner :is(.step,.vp-six-steps li,.program-card,.req,.mission-card):hover { border-color:var(--sample-frame-green); box-shadow:var(--sample-hover-shadow); transform:translateY(-3px); }
}
@media (prefers-reduced-motion:reduce) { .visitor-inner *, .visitor-inner *::before,.visitor-inner *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
/* ====== Natural portrait sizing and narrow article layouts ====== */
.visitor-inner .inner-hero-photo { width:fit-content; }
.visitor-inner main .inner-hero-photo img { width:auto; max-width:100%; max-height:520px; margin-inline:auto; }
.visitor-inner .container { box-sizing:border-box; min-width:0; }
.visitor-inner main svg { max-width:100%; }
.visitor-inner .post-table-wrap { min-width:0; max-width:100%; }
.visitor-inner table { width:100%; }
@media (max-width:700px) {
 .visitor-inner main .inner-hero-photo img { max-height:360px; }
}
/* ====== Long source URLs stay inside article columns ====== */
.visitor-inner .post-body { overflow-wrap:anywhere; }

/* ====== Paw menu button ====== */
.visitor-site { --menu-paw-size:28px; --menu-button-width:64px; --menu-label-size:.625rem; --menu-button-gap:3px; --menu-label-tracking:.1em; }
.visitor-site .nav-toggle { color:var(--inner-ink); min-width:var(--menu-button-width); flex-shrink:0; flex-direction:column; gap:var(--menu-button-gap); padding:var(--inner-small-pad); }
.visitor-site .nav-toggle .menu-paw { display:block; width:var(--menu-paw-size); height:var(--menu-paw-size); fill:currentColor; transition:transform var(--vr-motion) var(--vr-ease); }
.visitor-site .nav-toggle .menu-word { display:block; font-family:var(--inner-font); font-size:var(--menu-label-size); font-weight:700; line-height:1; letter-spacing:var(--menu-label-tracking); }
.visitor-site .nav-toggle[aria-expanded="true"] { color:var(--terracotta-dark); background:var(--inner-panel); }
.visitor-site .nav-toggle:focus-visible { outline:var(--sample-border) solid var(--terracotta-dark); outline-offset:var(--sample-frame-pad); }
@media (hover:hover) and (pointer:fine) { .visitor-site .nav-toggle:hover { color:var(--terracotta-dark); } }
@media (prefers-reduced-motion:no-preference) { .visitor-site .nav-toggle[aria-expanded="true"] .menu-paw { transform:rotate(-12deg); } }
/* ====== Reading guides and stronger content grouping ====== */
.visitor-inner {
 --reading-border:2px;
 --reading-accent:4px;
 --reading-arrow-space:2rem;
 --reading-lift:-3px;
 --reading-shadow:0 8px 24px rgb(37 63 59 / .08);
 --reading-mark:#ead9c2;
}
.visitor-inner .inner-section-guide { padding-block:var(--inner-pad); border-block:var(--reading-border) solid var(--inner-border); background:var(--inner-panel); }
.visitor-inner .inner-section-guide > .container { display:flex; align-items:center; gap:var(--inner-pad); }
.visitor-inner .inner-section-guide strong { white-space:nowrap; color:var(--inner-soft); font-size:var(--inner-caption); }
.visitor-inner .inner-guide-links { display:flex; flex-wrap:wrap; gap:var(--inner-small-pad); width:100%; }
.visitor-inner main .inner-guide-links a { display:flex; align-items:center; justify-content:space-between; gap:var(--inner-pad); min-height:var(--inner-touch); padding:var(--inner-small-pad) var(--inner-pad); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--sample-radius); background:var(--cream); color:var(--inner-ink) !important; font-size:var(--inner-caption); font-weight:600; text-decoration:none; }
.visitor-inner :is(.section-head,.vp-section-heading,.vp-section-intro) > h2::after { content:''; display:block; width:var(--reading-arrow-space); height:var(--reading-accent); margin-top:var(--inner-small-pad); background:var(--terracotta-dark); border-radius:var(--sample-radius); }
.visitor-inner :is(.disclosure-list,.subsvc-grid,.network-cards) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--inner-pad); }
.visitor-inner :is(.disclosure,.subsvc-card,.network-card,.path-card,.program,.money-block,.limits-card,.softer,.explain,.guide-feature) { min-width:0; padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner :is(.disclosure,.subsvc-card,.path-card,.network-card) > h3 { margin-top:0; }
.visitor-inner .disclosure { border-top:var(--reading-accent) solid var(--sample-frame-green); }
.visitor-inner .disclosure:nth-child(even) { background:var(--inner-sage); }
.visitor-inner .program.featured { border-color:var(--sample-frame-green); background:var(--inner-sage); }
.visitor-inner .vp-detail { border-width:var(--reading-border); border-top:var(--reading-accent) solid var(--sample-frame-green); }
.visitor-inner :is(.step,.step-card,.vp-six-steps li) { border-width:var(--reading-border); border-top:var(--reading-accent) solid var(--terracotta-dark); }
.visitor-inner .vp-checklist { display:grid; gap:var(--inner-small-pad); }
.visitor-inner .vp-checklist li { padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner .vp-checklist li strong { color:var(--inner-ink); text-decoration:underline; text-decoration-color:var(--reading-mark); text-decoration-thickness:var(--reading-accent); text-underline-offset:var(--sample-frame-pad); }
.visitor-inner .vp-cost-list { display:grid; gap:var(--inner-small-pad); }
.visitor-inner .vp-cost-list > div { border:var(--reading-border) solid var(--inner-border); border-radius:var(--inner-radius); padding:var(--inner-pad); }
.visitor-inner .vp-cost-list dt { color:var(--terracotta-dark); }
.visitor-inner :is(.vp-reading,.story-inner) { max-width:960px; padding:var(--inner-gap); border:var(--reading-border) solid var(--inner-border); border-left:var(--reading-accent) solid var(--sample-frame-green); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner .story-inner { margin-inline:auto; }
.visitor-inner :is(.vp-reading,.story-inner) p { max-width:64ch; }
.visitor-inner .legal-microcopy { padding:var(--inner-pad); border:var(--inner-border-width) solid var(--inner-border); border-left:var(--reading-accent) solid var(--sample-frame-green); border-radius:var(--sample-radius); background:var(--inner-panel); font-size:var(--inner-caption); }
.visitor-inner :is(.contact-info,.book-info) { padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-sage); }
.visitor-inner :is(.price-table,.warning-band) { border:var(--reading-border) solid var(--sample-frame-green); border-radius:var(--inner-radius); overflow:hidden; }
.visitor-inner .price-row:nth-child(odd):not(.head) { background:var(--inner-panel); }
.visitor-inner .price-row:nth-child(even):not(.head) { background:var(--inner-sage); }
.visitor-inner :is(.faq,.faq-item,.vp-faq) { border-width:var(--reading-border); }
.visitor-inner :is(.faq,.vp-faq)[open] { background:var(--inner-sage); border-color:var(--sample-frame-green); }
.visitor-inner :is(.faq,.vp-faq)[open] summary { color:var(--terracotta-dark); }
/* ====== Feedback supports scanning, focus and purposeful motion ====== */
.visitor-inner :is(.inner-guide-links a,.disclosure,.vp-detail,.subsvc-card,.program,.step-card,.r-card,.path-card,.network-card,.faq,.vp-faq) { transition:background-color var(--vr-motion),border-color var(--vr-motion),box-shadow var(--vr-motion); }
.visitor-inner :is(.program,.r-card,.path-card,.network-card,.vp-detail):focus-within { border-color:var(--terracotta-dark); box-shadow:var(--reading-shadow); }
@media (hover:hover) and (pointer:fine) {
 .visitor-inner main .inner-guide-links a:hover { background:var(--inner-sage); border-color:var(--sample-frame-green); }
 .visitor-inner :is(.disclosure,.vp-detail,.subsvc-card,.program,.step-card,.r-card,.path-card,.network-card):hover { border-color:var(--sample-frame-green); box-shadow:var(--reading-shadow); }
 .visitor-inner :is(.faq,.vp-faq) summary:hover { color:var(--terracotta-dark); }
}
@media (max-width:700px) {
 .visitor-inner .inner-section-guide > .container { display:block; }
 .visitor-inner .inner-section-guide strong { display:block; margin-bottom:var(--inner-small-pad); }
 .visitor-inner .inner-guide-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }
 .visitor-inner main .inner-guide-links a { padding:var(--inner-small-pad); gap:var(--inner-small-pad); }
 .visitor-inner :is(.disclosure-list,.subsvc-grid,.network-cards) { grid-template-columns:1fr; }
 .visitor-inner .vp-reading { width:calc(100% - var(--sample-mobile-gutter) * 2); padding:var(--inner-pad); }
 .visitor-inner :is(.story-inner,.contact-info,.book-info) { padding:var(--inner-pad); }
}
@media (prefers-reduced-motion:reduce) {
 .visitor-inner :is(.inner-guide-links a,.disclosure,.vp-detail,.subsvc-card,.program,.step-card,.r-card,.path-card,.network-card,.faq,.vp-faq) { transition:none; }
}
/* ====== Full-width detail groups avoid nested narrow columns ====== */
.visitor-inner .vp-section-intro { max-width:72ch; }
.visitor-inner .vp-section-intro h2 { font-size:var(--inner-h2); }
.visitor-inner :is(.vp-detail-grid,.vp-cost-list,.vp-checklist) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; }
.visitor-inner :is(.vp-detail-grid,.vp-cost-list,.vp-checklist) > * { min-width:0; }
@media (min-width:1200px) {
 .visitor-inner :is(.vp-detail-grid,.vp-cost-list,.vp-checklist) { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .visitor-inner .vp-detail-grid:has(> :nth-child(5)) { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (min-width:701px) and (max-width:1100px) {
 .visitor-inner :is(.programs-grid,.why-grid,.diff-grid,.mission-grid,.steps,.vp-six-steps,.cards-3) { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:1000px) {
 .visitor-inner :is(.contact-grid,.book-grid) { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:700px) {
 .visitor-inner :is(.vp-detail-grid,.vp-cost-list,.vp-checklist) { grid-template-columns:minmax(0,1fr); }
}
.visitor-inner .legal-microcopy { font-size:var(--inner-body); }
/* ====== A coherent Shiba illustration language ====== */
.visitor-site {
 --shiba-icon-size:1.75rem;
 --shiba-stroke:2.3;
 --shiba-badge-size:3rem;
 --shiba-puppy-width:7.5rem;
 --shiba-puppy-height:9.5rem;
 --shiba-frame-radius:2rem;
 --shiba-wiggle:-7deg;
}
.visitor-site .shiba-doodle { display:inline-block; width:var(--shiba-icon-size); height:var(--shiba-icon-size); flex-shrink:0; color:var(--terracotta-dark); fill:none; stroke:currentColor; stroke-width:var(--shiba-stroke); stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.visitor-site .eyebrow:has(.shiba-doodle) { display:inline-flex; align-items:center; gap:var(--inner-small-pad); max-width:100%; }
.visitor-site .eyebrow .shiba-doodle { color:var(--sample-frame-green); }
.visitor-inner .shiba-card-icon { display:block; width:var(--shiba-badge-size); height:var(--shiba-badge-size); padding:var(--inner-small-pad); margin-bottom:var(--inner-small-pad); border-radius:var(--inner-radius); background:var(--inner-sage); }
.visitor-inner .inner-hero-photo { border-radius:var(--shiba-frame-radius) var(--inner-radius) var(--shiba-frame-radius) var(--inner-radius); }
.visitor-inner.shiba-story-surrender .inner-hero-photo { border-style:dashed; border-color:var(--terracotta-dark); }
.visitor-inner.shiba-story-pack .inner-hero-photo { border-color:var(--sample-frame-pink); border-radius:var(--inner-radius) var(--shiba-frame-radius) var(--inner-radius) var(--shiba-frame-radius); }
.visitor-inner.shiba-story-about .inner-hero-photo { border-style:solid; border-color:var(--sample-frame-blue); }
.visitor-inner.shiba-story-foster .inner-hero-photo { border-style:dotted; }
.visitor-inner .inner-care-illustration .shiba-doodle { width:var(--shiba-badge-size); height:var(--shiba-badge-size); }
.visitor-inner .inner-care-illustration .shiba-doodle:first-child { width:var(--shiba-puppy-width); height:var(--shiba-puppy-height); }
.visitor-site :is(.mission-ico,.diff-ico) { display:flex; align-items:center; justify-content:center; background:var(--inner-sage); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--inner-radius); }
/* ====== Quiet feedback, with all dog photographs left still ====== */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .visitor-site .shiba-doodle { transition:transform var(--vr-motion) var(--vr-ease),color var(--vr-motion); }
 .visitor-site :is(.vp-detail,.mission-card,.diff-card):hover .shiba-doodle { color:var(--sample-frame-green); transform:rotate(var(--shiba-wiggle)); }
}
@media (prefers-reduced-motion:reduce) { .visitor-site .shiba-doodle { transition:none; transform:none; } }
/* ====== Contact cards stay inside narrow reading columns ====== */
.visitor-inner :is(.cm,.cm > div) { min-width:0; }
.visitor-inner .cm strong { overflow-wrap:anywhere; font-family:var(--inner-font); font-size:var(--inner-body); }
/* ====== Odd tablet groups finish with a full-width card ====== */
@media (min-width:701px) and (max-width:1100px) {
 .visitor-inner :is(.programs-grid,.why-grid,.steps) > :last-child:nth-child(odd) { grid-column:1 / -1; }
}
/* ====== Repair legacy process counters and hero structure ====== */
.visitor-site { --polish-ink:var(--inner-ink); --polish-cream:var(--cream); --polish-peach:#f3d7c6; --polish-muted:#dbe5db; --polish-dark-panel:#304c46; --polish-counter-size:3rem; --polish-content-gap:1.5rem; --polish-large-gap:2.5rem; --polish-title:clamp(2.25rem,4.2vw,4.25rem); --polish-rule:2px; --polish-radius:1.5rem; --polish-small:.875rem; }
.visitor-inner .step::before { position:static; inset:auto; float:none; display:flex; align-items:center; justify-content:center; width:var(--polish-counter-size); height:var(--polish-counter-size); min-width:var(--polish-counter-size); padding:0; margin:0 0 var(--inner-pad); background:var(--inner-ink); color:var(--cream); border:0; border-radius:50%; font-family:var(--inner-font); font-size:var(--inner-h3); font-weight:600; line-height:1; counter-increment:none; content:'0' counter(inner-step); transform:none; box-shadow:none; }
.visitor-inner .step::after { content:none; }
.visitor-inner .step-body { min-width:0; }
.visitor-inner .step h3 { margin:0 0 var(--inner-small-pad); }
.visitor-inner .step p { overflow-wrap:anywhere; }
.visitor-inner .inner-hero-grid { align-items:end; }
.visitor-inner .inner-hero .track-quick { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); max-width:none; margin:var(--inner-pad) 0; padding:0; gap:var(--inner-small-pad); }
.visitor-inner .inner-hero .track-quick a { padding:var(--inner-pad); text-align:left; box-shadow:none; border:var(--polish-rule) solid var(--inner-border); background:var(--inner-panel); }
.visitor-inner .inner-hero .track-label { font-size:var(--inner-label); line-height:1.5; letter-spacing:.05em; }
.visitor-inner .inner-hero .track-title { display:block; font-family:var(--inner-font); font-size:var(--inner-body); line-height:1.5; }
.visitor-inner main .inner-hero-photo img { max-height:440px; }
@media (min-width:1101px) {
 .visitor-inner .steps:has(> .step:nth-child(5)):not(:has(> .step:nth-child(6))) { grid-template-columns:repeat(6,minmax(0,1fr)); }
 .visitor-inner .steps:has(> .step:nth-child(5)):not(:has(> .step:nth-child(6))) > .step { grid-column:span 2; }
 .visitor-inner .steps:has(> .step:nth-child(5)):not(:has(> .step:nth-child(6))) > .step:nth-child(n+4) { grid-column:span 3; }
}
/* ====== Homepage photographs and text share an intentional bottom edge ====== */
.visitor-site.vp-home :is(.home-rehome-layout,.home-sponsor-layout) { display:grid; grid-template-columns:1fr 1fr; gap:var(--inner-gap); align-items:end; }
.visitor-site.vp-home .home-rehome-copy h2,.visitor-site.vp-home .home-sponsor-heading h2 { font-size:var(--polish-title); line-height:1.12; }
.visitor-site.vp-home .home-rehome-copy .btn { margin-top:var(--inner-pad); }
.visitor-site.vp-home .home-rehome-details { margin-top:var(--inner-pad); padding-top:var(--inner-pad); border-top:var(--inner-border-width) solid var(--inner-border); }
.visitor-site.vp-home .home-rehome-details h3 { font-size:var(--inner-h3); line-height:1.4; }
.visitor-site.vp-home .home-rehome-layout .sample-rehome-photo { margin:0; }
.visitor-site.vp-home .home-sponsor-heading { margin-bottom:var(--inner-gap); }
.visitor-site.vp-home .home-sponsor-layout .sample-sponsor-photo { margin:0; }
.visitor-site.vp-home .home-sponsor-copy { display:flex; flex-direction:column; gap:var(--inner-small-pad); min-width:0; }
.visitor-site.vp-home .home-sponsor-copy > :last-child { margin-bottom:0; }
.visitor-site.vp-home .sample-flow-heading { grid-template-columns:1fr auto; align-items:end; }
.visitor-site.vp-home .sample-flow-photo { width:220px; margin:0; }
/* ====== Sponsorship, a focused photo and signup composition ====== */
.visitor-inner .pack-opening { background:linear-gradient(145deg,var(--cream),var(--inner-wash)); }
.visitor-inner .pack-heading { display:grid; grid-template-columns:1.1fr .9fr; align-items:end; gap:var(--inner-small-pad) var(--inner-gap); margin-bottom:var(--inner-gap); }
.visitor-inner .pack-heading > .eyebrow { grid-column:1 / -1; }
.visitor-inner .pack-heading h1 { margin:0; font-size:var(--polish-title); }
.visitor-inner .pack-heading > p { margin:0; font-size:var(--inner-h3); max-width:45ch; }
.visitor-inner .pack-opening-grid { display:grid; grid-template-columns:1fr 1fr; align-items:stretch; gap:var(--inner-gap); }
.visitor-inner .pack-photo-column { display:flex; flex-direction:column; gap:var(--inner-pad); min-width:0; }
.visitor-inner .pack-photo-column .inner-hero-photo { width:100%; max-width:none; margin:0; border:var(--polish-rule) solid var(--sample-frame-green); }
.visitor-inner .pack-photo-column .inner-hero-photo img { width:100%; height:auto; max-height:none; object-fit:contain; }
.visitor-inner .pack-transparency { margin-top:auto; padding:var(--inner-pad); background:var(--inner-sage); border:var(--polish-rule) solid var(--inner-border); border-radius:var(--polish-radius); }
.visitor-inner .pack-transparency p { margin:var(--inner-small-pad) 0 0; font-size:var(--polish-small); }
.visitor-inner .pack-signup-card { padding:var(--inner-gap); border:var(--polish-rule) solid var(--sample-frame-green); border-radius:var(--polish-radius); background:var(--inner-panel); min-width:0; }
.visitor-inner .pack-signup-card h2 { margin:var(--inner-small-pad) 0; }
.visitor-inner .pack-signup-card > p { margin:0; }
.visitor-inner .pack-signup-card .hero-form { border:0; border-radius:0; background:transparent; padding:0; margin:var(--inner-pad) 0 0; }
.visitor-inner .pack-signup-card .hero-form .row { margin-bottom:var(--inner-pad); }
.visitor-inner .pack-signup-card .form-note { margin:var(--inner-small-pad) 0 0; }
.visitor-inner .pack-process-grid { list-style:none; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--inner-pad); margin:0; padding:0; }
.visitor-inner .pack-process-grid > li { padding:var(--inner-pad); border:var(--polish-rule) solid var(--inner-border); border-radius:var(--polish-radius); background:var(--inner-panel); }
.visitor-inner .pack-process-grid > li:nth-child(2) { background:var(--inner-sage); }
.visitor-inner .pack-process-grid > li:nth-child(3) { background:var(--inner-blue); }
.visitor-inner .pack-step-number { display:flex; align-items:center; justify-content:center; width:var(--polish-counter-size); height:var(--polish-counter-size); border-radius:50%; margin-bottom:var(--inner-pad); background:var(--inner-ink); color:var(--cream); font-weight:600; }
.visitor-inner .pack-process-grid h3 { margin:0 0 var(--inner-small-pad); }
.visitor-inner .pack-process-grid p { margin:0; }
.visitor-inner .pack-section-intro { max-width:72ch; margin-bottom:var(--inner-gap); }
.visitor-inner .pack-context-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--inner-pad); margin-top:var(--inner-pad); }
.visitor-inner .pack-context-grid article { min-width:0; border:var(--polish-rule) solid var(--inner-border); padding:var(--inner-pad); border-radius:var(--polish-radius); background:var(--inner-panel); }
.visitor-inner .pack-context-grid h3 { margin-top:0; }
.visitor-inner .pack-context-grid p:last-child { margin-bottom:0; }
.visitor-inner .pack-contact-section { background:var(--inner-sage); }
.visitor-inner .pack-contact-panel { display:grid; grid-template-columns:1.15fr .85fr; gap:var(--inner-gap); align-items:center; padding:var(--inner-gap); background:var(--inner-panel); border:var(--polish-rule) solid var(--sample-frame-green); border-radius:var(--polish-radius); }
.visitor-inner .pack-contact-panel h2 { margin-block:var(--inner-small-pad) var(--inner-pad); }
.visitor-inner .pack-contact-panel p { margin-bottom:0; }
.visitor-inner .pack-contact-actions { display:flex; flex-direction:column; align-items:flex-start; gap:var(--inner-pad); min-width:0; }
.visitor-inner .pack-contact-actions p { font-size:var(--polish-small); }
.visitor-inner .pack-faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--inner-small-pad); align-items:start; }
.visitor-inner .pack-faq-grid .faq { margin:0; }
.visitor-inner .pack-faq-grid .faq:last-child:nth-child(odd) { grid-column:1 / -1; }
.visitor-inner .pack-closing { display:flex; justify-content:space-between; align-items:center; gap:var(--inner-pad); margin-top:var(--inner-gap); padding:var(--inner-pad); border-radius:var(--polish-radius); background:var(--inner-sage); }
.visitor-inner .pack-closing p { margin:0; font-family:var(--inner-display); font-size:var(--inner-h3); color:var(--inner-ink); }
/* ====== A warm forest footer, with distinct paths and readable agreements ====== */
.visitor-site .footer-redesigned { background:var(--polish-ink); color:var(--polish-cream); padding-block:var(--inner-space) var(--inner-pad); border-radius:var(--polish-large-gap) var(--polish-large-gap) 0 0; }
.visitor-site .footer-redesigned :is(h2,h3,p,.brand,summary,a) { color:var(--polish-cream); }
.visitor-site .footer-redesigned h2 { font-size:var(--polish-title); line-height:1.1; max-width:none; margin:var(--inner-pad) 0; }
.visitor-site .footer-redesigned h2 em { color:var(--polish-peach); font-style:normal; }
.visitor-site .footer-redesigned .eyebrow { padding:0; background:none; color:var(--polish-muted); font-size:var(--inner-label); letter-spacing:.12em; }
.visitor-site .footer-new-invite { display:grid; grid-template-columns:1.15fr .85fr; gap:var(--inner-gap); align-items:center; padding-bottom:var(--inner-gap); }
.visitor-site .footer-new-copy { min-width:0; }
.visitor-site .footer-new-copy p { max-width:40ch; margin-bottom:var(--inner-pad); font-size:var(--inner-body); }
.visitor-site .footer-contact-link { display:inline-flex; align-items:center; justify-content:space-between; gap:var(--inner-gap); min-height:var(--inner-touch); border-bottom:var(--inner-border-width) solid var(--polish-peach); font-weight:600; text-decoration:none; }
.visitor-site .footer-paths { display:grid; gap:var(--inner-small-pad); }
.visitor-site .footer-paths > a { display:block; padding:var(--inner-pad); border:var(--polish-rule) solid transparent; border-radius:var(--polish-radius); background:var(--inner-panel); color:var(--inner-ink); text-decoration:none; transition:transform var(--vr-motion) var(--vr-ease),border-color var(--vr-motion); }
.visitor-site .footer-paths > a:nth-child(2) { background:var(--inner-sage); }
.visitor-site .footer-paths > a:nth-child(3) { background:var(--polish-peach); }
.visitor-site .footer-paths :is(span,small,strong) { display:block; }
.visitor-site .footer-paths span { font-size:var(--inner-label); text-transform:uppercase; letter-spacing:.1em; font-weight:600; }
.visitor-site .footer-paths strong { display:flex; justify-content:space-between; gap:var(--inner-small-pad); font-family:var(--inner-display); font-size:var(--inner-h3); margin-block:var(--sample-space-1); line-height:1.35; }
.visitor-site .footer-paths small { font-size:var(--polish-small); }
.visitor-site .footer-paths b { font-family:var(--inner-font); }
.visitor-site .footer-redesigned .sample-footer-directory { gap:var(--inner-gap); border-color:var(--polish-muted); padding-block:var(--inner-gap); }
.visitor-site .footer-redesigned .sample-footer-directory h3 { color:var(--polish-peach); font-size:var(--inner-body); }
.visitor-site .footer-redesigned .sample-footer-directory a:not(.brand) { color:var(--polish-cream); font-size:var(--polish-small); }
.visitor-site .footer-redesigned .sample-footer-brand p { color:var(--polish-muted); }
.visitor-site .footer-redesigned .sample-footer-disclosures { padding:var(--inner-pad); margin-top:var(--inner-pad); background:var(--polish-dark-panel); border-radius:var(--polish-radius); }
.visitor-site .footer-redesigned .nsf-legal-line { color:var(--polish-cream); max-width:none; font-size:var(--polish-small); }
.visitor-site .footer-redesigned .sample-footer-disclosures a { color:var(--polish-cream); text-decoration:underline; }
.visitor-site .footer-redesigned .sample-footer-bottom { padding-top:var(--inner-pad); }
.visitor-site .footer-redesigned .sample-footer-bottom a { color:var(--polish-cream); }
.visitor-site .footer-redesigned a:focus-visible { outline:var(--polish-rule) solid var(--polish-peach); outline-offset:var(--sample-frame-pad); }
.visitor-site .footer-paths > a:focus-visible { outline-color:var(--polish-cream); }
.visitor-site .footer-home-invite { display:grid; grid-template-columns:.65fr 1.35fr; align-items:end; gap:var(--inner-gap); margin-bottom:var(--inner-gap); }
.visitor-site .footer-home-invite .sample-footer-photo { width:100%; max-width:260px; margin:0; padding:var(--sample-frame-pad); border:var(--polish-rule) solid var(--polish-peach); border-radius:var(--polish-radius); }
.visitor-site .footer-home-invite .sample-footer-photo img { height:auto; aspect-ratio:auto; width:100%; object-fit:contain; border-radius:var(--inner-radius); }
.visitor-site .footer-home-invite + .footer-paths { grid-template-columns:repeat(3,minmax(0,1fr)); margin-bottom:var(--inner-gap); }
@media (hover:hover) and (pointer:fine) {
 .visitor-site .footer-redesigned a:not(.footer-paths > a):hover { color:var(--polish-peach); }
 .visitor-site .footer-paths > a:hover { border-color:var(--polish-peach); }
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) { .visitor-site .footer-paths > a:hover { transform:translateY(-3px); } }
/* ====== Natural tablet and phone reflow ====== */
@media (max-width:1000px) {
 .visitor-site .footer-new-invite { grid-template-columns:minmax(0,1fr); }
 .visitor-site .footer-paths { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .visitor-inner .pack-heading { grid-template-columns:minmax(0,1fr); }
 .visitor-inner .pack-contact-panel { grid-template-columns:minmax(0,1fr); }
}
@media (max-width:700px) {
 .visitor-site.vp-home :is(.home-rehome-layout,.home-sponsor-layout) { grid-template-columns:minmax(0,1fr); }
 .visitor-site.vp-home .home-rehome-layout .sample-rehome-photo { max-width:100%; }
 .visitor-site.vp-home .sample-flow-heading { grid-template-columns:minmax(0,1fr); }
 .visitor-site.vp-home .sample-flow-photo { width:100%; max-width:240px; justify-self:start; }
 .visitor-inner main .inner-hero-photo img { max-height:360px; }
 .visitor-inner :is(.pack-opening-grid,.pack-process-grid,.pack-context-grid,.pack-faq-grid) { grid-template-columns:minmax(0,1fr); }
 .visitor-inner .pack-signup-card { padding:var(--inner-pad); }
 .visitor-inner .pack-photo-column .inner-hero-photo img { max-height:none; }
 .visitor-inner .pack-closing { flex-direction:column; align-items:stretch; }
 .visitor-inner .pack-process-grid > li { padding:var(--inner-pad); }
 .visitor-site .footer-redesigned { border-radius:var(--inner-radius) var(--inner-radius) 0 0; }
 .visitor-site .footer-paths,.visitor-site .footer-home-invite + .footer-paths { grid-template-columns:minmax(0,1fr); }
 .visitor-site .footer-home-invite { grid-template-columns:minmax(0,1fr); }
 .visitor-site .footer-home-invite .sample-footer-photo { max-width:190px; }
 .visitor-site .footer-redesigned .sample-footer-directory { grid-template-columns:1fr 1fr; }
 .visitor-site .footer-redesigned .sample-footer-brand { grid-column:1 / -1; }
 .visitor-site .footer-redesigned .sample-footer-bottom { flex-direction:column; }
}
@media (max-width:600px) { .visitor-inner .inner-hero .track-quick { grid-template-columns:minmax(0,1fr); } }
@media (prefers-reduced-motion:reduce) { .visitor-site .footer-paths > a { transition:none; transform:none; } }
/* ====== Light footer path cards retain dark readable text ====== */
.visitor-site .footer-redesigned .footer-paths > a { color:var(--inner-ink); }
/* ====== Shared controls and labels override legacy page constraints ====== */
.visitor-site { --menu-button-height:68px; }
.visitor-site .nav-toggle { height:var(--menu-button-height); min-height:var(--menu-button-height); }
.visitor-site .nav-toggle .menu-paw { flex-shrink:0; }
.visitor-inner .steps { width:100%; max-width:none; margin-inline:0; }
.visitor-site .footer-redesigned .eyebrow { color:var(--polish-muted) !important; }
@media (max-width:700px) { .visitor-inner .pack-signup-card { order:-1; } }
/* ====== Compact supporting copy and sponsorship questions ====== */
.visitor-site.vp-home .home-rehome-checklist { margin:0; padding-left:var(--inner-pad); }
.visitor-site.vp-home .home-rehome-checklist li { margin-bottom:var(--inner-small-pad); }
.visitor-site.vp-home .home-prepare-link { display:inline-flex; align-items:center; min-height:var(--inner-touch); margin-left:var(--inner-pad); }
.visitor-site.vp-home .home-sponsor-copy .sample-care-tags { display:flex; flex-wrap:wrap; gap:var(--inner-small-pad); }
.visitor-site.vp-home .home-sponsor-copy .sample-care-tags > span { display:inline-flex; align-items:center; gap:var(--inner-small-pad); padding:var(--inner-small-pad); min-height:var(--inner-touch); font-size:var(--polish-small); }
.visitor-inner .pack-faq-grid details.faq { padding:0; width:100%; max-width:none; }
.visitor-inner .pack-faq-grid details.faq summary { min-height:var(--menu-button-height); padding:var(--inner-pad); font-family:var(--inner-font); font-size:var(--inner-body); gap:var(--inner-pad); line-height:1.5; }
.visitor-inner .pack-faq-grid details.faq > p { padding:0 var(--inner-pad) var(--inner-pad); margin:0; }
@media (max-width:700px) { .visitor-site.vp-home .home-prepare-link { margin-left:0; margin-top:var(--inner-small-pad); } }
/* ====== Direct footer previews clear the sticky navigation ====== */
.visitor-site .footer-redesigned { scroll-margin-top:calc(var(--menu-button-height) + var(--inner-pad)); }
/* ====== Disclosure groups use the same content width as their heading ====== */
.visitor-inner .disclosure-list { width:100%; max-width:none; margin-inline:0; }
/* ====== Service pages: useful preparation, clear choices, and full-width groups ====== */
.visitor-inner :is(.service-prep-grid,.about-operation-grid) { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--inner-pad); }
.visitor-inner .about-operation-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.visitor-inner .service-prep-card { min-width:0; padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-top:var(--reading-accent) solid var(--sample-frame-green); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner .service-prep-card:nth-child(even) { background:var(--inner-sage); }
.visitor-inner .service-label { display:block; margin-bottom:var(--inner-pad); color:var(--terracotta-dark); font-size:var(--inner-label); font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.visitor-inner .service-prep-card p:last-child { margin-bottom:0; }
.visitor-inner .service-inline-link { display:inline-flex; align-items:center; gap:var(--inner-small-pad); min-height:var(--inner-touch); margin-top:var(--inner-small-pad); font-weight:600; text-decoration:underline; text-underline-offset:var(--sample-frame-pad); }
.visitor-inner .about-operation-grid .service-inline-link { display:flex; justify-content:space-between; }
.visitor-inner .service-contact-checklist { margin-block:var(--inner-pad); padding-block:var(--inner-pad); border-block:var(--inner-border-width) solid var(--inner-border); font-size:var(--inner-body); }
.visitor-inner .service-contact-checklist ul { margin-block:var(--inner-small-pad); padding-left:var(--inner-pad); }
.visitor-inner .service-contact-checklist li { margin-bottom:var(--sample-space-1); }
.visitor-inner .service-contact-checklist a { display:inline-flex; align-items:center; min-height:var(--inner-touch); font-weight:600; }
.visitor-inner main .service-shortcut-section { padding-block:var(--inner-pad); }
.visitor-inner .service-shortcut { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:var(--inner-pad); padding:var(--inner-pad); border:var(--reading-border) solid var(--sample-frame-green); border-radius:var(--inner-radius); background:var(--inner-sage); text-decoration:none; }
.visitor-inner .service-shortcut strong { display:block; color:var(--inner-ink); font-family:var(--inner-display); font-size:var(--inner-h3); line-height:1.4; }
.visitor-inner .service-shortcut small { display:block; margin-top:var(--sample-space-1); color:var(--inner-soft); font-size:var(--inner-body); }
.visitor-inner .service-shortcut b { display:inline-flex; align-items:center; gap:var(--inner-small-pad); min-height:var(--inner-touch); font-size:var(--inner-body); }
.visitor-inner .story-cta.service-shortcut { margin-top:var(--inner-pad); }
/* ====== Open questions stay compact in a balanced card grid ====== */
.visitor-inner .faq.service-faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:var(--inner-small-pad); max-width:none; padding:0; border:0; background:none; }
.visitor-inner .service-faq-grid > details { min-width:0; margin:0; padding:0; border:var(--reading-border) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); overflow:hidden; }
.visitor-inner .service-faq-grid > details[open] { border-color:var(--sample-frame-green); background:var(--inner-sage); }
.visitor-inner .service-faq-grid > details summary { padding:var(--inner-pad); min-height:var(--menu-button-height); font-size:var(--inner-body); line-height:1.5; }
.visitor-inner .service-faq-grid > details p { margin:0; padding:0 var(--inner-pad) var(--inner-pad); font-size:var(--inner-body); }
/* ====== Training chapters and limits are readable topic cards ====== */
.visitor-inner #guide > .container > p { margin-bottom:var(--inner-pad); }
.visitor-inner .guide-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--inner-small-pad); list-style:none; margin:var(--inner-pad) 0 0; padding:0; width:100%; max-width:none; }
.visitor-inner .guide-list li { min-width:0; margin:0; }
.visitor-inner .guide-list a { display:flex; align-items:center; gap:var(--inner-pad); height:100%; padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); background:var(--inner-panel); text-decoration:none; }
.visitor-inner .guide-list .guide-num { display:grid; place-items:center; flex-shrink:0; width:var(--inner-touch); height:var(--inner-touch); border-radius:50%; background:var(--inner-sage); color:var(--inner-ink); font-family:var(--inner-display); font-weight:600; font-size:var(--inner-h3); }
.visitor-inner .guide-list a span:last-child { color:var(--inner-ink); font-family:var(--inner-display); font-size:var(--inner-h3); line-height:1.4; }
.visitor-inner .limits-card { max-width:none; }
.visitor-inner .limits-card ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--inner-small-pad); list-style:none; padding:0; margin-block:var(--inner-pad); }
.visitor-inner .limits-card li { padding:var(--inner-pad); margin:0; border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--sample-radius); background:var(--cream); color:var(--inner-soft); }
.visitor-inner .limits-card li strong { display:block; margin-bottom:var(--sample-space-1); color:var(--inner-ink); }
.visitor-inner .limits-card li:last-child { grid-column:1 / -1; }
/* ====== Resource library: consistent categories, chapter order, and action labels ====== */
.visitor-inner.shiba-story-resources .res-hero { text-align:left; }
.visitor-inner.shiba-story-resources .res-hero :is(h1,p.subhead) { margin-inline:0; }
.visitor-inner.shiba-story-resources .res-hero h1 { max-width:18ch; }
.visitor-inner.shiba-story-resources .guide-feature { max-width:none; padding:var(--inner-gap); text-align:left; }
.visitor-inner.shiba-story-resources .guide-feature p.lead { margin-inline:0; }
.visitor-inner.shiba-story-resources :is(.guide-chapters,.cards-3) { grid-template-columns:repeat(3,minmax(0,1fr)); }
.visitor-inner.shiba-story-resources :is(.cards-2,.two-paths,.network-cards) { grid-template-columns:repeat(2,minmax(0,1fr)); }
.visitor-inner.shiba-story-resources :is(.cards-3,.cards-2,.two-paths,.network-cards,.states-grid) { width:100%; max-width:none; gap:var(--inner-pad); }
.visitor-inner.shiba-story-resources :is(.guide-chapters a,.r-card,.state-card) { border:var(--reading-border) solid var(--inner-border); background:var(--inner-panel); padding:var(--inner-pad); }
.visitor-inner.shiba-story-resources .guide-chapters a { display:flex; flex-direction:column; justify-content:center; background:var(--cream); }
.visitor-inner.shiba-story-resources .guide-chapters :is(.ch-num,.ch-title) { color:var(--inner-ink); }
.visitor-inner.shiba-story-resources .guide-chapters .ch-num { color:var(--terracotta-dark); font-size:var(--inner-label); }
.visitor-inner.shiba-story-resources .guide-chapters .ch-title { font-size:var(--inner-h3); line-height:1.4; }
.visitor-inner.shiba-story-resources .r-card { display:flex; flex-direction:column; align-items:start; min-width:0; }
.visitor-inner.shiba-story-resources .r-card p { font-size:var(--inner-body); }
.visitor-inner.shiba-story-resources .r-link { display:inline-flex; align-items:center; margin-top:auto; font-size:var(--inner-body); font-weight:600; text-decoration:underline; text-underline-offset:var(--sample-frame-pad); }
.visitor-inner.shiba-story-resources :is(.path-card,.network-card) { text-align:left; }
.visitor-inner.shiba-story-resources :is(.path-card,.network-card) p { margin-bottom:var(--inner-pad); }
.visitor-inner.shiba-story-resources .path-cta,.visitor-inner.shiba-story-resources .guide-cta { display:inline-flex; align-items:center; min-height:var(--inner-touch); padding:var(--inner-small-pad) var(--inner-pad); border:var(--inner-border-width) solid var(--sample-frame-green); border-radius:var(--sample-radius); background:var(--inner-sage); color:var(--inner-ink) !important; font-size:var(--inner-body); box-shadow:none; }
.visitor-inner.shiba-story-resources .network-card .price { background:var(--inner-sage); font-family:var(--inner-font); font-size:var(--inner-caption); }
.visitor-inner.shiba-story-resources .signup-inline { width:100%; max-width:none; flex-wrap:wrap; }
.visitor-inner.shiba-story-resources .signup-inline input { flex:1 1 12rem; }
.visitor-inner.shiba-story-resources .signup-inline button { flex:1 1 8rem; border-radius:var(--sample-radius); background:var(--terracotta-dark); font-size:var(--inner-body); }
.visitor-inner.shiba-story-resources .states-note { max-width:none; text-align:left; font-style:normal; margin:0; padding:var(--inner-pad); background:var(--inner-sage); border-radius:var(--sample-radius); }
.visitor-inner.shiba-story-resources .honest-foot { max-width:none; padding:var(--inner-pad); margin-block:var(--inner-pad); border-left:var(--reading-accent) solid var(--sample-frame-green); text-align:left; font-style:normal; font-size:var(--inner-caption); }
/* ====== Foster requirements keep their full wording and gain a visible sequence ====== */
.visitor-inner .reqs { counter-reset:foster-requirement; }
.visitor-inner .reqs > .req { counter-increment:foster-requirement; }
.visitor-inner .reqs > .req::before { content:counter(foster-requirement,decimal-leading-zero); display:inline-grid; place-items:center; width:var(--inner-touch); height:var(--inner-touch); margin-bottom:var(--inner-small-pad); border-radius:50%; background:var(--inner-sage); color:var(--inner-ink); font-family:var(--inner-display); font-size:var(--inner-h3); }
.visitor-inner .reqs > .req:last-child:nth-child(odd) { grid-column:1 / -1; }
.visitor-inner .inquiry-form .field-radio { display:grid; grid-template-columns:minmax(0,1fr); }
.visitor-inner .inquiry-form .field-radio label { min-height:var(--inner-touch); border-radius:var(--sample-radius); padding:var(--inner-small-pad); }
.visitor-inner .inquiry-form .field-radio label:has(input:checked) { border-color:var(--sample-frame-green); background:var(--inner-sage); }
.visitor-inner .inquiry-form .field-radio input { flex-shrink:0; }
/* ====== Service feedback stays quiet and supports keyboard access ====== */
.visitor-inner :is(.service-shortcut,.guide-list a,.guide-chapters a,.service-prep-card) { transition:border-color var(--vr-motion),background-color var(--vr-motion),box-shadow var(--vr-motion); }
.visitor-inner :is(.service-shortcut,.guide-list a,.guide-chapters a):focus-visible { outline:var(--reading-border) solid var(--terracotta-dark); outline-offset:var(--sample-frame-pad); }
@media (hover:hover) and (pointer:fine) {
 .visitor-inner :is(.service-shortcut,.guide-list a,.guide-chapters a):hover { border-color:var(--sample-frame-green); background:var(--inner-sage); box-shadow:var(--reading-shadow); }
 .visitor-inner.shiba-story-resources :is(.path-cta,.guide-cta):hover { background:var(--inner-ink); color:var(--inner-panel) !important; }
}
/* ====== Tablet and phone layouts keep topic cards wide enough to read ====== */
@media (min-width:701px) and (max-width:1100px) {
 .visitor-inner .service-prep-grid,.visitor-inner.shiba-story-resources :is(.guide-chapters,.cards-3) { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .visitor-inner .service-prep-grid > :last-child:nth-child(odd) { grid-column:1 / -1; }
 .visitor-inner.shiba-story-resources .states-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:700px) {
 .visitor-inner :is(.service-prep-grid,.about-operation-grid,.faq.service-faq-grid,.guide-list,.limits-card ul) { grid-template-columns:minmax(0,1fr); }
 .visitor-inner.shiba-story-resources :is(.guide-chapters,.cards-3,.cards-2,.two-paths,.network-cards) { grid-template-columns:minmax(0,1fr); }
 .visitor-inner.shiba-story-resources .states-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .visitor-inner.shiba-story-resources .guide-feature { padding:var(--inner-pad); }
 .visitor-inner .service-shortcut { align-items:start; }
}
@media (prefers-reduced-motion:reduce) {
 .visitor-inner :is(.service-shortcut,.guide-list a,.guide-chapters a,.service-prep-card) { transition:none; transform:none; }
}
/* ====== Adoption process: complete policy wording in a readable sequence ====== */
.visitor-inner.adoption-process-page .page-hero { background:linear-gradient(145deg,var(--cream),var(--inner-wash)); }
.visitor-inner.adoption-process-page .page-hero h1 { max-width:26ch; }
.visitor-inner.adoption-process-page .legal-body > .container { max-width:1320px; }
.visitor-inner.adoption-process-page .legal-body > .container > p { max-width:72ch; margin-bottom:var(--inner-gap); font-size:var(--inner-h3); }
.visitor-inner .adoption-policy-steps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:var(--inner-pad); list-style:none; padding:0; margin:0; }
.visitor-inner .adoption-policy-steps > li { min-width:0; padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-top:var(--reading-accent) solid var(--sample-frame-green); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner .adoption-policy-steps > li:nth-child(4n+2),.visitor-inner .adoption-policy-steps > li:nth-child(4n+3) { background:var(--inner-sage); }
.visitor-inner.adoption-process-page .adoption-policy-steps h2 { display:flex; flex-direction:column; gap:var(--inner-small-pad); border:0; padding:0; margin:0 0 var(--inner-pad); font-size:var(--inner-h3); text-wrap:pretty; }
.visitor-inner .process-index { color:var(--terracotta-dark); font-family:var(--inner-font); font-size:var(--inner-label); font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.visitor-inner .process-title { line-height:1.4; }
.visitor-inner .adoption-policy-steps p { margin:0; max-width:none; font-size:var(--inner-body); }
.visitor-inner .process-followup-grid { display:grid; grid-template-columns:1fr 1fr; gap:var(--inner-pad); margin-top:var(--inner-gap); }
.visitor-inner .process-followup-card { padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-radius:var(--inner-radius); background:var(--inner-panel); min-width:0; }
.visitor-inner .process-followup-card:first-child { grid-column:1 / -1; border-left:var(--reading-accent) solid var(--sample-frame-green); background:var(--inner-sage); }
.visitor-inner.adoption-process-page .process-followup-card h2 { font-size:var(--inner-h3); border:0; padding:0; margin:0 0 var(--inner-small-pad); }
.visitor-inner .process-followup-card p { margin:0; }
.visitor-inner .process-next-step { display:flex; flex-wrap:wrap; gap:var(--inner-pad); align-items:center; padding-bottom:var(--inner-gap); }
/* ====== Rehoming comparison: scan terms, compare care, then inquire ====== */
.visitor-inner.shiba-story-surrender .tracks-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:stretch; gap:var(--inner-pad); max-width:none; }
.visitor-inner.shiba-story-surrender .track-card { display:flex; flex-direction:column; min-width:0; border-width:var(--reading-border); border-top:var(--reading-accent) solid var(--sample-frame-green); }
.visitor-inner.shiba-story-surrender .track-card:nth-child(2) { background:var(--inner-sage); }
.visitor-inner.shiba-story-surrender .track-eyebrow { color:var(--terracotta-dark); font-size:var(--inner-label); margin-bottom:var(--inner-small-pad); }
.visitor-inner.shiba-story-surrender .track-card h3 { font-size:var(--inner-h2); margin-bottom:var(--inner-pad); }
.visitor-inner.shiba-story-surrender .track-meta { display:grid; grid-template-columns:minmax(0,1fr); gap:var(--sample-space-1); padding:var(--inner-pad); margin:0 0 var(--inner-pad); border:var(--inner-border-width) solid var(--inner-border); border-radius:var(--sample-radius); background:var(--cream); }
.visitor-inner.shiba-story-surrender .track-meta dt { font-size:var(--inner-label); color:var(--terracotta-dark); text-transform:uppercase; letter-spacing:.08em; }
.visitor-inner.shiba-story-surrender .track-meta dd { margin:0 0 var(--inner-small-pad); color:var(--inner-ink); font-size:var(--inner-body); font-weight:600; }
.visitor-inner.shiba-story-surrender .track-meta dd:last-child { margin-bottom:0; }
.visitor-inner.shiba-story-surrender .track-card ul { padding-left:var(--inner-pad); margin:0 0 var(--inner-pad); }
.visitor-inner.shiba-story-surrender .track-card li { margin-bottom:var(--sample-space-1); }
.visitor-inner.shiba-story-surrender .track-card .best-for { padding:var(--inner-small-pad); border-left:var(--reading-accent) solid var(--sample-frame-green); font-size:var(--inner-caption); font-style:normal; }
.visitor-inner.shiba-story-surrender .track-inquiry-link { margin-top:auto; gap:var(--inner-small-pad); align-self:start; }
/* ====== Waitlist and adoption questions have distinct, easy-to-scan groups ====== */
.visitor-inner .waitlist-sequence { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--inner-pad); margin:0; padding:0; list-style:none; }
.visitor-inner .waitlist-sequence > li { min-width:0; padding:var(--inner-pad); border:var(--reading-border) solid var(--inner-border); border-top:var(--reading-accent) solid var(--sample-frame-green); border-radius:var(--inner-radius); background:var(--inner-panel); }
.visitor-inner .waitlist-sequence > li:nth-child(2) { background:var(--inner-sage); }
.visitor-inner .waitlist-sequence > li:nth-child(3) { background:var(--inner-blue); }
.visitor-inner .waitlist-sequence p { margin-bottom:0; }
.visitor-inner .journey-action-row { display:flex; align-items:center; flex-wrap:wrap; gap:var(--inner-pad); margin-top:var(--inner-pad); }
.visitor-inner .journey-action-row .btn { gap:var(--inner-small-pad); }
.visitor-inner :is(.adoption-faq-grid,.surrender-faq-grid) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-items:start; gap:var(--inner-small-pad); }
.visitor-inner :is(.adoption-faq-grid,.surrender-faq-grid) > details { width:100%; max-width:none; margin:0; padding:0; overflow:hidden; }
.visitor-inner :is(.adoption-faq-grid,.surrender-faq-grid) summary { min-height:var(--menu-button-height); padding:var(--inner-pad); gap:var(--inner-pad); font-size:var(--inner-body); line-height:1.5; }
.visitor-inner :is(.adoption-faq-grid,.surrender-faq-grid) :is(.vp-answer,.faq-body) { padding:0 var(--inner-pad) var(--inner-pad); font-size:var(--inner-body); }
.visitor-inner :is(.adoption-faq-grid,.surrender-faq-grid) .vp-answer p { margin-top:0; }
/* ====== Care-cost labels use the full card width instead of narrow nested columns ====== */
.visitor-inner .vp-cost-list > div { display:flex; flex-direction:column; gap:var(--inner-small-pad); }
.visitor-inner .vp-cost-list dt { font-family:var(--inner-display); font-size:var(--inner-h3); line-height:1.4; color:var(--inner-ink); }
.visitor-inner .vp-cost-list dd { font-size:var(--inner-body); line-height:1.65; }
/* ====== Comparison terms align by row wherever there is room ====== */
@media (min-width:701px) {
 .visitor-inner.shiba-story-surrender .track-meta { grid-template-columns:auto minmax(0,1fr); gap:var(--inner-small-pad) var(--inner-pad); align-items:start; }
 .visitor-inner.shiba-story-surrender .track-meta dd { margin:0; }
}
/* ====== Journey feedback respects the visitor's motion preference ====== */
.visitor-inner :is(.adoption-policy-steps > li,.waitlist-sequence > li,.track-inquiry-link) { transition:border-color var(--vr-motion),background-color var(--vr-motion); }
.visitor-inner .adoption-policy-steps > li:target { border-color:var(--sample-frame-green); }
@media (min-width:701px) and (max-width:1100px) {
 .visitor-inner .waitlist-sequence { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .visitor-inner .waitlist-sequence > li:last-child { grid-column:1 / -1; }
}
@media (max-width:700px) {
 .visitor-inner :is(.adoption-policy-steps,.process-followup-grid,.waitlist-sequence,.adoption-faq-grid,.surrender-faq-grid),.visitor-inner.shiba-story-surrender .tracks-grid { grid-template-columns:minmax(0,1fr); }
 .visitor-inner .adoption-policy-steps > li:nth-child(even) { background:var(--inner-sage); }
 .visitor-inner .adoption-policy-steps > li:nth-child(odd) { background:var(--inner-panel); }
 .visitor-inner .process-next-step { flex-direction:column; align-items:stretch; }
 .visitor-inner .process-next-step .service-inline-link { justify-content:center; }
 .visitor-inner .journey-action-row { flex-direction:column; align-items:stretch; }
}
@media (prefers-reduced-motion:reduce) { .visitor-inner :is(.adoption-policy-steps > li,.waitlist-sequence > li,.track-inquiry-link) { transition:none; } }

/* ====== Photo invitations connect each page to its next step ====== */
.visitor-inner .inner-hero-photo .photo-inquiry-caption { display:grid; gap:var(--inner-small-pad); padding:var(--inner-pad) var(--inner-small-pad) var(--inner-small-pad); font-size:var(--inner-body); }
.visitor-inner .photo-inquiry-caption strong { font-family:var(--inner-display); color:var(--inner-ink); font-size:var(--inner-h3); line-height:1.4; text-wrap:pretty; }
.visitor-inner .photo-inquiry-caption a { display:flex; align-items:center; justify-content:space-between; gap:var(--inner-small-pad); min-height:var(--inner-touch); padding:var(--inner-small-pad); border:var(--inner-border-width) solid var(--sample-frame-green); border-radius:var(--sample-radius); background:var(--inner-sage); font-weight:600; line-height:1.4; text-decoration:none; transition:background-color var(--vr-motion),border-color var(--vr-motion); }
.visitor-inner .photo-inquiry-caption a span { flex-shrink:0; }
.visitor-inner .photo-inquiry-caption a:focus-visible { outline:var(--reading-border) solid var(--terracotta-dark); outline-offset:var(--sample-frame-pad); }
.visitor-site .gallery-inquiry-link { display:block; width:fit-content; min-height:var(--inner-touch); margin-top:var(--inner-small-pad); font-weight:600; text-decoration:underline; text-underline-offset:var(--sample-frame-pad); }
@media (hover:hover) and (pointer:fine) { .visitor-inner .photo-inquiry-caption a:hover { background:var(--inner-panel); border-color:var(--terracotta-dark); } }
@media (prefers-reduced-motion:reduce) { .visitor-inner .photo-inquiry-caption a { transition:none; } }

/* ====== Message and error pages ====== */
.visitor-site main a.home-btn { display:inline-flex; align-items:center; min-height:48px; padding:0 26px; border-radius:var(--inner-radius); background:var(--terracotta-dark); color:var(--cream); text-decoration:none; font-weight:600; }
.visitor-site main a.home-btn:hover, .visitor-site main a.home-btn:focus-visible { background:var(--inner-ink); color:var(--cream); }
.visitor-site main .wrap h2 { font-size:clamp(1.4rem,2.4vw,1.9rem); }

/* ====== Launch polish, October 2026 ====== */
/* Wide content grids share the container edge with their headings. */
.visitor-inner main :is(.contact-grid,.book-grid,.why-grid,.subsvc-grid,.req-grid,.tracks-grid,.guide-chapters) { max-width:none; margin-inline:0; }
/* Reading blocks and tables start on the heading edge instead of floating in the middle. */
.visitor-inner main :is(.money-block,.day-list,.price-table,.explain,.warning-band,.softer,.story-inner) { margin-inline:0; }
.visitor-inner main :is(.reqs,.day-list) { max-width:none; margin-inline:0; }
/* Foster requirement numbers sit above the title, never on top of it. */
.visitor-inner .reqs > .req { padding-left:var(--inner-pad); }
.visitor-inner .reqs > .req::before { position:static; display:grid; }
/* Centered follow-up links under a centered pull quote. */
.visitor-inner main .breed-kicker + p, .visitor-inner main p[style*="text-align:center"] { margin-inline:auto; }
/* Notices keep a clear gap before the next heading or form. */
.visitor-inner main .legal-microcopy { margin-bottom:var(--inner-gap); }
/* Radio choices sit side by side when there is room. */
.visitor-inner .inquiry-form .field-radio, .visitor-inner .field-radio { display:grid; grid-template-columns:repeat(auto-fit,minmax(11rem,1fr)); gap:var(--inner-small-pad); }
.visitor-inner .field-radio > label { margin:0; }
/* Legal pages: readable section headings and no doubled gap under the title. */
.visitor-inner main .page-hero { padding-bottom:0; }
.visitor-inner main .page-hero + .legal-body, .visitor-inner main .page-hero + section { padding-top:var(--inner-gap); }
.visitor-inner main .legal-body h2 { font-size:clamp(1.35rem,2.2vw,1.75rem); margin-top:var(--inner-gap); }
.visitor-inner main .legal-body h3 { font-size:clamp(1.1rem,1.6vw,1.25rem); }
/* Buttons never carry the legacy link underline. */
.visitor-inner main a.btn { text-decoration:none; }
/* Touch targets for standalone links. */
.visitor-site main a.vp-text-link { display:inline-flex; align-items:center; min-height:44px; }
.visitor-site main :is(.vp-form-next > a, .vp-answer > a, .pack-contact-actions a, a.r-visit, a.back-link, a.post-back) { display:inline-flex; align-items:center; min-height:44px; }
.visitor-site main .sample-flow-actions > a { display:flex; align-items:center; min-height:44px; }
/* Small red labels on white need the darker terracotta for contrast. */
.visitor-site :is(.r-region,.post-cat) { color:var(--terracotta-dark); }
/* State guide cards fit the smallest phones. */
.visitor-inner .state-card { overflow-wrap:anywhere; }
@media (max-width:380px) { .visitor-inner .states-grid { grid-template-columns:minmax(0,1fr); } }
/* The legacy sticky bar is hidden on these pages, so it should not reserve space. */
body.visitor-site.has-sticky-cta { padding-bottom:0; }
@media (max-width:700px) {
 body.visitor-inner.has-sticky-cta { padding-bottom:var(--sample-mobile-bottom-space); }
 /* On phones the form comes first; contact details follow it. */
 .visitor-inner :is(.contact-grid,.book-grid) > form { order:-1; }
}

/* ====== Bold button system, October 2026 polish ====== */
/* One confident shape everywhere: tall, bold, squared corners, strong contrast, visible focus. */
.visitor-site {
 --btn-radius:.75rem;
 --btn-height:3.25rem;
 --btn-pad:1.75rem;
 --btn-shadow:0 10px 24px -10px rgba(168,65,46,.55);
 --btn-shadow-ink:0 10px 24px -10px rgba(37,63,59,.5);
}
.visitor-site .btn, .visitor-site a.btn-primary, .visitor-site a.btn-secondary, .visitor-site .btn-join,
.visitor-site main button[type="submit"], .visitor-site main a.home-btn, .visitor-site .guide-cta, .visitor-site .path-cta {
 min-height:var(--btn-height); padding:.65rem var(--btn-pad); border-radius:var(--btn-radius);
 font-family:var(--inner-font); font-weight:700; font-size:1rem; letter-spacing:.01em; line-height:1.2;
 border:2px solid transparent; text-decoration:none; gap:.6rem;
 transition:background-color .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
.visitor-site main .btn-primary, .visitor-site a.btn-primary, .visitor-site .btn-join, .visitor-site main button[type="submit"],
.visitor-site main a.home-btn, .visitor-site .guide-cta, .visitor-site .path-cta, .visitor-site .cta-bar .btn-primary {
 background:var(--terracotta-dark); border-color:var(--terracotta-dark); color:var(--cream) !important; box-shadow:var(--btn-shadow);
}
.visitor-site main .btn-primary:hover, .visitor-site a.btn-primary:hover, .visitor-site .btn-join:hover, .visitor-site main button[type="submit"]:hover,
.visitor-site main a.home-btn:hover, .visitor-site .guide-cta:hover, .visitor-site .path-cta:hover {
 background:var(--inner-ink); border-color:var(--inner-ink); color:var(--cream) !important; transform:translateY(-2px); box-shadow:var(--btn-shadow-ink);
}
.visitor-site main .btn-secondary, .visitor-site a.btn-secondary {
 background:transparent; border-color:var(--inner-ink); color:var(--inner-ink) !important; box-shadow:none;
}
.visitor-site main .btn-secondary:hover, .visitor-site a.btn-secondary:hover {
 background:var(--inner-ink); color:var(--cream) !important; transform:translateY(-2px); box-shadow:var(--btn-shadow-ink);
}
.visitor-site .btn:focus-visible, .visitor-site main button[type="submit"]:focus-visible, .visitor-site main a.home-btn:focus-visible {
 outline:3px solid var(--terracotta); outline-offset:3px;
}
.visitor-site .nav .btn-primary { min-height:2.75rem; padding:.5rem 1.25rem; box-shadow:none; }
/* Inline text links with arrows read as actions, not footnotes. */
.visitor-site main a.vp-text-link, .visitor-site main .journey-action-row a:not(.btn), .visitor-site main .inner-link-row a:not(.btn) {
 font-weight:700; text-decoration-thickness:2px; text-underline-offset:.3em;
}
/* The photo caption invitation becomes a real button. */
.visitor-site .photo-inquiry-caption a {
 display:inline-flex; align-items:center; justify-content:space-between; gap:.6rem; width:100%;
 min-height:var(--btn-height); padding:.65rem 1.25rem; border-radius:var(--btn-radius);
 background:var(--terracotta-dark); color:var(--cream) !important; font-weight:700; text-decoration:none; box-shadow:var(--btn-shadow);
}
.visitor-site .photo-inquiry-caption a:hover { background:var(--inner-ink); color:var(--cream) !important; }
@media (prefers-reduced-motion: reduce) {
 .visitor-site .btn, .visitor-site main button[type="submit"], .visitor-site main a.home-btn, .visitor-site main .btn-primary:hover, .visitor-site main .btn-secondary:hover { transition:none; transform:none; }
}

/* ====== Topic navigation as a labelled band ====== */
.visitor-site .vp-topic-nav {
 display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; padding:1rem 1.25rem; margin-block:1.5rem;
 border:2px solid var(--inner-ink); border-radius:var(--inner-radius); background:var(--inner-panel); border-bottom-width:2px;
}
.visitor-site .vp-topic-nav::before { content:"On this page"; font-size:var(--inner-label); font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--terracotta-dark); margin-right:.5rem; }
.visitor-site .vp-topic-nav a {
 display:inline-flex; align-items:center; min-height:2.75rem; padding:.35rem 1rem; border-radius:999px;
 border:1.5px solid var(--inner-border); background:var(--cream); color:var(--inner-ink) !important; font-weight:600; font-size:.95rem; text-decoration:none;
}
.visitor-site .vp-topic-nav a:hover, .visitor-site .vp-topic-nav a:focus-visible { background:var(--inner-ink); border-color:var(--inner-ink); color:var(--cream) !important; }

/* ====== About page photo header ====== */
.visitor-inner .about-hero .inner-hero-grid { grid-template-columns:1fr; gap:var(--inner-pad); }
.visitor-inner .about-hero .inner-hero-copy { max-width:62rem; }
.visitor-inner .about-hero .inner-hero-copy p { max-width:60ch; }
.visitor-inner .about-mosaic {
 display:grid; grid-template-columns:1.4fr 1fr .9fr; grid-template-rows:minmax(0,18rem) minmax(0,14rem); gap:var(--inner-small-pad);
 margin:var(--inner-pad) 0 0; padding:0; list-style:none;
}
.visitor-inner .about-mosaic figure { margin:0; position:relative; overflow:hidden; border-radius:var(--inner-radius); border:var(--inner-photo-width) double var(--sample-frame-green); background:var(--inner-panel); min-height:0; }
.visitor-inner .about-mosaic img { display:block; width:100%; height:100%; object-fit:cover; }
.visitor-inner .about-mosaic .mosaic-wide { grid-column:1; grid-row:1; }
.visitor-inner .about-mosaic .mosaic-tall { grid-column:2; grid-row:1 / span 2; border-color:var(--terracotta-dark); }
.visitor-inner .about-mosaic .mosaic-low { grid-column:1; grid-row:2; }
.visitor-inner .about-mosaic .mosaic-card {
 grid-column:3; grid-row:1 / span 2; display:flex; flex-direction:column; justify-content:flex-end; gap:.75rem; padding:var(--inner-pad);
 border-radius:var(--inner-radius); background:var(--inner-ink); color:var(--cream);
}
.visitor-inner .about-mosaic .mosaic-card .eyebrow { color:#f3c9b8; }
.visitor-inner .about-mosaic .mosaic-card h2 { font-family:var(--inner-display); font-size:1.5rem; line-height:1.15; margin:0; color:var(--cream); }
.visitor-inner .about-mosaic .mosaic-card p { margin:0; color:#d9e2df; font-size:.95rem; }
.visitor-inner .about-mosaic .mosaic-card a.btn { align-self:flex-start; margin-top:.5rem; }
.visitor-inner .about-mosaic figcaption { position:absolute; left:.75rem; bottom:.75rem; padding:.3rem .7rem; border-radius:999px; background:rgba(253,246,239,.92); color:var(--inner-ink); font-size:var(--inner-caption); font-weight:600; }
@media (max-width: 900px) {
 .visitor-inner .about-mosaic { grid-template-columns:1fr 1fr; grid-template-rows:14rem 12rem auto; }
 .visitor-inner .about-mosaic .mosaic-wide { grid-column:1 / span 2; grid-row:1; }
 .visitor-inner .about-mosaic .mosaic-tall { grid-column:1; grid-row:2; }
 .visitor-inner .about-mosaic .mosaic-low { grid-column:2; grid-row:2; }
 .visitor-inner .about-mosaic .mosaic-card { grid-column:1 / span 2; grid-row:3; }
}
@media (max-width: 560px) {
 .visitor-inner .about-mosaic { grid-template-columns:1fr; grid-template-rows:13rem 15rem 11rem auto; }
 .visitor-inner .about-mosaic .mosaic-wide, .visitor-inner .about-mosaic .mosaic-tall, .visitor-inner .about-mosaic .mosaic-low, .visitor-inner .about-mosaic .mosaic-card { grid-column:1; }
 .visitor-inner .about-mosaic .mosaic-tall { grid-row:2; }
 .visitor-inner .about-mosaic .mosaic-low { grid-row:3; }
 .visitor-inner .about-mosaic .mosaic-card { grid-row:4; }
}

/* ====== About story with a photo beside it ====== */
.visitor-inner .about-story-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:var(--inner-gap); align-items:stretch; }
.visitor-inner .about-story-aside { display:grid; grid-template-rows:auto 1fr; gap:var(--inner-small-pad); }
.visitor-inner .about-story-aside figure { margin:0; overflow:hidden; border-radius:var(--inner-radius); border:var(--inner-photo-width) double var(--sample-frame-green); background:var(--inner-panel); }
.visitor-inner .about-story-aside img { display:block; width:100%; height:100%; min-height:14rem; object-fit:cover; }
.visitor-inner .about-facts { margin:0; padding:0; list-style:none; display:grid; grid-template-columns:repeat(3,1fr); gap:var(--inner-small-pad); }
.visitor-inner .about-facts li { padding:1rem; border-radius:var(--inner-radius); border:2px solid var(--inner-ink); background:var(--inner-panel); }
.visitor-inner .about-facts strong { display:block; font-family:var(--inner-display); font-size:1.5rem; line-height:1; color:var(--terracotta-dark); margin-bottom:.35rem; }
.visitor-inner .about-facts span { font-size:var(--inner-caption); color:var(--inner-soft); font-weight:600; }
@media (max-width: 900px) {
 .visitor-inner .about-story-grid { grid-template-columns:1fr; }
}
@media (max-width: 480px) {
 .visitor-inner .about-facts { grid-template-columns:1fr; }
}
/* About hero alignment and photo fill */
.visitor-inner .about-hero .inner-hero-copy, .visitor-inner .about-hero .inner-hero-copy :is(h1,p,.eyebrow) { text-align:left; margin-left:0; margin-right:0; }
.visitor-inner .about-hero .inner-hero-copy h1 { max-width:14ch; }
.visitor-inner .about-hero .inner-hero-grid { align-items:start; }
.visitor-inner .about-hero .inner-actions { justify-content:flex-start; }
.visitor-inner main .about-mosaic figure, .visitor-inner main .about-story-aside figure { display:block; padding:0; }
.visitor-inner main .about-mosaic figure img, .visitor-inner main .about-story-aside figure img { width:100%; height:100%; max-height:none; min-height:100%; object-fit:cover; margin:0; border-radius:calc(var(--inner-radius) - 4px); }
.visitor-inner .about-story-aside { grid-template-rows:auto minmax(16rem,1fr); }
.visitor-inner .about-facts li { padding:.9rem .8rem; }
.visitor-inner .about-facts strong { font-size:1.35rem; }
.visitor-inner .about-facts span { font-size:.78rem; line-height:1.3; display:block; }
@media (max-width:700px) {
 .visitor-inner .about-hero .inner-actions { display:flex; }
 .visitor-inner .about-hero .inner-actions .btn { width:100%; }
}
.visitor-site .vp-topic-nav.container { box-sizing:border-box; width:calc(100% - 48px); max-width:1180px; margin-inline:auto; }
.visitor-inner main .about-mosaic .mosaic-card .eyebrow { color:#f3c9b8 !important; }
