/* Wspólne zasady minimalistycznego układu (strona główna i „Dom i mieszkanie”).
   Ładowany po site-ui.css. Kolory: granat, ciepłe tło, żółty jako akcent. */
:root{--navy:#2f4655;--navy-deep:#223744;--orange:#efa726;--orange-soft:#f7c665;--accent-text:#b7790f;--cream:#fbf5ed;--paper:#fffdf9;--ink:#26353e;--muted:#69767e;--line:#e9ded1;--container:1120px}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea,select{font:inherit}
.container{width:min(calc(100% - 40px),var(--container));margin:auto}
main section,section[id]{scroll-margin-top:84px}

/* typografia: umiarkowane rozmiary, bez podkreśleń-markerów */
h1,h2,h3{color:var(--navy-deep);letter-spacing:-.02em}
h1{font-size:clamp(2.1rem,3.6vw,3.1rem);line-height:1.1;letter-spacing:-.03em}
h2,.section-title{font-size:clamp(1.55rem,2.6vw,2.1rem);line-height:1.2;margin:6px 0 12px;max-width:760px}
h3{font-size:1.08rem;line-height:1.3}
.eyebrow{display:block;color:var(--accent-text);font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.section{padding:80px 0}
.section-alt{background:var(--cream)}
.section-copy{max-width:680px;color:var(--muted);font-size:1.02rem}
.section-copy strong{color:var(--navy-deep)}
.text-link{display:inline-block;margin-top:22px;font-weight:800;color:var(--navy-deep);border-bottom:2px solid var(--orange);padding-bottom:1px}
.text-link:hover{color:var(--navy)}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:999px;border:0;font-weight:800;cursor:pointer;transition:background .2s ease}
.btn-primary{background:var(--orange);color:var(--navy-deep)}
.btn-primary:hover{background:var(--orange-soft)}

/* nagłówek strony */
header{position:sticky;top:0;z-index:50;background:rgba(255,253,249,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.navbar{position:relative;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px}
.brand-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;object-position:center 18%;background:#fff}
.brand-text{font-weight:850;line-height:1.15;color:var(--navy-deep)}
.brand-text small{display:block;font-size:.74rem;font-weight:600;color:var(--muted)}
.nav,.nav-wrap{display:flex;align-items:center;gap:28px}
nav ul{display:flex;gap:26px;list-style:none}
nav li{position:relative}
nav a,.nav a:not(.btn){font-size:.94rem;font-weight:700;color:#46555d}
nav a:hover{color:var(--navy-deep)}
.nav-cta{min-height:44px;padding:0 20px;font-size:.92rem}
.nav-dropdown-menu{position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);padding:10px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 40px rgba(47,70,85,.12);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease;z-index:100}
.nav-dropdown-menu::before{content:"";position:absolute;top:-15px;left:0;right:0;height:15px}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto}
.nav-dropdown-menu a{display:block;border-radius:10px}
.nav-dropdown-menu a:hover{background:var(--cream)}
.mobile-menu-toggle,.mobile-menu-panel{display:none}

/* weryfikacja i opinie: tekst zamiast kolorowych kart */
.site-trust-section{padding:80px 0;background:var(--cream)}
.site-trust-grid{display:grid;grid-template-columns:.8fr 1.6fr;gap:56px}
.site-knf-card,.site-reviews-card{padding:0;background:none;color:inherit;box-shadow:none;border-radius:0;overflow:visible}
.site-knf-card:after{display:none}
.site-trust-eyebrow{color:var(--accent-text);font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px}
.site-knf-card h2,.site-reviews-card h2{font-size:clamp(1.3rem,2vw,1.6rem);color:var(--navy-deep)}
.site-knf-card p,.site-reviews-lead{color:var(--muted)}
.site-knf-number{margin:16px 0;padding:0;border:0;background:none}
.site-knf-number small{display:block;color:var(--muted);font-size:.85rem;opacity:1}
.site-knf-number strong{color:var(--navy-deep);font-size:1.05rem}
.site-trust-btn,.site-review-more{display:inline-block;min-height:0;padding:0 0 1px;border-radius:0;background:none;font-weight:800;color:var(--navy-deep)!important;border-bottom:2px solid var(--orange)}
.site-reviews-lead{margin-bottom:18px}
.site-review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.site-review{padding:14px 0 0;border:0;border-top:1px solid var(--line);border-radius:0;background:none}
.site-review-stars{color:var(--orange);font-size:.92rem;letter-spacing:1px;margin-bottom:6px}
.site-review p{font-size:.94rem;margin-bottom:10px}
.site-review strong{display:block;font-size:.88rem;color:var(--navy-deep)}
.site-review small{color:var(--muted);font-size:.8rem}
.site-review-photo{width:44px;height:44px;border-radius:50%;object-fit:cover;margin-bottom:8px}
.site-review-more{margin-top:22px}

/* formularze */
.form-consent{font-weight:500}
.iq-title{font-size:clamp(1.45rem,2.4vw,1.9rem)}
.iq-form{box-shadow:none}

/* FAQ */
.home-faq-list,.faq-list{max-width:820px;margin-top:20px}
.home-faq-item,.faq-item{border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;padding:0}
.home-faq-item summary,.faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:16px 0;font-weight:750;color:var(--navy-deep)}
.home-faq-item summary::-webkit-details-marker,.faq-item summary::-webkit-details-marker{display:none}
.home-faq-item summary::after,.faq-item summary::after{content:"+";float:none;color:var(--accent-text);font-weight:800}
.home-faq-item[open] summary::after,.faq-item[open] summary::after{content:"−"}
.home-faq-item p,.faq-item p{padding:0 0 16px;color:var(--muted)}

/* checklista: jasna sekcja zamiast granatowego panelu */
.lm-section{background:var(--cream);color:var(--ink);padding:80px 0}
.lm-section .iq-title{color:var(--navy-deep)}
.lm-section .iq-copy{color:var(--muted)}
.lm-section .iq-kicker{color:var(--accent-text)}
.lm-section .lm-points{color:var(--ink);font-weight:500}
.lm-section .lm-points li::before{color:var(--accent-text)}

/* stopka */
footer{background:var(--navy-deep);color:rgba(255,255,255,.78);padding:34px 0;font-size:.92rem}
footer a:hover{color:#fff}
.footer-row{display:flex;justify-content:space-between;align-items:flex-start;gap:22px}
.footer-row strong{color:#fff}
.footer-links{display:flex;flex-wrap:wrap;gap:18px}
.footer-legal-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;font-size:.82rem}
.footer-legal-links a,.cookie-settings-link{color:#fff;text-decoration:underline;text-underline-offset:3px}
.legal-footer{margin-top:10px;font-size:.8rem;opacity:.78;max-width:760px;line-height:1.45}

@media(max-width:920px){
  nav ul,.nav a:not(.btn){display:none}
  .site-trust-grid{grid-template-columns:1fr;gap:36px}
  .site-review-grid{grid-template-columns:1fr;gap:18px}
}
@media(max-width:820px){
  .nav-wrap,.nav{display:none}
  .navbar{min-height:62px}
  .brand-avatar{width:36px;height:36px}
  .mobile-menu-toggle{display:flex;width:44px;height:44px;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy-deep);font-size:1.3rem;cursor:pointer}
  .mobile-menu-panel{position:absolute;top:62px;left:0;right:0;padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 40px rgba(34,55,68,.14);z-index:90}
  .mobile-menu-panel.is-open{display:grid}
  .mobile-menu-panel a{padding:13px 12px;font-weight:750;color:var(--navy-deep);border-bottom:1px solid var(--line)}
  .mobile-menu-panel a:last-child{border-bottom:0}
}
@media(max-width:640px){
  .container{width:min(calc(100% - 32px),var(--container))}
  .section,.site-trust-section,.lm-section{padding:52px 0}
  .brand-text small{display:none}
  h1{font-size:1.85rem}
  h2,.section-title{font-size:1.45rem}
  .iq-title{font-size:1.4rem}
  .footer-row{flex-direction:column}
  .footer-legal-links{flex-direction:column;gap:8px}
}
