/* Scoped to the dog/cat discovery experience; existing TOP/LP styles stay untouched. */
.gx{--gx-ink:#243c32;--gx-soft:#edf1ea;--gx-line:#d9e2d8;--gx-accent:#48674f;--gx-gold:#9a6725;color:var(--gx-ink);padding-bottom:88px;min-height:65vh}.gx button,.gx input,.gx select{font:inherit}.gx a,.gx button{touch-action:manipulation}.gx a:focus-visible,.gx button:focus-visible,.gx select:focus-visible,.gx input:focus-visible{outline:3px solid #976632;outline-offset:4px}.gx-wrap{width:min(1264px,calc(100% - 96px));margin:auto}.gx-crumb{display:flex;gap:13px;padding-top:24px;font-size:12px;color:#66756b;align-items:center}.gx-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;padding:40px 0 30px}.gx-eyebrow{display:block;color:#687f6c;font:600 12px/1.5 var(--sans);letter-spacing:.17em;margin-bottom:12px}.gx h1{font-size:clamp(30px,3.3vw,46px);line-height:1.5;letter-spacing:.04em}.gx-heading p{color:#617065;font-size:15px;margin-top:10px}.gx-heading-aside{display:flex;gap:13px;align-items:center;color:#6c796f;font-size:12px;line-height:1.7;white-space:nowrap}.gx-orbit{width:44px;height:44px;border:1px solid #b2c3b2;border-radius:50%;position:relative}.gx-orbit:after{content:'';position:absolute;inset:8px;border:1px solid #b2c3b2;border-radius:50%}.gx-preview{border:1px solid #dfdecf;background:#f7f6ed;padding:11px 16px;display:flex;gap:14px;align-items:center;font-size:12px;color:#666549;border-radius:8px;margin-bottom:25px}.gx-preview strong{font:600 11px var(--sans);letter-spacing:.09em;white-space:nowrap}.gx-bar{border-block:1px solid var(--gx-line);padding:20px 0}.gx-bar-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.gx-segments{display:flex;gap:6px;padding:5px;background:#edf1ea;border-radius:40px}.gx-segments button{border-radius:30px;min-height:42px;padding:8px 25px;font-size:14px;transition:background .2s,box-shadow .2s}.gx-segments button[aria-pressed=true]{background:#fff;box-shadow:0 2px 9px #243c3210;color:#24442e}.gx-filter-toggle{display:none}.gx-filters{display:grid;grid-template-columns:1.15fr .8fr 1.65fr 1fr auto;gap:18px;align-items:end;margin-top:20px}.gx-filters label{font-size:12px;color:#69766a;display:grid;gap:6px}.gx-filters select{width:100%;font-size:14px;min-height:46px;border:1px solid #d8e1d7;border-radius:8px;background:#fff;color:#263f31;padding:9px 30px 9px 12px}.gx-reset{font-size:13px!important;color:#55684d;text-decoration:underline;text-underline-offset:4px;min-height:44px;white-space:nowrap}.gx-result-line{display:flex;align-items:center;justify-content:space-between;margin:25px 0 20px;gap:16px}.gx-result-line p{font-size:14px;color:#68766b}.gx-result-line strong{font:500 28px/1 var(--sans);color:#2b4835;padding-right:6px}.gx-result-line small{font-size:12px;color:#68766b}.gx-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 24px}.gx-card{min-width:0;display:flex;flex-direction:column;background:#fff;border:1px solid #dce4d9;border-radius:20px;box-shadow:0 5px 18px #243c3208;animation:gx-appear .28s both;animation-delay:calc(var(--gx-i,0)*45ms);outline-offset:5px;transition:transform .2s,box-shadow .2s,border-color .2s}.gx-card>.gx-photo{margin:10px 10px 0;border-radius:12px;flex-shrink:0}.gx-photo{position:relative;overflow:hidden;aspect-ratio:1.03;border-radius:14px;background:#e9ede4}.gx-photo img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.2,.7,.3,1);transform:scale(1.001)}.gx-label{position:absolute;top:16px;left:16px;background:#fffdf7eb;color:#314e38;border:1px solid #ffffff8a;padding:5px 12px;border-radius:24px;font-size:12px;font-weight:500;backdrop-filter:blur(6px)}.gx-label[data-sale=商談中]{background:#fff4daed;color:#755621}.gx-label[data-sale=販売済み]{background:#eef0f2eb;color:#596568}.gx-sample{position:absolute;right:14px;bottom:12px;color:#fff;font:500 10px var(--sans);letter-spacing:.1em;padding:4px 7px;background:#233f305e;border-radius:4px}.gx-card-copy{padding:18px;display:flex;flex-direction:column;flex:1;min-width:0}.gx-card-kind{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;font-size:12px;line-height:1.6;color:#69806b;margin-bottom:6px}.gx-card-kind span:first-child{min-width:0;overflow-wrap:anywhere}.gx-card-kind span:last-child{flex-shrink:0}.gx-card h2{font:500 22px/1.5 var(--sans);letter-spacing:0;margin-bottom:7px}.gx-card-meta{color:#6d776c;font-size:13px}.gx-card-foot{display:grid;gap:14px;margin-top:auto;padding-top:18px;color:#536b59}.gx-card-store{font-size:13px;line-height:1.7;overflow-wrap:anywhere}.gx-card-action{display:flex;align-items:center;justify-content:center;min-height:46px;width:100%;padding:10px 14px;border:1px solid #3b5e43;border-radius:9px;background:#3b5e43;color:#fff;font-size:14px;line-height:1.5;font-weight:500;text-align:center;transition:background .2s}.gx-card-foot svg{width:13px;height:13px;margin-right:4px}.gx-photo-fallback{height:100%;display:grid;place-content:center;text-align:center;color:#6b7b6a;font-size:14px;padding:20px}.gx-photo-fallback span{display:block;font:400 38px var(--serif);color:#8b9b85;margin-bottom:10px}.gx-empty{grid-column:1/-1;min-height:280px;padding:60px 20px;display:grid;justify-items:center;align-content:center;text-align:center;border:1px dashed #c7d5c7;border-radius:15px;background:#f4f6f0}.gx-empty h2{font-size:25px;letter-spacing:.02em}.gx-empty p{font-size:14px;color:#6b796e;margin-top:10px}.gx-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid #b5c4b5;padding:12px 22px;min-height:48px;font-size:14px;font-weight:500;transition:background .2s,transform .2s;background:#fff}.gx-btn-primary{background:#3b5e43;color:#fff;border-color:#3b5e43}.gx-empty .gx-btn{margin-top:25px}.gx-list-note{font-size:12px;color:#788174;line-height:1.8;margin-top:34px;padding-top:20px;border-top:1px solid var(--gx-line)}.gx-detail-top{display:flex;justify-content:space-between;align-items:center;margin:24px 0}.gx-back{font-size:14px;min-height:44px;display:inline-flex;align-items:center;gap:12px}.gx-detail{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:65px;align-items:start;margin-top:26px}.gx-detail .gx-photo{aspect-ratio:1;border-radius:22px}.gx-detail h1{font-family:var(--sans);font-size:clamp(27px,2.6vw,36px);line-height:1.5;letter-spacing:.02em}.gx-detail-labels{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 20px}.gx-detail-labels span{font-size:13px;padding:5px 13px;background:#edf1e9;border-radius:25px}.gx-description{font-size:15px;color:#607261;line-height:1.95;margin-bottom:22px!important;white-space:pre-wrap}.gx-spec{margin:0 0 28px}.gx-spec>div{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:12px 0;border-bottom:1px solid var(--gx-line);font-size:14px}.gx-spec dt{color:#718172}.gx-spec dd{margin:0;overflow-wrap:anywhere}.gx-cta{width:100%;min-height:55px}.gx-detail-note{font-size:12px;color:#798071;margin-top:12px!important}.gx-status-note{font-size:14px;padding:16px 18px;background:#f3efdf;border-radius:10px;line-height:1.8;margin-bottom:18px!important}.gx-gallery-controls{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:16px;font-size:13px;color:#6b7e6d}.gx-gallery-controls button{width:44px;height:44px;border:1px solid #c8d5c7;border-radius:50%}.gx-gallery-controls button:disabled{opacity:.35}.gx-photo-caption{font-size:11px;margin-top:14px;color:#7c8474}.gx-inquiry{max-width:760px;margin:30px auto 0}.gx-inquiry h1{font-size:32px;margin-bottom:14px}.gx-inquiry-target{display:flex;gap:20px;align-items:center;padding:20px;background:#eff3eb;border-radius:14px;margin:24px 0}.gx-inquiry-target img{width:80px;height:80px;object-fit:cover;border-radius:9px}.gx-inquiry-target h2{font:500 18px var(--sans);margin-bottom:5px}.gx-inquiry-target p{font-size:13px}.gx-inquiry form{display:grid;gap:18px}.gx-inquiry label{display:grid;gap:7px;font-size:14px}.gx-inquiry input,.gx-inquiry textarea{border:1px solid #bfcdbd;border-radius:8px;background:#fff;padding:12px;min-width:0;width:100%;font-size:16px}.gx-inquiry-actions{display:flex;gap:15px;margin-top:15px}.gx-check{padding:20px;border:1px solid var(--gx-line);border-radius:12px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.gx-skeleton{height:340px;border-radius:15px;background:linear-gradient(100deg,#eef1e9,#f8f9f4,#eef1e9);background-size:250% 100%;animation:gx-load 1.5s infinite}.gx-error{color:#785531}.gx button:disabled{cursor:default;opacity:.55}@media(hover:hover){.gx-card:hover{transform:translateY(-3px);border-color:#b6c8b5;box-shadow:0 12px 26px #243c3212}.gx-card:hover .gx-card-action{background:#294b32}.gx-card:hover img{transform:scale(1.035)}.gx-btn:hover{background:#e5ece1}.gx-btn-primary:hover{background:#294b32}.gx-gallery-controls button:not(:disabled):hover{background:#e5ece1}}@keyframes gx-appear{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes gx-load{to{background-position:-200% 0}}
@media(max-width:1050px){.gx-wrap{width:calc(100% - 56px)}.gx-grid{gap:24px 18px}.gx-card h2{font-size:19px}.gx-filters{grid-template-columns:1fr 1fr;gap:13px}.gx-reset{justify-self:start}.gx-detail{gap:32px}.gx-heading-aside{display:none}.gx-detail .gx-spec>div{grid-template-columns:80px 1fr;gap:12px}.gx-card-copy{padding:16px}.gx-card-foot{gap:12px}}
@media(max-width:650px){.gx{padding-bottom:50px}.gx-wrap{width:calc(100% - 36px)}.gx-crumb{padding-top:16px;font-size:11px}.gx-heading{padding:25px 0 23px}.gx-heading h1{font-size:29px}.gx-heading p{font-size:14px;line-height:1.8}.gx-eyebrow{font-size:11px;margin-bottom:10px}.gx-preview{align-items:flex-start;gap:8px;flex-direction:column;padding:12px 13px;font-size:11px;margin-bottom:18px}.gx-preview strong{font-size:10px}.gx-bar{padding:15px 0}.gx-segments{gap:2px;padding:4px}.gx-segments button{padding:7px 18px;font-size:13px;min-height:39px}.gx-filter-toggle{display:flex;gap:7px;align-items:center;font-size:12px;min-height:44px}.gx-filter-toggle svg{width:17px;height:17px}.gx-filters{display:none;margin-top:18px;grid-template-columns:1fr 1fr;gap:14px 11px}.gx-filters[data-open=true]{display:grid}.gx-filters label{font-size:12px}.gx-filters select{font-size:14px;padding-left:10px}.gx-filters label[data-wide]{grid-column:1/-1}.gx-result-line{margin:22px 0 16px}.gx-result-line strong{font-size:25px}.gx-result-line p{font-size:12px}.gx-result-line small{font-size:11px}.gx-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.gx-photo{aspect-ratio:.89;border-radius:11px}.gx-label{top:9px;left:9px;padding:3px 8px;font-size:11px}.gx-card{border-radius:16px}.gx-card>.gx-photo{margin:8px 8px 0;border-radius:10px}.gx-card-copy{padding:14px 12px 12px}.gx-card h2{font-size:16px;line-height:1.5}.gx-card-kind{font-size:12px}.gx-card-meta{font-size:12px;line-height:1.65}.gx-card-foot{padding-top:16px;gap:12px}.gx-card-store{font-size:12px}.gx-card-action{min-height:48px;padding:10px 8px;font-size:14px}.gx-sample{font-size:8px;bottom:8px;right:8px}.gx-detail{grid-template-columns:1fr;gap:30px;margin-top:12px}.gx-detail h1{font-size:29px}.gx-detail .gx-photo{border-radius:15px}.gx-detail-top{margin:17px 0}.gx-back{font-size:13px}.gx-detail-top>span{font-size:10px}.gx-detail .gx-eyebrow{font-size:11px}.gx-spec>div{font-size:14px}.gx-inquiry{margin-top:18px}.gx-inquiry h1{font-size:27px}.gx-inquiry-target{gap:13px;padding:15px}.gx-inquiry-target img{width:65px;height:65px}.gx-inquiry-target h2{font-size:16px}.gx-inquiry-actions{flex-direction:column}.gx-empty{min-height:300px;padding:45px 16px}.gx-empty h2{font-size:22px}.gx-empty p{font-size:13px}.gx-list-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.gx *,.gx *:before,.gx *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.gx-card:hover,.gx-card:hover img{transform:none!important}}
.gx [hidden]{display:none!important}

/* The sort select is always visible, including when mobile filters are collapsed. */
.gx-result-line{flex-wrap:wrap}.gx-sort{display:flex;align-items:center;gap:12px;max-width:100%;color:#3e5546;font-size:14px}.gx-sort>span{white-space:nowrap}.gx-sort select{min-height:46px;min-width:185px;max-width:100%;padding:9px 32px 9px 12px;border:1px solid #bacbbd;border-radius:8px;background:#fff;color:#263f31;font:inherit;font-size:16px}.gx-sort select:focus-visible{outline:2px solid #386448;outline-offset:3px}
@media(max-width:480px){.gx-result-line{gap:14px}.gx-sort{width:100%;gap:12px}.gx-sort select{flex:1;min-width:0}.gx-result-line p{font-size:14px}}

/* Keep the longer family-found label readable within narrow cards and filters. */
.gx-label[data-sale=販売済み]{box-sizing:border-box;max-width:calc(100% - 32px);font-size:14px;line-height:1.5;white-space:normal;overflow-wrap:anywhere;text-align:center}
.gx-filters label,.gx-filters select{min-width:0}.gx-detail-labels span{max-width:100%;overflow-wrap:anywhere}
@media(min-width:1051px){.gx-filters{grid-template-columns:minmax(0,1.15fr) minmax(0,.8fr) minmax(0,1.65fr) minmax(250px,1.35fr) auto}}
@media(max-width:650px){.gx-label[data-sale=販売済み]{max-width:calc(100% - 18px)}}

/* A full-width card keeps the photo, profile and action together on narrow phones. */
@media(max-width:480px){.gx-grid{grid-template-columns:1fr;gap:24px}.gx-card>.gx-photo{aspect-ratio:1.08}.gx-card-copy{padding:18px}.gx-card h2{font-size:21px}.gx-card-kind,.gx-card-meta,.gx-card-store{font-size:14px}.gx-card-action{font-size:15px;min-height:48px}}
