/* Trzy pakiety i trzy abonamenty; ta wersja jest na razie tylko lokalna. */
#cennik .pricing-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
#cennik .package-grid,#cennik .subscription-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}
#cennik .package-grid .price-card,#cennik .subscription-card{height:100%;align-self:stretch;box-sizing:border-box}
#cennik .package-grid .price-card .button{margin-top:auto}
.pricing-dots{display:none}
.demo-typing{opacity:0;min-height:1.6em}
.demo-typing.is-typing{opacity:1}
.pixel-tagline{min-height:1.6em}
.pixel-tagline .cursor{animation:none!important;opacity:1}
.typing-accessible{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.hero .hero-title em.rotating-word{display:inline-grid;vertical-align:baseline}
.rotating-word .word-space,.rotating-word .word-letters{grid-area:1/1;white-space:nowrap}
.rotating-word .word-space{visibility:hidden}
@media(max-width:768px){.demo-chat-top>img{display:none}.demo-question{min-height:120px}}
#cennik .pricing-intro{grid-column:1/-1;padding-bottom:22px}
#cennik .price-card{display:flex;flex-direction:column;padding:28px 24px;min-width:0}
#cennik .price-heading{display:block;min-height:80px}
#cennik .price-heading h3{font-size:25px;margin:0 0 12px}
#cennik .price-heading>span{font-size:12px}
#cennik .price{font-family:inherit;font-size:clamp(34px,3.6vw,52px);line-height:1.15;flex-wrap:wrap;gap:6px;margin:20px 0 24px;min-height:94px;align-content:start}
#cennik .price small{flex-basis:100%;font-size:14px;margin:6px 0 0}
#cennik .price .currency{font-size:.8em}
#cennik .price-from{font-size:18px;align-self:center}
#cennik .price-card ul{padding:0;margin:0 0 22px}
#cennik .price-card li{font-size:16px;line-height:1.6;padding-left:23px}
#cennik .package-note{font-size:15px;line-height:1.65;margin:0 0 24px;color:var(--muted);flex:1}
#cennik .price-card .button{font-size:15px;padding:16px;justify-content:center}
.subscriptions-heading{grid-column:1/-1;margin-top:30px}
.subscriptions-heading h3{font-size:28px;margin:0 0 8px}
.subscriptions-heading p{color:var(--muted)}
.subscription-card{display:flex;flex-direction:column;padding:28px 24px;border:1px solid var(--line);background:var(--panel);box-shadow:6px 7px 0 #617a9a22}
.subscription-card .price-note{margin-top:auto;padding-top:16px;margin-bottom:0}
.subscription-card h3{font-size:24px;margin:0 0 22px}
.subscription-card p{line-height:1.7;color:var(--muted)}
.subscription-price{font-size:29px;font-weight:700;color:var(--ink)}
.subscription-price small{font-size:15px;font-weight:400}
.setup-price{font-weight:600;color:var(--ink)!important}
.estimate-dialog{width:min(1050px,calc(100% - 32px));max-height:90dvh;padding:0;border:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:0 30px 90px #0008}
.estimate-dialog::backdrop{background:#040917bb;backdrop-filter:blur(5px)}
.estimate-shell{padding:32px}
.estimate-top{display:flex;justify-content:space-between;align-items:center;gap:20px}
.estimate-close{font:inherit;font-size:30px;width:44px;height:44px;background:var(--panel);border:1px solid var(--line);color:var(--ink);cursor:pointer}
.estimate-dialog h2{font-size:clamp(28px,5vw,42px);margin:18px 0}
.estimate-dialog p{line-height:1.65}
.estimate-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;margin-top:25px}
.estimate-options fieldset{padding:0;margin:0 0 25px;border:0;min-width:0}
.estimate-options legend{font-size:20px;font-weight:600;margin-bottom:14px}
.estimate-option{display:flex;gap:14px;align-items:flex-start;margin:9px 0;padding:16px;border:1px solid var(--line);background:var(--panel);cursor:pointer}
.estimate-option:has(input:checked){border-color:#6494ff;box-shadow:inset 3px 0 #6494ff}
.estimate-option input{width:20px;height:20px;flex:0 0 20px;margin:4px 0;accent-color:#356afa}
.estimate-option span{font-size:17px;line-height:1.45}
.estimate-option strong,.estimate-option small{display:block;font-size:14px;margin-top:6px}
.estimate-option small{color:var(--muted)}
.estimate-summary{align-self:start;position:sticky;top:0;background:var(--panel);border:1px solid var(--line);padding:24px}
.estimate-summary h3{font-size:24px;margin:0 0 20px}
.estimate-totals{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.estimate-totals p{margin:14px 0}.estimate-totals strong{display:block;font-size:28px;color:var(--blue,#6494ff)}
.estimate-lines{padding-left:20px;font-size:15px;line-height:1.8}
.estimate-lines li{font-size:15px;line-height:1.7;margin:8px 0;padding:0}
.estimate-lines li::before{content:none}
.estimate-close{position:sticky;top:0;z-index:2;flex-shrink:0}
.estimate-summary .price-note,.estimate-credit,.estimate-care-note{font-size:14px;color:var(--muted)}
.estimate-summary .button{width:100%;font-size:15px;justify-content:center}
[data-open-estimate][hidden]{display:none}
@media(max-width:1000px){#cennik .pricing-grid{grid-template-columns:1fr}#cennik .price-heading{min-height:0}#cennik .price{min-height:0}.estimate-layout{grid-template-columns:1fr}.estimate-summary{position:static}}
@media(max-width:768px){.estimate-dialog{width:100%;height:100dvh;max-height:100dvh;max-width:100%;margin:0;border:0}.estimate-shell{padding:20px 18px 40px}.estimate-top .eyebrow{font-size:11px}#cennik .price-card{padding:26px 22px}#cennik .price{font-size:44px}.estimate-option{min-height:56px}}
/* Na telefonie obie grupy kart mają naturalny swipe i wspólną wysokość. */
@media(max-width:1000px) and (min-width:769px){#cennik .package-grid,#cennik .subscription-grid{gap:14px}#cennik .price-card{padding:22px 16px}#cennik .price-heading{min-height:100px}#cennik .price{min-height:95px;font-size:36px}}
@media(max-width:768px){
  #cennik .pricing-carousel{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:90%;gap:16px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:6px 8px 18px 2px;margin:-6px -8px -18px -2px;scrollbar-width:none}
  #cennik .pricing-carousel::-webkit-scrollbar{display:none}
  #cennik .pricing-carousel>article{scroll-snap-align:start;min-width:0}
  #cennik .package-grid .price-heading{min-height:90px}
  #cennik .package-grid .price{min-height:90px}
  .pricing-dots{display:flex;grid-column:1/-1;justify-content:center;align-items:center;gap:6px;margin:0}
  .pricing-dots button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent}
  .pricing-dots button::before{content:'';width:7px;height:7px;background:var(--muted);border-radius:50%}
  .pricing-dots button[aria-current=true]::before{width:22px;border-radius:5px;background:var(--blue)}
}

.word-space::before,.word-letters::before{content:attr(data-text)}
.rotating-word .word-letters{position:relative;justify-self:start}
.rotating-word .word-letters::after{content:"";position:absolute;left:100%;bottom:.08em;width:2px;height:.8em;margin-left:3px;background:currentColor;animation:cursor 1.1s steps(1) infinite}

/* Cztery rowne karty; na telefonie pozostaje natywna karuzela. */
@media(min-width:1101px){#cennik .subscription-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:769px) and (max-width:1100px){#cennik .subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
#cennik .subscription-card h3{min-height:2.6em;line-height:1.3}
#cennik .setup-includes{padding-left:18px;margin:8px 0 18px;list-style:disc;color:var(--muted);font-size:14px;line-height:1.6}
#cennik .setup-includes li{display:list-item;padding:3px 0}#cennik .setup-includes li:before{content:none}
