:root{
  --perla:#FBF8F2; --perla2:#F4EDE0; --perla3:#FFFFFF;
  --zloto:#C19A4B; --zloto-d:#A8842F; --zloto-l:#E6D3A3;
  --fiolet:#2E2547; --fiolet2:#4A3B6B; --fiolet-l:#6E5E94;
  --zielen:#5E6D4C; --ogien:#B0533B;
  --grafit:#352F3D; --grafit2:#6b6374; --linia:#EAE0CE;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:'Inter',sans-serif; color:var(--grafit); background:var(--perla); line-height:1.7; font-weight:400;
  -webkit-font-smoothing:antialiased;}
h1,h2,h3,.serif{font-family:'Cormorant Garamond',serif; color:var(--fiolet); font-weight:600; line-height:1.1;}
a{color:inherit; text-decoration:none;}
.wrap{max-width:1180px; margin:0 auto; padding:0 28px;}
.eyebrow{font-size:13px; font-weight:700; letter-spacing:.28em; text-transform:uppercase; color:var(--zielen);}
.gold{color:var(--zloto);}
.btn{display:inline-flex; align-items:center; gap:9px; font-weight:700; font-size:15px; letter-spacing:.02em;
  padding:16px 30px; border-radius:50px; border:0; cursor:pointer; transition:.2s; text-align:center;}
.btn-gold{background:linear-gradient(135deg,#A07B2C,#6F5518); color:#fff; box-shadow:0 8px 22px rgba(193,154,75,.35);}
.btn-gold:hover{transform:translateY(-2px); box-shadow:0 12px 28px rgba(193,154,75,.45);}
.btn-ghost{background:transparent; color:var(--fiolet); border:1.5px solid var(--zloto);}
.btn-ghost.light{color:#fff; border-color:rgba(255,255,255,.55);}
.btn-light{background:#fff; color:var(--fiolet);}
section{padding:92px 0;}

/* NAV */
header.nav{position:sticky; top:0; z-index:50; background:rgba(251,248,242,.86); backdrop-filter:blur(10px);
  border-bottom:1px solid var(--linia);}
.nav .wrap{display:flex; align-items:center; justify-content:space-between; height:72px;}
.brand{font-family:'Cormorant Garamond',serif; font-size:25px; font-weight:600; color:var(--fiolet);}
.brand span{color:#8F6E1C;}
.menu{display:flex; gap:30px; align-items:center; font-size:15px; font-weight:500;}
.menu a{color:var(--grafit2); transition:.2s;} .menu a:hover{color:var(--fiolet);}
.nav .btn{padding:11px 22px; font-size:14px;}
.burger{display:none;}

/* HERO */
.hero{position:relative; padding:84px 0 72px; overflow:hidden;
  background:radial-gradient(ellipse at 78% 20%, #FFFDF8, var(--perla) 52%, var(--perla2) 100%);}
.hero .wrap{display:grid; grid-template-columns:1.15fr .85fr; gap:50px; align-items:center;}
.hero h1{font-size:62px; margin:18px 0 0; letter-spacing:-.01em;}
.hero h1 em{font-style:italic; color:var(--zloto);}
.hero .sub{font-size:20px; color:var(--grafit2); margin:22px 0 30px; max-width:33ch;}
.hero .cta-row{display:flex; gap:14px; flex-wrap:wrap;}
.proof{display:flex; gap:24px; margin-top:34px; flex-wrap:wrap; font-size:14px; color:var(--grafit2);}
.proof div{display:flex; align-items:center; gap:8px;} .proof .dot{color:var(--zloto);}
.hero-photo{aspect-ratio:4/5; border-radius:20px; position:relative; overflow:hidden;
  background:radial-gradient(circle at 50% 35%, var(--zloto-l), var(--perla2)); border:1px solid var(--zloto-l);
  display:flex; align-items:flex-end; justify-content:center; box-shadow:0 30px 60px rgba(46,37,71,.14);}
.ph-note{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; text-align:center;
  color:var(--zloto-d); font-size:13px; font-weight:600; letter-spacing:.04em; padding:20px;}
.hero-photo .halo{position:absolute; top:18%; width:120px; height:120px; border-radius:50%;
  background:radial-gradient(circle,#fff,rgba(230,211,163,0)); }

/* BÓL — sekcja mocy (ciemny fiolet) */
.dark{background:linear-gradient(160deg,var(--fiolet),var(--fiolet2)); color:#F3EFFA;}
.dark h2,.dark h3{color:#fff;}
.dark .eyebrow{color:var(--zloto-l);}
.pain h2{font-size:44px; max-width:18ch; margin:14px 0 8px;}
.pain .lead{color:#D9D2EC; font-size:18px; max-width:60ch; margin-bottom:34px;}
.pain-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:18px;}
.pain-card{background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12); border-radius:14px;
  padding:22px 24px; display:flex; gap:14px; align-items:flex-start;}
.pain-card .ic{color:var(--zloto-l); font-size:20px; flex:0 0 auto;}
.pain-card p{color:#E7E1F2; font-size:16px;}
.pain .turn{margin-top:34px; font-family:'Cormorant Garamond',serif; font-size:26px; font-style:italic; color:#fff;}
.pain .turn b{color:var(--zloto-l); font-style:normal;}

/* LEAD MAGNET */
.lm .wrap{display:grid; grid-template-columns:.9fr 1.1fr; gap:50px; align-items:center;}
.lm-cover{aspect-ratio:1/1.3; border-radius:16px; background:radial-gradient(ellipse at 50% 25%,#fff,var(--perla2));
  border:1px solid var(--zloto-l); box-shadow:0 26px 50px rgba(46,37,71,.16); display:flex; flex-direction:column;
  align-items:center; justify-content:center; text-align:center; padding:40px 30px;}
.lm-cover .halo{width:80px;height:80px;border-radius:50%;margin-bottom:18px;
  background:radial-gradient(circle,#fff,var(--zloto-l)); display:flex;align-items:center;justify-content:center;
  color:var(--zloto); font-size:34px; box-shadow:0 0 40px rgba(193,154,75,.4);}
.lm-cover .t{font-family:'Cormorant Garamond',serif; font-size:30px; color:var(--fiolet); line-height:1.12;}
.lm-cover .e{font-size:12.5px; letter-spacing:.25em; text-transform:uppercase; color:var(--zielen); font-weight:700; margin-bottom:10px;}
.lm h2{font-size:42px; margin:12px 0 14px; max-width:16ch;}
.lm ul{list-style:none; margin:18px 0 26px;}
.lm li{padding-left:30px; position:relative; margin-bottom:11px; color:var(--grafit);}
.lm li::before{content:"✦"; position:absolute; left:0; color:var(--zloto);}
.lm-form{display:flex; gap:10px; flex-wrap:wrap; max-width:520px;}
.lm-form input{flex:1; min-width:220px; padding:15px 18px; border:1.5px solid var(--linia); border-radius:50px;
  font-family:inherit; font-size:15px; background:#fff;}
.lm-form .hint{width:100%; font-size:12.5px; color:var(--grafit2); margin-top:4px;}
.ph-inline{color:var(--ogien); font-weight:600;}

/* KIM JESTEM */
.about .wrap{display:grid; grid-template-columns:.8fr 1.2fr; gap:50px; align-items:center;}
.about-photo{aspect-ratio:4/5; border-radius:18px; background:radial-gradient(circle at 50% 30%,var(--zloto-l),var(--perla2));
  border:1px solid var(--zloto-l); position:relative; box-shadow:0 24px 50px rgba(46,37,71,.13);}
.about h2{font-size:44px; margin:12px 0 18px;}
.about p{margin-bottom:15px; font-size:17px;}
.about .sig{font-family:'Cormorant Garamond',serif; font-size:30px; color:var(--zloto); margin-top:8px;}

/* METODA */
.method{background:var(--perla3); border-top:1px solid var(--linia); border-bottom:1px solid var(--linia);}
.method .head{text-align:center; max-width:60ch; margin:0 auto 50px;}
.method h2{font-size:46px; margin:12px 0 14px;}
.method .head p{color:var(--grafit2); font-size:18px;}
.method-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
.m-card{background:var(--perla); border:1px solid var(--linia); border-radius:16px; padding:34px 28px; text-align:center;}
.m-card .ic{width:64px;height:64px;margin:0 auto 18px; border-radius:50%;
  background:radial-gradient(circle at 40% 35%,var(--zloto-l),var(--zloto)); color:#fff; font-size:28px;
  display:flex;align-items:center;justify-content:center;}
.m-card h3{font-size:25px; margin-bottom:8px;}
.m-card p{font-size:15.5px; color:var(--grafit2);}

/* OFERTA */
.offer .head{text-align:center; margin-bottom:50px;}
.offer h2{font-size:46px; margin:12px 0 10px;}
.offer .head p{color:var(--grafit2); font-size:18px;}
.offer-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px; align-items:stretch;}
.o-card{background:#fff; border:1px solid var(--linia); border-radius:18px; padding:34px 30px; display:flex;
  flex-direction:column; position:relative;}
.o-card.feat{border:2px solid var(--zloto); box-shadow:0 24px 50px rgba(193,154,75,.18); transform:translateY(-6px);}
.o-card .badge{position:absolute; top:-13px; left:50%; transform:translateX(-50%); background:var(--zloto); color:#fff;
  font-size:12.5px; font-weight:700; letter-spacing:.16em; text-transform:uppercase; padding:6px 16px; border-radius:50px;}
.o-card .step{font-size:13px; font-weight:700; letter-spacing:.2em; text-transform:uppercase; color:var(--zielen);}
.o-card h3{font-size:30px; margin:8px 0 6px;}
.o-card .price{font-family:'Cormorant Garamond',serif; font-size:22px; color:var(--zloto); margin-bottom:14px;}
.o-card ul{list-style:none; margin:0 0 24px; flex:1;}
.o-card li{padding-left:26px; position:relative; margin-bottom:9px; font-size:15px;}
.o-card li::before{content:"✓"; position:absolute; left:0; color:var(--zielen); font-weight:700;}
.o-card .btn{width:100%; justify-content:center;}

/* KROKI SESJI */
.steps .head{text-align:center; margin-bottom:50px;}
.steps h2{font-size:46px; margin-top:12px;}
.steps-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
.s-card{text-align:center;}
.s-card .n{width:56px;height:56px;margin:0 auto 16px;border-radius:50%;
  background:var(--fiolet); color:#fff; font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:600;
  display:flex;align-items:center;justify-content:center;}
.s-card h3{font-size:22px; margin-bottom:6px;}
.s-card p{font-size:14.5px; color:var(--grafit2);}

/* OPINIE */
.rev{background:var(--perla3); border-top:1px solid var(--linia); border-bottom:1px solid var(--linia);}
.rev .head{text-align:center; margin-bottom:46px;}
.rev h2{font-size:46px; margin-top:12px;}
.rev-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px;}
.r-card{background:var(--perla); border:1px solid var(--linia); border-radius:16px; padding:30px 28px;}
.r-card .stars{color:var(--zloto); letter-spacing:3px; margin-bottom:12px;}
.r-card p{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:19px; color:var(--fiolet); line-height:1.4;}
.r-card .who{margin-top:16px; font-size:14px; font-weight:600; color:var(--grafit2);}
.rev .note{text-align:center; margin-top:24px; font-size:13px; color:var(--ogien);}

/* FAQ */
.faq .head{text-align:center; margin-bottom:40px;}
.faq h2{font-size:46px; margin-top:12px;}
.faq-list{max-width:780px; margin:0 auto;}
details{background:#fff; border:1px solid var(--linia); border-radius:12px; margin-bottom:12px; padding:4px 6px;}
summary{cursor:pointer; padding:18px 22px; font-weight:600; font-size:17px; color:var(--fiolet); list-style:none;
  display:flex; justify-content:space-between; align-items:center;}
summary::-webkit-details-marker{display:none;}
summary::after{content:"+"; color:var(--zloto); font-size:24px; font-weight:400;}
details[open] summary::after{content:"–";}
details p{padding:0 22px 20px; color:var(--grafit2); font-size:16px;}

/* CTA FINAL */
.final h2{font-size:50px; max-width:20ch; margin:14px auto 16px; text-align:center;}
.final .lead{text-align:center; color:#D9D2EC; font-size:19px; max-width:54ch; margin:0 auto 32px;}
.final .cta-row{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}

/* FOOTER */
footer{background:#241D38; color:#B8AEC9; padding:60px 0 30px; font-size:14.5px;}
footer .grid{display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; margin-bottom:40px;}
footer .brand{color:#fff;} footer h3,footer h4{color:#fff; font-family:'Inter'; font-size:14px; letter-spacing:.1em;
  text-transform:uppercase; margin-bottom:14px; font-weight:700;}
footer a{display:block; margin-bottom:9px; color:#B8AEC9;} footer a:hover{color:var(--zloto-l);}
footer .bottom{border-top:1px solid rgba(255,255,255,.1); padding-top:22px; display:flex; justify-content:space-between;
  flex-wrap:wrap; gap:10px; font-size:13px; color:#8d83a0;}
.ph{color:var(--ogien); font-weight:600;}

@media(max-width:880px){
  .hero .wrap,.lm .wrap,.about .wrap{grid-template-columns:1fr;}
  .hero-photo,.about-photo{max-width:360px; margin:0 auto;}
  .pain-grid,.method-grid,.offer-grid,.steps-grid,.rev-grid{grid-template-columns:1fr;}
  .hero h1{font-size:46px;} h2{font-size:36px !important;}
  .menu{display:none;} .burger{display:block; font-size:26px;}
  header.nav .btn-gold{display:none;}
  .brand{white-space:nowrap; font-size:21px; line-height:1.05;}
  header.nav .wrap{height:60px;}
  footer .grid{grid-template-columns:1fr;}
}

/* ===== PODSTRONY ===== */
.page-hero{padding:72px 0 48px; background:radial-gradient(ellipse at 72% 18%,#FFFDF8,var(--perla) 60%); border-bottom:1px solid var(--linia);}
.page-hero h1{font-size:54px; max-width:20ch; margin:14px 0 16px;}
.page-hero h1 em{font-style:italic; color:var(--zloto);}
.page-hero .sub{font-size:20px; color:var(--grafit2); max-width:58ch;}
.prose{max-width:780px; margin:0 auto;}
.prose p{font-size:17px; margin-bottom:18px;}
.prose h2{font-size:38px; margin:40px 0 14px;}
.prose h3{font-size:26px; margin:28px 0 8px; color:var(--fiolet);}
.prose blockquote{border-left:3px solid var(--zloto); padding:8px 26px; margin:28px 0;
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:25px; color:var(--fiolet); line-height:1.4;}
.prose ul{margin:0 0 22px; padding:0; list-style:none;}
.prose ul li{padding-left:30px; position:relative; margin-bottom:11px; font-size:17px;}
.prose ul li::before{content:"✦"; position:absolute; left:0; color:var(--zloto);}
.disclaimer{background:#FFF8F2; border:1px solid var(--zloto-l); border-left:4px solid var(--ogien);
  border-radius:10px; padding:18px 22px; font-size:14.5px; color:var(--grafit2); margin:26px 0;}
.center-cta{text-align:center; padding:8px 0 10px;}
.center-cta .btn{margin:6px;}

/* ===== ZDJĘCIA + WIDEO ===== */
.hero-photo{padding:0;}
.hero-photo img{width:100%;height:100%;object-fit:cover;border-radius:20px;display:block;}
.about-photo-img{position:relative;}
.about-photo-img img{width:100%;border-radius:16px;object-fit:contain;
  background:radial-gradient(ellipse at 50% 28%,var(--perla2),var(--perla));
  box-shadow:0 24px 50px rgba(46,37,71,.16);display:block;}
.photo-cap{text-align:center;font-family:'Cormorant Garamond',serif;font-style:italic;
  color:var(--grafit2);font-size:16px;margin-top:12px;}

.video-jr{background:var(--perla3);border-top:1px solid var(--linia);border-bottom:1px solid var(--linia);}
.video-jr .head{text-align:center;max-width:60ch;margin:0 auto 36px;}
.video-jr h2{font-size:44px;margin:12px 0 12px;}
.video-jr .head p{color:var(--grafit2);font-size:18px;}
.video-vertical{max-width:340px;margin:0 auto;aspect-ratio:478/850;border-radius:22px;overflow:hidden;
  box-shadow:0 30px 64px rgba(46,37,71,.30), 0 8px 20px rgba(193,154,75,.20), 0 0 0 1px rgba(255,255,255,.05) inset;
  border:1px solid var(--zloto-l);background:#2E2547;transition:transform .2s ease, box-shadow .2s ease;}
.video-vertical:hover{transform:translateY(-4px);
  box-shadow:0 40px 78px rgba(46,37,71,.36), 0 12px 26px rgba(193,154,75,.28), 0 0 0 1px rgba(255,255,255,.07) inset;}
.video-vertical video{width:100%;height:100%;object-fit:cover;display:block;}
.video-frame{max-width:860px;margin:0 auto;aspect-ratio:16/9;border-radius:18px;overflow:hidden;
  background:linear-gradient(135deg,var(--fiolet),var(--fiolet2));box-shadow:0 30px 60px rgba(46,37,71,.25);
  display:flex;align-items:center;justify-content:center;}
.video-frame iframe,.video-frame video{width:100%;height:100%;border:0;display:block;}
.vf-inner{text-align:center;color:#EDE7F7;padding:30px;}
.play{width:74px;height:74px;border-radius:50%;margin:0 auto 16px;background:rgba(255,255,255,.14);
  border:2px solid rgba(255,255,255,.55);display:flex;align-items:center;justify-content:center;
  font-size:24px;color:#fff;padding-left:5px;}
.vf-note{font-size:14px;color:#C8BEDD;max-width:48ch;margin:0 auto;line-height:1.6;}

.vrev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:840px;margin:0 auto;}
.vrev-card{aspect-ratio:9/16;border-radius:16px;background:linear-gradient(160deg,#F4ECDD,#EFE6D2);
  border:1px solid var(--zloto-l);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;}
.vrev-card .play{background:var(--zloto);border-color:#fff;width:60px;height:60px;font-size:20px;}
.vrev-note{font-size:13px;color:var(--grafit2);text-align:center;font-weight:600;}

.story-photo{margin:32px 0;text-align:center;}
.story-photo img{max-width:520px;width:100%;border-radius:16px;
  background:radial-gradient(ellipse at 50% 30%,var(--perla2),var(--perla));
  box-shadow:0 20px 44px rgba(46,37,71,.15);}
.story-photo figcaption{font-family:'Cormorant Garamond',serif;font-style:italic;
  color:var(--grafit2);font-size:17px;margin-top:12px;}

@media(max-width:880px){.vrev-grid{grid-template-columns:1fr 1fr;}.video-jr h2{font-size:34px;}}

/* ===== SALES LONG-FORM ===== */
.sec-narrow{max-width:820px;margin:0 auto;}
.lead-big{font-size:21px;color:var(--grafit2);line-height:1.7;}
.kicker-c{text-align:center;}
.section-h{font-size:44px;text-align:center;max-width:22ch;margin:12px auto 16px;}
.section-sub{text-align:center;color:var(--grafit2);font-size:18px;max-width:60ch;margin:0 auto 40px;}

/* mechanizm "dlaczego nie dzialalo" */
.mech{background:var(--perla3);border-top:1px solid var(--linia);border-bottom:1px solid var(--linia);}
.mech-row{display:grid;grid-template-columns:1fr 1fr;gap:26px;max-width:900px;margin:30px auto 0;}
.mech-card{border-radius:16px;padding:28px 26px;}
.mech-bad{background:#FBF1EE;border:1px solid #E8C5BC;}
.mech-good{background:#F1F4EC;border:1px solid var(--zielen);}
.mech-card h3{font-size:23px;margin-bottom:10px;}
.mech-bad h3{color:var(--ogien);} .mech-good h3{color:var(--zielen);}
.mech-card p{font-size:16px;color:var(--grafit);}

/* oferta stack */
.offer-stack{max-width:720px;margin:0 auto;background:#fff;border:2px solid var(--zloto);border-radius:20px;
  overflow:hidden;box-shadow:0 30px 60px rgba(193,154,75,.2);}
.os-head{background:linear-gradient(135deg,var(--fiolet),var(--fiolet2));color:#fff;padding:30px;text-align:center;}
.os-head h3{color:#fff;font-size:32px;margin-bottom:6px;}
.os-head p{color:#D9D2EC;font-size:15px;}
.os-body{padding:30px 34px;}
.os-item{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:15px 0;border-bottom:1px dashed var(--linia);}
.os-item:last-child{border-bottom:0;}
.os-item .d{flex:1;}
.os-item .d b{font-size:17px;color:var(--fiolet);font-family:'Cormorant Garamond',serif;font-weight:600;font-size:20px;}
.os-item .d span{display:block;font-size:14px;color:var(--grafit2);margin-top:2px;}
.os-item .v{flex:0 0 auto;font-weight:700;color:var(--zloto);font-size:15px;white-space:nowrap;}
.os-item .v s{color:var(--grafit2);font-weight:400;}
.os-total{background:var(--perla);padding:22px 34px;text-align:center;border-top:2px solid var(--zloto-l);}
.os-total .sum{font-size:16px;color:var(--grafit2);}
.os-total .sum s{color:var(--ogien);}
.os-total .price{font-family:'Cormorant Garamond',serif;font-size:40px;color:var(--fiolet);margin:6px 0 4px;}
.os-total .price .ph-inline{font-size:22px;}
.os-total .btn{margin-top:14px;}

/* gwarancja */
.guarantee{max-width:760px;margin:0 auto;background:linear-gradient(135deg,#FCF6E8,#F7EFDD);
  border:1px solid var(--zloto-l);border-radius:18px;padding:36px 38px;text-align:center;position:relative;}
.guarantee .seal{width:84px;height:84px;border-radius:50%;margin:0 auto 18px;
  background:radial-gradient(circle at 40% 35%,var(--zloto-l),var(--zloto));color:#fff;font-size:38px;
  display:flex;align-items:center;justify-content:center;box-shadow:0 8px 22px rgba(193,154,75,.4);}
.guarantee h3{font-size:30px;margin-bottom:12px;}
.guarantee p{font-size:18px;color:var(--grafit);max-width:54ch;margin:0 auto;}

/* dla kogo / nie dla kogo */
.forwhom-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:900px;margin:0 auto;}
.fw-card{border-radius:16px;padding:30px 28px;}
.fw-yes{background:#F1F4EC;border:1px solid var(--zielen);}
.fw-no{background:#FBF1EE;border:1px solid #E8C5BC;}
.fw-card h3{font-size:24px;margin-bottom:16px;display:flex;align-items:center;gap:10px;}
.fw-yes h3{color:var(--zielen);} .fw-no h3{color:var(--ogien);}
.fw-card ul{list-style:none;}
.fw-card li{padding-left:28px;position:relative;margin-bottom:11px;font-size:16px;}
.fw-yes li::before{content:"✓";position:absolute;left:0;color:var(--zielen);font-weight:700;}
.fw-no li::before{content:"✕";position:absolute;left:0;color:var(--ogien);font-weight:700;}

/* scarcity bar */
.scarcity{background:linear-gradient(135deg,var(--ogien),#B85741);color:#fff;text-align:center;padding:30px;border-radius:16px;max-width:760px;margin:0 auto;}
.scarcity h3{color:#fff;font-size:28px;margin-bottom:8px;}
.scarcity p{color:#FBE7E0;font-size:17px;}

/* PS */
.ps-box{max-width:760px;margin:30px auto 0;background:var(--perla3);border-left:4px solid var(--zloto);
  border-radius:0 12px 12px 0;padding:24px 28px;}
.ps-box p{font-size:17px;color:var(--grafit);}
.ps-box b{color:var(--fiolet);}

/* big CTA row */
.cta-center{text-align:center;margin-top:32px;}
.cta-center .btn{margin:6px;}
.trust-line{text-align:center;font-size:13.5px;color:var(--grafit2);margin-top:14px;}

@media(max-width:880px){
  .mech-row,.forwhom-grid{grid-template-columns:1fr;}
  .section-h{font-size:34px;}
}

/* ===== HORMOZI ANATOMY: sticky CTA + trust + microcopy ===== */
body{padding-bottom:0;}
@media(max-width:880px){body{padding-bottom:86px;}}
.sticky-cta{position:fixed;left:0;right:0;bottom:0;z-index:60;background:rgba(46,37,71,.97);
  backdrop-filter:blur(8px);padding:12px 0;transform:translateY(130%);transition:transform .35s ease;
  box-shadow:0 -6px 24px rgba(0,0,0,.2);}
.sticky-cta.show{transform:translateY(0);}
.sticky-cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.sticky-cta .txt{color:#fff;font-size:15px;font-weight:600;}
.sticky-cta .txt b{color:var(--zloto-l);font-weight:700;}
.sticky-cta .btn{padding:11px 26px;font-size:14px;}
@media(max-width:880px){.sticky-cta .txt{font-size:13px;} .sticky-cta .btn{padding:10px 18px;}}

.cta-micro{font-size:13.5px;color:var(--grafit2);margin-top:10px;}
.cta-micro.light{color:#C8BEDD;}

.trust-strip{background:var(--perla3);border-top:1px solid var(--linia);border-bottom:1px solid var(--linia);}
.trust-strip .head{text-align:center;margin-bottom:30px;}
.trust-strip h2{font-size:34px;}
.trust-quote{max-width:760px;margin:0 auto;text-align:center;}
.trust-quote .stars{color:var(--zloto);letter-spacing:4px;font-size:20px;margin-bottom:14px;}
.trust-quote p{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:26px;color:var(--fiolet);line-height:1.4;}
.trust-quote .who{margin-top:14px;font-size:14px;color:var(--grafit2);font-weight:600;}
.trust-facts{display:flex;justify-content:center;gap:46px;flex-wrap:wrap;margin-top:36px;text-align:center;}
.trust-facts .ti{max-width:210px;}
.trust-facts .ti .ic{font-size:30px;color:var(--zloto);}
.trust-facts .ti .t{font-family:'Cormorant Garamond',serif;font-size:21px;color:var(--fiolet);margin:6px 0 2px;}
.trust-facts .ti .d{font-size:14px;color:var(--grafit2);}
@media(max-width:880px){.trust-facts{gap:28px;} .trust-quote p{font-size:21px;}}

/* hero: pełna sylwetka (portret pionowy) */
.hero-photo{aspect-ratio:auto !important;background:transparent;border:0;box-shadow:none;align-items:center;}
.hero-photo img{height:auto !important;object-fit:contain;max-height:600px;width:auto;max-width:100%;margin:0 auto;
  border-radius:18px;box-shadow:0 28px 56px rgba(46,37,71,.16);}
@media(max-width:880px){.hero-photo img{max-height:480px;}}

/* hero: portret do pasa (kremowy) — pełne wypełnienie 4/5 */
.hero-photo{aspect-ratio:4/5 !important;background:radial-gradient(circle at 50% 30%,var(--zloto-l),var(--perla2));border:1px solid var(--zloto-l);align-items:stretch;}
.hero-photo img{height:100% !important;width:100% !important;object-fit:cover;object-position:center top;max-height:none !important;max-width:none !important;border-radius:18px;box-shadow:0 28px 56px rgba(46,37,71,.16);}

/* hero: pokaż CAŁY portret (twarz widoczna) */
.hero .wrap{align-items:center;}
.hero-photo{aspect-ratio:auto !important;background:transparent !important;border:0 !important;box-shadow:none !important;align-items:center !important;justify-content:center;}
.hero-photo img{object-fit:contain !important;height:auto !important;width:auto !important;max-height:580px !important;max-width:100% !important;border-radius:18px;margin:0 auto;box-shadow:0 28px 56px rgba(46,37,71,.16);}

/* okładka custom GPT (obraz) */
.lm-cover-img{padding:0 !important;overflow:hidden;}
.lm-cover-img img{width:100%;height:100%;object-fit:cover;border-radius:16px;display:block;}

/* grafiki AI na stronie */
.flower-sep{display:block;max-width:300px;width:100%;margin:0 auto;opacity:.9;}
.transform-btf{display:block;max-width:190px;width:100%;margin:0 auto 8px;}
.final.portal-bg{background:linear-gradient(rgba(40,32,62,.88),rgba(40,32,62,.93)),url('assets/images/bg-portal.webp') center/cover !important;}

/* mobile menu (burger toggle) */
@media(max-width:880px){
  .nav .wrap{position:relative;}
  .menu{display:none;position:absolute;top:58px;right:0;background:#fff;flex-direction:column;
    padding:14px 22px;gap:13px;box-shadow:0 12px 32px rgba(46,37,71,.18);border-radius:0 0 14px 14px;
    border:1px solid var(--linia);min-width:190px;z-index:55;}
  .menu.open{display:flex;}
  .burger{cursor:pointer;user-select:none;font-size:24px;color:var(--fiolet);}
}

/* scroll-reveal (premium) — class dodawana przez JS, bez JS sekcje widoczne */
.reveal{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);}
.reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important;}}

/* ===== MOBILE PRO PASS (<=600px) ===== */
@media(max-width:600px){
  section{padding:52px 0;}
  .wrap{padding:0 18px;}
  .hero{padding:60px 0 44px;}
  .hero .wrap,.about .wrap,.lm .wrap{gap:30px;}
  .hero h1{font-size:38px;}
  .hero .sub{font-size:17px;}
  .hero .cta-row{flex-direction:column;}
  .hero .cta-row .btn{width:100%;justify-content:center;}
  .btn{padding:15px 24px;}
  h1{font-size:38px;} h2,.section-h{font-size:29px!important;}
  .pain h2{font-size:27px;}
  .section-sub,.lead,.lead-big{font-size:16.5px;}
  .turn{font-size:22px;}
  .trust-quote p{font-size:19px;}
  /* wideo-opinie 1 kolumna (pionowe karty nie ściskają się) */
  .vrev-grid{grid-template-columns:1fr!important;max-width:270px;}
  /* oferta stack */
  .offer-stack{box-shadow:0 16px 36px rgba(193,154,75,.18);}
  .os-head{padding:24px 20px;} .os-head h3{font-size:27px;}
  .os-body{padding:22px 18px;}
  .os-item{gap:10px;} .os-item .d b{font-size:18px;} .os-item .v{font-size:14px;}
  .os-total{padding:20px 18px;} .os-total .price{font-size:34px;}
  /* gwarancja, scarcity */
  .guarantee{padding:28px 22px;} .guarantee h3{font-size:25px;} .guarantee p{font-size:16.5px;}
  .scarcity{padding:24px 20px;} .scarcity h3{font-size:23px;}
  /* karty, kroki, metoda */
  .method-grid,.steps-grid,.offer-grid{gap:16px;}
  .m-card{padding:26px 22px;}
  .video-frame{aspect-ratio:16/10;}
  .vf-note{font-size:13px;}
  /* zdjęcia wyśrodkowane */
  .about-photo-img,.lm-cover{max-width:300px;margin:0 auto 22px;}
  /* podstrony */
  .page-hero{padding:52px 0 38px;} .page-hero h1{font-size:38px;} .page-hero .sub{font-size:17px;}
  .prose p,.prose ul li{font-size:16px;} .prose h2{font-size:29px;} .prose h3{font-size:22px;}
  .prose blockquote{font-size:21px;padding:6px 18px;}
  /* sticky + footer */
  .sticky-cta{padding:8px 0;} .sticky-cta .wrap{gap:10px;} .sticky-cta .txt{font-size:13.5px;} .sticky-cta .btn{padding:9px 16px;font-size:13px;}
  footer{padding:48px 0 26px;} footer .grid{gap:26px;}
  .cta-center .btn,.center-cta .btn{width:100%;justify-content:center;margin:6px 0;}
  .final .cta-row{flex-direction:column;align-items:stretch;}
  .final .cta-row .btn{width:100%;justify-content:center;}
}

/* ===== FIX AUDYT 2026-08-22 (lazy-load skoki / FAQ / tablet hero / padding) ===== */
.about-photo-img img{height:auto;}
.lm-cover-img{aspect-ratio:2/3;}
.story-photo img{height:auto;}
@media(max-width:880px){ .hero{padding:50px 0 44px;} }
@media(max-width:600px){
  section{padding:46px 0;}
  summary{padding:13px 16px!important;font-size:15px!important;line-height:1.35;}
  summary::after{font-size:20px!important;}
}

/* --- wlasny zestaw ikon (zastapil emoji i znaki unicode) --- */
.ico{width:1em;height:1em;display:inline-block;vertical-align:-.12em;flex:none;}
.ico-lg{width:1.35em;height:1.35em;vertical-align:-.24em;}

.btn .ico{width:.95em;height:.95em;vertical-align:-.06em;margin-left:.4em;opacity:.92;}
.proof .ico,.ti .ic .ico{opacity:.95;}
.play .ico{width:1.1em;height:1.1em;vertical-align:-.16em;}

/* --- czytelnosc i rytm (audyt 2026-08-24) --- */
/* dlugie akapity do lewej; naglowki i eyebrow zostaja wysrodkowane */
section > .wrap > p, section > .wrap > .lead, .sec-narrow > p{text-align:left;}
.pain-card p, .m-card p, .o-card p, .mech-card p{text-align:left;}
/* przycisk w pasku nie lamie sie na dwie linie */
.sticky-cta .btn{white-space:nowrap;}
/* znak +/- w FAQ nie klei sie do tekstu */
summary{gap:18px;}
summary::after{flex:none;}
/* rytm: koniec FAQ nie zostawia dziury, karta niedoboru nie klei sie do sekcji */
.faq-list{margin-bottom:0;}
.scarcity, .guarantee{margin:34px auto 46px;}

/* --- formularz przewodnika --- */
.lead-form{display:flex;flex-direction:column;gap:14px;max-width:420px;margin-top:22px;}
.lf-pole{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--grafit2);}
.lf-pole input{padding:13px 15px;border:1px solid var(--linia);border-radius:12px;font:inherit;font-size:16px;
  background:#fff;color:var(--grafit);}
.lf-pole input:focus-visible{outline:2px solid var(--zloto);outline-offset:1px;border-color:var(--zloto);}
.lf-zgoda{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;line-height:1.5;color:var(--grafit2);}
.lf-zgoda input{margin-top:3px;flex:none;width:17px;height:17px;accent-color:var(--zloto);}
.lf-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.lead-form .btn{align-self:flex-start;}
.lf-status{font-size:14px;margin:0;min-height:1.2em;}
.lf-status.ok{color:var(--zielen);} .lf-status.zle{color:var(--ogien);}


/* --- responsywnosc telefonu (audyt 2026-09-02) ---
   Zmierzone na 390px: h2 mial 29px przy interlinii 1.10 (globalna dla serif),
   przez co naglowek "Niby wszystko jest w porzadku..." lamal sie na 5 linii,
   a cala strona miala 18160px = 21,5 ekranu. */
@media(max-width:600px){
  /* serif z polskimi ogonkami potrzebuje oddechu - 1.1 zlepia wiersze */
  h1,h2,h3,.serif,.section-h{line-height:1.24;}
  /* rowniejsze wiersze zamiast sierot typu "A w" na koncu linii */
  h1,h2,h3,.section-h,.turn,.trust-quote p{text-wrap:balance;}
  h2,.section-h{font-size:26px!important;}
  h1,.hero h1,.page-hero h1{font-size:34px;}
  /* max-width w ch trzymal naglowki w waskiej kolumnie: 5 linii mimo mniejszego fontu */
  .pain h2,.lm h2,.final h2,.about h2,.method h2,.offer h2{max-width:none;}
  .pain h2{font-size:25px;}
  .final h2{font-size:28px!important;}
}
@media(max-width:430px){
  section{padding:38px 0;}
  .wrap{padding:0 16px;}
  h2,.section-h{font-size:24px!important;}
  h1,.hero h1,.page-hero h1{font-size:31px;}
  .pain h2{font-size:23px;}
  .final h2{font-size:26px!important;}
  .lead-big,.section-sub,.lead{font-size:16px;}
  .trust-quote p{font-size:18px;}
  .turn{font-size:20px;}
}

/* Przedzial 601-880px (tablety, telefon w poziomie) byl pominiety:
   h2 mial 36px z max-width:18ch, czyli 5 linii, a cala strona rosla
   z 15345px do 19507px zaraz za progiem 600px. Zmierzone 2026-09-02. */
@media(min-width:601px) and (max-width:880px){
  h1,h2,h3,.serif,.section-h{line-height:1.24;}
  h1,h2,h3,.section-h{text-wrap:balance;}
  h2,.section-h{font-size:30px!important;}
  h1,.hero h1,.page-hero h1{font-size:40px;}
  .pain h2,.lm h2,.final h2,.about h2,.method h2,.offer h2{max-width:none;}
  .final h2{font-size:32px!important;}
  section{padding:56px 0;}
}

/* Najmniejsze telefony (<=380px): tekst w pasku lamal sie na dwie linie
   i pasek robil sie wyzszy niz przycisk. */
@media(max-width:380px){
  .sticky-cta .txt{font-size:12px;line-height:1.25;}
  .sticky-cta .btn{padding:9px 14px;font-size:12.5px;}
}

/* Desktop: naglowki mialy max-width w ch (18ch = ~360px przy 44px foncie),
   przez co "Niby wszystko jest w porzadku..." lamalo sie na 5 waskich linii
   z sierota "A w" i pustka obok. Szersza kolumna + rowne lamanie. */
@media(min-width:881px){
  h1,h2,h3,.section-h,.turn{text-wrap:balance;}
  h1,h2,h3,.serif,.section-h{line-height:1.16;}
  .pain h2{max-width:26ch;}
  .lm h2{max-width:22ch;}
  .about h2,.method h2,.offer h2{max-width:24ch;}
}

/* Podpis "Justyna" konczy list, wiec idzie zaraz pod tekstem, a przycisk pod nim.
   Wczesniej wisial 8px pod przyciskiem i wygladal jak jego czesc. */
.about .sig{margin:22px 0 0;}
.about .btn{margin-top:26px!important;}
/* zdjecie i tekst zaczynaja sie na tej samej wysokosci (bylo align-items:center,
   przez co zdjecie wisialo w srodku kolumny o 238px krotszej niz tekst) */
@media(min-width:881px){ .about .wrap{align-items:start;} }


/* ============ CELE DOTYKOWE NA TELEFONIE ============
   Zmierzone na zywo: przycisk "Umow sesje" 111x40 px, przycisk menu 22x41,
   siedem pozycji menu po 25 px wysokosci. Prog dla palca to 44 px.
   Ujemny margines oddaje uklad, wiec rosnie samo pole dotyku, nie odstepy. */
@media (pointer: coarse), (max-width: 880px) {
  .btn { min-height: 44px; }
  .burger {
    min-width: 44px; min-height: 44px;
    display: flex; align-items: center; justify-content: center;
  }
  .menu a, footer a, .brand {
    padding-block: 11px;
    margin-block: -11px;
    display: inline-block;
  }
}

/* Hero 2026-09-25: zdjecie wypelnia cala karte kolumny (bylo object-fit:contain
   z max-height:580px, wiec portret 820x1024 wisial maly posrodku kolumny). */
.hero .wrap{grid-template-columns:1fr 1fr;align-items:stretch;}
.hero-photo{aspect-ratio:4/5 !important;width:100%;max-width:none !important;align-self:center;
  border-radius:22px !important;overflow:hidden;box-shadow:0 30px 60px rgba(46,37,71,.18) !important;}
.hero-photo img{width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;
  object-fit:cover !important;object-position:50% 18%;border-radius:0 !important;box-shadow:none !important;margin:0 !important;}
@media(max-width:880px){
  .hero .wrap{grid-template-columns:1fr;}
  .hero-photo{max-width:520px !important;margin:0 auto;}
}
@media(max-width:600px){ .hero-photo{max-width:none !important;aspect-ratio:4/5 !important;} }

/* ===== anti-slop-web 2026-09-25 (work/knowledge/prompty/anti-slop/anti-slop-web.md) =====
   Deklaracja: kierunek "cieply edytorial" (ksiazka + list), Cormorant Garamond w naglowkach, bo Justyna jest
   autorka ksiazki i pisze listowo; Inter w tekscie, bo czytelnosc na telefonie. Paleta z funkcja:
   perla = tlo, fiolet = tekst i ciemne sekcje, zloto = jedyny kolor akcji, zielen = etykiety. */

/* Trzy rozne stany: najechanie podnosi, fokus rysuje obwodke (klawiatura), klikniecie wciska. Bylo: fokus 1 regula, klikniecie 0. */
a:focus-visible,button:focus-visible,.btn:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{
  outline:2px solid #A8842F !important;outline-offset:3px !important;border-radius:6px;}
.dark a:focus-visible,.dark .btn:focus-visible{outline-color:#E6D3A3 !important;}
.btn:active{transform:translateY(1px) scale(.985);box-shadow:none;transition-duration:.05s;}
@media(prefers-reduced-motion:reduce){.btn-gold:hover,.btn:active{transform:none;}}

/* Sygnal 2: plama swiatla w tle hero nic nie niesie - tlo plaskie. */
.hero{background:var(--perla) !important;}

/* Sygnal 1/3: swiecace zlote kule pod ikonami (radial zloto-l->zloto) -> cienki obrys, ikona w kolorze akcji. */
.m-card .ic,.guarantee .seal{background:none !important;box-shadow:none !important;border:1.5px solid var(--zloto);color:var(--zloto-d) !important;}
.m-card .ic .ico,.guarantee .seal .ico{color:var(--zloto-d);fill:currentColor;}

/* Sygnal 5: szesc identycznych kart bolu to rzeczy rowne -> lista wierszy z linia, nie siatka pudelek. */
.pain-grid{display:block !important;max-width:760px;margin-top:28px;border-top:1px solid rgba(230,211,163,.25);}
.pain-card{background:none !important;border:0 !important;border-bottom:1px solid rgba(230,211,163,.25) !important;
  border-radius:0 !important;box-shadow:none !important;padding:18px 0 !important;display:block !important;transform:none !important;}
.pain-card p{font-size:17px;line-height:1.6;margin:0;}

/* katalog-500 #134: skok do kotwicy chowal naglowek sekcji pod przyklejonym paskiem menu */
section[id],[id="gpt"],[id="przewodnik"]{scroll-margin-top:84px;}

/* naglowek w wysrodkowanym bloku .head: max-width w ch bez auto-marginesow przesuwal go w lewo (zrzut 2026-09-25) */
.head h2,.head .section-h{margin-left:auto;margin-right:auto;}
