/*
Theme Name: Joanna Premium
Theme URI: https://joanna.initsoft.eu
Description: Autorski motyw premium dla PPHU Joanna — producenta drewnianych opakowań. Kinowa narracja: drewno, przemysł, precyzja. Ciemna estetyka, monumentalna typografia, mikrointerakcje. Motyw potomny Twenty Twenty-Five.
Author: initSoft
Template: twentytwentyfive
Version: 2.0.0
Requires at least: 6.6
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: joanna-premium
*/

html{scroll-behavior:smooth}
body{margin:0;background:#141110}
img{max-width:100%;height:auto}
.entry-content{margin:0!important}

/* ---- Page hero band (podstrony) ---- */
.jp-phero{position:relative;background:var(--espresso,#1b1512);color:var(--paper,#f4eee4);overflow:hidden;
  padding:clamp(9rem,20vh,13rem) 0 clamp(3.5rem,8vh,6rem)}
.jp-phero__bg{position:absolute;inset:0;z-index:0;opacity:.28}
.jp-phero__bg img{width:100%;height:100%;object-fit:cover}
.jp-phero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(20,17,16,.5),rgba(20,17,16,.9))}
.jp-phero .jp-wrap{position:relative;z-index:2}
.jp-phero h1{font-family:"Fraunces",Georgia,serif;font-weight:400;font-size:clamp(2.4rem,6vw,4.6rem);line-height:1.02;letter-spacing:-.02em;margin:1.1rem 0 0;max-width:20ch}
.jp-phero p{color:#ddd2c2;max-width:52ch;margin-top:1.4rem;font-size:1.15rem;line-height:1.7}
.jp-crumbs{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--brass,#c1934a)}
.jp-crumbs a{color:inherit}

/* ---- Prose (treść podstron) ---- */
.jp-prose{max-width:820px;margin:0 auto;padding:clamp(3.5rem,8vh,6rem) var(--gutter,1.5rem)}
.jp-prose.wide{max-width:1180px}
.jp-prose h2{font-family:"Fraunces",Georgia,serif;font-weight:440;font-size:clamp(1.7rem,3.2vw,2.5rem);letter-spacing:-.015em;margin:2.6rem 0 1rem;color:#1a1512}
.jp-prose h3{font-family:"Fraunces",Georgia,serif;font-weight:460;font-size:1.4rem;margin:2rem 0 .6rem;color:#241a12}
.jp-prose p,.jp-prose li{font-family:"Inter",sans-serif;font-size:1.13rem;line-height:1.85;color:#3a2f24}
.jp-prose p{margin:0 0 1.2rem}
.jp-prose ul{padding-left:0;list-style:none;margin:0 0 1.4rem}
.jp-prose ul li{position:relative;padding-left:1.8rem;margin-bottom:.7rem}
.jp-prose ul li::before{content:"";position:absolute;left:0;top:.72em;width:9px;height:9px;background:var(--brass,#c1934a);border-radius:1px;transform:rotate(45deg)}
.jp-prose .lead{font-size:1.3rem;line-height:1.6;color:#241a12;font-family:"Fraunces",Georgia,serif;font-weight:380}
.jp-prose a{color:var(--wood,#7a4e24);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.jp-prose a:hover{color:var(--brass,#c1934a)}

/* ---- Contact Form 7 (premium) ---- */
.jp-form .wpcf7{margin-top:.5rem}
.jp-form p{margin:0 0 1.1rem}
.jp-form label{display:block;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:#a99a86;margin-bottom:.5rem}
.jp-form input[type=text],.jp-form input[type=email],.jp-form input[type=tel],.jp-form textarea,.jp-form select{
  width:100%;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.16);border-radius:4px;
  color:#f4eee4;font-family:"Inter",sans-serif;font-size:1.02rem;padding:.95rem 1.1rem;transition:.3s;outline:none}
.jp-form input::placeholder,.jp-form textarea::placeholder{color:#8a7d6d}
.jp-form input:focus,.jp-form textarea:focus,.jp-form select:focus{border-color:var(--brass,#c1934a);background:rgba(255,255,255,.06)}
.jp-form textarea{min-height:140px;resize:vertical}
.jp-form .wpcf7-submit{background:var(--brass,#c1934a);color:#1a1208;border:0;border-radius:100px;font-family:"Inter",sans-serif;
  font-weight:600;font-size:.98rem;letter-spacing:.01em;padding:1.05em 2.2em;cursor:pointer;transition:.4s;margin-top:.4rem}
.jp-form .wpcf7-submit:hover{background:#d8ac63;box-shadow:0 14px 40px -12px rgba(193,147,74,.6)}
.jp-form .wpcf7-spinner{margin:1rem auto 0;display:block}
.jp-form .wpcf7-response-output{border-radius:4px;border-width:1px!important;margin:1.2rem 0 0!important;padding:.9rem 1.1rem!important;font-size:.95rem;color:#f4eee4}
.jp-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 1rem}
@media (max-width:620px){.jp-grid2{grid-template-columns:1fr}}
