/* 2.9 · legible cards, explicit interaction states and touch-first refinements. */
.rk .rk-card {isolation:isolate; container-type:inline-size; border-color:var(--rk-line); background:var(--rk-surface);}
.rk .rk-card-body {gap:12px; min-width:0;}
.rk .rk-card-body h3 {margin:0; text-wrap:balance; overflow-wrap:anywhere;}
.rk .rk-card-body>.rk-eyebrow {font-size:11px; letter-spacing:.07em; gap:6px;}
.rk .rk-card-actions {gap:7px;}
.rk .rk-card-actions button {width:42px;height:42px; border:1px solid #ffffffaa; background:#fffffff2;}
.rk .rk-card-actions button[aria-pressed=true] {background:var(--rk-red);color:#fff;}
.rk .rk-card-project-link {display:flex;align-items:center;gap:8px;color:var(--rk-muted);font-size:12px;line-height:1.4;}
.rk .rk-card-project-link span {flex:1;}
.rk .rk-card-project-link>.rk-icon {width:16px;height:16px;flex:0 0 16px;}
.rk .rk-card-facts {margin:2px 0;gap:8px;}
.rk .rk-card-facts>span {font-size:11px;background:color-mix(in srgb,var(--rk-bg) 80%,transparent);border:1px solid var(--rk-line);border-radius:7px;padding:7px 9px;gap:5px;line-height:1.45;}
.rk .rk-card-facts .rk-icon {width:16px;height:16px;}
.rk .rk-developer-line {padding:11px 0;margin:0;border-block:1px solid var(--rk-line);gap:9px;font-size:12px;}
.rk .rk-developer-line img {width:45px;height:34px;object-fit:contain;border:1px solid var(--rk-line);border-radius:7px;background:white;padding:5px;}
.rk .rk-payment-strip {display:flex;gap:12px;align-items:stretch;margin:0;padding:13px 0;border:0;border-radius:0;background:transparent;}
.rk .rk-payment-metric {display:flex;align-items:center;gap:9px;flex:1;min-width:0;}
.rk .rk-payment-metric+.rk-payment-metric {border-inline-start:1px solid var(--rk-line);padding-inline-start:12px;}
.rk .rk-payment-metric>.rk-icon {color:var(--rk-icon-color,var(--rk-red));width:19px;height:19px;flex:0 0 19px;}
.rk .rk-payment-metric small {display:block;font-size:10px;line-height:1.45;color:var(--rk-muted);font-weight:400;}
.rk .rk-payment-metric strong {display:block;font-size:17px;line-height:1.5;font-variant-numeric:tabular-nums;}
.rk .rk-card-price {margin:0;padding:17px 18px;min-height:88px;border-radius:11px;gap:10px;}
.rk .rk-card-price small {letter-spacing:.05em;font-size:10px;}
.rk .rk-card-price strong {font-size:clamp(20px,6.3cqi,var(--rk-price-size,25px));letter-spacing:-.035em;line-height:1.3;}
.rk .rk-card-price-copy {min-width:0;}
.rk .rk-card-price .rk-card-go {flex:0 0 42px;padding:10px;min-width:42px;}
.rk .rk-card-price .rk-card-go>.rk-icon {color:inherit;}
.rk .rk-agent-compact {padding-top:13px;border-color:var(--rk-line);background:transparent;}
.rk .rk-agent-compact .rk-agent-heading {gap:7px;}
.rk .rk-agent-compact .rk-agent-heading small {display:none;}
.rk .rk-agent-compact .rk-agent-heading strong {font-size:10px;letter-spacing:1px;}
.rk .rk-agent-compact .rk-agent-avatar {display:none;}
.rk .rk-agent-compact .rk-agent-links {display:flex;flex-wrap:wrap;gap:7px;margin-top:8px;}
.rk .rk-agent-compact .rk-agent-links a {flex:1;justify-content:center;min-height:42px;padding:8px;font-size:11px;border-color:var(--rk-line);}
.rk .rk-card-developers .rk-card-footer {margin-top:auto;}
.rk .rk-card-developers .rk-follow-button {min-height:44px;width:100%;justify-content:center;}
.rk[data-card-density=compact] {--rk-card-padding:18px;--rk-card-image-height:220px;--rk-card-image-mobile:200px;}
.rk[data-card-density=compact] .rk-card-body {gap:9px;}
.rk .rk-active-filters {display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:20px 0 4px;}
.rk .rk-active-filters[hidden] {display:none;}
.rk .rk-filter-chip {display:flex;align-items:center;gap:10px;min-height:38px;max-width:100%;border:1px solid var(--rk-line);background:var(--rk-surface);color:var(--rk-navy);border-radius:30px;padding:7px 13px;font:inherit;font-size:12px;text-align:start;overflow-wrap:anywhere;}
.rk .rk-filter-chip>span {font-size:18px;color:var(--rk-red);}
.rk .rk-filter-chip:hover {border-color:var(--rk-red);}
.rk .rk-filter-clear {min-height:40px;border:0;background:transparent;color:var(--rk-red);font:inherit;font-size:12px;padding:7px 10px;text-decoration:underline;text-underline-offset:4px;}
.rk .rk-result-count {display:inline-flex;align-items:center;gap:9px;min-height:36px;font-size:12px;font-weight:600;}
.rk .rk-result-count:before {content:'';width:7px;height:7px;border-radius:50%;background:var(--rk-red);}
.rk .rk-results-toolbar {gap:12px;}
.rk .rk-results-toolbar>div {display:flex;flex-wrap:wrap;gap:6px 12px;}
.rk .rk-results-toolbar button {min-height:42px;}
.rk[aria-busy=true] .rk-results-list {opacity:.55;pointer-events:none;}
.rk[aria-busy=true] .rk-result-count:before {animation:rk-pulse .8s ease-in-out infinite alternate;}
.rk .rk-empty {grid-column:1/-1;border:1px dashed var(--rk-line);border-radius:14px;background:var(--rk-surface);padding:42px 22px;text-align:center;}
.rk .rk-anchor-nav a {min-height:44px;border-radius:8px;transition:background .18s,color .18s;}
.rk .rk-anchor-nav a[aria-current=location] {color:var(--rk-red);background:color-mix(in srgb,var(--rk-red) 7%,var(--rk-surface));}
.rk .rk-detail-section {scroll-margin-top:105px;}
.rk .rk-section-title {align-items:center;}
.rk .rk-section-symbol {border:1px solid var(--rk-line);border-radius:12px;background:var(--rk-surface);}
.rk .rk-fact {border-radius:12px;border:1px solid var(--rk-line);background:var(--rk-surface);}
.rk .rk-map-tools button {min-width:42px;min-height:42px;}
.rk .rk-map-more>summary,.rk .rk-advanced>summary {min-height:40px;align-content:center;}
.rk .rk-map-caption {padding:12px 16px;line-height:1.65;font-size:11px;}
.rk .rk-map-consent {background:linear-gradient(145deg,var(--rk-bg),var(--rk-surface));}
.rk .rk-map-legend {flex-wrap:wrap;gap:8px 15px;}
.rk .rk-map-shell .leaflet-control-attribution {font-size:10px;}
.rk :is(button,a,input,select,textarea,summary):focus-visible {outline:3px solid var(--rk-focus,var(--rk-red));outline-offset:3px;}
@keyframes rk-pulse {to{opacity:.3;}}
@media (max-width:1000px) {
 .rk .rk-map-toolbar {flex-wrap:wrap;gap:12px;}
 .rk .rk-map-tools {margin-inline-start:auto;}
 .rk .rk-map-identity {flex:1 1 150px;}
}
@media (max-width:700px) {
 .rk .rk-card-actions button {width:44px;height:44px;}
 .rk .rk-field :is(input,select,textarea),.rk-enquiry :is(input,select,textarea) {font-size:16px;}
 .rk .rk-map-filter-primary {grid-template-columns:1fr 1fr;}
 .rk .rk-map-filter-primary>.rk-field:nth-of-type(4) {grid-column:auto;}
 .rk .rk-map-filter-primary>.rk-map-apply {grid-column:1/-1;}
 .rk .rk-map-filter-primary input,.rk .rk-map-filter-primary select,.rk .rk-map-filter-grid input,.rk .rk-map-filter-grid select {min-height:44px;font-size:16px;padding:9px;}
 .rk .rk-map-filter-primary .rk-field,.rk .rk-map-filter-grid .rk-field {font-size:10px;letter-spacing:0;}
 .rk .rk-map-toolbar {padding:14px;}
 .rk .rk-map-tools {width:100%;justify-content:space-between;}
 .rk .rk-map-tools button {flex:1;justify-content:center;}
 .rk .rk-map-tools button span {display:inline;font-size:10px;}
 .rk .rk-results-toolbar {align-items:flex-start;flex-wrap:wrap;}
 .rk .rk-results-toolbar>div {gap:5px 12px;}
 .rk .rk-results-toolbar button {font-size:11px;}
 .rk .rk-filter-chip {min-height:44px;font-size:11px;}
 .rk .rk-mobile-enquire {bottom:max(12px,env(safe-area-inset-bottom));min-height:48px;}
 .rk .rk-enquiry,.rk .rk-detail-aside {scroll-margin-top:92px;}
 .rk .rk-payment-metric small {font-size:11px;}
 .rk .rk-card-body h3 {line-height:1.25;}
}
@media (max-width:380px) {
 .rk .rk-map-filter-grid {grid-template-columns:1fr;}
 .rk .rk-payment-metric {gap:5px;}
 .rk .rk-payment-metric strong {font-size:15px;}
 .rk .rk-agent-compact .rk-agent-links a {flex:1 1 40%;}
}
@media (prefers-reduced-motion:reduce) {
 .rk *, .rk *:before, .rk *:after {scroll-behavior:auto!important;animation:none!important;transition:none!important;}
 .rk .rk-card:hover {transform:none;}
}
.rk-ui-no-motion .rk *, .rk-ui-no-motion .rk *:before {animation:none!important;transition:none!important;}
.rk-ui-no-motion .rk .rk-card:hover {transform:none;}
/* Reset legacy separator styles now that payment summaries use real metric cells. */
.rk .rk-payment-metric>span{padding:0;color:var(--rk-navy);}
.rk [hidden]{display:none!important;}
.rk.rk-toast{color:#fff;}
.rk .rk-entity-banner{min-width:0;}
.rk .rk-entity-banner h2{min-width:0;flex:1;overflow-wrap:anywhere;}
.rk .rk-entity-banner>.rk-icon{flex:0 0 20px;}
@media(max-width:700px){.rk .rk-entity-banner{gap:12px;}.rk .rk-entity-banner>img{width:72px;height:56px;flex-shrink:0;}.rk .rk-entity-banner h2{font-size:21px;}}
@media(max-width:380px){.rk .rk-entity-banner{gap:10px;}.rk .rk-entity-banner>img{width:56px;height:46px;}.rk .rk-entity-banner h2{font-size:19px;}}
/* Keep the spam trap in the form's coordinate space in both LTR and RTL. */
.rk .rk-enquiry{position:relative;}
.rk .rk-honeypot{position:absolute!important;inset:auto!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;}
