/* PAW ROUTE — independent journey-inspired cobalt-blue design */
:root{--ink:#123C74;--pink:#1455D9;--ice:#DDEEFF;--paper:#F0F7FF;--royal:#1455D9;--sky:#81C9F8}
body{color:#123C74;background:#fff}.pr-inner{width:min(1210px,calc(100% - 50px));margin:0 auto}
.pr-announcement{background:#1455D9;color:white;font-size:11px;font-weight:800}.pr-announcement>.pr-inner{height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.pr-announcement a{color:#fff;font-weight:950}.pr-announcement b,.pr-announcement a span{color:#81C9F8}
.pr-header{position:sticky;top:0;z-index:80;background:#fffffff2;backdrop-filter:blur(15px);box-shadow:0 5px 25px #123c740d;border-bottom:1px solid #D3E5FA}
.pr-head-row{min-height:84px;display:flex;align-items:center;gap:30px}
.pr-logo{display:flex;align-items:center;gap:11px;color:#123C74;font-size:23px;font-weight:950;letter-spacing:-.06em;line-height:1.1;flex:none}
.pr-logo small{display:block;font-size:9px;letter-spacing:.2em;color:#1455D9;margin-top:6px}
.pr-symbol{width:48px;height:48px;display:grid;place-items:center;position:relative;background:#1455D9;border-radius:17px 17px 6px 17px;color:#fff;font-size:31px;font-weight:1000}
.pr-symbol span{position:absolute;right:7px;bottom:4px;font-size:12px;color:#81C9F8}
.pr-header nav{display:flex;gap:26px;margin-left:auto;font-size:13px;font-weight:850}
.pr-header nav a:hover{color:#1455D9}.pr-nav-cta{color:#fff;background:#1455D9;padding:13px 20px;border-radius:30px;white-space:nowrap;font-size:13px;font-weight:900}
.pr-nav-cta span{margin-left:8px}
.pr-section{padding:94px 0}.pr-step-label{color:#1455D9;font-size:11px;letter-spacing:.12em;font-weight:1000;display:flex;align-items:center;gap:10px}.pr-step-label i{width:28px;height:1px;background:#81C9F8}
.pr-section-head{margin-bottom:37px}.pr-section-head h2{color:#123C74;font-size:clamp(36px,4.8vw,64px);letter-spacing:-.075em;line-height:1.14;font-weight:950;margin:14px 0}
.pr-section-head h2 em{font-style:normal;color:#1455D9}.pr-section-head>p,.pr-head-inline>p{color:#567591;line-height:1.9;font-size:15px;max-width:425px}
.pr-head-inline{display:flex;align-items:end;justify-content:space-between;gap:30px}
.pr-button{display:inline-flex;justify-content:space-between;align-items:center;gap:23px;border-radius:15px;padding:16px 22px;font-size:14px;font-weight:950;transition:transform .2s}
.pr-button:hover{transform:translateY(-3px)}.pr-button b{font-size:22px}.pr-primary{background:#1455D9;color:white;box-shadow:0 10px 24px #1455d925}
.pr-white{background:white;color:#1455D9}.pr-under{text-decoration:underline;text-underline-offset:6px;font-size:13px;font-weight:900}
.pr-hero{background:linear-gradient(140deg,#F2F9FF,#CCE6FE);padding:40px 0 0;overflow:hidden}
.pr-hero-layout{display:grid;grid-template-columns:51% 49%;min-height:590px;align-items:center}
.pr-hero-copy{position:relative;z-index:2;padding:30px 0 40px}
.pr-eyebrow{display:flex;align-items:center;gap:15px;font-size:11px;font-weight:900;color:#5D7395;flex-wrap:wrap}
.pr-pill{display:inline-block;border-radius:30px;background:white;color:#1455D9;padding:8px 16px;letter-spacing:.1em}
.pr-hero h1{font-size:clamp(60px,8vw,115px);letter-spacing:-.095em;line-height:1.07;font-weight:1000;margin:25px 0;color:#123C74}
.pr-hero h1 span{color:#1455D9}.pr-hero-copy>p{font-size:17px;line-height:1.9;color:#4A6B8D;max-width:515px}
.pr-hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin:26px 0}
.pr-hero-note{display:flex;gap:13px;align-items:center;font-size:12px;font-weight:850;color:#50708E}
.pr-hero-note i{width:5px;height:5px;background:#1455D9;border-radius:50%}
.pr-hero-visual{height:555px;position:relative;isolation:isolate}
.pr-hero-visual:before{content:"";position:absolute;right:1%;top:11%;height:82%;width:88%;border-radius:51% 47% 46% 52%;background:#81C9F8;transform:rotate(-14deg)}
.pr-hero-visual:after{content:"";position:absolute;left:6%;top:5%;height:90px;width:90px;border:3px dashed #1455D9;border-radius:50%;opacity:.3}
.pr-hero-sky{position:absolute;right:0;top:0;color:#1455D9;letter-spacing:.13em;line-height:1.6;font-size:10px;text-align:right}
.pr-hero-photo{position:absolute;left:10%;top:11%;height:79%;width:75%;border:12px solid white;border-radius:50% 50% 46% 48%;overflow:hidden;box-shadow:0 22px 55px #123c7430}
.pr-hero-photo img{height:100%;width:100%;object-fit:cover}
.pr-hero-float{position:absolute;right:-1%;bottom:8%;width:33%;aspect-ratio:1;border:8px solid white;border-radius:25px 60px 25px 60px;overflow:hidden;transform:rotate(11deg);box-shadow:0 15px 30px #123c742a}
.pr-hero-float img{width:100%;height:100%;object-fit:cover}.pr-hero-float span{position:absolute;bottom:0;left:0;right:0;background:white;font-size:9px;font-weight:950;text-align:center;color:#1455D9;padding:5px}
.pr-hero-stamp{position:absolute;bottom:4%;left:0;background:white;color:#1455D9;border-radius:18px;padding:21px;box-shadow:0 15px 27px #1455d91e;transform:rotate(-8deg);font-size:27px;font-weight:950}
.pr-hero-stamp b{display:block;color:#123C74;font-size:11px}.pr-hero-stamp span{position:absolute;right:10px;top:5px;font-size:17px}
.pr-hero-line{position:absolute;right:8%;bottom:0;width:36%;border-top:3px dashed #1455D9;transform:rotate(-20deg)}
.pr-hero-baseline{display:flex;justify-content:space-between;border-top:1px solid #aacef5;padding:18px 0;font-size:10px;color:#567591;letter-spacing:.1em;font-weight:950}
.pr-hero-baseline span:last-child{color:#1455D9}
.pr-finder-panel{display:grid;grid-template-columns:.9fr 1.1fr;gap:34px;border-radius:32px;background:#1455D9;color:white;padding:45px;overflow:hidden}
.pr-route-label{font-size:11px;color:#81C9F8;font-weight:950;letter-spacing:.11em}
.pr-finder-copy h3{font-size:clamp(32px,4vw,57px);line-height:1.2;letter-spacing:-.07em;margin:35px 0 15px}
.pr-finder-copy>p{max-width:330px;color:#d8eaff;line-height:1.9}.pr-finder-copy .pr-button{margin-top:29px}
.pr-finder-board{border-radius:21px;background:white;color:#123C74;padding:28px 33px;box-shadow:12px 13px 0 #81c9f870}
.pr-board-top{display:flex;justify-content:space-between;padding-bottom:13px;border-bottom:2px solid #1455D9;color:#1455D9;font-size:11px;font-weight:950}
.pr-board-list>div{display:grid;grid-template-columns:32px 1fr 20px;gap:15px;align-items:center;padding:13px 0;border-bottom:1px dashed #c0d8f5}
.pr-board-list>div:last-child{border:0}
.pr-board-list b{display:grid;place-items:center;border-radius:50%;background:#DDEEFF;color:#1455D9;width:30px;height:30px;font-size:11px}
.pr-board-list span{font-size:14px;font-weight:850}.pr-board-list i{font-style:normal;color:#1455D9}
.pr-breed-section{background:#F0F7FF}
.pr-home-breeds{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:16px!important}
.pr-home-breeds .breed-card{display:flex!important;flex-direction:column;gap:0;background:white;border:1px solid #d3e7fb;border-radius:23px;min-height:0;overflow:hidden;counter-increment:dog;position:relative}
.pr-home-breeds .breed-card img{width:100%;height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:cover}
.pr-home-breeds .breed-card>div{width:100%;padding:16px 18px 21px}
.pr-home-breeds .breed-card b{color:#123C74;font-size:18px}.pr-home-breeds .breed-card small{font-size:11px}
.pr-home-breeds .breed-card:before{content:counter(dog,decimal-leading-zero);position:absolute;left:12px;top:12px;z-index:2;background:white;color:#1455D9;padding:6px 12px;border-radius:16px;font-size:11px;font-weight:950}
.pr-home-breeds .breed-card:after{color:#1455D9}
.pr-tail-collection{background:#DDEEFF;border-radius:23px;margin-top:25px;padding:27px;display:grid;grid-template-columns:250px 1fr;gap:22px}
.pr-tail-collection .pr-route-label{color:#1455D9}.pr-tail-collection h3{font-size:23px;letter-spacing:-.055em;margin:9px 0}.pr-tail-collection p{font-size:13px;color:#5D7797}
.pr-compare-section{background:#123C74;color:white}.pr-compare-section h2,.pr-compare-section .pr-section-head h2{color:white}
.pr-compare-section .pr-step-label,.pr-compare-link a{color:#81C9F8}.pr-compare-section .pr-section-head p{color:#dceaff}
.pr-compare-link{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:27px;font-size:13px;color:#d8e7fb}.pr-compare-link a{font-weight:950;text-decoration:underline;text-underline-offset:5px}
.pr-tips{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.pr-tips article{background:#F0F7FF;border:1px solid #D4E8FC;border-radius:18px;padding:26px;min-height:216px}
.pr-tips article>div{font-size:11px;color:#1455D9;font-weight:950}.pr-tips h3{font-size:20px;letter-spacing:-.05em;margin:25px 0 10px}
.pr-tips p{font-size:13px;line-height:1.9;color:#526D8D}
.pr-condition-section,.pr-faq{background:#F0F7FF}
.pr-faq-list details{padding:21px 8px;border-bottom:1px solid #C1DAF4}.pr-faq-list summary{font-size:17px;font-weight:950;cursor:pointer}.pr-faq-list p{color:#54728F;line-height:1.9}
.pr-finish{background:linear-gradient(135deg,#1455D9,#093795);border-radius:32px;position:relative;padding:45px 60px;overflow:hidden;color:white}
.pr-finish:after{content:"";position:absolute;border:48px solid #ffffff19;border-radius:50%;width:330px;height:330px;right:-115px;top:-140px}
.pr-finish .pr-step-label{color:#81C9F8}
.pr-finish h2{font-size:clamp(35px,5vw,64px);line-height:1.13;letter-spacing:-.073em;margin:18px 0;color:white}
.pr-finish p{color:#d7eaff;line-height:1.85;max-width:620px}
.pr-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:22px}
.pr-actions .btn{background:white;color:#1455D9;padding:14px 23px;border-radius:12px;font-weight:950}
.pr-actions .btn-kakao{background:#81C9F8;color:#123C74}
.pr-finish-mark{position:absolute;right:48px;bottom:13px;font-size:110px;line-height:1;color:#ffffff36}
@media(max-width:1050px){.pr-header nav{display:none}.pr-nav-cta{margin-left:auto}.pr-home-breeds{grid-template-columns:repeat(3,minmax(0,1fr))!important}.pr-tips{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.pr-inner{width:calc(100% - 30px)}.pr-announcement .pr-inner{font-size:9px}.pr-head-row{min-height:70px}.pr-logo{font-size:18px}.pr-symbol{width:40px;height:40px;font-size:25px}.pr-nav-cta{padding:10px 12px;font-size:11px}.pr-section{padding:64px 0}.pr-section-head h2{font-size:40px}.pr-head-inline{display:block}.pr-hero{padding:10px 0 0}.pr-hero-layout{grid-template-columns:1fr;min-height:0}.pr-hero-copy{padding:38px 0 0}.pr-hero h1{font-size:clamp(54px,12vw,78px)}.pr-hero-copy>p{font-size:15px}.pr-hero-visual{height:370px}.pr-hero-float{right:0}.pr-hero-photo{width:73%;height:83%;left:12%}.pr-hero-stamp{font-size:20px;padding:15px}.pr-hero-baseline span:last-child{display:none}.pr-finder-panel{grid-template-columns:1fr;padding:25px;gap:20px}.pr-finder-copy h3{font-size:39px;margin:15px 0}.pr-finder-copy .pr-button{margin-top:13px}.pr-finder-board{padding:23px}.pr-home-breeds{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.pr-home-breeds .breed-card{border-radius:15px}.pr-home-breeds .breed-card>div{padding:13px}.pr-home-breeds .breed-card b{font-size:14px}.pr-home-breeds .breed-card small{font-size:10px}.pr-tail-collection{grid-template-columns:1fr}.pr-compare-link{align-items:flex-start;flex-direction:column}.pr-tips article{padding:18px;min-height:195px}.pr-tips h3{font-size:18px;margin:16px 0}.pr-finish{padding:32px 25px;border-radius:23px}.pr-finish h2{font-size:40px}.pr-finish-mark{font-size:66px;right:18px}}
@media(max-width:390px){.pr-home-breeds,.pr-tips{grid-template-columns:1fr!important}}

/* DISTINCT BLUE BREED PASSPORTS AND REGIONAL GUIDES */
.tm-detail-hero,.tm-local-hero{background:linear-gradient(122deg,#e8f4ff 0%,#bfddff 100%);color:#123C74;position:relative;overflow:hidden}
.tm-detail-hero:after,.tm-local-hero:after{content:"";pointer-events:none;position:absolute;right:-140px;top:-150px;width:360px;height:360px;border:38px solid #81c9f87d;border-radius:50%}
.tm-local-hero h1,.tm-detail-heading h1{color:#123C74}
.tm-detail-heading h1 small{color:#1455D9}
.tm-local-hero p,.tm-detail-heading p{color:#52718F}
.tm-local-hero .tm-kicker,.tm-detail-hero .tm-kicker{color:#1455D9}
.tm-detail-stat{background:white;border-color:#accdf5;box-shadow:0 18px 44px #123c7418}
.tm-detail-stat>div{border-bottom-color:#d5e6f8}
.tm-detail-stat>div b{color:#123C74}
.tm-detail-stat>div small{color:#52718F}
.tm-detail-stat>span{background:#1455D9;color:white}
.tm-end-banner{background:linear-gradient(130deg,#1455D9,#08398d);border-radius:30px}
.tm-end-banner .tm-kicker{color:#81C9F8}
.tm-end-banner:after{color:#ffffff21}
.tm-end-banner>p{color:#e0eeff}
.tm-action-row .btn,.cta-buttons .btn{border-radius:12px;background:white;color:#1455D9!important}
.tm-action-row .btn-kakao,.cta-buttons .btn-kakao{background:#81C9F8;color:#123C74!important}
.tm-price-ticket{border-color:#1455D9;border-radius:24px;box-shadow:11px 11px 0 #81C9F8}
.tm-price-ticket strong,.tm-price-layout h2 em{color:#1455D9}
.tm-four-stats>div,.pb-fit-grid article{background:#f0f7ff;border-color:#c7dff9;border-radius:17px}
.pb-fit-grid article{border-top:4px solid #1455D9}
.tm-advice-grid>article{border-color:#c5dcf6;border-radius:20px}
.tm-ice{background:#e3f1ff}
.tm-cream{background:#f3f9ff}
.tm-dark{background:#123C74}
.tm-section-header h2 em,.tm-preview-grid h2 em{color:#1455D9}
.dog-gallery figure,.region-gallery figure{border:1px solid #cfddf0;border-radius:18px}
.tm-quiz-main{background:radial-gradient(ellipse at 85% 8%,#cde5ff 0%,transparent 45%),#f0f7ff}
.tm-quiz-intro h1{color:#123C74}
.tm-quiz-card{border-color:#a7cefb;border-radius:29px;box-shadow:12px 12px 0 #81c9f8a0}
.tm-quiz-progress span.active{background:#1455D9}
.tm-quiz-option.selected{background:#ebf4ff;border-color:#1455D9;box-shadow:inset 5px 0 0 #81C9F8}
.tm-quiz-option.selected .tm-radio-dot{border-color:#1455D9}
.tm-quiz-option:hover{background:#f1f8ff;border-color:#1455D9}
.tm-quiz-next{background:#1455D9;color:white}
.tm-result-card{background:#f0f7ff;border-color:#c5dbf6}
.tm-result-card span,.tm-result-card a{color:#1455D9}
.tm-quiz-contact a{background:#1455D9;color:#fff}
.tm-quiz-contact a:last-child{background:#81C9F8;color:#123C74}
.tm-share-primary{background:#1455D9;border-color:#1455D9}
.tm-share-copy{color:#1455D9;border-color:#1455D9}
.footer{background:#09254b;color:#bcd6ee}
.footer a:hover{color:#81C9F8}
.bottom{background:#083875f0}
.bottom .btn{background:#1455D9;color:white}
.bottom .btn-kakao{background:#81C9F8;color:#123C74}

/* Fix: the main breed grid must become an actual horizontal carousel after JS init.
   Override the homepage's grid !important with greater selector specificity. */
.pr-home-breeds.tm-carousel{display:flex!important;grid-template-columns:none!important;align-items:stretch;gap:16px!important}
.pr-home-breeds.tm-carousel>.breed-card{display:flex!important;flex:0 0 calc((100% - 48px)/4)!important;scroll-snap-align:start;min-width:0}
.pr-home-breeds.tm-carousel .breed-card img{aspect-ratio:4/3;object-fit:cover}
.pr-breed-section .tm-carousel-controls{margin-top:18px;color:#123C74}
.pr-breed-section .tm-carousel-caption,.pr-breed-section .tm-carousel-count{color:#1455D9}
.pr-breed-section .tm-carousel-prev,.pr-breed-section .tm-carousel-next{border-color:#1455D9;color:#1455D9;background:white}
@media(max-width:1050px){.pr-home-breeds.tm-carousel>.breed-card{flex-basis:calc((100% - 32px)/3)!important}}
@media(max-width:900px){.pr-home-breeds.tm-carousel>.breed-card{flex-basis:calc((100% - 16px)/2)!important}}
@media(max-width:610px){.pr-home-breeds.tm-carousel>.breed-card{flex-basis:82%!important}}
