
/* =========================================================
   ZYSKOWNE NIERUCHOMOŚCI — TRUDNE SPRAWY
   ========================================================= */
.hard-page{
  --gold:#c8a65a;
  --gold-dark:#ad8740;
  --graphite:#2f2f2f;
  --ink:#232323;
  --muted:#706d66;
  --soft:#f6f5f1;
  --warm:#ece8df;
  --line:#ddd8cf;
  background:#fff;
  color:var(--ink);
}
.hard-page h1,.hard-page h2,.hard-page h3{font-family:Sora,Manrope,Arial,sans-serif;letter-spacing:-.045em}
.hard-page p{line-height:1.78}
.hard-page .eyebrow{display:inline-block;margin-bottom:20px;color:var(--gold-dark);font-size:.76rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.hard-text-link{display:inline-flex;align-items:center;gap:10px;color:var(--ink);font-weight:800;text-decoration:none}
.hard-text-link span{color:var(--gold);transition:transform .25s ease}
.hard-text-link:hover span{transform:translate(4px,-2px)}

.hard-hero{padding:64px 0 92px;background:linear-gradient(180deg,#fff 0%,#faf9f6 100%)}
.hard-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:74px;align-items:end}
.hard-hero-copy h1{font-size:clamp(3.8rem,6.9vw,7.5rem);line-height:.95;margin:0 0 30px;max-width:1050px}
.hard-hero-copy h1 span{display:block;color:var(--gold-dark)}
.hard-hero-copy p{max-width:790px;font-size:1.12rem;color:#5f5c56}
.hard-hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:34px}
.hard-hero-panel{background:var(--graphite);color:#fff;padding:50px 44px;border-top:3px solid var(--gold);position:relative}
.hard-panel-label{display:block;color:var(--gold);font-size:.7rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase;margin-bottom:28px}
.hard-hero-panel blockquote{margin:0 0 28px;font-family:Manrope,sans-serif;font-size:clamp(1.7rem,2.8vw,2.6rem);font-weight:800;line-height:1.28}
.hard-hero-panel p{margin:0;color:rgba(255,255,255,.66)}

.hard-problems{padding:120px 0;background:#fff}
.hard-section-head,.hard-process-head{max-width:1040px;margin-bottom:56px}
.hard-section-head h2,.hard-process-head h2{font-size:clamp(2.8rem,5.5vw,5.8rem);line-height:1.02;margin:0}
.hard-grid{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line)}
.hard-card{position:relative;min-height:360px;padding:40px 36px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;background:#fff}
.hard-card:nth-child(3n+1),.hard-card:nth-child(3n+2){border-right:1px solid var(--line)}
.hard-card:nth-child(-n+3){border-bottom:1px solid var(--line)}
.hard-card>span{position:absolute;top:30px;left:36px;color:var(--gold-dark);font-size:.72rem;font-weight:900;letter-spacing:.18em}
.hard-card:before{content:attr(data-number);position:absolute;right:18px;top:6px;font-family:Sora,sans-serif;font-size:8rem;font-weight:800;line-height:1;color:rgba(47,47,47,.04)}
.hard-card h3{font-size:1.7rem;margin:0 0 15px}
.hard-card p{margin:0;color:var(--muted)}
.hard-card-dark{background:var(--graphite);color:#fff}
.hard-card-dark>span{color:var(--gold)}
.hard-card-dark:before{color:rgba(255,255,255,.05)}
.hard-card-dark p{color:rgba(255,255,255,.66)}
.hard-card-gold{background:var(--gold);color:#fff}
.hard-card-gold>span,.hard-card-gold p{color:rgba(255,255,255,.9)}
.hard-card-gold:before{color:rgba(255,255,255,.08)}

.hard-emotion{padding:120px 0;background:var(--soft)}
.hard-emotion-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.hard-emotion-copy h2{font-size:clamp(2.8rem,5.2vw,5.3rem);line-height:1.03;margin:0 0 24px}
.hard-emotion-copy p{color:var(--muted);font-size:1.05rem}
.hard-emotion-quote{padding:52px;border:1px solid var(--line);background:#fff}
.hard-emotion-quote span{display:block;color:var(--muted);font-size:.9rem;margin:18px 0 8px}
.hard-emotion-quote span:first-child{margin-top:0}
.hard-emotion-quote strong{display:block;font-family:Manrope,sans-serif;font-size:clamp(1.8rem,3.1vw,3rem);line-height:1.25}
.hard-emotion-quote strong:last-child{color:var(--gold-dark)}

.hard-process{padding:120px 0;background:#fff}
.hard-process-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line)}
.hard-step{position:relative;min-height:350px;padding:36px 30px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;transition:background .3s ease,color .3s ease,transform .3s ease,box-shadow .3s ease}
.hard-step:not(:last-child){border-right:1px solid var(--line)}
.hard-step>span{position:absolute;top:28px;left:30px;color:var(--gold-dark);font-size:.7rem;font-weight:900;letter-spacing:.17em}
.hard-step:before{content:attr(data-number);position:absolute;right:10px;top:8px;font-family:Sora,sans-serif;font-size:6.4rem;font-weight:800;line-height:1;color:rgba(47,47,47,.04)}
.hard-step h3{font-size:1.45rem;margin:0 0 14px}
.hard-step p{margin:0;color:var(--muted);font-size:.94rem}
@media(hover:hover){
  .hard-step:hover{z-index:2;background:var(--graphite);color:#fff;transform:translateY(-7px);box-shadow:0 24px 58px rgba(0,0,0,.1)}
  .hard-step:hover p{color:rgba(255,255,255,.68)}
  .hard-step:hover>span{color:var(--gold)}
  .hard-step:hover:before{color:rgba(255,255,255,.05)}
}

.hard-support{padding:120px 0;background:var(--graphite);color:#fff}
.hard-support-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.hard-support-copy .eyebrow{color:var(--gold)}
.hard-support-copy h2{font-size:clamp(2.8rem,5.2vw,5.2rem);line-height:1.03;margin:0 0 26px}
.hard-support-copy p{color:rgba(255,255,255,.68)}
.hard-support-note{font-size:.88rem;border-left:1px solid var(--gold);padding-left:18px;margin-top:28px}
.hard-support-list{border-top:1px solid rgba(255,255,255,.16)}
.hard-support-list>div{position:relative;padding:34px 0 34px 76px;border-bottom:1px solid rgba(255,255,255,.16)}
.hard-support-list span{position:absolute;left:0;top:39px;color:var(--gold);font-size:.72rem;font-weight:900;letter-spacing:.16em}
.hard-support-list strong{display:block;font-family:Sora,sans-serif;font-size:1.55rem;margin-bottom:8px}
.hard-support-list p{margin:0;color:rgba(255,255,255,.64)}

.hard-bridge{padding:118px 0;background:var(--warm)}
.hard-bridge-inner{max-width:1120px}
.hard-bridge-inner h2{font-size:clamp(2.9rem,5.5vw,5.7rem);line-height:1.02;margin:0 0 24px}
.hard-bridge-inner p{max-width:840px;color:var(--muted);font-size:1.05rem;margin-bottom:30px}

.hard-final{padding:112px 0;background:#fff}
.hard-final-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:end}
.hard-final-copy h2{font-size:clamp(3rem,5.4vw,5.5rem);line-height:1.02;margin:0 0 24px}
.hard-final-copy p{max-width:760px;color:var(--muted)}
.hard-final-action{border-top:1px solid var(--gold);padding-top:28px}
.hard-final-action span{display:block;margin-top:18px;color:var(--muted);font-size:.88rem;line-height:1.65}

@media(max-width:1100px){
  .hard-hero-grid,.hard-emotion-grid,.hard-support-grid,.hard-final-inner{grid-template-columns:1fr;gap:52px}
  .hard-grid{grid-template-columns:repeat(2,1fr)}
  .hard-card:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}
  .hard-card:nth-child(odd){border-right:1px solid var(--line)}
  .hard-card:nth-last-child(-n+2){border-bottom:0}
  .hard-process-grid{grid-template-columns:repeat(2,1fr)}
  .hard-step:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}
  .hard-step:nth-child(odd){border-right:1px solid var(--line)}
  .hard-step:last-child{grid-column:1/-1;border-bottom:0}
}

@media(max-width:760px){
  .hard-hero{padding:36px 0 72px}
  .hard-hero-copy h1{font-size:clamp(2.9rem,13vw,4.3rem)}
  .hard-hero-actions{align-items:flex-start;flex-direction:column}
  .hard-hero-panel{padding:34px 28px}
  .hard-problems,.hard-emotion,.hard-process,.hard-support,.hard-bridge,.hard-final{padding:76px 0}
  .hard-section-head h2,.hard-process-head h2,.hard-emotion-copy h2,.hard-support-copy h2,.hard-bridge-inner h2,.hard-final-copy h2{font-size:clamp(2.4rem,10vw,3.55rem)}
  .hard-grid,.hard-process-grid{grid-template-columns:1fr}
  .hard-card:nth-child(n),.hard-step:nth-child(n){border-right:0!important;border-bottom:1px solid var(--line)!important}
  .hard-card:last-child,.hard-step:last-child{border-bottom:0!important;grid-column:auto}
  .hard-card{min-height:290px;padding:34px 28px}
  .hard-card>span{left:28px}
  .hard-emotion-grid,.hard-support-grid,.hard-final-inner{gap:44px}
  .hard-emotion-quote{padding:34px 28px}
  .hard-step{min-height:250px;padding:34px 28px}
  .hard-step>span{left:28px}
  .hard-support-list>div{padding-left:58px}
}
