/* V7 | three independently art-directed journeys. Real licensed media; not a business claim.
   Each route gets its own editorial composition; controls have true state. */
.v7-journey{box-sizing:border-box;position:relative;isolation:isolate;margin:clamp(62px,8vw,140px) 0;overflow:clip;--v7-ease:cubic-bezier(.2,.75,.22,1)}
.v7-journey *, .v7-journey *::before,.v7-journey *::after{box-sizing:border-box}
.v7-journey button,.v7-journey a{font:inherit}
.v7-journey button:focus-visible,.v7-journey a:focus-visible{outline:3px solid currentColor;outline-offset:5px}
.v7-head{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(220px,.65fr);align-items:end;gap:clamp(28px,5vw,100px);margin:0 auto;max-width:1400px;padding:0 clamp(20px,5vw,85px) clamp(35px,5vw,75px)}
.v7-overline{font-size:.73rem;line-height:1.6;letter-spacing:.19em;text-transform:uppercase;font-weight:800}
.v7-heading{font-size:clamp(2.75rem,6.2vw,7rem);line-height:.98;letter-spacing:-.055em;font-weight:650;margin:16px 0 0;max-width:14ch}
.v7-desc{font-size:clamp(.95rem,1.25vw,1.18rem);line-height:1.7;max-width:43ch;margin:0}
.v7-stage{position:relative;min-height:clamp(420px,56vw,760px);display:grid;grid-template-columns:minmax(0,1.17fr) minmax(350px,.83fr);overflow:clip}
.v7-scene{position:relative;overflow:hidden;min-height:470px}
.v7-scene::after{content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.62),transparent 45%)}
.v7-scene img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;transform:scale(1.01);transition:opacity .5s var(--v7-ease),transform 1.25s var(--v7-ease)}
.v7-scene[data-changing="true"] img{opacity:.34;transform:scale(1.06)}
.v7-scene-legend{position:absolute;bottom:clamp(24px,4vw,60px);left:clamp(22px,5vw,85px);right:24px;z-index:2;color:#fff;max-width:650px}
.v7-scene-legend small{display:block;font-weight:750;letter-spacing:.19em;font-size:.68rem;margin-bottom:13px;text-transform:uppercase}
.v7-scene-legend strong{display:block;font-size:clamp(2.25rem,4.8vw,5.9rem);line-height:.98;letter-spacing:-.055em;font-weight:700}
.v7-panel{display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-width:0;padding:clamp(30px,4.6vw,90px)}
.v7-panel-title{font-size:clamp(1.45rem,2.5vw,3.25rem);letter-spacing:-.035em;line-height:1.12;margin:20px 0}
.v7-panel-detail{font-size:clamp(.95rem,1.12vw,1.1rem);line-height:1.7;max-width:48ch;min-height:5em}
.v7-counter{display:flex;align-items:center;gap:20px;font-weight:800;font-size:.76rem;letter-spacing:.14em}
.v7-counter::after{content:"";height:2px;flex:1;max-width:160px;background:currentColor;opacity:.28}
.v7-choices{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0 30px}
.v7-choice{cursor:pointer;background:transparent;border:1px solid currentColor;padding:12px 18px;font-size:.84rem;font-weight:700;line-height:1.35;min-height:44px;transition:background .26s,color .26s,transform .26s var(--v7-ease)}
.v7-choice[aria-pressed="true"]{background:currentColor}
.v7-choice[aria-pressed="true"] span{filter:invert(1)}
.v7-choice:hover{transform:translateY(-2px)}
.v7-next{display:inline-flex;align-items:center;justify-content:center;min-height:48px;text-decoration:none;padding:14px 24px;font-size:.86rem;font-weight:750;width:fit-content;border:2px solid currentColor}
.v7-disclosure{font-size:.69rem;line-height:1.6;max-width:48ch;margin:24px 0 0;opacity:.84}
.v7-meter{position:absolute;z-index:3;bottom:0;left:0;height:5px;width:100%;background:rgba(255,255,255,.23);pointer-events:none}
.v7-meter::before{content:"";display:block;background:currentColor;width:var(--v7-fill,33.333%);height:100%;transition:width .45s var(--v7-ease)}
/* A: photographic archival edition; warm quiet folio with scene-specific original image. */
.v7-journey--lineage-house{background:#ede7dc;color:#492b28}
.v7-journey--lineage-house .v7-heading{font-family:Georgia,serif;font-weight:400;letter-spacing:-.065em}
.v7-journey--lineage-house .v7-stage{grid-template-columns:minmax(0,1.28fr) minmax(340px,.72fr)}
.v7-journey--lineage-house .v7-panel{background:#eee7db;border-left:1px solid #c3b09a}
.v7-journey--lineage-house .v7-panel::before{content:"THE LIVING ARCHIVE / REFERENCE EDITION";font:700 .62rem/1.6 Arial,sans-serif;letter-spacing:.2em;border-top:1px solid #b7a592;padding-top:18px;max-width:350px}
.v7-journey--lineage-house .v7-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.v7-journey--lineage-house .v7-choice{border:0;border-bottom:1px solid currentColor;padding:14px 8px;text-align:left}
.v7-journey--lineage-house .v7-scene img{object-position:42% 42%}
.v7-journey--lineage-house .v7-scene-legend strong{font-family:Georgia,serif;font-weight:400;font-style:italic}
/* B: calm but vivid realistic pet-care passage; broad image then soft framed consultation. */
.v7-journey--paw-prairie{background:#edf4fa;color:#153b86;border-radius:0 80px 0 0}
.v7-journey--paw-prairie .v7-head{padding-top:clamp(36px,5vw,72px)}
.v7-journey--paw-prairie .v7-heading{font-size:clamp(2.75rem,4.1vw,5rem);max-width:18ch}
.v7-journey--paw-prairie .v7-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.v7-journey--paw-prairie .v7-scene{border-radius:0 140px 0 0}
.v7-journey--paw-prairie .v7-panel{background:#153b86;color:#fff}
.v7-journey--paw-prairie .v7-choice{border-color:rgba(255,255,255,.6);border-radius:999px}
.v7-journey--paw-prairie .v7-choice[aria-pressed="true"]{background:#f8d262;color:#153b86;border-color:#f8d262}
.v7-journey--paw-prairie .v7-choice[aria-pressed="true"] span{filter:none}
.v7-journey--paw-prairie .v7-next{color:#153b86;background:#f8d262;border-color:#f8d262}
.v7-journey--paw-prairie .v7-scene-legend strong{font-size:clamp(2rem,4.3vw,4.75rem)}
/* C: industrial large-stage split with sharp line geometry and heavy freight language. */
.v7-journey--linehaul{background:#171e20;color:#f4f3ed;border-top:8px solid #ff6a38}
.v7-journey--linehaul .v7-head{max-width:none;padding-top:clamp(35px,5vw,70px)}
.v7-journey--linehaul .v7-heading{font-family:Impact,'Arial Narrow',sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.025em;max-width:17ch}
.v7-journey--linehaul .v7-stage{grid-template-columns:minmax(0,1.4fr) minmax(330px,.6fr)}
.v7-journey--linehaul .v7-scene img{filter:saturate(.74) contrast(1.18)}
.v7-journey--linehaul .v7-scene::after{background:linear-gradient(90deg,rgba(0,0,0,.18),transparent 65%),linear-gradient(0deg,rgba(0,0,0,.72),transparent 58%)}
.v7-journey--linehaul .v7-scene-legend strong{font-family:Impact,'Arial Narrow',sans-serif;font-weight:900;text-transform:uppercase}
.v7-journey--linehaul .v7-panel{background:#242d31;border-left:1px solid #536064}
.v7-journey--linehaul .v7-overline,.v7-journey--linehaul .v7-counter{color:#ff925b}
.v7-journey--linehaul .v7-choice{border-color:#68767b;text-transform:uppercase;letter-spacing:.07em}
.v7-journey--linehaul .v7-choice[aria-pressed="true"]{background:#ff6a38;color:#151a1d;border-color:#ff6a38}
.v7-journey--linehaul .v7-choice[aria-pressed="true"] span{filter:none}
.v7-journey--linehaul .v7-next{background:#ff6a38;border-color:#ff6a38;color:#141a1d}
.v7-journey--linehaul .v7-meter{color:#ff6a38}
/* Interior chapters vary their scale. No repetitive page skeleton. */
.v7-journey[data-v7-route$="care.html"],.v7-journey[data-v7-route$="arrival-guide.html"]{margin-top:36px}
.v7-journey[data-v7-route$="standards.html"] .v7-stage,.v7-journey[data-v7-route$="solutions.html"] .v7-stage{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}
.v7-journey[data-v7-route$="standards.html"] .v7-scene,.v7-journey[data-v7-route$="solutions.html"] .v7-scene{grid-column:2;grid-row:1}
.v7-journey[data-v7-route$="standards.html"] .v7-panel,.v7-journey[data-v7-route$="solutions.html"] .v7-panel{grid-column:1;grid-row:1}
@media(max-width:1000px){.v7-head{grid-template-columns:1fr;gap:20px}.v7-heading{max-width:19ch}.v7-stage,.v7-journey--lineage-house .v7-stage,.v7-journey--paw-prairie .v7-stage,.v7-journey--linehaul .v7-stage,.v7-journey[data-v7-route$="standards.html"] .v7-stage,.v7-journey[data-v7-route$="solutions.html"] .v7-stage{grid-template-columns:minmax(0,1fr)}.v7-scene,.v7-journey[data-v7-route$="standards.html"] .v7-scene,.v7-journey[data-v7-route$="solutions.html"] .v7-scene{grid-column:1;grid-row:1;min-height:430px}.v7-panel,.v7-journey[data-v7-route$="standards.html"] .v7-panel,.v7-journey[data-v7-route$="solutions.html"] .v7-panel{grid-column:1;grid-row:2;padding:38px 6vw}.v7-panel-detail{min-height:0}}
@media(max-width:760px){.v7-journey{margin:42px 0 65px}.v7-journey--paw-prairie{border-radius:0 44px 0 0}.v7-head{padding:30px 20px 34px}.v7-heading{font-size:clamp(2.4rem,11vw,4.5rem)}.v7-scene{min-height:340px}.v7-scene-legend{left:20px;right:20px;bottom:30px}.v7-scene-legend strong{font-size:clamp(2.1rem,9vw,3.8rem)}.v7-panel{padding:32px 20px}.v7-journey--lineage-house .v7-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.v7-choice{padding:11px}.v7-panel-title{margin:14px 0}.v7-desc{font-size:1rem}}
@media(prefers-reduced-motion:reduce){.v7-journey *, .v7-journey *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important;transform:none!important}}
/* The subtle scroll-linked image scale is progressive only and never required for comprehension. */
@supports (animation-timeline:view()){.v7-scene img{animation:v7-reveal-image linear both;animation-timeline:view();animation-range:entry 0% exit 100%}}
@keyframes v7-reveal-image{from{transform:scale(1.08)}to{transform:scale(1.01)}}
@media(prefers-reduced-motion:reduce){.v7-scene img{animation:none!important}}


/* Interior visual stage escapes the form's narrow measure, giving the story the full canvas. */
.tool-page>.v7-journey{position:relative;left:50%;width:min(100vw,1800px);max-width:none;transform:translateX(-50%)}
/* Crossfade on deliberate chapter changes, never an autoplay loop. */
.v7-scene img.v7-leaving{z-index:1;pointer-events:none;animation:v7-photo-out .57s ease-out both!important;animation-timeline:auto!important;will-change:opacity}
@keyframes v7-photo-out{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.v7-scene img.v7-leaving{display:none!important;animation:none!important}}

/* Keep the long veterinary-service headline readable without breaking a word. */
@media(max-width:760px){.v7-journey--paw-prairie .v7-heading{font-size:clamp(2.2rem,9vw,3.6rem)}}
