/* Expressive editorial cards, clear touch targets, restrained motion. */
:root{--ink:#182240;--blue:#294be8;--blue-dark:#1733b2;--paper:#fff;--canvas:#edf0ff;--yellow:#ffdf58;--line:#d6ddf0;color:var(--ink);background:var(--canvas)}
body{background:var(--canvas)}
header{max-width:1320px;height:96px;padding:22px 36px}.brand{color:var(--ink);gap:10px;font-size:36px;letter-spacing:-2px}.brand-icon{font-size:25px;background:var(--yellow);width:45px;height:45px;border-radius:15px;display:grid;place-items:center;transform:rotate(-8deg)}.badge{border:0;color:#53607d;font-size:14px;padding:0}.headright{gap:24px}#language{border:1.5px solid var(--line);border-radius:99px;font-size:16px;padding:12px 17px;min-height:48px}
main{max-width:1248px;margin:14px auto 48px;padding:0 20px}.shell{border:0;border-radius:32px;box-shadow:none;grid-template-columns:310px minmax(0,1fr);min-height:720px;overflow:visible;background:transparent;gap:22px}.companion{border-radius:30px;overflow:hidden;background:var(--blue);padding:30px 26px;align-self:start;min-height:660px}.companion h2{font-size:36px;line-height:1.12;margin:28px 0 0;letter-spacing:-1.5px}.companion .eyebrow{font-size:12px;color:#ebefff}.mascot{width:calc(100% + 52px);margin:8px -26px 0;border-radius:0;aspect-ratio:1;object-fit:cover;mix-blend-mode:normal;height:auto}.guide-bubble{position:relative;display:flex;align-items:flex-start;gap:12px;background:var(--yellow);color:var(--ink);padding:18px;border-radius:20px 20px 20px 4px;margin-top:4px;transform:rotate(-2deg)}.guide-bubble>span{font-size:24px}.guide-bubble p{font-size:16px;line-height:1.5;color:var(--ink);margin:0}.art-caption{font-size:14px;line-height:1.5!important;margin:20px 0 0!important;color:white!important}.work{background:white;border-radius:30px;padding:34px 40px;min-width:0}.work h1{font-size:clamp(30px,3vw,42px);line-height:1.16;letter-spacing:-1.3px;max-width:750px;color:var(--ink)}h1:focus{outline:none}.sub{color:#52617d;font-size:17px;line-height:1.6;margin-bottom:20px}.welcome-shell{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:0;background:white;border-radius:34px;overflow:hidden;min-height:660px}.welcome-art{order:2;border-radius:0;align-self:stretch;min-height:0;padding:28px 30px}.welcome-art h2{display:none}.welcome-art .mascot{width:calc(100% + 60px);margin:5px -30px -28px}.welcome-art .guide-bubble{max-width:360px;margin:0 auto;transform:rotate(-4deg)}.welcome-art .art-caption{text-align:center;margin-top:26px!important}.welcome-shell .intro{order:1;padding:48px 44px;display:flex;justify-content:center;border-radius:0}.intro-label{font-size:13px;font-weight:800;letter-spacing:1.6px;margin-bottom:26px;color:var(--blue)}.intro h1{font-size:clamp(42px,4.8vw,66px);line-height:1.04;letter-spacing:-3px;margin-bottom:25px}.intro .sub{max-width:410px;font-size:18px}.facts{gap:8px;margin:2px 0 25px}.facts span{background:#f1f3ff;font-size:14px;padding:9px 11px;font-weight:600}.start-button{width:100%;display:flex;justify-content:space-between;align-items:center;font-size:18px;min-height:62px}.start-button>span{font-size:28px}.primary{border:2px solid var(--blue);border-radius:17px;box-shadow:0 4px 0 var(--blue-dark);background:var(--blue);min-height:54px;padding:14px 23px;font-size:16px;font-weight:800;transition:transform .15s,box-shadow .15s,background .15s}.primary:hover{background:var(--blue-dark);border-color:var(--blue-dark)}.primary:active{transform:translateY(3px);box-shadow:0 1px 0 var(--blue-dark)}.primary:disabled{border-color:#d9deeb;color:#65728c;background:#e4e8f1;box-shadow:none}.yellow{background:var(--yellow);border-color:var(--yellow);color:var(--ink);box-shadow:0 4px 0 #d2ad20}.yellow:hover{background:#ffe779;border-color:#ffe779}.family-hint{font-size:14px;line-height:1.6;color:#52617d;margin:22px 0 0}.intro-info{font-size:14px;margin:18px 0 0;color:#52617d;line-height:1.65}.intro-info summary{cursor:pointer;color:var(--ink);font-weight:700;padding:5px 0}.intro-info p{margin:14px 0 0}.chapters{display:flex;justify-content:space-between;gap:6px;padding:0 0 28px}.chapter-step{display:flex;align-items:center;gap:7px;color:#5d6982;font-size:13px;font-weight:700}.chapter-step b{display:grid;place-items:center;border-radius:50%;width:28px;height:28px;background:#f0f2f9;font-size:13px;flex-shrink:0}.chapter-step.current{color:var(--blue)}.chapter-step.current b{background:var(--yellow);color:var(--ink);box-shadow:0 0 0 3px #fff7cf}.chapter-step.complete b{background:var(--blue);color:white}.topline{font-weight:800;color:var(--blue);font-size:14px}.step-total{font-weight:500;color:#66728b}.progress{height:9px;margin:12px 0 30px;background:#e9edfb;border-radius:99px}.progress div{background:var(--blue);border-radius:99px;transition:width .25s ease}.question-content{flex:1}.answer-hint{font-size:14px;color:#5d6982;font-weight:600;margin:0 0 12px}.choices{gap:12px;margin:0 0 18px}.choice{position:relative;display:grid;grid-template-columns:40px 1fr 24px;align-items:center;gap:12px;min-height:104px;padding:18px 15px;border:2px solid #e0e4f0;border-radius:20px;box-shadow:0 3px 0 #e0e4f0;background:white;color:var(--ink);font-size:16px;line-height:1.4;font-weight:700;transition:transform .16s,background .16s,border-color .16s;touch-action:manipulation}.choice .ico{display:grid;place-items:center;font-size:30px;width:40px}.choice-marker{display:grid;place-items:center;width:24px;height:24px;border:1.5px solid #d7ddef;border-radius:50%;color:#71809b;font-size:16px}.choice.selected{padding:18px 15px;background:#eef1ff;border:2px solid var(--blue);box-shadow:0 3px 0 var(--blue);color:var(--blue-dark)}.choice.selected .choice-marker{background:var(--blue);color:white;border-color:var(--blue)}.choice:active{transform:translateY(2px)}@media(hover:hover){.choice:hover{transform:translateY(-2px);background:#f6f7ff;border-color:#b1bcf1}.choice.selected:hover{border-color:var(--blue)}}.question-help{font-size:14px;color:#53607a;line-height:1.65;margin-top:16px}.question-help summary{cursor:pointer;min-height:44px;padding:12px 0;font-weight:700}.question-help p{margin:0 0 12px}.bottom{padding:22px 0 4px;margin-top:16px;border-top:1px solid #e5e9f5;gap:12px;flex-wrap:wrap}.bottom .primary{margin-left:auto;min-width:160px}.back{padding:14px 8px;min-height:48px;font-size:16px;color:#4f5b78}.return-results{width:100%;text-align:right;font-size:14px}.select-label{display:block;font-weight:700;margin:14px 0 8px;font-size:16px}#favorite-breed{width:100%;min-height:58px;border:2px solid #cdd6ee;font-size:16px;border-radius:16px;padding:14px}.outline{border:2px solid var(--line);border-radius:16px;font-size:16px;min-height:48px}.result-wrap{background:transparent;border-radius:0;padding:16px 0}.result-top .eyebrow{font-size:13px}.result-wrap>h1{font-size:clamp(32px,4.5vw,54px);line-height:1.12;letter-spacing:-1.8px;max-width:880px;margin:24px 0 18px}.result-wrap>.sub{max-width:820px;font-size:18px}.result-grid{gap:18px;align-items:start}.dogcard{border:0;border-radius:25px;padding:25px;background:white;box-shadow:0 5px 0 #d9dff3;overflow:hidden}.dogcard:first-child{border:0}.rank{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:0!important;color:var(--blue)}.option-number{background:var(--yellow);border-radius:12px;display:grid;place-items:center;width:38px;height:38px;font-size:16px;flex-shrink:0}.dogcard:nth-child(2) .option-number{background:#dce8ff}.dogcard:nth-child(3) .option-number{background:#ffdce6}.dogcard h2{font-size:28px;letter-spacing:-.8px;margin:20px 0 6px}.latin{font-size:14px;color:#56627c}.pill{font-size:14px;padding:8px 12px;border-radius:99px;background:#edf1ff;color:var(--blue-dark)}.dogcard h3{font-size:16px;font-weight:800;margin:20px 0 8px}.dogcard p,.dogcard li,.breed-details dd{font-size:16px;line-height:1.6;color:#4c5c78}.dogcard .group-label{font-size:14px;color:var(--blue-dark);font-weight:700;margin-bottom:0}.dogcard .textbutton{border-top:1px solid var(--line);padding:16px 0 0;margin-top:20px;font-size:16px}.match-reasons{margin:16px 0 0;color:#4c5c78}.match-reasons summary{font-size:15px;line-height:1.5;font-weight:700;cursor:pointer;padding:10px 0}.match-reasons li{margin:8px 0}.profile-summary{border-top:2px solid #eef1fa;margin:20px 0 0;padding-top:2px}.strength-list{list-style:none;padding:0!important}.strength-list li{padding:8px 0 8px 20px;position:relative}.strength-list li:before{content:'+';position:absolute;left:0;color:var(--blue);font-weight:800}.life-fact{display:flex;gap:12px;background:#f1f4ff;border-radius:16px;padding:16px;margin:18px 0}.life-fact>span{font-size:26px;color:var(--blue)}.life-fact strong{font-size:14px;color:var(--ink)}.life-fact p{font-size:15px!important;line-height:1.6;margin:7px 0 0}.life-fact a{color:var(--blue-dark)}.fact-fold{border-bottom:1px solid var(--line)}.fact-fold summary{cursor:pointer;padding:16px 0;font-weight:800;font-size:16px;color:var(--ink);line-height:1.5}.fact-fold summary>span{font-size:20px;color:var(--blue);margin-right:4px}.fact-fold h4{font-size:15px;margin:12px 0 6px}.fact-fold p{margin:8px 0 16px}.footnote,.dogcard .footnote{font-size:14px;line-height:1.6;color:#596781}.breed-details{margin:18px 0 0}.breed-details summary{font-size:15px;min-height:44px;padding:10px 0}.breed-details dt{font-size:15px}.panel{border-radius:22px;background:white;padding:26px}.panel h2{font-size:26px;letter-spacing:-.6px;line-height:1.25}.panel h3{font-size:23px;line-height:1.25}.panel p,.panel li{font-size:16px;line-height:1.65}.panel .profile-summary{max-width:780px}.panel .profile-summary h3{font-size:17px}.conditional-card,.review-card{padding:24px 0}.conditional-card h3,.review-card h3{margin-top:18px}.previewnote{background:#e3e9fb;color:#4a5c79;font-size:14px;line-height:1.7;border-radius:20px}.decision{background:#e1e8ff;border:0;border-left:4px solid var(--blue);border-radius:20px;padding:25px}.compare{background:white;border-radius:20px}td,th{font-size:15px}.skip-link{position:absolute;top:-100px;left:20px;background:var(--yellow);padding:12px 20px;color:var(--ink);z-index:10;border-radius:10px}.skip-link:focus{top:10px}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #172345;outline-offset:4px}.fade{animation:appear .2s ease}.question-help[open],.fact-fold[open]{padding-bottom:8px}
@media(min-width:1400px){main{margin-top:20px}.welcome-shell{min-height:700px}.welcome-shell .intro{padding:55px}}
@media(max-width:1100px){.shell{grid-template-columns:260px minmax(0,1fr);gap:18px}.companion{padding:25px 22px}.mascot{width:calc(100% + 44px);margin-left:-22px;margin-right:-22px}.companion h2{font-size:31px}.work{padding:30px}.chapter-step{font-size:12px;gap:5px}.chapter-step b{width:25px;height:25px}.welcome-shell{grid-template-columns:1.1fr .9fr;gap:0}.welcome-shell .intro{padding:36px}.welcome-art .mascot{width:calc(100% + 44px);margin:10px -22px 0}.intro h1{font-size:51px}.choice{grid-template-columns:32px 1fr 22px;gap:8px;font-size:16px}.choice .ico{width:32px;font-size:27px}.result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){header{padding:18px 22px;height:82px}.badge{display:none}main{padding:0 14px;margin:6px auto 30px}.shell{grid-template-columns:1fr;gap:12px;min-height:0}.quiz-shell .companion{min-height:0;padding:16px 20px;border-radius:20px;display:flex;flex-direction:row;align-items:center;gap:14px}.quiz-shell .companion .eyebrow,.quiz-shell .companion h2,.quiz-shell .art-caption{display:none}.quiz-shell .mascot{position:static;margin:0;width:62px;height:62px;border-radius:16px;flex-shrink:0}.quiz-shell .guide-bubble{background:none;transform:none;padding:0;margin:0}.quiz-shell .guide-bubble>span{display:none}.quiz-shell .guide-bubble p{color:white;font-size:14px;line-height:1.5;display:block}.work{padding:26px;border-radius:24px;min-height:0}.chapters{padding-bottom:22px}.chapter-step{font-size:13px;gap:6px}.progress{margin-bottom:24px}.work h1{font-size:33px}.choices{margin-top:0}.bottom{background:white;position:sticky;bottom:0;z-index:2;padding:16px 0 max(12px,env(safe-area-inset-bottom));margin-top:18px}.quiz-work{padding-bottom:0}.welcome-shell{gap:0;display:grid;grid-template-columns:1fr}.welcome-art{order:0;min-height:152px;padding:18px 20px;border-radius:0;display:flex;align-items:center;gap:18px}.welcome-art .eyebrow,.welcome-art .art-caption{display:none}.welcome-art .mascot{position:static;margin:-18px 0;width:145px;height:152px;border-radius:0;order:2;flex-shrink:0}.welcome-art .guide-bubble{transform:none;padding:14px;max-width:none;margin:0;border-radius:17px 17px 4px 17px;order:1}.welcome-art .guide-bubble p{font-size:15px;color:var(--ink);display:block}.welcome-art .guide-bubble>span{display:none}.welcome-shell .intro{padding:30px;min-height:0}.intro h1{font-size:45px;letter-spacing:-2px}.intro-label{margin-bottom:18px}.intro .sub{font-size:17px;max-width:500px}.facts{margin-bottom:22px}.result-wrap{padding:12px 4px}.result-wrap h1{font-size:38px;letter-spacing:-1.2px}.result-top .outline{font-size:14px;padding:10px 12px;flex-shrink:0}.result-top{gap:14px}.result-grid{grid-template-columns:1fr}.dogcard{padding:24px}.dogcard h2{font-size:30px}.result-wrap>.sub{font-size:16px}.day{grid-template-columns:1fr}.panel{padding:22px}.result-grid:has(>.dogcard:only-child){grid-template-columns:1fr}}
@media(max-width:430px){header{padding:15px 18px;height:76px}.brand{font-size:30px}.brand-icon{width:38px;height:38px;font-size:22px;border-radius:12px}#language{font-size:14px;min-height:44px;padding:10px 12px}main{padding:0 10px}.work{padding:23px 19px}.quiz-work{padding-bottom:0}.work h1{font-size:29px;letter-spacing:-.8px}.sub{font-size:16px}.choices{grid-template-columns:1fr}.choices.many-options{grid-template-columns:repeat(2,minmax(0,1fr))}.choice{min-height:76px;padding:15px 14px;grid-template-columns:35px 1fr 24px}.choice.selected{padding:15px 14px}.many-options .choice{grid-template-columns:1fr 24px;gap:6px;min-height:92px;padding:13px}.many-options .choice.selected{padding:13px}.many-options .ico{display:none}.choice-label{font-size:16px}.chapters{gap:8px}.chapter-step>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.chapter-step{flex:1}.chapter-step b{width:100%;height:26px;border-radius:9px}.topline{font-size:13px}.quiz-shell .companion{padding:12px 16px;gap:10px}.quiz-shell .mascot{width:52px;height:52px}.bottom{gap:8px}.bottom .primary{padding:14px 16px;min-width:140px}.welcome-shell .intro{padding:26px 22px}.intro h1{font-size:41px;letter-spacing:-1.7px}.welcome-art{padding:14px 16px;min-height:130px;gap:8px}.welcome-art .mascot{width:112px;height:134px;margin:-14px 0}.welcome-art .guide-bubble{padding:12px}.welcome-art .guide-bubble p{font-size:14px}.intro-label{font-size:12px;margin-bottom:16px}.result-wrap>h1{font-size:33px}.result-top .eyebrow{font-size:11px;letter-spacing:1px}.dogcard{padding:22px}.panel h2{font-size:24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.choice:hover,.choice:active,.primary:active{transform:none}}

@media(hover:hover) and (prefers-reduced-motion:no-preference){.welcome-art .mascot{transition:transform .4s ease}.welcome-art:hover .mascot{transform:rotate(2deg) scale(1.025)}}
/* Compact questionnaire: keep every answer discoverable on a phone. */
.quiz-shell .companion{display:none}.quiz-shell{display:block;max-width:780px;margin:0 auto;min-height:0}.quiz-work{padding:24px 30px 12px;min-height:0}.quiz-work .chapters{padding-bottom:14px}.quiz-work .progress{height:7px;margin:9px 0 18px}.quiz-work h1{font-size:30px;line-height:1.18;margin-bottom:10px}.quiz-work .sub{font-size:16px;line-height:1.45;margin-bottom:12px}.quiz-work .answer-hint{margin-bottom:8px}.quiz-work .choices{gap:9px}.quiz-work .choice,.quiz-work .choice.selected{min-height:65px;padding:11px 13px;border-radius:14px;grid-template-columns:30px 1fr 22px;font-size:16px;box-shadow:0 2px 0 #dce2f0}.quiz-work .choice.selected{box-shadow:0 2px 0 var(--blue)}.quiz-work .ico{font-size:24px;width:30px}.quiz-work .choice-marker{width:22px;height:22px}.quiz-work .question-help{margin-top:4px}.quiz-work .question-help summary{min-height:40px;padding:9px 0}.quiz-work .bottom{margin-top:6px;padding-top:12px}.breed-photo{margin:0 0 20px}.breed-photo img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:17px;background:#e8edfa}.breed-photo figcaption{font-size:12px;line-height:1.45;color:#5b6880;margin-top:7px}.breed-photo figcaption a{color:#4c5da0}.conditional-card .breed-photo,.review-card .breed-photo{max-width:360px}.photo-unavailable{background:#edf1fb;padding:24px;border-radius:16px;line-height:1.5}
@media(max-width:800px){.quiz-work{padding:20px 22px 0}.quiz-work .bottom{padding-bottom:max(12px,env(safe-area-inset-bottom))}.quiz-work h1{font-size:28px}}
@media(max-width:430px){header{height:66px;padding-top:10px;padding-bottom:10px}.quiz-work{padding:17px 16px 0}.quiz-work .chapters{padding-bottom:10px}.quiz-work h1{font-size:25px;line-height:1.15}.quiz-work .sub{font-size:15px;line-height:1.4;margin-bottom:10px}.quiz-work .choices,.quiz-work .choices.many-options{grid-template-columns:1fr;gap:8px;margin-bottom:6px}.quiz-work .choice,.quiz-work .choice.selected,.quiz-work .many-options .choice,.quiz-work .many-options .choice.selected{grid-template-columns:26px 1fr 20px;min-height:49px;padding:9px 10px;gap:9px}.quiz-work .many-options .ico{display:grid}.quiz-work .choice-label{font-size:15px;line-height:1.3}.quiz-work .ico{width:26px;font-size:22px}.quiz-work .choice-marker{width:20px;height:20px;font-size:14px}.quiz-work .progress{margin-bottom:15px}.quiz-work .bottom{padding-top:9px}.quiz-work .bottom .primary{min-height:48px;padding:11px 16px}.quiz-work .back{min-height:44px;padding:11px 4px}.quiz-work .question-help summary{padding:8px 0;min-height:36px}.quiz-work .answer-hint{font-size:13px}.quiz-work .topline{font-size:12px}}
@media(max-width:430px) and (max-height:730px){.quiz-work .chapters{display:none}.quiz-work h1{font-size:23px}.quiz-work .choice,.quiz-work .choice.selected,.quiz-work .many-options .choice,.quiz-work .many-options .choice.selected{min-height:46px;padding:8px 10px}.quiz-work .sub{margin-bottom:7px}}

.breed-photo img{object-fit:contain;background:white}.result-wrap>.panel>.breed-photo{max-width:360px}

@media(max-width:430px){.quiz-work .choices.numeric-options{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-work .numeric-options .choice,.quiz-work .numeric-options .choice.selected{grid-template-columns:1fr 20px;min-height:49px}.quiz-work .numeric-options .ico{display:none}}

.exploration-card{margin-top:24px;padding-top:20px;border-top:2px solid var(--line,#d8def0)}
.exploration-card .result-actions{gap:8px;flex-wrap:wrap}.exploration-card .outline{font-size:14px;min-height:44px;padding:8px 12px}

/* A photo wall for discovery; a compact, answer-driven meeting journey. */
.welcome-shell{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);min-height:0;align-items:stretch}
.dog-gallery{order:2;padding:28px;background:#304be7;color:white;min-width:0;overflow:hidden;position:relative}
.gallery-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:800;letter-spacing:1px;margin-bottom:20px}.gallery-heading>span:last-child{color:#ffe364;font-size:30px}
.dog-mosaic{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:start;padding:5px}
.mosaic-dog{margin:0;background:white;border-radius:18px;padding:7px;color:#192443;box-shadow:0 7px 0 #1934ae;transition:transform .2s;min-width:0}
.mosaic-dog img{display:block;width:100%;height:auto;aspect-ratio:1/1.2;object-fit:contain;background:white;border-radius:12px}
.mosaic-dog figcaption{padding:8px 4px 5px;line-height:1.25}.mosaic-dog strong{display:block;font-size:14px}.mosaic-dog figcaption span{display:inline-block;font-size:12px;color:#56627e;margin-top:5px}
.dog-0{transform:rotate(-5deg);margin-top:16px}.dog-1{transform:rotate(3deg)}.dog-2{transform:rotate(5deg);margin-top:18px}.dog-3{transform:rotate(-3deg)}.dog-4{transform:rotate(4deg);margin-top:12px}.dog-5{transform:rotate(-4deg)}
.gallery-footer{display:flex;align-items:center;gap:14px;margin:24px 4px 12px}.gallery-footer>span{font-size:38px;color:#ffe364}.gallery-footer p{font-size:18px;font-weight:700;line-height:1.35;color:white;margin:0}.gallery-credits{font-size:12px;line-height:1.5;color:#e4e9ff}.gallery-credits summary{cursor:pointer;min-height:28px}.gallery-credits a{color:white}
.friendship-journey{margin:13px 0 17px;background:#f0f3ff;border-radius:18px;padding:10px 14px 8px}.journey-labels{display:flex;justify-content:space-between;font-size:13px;font-weight:700;color:#3447b1}.journey-lane{height:48px;position:relative;margin:0 8px 0 0}.journey-track{position:absolute;left:20px;right:28px;top:26px;border-top:3px dashed #bdc7f2}.journey-traveller{position:absolute;left:calc(var(--journey) * (100% - 100px));top:8px;animation:journey-walk .55s ease-out both;z-index:2}.journey-traveller>span{display:grid;place-items:center;width:38px;height:38px;border:3px solid #233dc8;background:#ffe365;color:#192443;border-radius:50%;font-size:29px;line-height:1}.journey-dog{position:absolute;right:0;top:0;width:52px;height:52px;object-fit:cover;border-radius:50%;border:3px solid white;background:#304be7}.journey-heart{position:absolute;right:59px;top:14px;color:#df4775;font-size:24px}.journey-caption{font-size:12px!important;line-height:1.35!important;margin:5px 0 0!important;color:#53617e!important}
@keyframes journey-walk{from{left:calc(var(--journey-from) * (100% - 100px))}to{left:calc(var(--journey) * (100% - 100px))}}
@media(hover:hover){.mosaic-dog:hover{transform:translateY(-5px) rotate(0)}}
@media(max-width:800px){.welcome-shell{display:flex;flex-direction:column}.welcome-shell .intro{order:1;padding:28px}.dog-gallery{order:2;padding:20px}.dog-mosaic{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.mosaic-dog img{aspect-ratio:1.1}.welcome-shell .intro h1{max-width:600px}.gallery-footer{margin-top:16px}}
@media(max-width:430px){.welcome-shell .intro{padding:23px 21px}.intro h1{font-size:38px}.intro .sub{font-size:16px;margin-bottom:12px}.intro-label{margin-bottom:14px}.facts{margin-bottom:16px}.family-hint{margin-top:14px}.dog-gallery{padding:16px 12px}.gallery-heading{font-size:11px;letter-spacing:.5px;margin-bottom:10px}.dog-mosaic{gap:9px}.mosaic-dog{padding:4px;border-radius:13px}.mosaic-dog strong{font-size:12px}.mosaic-dog figcaption{padding:6px 2px}.mosaic-dog figcaption span{font-size:12px}.gallery-footer p{font-size:16px}.friendship-journey{margin:9px 0 12px;padding:7px 10px 6px}.journey-labels{font-size:12px}.journey-lane{height:43px}.journey-dog{width:46px;height:46px}.journey-traveller>span{width:33px;height:33px;font-size:25px}.journey-caption{font-size:12px!important}}
@media(prefers-reduced-motion:reduce){.journey-traveller{animation:none}.mosaic-dog{transition:none}}

/* Override intrinsic HTML image height at every result-card width. */
.breed-photo{width:100%;max-width:400px;min-width:0}.breed-photo img{width:100%;height:auto;max-height:300px;aspect-ratio:4/3;object-fit:contain}.dogcard,.conditional-card,.review-card,.exploration-card{min-width:0}.mosaic-dog{align-self:stretch}.mosaic-dog img{max-width:100%;height:auto}
@media(max-width:600px){.breed-photo img{max-height:230px}.dog-mosaic .mosaic-dog{transform:none;margin-top:0}.dog-mosaic{align-items:stretch}.mosaic-dog strong{overflow-wrap:anywhere}}

.story-opening{order:2;display:flex;flex-direction:column;justify-content:center;background:#eaf0ff;padding:24px;min-width:0}.story-opening img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:24px}.story-opening p{font-size:20px;line-height:1.45;text-align:center;font-weight:700;color:#253cba;max-width:430px;margin:18px auto}.welcome-shell+.dog-gallery{margin-top:22px;border-radius:28px}.welcome-shell+.dog-gallery .dog-mosaic{grid-template-columns:repeat(6,minmax(0,1fr))}.welcome-shell+.dog-gallery .mosaic-dog img{aspect-ratio:1}.story-finish{display:flex;align-items:center;gap:22px;border-radius:24px;background:#edf2ff;margin:16px 0 24px;padding:12px 20px;overflow:hidden}.story-finish img{width:210px;height:140px;object-fit:contain;flex-shrink:0;border-radius:18px}.story-finish span{font-size:12px;font-weight:800;letter-spacing:1px;color:#3448bd}.story-finish p{font-size:26px;line-height:1.2;color:#172444;font-weight:800;margin:8px 0}.friendship-journey{background:#304be7;box-shadow:0 4px 0 #1b32ac;border:2px solid #304be7}.journey-labels{color:white}.journey-caption{color:#fff!important}.journey-track{border:0;height:8px;background:#798bff;border-radius:9px;overflow:hidden}.journey-track:after{content:'';display:block;width:calc(var(--journey) * 100%);height:100%;background:#ffe365;border-radius:9px;transition:width .4s}.journey-traveller>span{border-color:white;background:#ffe365;box-shadow:0 2px 0 #142990}.journey-heart{color:#ffdb6c}.journey-dog{border-color:#ffe365}
@media(max-width:800px){.story-opening{order:0;padding:12px 20px}.story-opening img{max-height:230px}.story-opening p{font-size:17px;margin:8px auto}.welcome-shell+.dog-gallery .dog-mosaic{grid-template-columns:repeat(3,minmax(0,1fr))}.story-finish{gap:12px;padding:10px 12px}.story-finish img{width:140px;height:105px}.story-finish p{font-size:21px}}
@media(max-width:430px){.story-opening img{max-height:190px}.story-opening p{font-size:16px}.story-finish img{width:110px;height:90px}.story-finish p{font-size:18px}.story-finish span{font-size:11px;letter-spacing:.3px}.story-finish{margin:12px 0 18px}.friendship-journey{margin-bottom:15px}}
@media(prefers-reduced-motion:reduce){.journey-track:after{transition:none}}
