/* KociaBaza 1.0.28 — Błękitna Przystań.
   Calm editorial layout inspired by mapaKoni, with an independent blue identity.
   Major desktop sections use an exact 50px vertical rhythm. */

:root{
  --kb-primary:#34708d;
  --kb-primary-hover:#245a76;
  --kb-ink:#173449;
  --kb-text:#345366;
  --kb-muted:#526c7a;
  --kb-canvas:#f4f8fa;
  --kb-soft:#eaf3f7;
  --kb-tint:#deedf4;
  --kb-line:#d6e3e9;
  --kb-border:#abc9d7;
  --kb-on-dark:#d8e9f1;
  --blue:var(--kb-primary);
  --blue-dark:var(--kb-primary-hover);
  --ink:var(--kb-ink);
  --muted:var(--kb-muted);
  --line:var(--kb-line);
  --soft:var(--kb-canvas);
  --hero:#edf5f8;
  --shadow:0 18px 50px rgba(30,77,104,.09);
}

body{background:var(--kb-canvas);color:var(--kb-text)}
main h1,main h2:not(:where(.kb-focus-navigation *)),.section-heading h2,.portal-grid h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;color:var(--kb-ink)}
:where(a,button,input,select,textarea,summary):focus-visible{outline-color:var(--kb-primary)}
::selection{background:var(--kb-tint);color:var(--kb-ink)}

/* Header */
.site-header{height:76px;padding:0;border-bottom:1px solid var(--kb-line);background:rgba(255,255,255,.96)}
.site-header .header-inner{min-height:76px;padding:0;gap:30px;border-radius:0;background:transparent}
.site-header nav{gap:24px;color:#486475}
.site-header nav a:hover{color:var(--kb-primary-hover)}
.site-header .add-link{padding:10px 16px;border:1px solid var(--kb-primary);border-radius:7px;background:var(--kb-primary);color:#fff}
.site-header .add-link:hover{background:var(--kb-primary-hover);color:#fff}
.site-header .account-link{color:var(--kb-text)}
.mk-portal-logo .mk-logo-wordmark{color:var(--kb-ink)}

/* Home hero */
.home-page.mk-home{gap:50px;padding-bottom:50px}
.home-page .hero{position:relative;overflow:hidden;border:0;background:linear-gradient(118deg,#f7fbfc 0%,#edf5f8 58%,#e2eff5 100%)}
.home-page .hero::before{display:block;content:"";position:absolute;right:-110px;top:-170px;width:520px;height:520px;border:1px solid #bad5e1;border-radius:50%;box-shadow:0 0 0 58px rgba(255,255,255,.32),0 0 0 118px rgba(94,153,182,.05)}
.home-page .hero::after{display:grid;content:"⌖";place-items:center;position:absolute;right:max(7vw,60px);top:76px;width:190px;height:190px;border-radius:46% 54% 50% 50%;background:linear-gradient(145deg,#6da7c1,#326f8e);box-shadow:0 28px 60px rgba(37,90,118,.22);color:#fff;font-size:72px;font-weight:300;transform:rotate(-6deg)}
.home-page .hero .hero-inner{position:relative;z-index:1;padding:50px 280px 50px 0;text-align:left}
.home-page .hero h1{max-width:680px;margin:0 0 17px;font-size:42px;font-weight:400;line-height:1.14;letter-spacing:-.035em}
.home-page .hero-lead{max-width:690px;margin:0 0 30px;color:#597382;font-size:13px;line-height:1.85}
.home-page .hero .eyebrow{margin-bottom:13px;color:var(--kb-primary);font-size:11px;font-weight:600;letter-spacing:.13em}
.home-page .mk-search-form{grid-template-columns:1.25fr 1fr 1fr .82fr auto;width:calc(100% + 210px);max-width:1050px;margin:0;padding:8px;border:1px solid #d2e1e8;border-radius:10px;background:#fff;box-shadow:0 16px 38px rgba(26,72,96,.11)}
.mk-search-form>label,.mk-search-form>.mk-search-category-field{padding:7px 14px;border-color:#dce7ec}
.mk-search-form .primary-button{border-radius:7px;background:var(--kb-primary)}
.mk-search-form .primary-button:hover{background:var(--kb-primary-hover)}
.mk-search-category-panel{border-color:#cddfe7;border-radius:10px;box-shadow:0 18px 40px rgba(25,65,85,.16)}
.home-page .benefits{justify-content:flex-start;max-width:none;margin:22px 0 0;gap:14px 28px}
.home-page .benefit{flex-direction:row;gap:8px;text-align:left}
.home-page .benefit-icon{color:var(--kb-primary)}
.home-page .benefit p{color:#597382}

/* Exact mapaKoni-style 50px gap between consecutive home-page modules. */
.home-page.mk-home>section[class]{margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0}
.home-page.mk-home>section.shell{margin-left:auto;margin-right:auto}
.home-page.mk-home>.hero{padding:0}
.home-page .kb-home-guide{margin-top:0;margin-bottom:0}
.home-page .section-heading{align-items:flex-end;margin-bottom:24px}
.home-page .section-heading h2{font-size:30px;line-height:1.22;letter-spacing:-.025em}
.home-page .eyebrow{color:#6a8999}
.home-page .section-heading>a{padding:0 0 4px;border-bottom:1px solid #8db4c6;color:var(--kb-primary)}
.listing-page>.section,.mk-location-index,.mk-submit-page,.kb-for-breeders,.contact-layout,.legal-layout,.blog-layout,.account-page .account-layout{padding-top:50px;padding-bottom:50px}
.listing-head,.contact-hero,.legal-hero,.blog-hero{padding-top:50px;padding-bottom:50px}
.detail-page .detail-layout,.mk-stable-detail .detail-layout,.detail-page .similar-section,.mk-stable-detail .mk-related-section,.detail-page .detail-end,.mk-stable-detail .detail-end{padding-top:50px;padding-bottom:50px}

/* Category and editorial cards */
.category-grid{gap:10px}
.home-page .category-card{min-height:82px;padding:14px 17px;border:1px solid #d7e4e9;border-radius:12px;background:#fff;box-shadow:none}
.home-page .category-card:hover{border-color:#8eb7c9;background:#f8fbfc;transform:translateY(-2px)}
.home-page .category-card .mk-category-icon{width:48px;height:48px;flex-basis:48px;border:0;border-radius:50%;background:#e5f1f6;color:var(--kb-primary)}
.home-page .category-card strong{color:#24485d;font-weight:400}
.home-page .category-card small{color:#6f8794}
.kb-focus-navigation{padding:9px;border:1px solid #c6dce5;border-radius:18px;background:#dcebf2}
.kb-focus-tile{border-radius:12px}
.kb-focus-map,.kb-focus-breeds{background:#eef6f9;color:var(--kb-ink)}
.kb-focus-map :is(h2,p),.kb-focus-breeds :is(h3,p),.kb-focus-map .kb-focus-kicker,.kb-focus-breeds .kb-focus-kicker{color:var(--kb-ink)}
.kb-focus-map::after{background:linear-gradient(90deg,rgba(239,247,250,.94),rgba(239,247,250,.62) 47%,rgba(239,247,250,.08))}
.kb-focus-breeds::after{background:linear-gradient(90deg,#eef6f9,#eef6f9d4 52%,#eef6f900)}
.kb-focus-cities{background:#204e68;color:#fff}
.kb-focus-cities :is(h3,p),.kb-focus-cities .kb-focus-kicker{color:#fff}
.kb-focus-cities::after{background:linear-gradient(90deg,#204e68fa,#204e68e0 52%,#204e6850)}
.kb-focus-arrow{background:var(--kb-primary);color:#fff}
.kb-focus-cities .kb-focus-arrow{background:#fff;color:var(--kb-primary-hover)}

/* Maps, listings and locations */
.mk-home-map{padding-bottom:0;background:transparent}
.mk-home-map .mk-home-map-frame{border:1px solid #ccdee6;border-radius:14px;box-shadow:0 12px 32px rgba(34,81,105,.08)}
.mk-map-pin>span,.mk-map-pin.is-premium>span{background:var(--kb-primary)}
.mk-map-pin.is-verified>span{background:var(--kb-primary-hover)}
.mk-map-cluster span{background:var(--kb-primary)}
.latest-section,.mk-events-home,.mk-regions-home,.portal-copy{background:var(--kb-canvas)}
.home-page.mk-home .portal-copy{background:var(--kb-canvas)}
.listing-grid{gap:14px}
.listing-card,.mk-stable-card{border:1px solid #d5e3e9;border-radius:13px;background:#fff;box-shadow:none}
.mk-stable-card:hover{border-color:#8fb8ca;box-shadow:0 12px 28px rgba(33,78,101,.08);transform:translateY(-2px)}
.mk-stable-card .listing-image{margin:0;border-radius:12px 12px 0 0}
.mk-stable-placeholder span{display:grid;place-items:center;color:var(--kb-primary)}
.mk-stable-card .listing-content{padding:17px 18px 19px}
.mk-stable-card .listing-content h3{color:var(--kb-ink)}
.mk-card-more{color:var(--kb-primary)}
.mk-badge.verified{background:#e2f0f5;color:var(--kb-primary-hover)}
.mk-badge.premium,.premium-label,.promoted-label{background:#244f68;color:#fff}
.mk-location-chip,.mk-location-chip.province{padding:16px 17px;border:1px solid #d4e2e8;border-radius:10px;background:#fff}
.mk-location-chip:hover{border-color:#8eb5c6;background:#f9fcfd;color:var(--kb-primary-hover)}
.mk-location-chip span{background:#e4f0f5;color:var(--kb-primary)}
.home-page.mk-home .portal-grid{padding:34px;border:1px solid #d2e1e7;border-radius:14px;background:#fff;gap:22px 52px}
.home-page .portal-grid h2{font-size:30px}

/* Public subpages */
.listing-head,.contact-hero,.legal-hero,.blog-hero{border-bottom:1px solid #d6e4ea;background:linear-gradient(115deg,#edf5f8,#f7fbfc)}
.listing-head h1,.mk-location-index h1{font-size:30px;line-height:1.3}
.search-form.compact{padding:9px;border:1px solid #d3e2e8;border-radius:10px;background:#fff;box-shadow:0 10px 28px rgba(32,77,101,.07)}
.category-description,.category-description.bottom,.mk-location-seo,.mk-location-description{padding:25px;border:1px solid #d7e4e9;border-radius:12px;background:#fff}
.kb-group-guide{border-color:#d6e4ea;border-radius:12px;background:#fff}
.mk-location-index-card{border:1px solid #d7e4e9;border-radius:10px}
.mk-location-index-card:hover{border-color:#91b7c7;background:#f8fbfc}

/* Listing details, forms and account */
.mk-stable-detail .detail-main{gap:16px;padding:0;background:transparent}
.mk-stable-detail :is(.detail-title,.detail-section),.mk-stable-detail :is(.price-card,.advertiser-card,.utility-card),.mk-stable-detail .detail-end>div{border:1px solid #d6e3e9;border-radius:12px;background:#fff;box-shadow:none}
.mk-stable-detail .detail-title{background:linear-gradient(120deg,#fff,#f1f7f9)}
.mk-stable-detail .facts-grid>div{border-color:#d9e5ea;border-radius:9px;background:#f7fbfc}
.mk-stable-detail .detail-title h1{font-size:32px}
.mk-stable-detail .detail-section h2{font-family:Georgia,"Times New Roman",serif;color:var(--kb-ink)}
.mk-stable-detail .phone-button,.mk-stable-detail .primary-button{background:var(--kb-primary);color:#fff}
.mk-popularity-card{border-color:#cbdfe7;background:#f3f8fa}
.mk-submit-page .form-layout>section,.mk-submit-page .form-benefits,.account-page .profile-form fieldset,.auth-card,.contact-card,.contact-form{border:1px solid #d5e3e9;border-radius:12px;background:#fff;box-shadow:none}
.mk-submit-page .mk-public-stable-form fieldset{border-color:#d8e5ea;border-radius:10px}
:is(.mk-submit-page,.account-page,.auth-page,.contact-page) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]){border-color:#cbdde5;border-radius:8px;background:#fbfdfe}
.mk-category-choice{border-color:#d0e0e6;border-radius:8px}
.mk-category-choice:has(input:checked){border-color:var(--kb-primary);background:#e9f3f7;color:var(--kb-primary-hover);box-shadow:inset 0 0 0 1px var(--kb-primary)}
.account-page .account-hero,.premium-page .premium-hero{border-radius:12px;background:linear-gradient(120deg,#1c435a,#2f718f)}
.account-page .account-nav{border:1px solid #d5e3e9;border-radius:10px}
.account-page .account-nav a.active{background:var(--kb-primary);color:#fff}

/* For breeders */
.kb-owner-hero{border:1px solid #d0e1e8;background:linear-gradient(120deg,#eef6f9 0%,#e3f0f5 100%)}
.kb-owner-free{border:1px solid #d0e0e7;box-shadow:0 18px 40px rgba(31,75,97,.10)}
.kb-owner-eyebrow,.kb-owner-zero{color:var(--kb-primary)}
.kb-owner-button{border-color:var(--kb-primary);background:var(--kb-primary)}
.kb-owner-button:hover{border-color:var(--kb-primary-hover);background:var(--kb-primary-hover)}
.kb-owner-link,.kb-for-breeders a:not(.kb-owner-button){color:var(--kb-primary-hover)}
.kb-owner-verification-note{border-left-color:#5f9bb7;background:#edf5f8}
.kb-owner-premium{border-color:#cfdee5;background:#f7fbfc}
.kb-owner-price{border-color:#a9cad8;background:#e8f3f7}
.kb-owner-delivery{background:#edf5f8}
.kb-owner-contact{border-color:#c9dde6;background:linear-gradient(120deg,#eaf4f8,#f8fbfc)}
.kb-for-breeders a:focus-visible{outline-color:#6ea5bd}

/* Footer */
.site-footer{margin:0;border-radius:0;background:var(--kb-ink);color:#d9e8ef}
.site-footer .footer-grid p,.site-footer .footer-grid a:not(.brand){color:#c0d5df}
.site-footer .footer-bottom{border-color:#36576a;color:#9fb9c6}

@media(max-width:1000px){
  .home-page .hero .hero-inner{padding-right:190px}
  .home-page .hero::after{right:30px;width:150px;height:150px;font-size:58px}
  .home-page .mk-search-form{width:100%;grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .site-header{height:auto;padding:8px 0}
  .site-header .header-inner{min-height:58px;padding:0}
  .home-page .hero::before,.home-page .hero::after{display:none}
  .home-page .hero .hero-inner{padding:50px 0}
  .home-page .hero h1{font-size:34px}
  .home-page .mk-search-form{grid-template-columns:1fr}
  .home-page .section-heading h2,.home-page .portal-grid h2{font-size:26px}
  .home-page.mk-home .portal-grid{padding:23px 18px}
  .kb-focus-navigation{border-radius:14px}
  .mk-stable-detail .detail-title h1{font-size:28px}
}
/* Detail rhythm measured against the public mapaKoni listing; retain KociaBaza colours. */
.mk-stable-detail .detail-layout{gap:36px;margin-top:0;padding:16px 0 0}
.mk-stable-detail .detail-main{display:block;gap:0}
.mk-stable-detail :is(.detail-title,.detail-section){margin:0;padding:28px 0;border:0;border-bottom:1px solid var(--kb-line);border-radius:0;background:transparent;box-shadow:none}
.mk-stable-detail .detail-title{padding:7px 0 25px}
.mk-stable-detail .detail-section:last-child{padding-bottom:28px;border-bottom:1px solid var(--kb-line)}
.mk-stable-detail .detail-title h1{font-family:Georgia,"Times New Roman",serif;font-size:30px;font-weight:400;line-height:1.25}
.mk-stable-detail .detail-section h2{font-size:18px;font-weight:400;line-height:1.5;margin:0 0 18px;letter-spacing:normal}
.mk-stable-detail .description{font-size:13px;line-height:1.78}
.mk-stable-detail .description h3{font-family:"Open Sans",Arial,sans-serif;font-size:1.17em;font-weight:700;line-height:1.78;margin:20px 0 10px}
.mk-stable-detail .description p{margin:0 0 12px}
.mk-stable-detail .description p:last-child{margin-bottom:0}
.mk-stable-detail .facts-grid{gap:0;border:1px solid var(--kb-line);border-radius:6px;overflow:hidden}
.mk-stable-detail .facts-grid>div:nth-child(n){min-height:0;padding:14px 15px;border:0;border-right:1px solid var(--kb-line);border-radius:0;background:#fff}
.mk-stable-detail .facts-grid>div:last-child{border-right:0}
.mk-stable-detail .detail-sidebar{gap:12px;top:18px}
.mk-stable-detail :is(.price-card,.advertiser-card){padding:22px}
.mk-stable-detail .utility-card{padding:10px 18px}
.mk-stable-detail .company-data{margin-top:19px;padding-top:18px}
.mk-stable-detail .avatar{border-radius:50%;background:var(--kb-primary);color:#fff}
.mk-stable-detail .contact-actions> :is(button,a){font-size:13px;font-weight:400;min-height:0;padding:10px;border-radius:9px}
.mk-stable-detail .detail-quick-actions button{font-size:9px;font-weight:400;line-height:1.25;min-height:34px;padding:7px 6px;border-radius:9px}
.mk-stable-detail .utility-card :is(button,a){font-size:11px;font-weight:400;line-height:1.5;min-height:0}
.mk-stable-detail .mk-google-card strong{font-size:16px;font-weight:700;line-height:1.3}
.mk-stable-detail .mk-google-card>a{min-height:34px;padding:0;border-radius:4px;font-size:11px;font-weight:600}
.mk-stable-detail .company-data .social-icons{gap:6px;margin-top:14px}
.mk-stable-detail .company-data .social-icons :is(a,.disabled-social){width:28px;height:28px;flex:0 0 28px;padding:0;border-radius:4px}
.mk-stable-detail .company-data .social-icons a{background:var(--kb-soft);color:var(--kb-primary)}
.mk-stable-detail .company-data .social-icons svg{width:13px;height:13px}
.mk-stable-detail .company-data .social-icons .disabled-social{background:#f4f5f5;color:#b9bdc0;border:1px solid #e7e9eb;opacity:.62}
.mk-stable-detail .company-data .social-icons a:hover{background:var(--kb-primary);color:#fff}
.mk-stable-detail .mk-province-section{padding-bottom:0}
.mk-stable-detail .detail-end{gap:50px 70px;margin-top:0;margin-bottom:0;padding:50px 0}
.mk-stable-detail .detail-end>div{padding:0;border:0;border-radius:0;background:transparent}
.mk-stable-detail .detail-end h2{margin:0 0 17px;font-size:20px;font-weight:400;line-height:1.5}
@media(max-width:1000px){.mk-stable-detail .detail-layout{grid-template-columns:minmax(0,1fr)}.mk-stable-detail .detail-sidebar{position:static}}
@media(max-width:760px){.mk-stable-detail .detail-title h1{font-size:28px}.mk-stable-detail .detail-end{column-gap:24px}}
@media(max-width:480px){.mk-stable-detail .detail-title h1{font-size:25px}.mk-stable-detail .facts-grid>div:nth-child(n){border-bottom:1px solid var(--kb-line)}}
@media(prefers-reduced-motion:reduce){*,:before,:after{transition:none!important}}
