:root{
  --cream:#FBF7F1; --cream-2:#F6F0E7; --cream-3:#EFE7DA; --white:#FFFFFF;
  --ink:#1E2733; --ink-2:#5E6672; --ink-3:#969EA8;
  --line:#EAE3D8; --line-2:#D9D1C3;
  --terra:#C05A2E; --terra-dk:#A44A22; --terra-sf:#F9E9DF;
  --navy:#1B2530; --navy-2:#26313D; --navy-line:#33404E;
  --footer:#161E27;
  --ok:#4E7A4E; --ok-sf:#E9F1E7;
  --warn:#B0762A; --warn-sf:#F8EEDD;
  --info:#4E6478; --info-sf:#E9EDF2;
  --shadow:0 1px 2px rgba(30,39,51,.04), 0 12px 28px -20px rgba(30,39,51,.28);
}
*{box-sizing:border-box}
body{margin:0; background:var(--cream); color:var(--ink); font-family:"DM Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif; font-size:16px; line-height:1.62; -webkit-font-smoothing:antialiased}
h1,h2,h3,h4{margin:0; font-family:Lora,Georgia,serif; font-weight:500; line-height:1.18; letter-spacing:-.01em; text-wrap:balance}
p{margin:0}
.mono-n{font-variant-numeric:tabular-nums}



.w{max-width:1180px; margin:0 auto; padding:0 28px}
.sec{padding:72px 0}
.center{text-align:center}
.sec-t{font-size:clamp(1.6rem,3vw,2.05rem)}
.rule{width:44px; height:2px; background:var(--terra); margin:14px auto 0; border-radius:2px}
.rule.l{margin-left:0}
.sub-t{color:var(--ink-2); margin-top:12px; font-size:.98rem}

/* NAV */
nav{background:var(--cream); border-bottom:1px solid rgba(234,225,212,.7)}
nav .in{max-width:1180px; margin:0 auto; padding:0 28px; height:72px; display:flex; align-items:center; gap:38px}
.logo{display:flex; align-items:baseline; gap:9px}
.logo .mk{width:26px; height:26px; flex:0 0 26px; position:relative; align-self:center}
.logo .mk i{position:absolute; width:11px; height:11px; border:2px solid var(--terra); border-radius:2px; display:block}
.logo .mk i:nth-child(1){left:0; top:0}
.logo .mk i:nth-child(2){right:0; top:0; border-color:#D9A48A}
.logo .mk i:nth-child(3){left:0; bottom:0; border-color:#D9A48A}
.logo .mk i:nth-child(4){right:0; bottom:0}
.logo .wm{font-weight:700; letter-spacing:.14em; font-size:.92rem; text-transform:uppercase}
.logo .wm span{font-weight:400; letter-spacing:.04em; font-size:.66rem; color:var(--ink-2); margin-left:2px}
nav ul{list-style:none; display:flex; gap:26px; margin:0; padding:0; font-size:.92rem; color:var(--ink-2)}
nav .sp{flex:1}
.btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:11px 20px; border-radius:6px; font-size:.9rem; font-weight:500; white-space:nowrap}
.btn.pri{background:var(--terra); color:#fff}
.btn.out{border:1px solid var(--line-2); color:var(--ink); background:transparent}
.btn.gh{color:var(--ink-2); padding-left:0; padding-right:0}
.btn.lg{padding:14px 26px; font-size:.95rem}
.btn.dark{background:var(--navy); color:#fff}
.btn.light-out{border:1px solid var(--line-2); color:var(--ink)}

/* HERO */
.hero{position:relative; padding:60px 0 54px; overflow:hidden}
.hero .photo-r{position:absolute; right:0; top:40px; width:210px; height:420px; border-radius:10px 0 0 10px; background:linear-gradient(160deg,#E6DFD2,#CFC4B0 55%,#B9AD97); opacity:.85}
.hero .photo-r::after{content:""; position:absolute; inset:0; background:radial-gradient(circle at 30% 30%, rgba(255,255,255,.35), transparent 60%)}
.hero-grid{display:grid; grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr); gap:44px; align-items:center; position:relative; z-index:1}
.hero h1{font-size:clamp(2.1rem,4.3vw,3.1rem); line-height:1.14}
.hero .lede{color:var(--ink-2); margin-top:20px; font-size:1rem; max-width:44ch}
.hero .cta{display:flex; gap:12px; margin-top:26px; flex-wrap:wrap}
.hero .micro{display:flex; gap:26px; flex-wrap:wrap; margin-top:28px; padding-top:20px; border-top:1px solid var(--line); font-size:.79rem; color:var(--ink-2)}
.hero .micro span{display:flex; gap:8px; align-items:center}
.dotic{width:15px; height:15px; border-radius:50%; border:1.5px solid var(--terra); flex:0 0 15px; position:relative}
.dotic::after{content:""; position:absolute; left:4px; top:4px; width:5px; height:5px; border-radius:50%; background:var(--terra)}

/* APLIKACJA */
.app{background:var(--white); border:1px solid var(--line); border-radius:12px; overflow:hidden; box-shadow:0 30px 70px -44px rgba(30,39,51,.5); display:grid; grid-template-columns:150px minmax(0,1fr)}
.side{background:var(--cream-2); border-right:1px solid var(--line); padding:14px 0}
.side .brand{display:flex; align-items:center; gap:7px; padding:0 14px 14px; font-size:.7rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-3); border-bottom:1px solid var(--line)}
.side .brand i{width:14px; height:14px; border-radius:3px; background:var(--terra); display:block; flex:0 0 14px}
.side ul{list-style:none; margin:12px 0 0; padding:0; font-size:.74rem; color:var(--ink-2)}
.side li{display:flex; align-items:center; gap:8px; padding:7px 14px}
.side li i{width:12px; height:12px; border-radius:3px; background:var(--line-2); flex:0 0 12px}
.side li.on{background:var(--terra-sf); color:var(--terra-dk); font-weight:500}
.side li.on i{background:var(--terra)}
.pane{padding:14px 16px}
.pane-top{display:flex; align-items:center; gap:10px; font-size:.78rem; color:var(--ink-3); padding-bottom:10px; border-bottom:1px solid var(--line)}
.pane-top .dots{margin-left:auto; display:flex; gap:6px}
.pane-top .dots i{width:9px; height:9px; border-radius:50%; background:var(--line-2); display:block}
.pane h4{font-family:"DM Sans",sans-serif; font-weight:700; font-size:1.02rem; margin:14px 0 4px; display:flex; align-items:center; gap:10px}
.pane .cli{font-size:.74rem; color:var(--ink-3); display:flex; align-items:center; gap:7px}
.pane .cli i{width:15px; height:15px; border-radius:50%; background:linear-gradient(140deg,#DCCFC0,#BEA894); display:block}
.chip{display:inline-block; font-size:.65rem; font-weight:500; padding:3px 9px; border-radius:20px; white-space:nowrap}
.chip.ok{background:var(--ok-sf); color:var(--ok)}
.chip.warn{background:var(--warn-sf); color:var(--warn)}
.chip.info{background:var(--info-sf); color:var(--info)}
.chip.terra{background:var(--terra-sf); color:var(--terra-dk)}
.stepper{display:flex; align-items:center; margin:18px 0 16px}
.stepper .st{flex:1; text-align:center; position:relative; font-size:.63rem; color:var(--ink-3)}
.stepper .st::before{content:""; display:block; width:11px; height:11px; border-radius:50%; background:var(--line-2); margin:0 auto 7px; position:relative; z-index:1}
.stepper .st::after{content:""; position:absolute; top:5px; left:-50%; width:100%; height:2px; background:var(--line-2)}
.stepper .st:first-child::after{display:none}
.stepper .st.done::before{background:var(--terra)}
.stepper .st.done::after{background:var(--terra)}
.stepper .st.now::before{background:var(--terra); box-shadow:0 0 0 4px var(--terra-sf)}
.stepper .st.done,.stepper .st.now{color:var(--ink)}
.kpis{display:grid; grid-template-columns:repeat(3,1fr); gap:10px}
.kpi{border:1px solid var(--line); border-radius:8px; padding:11px 12px; background:var(--cream)}
.kpi .k{font-size:.63rem; color:var(--ink-3); text-transform:uppercase; letter-spacing:.06em}
.kpi .v{font-weight:700; font-size:1.15rem; margin-top:3px; font-variant-numeric:tabular-nums}
.kpi .m{font-size:.62rem; color:var(--ink-3)}
.kpi .bar{height:4px; background:var(--line); border-radius:3px; margin-top:7px; overflow:hidden}
.kpi .bar i{display:block; height:100%; background:var(--terra); border-radius:3px}
.two{display:grid; grid-template-columns:minmax(0,1.35fr) minmax(0,1fr); gap:12px; margin-top:14px}
.blk{border:1px solid var(--line); border-radius:8px; padding:11px 12px}
.blk .bt{font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--ink-3); margin-bottom:9px}
.act{display:flex; align-items:center; gap:8px; padding:6px 0; font-size:.7rem; border-bottom:1px solid var(--line)}
.act:last-child{border-bottom:none}
.act i{width:18px; height:18px; border-radius:50%; background:linear-gradient(140deg,#DCCFC0,#BEA894); flex:0 0 18px; display:block}
.act b{font-weight:500}
.act span{margin-left:auto; color:var(--ink-3); font-size:.62rem}
.qa{display:flex; align-items:center; gap:8px; padding:7px 9px; border:1px solid var(--line); border-radius:6px; font-size:.7rem; margin-bottom:7px}
.qa:last-child{margin-bottom:0}
.qa i{width:14px; height:14px; border-radius:3px; background:var(--terra-sf); flex:0 0 14px; display:block}

/* PASEK KORZYŚCI */
.benefits{background:var(--navy); color:#E8EDF2}
.benefits .in{max-width:1180px; margin:0 auto; padding:26px 28px; display:grid; grid-template-columns:repeat(4,1fr); gap:26px}
.benefit{display:flex; gap:13px; align-items:flex-start; font-size:.84rem; color:#D2DAE2; line-height:1.45}
.benefit .ic{width:34px; height:34px; flex:0 0 34px; border:1.5px solid #7C879A; border-radius:7px; position:relative}
.benefit .ic::after{content:""; position:absolute; left:8px; top:8px; right:8px; bottom:8px; border:1.5px solid #7C879A; border-radius:2px; opacity:.7}

/* JAK DZIAŁA */
.flow{display:grid; grid-template-columns:repeat(4,1fr); gap:26px; margin-top:44px; position:relative}
.flow::before{content:""; position:absolute; top:19px; left:12.5%; right:12.5%; height:1px; background:var(--line-2)}
.flow .f{text-align:center; position:relative}
.flow .n{width:38px; height:38px; border-radius:50%; background:var(--navy); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:.9rem; margin:0 auto 18px; position:relative; z-index:1}
.flow h3{font-family:"DM Sans",sans-serif; font-weight:700; font-size:.95rem; margin-bottom:8px}
.flow p{font-size:.82rem; color:var(--ink-2); max-width:26ch; margin:0 auto}

/* NARZĘDZIA */
.tools-wrap{background:var(--cream-2); border:1px solid var(--line); border-radius:14px; padding:34px; display:grid; grid-template-columns:272px minmax(0,1fr); gap:32px; align-items:stretch}
.t-title{display:flex; flex-direction:column; align-self:stretch}
.tools-wrap > .t-title h2{font-size:1.65rem}
.t-photo{flex:1; min-height:330px; margin-top:24px; border-radius:10px; overflow:hidden; border:1px solid var(--line); box-shadow:var(--shadow); background:var(--cream-3)}
.t-photo img{width:100%; height:100%; object-fit:cover; object-position:42% 26%; display:block}
.t-cap{font-size:.76rem; color:var(--ink-3); margin-top:10px; line-height:1.4}
.tgrid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px}
.tgrid.five{grid-template-columns:repeat(5,minmax(0,1fr)); margin-top:14px}
.card{background:var(--white); border:1px solid var(--line); border-radius:10px; padding:16px; box-shadow:var(--shadow)}
.card h4{font-family:"DM Sans",sans-serif; font-weight:700; font-size:.9rem; margin-bottom:5px}
.card p{font-size:.76rem; color:var(--ink-2); line-height:1.42}
.mini{margin-top:12px; display:flex; flex-direction:column; gap:7px}
.mrow{display:flex; align-items:center; gap:8px; font-size:.7rem}
.mrow .sq{width:15px; height:15px; border-radius:3px; background:var(--cream-3); flex:0 0 15px}
.mrow .bar{height:6px; border-radius:3px; background:var(--cream-3); flex:1}
.mrow .bar.t{background:#E7C9B8}
.mrow b{margin-left:auto; font-weight:500; font-variant-numeric:tabular-nums}
.mood{display:grid; grid-template-columns:repeat(4,1fr); gap:5px; margin-top:12px}
.mood i{aspect-ratio:1; border-radius:4px; display:block}
.ph1{background:linear-gradient(140deg,#E3DAC9,#C7B79E)}
.ph2{background:linear-gradient(140deg,#D8CFC2,#B2A794)}
.ph3{background:linear-gradient(140deg,#E7DBD2,#CBB4A6)}
.ph4{background:linear-gradient(140deg,#DCDCD0,#B4B7A4)}
.gantt{margin-top:12px; display:flex; flex-direction:column; gap:6px}
.gantt .g{height:8px; border-radius:4px; background:var(--cream-3); position:relative}
.gantt .g i{position:absolute; top:0; bottom:0; border-radius:4px; background:#D9B3A0; display:block}
.gantt .g.b i{background:#A9B4C2}
.chart{margin-top:12px; height:56px; display:flex; align-items:flex-end; gap:3px}
.chart i{flex:1; background:#EFDDD2; border-radius:2px 2px 0 0; display:block}
.chart i.hi{background:var(--terra)}
.portal-mini{margin-top:12px; border:1px solid var(--line); border-radius:7px; padding:10px; display:flex; gap:9px; align-items:center; font-size:.7rem}
.portal-mini .av{width:26px; height:26px; border-radius:50%; background:linear-gradient(140deg,#DCCFC0,#BEA894); flex:0 0 26px}
.sig{margin-top:12px; border:1px dashed var(--line-2); border-radius:7px; padding:12px; text-align:center; font-family:Lora,serif; font-style:italic; color:var(--ink-3); font-size:.85rem}
.pres{margin-top:12px; height:66px; border-radius:6px; background:linear-gradient(140deg,#E7DED0,#C9BCA6)}

/* WSPÓŁPRACA */
.collab-sec{background:var(--navy); color:#E8EDF2}
.collab-sec h2{color:#fff}
.collab-sec p{color:#B9C3CE}
.collab-sec .checks div{color:#D2DAE2}
.collab-sec .chk{background:rgba(192,90,46,.26); color:#EDA783}
.collab-sec .tagf{background:var(--navy-2); border-color:var(--navy-line); color:#EDA783}
.eyebrow-p{display:inline-block; font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:#9BA6B3; border:1px solid var(--navy-line); border-radius:4px; padding:5px 11px; margin-bottom:16px}
.collab{display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:48px; align-items:center}
.checks{display:flex; flex-direction:column; gap:11px; margin-top:24px}
.checks div{display:flex; gap:11px; align-items:flex-start; font-size:.88rem; color:var(--ink-2)}
.chk{width:17px; height:17px; border-radius:4px; background:var(--terra-sf); color:var(--terra-dk); font-size:10px; display:inline-flex; align-items:center; justify-content:center; flex:0 0 17px; font-weight:700}
.devices{position:relative; padding:0 78px 24px 0}
.laptop{background:var(--white); border:1px solid var(--line); border-radius:10px; overflow:hidden; box-shadow:0 26px 60px -40px rgba(30,39,51,.55)}
.laptop .lt{display:flex; align-items:center; gap:9px; padding:10px 13px; background:var(--cream-2); border-bottom:1px solid var(--line); font-size:.75rem; font-weight:500}
.laptop .lb{display:grid; grid-template-columns:104px minmax(0,1fr); min-height:180px}
.laptop .nav2{border-right:1px solid var(--line); padding:11px 0; font-size:.68rem; color:var(--ink-2)}
.laptop .nav2 div{padding:6px 12px; display:flex; gap:7px; align-items:center}
.laptop .nav2 div.on{background:var(--terra-sf); color:var(--terra-dk)}
.laptop .nav2 i{width:11px; height:11px; border-radius:3px; background:var(--line-2); display:block}
.laptop .nav2 div.on i{background:var(--terra)}
.laptop .body2{padding:13px}
.prog{margin:10px 0 14px}
.prog .lb2{display:flex; justify-content:space-between; font-size:.68rem; color:var(--ink-2); margin-bottom:5px}
.prog .track{height:7px; border-radius:4px; background:var(--cream-3); overflow:hidden}
.prog .track i{display:block; height:100%; background:var(--navy); border-radius:4px}
.msg{display:flex; gap:8px; align-items:flex-start; padding:7px 0; border-bottom:1px solid var(--line); font-size:.7rem}
.msg:last-child{border-bottom:none}
.msg i{width:20px; height:20px; border-radius:50%; background:linear-gradient(140deg,#DCCFC0,#BEA894); flex:0 0 20px; display:block}
.phone{position:absolute; right:0; bottom:0; width:146px; background:var(--white); border:1px solid var(--line-2); border-radius:18px; padding:8px; box-shadow:0 26px 50px -32px rgba(30,39,51,.6)}
.phone .scr{background:var(--cream); border-radius:12px; padding:10px; font-size:.6rem}
.tagf{position:absolute; background:var(--white); border:1px solid var(--line); border-radius:20px; padding:5px 13px; font-size:.7rem; color:var(--terra-dk); box-shadow:var(--shadow)}
.tagf.t1{left:-14px; top:34%}
.tagf.t2{left:-14px; bottom:24%}
.tagf.t3{right:-6px; top:14%}
.tagf.t4{right:26px; bottom:44%}

/* BUDŻET */
.budget-grid{display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:40px; align-items:start}
.statbox{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:26px}
.statbox div{background:var(--white); border:1px solid var(--line); border-radius:9px; padding:14px}
.statbox .k{font-size:.72rem; color:var(--ink-2)}
.statbox .v{font-weight:700; font-size:1.2rem; margin-top:3px; font-variant-numeric:tabular-nums}
.tablewrap{display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,.7fr); gap:14px}
.panel{background:var(--white); border:1px solid var(--line); border-radius:10px; overflow:hidden; box-shadow:var(--shadow)}
.panel .ph{display:flex; align-items:center; gap:12px; padding:13px 15px; border-bottom:1px solid var(--line); font-weight:700; font-size:.92rem}
.panel .search{margin-left:auto; border:1px solid var(--line); border-radius:6px; padding:5px 10px; font-size:.68rem; color:var(--ink-3); font-weight:400}
.tabs{display:flex; gap:16px; padding:9px 15px; border-bottom:1px solid var(--line); font-size:.72rem; color:var(--ink-2)}
.tabs span.on{color:var(--terra-dk); font-weight:500; position:relative}
.tabs span.on::after{content:""; position:absolute; left:0; right:0; bottom:-10px; height:2px; background:var(--terra)}
.trow{display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) 54px 80px 82px 100px; gap:10px; padding:10px 15px; border-bottom:1px solid var(--line); font-size:.75rem; align-items:center}
.trow:last-child{border-bottom:none}
.trow.h{background:var(--cream-2); font-size:.63rem; text-transform:uppercase; letter-spacing:.06em; color:var(--ink-3)}
.trow .nmm{display:flex; align-items:center; gap:9px}
.trow .nmm i{width:22px; height:22px; border-radius:4px; flex:0 0 22px; display:block}
.trow .num{text-align:right; font-variant-numeric:tabular-nums}
.suppliers{display:flex; align-items:center; gap:14px; padding:13px 15px; background:var(--cream-2); border-top:1px solid var(--line); flex-wrap:wrap}
.suppliers .lbl{font-size:.68rem; color:var(--ink-3); text-transform:uppercase; letter-spacing:.06em; width:100%}
.suppliers .s{border:1px solid var(--line-2); border-radius:6px; padding:6px 12px; font-size:.68rem; color:var(--ink-2); letter-spacing:.04em}
.suppliers .s.add{border-style:dashed; color:var(--terra-dk)}
.summary{background:var(--white); border:1px solid var(--line); border-radius:10px; padding:18px; box-shadow:var(--shadow)}
.summary h4{font-family:"DM Sans"; font-weight:700; font-size:.9rem}
.donut{width:132px; height:132px; margin:16px auto; border-radius:50%; background:conic-gradient(var(--terra) 0 46%, var(--navy) 46% 72%, #8FA08C 72% 88%, var(--cream-3) 88% 100%); display:grid; place-items:center; position:relative}
.donut::after{content:""; position:absolute; width:84px; height:84px; border-radius:50%; background:var(--white)}
.srow{display:flex; justify-content:space-between; padding:7px 0; border-bottom:1px solid var(--line); font-size:.78rem; color:var(--ink-2)}
.srow:last-child{border-bottom:none}
.srow b{color:var(--ink); font-variant-numeric:tabular-nums}

/* SZABLONY */
.tpl{display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:12px; margin-top:36px}
.tplc{background:var(--white); border:1px solid var(--line); border-radius:9px; padding:18px 12px; text-align:center; box-shadow:var(--shadow)}
.tplc .ic{width:34px; height:42px; margin:0 auto 12px; border:1.5px solid var(--line-2); border-radius:4px; position:relative; background:var(--cream)}
.tplc .ic::before{content:""; position:absolute; left:7px; right:7px; top:9px; height:2px; background:var(--line-2); box-shadow:0 6px 0 var(--line-2), 0 12px 0 var(--line-2)}
.tplc .ic::after{content:""; position:absolute; right:-1px; top:-1px; border-width:0 8px 8px 0; border-style:solid; border-color:transparent var(--cream-2) transparent transparent}
.tplc span{font-size:.76rem; color:var(--ink-2); display:block; line-height:1.35}

/* OPINIE */
.quotes{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:36px}
.q{background:var(--white); border:1px solid var(--line); border-radius:10px; padding:24px; display:flex; flex-direction:column; gap:14px; box-shadow:var(--shadow)}
.stars{color:var(--terra); font-size:.9rem; letter-spacing:2px}
.q p{font-size:.88rem; color:var(--ink-2); font-style:italic}
.q .who{display:flex; align-items:center; gap:11px; margin-top:auto}
.q .av{width:40px; height:40px; border-radius:50%; flex:0 0 40px}
.q .who b{display:block; font-size:.86rem; font-weight:700}
.q .who small{color:var(--ink-3); font-size:.72rem; letter-spacing:.04em; text-transform:uppercase}

/* CENNIK */
.pricing{position:relative}
.pricing .photo-l{position:absolute; left:0; top:60px; width:190px; height:300px; border-radius:0 10px 10px 0; background:linear-gradient(150deg,#E3DCCD,#C4B79F)}
.toggle{display:inline-flex; align-items:center; gap:6px; background:var(--white); border:1px solid var(--line); border-radius:22px; padding:4px; margin:20px auto 0; font-size:.8rem}
.toggle span{padding:6px 14px; border-radius:18px; color:var(--ink-2)}
.toggle span.on{background:var(--terra-sf); color:var(--terra-dk); font-weight:500}
.plans{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:36px; max-width:920px; margin-left:auto; margin-right:auto}
.plan{background:var(--white); border:1px solid var(--line); border-radius:11px; padding:26px 24px; display:flex; flex-direction:column; gap:14px; box-shadow:var(--shadow)}
.plan.best{border:1.5px solid var(--terra); background:var(--terra); color:#fff; position:relative; padding-top:32px}
.plan.best .pn,.plan.best .amt{color:#fff}
.plan.best .pd,.plan.best .vat,.plan.best ul,.plan.best small{color:rgba(255,255,255,.86)}
.plan.best .flag{background:#fff; color:var(--terra-dk); font-weight:700}
.plan.best .chk{background:rgba(255,255,255,.22); color:#fff}
.plan.best .btn.pri{background:#fff; color:var(--terra-dk); font-weight:700}
.plan .flag{position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--terra); color:#fff; font-size:.66rem; padding:4px 12px; border-radius:14px; white-space:nowrap}
.plan .pn{font-family:Lora,serif; font-size:1.3rem; font-weight:500}
.plan .pd{font-size:.76rem; color:var(--ink-3); margin-top:2px}
.plan .amt{font-size:1.9rem; font-weight:700; font-variant-numeric:tabular-nums}
.plan .amt small{font-size:.72rem; font-weight:400; color:var(--ink-3)}
.plan .vat{font-size:.68rem; color:var(--ink-3)}
.plan ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; font-size:.8rem; color:var(--ink-2)}
.plan li{display:flex; gap:8px; align-items:flex-start}
.pnote{text-align:center; font-size:.78rem; color:var(--ink-3); margin-top:20px}

/* FAQ */
.faqsec{position:relative}
.faqsec .photo-l{position:absolute; left:0; top:40px; width:180px; height:250px; border-radius:0 10px 10px 0; background:linear-gradient(150deg,#DFD8C9,#BEB29A)}
.faq{max-width:800px; margin:32px auto 0; display:flex; flex-direction:column; gap:10px}
.fq{background:var(--white); border:1px solid var(--line); border-radius:8px; padding:16px 20px; display:flex; align-items:center; font-size:.9rem}
.fq .p{margin-left:auto; color:var(--terra); font-size:1.15rem; line-height:1}

/* CTA */
.cta-band{background:var(--cream-3); color:var(--ink); position:relative; overflow:hidden; border-top:1px solid var(--line)}
.cta-band .in{max-width:1180px; margin:0 auto; padding:56px 28px; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:36px; align-items:center}
.cta-band h2{color:var(--ink); font-size:clamp(1.5rem,2.9vw,2rem); max-width:22ch}
.cta-band p{color:var(--ink-2); margin-top:14px; font-size:.95rem; max-width:46ch}
.cta-band .btns{display:flex; gap:12px; margin-top:26px; flex-wrap:wrap}
.cta-band .ph{height:190px; border-radius:10px; background:linear-gradient(150deg,#DCD5C6,#B5A991)}

/* FOOTER */
footer{background:var(--footer); color:#98A2AE; padding:52px 0 34px; font-size:.84rem}
.fgrid{display:grid; grid-template-columns:1.7fr 1fr 1fr 1fr 1.4fr; gap:30px}
footer h5{font-size:.8rem; color:#E8EDF2; margin:0 0 14px; font-weight:700; font-family:"DM Sans"}
footer ul{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; font-size:.8rem}
footer .brandf{display:flex; align-items:baseline; gap:9px; margin-bottom:12px; color:#E8EDF2}
footer .brandf .wm{font-weight:700; letter-spacing:.14em; font-size:.9rem; text-transform:uppercase}
.social{display:flex; gap:9px; margin-top:14px}
.social i{width:26px; height:26px; border-radius:6px; border:1px solid #2C3743; display:block}
.news{display:flex; gap:0; margin-top:12px; border:1px solid #2C3743; border-radius:6px; overflow:hidden}
.news .inp{flex:1; padding:9px 12px; font-size:.76rem; color:#68727E}
.news .go{background:var(--terra); width:38px; display:grid; place-items:center; color:#fff}
.fbot{border-top:1px solid #2A343F; margin-top:34px; padding-top:20px; display:flex; gap:22px; flex-wrap:wrap; font-size:.75rem; color:#68727E}

@media (max-width:1040px){
  .hero-grid,.collab,.budget-grid,.cta-band .in{grid-template-columns:1fr; gap:32px}
  .hero .photo-r{display:none}
  .tools-wrap{grid-template-columns:1fr}
  .t-photo{min-height:0; height:210px; margin-top:20px}
  .t-photo img{object-position:center 30%}
  .tgrid,.tgrid.five{grid-template-columns:1fr 1fr}
  .tablewrap{grid-template-columns:1fr}
  .tpl{grid-template-columns:repeat(3,1fr)}
  .quotes,.plans{grid-template-columns:1fr}
  .benefits .in,.flow{grid-template-columns:1fr 1fr}
  .flow::before{display:none}
  .fgrid{grid-template-columns:1fr 1fr}
  .devices{padding-right:0}
  .phone{position:static; width:100%; max-width:220px; margin-top:16px}
  .tagf{display:none}
  .pricing .photo-l,.faqsec .photo-l{display:none}
}
@media (max-width:640px){
  .app{grid-template-columns:1fr}
  .side{display:none}
  .trow{grid-template-columns:minmax(0,1.4fr) 80px 100px}
  .trow > *:nth-child(2),.trow > *:nth-child(3),.trow > *:nth-child(5){display:none}
  .benefits .in,.flow,.tpl,.tgrid,.tgrid.five,.statbox{grid-template-columns:1fr}
}

/* --- dodatki wydania 1 --- */
.chip.crit{background:#F8E7E4; color:#A8382A}
.eyebrow-t{display:inline-block; font-size:.68rem; letter-spacing:.14em; text-transform:uppercase; color:var(--terra-dk); background:var(--terra-sf); border-radius:4px; padding:5px 11px; margin-bottom:16px; font-weight:600}
.split-sec.alt{background:var(--cream-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding-top:64px}
.collab.rev{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
.pop-wrap{position:relative; display:flex; justify-content:center; align-items:center; min-height:300px}
.pop{width:330px; background:var(--white); border:1px solid var(--line); border-radius:12px; box-shadow:0 30px 60px -34px rgba(30,39,51,.55); overflow:hidden; position:relative; z-index:2}
.pop-top{display:flex; align-items:center; gap:9px; padding:12px 14px; background:var(--cream-2); border-bottom:1px solid var(--line); font-size:.8rem; font-weight:700}
.pop-dot{width:16px; height:16px; border-radius:4px; background:var(--terra); display:block}
.pop-body{padding:14px}
.pop-prod{display:flex; gap:12px; align-items:center; padding-bottom:13px; border-bottom:1px solid var(--line)}
.pop-prod b{display:block; font-size:.86rem}
.pop-prod span{display:block; font-size:.72rem; color:var(--ink-3)}
.pop-prod strong{display:block; font-size:.92rem; margin-top:4px; font-variant-numeric:tabular-nums}
.pop-field{display:flex; justify-content:space-between; padding:9px 0; border-bottom:1px solid var(--line); font-size:.78rem; color:var(--ink-2)}
.pop-field b{color:var(--ink)}
.pop-actions{display:flex; gap:8px; margin-top:14px}
.pop-shadow{position:absolute; inset:34px 24px 10px; border-radius:14px; background:linear-gradient(150deg,#E7DFD0,#CFC3AC); z-index:1; opacity:.5}
.survey-wrap{display:flex; justify-content:center}
.mini-phone{width:250px; background:var(--white); border:1px solid var(--line-2); border-radius:26px; padding:11px; box-shadow:0 30px 60px -34px rgba(30,39,51,.55)}
.mini-phone .scr{background:var(--cream); border-radius:18px; padding:15px}
.sv-top{display:flex; justify-content:space-between; font-size:.68rem; color:var(--ink-3); font-weight:600}
.sv-bar{height:5px; background:var(--cream-3); border-radius:3px; margin:8px 0 16px; overflow:hidden}
.sv-bar i{display:block; height:100%; background:var(--terra); border-radius:3px}
.sv-q,.sv-q2{font-size:.82rem; font-weight:700; margin-bottom:9px}
.sv-q2{margin-top:16px}
.sv-grid{display:grid; grid-template-columns:1fr 1fr; gap:7px}
.sv-grid span{aspect-ratio:4/3; border-radius:6px; display:block; border:2px solid transparent}
.sv-grid span.on{border-color:var(--terra)}
.sv-opts{display:flex; flex-direction:column; gap:6px}
.sv-opts span{border:1px solid var(--line-2); border-radius:6px; padding:8px 10px; font-size:.74rem; color:var(--ink-2)}
.sv-opts span.on{border-color:var(--terra); background:var(--terra-sf); color:var(--terra-dk); font-weight:600}
.sv-next{margin-top:14px; background:var(--terra); color:#fff; text-align:center; padding:9px; border-radius:7px; font-size:.78rem; font-weight:600}
.hd-c{text-align:center; margin-bottom:32px}
.rgrid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px}
.rc{background:var(--white); border:1px solid var(--line); border-radius:10px; padding:20px; box-shadow:var(--shadow)}
.rc.hi{border-color:var(--terra); background:var(--terra-sf)}
.rq{font-family:"JetBrains Mono",ui-monospace,monospace; font-size:.66rem; letter-spacing:.1em; color:var(--terra-dk); font-weight:700}
.rc h4{font-size:.95rem; margin:9px 0 6px}
.rc p{font-size:.82rem; color:var(--ink-2)}
@media (max-width:1040px){ .rgrid{grid-template-columns:1fr 1fr} .collab.rev{grid-template-columns:1fr} .pop-wrap{min-height:0} }
@media (max-width:640px){ .rgrid{grid-template-columns:1fr} .pop{width:100%} }


/* --- dostępność i stany --- */
a{color:inherit; text-decoration:none}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--terra); outline-offset:3px; border-radius:4px}
.btn{cursor:pointer; transition:background .15s ease, border-color .15s ease, transform .15s ease}
.btn.pri:hover{background:var(--terra-dk)}
.btn.out:hover{border-color:var(--ink-3)}
nav ul a:hover{color:var(--terra-dk)}
.skip{position:absolute; left:-9999px; top:0; background:var(--terra); color:#fff; padding:10px 16px; border-radius:0 0 6px 0; z-index:50}
.skip:focus{left:0}
details.fq{display:block; cursor:pointer}
details.fq summary{list-style:none; display:flex; align-items:center; font-size:.95rem; font-weight:500}
details.fq summary::-webkit-details-marker{display:none}
details.fq summary .p{margin-left:auto; color:var(--terra); font-size:1.15rem; line-height:1}
details.fq[open] summary .p{transform:rotate(45deg)}
details.fq .ans{margin-top:12px; font-size:.88rem; color:var(--ink-2); max-width:70ch}
img{max-width:100%; height:auto}
@media (prefers-reduced-motion:reduce){*{animation:none!important; transition:none!important}}
