/* v182 — solid primary action; full adjacent attribution stays equally legible. */
.kip-detail-page .detail-shell{padding-top:12px}.kip-detail-page .detail-toolbar{margin-bottom:12px}.kip-detail-page .detail-basics{padding:0 0 20px}.kip-detail-page .home-heading{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.kip-detail-page .detail-basics .price{font-size:34px;margin:0}.kip-detail-page .detail-basics h1{font-size:clamp(24px,2.2vw,32px);line-height:1.25;max-width:none;margin:8px 0 16px}.status-badge{padding:5px 9px;border-radius:8px;background:var(--sky);font-size:12px;color:var(--navy);font-weight:750}.detail-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.detail-stat{display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:6px;align-items:center;background:#eaf0fa;border-radius:12px;padding:10px;min-width:0}.detail-stat .kip-icon{grid-row:1/3;width:18px;height:18px;margin:0}.detail-stat strong{font-size:15px;line-height:1.35;overflow-wrap:anywhere}.detail-stat>span{font-size:11px;color:var(--slate);line-height:1.5}.kip-detail-page .listing-meta{font-size:13px;line-height:1.45;margin:12px 0 0;color:var(--slate)}
.kip-detail-page .detail-gallery{overflow:hidden}.gallery-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);height:clamp(320px,56vh,540px);background:var(--sky);isolation:isolate;touch-action:pan-y}.gallery-stage.has-mosaic{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:8px}.kip-detail-page .main-photo,.kip-detail-page .main-photo img{height:100%;min-height:0;width:100%;max-height:none;aspect-ratio:auto}.kip-detail-page .main-photo img{object-fit:cover}.gallery-mosaic{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;min-width:0;min-height:0}.gallery-mosaic[hidden]{display:none}.mosaic-photo{min-height:0;min-width:0;padding:0;border:0;background:none;overflow:hidden;cursor:zoom-in}.mosaic-photo img{width:100%;height:100%;object-fit:cover;display:block}.gallery-mosaic[data-count="1"]{grid-template-columns:1fr;grid-template-rows:1fr}.gallery-mosaic[data-count="2"]{grid-template-columns:1fr}.gallery-mosaic[data-count="3"] .mosaic-photo:first-child{grid-row:span 2}.photo-actions{display:flex;gap:8px;position:absolute;z-index:2;top:14px;right:14px}.photo-action{width:44px;height:44px;display:grid;place-items:center;border:1px solid #fff;border-radius:50%;background:#fffffff2;color:var(--navy);box-shadow:0 2px 8px #17204220;font-size:26px}.photo-action .kip-icon{width:21px;height:21px;margin:0}.photo-action:focus-visible,.hero-arrow:focus-visible,.all-photos:focus-visible{outline:3px solid var(--yellow);outline-offset:3px}.all-photos{position:absolute;z-index:2;right:14px;bottom:14px;min-height:44px;padding:10px 16px;border:0;border-radius:24px;background:#fffffff5;color:var(--navy);font-size:14px;font-weight:800;box-shadow:0 2px 8px #17204220}.photo-counter{position:absolute;left:14px;bottom:14px;padding:6px 10px;border-radius:20px;background:#172042dd;color:white;font-size:13px;line-height:1.5;z-index:2}.hero-arrow{display:none;position:absolute;top:calc(50% - 22px);height:44px;width:44px;border:0;border-radius:50%;background:#fffffff0;color:var(--navy);font-size:28px;z-index:2}.hero-prev{left:12px}.hero-next{right:12px}.kip-detail-page .photo-tools{padding:10px 12px;gap:10px}.kip-detail-page .photo-tools:has(.photo-thumbnails:empty){display:none}.kip-detail-page .photo-thumb{min-width:60px;flex-basis:60px;min-height:46px}.kip-detail-page .photo-thumb img{height:46px}.kip-detail-page #galleryNote{font-size:12px;margin:0;color:var(--slate)}.kip-detail-page .gallery-status{margin:0;border-radius:0;min-height:0;padding:32px;grid-column:1;grid-row:1}.kip-detail-page .gallery-status img{margin:0 auto 12px}.kip-detail-page [hidden]{display:none!important}
.kip-detail-page #highlights{margin:24px 0 0}.highlight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.highlight-item{display:flex;align-items:flex-start;gap:12px;text-decoration:none;background:var(--paper);border-radius:14px;padding:16px;min-height:80px}.highlight-item>.kip-icon{width:24px;height:24px;flex:none;margin:1px 0 0}.highlight-item strong{display:block;font-size:16px;line-height:1.4;font-weight:800}.highlight-item small{display:block;font-size:12px;line-height:1.5;color:var(--slate);margin-top:4px}.highlight-item:hover strong{text-decoration:underline}.amenity-label{font-size:13px!important;color:var(--slate);margin:20px 0 8px!important}.amenities{margin-top:0}.journey-steps{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.journey-steps li{position:relative;text-align:center;font-size:12px;color:var(--slate);min-width:0}.journey-steps li:not(:last-child)::after{content:'';position:absolute;height:2px;background:#c7d1e7;top:17px;left:calc(50% + 24px);width:calc(100% - 40px)}.step-dot{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#fff;color:var(--navy);margin:0 auto 8px;font-weight:850;border:1px solid #bcc9e2}.journey-steps .complete .step-dot{background:var(--navy);color:white;border-color:var(--navy)}.journey-steps [aria-current=step] .step-dot{box-shadow:0 0 0 4px #24315e18;border:2px solid var(--navy)}.journey-steps strong{font-size:12px;line-height:1.3;display:block;hyphens:none}
/* Natural page scrolling at every height. Stick only if the complete panel fits. */
.kip-detail-page .detail-side{position:static;top:16px;max-height:none;overflow:visible}.kip-detail-page .detail-side[data-fits-viewport="true"]{position:sticky}.kip-detail-page .detail-side .ln-card{max-height:none;overflow:visible;scrollbar-gutter:auto;padding:16px}.kip-detail-page .action-kip{margin:0 0 8px;gap:10px}.kip-detail-page .action-kip kip-animated{width:48px!important;height:48px}.kip-detail-page .action-kip .eyebrow{font-size:13px;margin:0}.kip-detail-page .ln-actions{gap:8px}.kip-detail-page .detail-side .ln-button{min-height:44px;padding:8px 10px;font-size:16px!important;color:#24315E!important;line-height:1.35!important}.kip-detail-page .detail-contact{padding:14px 0 0}.kip-detail-page .contact-identity img{width:36px;height:36px}.kip-detail-page .contact-identity strong{font-size:15px}.kip-detail-page .contact-identity small{font-size:11px}.kip-detail-page .contact-links{gap:4px 14px;padding-top:4px}.kip-detail-page .contact-links a{font-size:12px;color:#4A5578;min-height:44px}.kip-detail-page .detail-side .ln-representation{font-size:12px!important;line-height:1.5!important;color:var(--slate)!important;margin:8px 0 0;padding:0;border:0}.kip-detail-page .ln-attribution,.kip-detail-page .detail-side .ln-attribution,.kip-detail-page .detail-card .ln-attribution{font-size:16px!important;line-height:1.4!important;color:#24315E!important;font-weight:400;overflow:visible;max-height:none;white-space:normal;overflow-wrap:anywhere;margin:10px 0 0;padding-top:10px;border-top:1px solid #e7eaf1}.kip-detail-page .detail-side .ln-form,.kip-detail-page .detail-side .ln-kip{margin-top:16px;padding-top:16px}.kip-detail-page .ln-chat{max-height:none;overflow:visible}.kip-detail-page .ln-period{display:grid;grid-template-columns:1fr}.kip-detail-page .detail-card .primary,.kip-detail-page .journey-actions button,.kip-detail-page .journey-actions a{font-size:16px;color:#24315E!important}
@media(min-width:1024px) and (max-height:680px){.kip-detail-page .detail-side[data-fits-viewport="true"]{position:static}}
@media(max-width:1023px){.kip-detail-page .detail-side[data-fits-viewport="true"]{position:static}.kip-detail-page .ln-mobile-bar:not([hidden]){max-height:none;overflow:visible;padding:8px 14px calc(8px + env(safe-area-inset-bottom,0px))}.kip-detail-page .detail-side .ln-mobile-bar .ln-attribution{font-size:16px!important;line-height:1.35!important;max-height:none;overflow:visible;padding-top:6px;margin-top:6px}.kip-detail-page .detail-side .ln-mobile-bar .ln-button{padding:8px;min-height:44px}.kip-detail-page{padding-bottom:var(--listing-bar-space,0px)}.detail-stats{gap:8px}.gallery-stage{height:clamp(320px,50vh,500px)}}
@media(max-width:640px){.kip-detail-page .detail-shell{padding-top:8px}.kip-detail-page .detail-toolbar{margin-bottom:8px}.kip-detail-page .detail-basics{padding:0 0 16px}.kip-detail-page .detail-basics .price{font-size:30px}.kip-detail-page .detail-basics h1{font-size:24px;margin:8px 0 16px}.detail-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.detail-stat{grid-template-columns:1fr;text-align:center;justify-items:center;padding:8px 4px;gap:2px}.detail-stat .kip-icon{grid-row:auto;width:18px;height:18px;margin:0 0 2px}.detail-stat strong{font-size:15px;line-height:1.3}.detail-stat>span{font-size:11px}.kip-detail-page .detail-gallery{margin-inline:-16px;border-radius:0;box-shadow:none}.gallery-stage,.gallery-stage.has-mosaic{display:block;height:clamp(280px,50vh,430px);min-height:280px}.gallery-mosaic{display:none!important}.kip-detail-page .main-photo img{object-fit:cover}.hero-arrow:not([hidden]){display:block}.kip-detail-page .photo-tools{display:none}.all-photos{font-size:12px;padding:8px 12px;right:12px;bottom:12px}.photo-actions{right:12px;top:12px}.photo-counter{left:12px;bottom:12px}.highlight-grid{grid-template-columns:1fr;gap:10px}.highlight-item{padding:14px;min-height:68px}.highlight-item strong{font-size:15px}.kip-detail-page #highlights{margin-top:20px}.journey-steps{gap:4px}.journey-steps strong{font-size:10px}.step-dot{width:32px;height:32px}.journey-steps li:not(:last-child)::after{top:15px;left:calc(50% + 19px);width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){.kip-detail-page *{scroll-behavior:auto!important}.kip-detail-page .heart-pop{animation:none!important}}

/* Primary tour buttons remain strongest in all action groups. */
.kip-detail-page [data-tour-open],.kip-detail-page [data-detail-tour],.kip-detail-page .detail-side .ln-primary{background:#F2B53A!important;border:1px solid #F2B53A!important;color:#24315E!important;font-size:16px!important;font-weight:700!important;min-height:48px!important;line-height:1.35!important;padding:10px 14px!important}
.kip-detail-page [data-tour-open]:hover,.kip-detail-page [data-detail-tour]:hover,.kip-detail-page .detail-side .ln-primary:hover{background:#F2B53A!important;box-shadow:0 3px 12px #24315e24}.kip-detail-page [data-preapproval-open],.kip-detail-page [data-detail-preapproval]{background:#fff!important;color:#24315E!important;border:1px solid #bcc9e2!important;font-weight:600!important;min-height:48px!important}
.ln-desktop-mini{display:none}.kip-detail-page .gallery-availability{padding:10px 14px!important;font-size:12px;color:var(--slate);margin:0!important}.kip-detail-page .photo-tools:has(.photo-thumbnails[hidden]){display:none}
@media(min-width:1024px){.kip-detail-page .ln-desktop-mini:not([hidden]){display:block;position:fixed;z-index:30;padding:14px;background:#fff;border-radius:16px;box-shadow:0 6px 24px #17204212;box-sizing:border-box}.kip-detail-page .ln-desktop-mini .ln-actions{grid-template-columns:1fr 1fr;gap:8px}.kip-detail-page .ln-desktop-mini .ln-attribution{margin-top:8px;padding-top:8px}}
@media(max-width:1023px){.kip-detail-page .ln-mobile-bar:not([hidden]){display:block;position:fixed;inset:auto 0 0;z-index:45;background:#fff;border-top:1px solid #e7eaf1}.kip-detail-page .detail-side .ln-mobile-bar .ln-attribution{font-size:16px!important;line-height:1.35!important;margin-top:4px;padding-top:4px}.kip-detail-page .ln-mobile-bar .ln-actions{grid-template-columns:1fr 1fr;gap:8px}}

.journey-intro{display:grid;grid-template-columns:minmax(0,1fr) 80px;gap:16px;align-items:center}.journey-kip{width:80px;height:80px;overflow:hidden;align-self:end}.journey-kip kip-animated{width:80px;height:80px}.ln-confirmation-kip{width:64px;height:64px;display:block;margin:12px 0 0}.ln-confirmation-kip kip-animated{width:64px;height:64px}.kip-detail-page .heart-reaction{display:block;position:absolute;left:14px;top:14px;width:64px;height:64px;pointer-events:none;z-index:2}.kip-detail-page .heart-reaction .heart-kip{width:64px;height:64px}
@media(max-width:640px){.journey-intro{grid-template-columns:minmax(0,1fr) 64px;gap:8px}.journey-kip,.journey-kip kip-animated{width:64px;height:64px}}

.kip-detail-page [data-tour-open],.kip-detail-page [data-detail-tour]{height:48px;padding:10px 12px!important}

/* Solid white photo controls retain contrast over every photograph. */
.kip-detail-page .photo-action,.kip-detail-page #heart,.kip-detail-page #heart[aria-pressed="true"]{background:#fff!important;opacity:1;border-color:#fff;color:#24315E;animation:none}
.kip-detail-page #heart .heart-icon{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}
.kip-detail-page #heart[aria-pressed="true"]{color:#E0475A}
.kip-detail-page #heart[aria-pressed="true"] .heart-icon{fill:currentColor}
.kip-detail-page #heart.heart-pop{animation:kip-heart-pop 200ms ease-out}
.kip-detail-page .action-kip .heart-panel-hop{animation:detailHeartHop 720ms ease-out;transform-origin:50% 85%}
@keyframes detailHeartHop{0%,100%{transform:translateY(0) rotate(0)}35%{transform:translateY(-8px) rotate(-5deg)}70%{transform:translateY(-2px) rotate(3deg)}}
.heart-toast{position:fixed;z-index:100;left:50%;bottom:calc(var(--listing-bar-space,0px) + 20px);transform:translateX(-50%);max-width:calc(100vw - 32px);box-sizing:border-box;padding:12px 18px;border-radius:12px;background:#172042;color:#fff;font-size:14px;font-weight:700;line-height:1.5;box-shadow:0 6px 24px #17204226;opacity:0;pointer-events:none;transition:opacity 150ms ease-out;text-align:center}
.heart-toast.is-visible{opacity:1}
/* Section 22 requires equal font size/color to the adjacent call to action. */
.kip-detail-page .detail-side .ln-attribution{margin-top:8px;padding-top:8px}
@media(prefers-reduced-motion:reduce){.kip-detail-page #heart.heart-pop,.kip-detail-page .action-kip .heart-panel-hop{animation:none!important;transform:none!important}.heart-toast{transition:none}}
/* Larger hit area with a small visible marker, without changing map position. */
.kip-detail-page .place-pin{width:44px;height:44px;padding:12px;border:0;background:transparent;border-radius:50%;box-sizing:border-box}
.kip-detail-page .place-pin::before{content:"";display:block;width:20px;height:20px;border:3px solid #fff;border-radius:50%;background:#24315E;box-sizing:border-box}
.kip-detail-page .place-pin:focus-visible{outline:3px solid #24315E;outline-offset:2px}
