/* ============================================================
   ALUFORMA.PRO — PODSTRONY USŁUGOWE (CPT "usluga")
   Jeden wspólny arkusz dla wszystkich podstron renderowanych
   przez page-templates/template-usluga.php. Ładowany po style.css
   (design system), może go nadpisywać.
   ============================================================ */

/* Hero kompaktowy (bez zdjęcia w tle — spójny z /kontakt) */
.aluf .hero-compact{background:var(--graphite);color:var(--alu-light);padding:56px 0 44px;}
.aluf .hero-compact .wrap{max-width:820px;}
.aluf .hero-compact h1{font-size:clamp(28px,3.6vw,40px);line-height:1.2;color:var(--white);margin-bottom:16px;letter-spacing:-0.3px;}
.aluf .hero-compact p{font-size:15.5px;color:#C9CCD1;max-width:640px;line-height:1.65;margin-bottom:28px;}
.aluf .hero-compact .hero-ctas{display:flex;gap:16px;flex-wrap:wrap;}

/* Hero kompaktowy — wariant ze zdjęciem w tle (gdy wypełnione pole
   "Zdjęcie hero" w meta boxie podstrony usługowej). Ten sam wzorzec
   co .realizacja-hero poniżej — gradient zapewnia czytelność tekstu. */
.aluf .hero-compact--photo{
  position:relative;padding:0;background-color:var(--graphite);
  background-size:cover;background-position:center;
}
.aluf .hero-compact--photo .hero-compact-overlay{
  width:100%;background:linear-gradient(180deg,rgba(17,19,24,0.10) 0%,rgba(17,19,24,0.90) 100%);
  padding:72px 0 48px;
}
.aluf .hero-compact--photo h1{text-shadow:0 2px 10px rgba(0,0,0,0.5);}
.aluf .hero-compact--photo p{text-shadow:0 1px 6px rgba(0,0,0,0.5);}

/* Breadcrumb */
.aluf .crumb{font-size:11.5px;color:var(--text-muted-light);margin-bottom:18px;letter-spacing:0.3px;}
.aluf .crumb a{color:var(--text-muted-light);}
.aluf .crumb a:hover{color:var(--brass);}

/* Siatki kart (powiązane rozwiązania) — jak na stronie głównej */
.aluf .grid{display:grid;gap:16px;}
.aluf .grid--3{grid-template-columns:repeat(3,1fr);}
.aluf .card{border-radius:5px;padding:26px 22px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}
.aluf .card--warm{background:var(--white);border:1px solid var(--border-light);}
.aluf .card--warm:hover{transform:translateY(-3px);border-color:var(--brass);box-shadow:0 16px 32px -20px rgba(17,19,24,0.25);}
.aluf .card h3{font-size:15.5px;margin-bottom:0;line-height:1.3;}
.aluf .card-link{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:0.6px;text-transform:uppercase;color:var(--brass);margin-top:14px;font-weight:600;}
.aluf .card-link svg{width:12px;height:12px;}

/* Problem / rozwiązanie — dwie kolumny */
.aluf .problem-solution{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start;}
.aluf .problem-solution h3{font-size:13px;letter-spacing:0.8px;text-transform:uppercase;color:var(--brass-dark);margin-bottom:14px;}
.aluf .problem-solution p{font-size:14.5px;line-height:1.75;color:var(--text-muted-dark);}
.aluf section.dark .problem-solution p{color:var(--text-muted-light);}
.aluf section.dark .problem-solution h3{color:var(--brass);}

/* Listy: kiedy warto (check) / na co uważać (uwaga) */
.aluf .check-list, .aluf .caution-list{display:flex;flex-direction:column;gap:14px;}
.aluf .check-list li, .aluf .caution-list li{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;}
.aluf .check-list svg{width:18px;height:18px;color:var(--ok);flex-shrink:0;margin-top:2px;}
.aluf .caution-list svg{width:18px;height:18px;color:var(--brass-dark);flex-shrink:0;margin-top:2px;}
.aluf .two-col{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.aluf .two-col h3{font-size:13px;letter-spacing:0.8px;text-transform:uppercase;color:var(--text-muted-dark);margin-bottom:16px;}

/* Zespół — karty osób (zdjęcie + bio), np. strona O nas */
.aluf .team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;}
.aluf .team-card{display:flex;gap:24px;align-items:flex-start;background:var(--white);border:1px solid var(--border-light);border-radius:8px;padding:24px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;}
.aluf .team-card:hover{transform:translateY(-3px);border-color:var(--brass);box-shadow:0 16px 32px -20px rgba(17,19,24,0.25);}
.aluf .team-photo{flex-shrink:0;width:220px;height:276px;border-radius:6px;overflow:hidden;background:var(--bg-warm-2);}
.aluf .team-photo img{width:100%;height:100%;object-fit:cover;display:block;}
.aluf .team-body h3{font-size:17px;margin-bottom:3px;line-height:1.3;}
.aluf .team-role{font-size:11.5px;letter-spacing:0.5px;text-transform:uppercase;color:var(--brass-dark);font-weight:600;margin-bottom:12px;}
.aluf .team-body p{font-size:13.5px;line-height:1.7;color:var(--text-muted-dark);margin:0 0 10px;}
.aluf .team-body p:last-child{margin-bottom:0;}

/* Parametry — siatka etykieta/wartość */
.aluf .param-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--border-dark);border:1px solid var(--border-dark);border-radius:6px;overflow:hidden;}
.aluf .param-row{background:var(--graphite-2);padding:18px 22px;}
.aluf .param-row .lbl{font-size:11px;letter-spacing:0.6px;text-transform:uppercase;color:var(--text-muted-light);margin-bottom:6px;}
.aluf .param-row .val{font-size:15px;color:var(--white);font-weight:500;}

/* Pasek CTA (prosty, bez formularza) */
.aluf .cta-band{background:var(--graphite);border-radius:8px;padding:44px 40px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.aluf .cta-band h3{color:var(--white);font-size:22px;margin-bottom:8px;}
.aluf .cta-band p{color:var(--text-muted-light);font-size:14px;margin:0;max-width:460px;}
.aluf .cta-band .ctas{display:flex;gap:14px;flex-wrap:wrap;}

/* FAQ (accordion) — te same klasy co na stronie głównej, zduplikowane
   tutaj celowo, bo home.css nie jest ładowany na podstronach usługowych. */
.aluf .faq{max-width:860px;margin:0 auto;display:flex;flex-direction:column;gap:14px;}
.aluf details.faq-item{border:1px solid var(--border-light);border-radius:8px;padding:8px 26px;background:var(--white);transition:border-color .18s ease,box-shadow .18s ease;}
.aluf details.faq-item[open]{border-color:var(--brass);box-shadow:0 16px 32px -24px rgba(17,19,24,0.25);}
.aluf details.faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:18px;padding:18px 0;font-size:16px;font-weight:600;}
.aluf details.faq-item summary::-webkit-details-marker{display:none;}
.aluf .faq-q{width:38px;height:38px;border-radius:50%;background:rgba(184,138,68,0.10);display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.aluf .faq-q svg{width:18px;height:18px;color:var(--brass-dark);}
.aluf .faq-t{flex:1;}
.aluf .faq-arrow{width:10px;height:10px;border-right:1.5px solid var(--brass-dark);border-bottom:1.5px solid var(--brass-dark);transform:rotate(45deg);transition:transform .2s ease;flex-shrink:0;}
.aluf details.faq-item[open] .faq-arrow{transform:rotate(-135deg);}
.aluf details.faq-item .faq-a{font-size:14.5px;color:var(--text-muted-dark);margin:0 0 22px 56px;max-width:640px;line-height:1.65;}

/* Strona tekstowa (polityka prywatności, cookies itp.) — the_content() */
.aluf .prose{max-width:820px;margin:0 auto;font-size:14.5px;line-height:1.8;color:var(--text-muted-dark);}
.aluf .prose h2{font-size:20px;color:var(--text-dark);margin:40px 0 14px;font-weight:600;}
.aluf .prose h2:first-child{margin-top:0;}
.aluf .prose h3{font-size:16px;color:var(--text-dark);margin:28px 0 10px;font-weight:600;}
.aluf .prose p{margin:0 0 16px;}
.aluf .prose ul{margin:0 0 16px;padding-left:20px;list-style:disc;}
.aluf .prose li{margin-bottom:8px;}
.aluf .prose a{color:var(--brass-dark);text-decoration:underline;}
.aluf .prose strong{color:var(--text-dark);font-weight:600;}
.aluf .prose em{color:var(--text-muted-dark);}

/* Blok CTA osadzony wewnątrz artykułu (.prose), np. w Poradniku —
   .prose h3/p mają wyższy priorytet kaskady niż .cta-band h3/p,
   trzeba jawnie przywrócić kolory na ciemnym tle. */
.aluf .prose .cta-band h3{color:var(--white);}
.aluf .prose .cta-band p{color:var(--text-muted-light);max-width:460px;}

/* Strona pojedynczej realizacji (template-realizacja.php) */
.aluf .realizacja-hero{position:relative;background-color:var(--graphite);background-size:cover;background-position:center;min-height:440px;display:flex;align-items:flex-end;}
.aluf .realizacja-hero-overlay{width:100%;background:linear-gradient(180deg,rgba(17,19,24,0.05) 0%,rgba(17,19,24,0.92) 100%);padding:160px 0 40px;}
.aluf .crumb--onimg{color:#C9CCD1;}
.aluf .crumb--onimg a{color:#C9CCD1;}
.aluf .crumb--onimg a:hover{color:var(--brass);}
.aluf .realizacja-hero h1{color:var(--white);font-size:clamp(28px,3.6vw,40px);margin:10px 0 12px;letter-spacing:-0.3px;}
.aluf .realizacja-lead{color:#C9CCD1;font-size:15.5px;max-width:640px;line-height:1.65;margin:0;}

.aluf .realizacja-meta{display:flex;gap:48px;flex-wrap:wrap;padding:30px 0;border-bottom:1px solid var(--border-light);margin-bottom:40px;}
.aluf .realizacja-meta-item{display:flex;flex-direction:column;gap:4px;}
.aluf .realizacja-meta-item .lbl{font-size:11px;letter-spacing:0.6px;text-transform:uppercase;color:var(--text-muted-light);}
.aluf .realizacja-meta-item .val{font-size:15px;color:var(--text-dark);font-weight:600;}

.aluf .realizacja-body{display:grid;grid-template-columns:1.6fr 1fr;gap:48px;align-items:start;margin-bottom:8px;}
.aluf .realizacja-opis p{margin:0 0 16px;font-size:14.5px;line-height:1.75;color:var(--text-muted-dark);}
.aluf .realizacja-zakres h3{font-size:13px;letter-spacing:0.8px;text-transform:uppercase;color:var(--text-muted-dark);margin-bottom:16px;}

.aluf .realizacja-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;}
.aluf .realizacja-gallery-item{display:block;border-radius:6px;overflow:hidden;aspect-ratio:4/3;}
.aluf .realizacja-gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease;}
.aluf .realizacja-gallery-item:hover img{transform:scale(1.04);}

/* Karty realizacji na stronie /realizacje */
.aluf .realizacja-card{border-radius:6px;overflow:hidden;background:var(--white);border:1px solid var(--border-light);display:block;transition:transform .2s ease,box-shadow .2s ease;}
.aluf .realizacja-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px -20px rgba(17,19,24,0.25);}
.aluf .realizacja-card-img{aspect-ratio:4/3;overflow:hidden;background:var(--bg-warm-2);}
.aluf .realizacja-card-img img{width:100%;height:100%;object-fit:cover;}
.aluf .realizacja-card-body{padding:20px 22px 24px;}
.aluf .realizacja-card-tag{font-size:11px;letter-spacing:0.6px;text-transform:uppercase;color:var(--brass-dark);margin-bottom:8px;font-weight:600;}
.aluf .realizacja-card-body h3{font-size:16.5px;margin-bottom:6px;line-height:1.3;}
.aluf .realizacja-card-body .loc{font-size:13px;color:var(--text-muted-dark);}

@media (max-width: 900px){
  .aluf .problem-solution, .aluf .two-col{grid-template-columns:1fr;gap:28px;}
  .aluf .grid--3{grid-template-columns:1fr 1fr;}
  .aluf .param-grid{grid-template-columns:1fr;}
  .aluf .team-grid{grid-template-columns:1fr;}
  .aluf .realizacja-body{grid-template-columns:1fr;gap:28px;}
  .aluf .realizacja-gallery{grid-template-columns:repeat(2,1fr);}
}
@media (max-width: 600px){
  .aluf .hero-compact{padding:34px 0 30px;}
  .aluf .hero-compact--photo .hero-compact-overlay{padding:54px 0 32px;}
  .aluf .grid--3{grid-template-columns:1fr;}
  .aluf .cta-band{padding:32px 24px;}
  .aluf details.faq-item .faq-a{margin-left:0;}
  .aluf .team-card{flex-direction:column;padding:20px;}
  .aluf .team-photo{width:100%;height:360px;}
  .aluf .realizacja-hero{min-height:340px;}
  .aluf .realizacja-hero-overlay{padding:100px 0 30px;}
  .aluf .realizacja-meta{gap:24px;}
  .aluf .realizacja-gallery{grid-template-columns:1fr 1fr;gap:10px;}
}
